I love CS Teaching Tips. I follow them on Twitter and Facebook as well as visiting the web site from time to time. Full list of links at the bottom of this post. Anyway, not long ago they retweeted someone’s suggestion of having students write a program to randomly pick students to call on. And that go me thinking.
I wrote my own program to randomly select students to call on some time ago. I really like it. It saves who has been called on from use to use and supports multiple classes. It even looks pretty good for an Alfred designed program. But the more I thought about it the more I thought that having students write their own versions would make a good project. Actually perhaps even two projects.
The first one, perhaps early in the semester, could have the names hard coded in to an array. That would be a nice fairly simple array program. A later version could read the names in from a file and perhaps dynamically build a list of objects for the display. Either way we could have an interesting discussion about features and functions and how they could be developed. It would be a program that should have some relevance for students.
We could also modify it to create randomly selected teams. (An other feature my program has though it could use some improvements) That is a program students could use for their own team selections.
There are probably other programs that teachers could use that would also make interesting projects. I’m thinking a timer app might be useful and interesting. Maybe a Binary timer if I am feeling particularly evil. What other sorts of teacher useful programs would make good projects?