Time for Mac?

I've decided to get a new laptop by the end of the year. My current Dell Inspiron 8600 one is a fountain of constant annoyance--I used to swear by Dell for laptops; that's so over. So I was considering either Lenovo or the Acer Ferrari series. My developer colleagues at Sun swear by the latter for power-user features and UNIX friendliness (some of them run Ubuntu, some Solaris). But more and more I've been wondering: is it time to consider a MacBook Pro for my laptop? primary machine? My right arm, just about?

We already have two Macs in the house, the high-end iMac G4 Lori got for her birthday 3 years ago and the high-end iMac 24-inch she got for her birthday in October. For the largely multimedia stuff she does, they are excellent, but I've never warmed to OS X, and I've spent a fair amount of time on her computer. I miss little things such as multiple desktops and the rapid back-and forth between GUI and command line. On OS X, as on Windows, going to the command line feels like going to a different land. And yes, I've heard there are multiple desktop add-ons for OS X, and I agree that Expose alleviates some of the need for multiple desktops, and I know that technically you can do everything OS X related on the command line, you just have to get used to some different conventions and layout. Despite all that, I've just never warmed to OS X.

Some of that might just be the fact that I don't use it as regularly. Probably if I did switch to OS X I would get used to power-user features and warm up pretty quickly. I'd have to learn to not resist all the magic that OS X places between you and the UNIX OS, appreciating that the magic is what provides the "just works" factor. I've long believed that excepting a few rough spots such as video projectors, Linux computers (with modern desktops such as GNOME or KDE) are much more likely to "just work" in any given scenario than Windows computers. In my observation OS X has both well beaten. I say this even though I've found that Ubuntu comes with a huge "just works" boost.

In the end my most important criterion is my colleagues. I know several people with similar work patterns to me who have moved from Linux to OS X. A few have become fed up and switched back. In a couple of cases the problem was performance, that was back in the mobile G4 era. I hear a lot of that's better now with Intel Core Duo. I do think that more of these folks have enjoyed the switch than have regretted it.

My leaning is more and more towards making the move. In the end it comes down to always challenging my comfort and shaking up my routine. The general stimulation of the platform switch might boost my energy and productivity, unless it's a disaster and proves a sap instead.

I've done some research on the Linux -> Mac developer switch experience, and I plan to do a good deal more today so that I can come to a rapid decision and claim the expense this year. I'd love to hear from any others who are or were in a similar situation. What are your thoughts?

[Uche Ogbuji]

via Copia
8 responses
I recommend you make the move and give yourself at least three weeks to internalise the change in interface.

Back in the days of OS < X, I used to use Linux (Redhat) exclusively for developer work. Then, about 6 years ago we bought a TiBook G4 which came into my sticky hands and I haven't let go. I just don't use Linux these days, the Mac does it all (even after 6 years).

I haven't experienced any major issues with development (well, not recently, it was a bit flakier in the early days). I use variously: eclipse, emacs, vi, TextMate/BBEdit, (v. rarely Xcode), python (oh for a decent Python development environment along the lines of LispWorks). All the usual dev tools work as expected: apt (courtesy of fink), autoconf, make, etc. and integration these days between PPC and Linux is smooth enough to run exactly the same "configure --prefix=/usr/local" on the in-house Centos 4 devbox and the TiBook (usually --- YMMV of course).

I do use a multi-desktop app (VirtueDesktops) and it's as smooth if not smoother on a 6-year old G4 than the Gnome version on the 3Ghz Centos machine.

I have to admit that running remote X apps via ssh is too sluggish to be usable but that could be due to a number of other factors (a 10Mb ethernet, a 500Mhz chip). OTOH, I have large chunks of the Centos box NFS-mounted on the desktop, which gives me drag'n'drop and direct editing.

All-in-all, I find it to be a very productive set-up.

Good luck.
In my experience, the larger distance (if you will) between the OS X GUI and the command line is not as much an issue.  It isn't all that hard to maintain a normal UNIX software base in OS X.  The only thing you'll be giving up is a really solid ports repository, and MacPorts/DarwinPorts is getting there. 

There are a few issues you will face, though.  First, if you plunge head-first into the OS X point of view, you will find yourself condemning package managers in general, because it just isn't the way the Mac works.  There's an impedance mismatch, part of which is embodied by the distance between GUI and command line, that emerges.

Second, there are certain applications that either will not work under OS X, or will not work as well as they do on another platform, or are just much harder to get working.  For example, the Eric3 Python IDE requires Qt, PyQt, SIP, etc., and while it does work, it is incredibly painful to put everything together by hand.  Not insoluble by any means, just WAY more work than it ought to be, from a Mac-user's point of view.  OS X has so many built-in affordances that using it tends to make you lazy, in the sense that you start to rely on those affordances and think of them as a natural part of life.  Of course all application installation should be drag-and-drop!  ;)

Performance used to be an issue.  In the Intel age, that is no longer the case, with one massive, glaring exception:  Rosetta.  Any applications that are not Intel-native will take a large performance hit.  In my job, where I work as a UNIX sysadmin for a large hospital, Microsoft is well entrenched and Office is the standard.  Using MS Office 2004 on the Mac is functionally better than using Office 2003 on the PC, on a feature-comparison basis.  But the performance of this non-native application suite is painful.  Usable, but I cringe every time I face the prospect of waiting for Word, Excel or Entourage to do something for me.

Native apps are a joy to use.  And there are many.  Lots of them are free, but a number of them are proprietary payware.  I've found myself paying for proprietary software more frequently than my FLOSS leanings prefer, simply because the functionality is better.

Which leads to the next major issue:  data (and platform) lock-in.  If you use Apple's Mail client, you will find that your email is not in a standard format.  It is in a parseable format, certainly, but it is not mbox or maildir.  So if/when you decide to leave the platform, you will need to take extra steps to transfer your mail.  Easiest way would be to import your existing mail into e.g. Thunderbird, then move the resultant standard files to your new platform.

The thing I've noticed, though, is that when I search out the best-of-breed applications on the Mac, they are often proprietary or have their own non-standard data format (or, of course, both).  It is possible to use open source tools exclusively, but you will lose some of the benefits of the platform in so doing.  See Mark Pilgrim's well-written rant that explains his move from OS X to Linux, and Tim Bray's there-and-back-again story.  These stories exemplify the pull away from OS X's proprietary grasp.

OS X is a wonderful platform, with many advantages to users of all kinds.  Chief among these advantages is the ability to work, productively and easily, with the computer.  As opposed to Linux, where half your time is spent working on your computer, getting it to do what you want.  And the platform breeds innovative and useful software at a rate and quality that simply astound.  If you subscribe to feeds for Version Tracker and MacUpdates, for example, you will see an endless flow of software for things you never thought you could do, or simply never thought about doing.  But when you see it, and see how easy it is to try it, it sucks you in.  Breaking that platform addiction is not easy.

Some advice:  if you buy a Mac laptop, get the biggest hard drive you can find.  If you really need to use Linux applications, the easiest way to do so might be to purchase the Parallels virtualization software and run Linux in a VM.  Ubuntu works quite nicely.  It is also possible to dual-boot Linux via BootCamp.  But hard drive space will disappear quickly.
Quick follow-up after reading Peter's posting.

I was /completely/ ignorant of the Mail.app shift away from mbox format (tsk, tsk), so I Googled and found some reassurance on:


"Mark Pilgrim is being overly dramatic.

As Jeff pointed out above, Mark can get all his emails out of Mail in mbox format just by dragging the mailbox to the desktop. No need for third party mail converters."

I started using OS X in 2003, and between then and now I have never had less than two Terminal (the mac's xterm) windows open.  It feels just like being in a modern Linux or bsd.  With one handy extra; the "open" command.  You say "open [unix filename]" and it goes and opens it in whatever application, like for example Photoshop or Excel whatever.
I went for Mac for the productivity and media side, as well as wanting 'just works' for synchronisation and external VGA, but stuck with Linux for development work.

The most useful thing ever is the Parallels VM software. I have a bus-powered external HD with an Ubuntu and a Windows image on it. All 3 OS's means I fulfil the productivity, development and testing criteria on one box.

Get the fastest disk you can and as much RAM as you can.
I've been using Macs for four years now, exclusively for three.  To my mind, Linux on the desktop is dead -- Apple got there first.

That said, I have a fairly limited orbit of applications.  I'm a sysadmin, so all of my hardcore work is done via terminal (though I just picked up iTerm).  I use Safari fairly exclusively for web work, Adium for IM, iTunes, and VirtueDesktops.  For on-the-go coding, I've got Python 2.5 installed, with a subversion client for SCM, and about the only annoyance left is that the vim doesn't have my customizations installed (but that's hardly Apple's fault).

I haven't started to use Parallels yet, but I'm looking forward to building a small Gentoo box in my laptop for the Linux-y goodness.

On the down side, Mail.App is still pretty hokey (though, I think Thunderbird's hokey too -- I use mutt) and X applications (I occasionally use e.g., Gimp) don't interface very smoothly.

All in all, I'm sold -- I just bought my third Mac a week ago.

Thanks all for the thoughtful advice.  I did order a MacBook Pro 17" last night.  Following your advice I didn't skimp on RAM and HDD.  You'll surely hear of my experiences here.
I made the leap last month given all the cross-os work my team does. The key is having options:

1. Buy Parallels

2. Install ubuntu

3. Install winxp

4. I added freebsd 6 as well

They all take little disk space as the partitions expand, min is 5mb. You then have access to N platforms at the same time with shared folders.

Changing platforms doesn't mean changing tools. I switched and added a few without loosing a single one.