Programming in kindergarten

Who said that computer programming should be reserved for a tiny group of nerds? Is it because they are the only ones with the ideas? Or because it’s simply too complex for ordinary people?
Creative people don’t think the same way programmers do. Therefore they are excluded, and so are the best ideas.
That is why I am pleased to see visual programming languages gaining strength! A visual programming language is typically based on the drag-n-drop system. The programmer chooses an action and drops it into the program, just like solving a jigsaw puzzle.

To articulate this, I will use some examples:

1. Traditional programming

languages like for instance C+, requires a tremendous amount of overview and programming skills to master. And often, when the programmer has worked for days to get a script to work, we faces a syntax error, meaning that a little “{” or “,” or whatever has been placed wrong somewhere in the script! To bug fix this = Large number of hours wasted.

2. Scratch, a popular visual programming language developed at MIT Media Lab, no such thing can happen. The philosophy of Scratch, inspired by Seymore Papert and his LOGO -programming language,  is to remove the parts of programming that has nothing to do with being creative. By dragging and dropping the actions into the script instead of writing it, there is no loss of information, and syntax error has no chance.

Furthermore, creating an action like the one on this picture is very easy. Doing the same in C+ is a hole other story! I have had students at the age around 10 programming mini games with scratch. The games are all online for others to share and comment on here: http://scratch.mit.edu/channel/featured . Making it all public for others to use, is true web 2.0 spirit. By making creativity in computer programming available for a younger audience, the chance of bricolage-innovations (Styrhe) increases. It has never before been possible for this age group to create computer games and programs. The result is stunning!

3. Programming in kindergarten is possible!  E.g. this little game (from the Danish site http://dr.dk/oline ).  The teddy bear (bamse) tells the chicken (kylling) to write “Bamse hates worms” (Bamse hader regnorme) with symbols. The player then connects the symbols in the right order to give the sentence the right semantic. I consider this good programming training, even though there is only one way to complete the tasks.

My conclusion is that nothing is too complex, it is only the didactics that needs to be adjusted to suit the child.

Who said computer programming needed to be text-based hyper complex matrixes? That paradigm might soon be over! Now children are given a new media to express one of the things the they do better than adults: being creative!

 

Great visual programming languages for kids:

Kodu game lab by Microsoft Research FUSE Labs. Maybe the most intuitive visual programming language there is. Because it is based on icons istead of text, the coders does not even have to be readers to create games.

Kodu game lab by Microsoft Research FUSE Labs. Maybe the most intuitive visual programming language there is. Because it is based on icons istead of text, the coders does not even have to be readers to create games.

 

 

 

Logo is maybe the first visual programming language. It's a drawing tool made by Seymour Papert, the founder of MIT Media Lab. Uses simple codes like: "10 forward" or "turn 90" ect.

Logo is maybe the first visual programming language. It’s a drawing tool made by Seymour Papert, the founder of MIT Media Lab. Uses simple codes like: “10 forward” or “turn 90″ ect.

FAAST is made by University of Southern California and is the API between a Kinect and the computer. Through keybindings like "when left arm up 70 press w". Works well with Scratch.

FAAST is made by University of Southern California and is the API between a Kinect and the computer. Through keybindings like “when left arm up 70 press w”. Works well with Scratch.

LEGO Mindstorms EV3 is the third edition in the Mindstorms series. Now with integration of Smartphone technology as gyrosensor and voice commands. The programming environment is using the wooden puzzle as a metaphor giving a good overview.

LEGO Mindstorms EV3 is the third edition in the Mindstorms series. Now with integration of Smartphone technology as gyrosensor and voice commands. The programming environment is using the wooden puzzle as a metaphor giving a good overview.

Google App inventor is a tool that enables app development to almost everyone. You don't even have to have a smartphone, you can use the Android emulator to test the apps. Google App Inventor is the most complex visual programming language that I know of.

Google App inventor is a tool that enables app development to almost everyone. You don’t even have to have a smartphone, you can use the Android emulator to test the apps. Google App Inventor is the most complex visual programming language that I know of.

Scratch is definately the most famous visual programming language there is. It has been founded at MIT Media Lab, and through a very intuitive design children at very young age can create games. Scratch let's users upload their games to their web 2.0 platform, giving users an oppertunity to learn from others .

Scratch is definately the most famous visual programming language there is. It has been founded at MIT Media Lab, and through a very intuitive design children at very young age can create games. Scratch let’s users upload their games to their web 2.0 platform, giving users an oppertunity to learn from others .

Alice is a visual programming language that lets users create 3D games. It looks a bit clumsy compared to KODU Game Lab, but Alice offers more complexity and options.

Alice is a visual programming language that lets users create 3D games. It looks a bit clumsy compared to KODU Game Lab, but Alice offers more complexity and options.

 

About these ads