So it's been a little over a month since I switched to MacOSX Lion as my primary desktop after running Ubuntu and before that Gentoo on this Macbook. So why'd I finally switch? Well I'm sure it comes at no surprise to existing mac owners who mostly run OSX anyways.
I'm different! I owned two Mac's to date, first a MacMini G4 (PPC) since 2006 and now a Macbook Aluminum since 2009, both primarily ran some flavor of Linux. Sure I had OSX lying around in another partition, but I'd only boot into it once in a while, just to update or checkout an interesting app or two.
Linux was what i used, not because OSX was bad (like Windows is) but because I was more comfortable with it, it was more flexible, had more innovation happening (pretty much every 6 months) and above all it was fun to use. Part of that fun was really the do-it-yourself attitude Linux has had for years but is somewhat fading away IMHO with distros such as Ubuntu. Its also no secret that I like the OSX interface and have tweaked my desktop in the past to resemble it somewhat. At the time, what made me buy a Mac was not the OSX interface. I really bought the Mac for its beautiful hardware design and higher build quality despite Linux not being treated as a first class citizen on it.
After years of owning other laptops I was fed up! I recall my first ever laptop, a Sony Vaio back in 2000 which only lasted 3 months before the disk died. Coupled with my project manager's ignorance it would later never be able to have a hard drive! Years later I bought an IBM thinkpad which worked fine except that the plastic frame around the LCD started to crack one day as I opened or closed the lid and over time the crack increased to the point it was crippled as a portable device. My next HP pavilion developed a random boot feature (especially when compiling or transcoding) which I could never reproduce to get a replacement and lastly the Acer which had far too many problems to mention before it too died. Seriously people, whats a good Laptop thats reliable? Is Dell reliable?
When I first saw Lion being previewed at one of the Apple events I brushed it off as the same old OSX with an iPad like icon interface, which they now call Launchpad. It wasn't till the recent WWDC event when they showed off the full deal that I got an urge to install it. And so I pondered, "How do I get this beast on here?". My Mac partition was small and had less that 2GB free. I hardly had room on my Linux partition either to get away with a resize. Besides I knew Lion would not install with Linux lying around as the installer wasn't that smart to deal with it. I decided, it was time to delete the Linux partition!
Now I'd like to say it was a sad move which I pondered for days like when you have to move to a new place, leaving your friends behind. It really wasn't! I don't miss leaving Ubuntu. Not a lot at least...
And I ask my self, why am I not missing Ubuntu as much as I missed Gentoo or Debian before that. IMHO, Ubuntu isn't fun anymore. It was even somewhat frustrating to use with the new Unity interface being default and I tried to install Gnome 3 over it. That didn't go too well. It's not just in the GUI but also in the command line where things aren't that much fun. It just too easy! and you mostly don't need it. Don't get me wrong - this is all good and Ubuntu is doing fantastic work for getting Linux to the mainstream. Its just not that fun as say Gentoo or even Fedora. But the reason I'm not switching isn't because Ubuntu is not fun or because I'm frustrated with Ubuntu. I'm really not! If that was the case, I would have switched to another distro like Mint or Debian.
Lion had a few features which I thought was neat and fun to explore. One such feature I really like is full screen apps on its own desktop being a built in feature of the core OS. This is a usage pattern I was quite used to when working with multiple desktops on Linux. I'd always open several apps in maximized form and move them to their own desktop and switch between them using control + arrow keys. But its better on the Mac...
- Your not limited by the static number of multiple desktops. On Linux I sometimes run out of desktops
- It's an app feature so the desktop is automatically created and destroyed as you click the new full screen button found on the titlebar
- Apps are in true full screen (no titlebar or menubar)
- ..and my favorite, it supports 3 finger swipe in addition to the keyboard short cut. Its really fun swiping between multiple desktops
Gnome3 looks promising in this respect as it too has the concept of dynamic desktops. Unfortunately it resets your desktops to always having just one and you have to create them all the time, which is more annoying than having a static number of desktops.
The other killer feature I like in Lion is support for multiple versions of a document. When Apple introduced "Time Machine" back in the day, the UI looked cool but it was not so practically usable as I would imagine as you needed an external hard drive in order to do continuous backup. Unlike what many speculated to be the adoption of ZFS and its online snapshotting capabilities, it turned out to be a far less elegant method under the hood. I doubt its as elegant as ZFS even with this feature because the underlying filesystem is still HFS+ but it works quite well in a practical manner for apps that makes use of this new API (Apple's own apps at the moment). Whats really cool is that the same time machine like UI is adopted to browse the different versions of a document where you can even copy & paste objects between versions.
The automatic save and resume of application's state between reboots is another interesting feature worth studying about. Again it only works for apps that use special APIs but essentially the app is hibernated and resumed as opposed to the whole OS. As a result its a lot faster. The ability to access documents by file type regardless of where its stored in the filesystem is another good usability feature which I always wanted the Linux desktop to have. In a world where hard drives are large and there are too much clutter, the filesystem organization is really a bottleneck. I don't think Lion nailed it either but its a good start. Vista tried and failed with WinFS. Google, beagle (now tracker) and Spotlight's approach of giving a search engine doesn't quite scale in my opinion. You'd think search would work, especially from Google but the more I think about it the more it seems to me that, we think Google is awesome because it finds the information we're looking for and gives us an answer - not necessarily the the needle in a haystack. For instance I really find Gmail frustrating for finding a mail which I vaguely remember about. Desktop search breaks down as opposed to web search because it is needle in a haystack problem but I digress!
There seems to be tons of other small technological as well as usability features of Lion and OSX which are pleasant having around and are interesting to study. So to summarize why I switched, its not one single thing but many things. I'm looking forward to the MacOSX command line and I've already started exploring it with the help of O'Reilly's book "Mac OSX for Unix Geeks". It was only recently after arriving at OSX, I really appreciated the bonjour protocol and its implementation on Linux via avahi. Most Linux users don't know that they can ping their neighbors machine without DNS or IP address but merely using the machine's hostname with .local appended to it. When did you drop in to a command line on Ubuntu and try running avahi-browse -a or avahi-discover?.
Trying to install LAMP on MacOSX I realized how frustratingly fun it was. It was like going back to the Redhat 9 days of manually enabling apache modules. There is also Mac Ports which is akin to Gentoo's portage where you download and compile apps, which is fun!
Having said all this, there is so much more of little things that I like (such as being able to right click on a word and look it up or have it read me the text via the excellent TTS which can also be done on the command line using the say command) and some things that are annoying like Finer (file browser) not supporting tabs, cut & paste of files or ability to delete without first sending to the trash. And I hear printer configuration is also non intuitive if your coming from Windows/Linux despite it using CUPS. I also find it using a bit more memory than usual on some apps and as a result my 2GB is almost fully used making it too slow for running Virtualbox.
All in all, I'm pleased with the move and look forward to learning more of its underlying intricacies and BSD origins in days to come. There sure is something about Lion!