How Stupid and/or Irritating

So, with a nice, fresh, clean -- some might even say virginal -- install of Tiger on my big, beefy, hefty -- some might even say manly -- Dual 2.0 G5 with 2.5 GB of RAM, I'm giving it a go and still finding things that I either just plain don't like, or that downright piss me off. This will be a running list:

• In Mail.app, tabs turn into spaces after being typed, and are not constant in length -- are basically not tabs. This is not a new problem, just really, really fucking irritating. Really.
• Ha! Oddly, you can have tabs in the To, CC, and Subject fields if you cut and paste them in (typing the tab key, of course, tabs you to the next field). Cut and paste into the message body, though, and the tabs become spaces. And that's just really, really fucking stupid.
• Today I had my first Spotlight problem on the new install: was searching for some stuff and got the beachball and the unresponsive Spotlight window.
• After that (don't know if it was actually related), noticed mds taking 90-100% of the CPU. Rebooted. Problem seems to be gone for now. I'm pretty sure this was a bug, as there was nothing I was doing that should have prompted Spotlight to be indexing anything, and if it was indexing stuff, why didn't it continue after the reboot? Yup. Bug.
• I later checked the system log for instances of mds and found this one line that seemed to occur right about the time I had the above problems:
Jun 23 15:35:28 systemsboy diskarbitrationd[33]: mds [158]:24067 not responding.
Yeah. That could do it.
• It's been said that Tiger updates items in the Finder "instantly." This word "instantly" sure gets kicked around a lot, doesn't it? And while it's true that running:
mkdir /Desktop/test
will instantly show you your new folder on the Desktop, there are some changes in the Finder that are far from "instant;" in fact they're downright slow. Try this: Open a new window in column view. Create a new folder. Now rename it something that would cause it to change its alphabetical placement -- something like aaa. Wait for it... Wait for it... Ahh! There we go. Took it a few seconds, eh? WTF?
• In Preview, you used to have a setting that told the app to show any PDF document it opened as full screen as possible. Meaning, you open the PDF, Preview zooms in as far as it can without clipping. This was one of the many reasons I chose it over Adobe's PDF readers (whose names are constantly changing -- stupid and irritating, in and of itself). You can still set this up in Preview, but there's a hidden trick that always takes me forever to find: Make sure View->PDF Display->Continuous is checked. Otherwise, Preview assumes you want to zoom in 100% without clipping the full page. It's just like the old saying goes: when you assume, you make an ass out you and me.
• So wait... You're telling me I can only have one Spolight window open at a time? Yup. That's what I'm telling you. Yes, it's true. Do a Spotlight search and choose "Show All" from the drop-down list of results. Then do another Spotlight search, and choose "Show All" again. The original Spotlight window results get replaced by the new results. Too bad. Looks like if you want multiple search result windows, you'll have to use command-f. And that's just command-f-ing stupid.

More to come...

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.

Everywhere, Widgets

I go to the software download sites every day. MacUpdate, Versiontracker, you know, the usual suspects. And they're great. Always up to date, full of useful products, and information about said products. I actually go to these sites several times a day, just to stay current. And I used to enjoy it. But lately, when I go to, say, MacUpdate, the list is entirely full of what forevermore I shall think of as the lowest form of application: the widget.

I think they need a whole seperate category for these. I mean people think they're cool right now, because they're the latest thing, but I'd venture to guess most people only use a few widgets, and not even very often. Am I right? Am I? But even if people are using them, do we really need seven bajillion little, tiny apps that do one, highly specialized thing? Here's an idea: Let's make a widget that draws lines. Then we'll make one that draws shapes. Then we'll make one that draws textures. In fact, let's make a widget for every function in Photoshop. And then, let's post them all to MacUpdate at the same time, so no one can see anything but widgets, widgets, widgets. No real applications. Just widgets as far as the eye can see. But what about the folks who don't even have Tiger yet? What about them? Tough shit. Move on.

God! I can't even stand the term "widgets" anymore. Try it. Try saying (or writing) "widgets" five or ten times. Gets really annoying doesn't it?

And then there are the novelty widgets. Hula Girl is my favorite widget. Want to know why? Because Hula Girl actually gets what Dashboard is about: novelty and eye candy. I mean compare, for instance, the look of Dashboard to the look of Final Cut Pro, and you'll see what I mean. Final Cut is cold, severe, business-like, and dark gray, making maximum use of screen real estate with tiny buttons and almost no color, or even icons, by default and by design. It's made for efficiency. Its interface says simply this: Let's kick some video ass. Dashboard, on the other hand, is the exact opposite. Just activating it brings it up with an exciting zoom effect. The inactive widgets are hidden away behind a giant plus-sign button. And the active widgets are all over the place and range wildly in color, shape, and general appearance, depending on the function of the widget. Activating a widget produces yet another effect -- the ripple effect that brings the widget into view. Sure it's cute. Sure it's fun. Sure it might even be useful at times. But Dashboard's interface screams one thing and one thing only: I am a toy.

Seeing the (Spot)Light

Well, as you can guess from my last article, and from the title of this one, I'm starting to see the potential, at least, of Spotlight. Initially, I was pretty down on it. Perhaps because I was expecting so much from it. I don't think I was alone in that regard. I think for a lot of people it was like going to see a movie that everyone said was incredible. They raved and raved about it forever, and by the time you got around to seeing it, you coudn't help but be let down. That's how Spotlight was for me: It's bugginess stood out like a sore thumb against the backdrop of hype and praise, and all I could do was hate it.

And, of course, turn it off.

So now I have my Powerbook (an old-ish 867MHz G4 Titanium) running 10.4 sans Spotlight. And it's fine. But in light (no pun intended) of my recent revelation, I wanted to give Tiger, and Spotlight, another try, and approach things a bit differently this time. For this attempt I have done the hard thing. I have wiped my G5. My G5 at work. A Dual 2.0 with 2.5 GB of RAM. By all accounts, a decent machine. Those two factors -- wipe and G5 -- have made a world of difference.

Up front I have to say, I still have not seen the much-touted performance gains of Tiger -- in fact, even on my G5, Tiger seems slower in many regards (opening/typing in emails, alphabetizing newly created folders, weird little things like that) -- and there are still plenty of Tiger and Spotlight bugs. But after performing an "Erase and Install" on my G5 and installing and updating Tiger from scratch, things are definitely better. Primarily in Spotlight.

Now, I have a lot of data. And I really think that the people who are saying they have no problems with Spotlight, and that it finds their files "instantly," just don't have very much data, particularly in the way of hundreds of thousands of small files, and more particularly, hundreds of thousands of small files that contain text. These are the files that, I think, really bring Spotlight almost to it's knees. For instance, I just searched the term "html." 41,300 or so hits were found. That took about 5 seconds. That's really not bad at all, but it's also nowhere near "instant." Nowhere near. Searching the term "doc" yielded around 160,000 and took about 15 seconds. It looks like, on my system, it takes Spotlight on average about 1 second to search 10,000 documents, give or take, depending on the most prevalent types of documents and their content. Wow. That's really good. But when I hear "instantly" and I get "15 seconds," well who wouldn't be disappointed? In any case, the major problems I was initially having with Spotlight locking up, beachballing, and being a general pain in the ass, seem to be mostly gone with this new install. And that's good. And I can say I'm much more inclined to see how great Spotlight is and will be.

(Though I will say that a recent seach, which yielded numerous results, and which I chose to view in Spotlight's "Show All" window, completely took over the processor for a few minutes when I flipped down one of the long lists of files. Scrolling became impossible. I could not close the window. There are still some serious performance problems with Spotlight, if only from time to time. But I suppose that's to be expected at this stage.)

The other thing that's helped me understand the usefulness of Spotlight is actually coming up with a reason for using it. Initially I had no real need for it, or at least I didn't think I did. But the other day I was looking for something in a script that did a particular something or other. Problem was I had no idea what script I had put that something-or-other line in. So I'm looking through nested folder upon nested folder, trying to decipher my own script names, and realizing that it was all futile because I had no idea what the script was about, only that it had a line in it that used such-and-such a command. And that's when it hit me: how great would it be if I could search inside my scripts? And then it hit me again: Spotlight!

Shit!

So now that I have a reasonably well-working install of Tiger, and a good reason to use Spotlight, I'll be testing and using them on a daily basis. So far (it's only been a day, really) things are good. They could be better, but I'll save the complaints for another day. I would like to say, though, on a final note, that the one thing Spotlight really needs is more customization options. The above is a good example of when I'd really like to use Spotlight, but I don't always want to use it. Sometimes I prefer a simple name-search. And I'd really like to be able to toggle between the two. Easily! (Maybe via a dropdown a-la the old Panther-style Finder window search?) So yeah, customization would be real nice. We all know this. Apple surely knows it as well. Hopefully it's something they'll act on quickly, like during the 10.4 product cycle (like now), and not after Leopard finally arrives. I would really hate to see Spotlight go the Sherlock route of neglect.

In the meantime, I'll be eagerly awaiting the 10.4.2 update. Here's hoping it's a good one.

Spotlight vs. Google: Metaphor Smackdown

I just had a long, really interesting, fiesty conversation with a fellow systems geek (though, by his account, he is the geek and I am the nerd) about Spotlight, and partially about the Spotlight/Google metaphor that's floating around various sectors of the internet, and that's captured the minds and hearts of Mac and Google fans alike. You know: "Spotlight is like Google for your hard drive." (Okay, it's a simile, but whatever.)

My argument was that the comparison is inherently flawed. That searching your hard drive is fundamentally different than searching the internet. His argument was that they're the same, it's just the presentation that's different. Walking home I had time to consider the whole matter on my own, and I have to say, I may be starting to come around.

Basically, what I was saying was that when you're searching your hard drive, you're searching for files. And not just any files, but (usually) your own files. Files you created. Files you filed. Files you're fairly intimately familiar with. Whereas, when searching the internet, you're actually not searching for files at all. Your searching for content. And searching for content is different than searching for files. It's a fundamentally different way of approaching a search. On your hard drive you generally think to yourself, "I am looking for the file called 'smith' in my 'Documents' folder." On the internet you think, "I am looking for information about smith."

Now, when you search your hard drive using Spotlight, you are essentially searching the content of files (and, actually, a whole lot of other information about those files, but let's forget about that for the moment). So, in that respect, I will concede, it is quite a bit like doing a Google search. The main difference, or the crucial difference really, is, as my friend said, the presentation of the results. Google gives much more useful content-oriented information, in the form of those little, pertinent text passages at the bottom of each search result, than Spotlight does. Spotlight presents content-based search results the same way it presents file-based seach results, usually by kind primarily, and by name secondarily, but unfortunately never, ever by content. You can't even see the content of these content-based serch results without opening the file. If Google worked that way it would be worthless.

The heart of my original argument was that that's not how we're used to thinking about a local search, so it's inappropriate to discuss it that way. And therein lies my shortsightedness and my friend's and Apple's (and probably a lot of other folks') genius. Their contention is that we should think of local file searches differently, even if some of us don't quite get that yet. (I'm slow. I admit it.) And one useful way of thinking about local searches is the Google approach. I finally got this on my way home, when I began to think about what my friend had said about presentation. I started imaging local search results presented the way Google presents internet search results, and I got it. And I said to myself, "Yes. That would be awesome."

I do still have some problems with Spotlight, and I realize now that many of them revolve around that idea of presentation. I mean, it seems a bit narrow to be able to search by all sorts of criteria (name, kind, content, etc) and not really be able to organize the results by said criteria. Also, Spotlight always searches by all criteria. Wouldn't it be great if you could search by specific criteria only? Or combinations of criteria? And I guess you can, to some extent, with the standard "Find" command or with the weird boolean syntax in the Spotlight menu-bar. And that's great. But still, despite the fact that you can search by content, you can never display your results by content, and that's a problem, in my mind. Seems to me that when the Spotlight developers designed the Spotlight search-results interface, they were having the same problem making the conceptual leap that I was having. They missed the Google/content thing entirely.

But all the problems with Spotlight can, and probably will, be resolved when Spotlight becomes customizable. Which it will. It's a beast. A good and loyal beast, but a beast nonetheless, and it could use some reigns to really make it the incredibly useful thing it's bound to someday be. And I truly hope that some of that future customizability will revolve around the idea of search-results presentation. Because my friend was right. That's the key, or at least a big part of the key.

And you know? He's right about one other thing too: I am a nerd.

Shit. I hate that guy.