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.
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.
advertisement
- The bulletproof Dell that costs an arm and a leg
- Microsoft Office 2010 Technical Preview: Q&A
- Lawnmowers, the TyTN II and one odd insurance request
- There'll never be a bulletproof OS
- How far can we trust apps?
- Five nice touches in Outlook 2010
- Building a better Google
- Beware HP's horrendous printer-driver glitch
- Microsoft debuts free Morro antivirus package
- Getting started with Search Server 2008 Express
- Motorola pays Lucas for its Droid
- Where are the killer apps for Windows?
- Will you hit the Orange iPhone "unlimited" cap?
- USB 3 first benchmark - it's here, and it's fast
- Why Windows 7 has forced me to worry about security
- How Dixons is (under)selling Windows 7
- Do I like Windows 7 because it's so like a Mac?
- No Windows 7 drivers turn Dell M1330 into a doorstop
- Is Windows 7 good looking enough to sway an Apple fan?
- Typekit brings print-like typography to the web
- Web censorship "breaches WTO rules"
- Facebook users to join the IM crowd
- Government promises broadband windfall for Scots
- Kingston bringing films to a flash drive near you
- Scientists tout cloaking tool for search engines
- Six-pack of fixes set for Patch Tuesday
- British Legion calls for Twitter silence on Poppy Day
- Spotify stems interest in illegal downloads
- Postal strike leads businesses to online alternatives
- Microsoft wants to expand Yahoo deal worldwide
advertisement

Printed from www.pcpro.co.uk

