A Love Affair with the Butler

Recently, RobG, of MacOSXHints began a blog called the Robservatory, much like this one (and to some extent, I might add, by which this one is inspired). And, like a billion or so years ago, he teased us with the promise of a review of the excellent utility (or system add-on, or whatever you want to call it) known simply as Butler. I've been waiting and waiting for that review, as I'm a long-time Butler user and devotee, as well as a MacOSXHints/Robservatory/RobG fan. I also have wanted to write about Butler for some time, but I wanted to wait and see if RobG covered everything I wanted to say before I began my own review. Because I'm lazy that way.

I can wait no longer.

After discovering yet another useful thing I can do with Butler -- and this is after years of using the product -- I just have to rave about this app. My first experience with Butler began a few years ago, when Mac OS X was young. Frankly, I needed an Apple Menu fix. Bad. In the OS9 days, I was an Apple Menu junkie, and I felt crippled when they removed most of it's former functionality in OS X. I tried numerous utilities and applications. I even paid for Unsanity's Fruit Menu. But nothing did quite what I wanted quite the way I wanted it to. So I ended up using a discontinued hack called -- well, it was so long ago, I don't remember what it was called -- but it worked pretty much the way I wanted. (Ah, Wait! Here it is: Menuversum.) Eventually, though, it became more and more difficult to use as system updates would break it and require me to further hack the hack. So I scrapped it. And right 'round about then I discovered Launch Bar, by Objective Development Software. In case you don't know, LaunchBar is an amazing app that lets you type in abbreviations and then intelligently finds files based on those keystrokes. Basically, it's Spotlight before there was Spotlight. And it works great. It was the first application I know of to do this, and it was such a brilliant idea that this functionality has been copied and integrated into several applications, among them: Spotlight, Quicksilver, and, yes, Butler. I paid for LaunchBar, and loved it, for about a year. During that time, I tested and used the others, but LaunchBar was the best. Not perfect, but really, really awesome.

For a long time.

During that sunny year-or-so of LaunchBar bliss, I was also using a bunch of other menu bar and system enhancements. One was called Keyboard Maestro, and it allows you to assign hot keys to files on your drive. I used it for assigning my F-keys to oft-used applications, for instance. It also allowed for command-tab application switching that brought up a screen-centered visual instead of just using the Dock. (This was in the days of Jaguar, before Apple had implemented their own version of this functionality.) And it could be used to control iTunes playback from the keyboard. (Keyboard Maestro also could be used for multiple clipboards, but I was not hip to this concept yet.) For dictionary searches, I used the web. For Google searches: the web. I also had a menu bar app, called ASM, by the same guy who did Menuversum, that showed currently running applications, and let you switch between them, a-la-OS9's menu bar application switcher. And eventually, I began using the aptly named IP in menubar, to, yes, display my IP address in my menu bar. But I still wanted an Apple Menu that listed folders full of apps or application aliases like I had in the old days.

Call me sentimental.

So for my Apple Menu, I turned to Butler. At first, Butler was sufficient as an Apple Menu, and for me, only as an Apple Menu. But it matured swiftly, and as time passed, it got faster, and better, and more and more features. Today, in my extremely humble opinion, it stands as the king of such utilities. There was a point at which this happened for me, and I remember it fairly well. Two things precipitated my eventual, complete and total defection to Butler for all the aforementioned actions. The first was that LaunchBar was getting ready to update the product and was planning to charge for it. Fine. No hard feelings. That's what they do, and they do it well, and they absolutely should charge for it. I just wasn't sure I wanted to pay. Again. The second thing that happened was that Butler got fast. After playing around with it, I discovered I could tweak it for speed, and that after doing so, it equalled or outperformed LaunchBar as an application-finding utility. After testing it out for awhile, I decided to make the switch. Permanently.

I never looked back.

So there I was, using Butler as my Apple Menu, and now as my application launcher. Great. I was happy as a clam. But gradually, over time I began to discover things. I think it's been fortuitous for my relationship to Butler that my use of it has been gradual, and that it has proceeded alongside the development of the application. You see, Butler does a lot. An incredible amount, really. And cramming all that stuff into one utility makes it probably impossible to make an easy-to-understand interface. Butler does a noble job of it. But most users, myself included, cannot instantly grasp all the things you can do with this app, nor, more importantly, how they would do them or why. My gradual initiation into the world of Butler has allowed me to slowly uncover, and develop workflows around, the many faces of the application.

So, at some point I realized, "Hey, I can use Butler to replace Keyboard Maestro and use it for macros and iTunes control! Neat!" And there went Keyboard Maestro from my list of Login Items. Then I said, "Hey, that menu bar application switcher thing can go away too." Gone from the Login Items. Next I started adding web searches for everything I wanted to search: Versiontraker and Macupdate for applications; Dictioanary.com for word lookups; Google for general searches; Wikipedia for encyclopedic stuff. Then I discovered the magic of multiple clipboaords. Butler showed me the light. My latest Butler discovery was the Fast User Switching feature. Sure, you can do fast user switching in Mac OS X right out of the box, but it's not key-command-able, and before Tiger it only listed your long user name, taking up far more space in my already crowded menu bar than was necessary. For fast-user switching I was previously using the also-excellent WinSwitch, which allowed short user names in the menu bar, and the assignation of key-commands for switching to the login window. I roll out to the login window a lot, so it really helps me to have a key command for this. Why it took me so long to discover this, I don't know (I think it was because I was being picky about the placement of the Fast User Switching menu item, which Butler cannot control, as it is not a "true menu item"), but today I realized I could replace the functionality of WinSwitch with Butler. And there's my gradual use-evolution in a nutshell. See how that works?

If you want my advice on the best way to use Butler, it's this: use it for one thing initially, but remember it when you find yourself saying: "If only there were a way I could do such-and-such." If you try to set Butler up todo everything at once, you'll never use it all because you haven't learned what you want to do, and how you want to do it, yet. It'd be like trying to learn every key-command at once. These things need to be gradually added to your workflow. Otherwise they just fall into disuse like so many forgotten toys in the toybox.

So, to date, on my system Butler has replaced or augmented: The Apple Menu, the application switcher, LaunchBar, Keyboard Maestro, web searches from a browser, the clipboard, and WinSwitch/Apple's Fast User Switching. And I'm not even using it to it's full potential. That's fucking amazing. I now have three Login Items instead of six or seven. Fucking amazing. And it doesn't even slow down my system, not for a second. Fucking amazing. And how big is the app? you might be inclined to ask. 2.4 MB. Fuc... Well, you get the idea.

The only thing Butler has not replaced for me is IP in menubar. Why? IP in menubar works better and steals nothing from performance at login. Butler's version is good too, but it doesn't quite work the way I want it to. My main beef with it is that it's not very instantaneous at updating itself, and for me, that's the whole point of keeping your IP in the menu bar: It's going to change, and I need to know about it immediately. With Butler there's a lag, for some reason; with IP in menubar, there's none. IP in menubar wins on this one... For now...

Anyway, if you haven't tried Butler, you should. You won't be sorry. The only downside to Butler is the guilt factor: It's donationware, you see. So if you find yourself using it a lot, you're on your honor to cough up some cash. And after at least two years of use, I've yet to do so, and boy do I feel like crud. But since I'm now on record, I guess it's time for me to put my money where my mouth is. I'm heading over to PayPal right now.

Hope to see you there.