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.
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.
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.

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.

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.

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.








My brother recommended I may like this blog. He used to be entirely right. This post actually made my day. You cann’t imagine simply how so much time I had spent for this info! Thanks!
Pingback: Kinect Hacked – Paradigm Shift? « constructing kids
Pingback: Estonian schools teach kids to code from 1. grade « Constructing Kids
Pingback: Visual Programming Language. Infograph and Introduction | Constructing Kids