A short update on my first experiences with OS X. I had some pretty urgent work this week, and the good news is that I had no real problems getting stuff done. First off was a presentation that I had to finish. I prefer the LaTeX beamer document class for presentations over anything else. It lets me work on the actual content of slides, rather than formatting, and the class defaults are very sane in that they create very nice-looking slides. The MacTeX distribution was easy to set up, and provides TeX-live, Ghostscript, and some related stuff you may need.

The first less surprise came up running Mercurial, my favorite distributed SCM:

$ hg
[...]
    raise ValueError, 'unknown locale: %s' % localename
ValueError: unknown locale: UTF-8

This can be worked around by setting the LANG variable to 'c'. Of course, this is a bad solution, I still have to look into this. Though this is a minor problem compared to disk images (dmgs), let's state it right away: disk images suck! For the non-OS X user: these are images that get mounted when you click on them. Most third party software vendors provide their software as these disk images. Installation is usually done by opening the disk image, copying the disk image to the Applications directory, and unmounting the disk image. Besides the fact that you have to download disk images manually, application upgrades seem to be manually (usually). E.g. a security update was released for the Camino browser. I had to download the new disk image, open it, copy the new Camino folder to Applications folder, close the disk image. This is many steps back from APT and yum, where you can not only install your applications from repositories, but upgrade them with a single command as well. With Synaptic wrapped around it, APT is even very usable for non-expert users.

Yes, I know of the existance of Fink. Once they offer binary Leopard packages, I'll try it, because I'd be very happy to have a decent package manager. At least for the opensource applications that are usually provided with Linux distributions.