After years of using Windows and trolling my Apple-loving friends I finally bought a Mac. I love it. I last used MacOS five year ago (and before then, in 1993), so I'm coming to Lion with fresh eyes. This blog post is long for me and comes in three parts: the good parts of the Mac, the bad parts, and a list of software I find useful.
The goodEmigre has an underappreciated slogan: "Design is a Good Idea". Apple gets design. The MacOS UI is good, generally obvious. The supporting documentation is excellent. Text and graphic rendering is beautiful: not blurry, it looks like paper on a high quality LCD. The hardware is a marvel, years ahead of what any Windows manufacturer can turn out. Of course I knew Apple had good design, but I'm still surprised how much I regularly appreciate it.
The other nice surprise is how handy it is to have Unix at hand. For years I've worked with two machines: Windows in front of me shelling in to Linux boxes for real work. It never really worked fluidly. With the Mac I can edit Python code and run it sensibly right on the same machine without weird filename collisions, network file system oddities, or Cygwin atrocities. I can augment my system with shell scripts. I can use most good old Unix software. I'm surprised how much this affects my daily work.
One pleasure of learning MacOS is finding all the grace notes. Preview and Quick Look are both lovely ways to just look at a file's contents. There's a real builtin dictionary with a handy Wikipedia client. There are buttons on the keyboard that pause my music or turn the volume up and they actually work. System sleep restores reliably. Windows claims to do most of these things but they never seem to work right.
MacOS also has some surprisingly sophisticated stuff. Time Machine is a terrific backup tool. The new Lion document model is brilliant; finally I don't have to press some stupid "save" button. There's automatic typo correction which makes me look smarter without being annoying. And Apple has figured out how to build systems around SSDs, a significant speed upgrade.
One other pleasant thing about the Mac ecosystem is the third party application market. Macs have a long tradition of solid, well designed software that is not free. I love that the three most popular text editors for MacOS all cost $40+. It's great that Skitch, Alfred, and Reeder are beautiful apps that charge enough to support the developer's lifestyle. The jury is still out on the Mac App Store, but given the success of the iOS market I'm optimistic we'll see more independent developers making a living making beautiful apps.
The badAs much as I admire the Mac, when something doesn't work quite right the sharp corner sticks out. Here's some of the things that have bugged me in my first couple of weeks with MacOS.
Installing software is poorly managed. Download a .pkg file, mount it as a virtual drive, then drag the app to the Application folder, then unmount the package. How awkward! Some stuff comes with an installer script, but then there's no standard uninstaller. Mac fanboys say "just drag the app out" but that only works for self-contained apps, not printer drivers or packet sniffers or anything that installs in several places at once. I'm amazed this doesn't cause more problems.
There are too many keyboard shortcuts. The Home and End keys are broken. And there are way too many modifier keys: do we really need four? Windows generally gets by with two. (Hilarious example: Ctrl-Shift-Q is "play macro" in SublimeText. Cmd-Shift-Q is "force quit". Ask me how I know.)
There are too many preferences to customize display. Why do I have a choice of two graphical animations for minimizing windows to the Dock? Can't Apple pick one? Third party apps can be really bad, with 50+ display preferences. Good designers picks one good design, they don't leave it up to individual users to cobble together their own. This opinion may be controversial.
The split between applications and windows is confusing. Some apps like Preview stay running even with no windows open, others like Font Book close when you close the last window. Lion has decided it's OK to quit applications automatically if there are no windows. Chrome has a special hack to stop you quitting accidentally, there's also a general solution. It's just strange. I do like having a unified application menu bar, though.
iTunes is a fucking disaster. The UI works like the poorly managed work of summer interns and ignores the standard MacOS UI conventions. And it hangs when importing music; is it really single threaded?! The database is a joke, poorly managing data and regularly corrupting itself. The sync model with iOS devices is confusing and broken. iTunes is the gateway to Apple's flagship consumer devices, it's astonishing it's been this bad for so long. Fire is the only way to be sure.
SoftwareOne of the fun things about getting a new computer is finding and installing all sorts of software on it. Here's the stuff I've found particularly useful.
Chrome, the web browser. The best browser choice and since most of us spend 90% of our time in a web browser it's worth picking the right one. Chrome benefits greatly from AdBlock and a hyperlink underline fix.
Alfred, a fantastic search UI and app launcher. It's a replacement for the Spotlight UI (and the abandoned QuickSilver). I use it some 30 times a day already and have only started to learn what all it can do.
Growl, a desktop notifier. This little UI shim belongs as part of MacOS, it's amazing it's not integrated yet. Fortunately a lot of third party software supports it.
MenuMeters, a system monitor. Handy for tracking bandwidth and CPU usage. Apparently animating in the menu bar is a no-no these days but I find it useful.
Dropbox and Cyberduck for accessing remote files. Dropbox is a marvel, particularly good for sharing files with your iPad. I'm not wild about Cyberduck but it does a decent job with SFTP and is free. If I did a lot more of this kind of file sharing I'd look into Transmit.
Adium, a multi-protocol instant messenger. Now that iChat supports several protocols it's less necessary, but it's nice that Adium does IRC too.
Twitter, an interface for Twitter. I like having it open instead of visiting the site a couple of times a day.
Reeder, an interface for Google Reader. I love the iPad app and so far am liking the Mac app as well. Google's web interface is good too but the native app feels cleaner and faster.
Skitch, a screenshot tool. Makes life easier when taking a lot of screenshots and the integrated web upload is handy.
Sublime Text 2, a text editor. I'm still evaluating this, the other contenders are TextMate, BBEdit, and TextWrangler. I like Sublime because it's simple, just a text editor and not an IDE-wannabe. Also it's under active development; I'm not about to drop $60 on a text editor that hasn't even bothered to work right on Lion.
iTerm2, a terminal emulator. I don't really know why this is so much better than Terminal but everyone else seems to love it, so I use it instead.
Homebrew, a Unix package manager. Makes it relatively easy to download and compile the random Unix programs MacOS is missing. Alternatives are MacPorts and Fink, the experts I trust all say Homebrew is better. I sure miss Apt and the robust Debian software library.
There may be discussion on Google+