Sunday, October 15, 2006

Teaching: Advance warnings aren't.

One of the classes I'm teaching is all about rapid prototyping. We started on paper and are just now progressing to digital prototypes.

I mentioned on the first day of class that there would be some programming involved, and that the skills students would use would end up being about 25% programming, 25% art, 50% design.

I had the students with programming experience raise their hands, so that they could be identified by their classmates.

I left a full week in the schedule before we started anything programming-related, with no assignments due. I suggested students use the time to either (A) learn a rapid-prototyping tool like Game Maker or Flash; or (B) do a few simple exercises in a tool that they already know, like drawing sprites on the screen; or (C) find someone else in class who knows how to implement some of this stuff, and pair up with them.

On the day the first digital assignment was handed out, all of a sudden it was a huge surprise. We have to actually program? Like, displaying numbers to the screen and having buttons that change those numbers? Ohmigod, that's so unfair, this isn't a Computer Science class, most of us don't know how to program, how did this happen? (The current assignment is to do a functional mockup of a Diablo-like subscreen, displaying HP/Mana and doing some very simple inventory management: equip, unequip, drop.)

Next time around I'll hopefully have some actual CS students taking the class, and I'll pair students up manually instead of letting them do it themselves (and let them change groups on their own... if their other members consent). Maybe instead of a "dead" week, I'll assign some busywork project that forces students to learn how to do some simple prototyping tasks, like drawing to the screen. Beyond that, I'm not sure what else I could have done to prepare students for the shock of actually having to use a computer. Or maybe I'm being totally unfair, and overestimating the capability of a non-CS student to learn and use a game authoring tool (or socially network within the class to find someone else who can).

Comments? Suggestions?


Jason said...

Of course it's ludicrous that everyone seemed shocked after getting fair warning (sounds like people weren't really listening), but I'm not surprised that people feel a bit slighted about the programming expectations. People who have never done any programming whatsoever think of it as some arcane ability guarded by a nerd clergy of sorts.

I think that your ideas are good ones (pairing people up with CS majors and making them do some project to teach basic syntax), though I feel kind of bad for the CS majors who people are going to try to force to do all the programming work. It should probably be fine just as long as it's clear from the outset that everyone will have to demonstrate very simple programming competency on a one-by-one basis.

Darius Kazemi said...

I have lots of comments, but I think I'd rather talk to you on the phone about it, just because it's going to be a lot of rambling from me, and I'm too lazy to write it down.