Looking for something fun to do on family night? How about a friendly game of c-jump, the programming board game:
Although the prospect of a computer programming board game sounds positively stultifying, there is a rich history of computer games based on programming.
It's not a programming game per se, but we can't talk about educational games without mentioning MECC's seminal The Oregon Trail, perhaps the archetypal educational computer game.
The original Oregon Trail model was developed in 1971 by myself and two other college students when we were seniors at Carleton College in Minnesota. The three of us were completing our practice teaching in Minneapolis, and they (both math teachers) were using a computer system in their classes. I was teaching U.S. history and asked them the fateful question, "Can't we do something with the computer in my class?"
Many people who grew up with Apple IIs in the classroom have fond memories of this game. There's a great page where you can play the game in your browser through an ActiveX emulator control (IE only, obviously). This version of the O.T. is a bit fancier than the all-text version I remember, though.
There were other educational games on the Apple II that were a bit closer to actual programming. One of those is Robot Odyssey.
Robot Odyssey was about programming robots to solve puzzles. In order to do that, of course, you'd have to wire up the guts of the robot, and that meant learning about connecting inputs to outputs, and boolean logic (AND, XOR, etc). It had one of the best tutorial modes in any game I've ever played, which was critical for a game this complex. There's a modern update called DroidQuest that you can play in the browser (Java required).
The predecessor to Robot Odyssey was Rocky's Boots, which also involved programming robots to solve puzzles:
Rocky's Boots is an electronic construction set. In the program, Rocky, a boot-wearing raccoon, teaches children to build animated logic machines. Users build arbitrary logic circuits and use them to program robots in the context of an adventure game. The object of this game is to score points by making a machine to kick object targets out of a trough. The machines are composed of circuit parts that direct the flow of electricity. They are built by moving the cursor around the screen, picking up parts and hooking them together. The object targets vary in shape and color and the player must connect logic gates in such a matter that only the objects of a desired shape or color are kicked when they pass through sensors.
Rocky's Boots was written by Warren Robinett, who also wrote a number of Atari 2600 games including the influential Adventure and perhaps most tellingly, the BASIC programming cartridge (which required the keypad controller):
There's a short interview with Warren in the book Halcyon Days that offers a bit of background on his Atari 2600 years.
The spiritual successor to both of these classic Apple II games is Cognitoy's 2001 PC title Mindrover. It takes the same gameplay concepts and expands them brilliantly into glorious real-time OpenGL:
MindRover is 'the Intelligent Robot Simulation' or perhaps you can call it a 3D strategy/programming game. This is a new genre that encompasses the depth of play found in strategy games with a new concept in player control. You get to program the intelligence of robotic vehicles.You are a researcher on Europa, a moon of Jupiter. In your free time you re-program the rovers to race around the hallways, battle it out with mini lasers and rocket launchers, and find their way through mazes.
Once you have chosen a challenge, equip your vehicle (hovercraft, wheeled or treaded) with various sensors, movement components, and weapons. Then program the behavior of your vehicle in a graphical interface where you wire the components together and set their properties. Then let it go in the arena and watch how it does!
Microsoft may have just launched their Coding4Fun site a few months ago, but the real programming fun started 20 years earlier.