Skip to main content
The 2024 Developer Survey results are live! See the results
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. ...
Ben I.'s user avatar
  • 33.8k
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 ...
thesecretmaster's user avatar
  • 4,795
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)...
Ben I.'s user avatar
  • 33.8k
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 ...
leftaroundabout's user avatar
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'...
Buffy's user avatar
  • 36.4k
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: ...
Aurora0001's user avatar
  • 3,526
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 ...
Buffy's user avatar
  • 36.4k
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 ...
Ellen Spertus's user avatar
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 ...
Ben I.'s user avatar
  • 33.8k
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 ...
Green Griffin's user avatar
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 ...
Buffy's user avatar
  • 36.4k
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 ...
Ben I.'s user avatar
  • 33.8k
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 ...
Aurora0001's user avatar
  • 3,526
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, ...
Buffy's user avatar
  • 36.4k
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: ...
Ben I.'s user avatar
  • 33.8k
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 ...
ecc's user avatar
  • 403
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 ...
Buffy's user avatar
  • 36.4k
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 ...
Ryan Nutt's user avatar
  • 3,009
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, ...
Kevin Workman's user avatar
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 ...
auden's user avatar
  • 4,724
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). ...
ctrl-alt-delor's user avatar
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....
Buffy's user avatar
  • 36.4k
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: ...
Buffy's user avatar
  • 36.4k
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: ...
ItamarG3's user avatar
  • 6,312
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 ...
Michael0x2a's user avatar
  • 4,005
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 ...
thesecretmaster's user avatar
  • 4,795
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/...
auden's user avatar
  • 4,724
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 ...
Nuno Gil Fonseca's user avatar
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 ...
Ben I.'s user avatar
  • 33.8k
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 ...
Kevin Workman's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible