I started programming when I was 5 years old in 1979 on a Commodore PET. In those days, the PET came with BASIC and no software, so my father who had brought one home showed me how to write some basic code.
Typical programs I could write at 5 were:
Print "What is your name?"
Input a$
For i = 1 to 100
Print a$ + " is great!"
Next i
We used to go into the local department store and write the following program and leave it running:
Print "K-Mart sucks!"
Goto 10
The average sales person at the time wouldn't know how to stop the program and have to turn off the computer!
This was cool stuff when I was 5. I started working with LOGO as well at an early age as well, doing lots of interesting things with turtle graphics, geometry, etc.
My daughter is now five, so I've been looking for programming languages to introduce her to programming concepts. The problem is that any programming language simple enough for a 5 year old is very lame by a modern computer's standards. LOGO was a big deal in 1979 because drawing a circle, a line, a square, etc. was pretty cool. When I showed my daughter LOGO this year, her reaction was, "That's all it does? I think I'll just go to a web site instead."
MIT has just published a new programming language that is graphical based, uses draggable commands and is focused on sound, animation, pictures, etc. I tested it out this evening with my daughter and it was a big hit! We created some animations together, did some drawing, added some sounds, etc. and then showed it to mom before bed.
If you have children or are simply interested, you can download the software here.
3 comments:
See, I'm inclined to think that a graphical tool for programming is pointless, no matter how much more interesting it is for kids.
Why do I think this? One simple reason. It's not like real programming. Nothing they learn by using this tool is directly applicable to firing up a C++ compiler, say.
The problem isn't attracting kids to the world of programming, it's making sure that the kids who have a natural inclination to build things know where to go to get started! In this sense, systems like XNA Game Studio Express are better suited than MIT's effort.
1. Anything that teaches the concepts of events, conditionals, loops, etc. is a good thing for kids to understand. Scratch allows you to do this and it reacts in a similar way to any other programming language.
2. Its not like firing up a c++ compiler, but at least at 5 years old trying to get a kid to do this is pretty difficult, especially when there are so many other things more fun to do on a computer these days, e.g. use google earth, play music, surf the web, etc.
I can see your point. Probably the biggest problem we have these days is that amazing things are commonplace. Back in the good old days (second half of the 80s for me), I got excited because I managed to print multi-coloured text all over my screen. Can't think many kids would get that excited about that sort of thing now, but that's the challenge we face.
The other problem is that even later in life, when kids make it to school, college, uni, they're not being taught programming from a point of view of the creative process - the standard documentation I was taught using was very very dry and even bored me to tears. It was also hard to absorb, especially for those without prior experience.
Come to think of it, most school-level computer courses now don't even mention programming. It's 90% about learning how to use MS Office.
Post a Comment