OS X vs Ubuntu: Ubuntu wins!

Regular readers of this blog will know that I recently bought a MacBook. The reason? They are really good portables, just the right size (my old HP Pavilion also was very good, but too big to comfortably use on planes and trains), you can run pretty much any major OS on them (caveat emptor), they have long battery life and the 2.4Ghz version, which I got, is the fastest portable of this form factor I found. And, when the new models came out recently, the old ones suddenly got cheap! The MacBook 4,1 cost only just over 1000€, which is the same price range as HP, Asus and all the others of the same type of form factor, except that they only have 2.1Ghz processors. So they choice was easy. And the MacBook is good, and full of clever little solutions, like the small speakers bouncing the sound off the screen, the famous magnetic power connector, and so on. Drawbacks are that it doesn’t have a mic input, the screen is blank, I’d prefer a matte one, and that there are no Home/End/PgUp/PgDn/Delete keys. Otherwise, it’s pretty much perfect. And of course, last but not least, OS X is getting very popular in the Plone community, and I saw a fair number at PyCon as well. So I’d thought I’d give it a try. I already knew I preferred Ubuntu to Windows, but how would OS X’s famous sleekness and usability compare?

It turns out OS X compared pretty well to Ubuntu, but not good enough, quite simply. If I’m going to summarize it, you could say that Linux is for programmers, and OS X is for users. I have already noted that OS X and Linux is getting pretty close when it comes to capabilities. And that’s not only because OS X is a type of Unix, Ubuntu is also quickly gaining more and more end-user features. But there are significant differences, and I’m going to try to tell you which ones made a difference for me.

What kicks ass in OS X:

  • The suspend/wakeup is really fast. On battery power, you can turn down the lid, and the machine will suspend. And when you open the lid, it will wake up in just a couple of seconds. Ubuntu takes much longer.
  • Much commercial graphical software with high usability and good looking output exists only for OS X, such as Keynote and OmniGraffle.
  • The mobile phone integration just works. After connecting my Nokia to the MacBook via Bluetooth, and getting my Google Calendar to show up in iCal, I could just sync it to the mobile phone. And it would also take a backup of my phone book, and those numbers would show up in Skype, which is practical when I’m abroad and using the mobile is expensive.
  • I liked how you could easily set applications to different workspaces, and how the workspace shifting was through sliding. It really made workspace shifting useful for me.
  • I liked the dock. Tastes vary, but I liked it.
  • In short, general usability was very good.
  • Time machine is really cool.
  • That little video editing program can post videos directly to YouTube! Nice!

What kicks ass in Ubuntu:

  • The package management. This is generally good in Linux, and extra good in Ubuntu. OS X people like to brag about how easy it is to install software. You just drag it into the Applications folder. Well, yes, but you have to find, sometimes buy, and download it first. And then each software needs it’s own update checker. With Ubuntu you quickly learn to first look for the type of software you want in Synaptic, because often it’s there. And once installed, it will get automatically updated too.
    This package management *totally* kicks ass. Neither OS X nor Windows have anything like it.
  • It has consistent key bindings. This is because most Linux UIs (as well as Windows) are based on or heavily influenced by an awesome document called IBM SAA CUA. Yes, really. IBM: King of the TLAs. The Common User Access guidelines detail how user interfaces should work. Of course, Apple has one too, the Human Interface Guidelines. But Apples are made for Macs, and are designed to use the mouse. IBM needed user interface guidelines that worked on everything from their huge mainframes down to DOS, via GUI’s like Windows. So the CUA defines rules for user interfaces that are consistent over all these systems. That’s why you could run Windows 3 without ever touching a mouse, unless you were doing graphical work. Yes, you could, really.
    As a result, Ubuntu, and most Linuxes, has consistent key binding for doing basic stuff like going to the start of the row, etc.
  • It’s a programmers OS. It’s very friendly for developers, and not only because all kinds of open source developers tools are available as packages, and because it’s Linux.

But, sad to say, there are also things that really suck. In OS X, they were:

  • The lack of consistent key bindings. As a programmer, I use the keyboard more than I use the mouse, and selecting everything from the cursor position to the beginning or the end of the line is one of the most common operations. And you need around three different combinations for that in OS X, and some programs don’t seem to support any key combination for this. The result is that every time you want to go to the start or end of the line, you have to stop and thing what program you are in. That drove me nuts.
    That Apple after 25 years of Macintoshes aren’t able to put forward a standard for that is extremely weak.
  • Time machine can’t make backups to network drives. The closest you get is having time capsules, which basically are stupidly expensive harddrives with wifi. I also heard several reports of people having their backups trashed because OS X went into suspend during a backup operation.
  • The “You have to use Apple stuff” attitude really bugs me. I can mount drives from my multimedia machine in OS X. Why can’t I make a backup to them? So that Apple can sell their overprices Time Capsules. Why is there an extra delay if you try to boot from a disk that is not HFS+? Because it’s not Apple. That sort of attitude is pervasive. Apple is not a company that embraces openness. Preferably, you should use Apple hardware and Apple software only.

And with Ubuntu, these things really sucks:

Yeah, I can’t come up with anything that really, really bugs me in Ubuntu. OK, Linux drivers of hardware often lags behind, so if you buy the latest and greatest, especially in laptops, you are asking for trouble. But you are also asking to spend money for very little, so I don’t buy the latest and greatest. I’ll buy a Laptop that is reaching the end of it’s production life, like this Not The Latest MacBook. That way you know that firmware bugs have been ironed out, Linux supports the hardware, etc.

Ubuntu just totally rocks, and for a programmer, I hereby declare it the best operating system ever. For ordinary users, I think OS X wins, over both Windows and Ubuntu. And here is a small prediction: In five years, there will be a free, open source Linux distribution that kicks OS X ass for that too. Because open source will continue to grow and get more manpower. And Linux will simply have way more man power than Apple can afford to pay for. And when that manpower will, as it inevitably will, get focused on making the most kick-ass easy to use end users experience, Linux will blow OS X out of the water.

But I don’t think that will be Ubuntu. I think that will be some other distrubution that isn’t based on Gnome, but on some other more radically simplified and less Windowsy UI. Perhaps something based on Sugar? Maybe something new altogether? Only time will tell.

23 Responses

  1. I use Ubuntu at work and OS X at home, and I still prefer OS X for development. Each to his own, I guess. Synaptic is certainly good, but with Mac Ports, I’ve never had any problems.

    I wonder where you found the key binding inconsistencies, though. Cmd + Left/Right seems to always work for me, and most applications also support Ctrl+A for Emacs fans.

    Martin

  2. Postscript: sorry, if you’re new to Mac OS X it’s probably too soon to be asking how developers have responded to related reports ;)

  3. > MacBook … no Home/End/PgUp/PgDn/ …

    On my early MacBook Pro, the keys are labelled
    home (left arrow)
    page (up arrow)
    page (down arrow)
    end (right arrow)

    and like the F… labels on the function keys, they’re effective when used in combination with the following key:

    fn

  4. > Why can’t I make a backup to them?

    Much of the richness of the Finder/Mac OS X experience is thanks to extended attributes etc.. To these things, HFS+ is well suited.

    Time Machine has requirements that are not met by some local/remote filing systems. If you like, I’ll find the reference. (Time Machine is unlike other backup applications ;)

  5. WordPress seems to have lost huge chunks of what I wrote so instead, I have used Plone to blog: http://www.brighton.ac.uk/centrim/Members/gjp4/2008/12/04

  6. I have been using OS X since 2003 and have loved every minute of it. I don’t think a week is sufficient time to get to know OS X (or any other OS for that matter). Most of the issues you have with it could be solved in various ways.

    OS X is by no means perfect. I can totally relate with the keyboard bindings, but this can be customized. I think what it really boils down to for me is UI porn and interface consistency. I’m sure I could do all the same tasks in other operating systems, but the way the OS X apps work together is a beautiful thing.

    But as Martin said, to each his own :D

  7. I have spent many hours trying to find a solution for the problems like the key bindings, and I do not believe it can be solved. I agree with you that it boild down to interface consistency, I guess we just put the emphasis on different parts of it.

  8. It is my understanding that you can use other network drives with Time Machine, but you must use afp:// not ftp or nfs or smb, since only afp is sufficiently Apple-owned or something. ;-P

  9. I just set up Ubuntu on a Dell D532 Latitude (AMD Turion64). In about a half hour’s work, I have installed the system, updated and installed my preferred software, got dual monitors set up, configured both my wireless and shared printers, and set up network drives to my Linode servers. I only touched the command line once, and that was for my unusual dual-head set-up; not something and end user would likely worry about. A helpful pop-up on initial boot allowed my to click and install the ATI drivers for my video card, and the wireless firmware for my wifi card; I was online and spinning my 3D desktop in no time.

    I think the linux is rapidly closing in on the “it just works” marker; which is substantially more of an achievment than apple ever did, as linux devs are forced to support many architectures, rather than just x86, for example. I am not an Ubuntu/GNOME user myself, so I just followed the most intuitive configuration path I could see, and everything fell in place.

    Apple and Microsoft had better pay attention. Open source devs and community are approaching with a vengeance.

  10. Coming from the windows world, there are things that are still rather painful to do on my Ubuntu 7.10 machine, like install the software versions one needs. Examples I’ve had lately :

    - FF3 (you have to google to find instructions for that; Ubuntu 7.10 supports FF2 only)

    - the R programming language

    On my Feisty, Synaptic gives me one choice : R 1.5.1, which is *old*; I found a way to install 1.7 but I can’t update it through Synaptic. On my former windows machine, setting up any version of R was a breeze.

    That said, there are many things I like of Ubuntu but software installation for those packages not maintainable through Synaptic is a pain.

  11. Well, 7.10 is a year old now, so of course it doesn’t install FF3 automatically. It also uses R 2.5.1, while Intrepid (the lates version) uses 2.7.1.

    You claim that 2.5.1 is *old*. In fact, it’s about 18 months old. The OS you are running is 14 months old. If R 2.5.1 is *old* and you absolutely require a later version, why isn’t Ubunt 7.10 *old*?

    It seems to me that you problem is that you aren’t upgrading. Is there a reason for that? Also, you complaint is basically that the ease of use you get with Synaptic, which you DO NOT have on Windows, is gone of you want to use versions newer than the ones in the Ubuntu repository, and therefore it’s *less* practical than Windows?

    I find that a very strange claim.

  12. As for R, the easiest way is always to:
    1) grad the most recent tar ball;
    2) untar;
    3) ./configure
    4) make
    5) sudo make install

  13. So, have you, by now, removed OS X from your Mac and installed Ubuntu on it? :)

  14. the only single reason i run mac on my macbookpro is audio production.
    i love ardour though, its getting better and better…

  15. Sorry for the late reply but I came back to your blog because I had problems … installing OO 3 on 7.10 and hoped to find an answer to the issue I raised :-( .

    “It seems to me that you problem is that you aren’t upgrading. Is there a reason for that?”

    I’ve heard stories of things not working anymore after upgrade. But you are right, I should upgrade. Now a question : say I were to migrate from 7.10 to 8.04. Since 8.04 is LTS, what good would it do to me to keep updating to a non LTS version just to have a Synaptic access to a recent FF or OO ?

    The point is with windows I can upgrade from FF2 to FF3 on a 5-yr old XP. I don’t need (and don’t want !) to upgrade to Vista. In fact I need to be on Ubuntu. All I’m saying is that it is IMO not easy to install the software versions of programs one wants.

    “Also, you complaint is basically that the ease of use you get with Synaptic, which you DO NOT have on Windows, is gone of you want to use versions newer than the ones in the Ubuntu repository, and therefore it’s *less* practical than Windows?”

    Could be. I could run R 2.5.x or 2.6.x or 2.7.x on my XP machine last year. I had to fight to get R 2.7 on Ubuntu 7.10. Make no mistake : I’m committed to Ubuntu but for now I find it harder to configure.

  16. LTS versions are good to stick with if you plan on not updating. That makes sense for servers or if you have many machines you manage, like on an office or something. Or if you just don’t like upgrades. But I would go with the latest version. No reason not to really.

  17. “like on an office or something”. Indeed. Plus, I find it a different paradigm to need to update a whole OS in order to gain access to newer versions of popular applications. Don’t forget that LTS also means longer support for the desktop version of Ubuntu. But if that means I’ll be “Long Term Stuck” with an old FF or OO, then I’ll force myself into upgrading the whole OS :-) .

  18. Another thorny example : setting up Sun VirtualBox on my (still !) 7.10 Ubuntu :

    - search synaptic for “virtualbox”; finds entries (about INNO not Sun but it’s the same thing right ? so yay!) so : install => I get an entry in Applications/System Tools; I launch it and it says it is missing some virtualbox-ose part

    - I go back to Synaptic and try and install again; I find that what Synaptic points to for the Vbox version it lets me install is for kernel 2.6.22-14 and of course I have *-16 on my system; so I go on the web and search :

    - I find http://phorolinux.com/installing-virtualbox-ose-on-ubuntu-710-gutsy-gibbon.html. Perfect so I follow the list of commands and I end up with an error like the ones mentioned in the comments section of that page (at least I’m not alone);

    Now what ? I googled a bit more and ended up on http://www.virtualbox.org/wiki/Linux_Downloads

    Got the deb, installed and NOW it works. Although now I have no preset shortcut set anywhere (like Synaptic had given me) so I have to guess it installed the software to /usr/bin. I had to make a shortcut on my own from /usr/bin/virtualbox.

    It works, but it sure wasn’t user friendly ;-)

  19. I bought an HP laptop and installed Ubuntu 8.10, and less than two months later I sold it and got another Mac laptop.
    I really liked Ubuntu, but I could never get my sound to work, and it became too much of a hassle. I think that Ubuntu (and other distros) can be great for new users, because I found it to be very user friendly.
    If my sound had worked I would have stuck with it.

  20. Great choice, my friend.

  21. I

    LOVE

    UBUNTU

    LINUX
    the end…

Leave a Reply