Teaching Kids to Hack with Hackety Hack
Posted by Daniel Butler Fri, 27 Apr 2007 14:42:00 GMT

Ruby’s own Edgar Allen Poe, _why the lucky stiff, mastermind of the continually-evolving Why’s (Poignant) Guide to Ruby and Try Ruby!, has done it again with Hackety Hack: The Coder’s Starter Kit. But what exactly has _why done, and why?
In The Little Coder’s Predicament, _why posits that, unlike us first generation hackers who grew up with Vic 20s, C64s, Amigas, and other machines which came with simple, accessible programming environments, kids aren’t learning programming on today’s consoles and desktops because companies are now fearful of placing the power of a programming language in the hands of its users. With Hackety Hack, the expressiveness of Ruby, the power of web-based applications using JavaScript and AJAX, and _why’s own creativity and artistry have converged to produce a quirky, easy-to-use, and, most of all, fun, programming environment that kids will take to faster than you can type FOR X=0 TO 255: POKE 32768+X,X: NEXT.
Brian DeLacey explains, “Hackety Hack is as significant a computer-age innovation as the mouse because it makes computers accessible in wholly new educational and transformational ways.”
Hackety Hack currently comes as a standalone installer for Windows (Version 0.3.1 if you want it), and it works pretty damn well. (Further platform support should be forthcoming, as well as non-English translations.) As you create programs and follow through the self-guided tutorials, you can create, edit, and save files, which are preserved between sessions. Ruby’s expressiveness is encapsulated in a DSL which integrates beautifully with JavaScript. say writes to the output area; ask uses a JavaScript dialog to grab input from the user, and sleep presents an animated JavaScript progress bar. All and all, a very kind and sensible interface for the babies.
I’ve been asked what I would recommend as ways to get kids involved with programming, and in the past I’ve recommended Try Ruby!, but Hackety Hack has taken the self-guided tutorial and freedom of a true, (albeit sandboxed), programming environment to the next level, with a powerful set of methods that make common and modern tasks easy. The simplicity shows through, and as _why explains in The Hackety Manifesto, “Hello world should be one line. In fact, downloading an MP3 should be one line!!.”
Best of all, Hackety Hack is free, and will remain so. Thanks, _why. And thanks to all (the 50+) who contributed to this creation.

