Monday, July 20, 2009

Kodu: Programming Made Fun

If you're old enough, you might remember that little triangle turtle game called Logo. I remember seeing it in elementary school, but I don't recall doing much with it. The idea is that you give commands to the little turtle, and wherever he moves, he leaves a trail behind him. You can make some neat patterns with this simple concept.

The program, of course, wasn't just a game - it was intended to teach kids about programming concepts. I know many people look back on it fondly, but I don't believe it was all that exciting for me. I think the new game by Microsoft Research Kodu would have been more my style.

Slate calls Kodu "Logo on Steroids":
Kodu is light years beyond Logo, with modern 3-D graphics, a world players can landscape to their liking, and a cast of characters that isn't limited to the Terrapene genus. But the mission is pretty much the same: to place kids in an open-ended environment and arm them with a simple language that lets them build things. At the risk of blaspheming my youth, I dare say that Kodu is more fun than Logo. It's also a reminder that the mission of games like these is not actually to teach kids how to write code. It's to teach them how to think like programmers.
As Microsoft describes it:
The core of the Kodu project is the programming user interface. The language is simple and entirely icon-based. Programs are composed of pages, which are broken down into rules, which are further divided into conditions and actions. Conditions are evaluated simultaneously.

The Kodu language is designed specifically for game development and provides specialized primitives derived from gaming scenarios. Programs are expressed in physical terms, using concepts like vision, hearing, and time to control character behavior. While not as general-purpose as classical programming languages, Kodu can express advanced game design concepts in a simple, direct, and intuitive manner.
The game is available on XBox and PC, and I have to say I'm tempted to give it a try. I've talked about teaching kids to program before in the context of how it might be done with augmented reality. I'd like to see how complex Kudo is, and how effectively it captures the attention of kids while they think they are simply having fun. If you've tried Kudo or any other modern programming game, let me know what you thought of it!

8 comments:

Alfred Thompson said...

I've been using Kodu for a while now and have shown it to a number of educators and actual children. Kids seem to grasp it with amazing speed and in 20 minutes know more about it and can do more with it than I can after hours. It has been play tested with many young people both at Microsoft and through some Kodu Clubs (http://koduclub.org/default.aspx for one). It does get their attention.
They can learn a lot of the concepts of computer science through playing with Kodu. It remains to be seen how that translates to moving forward into "real" programming but I think at the very least it will promote interest in computer science and that is a big part of the problem of getting students into the field.
There are a number of video demos available BTW. The one I did is at http://blogs.msdn.com/alfredth/archive/2009/07/13/kodu-demo-programming-for-little-kids.aspx

Gail Carmichael said...

Thanks for the comment Alfred! You make the game sound even more exciting! :)

My guess is that no kid could magically learn to program after playing Kodu, but I think they will be able to look back and think, 'hmm, this seems to relate to this thing I could do in that game' when they formally learn to program. Even having that connection in their minds will probably make the experience more comfortable (at least, I know it would for me!).

I'll check out those demo videos for sure. I think I really should pick up a copy!

john c said...

Logo was a lot more than a triangle on a screen, at least if you were in an English school. They had robots that plugged into the BBC computers, and would wonder round the floor drawing the patterns you told them to. great fun when you were 8. :)

Gail Carmichael said...

John: Ok, that would DEFINITELY be a lot more cool than the program I saw when I was a kid! :)

pross said...

Have a look at Scratch http://scratch.mit.edu/

Looking forward to trying Kodo.

Gail Carmichael said...

Cool! I'll definitely add Scratch to my list. Anyone else have some interesting games to help kids learn programming? Would love to hear about it!

Greg & Julie said...

Gail: Another entry-level/teaching/fun programming language that I have seen before is Phrogram at phrogram.com. I believe it used to be called KPL (Kid's Programming Language). I have never tried it myself, but it looks pretty interesting.

Gail Carmichael said...

Awesome, thanks - added it to my list! :)

Post a Comment

Comments are moderated - please be patient while I approve yours.

Note: Only a member of this blog may post a comment.