Bill Joy was recently interviewed by Fortune magazine, from which I steal this quote:

“The problem with Windows isn’t so much that it’s insecure, but that it is stale. The company has flailed away, making changes mainly to protect its monopoly. So lately, instead of getting better with each new release, Windows is just getting different.

Also, Windows isn’t well architected. There’s a simple way to find out if an operating system has been well designed. When you get an error message, go to the help system and look up the exact words in that message to see if there was enough of a concept of an architecture that they have a consistent vocabulary to talk about what’s broken.

All you have to do is try it on a Mac and on a PC to see the difference. Apple took the time to come up with a concise vocabulary, but in Windows the designers of the help system used different terminology from the programmers. That reflects a lack of design discipline, which means that as the system grows, so does the ambiguity of the software itself. The result is a system encrusted with multiple layers of things that weren’t really designed in so much as bolted on. Plus there are inessential artifacts of DOS from 20 years ago that still peek through and make trouble.

Now Microsoft’s working on a new version of Windows called Longhorn. But there are so many people working on it that it can’t be conceptually simple. Bill Gates is a very smart person and is very dedicated, but you can’t change the fact that it is human nature for people to carve up a problem and try to own things, for the complexity to accrete in corners, and for the vocabulary of the project not to make it all the way across.”

Microsoft is so massive and Windows is developed by so many, it is no surprise it is such a mess.


There are some differences between the implementations of the search field in the Finder, iTunes, Mail, and Safari. Consistency being one of the hallmarks of Apple software, I think this ought to be fixed.

Based on the screenshot at Apple’s 10.3 Finder info page, it looks like it displays the scope of the search in the inactive input box. I believe the magnifying glass menu is used, as in Mail and iTunes, to change the scope of the search.

iTunes displays a magnifying glass on the left of the search field which, when clicked, allows the user to select what field they would like to search: all, artists, albums, composers, or songs. The type of query to be performed is listed immediately beneath the input box. Because of the iTunes interface layout, placing the query type label beneath the entry box rather than inside is acceptable because it does not use additional screen space. With that said, it is still not consistent with other applications.

Mail uses the menu to allow users to select the field and scope of their queries; the entire message, subject line, to or from in either the currently selected mailbox or all of their mailboxes. When the search field is not in focus, it displays the name of the field selected for searching (message, subject, etc.).

Safari takes a different approach, using this left side magnifying glass menu as a history menu, displaying previously run queries when selected. When not focused, it also displays a text label for the type of query to be performed (always “Google”).

While they are both functional, the method used by Safari assumes that Google’s general search will always be the search engine used. The implementations in Firebird and Camino are open to extension, allowing the developers to add engines without having to change the existing UI.

The problem is one of displacement: if Apple ever adds the ability to select from multiple search sites/types, what happens to the history feature? I believe auto-complete could be used in this case. It is used in website search input boxes, so why not in Safari’s Google Search?

Alternately, the UI could be substantially overhauled. The current UIs are designed so that the option to select the engine is placed first. Users probably do not think of what engine they want to search first – they have a query in mind, not an engine. Placing the search engine selection menu on the right of the input dialog makes more logical sense to me, better reflecting the thought process of using search services. Also, rather than search queries being submitted only after the user hits the Enter/Return key, why not automatically submit the query once an alternate engine is selected?

Editing Note: this entry was revised on October 7/8 to include information on the 10.3 Finder and Mail’s search field interfaces.

Tweaking OS X

There has been some discussion (Tim Bray, Eric Meyer, MacDevCenter) of how people configure OS X to make it more usable for them. I trim down the Dock’s contents and add several things:

  • A-Dock
  • While it doesn’t have the massive number of features of DragThing, A-Dock gives me what I want: a separate Dock for folders and a way to quickly reveal the desktop. I place this in the lower right corner of the screen to take advantage of Ye Olde Fitts’s Law.

  • F-10 Launch Studio
  • This allow me to quickly launch any application without using much screen space unless it is activated with either the keyboard or by a hot corner (Fitts’ Law again). Applications can be organized into groups, which can be further organized alphabetically or by user preference. I have sent them some feedback asking them to add the ability to define row or column groups, depending on user choice.

  • CornerClick
  • I quickly miss the features this offers when not installed on a machine. It fits so easily into my workflow and is so simple, it feels like a natural extension of the interface. I imagine Exposé will make some of my settings redundant, but I’ll probably find new uses for it.

    I keep my Dock pinned in the bottom left corner (no magnification, no bouncing), populated only by the few applications that I leave running constantly such as Safari, iChat AV, iTunes, Terminal, Kung-Log, and Camino. These are never displaced by applications which come and go due to their left alignment. It makes the Dock far easier to work with.

    The corners make for easy targets, so I use them quite a bit.

Now Playing

I’m currently listening to Simply Said from the album “Simply Said” by Kenny Garrett. I’m a big Kenny Garrett fan, but this album has a few tracks that are just a bit too smooth. Even the tracks I don’t like much are well played, but they lack the sort of raw energy that I like hearing from him.

Database goodness

I now have my iTunes library copied into a MySQL database. Thank goodness for tools that automate such processes. I have added a “Label” column (for entering the record label name) to my database and plan to add columns for individual instruments. I wish iTunes supported these things by default, or had an extensible interface for adding addition meta-data. I’d love to be able to make a smart playlist such as:

“All Lee Morgan compositions recorded on Blue Note albums between 1962-1967, engineered by Rudy Van Gelder.”

While this level of specification is definitely not needed by most, it is great for those who want to study an artist’s output in detail. It is also good for those who are obsessive about organizing their music. I’m not obsessive about my music collection being organized. I’m anal.

Note to self:

Learn how to:

  1. Program in Objective-C (once Panther is out).
  2. Write simple Java?
  3. Use MySQL/PostgreSQL and SQL in general.
  4. Wrangle text with the command line tools.

Furthermore . . .

Why does iTunes not remember the position of playlists that are opened as separate windows?

Also, Excel would benefit from cursor coordinate highlighting – the column and row which the mouse cursor was in should highlight slightly to make it easier to determine precisely what cell you are in.

It's blue, it's an address . . .

But it’s not a link! I am rather tired of Read Me and help files under OS X that have Web and e-mail address links colored with the default browser link colors, but do not function as actual links. If you are writing a help file in which addresses will be displayed, write it in HTML. I don’t know if the situation has changed any in 10.3, but Apple really ought to make it possible for documents authors to include working URL links in RTF files.

Safari, Camino, and OmniWeb’s “Open URL” services are handy, but not nearly as simple as clicking on a text link.

Attack of the filename dependency!

A friend was having trouble installing the OS X version of Mozilla Firebird. This process is usually extremely simple: double-click the compressed file (assuming your browser or compression utility doesn’t handle such things automatically), mount the disk image, then drag the application to wherever you would like it to reside.

I was perplexed as to what the problem could be until he pasted the text of an error message into an IM: “the document “mozillafirebird-0.6.1-mac.dmg.g is an unknown format.” The .tgz file extension had somehow been screwed up. Adding the t z to the opposing sides of the g fixed the problem and made the file usable.

The moral of the story is that file extensions are an archaic, oftentimes perplexing way to determine file types. MIME types or T/C codes are much more transparent to end users. No user should have to guess as to a file’s type in order to access it. While there is no perfect typing system, filename extensions are certainly one of the worst.