If you’re looking for a simple, flexible way to make sure you know about what’s going on with one computer from the comfort of another, Growl 1.1 might be for you.
I like to know what’s going on in my digital world. It’s a habit I picked up when I was managing a cranky networked app for a high school, and I’ve never lost it. Outage notifications were always better when they came from a script rather than from an irate teacher who’d just lost her network connection halfway through sixth period attendance.
These days, I don’t have irate teachers to deal with: Just the family LAN and a few hosted domains I share with several guests. I’d still rather know something’s wrong from a fairly dispassionate automated notification; and if I can get notifications for less important things I’m happy about that, too.
Late last week the Growl project announced Growl 1.1, a revamped notification framework for Macs. If you’re looking for a simple, flexible way to make sure you know about what’s going on with one computer from the comfort of another, Growl might be for you. If you’re running services on a platform besides the Mac and can run scripting languages like Perl or Python, you can signal Macs listening for Growl notifications over the network.
What’s That Term?
Not sure what a particular term means? Check out the searchable PracticallyNetworked Glossary.
Growl provides the pieces applications need to send graphical alerts to a Mac display. There are a number of Mac apps that talk to Growl, including assorted mail clients, Web browsers, download programs, timers and more. Each includes a list of possible notification topics specific to the application: received mail, completed downloads, alarms, buddies signing on and off IM and a lot more.
By way of an example, let’s look at Transmit, an FTP client I reviewed last year. Transmit includes some handy features for doing backups and folder synchronization over the Internet. A folder sync, for instance, guarantees that the stuff in a directory sitting on a remote server matches the contents of a local directory.
As the screenshot in Figure 1 shows, Transmit offers three notification events for Growl: completed downloads, completed uploads and completed synchronizations. Each of those events can trigger a Growl alert, causing an alert to pop up on the user’s display, as in Figure 2.
As a simple notifier system, Growl’s handy for a number of reasons: It standardizes the sorts of alerts you receive in terms of how they look and where they appear. You can customize where they appear and how long they stay on the screen and whether they’re accompanied by sound. The number of display styles make it easy to create visual cues for how important an incoming alert is. With Growl acting as a broker for all your notifications, you can avoid a clutter of windows competing for your attention since Growl neatly stacks its alerts for you.
Over the Network
Alerts local to the computer you’re working on are only part of the Growl picture, though. It also includes network functionality that makes it possible to send and receive notifications for applications running on another computer. Out of the box, it works with computers on the local network, as shown in Figure 3.
The computer “ornithopter” in that screenshot is a local laptop. When Growl displays a notification on my desktop system, it also sends a notification to the laptop. The laptop is also set to send notifications to the desktop system.
That network functionality is useful for a number of purposes: Chat and voice apps such as Skype and Adium send Growl alerts, so there’s no need to juggle multiple clients between laptop and desktop if you move between machines much. If you start a long backup on one machine using Transmit, it can send a notification to a second machine when the backup’s done.
Growl has also been extended to work with common scripting languages such as the Mac::Growl Perl interface and Python’s GrowlNotifier class. So any platform that can run these languages (as well as Java, Ruby, Tcl or even PHP) can send Growl notifications.
Support for these languages is available via the Growl SDK, which you can download from the Growl developer pages.