38
votes
How do you deal with Lone Rangers in group projects?
This is really a separate approach from my first answer, which has received some push-back.
It's worth noting that many of these loners are simply students who are substantially ahead of the curve. ...
38
votes
What's the benefit of prohibiting the use of techniques/language constructs that have not been taught?
Rules like this are generally instituted because the teacher is attempting to teach a concept made moot by one of these constructs. For example, as a teacher, if you're teaching bitwise operators and ...
24
votes
What's the benefit of prohibiting the use of techniques/language constructs that have not been taught?
Where it stems from is, of course, because the lab is not the thing that the instructors want solved. After all, the posed lab problem is not unsolved, and your solution will only be unique (if at all)...
22
votes
How to give assignments that require heavy computational resources?
How to give assignments that require heavy computational resources?
Don't.
Most computionally intensive problems can be stripped down to something that's just as instructive but runnable on any ...
19
votes
How to give assignments that require heavy computational resources?
I have a couple of orthogonal suggestions.
First, and you may have done this yourself, before you give any assignment you should create a reference implementation yourself and test it in the student'...
16
votes
How to give assignments that require heavy computational resources?
Giving students credits for a cloud service like AWS might be useful in this case. Amazon's pricing is reasonable for a cloud instance:
GPU Instances - Current Generation
p2.xlarge
vCPUs: 4
ECUs: ...
16
votes
Is there a better way to validate student learning?
You seem to already realize that this is a subtle question. When I taught Mathematics early in my career, I also forbade students to work together. Later on, teaching Computer Science, I found myself ...
12
votes
Accepted
How to provide individual grades for group project work?
In "Assessing Individual Contributions to Group Software Projects" (WCCCE '03), William Gardner discusses a number of strategies for adjusting team programming project grades for individual ...
11
votes
How do you deal with Lone Rangers in group projects?
I might push back against the core idea here, and this gets to the idea of the central mission of the course of study. Within my course, teamwork is not a primary goal upon which I will assess my ...
11
votes
Any simple Python GUI projects for beginner/novice programming students?
In my experience, good introductory programming courses meet three overarching goals:
Empower students to create simple programs outside of the scope of the class by giving them the technical skills ...
11
votes
What's the benefit of prohibiting the use of techniques/language constructs that have not been taught?
I think that the answer of thesecretmaster is correct but let me add a bit of advice to an instructor who would do this. Just as you, the OP, wonder yourself, the rule doesn't seem to make a lot of ...
10
votes
How do I scaffold students toward building meaningful projects?
For context, I teach high school students as part of a 4-year high school computer science major. My students do, during their 4th year, a full-year project for a client who has a need. (The clients ...
10
votes
Accepted
How many lines does your code have?
What's the point?
Why does the number of lines in the project matter all that much? Unless the code is extraordinarily long or short (i.e. orders of magnitude away from what is expected), lines of ...
10
votes
Accepted
Any simple Python GUI projects for beginner/novice programming students?
Unfortunately, GUI programming is sufficiently different from algorithmic programming that if you start with it students can get the wrong idea about what a program should look like.
For example, ...
9
votes
How should I handle over-demanding assignment providers?
We run projects with real-world clients from within our school building.
I would add to Buffy's beautiful answer one idea that we've communicated to the clients that our students will be working with:
...
8
votes
What qualities should be considered when designing a front end project?
As a student I would find this assignment uninteresting and a waste of my skills. I would feel the professor is just trying to be lazy and not having to properly grade assignments.
If they really ...
8
votes
Strategies for self-learners to transition into working on larger projects
You have set a difficult task. The reason is that there are two dimensions here, not one. The first is that larger projects are usually built by teams and not by individuals. Certainly if you are ...
8
votes
Is there a better way to validate student learning?
I look at it as two separate tasks.
Learning: The goal here is to learn new things and practice what you've learned. For my classes, these are mostly small lab style assignments. I want them to work ...
8
votes
Are programming contests beneficial to students?
Programming contests are useful for some students in some contexts, but they're harmful to other students in other contexts.
Contests are useful for students who already self-identify as programmers, ...
7
votes
Strategies for self-learners to transition into working on larger projects
Having experienced this cliff myself, I'd give several pointers:
Start by independently solving smaller problems. The Euler problems are great for this.
Set specific goals for what the program must ...
6
votes
Mini-Projects that can be covered in an 1 hour Haskell tutorial
The ideas in your question are far too difficult, for a one hour introduction.
Yesterday I had a look at Haskell and learnt some. I have over 30 years programming experience (20 years professional). ...
6
votes
Accepted
Are programming contests beneficial to students?
While I think that all of your observations are correct, there are other considerations. I'm not a big believer in these contests, nor in the kinds of problems that students are asked to solve in them....
6
votes
How can I incentivize students to test their applications with end users?
Rather than just try to motivate them, you can change the structure of the assignment. Testing on family members and friends seems like it is the problem.
Instead, break the assignment into two parts: ...
5
votes
Strategies for self-learners to transition into working on larger projects
Step 1: Think big
The most important part is not to think "this is too big". All big projects are, well, big. You need to find something you'd like to do. Sometimes just looking around, and thinking: ...
5
votes
How to figure out what I need to search for in order to create a program?
To a certain degree, it comes down to experience. But if you don't have experience, I feel you can get a lot of mileage of just trying to do the simplest thing possible to see what'll happen and ...
5
votes
Balance between teaching and projects in a club
I am currently a co-leader of a programming/FIRST club at my high school, and for us the key has been project based learning. We are always working on something. It might not be relevant to our ...
5
votes
How do I scaffold students toward building meaningful projects?
I think @Ben I.'s suggestions are great, but let me present a completely different take.
Don't prepare them for science fairs, prepare them for industry.
Introduce them to git/open source/...
5
votes
How do I scaffold students toward building meaningful projects?
Since you said that it is a "high poverty school," I assume that some students may have some financial/material needs... So, you could suggest the development of an app that allows the students to ...
5
votes
How do you structure broad, open-ended, freely chosen projects so that students use class time wisely?
The first step is for the students to design their own projects. I give them a timeframe, and make clear that they will be held accountable (within reason) for finishing the project. I don't just ...
5
votes
Strategies for self-learners to transition into working on larger projects
Bigger isn't better.
My guess is that it's more accurate to say that novices have trouble working on projects that are useful and interesting in real life, which is not necessarily the same thing as ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
project × 41self-learning × 5
undergraduate × 5
programming × 4
best-practice × 4
grading × 4
lesson-ideas × 3
student-motivation × 3
java × 3
secondary-education × 3
curriculum-design × 2
resource-request × 2
algorithms × 2
python × 2
labs × 2
data-structure × 2
computational-thinking × 2
resource-information × 2
javascript × 2
evaluation × 2
teaching-analogy × 1
textbook × 1
introductory-lesson × 1
ap-computer-science-a × 1
classroom-management × 1