You are currently looking at an older section of the wincent.dev website.
Please check the new version of the site at https://wincent.dev/ for updated content.

wincent knowledge base

« Keeping Subversion alive and other notes on the update to Mac OS X 10.4 | Main | Building Subversion 1.2 on Mac OS X 10.4.1 »

May 16, 2005

Mac OS X Tiger: Initial response

I've now had a few weeks to play with Tiger and wanted to post some brief comments about it. In many ways it's the best operating system ever to come out of Cupertino (or anywhere else in the world) but there are still some problems with it and I hope Apple can correct them in the forthcoming point updates.

Spotlight

Wow. What a lot of potential. Unfortunately, it's still mostly unrealized potential and hasn't been capitalized upon yet.

Thanks to Spotlight you should never have to navigate to the Applications folder again. At least, that's the theory. Spotlight is so slow that I can easily type the entire name of an application before it appears in the search results list. For example, if I want to launch the Keychain Access application I can type "Acceso a Llaves" (that's what it's called on my Spanish system) and watch as it takes nearly a full minute to return any meaningful results. Sadly in almost all cases its quicker to launch an application by navigating to it in the Finder using your trusty old mouse.

It doesn't prioritize results on the basis of the ordering I've set in the Spotlight preferences either. For example, I've dragged "Applications" to near the top of the list but Application search results are often the very last to be returned in a search.

The general slowness of the Spotlight UI can be a problem in other ways. Even moderately fast typers will often see Spotlight failing to keep up with their typing. Hit Command-Space (that's the shortcut I have to open the Spotlight search bar) and immediately start typing and you'll often find that only the second half of the word you type appear in the search bar appears. The first half is simply lost. Goodness knows where it gets sent. When this is combined with the fact that the search only matches items where the beginning of your query string matches the beginning of a word in the file name and you often don't get results (for example, "ystem Preferences" does not return the System Preferences application but "System Preferences" does). I often see beachballs in the Spotlight search bar as well.

I filed a number of bugs with Apple because I want Spotlight to fulfill its potential. I suggest you do the same; it's the only way they'll listen. Here are some suggested things you could file bug reports about:

How do you search inside bundles? Answer: you can't.

Why does Apple explicitly exclude the Developer documentation from Spotlight searches? It would seem one of the most logical places in the world that one would want to search.

Why can't you use the Finder to find files on your disk when you know that they exist? For example, try to find "httpd.conf" using the Finder. You can't. The only way to find it is to go to the Terminal and use the "find" or "locate" commands. It seems that the "Finder" isn't living up to its name. There's no way to correct this shortcoming, even using advanced search criteria.

Why can't you create smart folders or search based on full paths (the kMDItemPath attribute)? Answer: because Apple's metadata importers don't set this attribute on any files at all. My bug report for this one (4112685) was immediately closed as a duplicate.

How do you distinguish between extremely similar results? What do you do when you get a lot of results with the same name? The Spotlight search bar provides you with no help at all and the "Show all" window is in dire need of a better preview mechanism and path display (as well as type-ahead find). You currently have to click a tiny "i" button or use the cursor keys to expose preview information when moving the selection should be enough to display a preview. The same problem occurs when using the search facility inside file dialogs. Type in a file name: how do you distinguish between multiple copies with the same name?

But like I said, Spotlight has a lot of potential. This hint shows how you can do raw queries in the Finder to find just about anything at all, including complicated boolean searches. Unfortunately, this too is of limited use because I find that most such queries crash the Finder or give me the spinning beachball. One guaranteed beachballer is to try searching for files of type "Xcode project files" and then add another criterion or two. Watch as the Finder CPU usage approaches 100%, beachballs and finally dies.

Mail

There have been lots of improvements here. I'm a big fan of the better control over signatures, the better handling of incorrect password attempts when signing or encrypting messages, and the unbelievable search speed. Some have reported that the new Mail is too slow, but for me its faster exactly where it needs to be: in searches. Not only is it fast, it's also robust. Previous versions of Mail would refuse to find mails even when I knew they were in the corpus and could navigate to them manually. Another nice touch is that the mailboxes list scrolls orders of magnitude faster.

Xcode

Most of the counter-intuitive splitter behaviour bugs have been fixed, invisible characters in text are now shown (hooray), the user interface is faster and more stable, you can now open multiple dependent projects at once without the whole thing getting exponentially slower, the SCM integration seems more robust, the autoupdating of the documentation is fabulous, and the progress bar in Dock icon is useful. There is a serious bug with dependent projects in which you can't open more than one project at a time unless you open in the right order (another work around is to make some non-project window such as the build results window frontmost before trying to open the dependent project); my report for this (4103756) was immediately closed as a duplicate.

Interface Builder

The UI is more polished and as a whole the application seems more stable.

General comments

The optimizations to Quartz in Tiger are fabulous. Window resizing is much more responsive and the new QuickTime Player is very slick. There is no doubt that Tiger is much, much faster at many things. Dashboard is neat and is even more useful when you know that you can close any dashboard widget by holding the option key, or detach widgets from the dashboard at will.

Mac OS X Hints is a valuable resource right now for tips like this one, but the sad truth is that you shouldn't have to resort to these kinds of measures to oblige Spotlight (kicking and screaming) to do what you want. The Spotlight preferences panel needs a lot of work... On the bright side, things can only get better from here.

Posted by wincent at May 16, 2005 12:06 PM