Archive Page 2

Hackety Hack, Meet Linux

Hackety Mouse!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.

hackety1 hackety4!hackety2! hackety3!

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!
hackety 5?!?!?
You heard the rodent. Hop to it!

Write on the Walls! … and the Ceiling … and hell, just Scribble!

For those of you who aren’t always up-to-date on those wonderful up-and-comers in the world of software, you should be ashamed because you are missing out on some great stuff. Really. Get out and live a little!

One of those Great-Projects-You’ve-Never-Heard-Of is developed by an Interweb buddy of mine by the name of Nathan Weizenbaum: it’s called Scribble!

When he first wrote about Scribble!, I was immediately excited. While of course it’s a fairly neat sandbox for playing with Ruby and Cairo rendering, the best application of Scribble! is the one in the classroom. No – not drawing on the walls! Scribble has the potential to be a ridiculously good teaching aid for students with a little knowledge about Ruby’s syntax. Like Nathan noted in his post, Scribble! is to graphics what Hackety Hack is to general application writing.

Of course, with the project still in its immediate infancy, Nathan (as well as Jon Leighton, who is the only other consistent hacker for the project at the moment) is a bit busy working on the actual back-end of the application as opposed to writing Joe Sixpack-friendly walkthroughs to explain things like “How to use a method: for Dummies”.

Scribble! for Dummies!

Still, Scribble! is an exciting project written in possibly the coolest language ever (if you have to ask what the language is, don’t bother leaving a comment :P ). The only thing it could really use at this point is more developers – the rest will come in due time. :)

Speaking of Scribble! development, I finally got my hands muddy today with a patch to implement GTK Source View highlighting and a few other things in the text display, which should make its way into SVN in the next 24 hours or so:

_TWO_ images in the same post?! Madness!

If you’re interested in developing, or even just playing around, you can checkout trunk from the subversion repository here:

svn co svn://hamptoncatlin.com/scribble/trunk scribble

Keep in mind that you’ll need the Ruby-Cairo and Ruby-GNOME2 and Ruby-GTK stuff to run it.

The google group can be found here.

 

Some Dangerous Updates for Gutsy Users

Just to let any other Gutsy users know, avoid dist-upgrading at the current time because of poppler package changes that will remove key applications like evince and gimp.

If you do accidentally remove them and such, you’ll have to download theĀ  0.5.4-0ubuntu8 versions of libpoppler1 and libpoppler1-glib from here.

Compiz 0.5 – I’ve been waiting! >=( (and other interesting uploads…)

After painstaking months of agony and waiting and all that jazz (er, sort of), Compiz 0.5 has finally been uploaded to the Gutsy repositories. I’m so glad to see it – I was tired of compiling it.

Also of note, Rhythmbox 0.10.90, featuring the new Tango icons in the user interface and crossfading, has also been uploaded. While I personally cannot stand to use Rhythmbox (go Banshee!), they’re finally beginning to put the effort into the user interface that it really deserves. Bravo!

Finally, like everyone and their grandmother (or maybe their mother) has heard, Dell is finally officially, as of today, selling PCs pre-loaded with Ubuntu Feisty. ‘Bout dang time! ;)

Atlanta Youth Wind Symphony

The other evening, I had the extreme pleasure of attending the AYWS concert at Emory University. It was a short, but amazing program in all respects. In particular, their heart-wrenching performance of Alfred Reed’s “Russian Christmas Music”, with a guest conductor whose name eludes me at the moment, was so phenomenal that it was truly a once-in-a-lifetime performance, in my mind. I can’t wait until I can get a recording of the concert. :)

What’s Happening with Banshee?

Not a lot of people who check out a project or three consistently from SVN aren’t involved with the actual coding process.

But, hell, I’m an enthusiast! ;)

I check out Banshee’s trunk nightly, and since the last release, here are some of the toys that’ve been added:

  • The right-click menu for the tray icon reverses itself if the notification area is on the bottom of the screen.

Banshee Tray Icon

  • The search API is now revamped and much, much faster.
  • The search/filter area is now properly GTK-themed

Search area

 

  • A bookmarks plugin

Bookmarks

 

  • The usual TagLib updates

Obviously there are many more plans regarding Banshee that will come to fruition in coming weeks, but I’ve enjoyed these so much I just had to blog about them. :D

The Fox and the Bird

Finally, after such a horridly long wait, Thunderbird 2 has hit the Ubuntu Gutsy repositories (in addition to a Firefox compiled against current hunspell packages)!

I’m not going to run over all the new features in TB2, as you can simply do that for yourself. Still, this is really exciting – I’ve been waiting weeks. ;)

The Wonders of F-Spot

Even though I’ve been using Ubuntu for a while, and I more than love my collection of Mono applications, I’ve never actually ever used F-Spot.

So today I tried it and… I’m in love. ;)

It’s a simple, intuitive interface, and best of all, it can export to online hosts rather easily (read: Flickr) and seems to be extremely usable. I’ll definitely keep using it in the future.

Gutsy is in Business

The Gutsy repositories, while apparently not containing anything new as of yet, are open and ready for business. I’ve already got my sources.list switched over. :D

Nothing like a new development cycle!

It Takes Two to Tango

The merge between Beryl and Compiz has served little purpose other than to start a bunch of flame wars on the mailing lists.

Boy – that’s something to be real proud of. :(

« Previous PageNext Page »