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 aliens 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, professors of computer languages and experts 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? Let's see now, shall we?
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, with a visual construct, and with basic building blocks that help her see how all the logic goes together. All a child would do to make a new program, would be to put the right programming blocks together, like you do with Lego. And the child gets stacks of program blocks to play around with too. A child playing with Scratch learns about scary-sounding programming concepts like events, loops, conditionals and all of that stuff - withut even knowing it.
Alice is another good one - you know there's something special about it going in, 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, and 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. Children use Alice to create cartoons, games and so on. Everything usually works right off the bat; and the children who really like going in with the experimentation, will find the going gentle and playful. And it's a great way to introduce children to the way logic and object oriented programming works in Java and C.
So do children actually like them? 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. And the things they quickly come up with can be as amazig as a little character all their own in a maze or something. You need to try it for your child to know what a great step ahead in children's education this is.