After much wait and whining (let’s face it, it’s in high demand!), _why released the first Linux version of Hackety Hack. For those of you who, for some reason completely beyond me, aren’t accustomed to Hackety Hack (or _why for that matter!), Hackety Hack is pretty much the coolest thing since sliced bread.
To start understanding what motivates _why and the other Hackety Hackers, you’ve got to read up on two very important documents which have caused not just controversy but an entire revolution in the way many people think about coding and programming in general.
The first of these is the much-debated and much-beloved essay by why called “The Little Coder’s Predicament“. If you haven’t read this essay yet, go do it now. I’ll wait. Yes, I’m still waiting, now get a move on. Let us think on what _why presents here:
- Coding shouldn’t be the “dirty little secret” of computers; it should be celebrated and available to everyone.
- Coding shouldn’t be complicated. A simple task, such as playing a song, should be one line.
- Code should be not just shared, but shared easily. What’s the point in coding something that nobody will ever see in action?
In today’s world, this sort of thing doesn’t really sound so far-fetched… but you’ve got to keep in mind that _why was writing about this nearly four years (to the day) ago. This was back in the days when Microsoft Office 2003 was the newest thing and Pentium 4 wasn’t considered an old processor.
If “The Little Coder’s Predicament” was the beginning of a prolific movement that’s shaped the entire landscape of learning how to program, then this next bit of genius was what really got the gears turning. If one reads “The Hackety Manifesto“, you’ll immediately notice that it doesn’t talk about anything new. That’s true. It doesn’t; not really. Instead, what it does is further build upon _why’s prior musings in 2003 and extend them into the basis for an application that could revolutionize the way people think about programming.
So what are the Hackety Laws?
- Beginners should be greeted to Hackety Hack by a cartoon character. (For the sake of argument, let’s call this character: Hacky Mouse.)
- Also, helpful sentences. And full sentences with a period.
- Hackety Hack is fundamentally a browser and a programming language. For now, Gecko and Ruby.
- I’m only using Ruby because I know it. Hopefully, more languages can be added!
- Again, this isn’t about Ruby, it’s about simply offering a place for plainspeople to tinker with code.
- IDEs are a disaster. Newbs should see only one non-scary window free of tree controls and pinned windows and toolbars.
- As such, we want to stay away from project files and makefiles, the trappings of an IDE.
- Hackety Hack also adds simple libraries for common things.
- Common things are one-liners.
- Keep args and options to a minimum.
- In Ruby, blocks should be used to open up a method to more advanced possibilities.
- Help files are clean, short, simple. Lots of short examples. No frames.
- While all bug tickets are helpful and great, I just value tickets from beginners to a greater degree.
- Hackety Hack is free and will remain free henceforth.
Sounds simple, right?
It’s not.
Think about it – out of all the applications you’ve ever written, or APIs, or libraries, how many times has this really been the case? Once? Twice? The fact of the matter is, clean, simple, easy-to-read code is one of the lost arts that’s only very slowly being relearned and practiced widely, and it’s a shame that it’s taken this long.
So where does Hackety Hack come in?
Hackety Hack is neat if for one thing – it’s a wonderful teaching tool. Hackety Hack was designed to be a simplified front to the Ruby language that was designed in such a way that even the noobiest of noobs and the dullest of gardening tools could code together some very neat, working programs. It’s true to its words in the manifesto – downloading an MP3 or even a simple “Hello world!” program is one line. Obviously, since, at least in the case of the former, Ruby cannot do this out-of-the-box, Hackety Hack comes preloaded with all sorts of neat libraries that one can just call as a simple object inside Hackety Hack. Like the front page boasts, you can write a simple blog in all of six lines of code:
blog = Table("MyBlog").recent(10)
Web.page {
blog.each do |entry|
title entry[:title]
puts entry[:editbox]
end
}
So, to finally get to the point, after much wait and begging and other forms of worship, _why has blessed we Linux users with our first release of Hackety Hack. For a long time it was, very sadly, a Windows-only application, but now, as of this week, we can finally enjoy the bliss that is Hackety Hack.
Amazingly Awesome Screenshots Thanks to Nathan Weizenbaum!
(You can also click on any of those for their full versions instead of thumbnails!)
Ubuntu Feisty users can pick up the tarball here.
To run Hackety Hack, you’ll need to install ‘libwxgtk2.8-0′ and ‘libwxbase2.8-0′ from the universe repository. Once you’ve done that, you can run Hackety Hack from wherever you untarred it to with the following:
LD_LIBRARY_PATH=/usr/lib/firefox:. ./hacketyhack
People on other distributions, assuming they know where the firefox files are kept, can just change the LD_LIBRARY_PATH as necessary.
Note: There seems to be an issue with the libwx stuff in Gutsy, so if you’re a brave folk like myself, you won’t be able to enjoy the wonderful gooey, ooey sensation that is Hackety Hack. If you’re interested, I’d advise just paying attention to this thread on the Talkety Talk forum.
Hackety Mouse Demands You Start Hacking Right Away!

You heard the rodent. Hop to it!



