What’s a fun first project?
I have a number of ideas. You could go with a text-based RPG. This is what I started with. I used QuickBasic to create a Pokemon-themed text game.
Or you could build on a framework and make a shoot-em-up, like the space shoot-em-up Phoenix. This is definitely more advanced, but it makes use of graphics and allows for a lot more visual creativity.
Another possibility is making some kind of turn-based game. You could do tic-tac-toe, Connect 4, or checkers. This doesn’t happen in real-time, so there are no concerns about timing issues. It allows you to create your own creative rules, and build upon it with cool graphics.
My latest idea, though, is to make a Tower Defense game. I think it’s the coolest idea yet. It might be most conducive to learning Flash or some other web-based language, because that’s where it’s easiest to distribute– but it certainly doesn’t have to be that way. Tower Defense games have a lot of flexibility. You can have level-ups, different weapons, different bosses. I’m excited about this possibility, but I wonder if it might be too difficult. I’ll have to see someday if I can create a basic tower defense game in one day. If I can, I can probably teach it over the course of a summer. If I can’t, we’ll have to do something to make it easier.
And I’ve always thought programming should be made easier. Lowering the barrier to entry is not a bad thing.