I've had the pleasure of being one of the original users/testers for Hackety Hack, a very substantial work released by why the lucky stiff. Hackety Hack is a learning environment for programming, targeted at kids but suitable for everyone.
_why made Hackety Hack not just to make learning coding easier, but to make it so easy that coding can become a mainstream skill, taught alongside math and the physical sciences. He detailed why he thought this was important a few years ago, and these feelings are now seeing fruition. The interface to Hackety Hack makes many things effortless, and the guided tutorial is a fantastic way to take a child through series of tasks, while still giving them incentive to experiment.
The thing that fascinates me the most about Hackety Hack is the social aspect. Everyone that creates an account on _why's beautiful Hackety Hack forums also gets a full hacker account, such as mine. Every program you write inside Hackety Hack can be shared, as well as your tables, which are SQLite tables. Other people's shared programs and tables can be summoned for use inside your own programs, like Ruby's require command, except pulling from Hackety Hack's built in social network. It's easy to use someone else's code, and ludicrously easy to publish your own. There are also built in channels which can easily act as chat rooms, and if you go through _why's built in lessons, you'll see how to build a nice looking chat room with them in but a handful of lines.
I was lucky enough to get to present on Hackety Hack at the Boston Ruby Group at their May meeting, alongside Brian DeLacey and Kevin Driscoll. Brian led the talk with a good overview of what HH is and how he tested it out on his own children, and I demonstrated Hackety Hack's technical abilities and how one went about using it. Kevin, a teacher, talked about how he will use HH in his curriculum, and generally why HH works so well in a real teaching environment.
You can see our talks, recorded for all the world:
- Brian DeLacey - Brian introduces HH and discusses using it with his kids
- Eric Mill - my technical talk and tour of the interface
- Kevin Driscoll - Kevin talks about teaching kids to code and how HH fits in
I also helped Brian DeLacey and Andrea Wright talk about Hackety Hack at RailsConf, in their BOF session (slides here). It was late on a Saturday night, and we had no projector, yet we still had fantastic attendance and a very enthusiastic audience. Most people had already heard about Hackety Hack and were interested to know where it was going, and submit their own ideas. In fact, some really great ideas came out of it all, with a focus on how teachers can use HH to prepare lessons for students, and how kids can prepare impromptu puzzles and challenges for other kids.
The optimism surrounding Hackety Hack is pretty high. I've talked with people who were at that presentation since, and they all left even more enthusiastic than when they came. Someone even stopped me in the darkened corner of an already dark bar to tell me how important they think Hackety Hack is. In fact, even before RailsConf, a middle school in Portland has said they are planning on adopting Hackety Hack into next year's curriculum! Now HH has a long way to go, and a stable Linux and OS X port to complete, but the amount of buzz surrounding it is astounding, having being publicly released under a month ago.
Check it out over at HacketyHack.net, and if you're a Linux user, try out the recently released Linux port. Downloads are en masse. Try it out, and if you know a kid, or even a grown up friend, who might find it fun, show it to them. Or maybe you think you can finally evangelize how much of a beautiful art coding is, and how it channels the unseen and individual workings of the mind into towers and tunnels that make very real things happen. You might just be right!