Guess who’s a Growl developer
If you’re a mac user, you might have heard about Growl, perhaps you’re even using it. Those of you who know me might have heard me rant about how its greatness. It’s simply such a well thought-out, designed and developed software.
For those of you who have never heard of it, Growl is a notification system and framework for OS X. It’s highly configurable, yet easy to do so. The user can choose the notification style, the position of notification on the screen, set different notification styles and behavior for each program, etc. It’s even possible to have the notification emailed to you, or spoken out. It’s also the first notification system AFAIK, started back in 2004, which I believe was a really innovative idea at the time. Oh, and did i mention it’s open source too? And it’s no secret I love open source projects
One of the things I love most is how easy it is to use the framework as a developer. When I got accepted for GSoC 2010 to improve Pallet (a MacPorts GUI which is still in beta), adding Growl notification was amongst the first things i did, and it was so easy, even with my worthless Obj-C knowledge at that time, that I couldn’t believe it. When it came to developing Capster, it took me less than half an hour for the notification part.
Those of you who know Growl might have missed its companion app, Hardware Growler. hwGrowler (as we call it for short) is part of the Growl Extras, which include an iTunes Growl plugin, a command-line growl notification tool, a mail plugin (which is awesome and very, very useful*), and of course, Harware Growler. It’s designed to run at the background and send you notifications for things like pluging a usb/firewire/bluetooth device, mounting a volume, connecting to a wifi network and networking in general (i.e. IP changes, ethernet cables geting unpluged, etc), power cord changes (on power, charging, on battery, on UPS) and device syncing using iSync.
Here’s what it looks like when you plug in the charging cable:
A plain Hardware Growler notification.
The reason I joined the Growl team was to improve Hardware Growler on a few places that bothered me. First of all, Hardware Growler had no reason for a Dock icon. It’s supposed to run on the background be forgotten. Therefore, I moved the icon to the status bar. I also removed the preference panel, since there was only one preference anyway (for now ;), and moved that preference to the statusbar icon menu. I’m also adding a second preference (which is disabled right now).
New Hardware Growler menu on the status bar.
Last, but not least, came notification coalescing. What is coalescing you say? The idea is simple enough. If a device disconnects and connects fast, the second notification will replace the first one on the screen. That way, instead of having both notifications shown at the same time, you’ll see the first notification, and when the second notification comes up, it replaces the first one. Imaging plugging and unplugging the power cord. Instead of this:
Old Hardware Growler. Notice the icon on the Dock and the two notifications.
You get this:
New Hardware Growler. Notice the status bar icon and the one notification.
There are also many exciting features we’re considering. Who knows, we may add so many features we’ll have to bring back the preference panel ;). I hope you’re as excited about this as I am (though I doubt it).
*The Growl team has recently stopped developping the GrowlMail plugin for Apple’s Mail.app, so it doesn’t come included in the extras anymore, but it’s been picked up as a personal project from Rudy Richter, who just so happens to be the Growl lead developer. You can download the last version here.
Update: I was informed by Rudy that the iTunes Plugin has been discontinued as a Growl project and picked up by him as well. You can get the source code on GitHub. There an iTunes Growl app though, called GrowlTunes, which is part of the Extras and essentially does the same thing. Check it out, t’s pretty neat!