Computer Programming Finds a New Gleeful Audience. In Five Year-Olds?
When some people hear about the new computer programming language aimed at children called Scratch, here's the question that comes to mind: "Really, does society need to be inflicted with one more programming language for beginners?"
About 50 years ago, when we first began to see these mysterious machines running spools of tape with precise motions on James Bond or Mission Impossible, names of programming languages like Fortran, Basic, LISP or Algol seemed really cool in an alien sort of way. And these were the beginner languages back in the day.
While we still have some of these hanging around, the creative geeks of the world constantly come up with new and improved ideas on how best to approach a subject that can drive most people nuts.
We've seen C and Smalltalk in the 80s, C++ in the 90s, and C# and Java for today's generation.
As much choice as we've had experts and professors of computer languages have always felt that something has been missing. No one really would see C# to be a beginner's language; the world is famously full of people who just can't get computers; who expect the average five-year-old to start learning Java and make any sense of it?
The more evolved something gets, the simpler it is supposed to become. So here we go, with two important computer programming languages aimed at kids, and people who hate computers. Are our computer programming languages more evolved today that they once used to be?
In the world of children's computer programming languages, Scratch is all the rage. The idea for Scratch was born when MIT was engaged by and Lego, to create a Lego Mindtorm.
Scratch is a full-blown language today that allows children to play at programming, to make games, cartoons, interactive videos and so on. Scratch also helps children learn famously unfriendly school subjects such as math and computers.
What Scratch does is it helps the child visualize a programming idea he or she has in mind. Visual construction and basic building blocks help them to see how all the logic goes together.
All they would do to make a new program is to put the right programming blocks together, like you do with Lego. They get stacks of program blocks to play around with. A child playing with Scratch learns about scary-sounding programming concepts like events, loops, conditionals and all of that stuff - without even knowing it.
Alice is another good one - you know there's something special about it, because they named it after the heroine of Alice in Wonderland. Children will love this one, because right away, it's a 3-D environment Children do their computer programming work by dragging and dropping three-dimensional programming tiles into place.
It works something like the way Scratch does, because it is building block-based. They use Alice to create cartoons, games and so on. Everything usually works right off the bat; and the children who really get into it will find it gentle and playful.
It's a great way to introduce them to the way logic and object oriented programming works in Java and C.
So do children actually like it? You bet, they do. The very idea that they have so many innovative tiles and blocks to play around with, usually means a certain amount of creativity is a given.
The things they quickly come up with can be as amazing as a little character of their own. This is a great step ahead in children's education.