Skip to navigation

PCPro-Computing in the Real World Printed from www.pcpro.co.uk

Register to receive our regular email newsletter at http://www.pcpro.co.uk/registration.

The newsletter contains links to our latest PC news, product reviews, features and how-to guides, plus special offers and competitions.

Real World Computing

Programming for kids

Posted on 28 Apr 2009 at 12:02

MySQL fan Ian Wrigley discusses computer programming for children, and goes back in time with linux.

Some of us are old - very, very old. Some of us remember teaching kids to program in a language called Logo which was, in its simplest form, a language used to control the movements of a "turtle" (actually a small triangular icon) on the computer screen. As the kids learned more of the language and grasped the building blocks of programming such as looping, they could begin to create prettier and prettier graphics. Eventually, of course, real life came calling, and beat them up for being such nerds. Such is the hard life of a budding computer programmer.

Lest I get a ton of angry emails, let me declare right now that, yes indeed, I do know that Logo was capable of far more than prancing turtles. As the Wikipedia article on the subject says, some people considered Logo to be Lisp without the irritating parentheses. But at that time, drawing cool graphics on the screen was as far as most people ever got with it. Anyway, Logo is now long gone as far as most people are concerned, and since the advent of the web, the Wii, the iPhone and all the other wonders of the modern world, no-one has the time to learn a programming language when all they're going to get out of it at the end is a few primitive patterns. If you're going to teach kids to program nowadays you've got to find something that will allow them to build real-looking applications as fast as possible.

The problem is that nowadays "real-looking" means looking like a proper Macintosh or Windows application, and unless you're a sucker for punishment then you don't want to start trying to teach an eight-year-old Objective-C and Cocoa, or the object model of the Windows Foundation Classes (at least you wouldn't want to do that with any of the eight-year-olds I know). What's really needed is something that will allow you to program in a "friendly" language and yet will make it really easy to put things such as buttons and graphics onto the screen. And that's exactly what Shoes is.

Don't be put off by its silly name - it really is an environment in which you can create full-scale programs that include graphics, buttons, animation, links to websites, text input areas and basically most of the things you'd find in any "real" Mac or Windows program. You write your code in a text editor, open it up in Shoes, and if you haven't made any mistakes it will immediately run. Then, once you're happy with everything, you can package it up into a single file and - here's the really great thing - that file (called a Shy, believe it or not) will run on a Mac, on Windows or on a Linux box.

If those names, Shoes, Shy and so on all sound a little twee, well I'm afraid they just are. Shoes was developed by a guy who goes by the name "_why" (sic) (or do I mean sick?) complete with that underscore character. His full name is "why the lucky stiff" (all in lower case, naturally), and if you're a Ruby aficionado you'll recognise the name because he's the person who wrote a free-to-download book called Why's (poignant) Guide To Ruby, which was full of little illustrations and supposedly funny asides. Personally, I found it intensely irritating, but maybe that means I just don't have a sense of humour. However, since Real World Editor Dick Pountain finds it even more intensely irritating, then maybe neither of us has a sense of humour or maybe it really is intensely irritating.

Despite all its toe-curling archness Shoes really is an amazing piece of work, and if you're looking to teach someone to program it's definitely worth your while taking a look at it. The language in which you write your programs is Ruby, which is a good start since it's relatively easy to pick up the basic Ruby concepts and it isn't some academic novelty that you'll have to forget as you move on to more advanced programming. Ruby is now being used all over the world as both a web development language and a general-purpose scripting language, and you can write full-blown Mac applications in it. The performance of the current version 1.8 is good enough, but when version 1.9 is released this year its souped-up bytecode interpreter will put it on a par with C#. In short, Ruby isn't going to go away any time soon. But even without knowing more than a tiny smattering of Ruby you can immediately create a graphical front-end for your program simply by following the basic instructions on the Shoes website.

1 2 3
Be the first to comment this article

You need to Login or Register to comment.

(optional)

Ian Wrigley

Ian Wrigley

Ian Wrigley runs W A Communications, a Los Angeles-based technology consultancy. He's an advocate of open-source technologies, particularly on the server side, and is on the board of directors of the British Academy of Film and Televsion Arts/Los Angeles.

Read more More by Ian Wrigley

advertisement

Latest Real World Computing
Latest Blog Posts Subscribe to our RSS Feeds
Latest News Stories Subscribe to our RSS Feeds
Latest Reviews Subscribe to our RSS Feeds

advertisement

Sponsored Links
 
SEARCH
SIGN UP

Your email:

Your password:

remember me

advertisement


Hitwise Top 10 Website 2008