So I am teaching CS 1 this term, and tonight the asskicker assignment is due. I didn’t mean it to break people, but I screwed up and made it a little too hard. Almost everyone has been able to figure out each piece on their own, but put all of the pieces together and the complexity hits some barrier that just kills them.

The assignment was to make a tic-tac-toe program. Everyone has been able to make a program that draws the board to the screen, and then allows a person to click on the screen and draws an X or an O on the screen exactly where the person clicked. But keeping track of the board to see if someone has won, keeping track of whose turn it is, making sure that each square only gets clicked on once, translating X and Y coordinates into boxes, and dealing with cat’s games have collectively driven the students kind of nuts. Each little piece is easy (or at least not TOO hard) but they try to solve the whole thing at once and their brains explode. Maybe I should show the matchbox tic-tac-toe computer tomorrow and blow some minds!

Speaking of demonstrations, Sorting Out Sorting is available online (with mediocre audio) and the absolute best explanation of a ripple-carry adder may be the video of the one that is made out of wood(!)