It's been about a month since I switched my primary computer to a MacBook Pro, (2.4 GHz, 4G ram, with the new 17 inch hi-rez display) which I got for myself for my birthday. So I thought that this would be a good time for a review, and since I'm now a blogger it makes sense to share it with all of you too.
First a little background and why I decided to switch. For the past four or five years I've been using a Dell Inspiron 8200 laptop running Linux as my primary machine. By "primary machine" I mean the one where I do most of my development work, web browsing, email, word processing and etc. I also have a few other computers on and under my desk which are used for developing and testing wxPython on the various platforms I support, creating the binaries that I distribute, as well as some platform specific tasks. I was real happy using Linux as my primary desktop, especially for the last year and a half since I switched to Ubuntu. Almost everything I needed or wanted from my desktop system was available in one way or another, as well as plenty of things to satisfy my inner geek. However there were a few key things that prompted me to switch:
- Even with the fantastic hardware support that Ubuntu has, I still had troubles with wireless networking, especially when trying to access a WEP protected network, and also troubles with suspending the laptop. Every time I suspended I had to cross my fingers and hope that it would come back in one piece. Even if it did restore, I usually had to restart some services, and it often would not suspend/resume more than a few times without needing a reboot. I knew that using an Apple notebook computer and OS X instead would give me excellent hardware support in these areas.
- Ever since the advent of VMware I've used it to help me in my work, although after the Dell got to be a few years old it didn't feel fast enough to depend on it as a VMware host very much, especially since I had all these other computers on my desk running at native speeds. Also, since Apple doesn't allow OS X to be used in a virtual machine it wasn't much help there. However with a fast Mac with enough memory I could easily use it as VM host and run Windows and Linux VM guests on it, allowing me to have all the platforms I need for my work all wrapped up in nice a portable package.
- Although there has been a lot of hype over the years about the premium you have to pay to have Apple hardware, I don't think that is very true anymore once you consider the quality of the hardware. Sure, you can get cheapo PCs and not have to lay out very much cash for them, but you pay for it down the road with upgrades and hardware failures. Once you start comparing high end, high quality hardware with good support, PCs and Apples cost about the same. I did a price comparison with Dell, choosing what I would get if I were to replace my old Dell with the new one, and it actually priced out at a couple hundred more than what I paid for the MacBook Pro. Of course that includes the Microsoft Tax which would have been wasted on that machine for me because I would have installed Linux on it first thing. (And getting Linux from Dell wouldn't have been an option because they don't offer it on the machine I would have bought from them.)
All in all the transition went a lot smoother than I expected. I've used Mac OS X for software development related tasks for a number of years now, but I had never really investigated what it would take for it to be my day-to-day machine. I knew my way around the file-system, using some of the applications that Apple ships with OS X, and a few of the Free and Open Source development related tools that I had installed, and also using the compiler and debugger, but that was about it. I was worried that there were too many things that I would miss from Linux, or that would be too difficult for me to get used to, or that something would go wrong, or that it would take too long to make the transition and that my work would suffer. But it just hasn't been the case. I had the old Dell and the new MacBook sitting side by side for a few days while I moved things over, and set up the new software, but I expected to need to do that for a week or two. One day I surprised myself when I realized that I hadn't even turned on the Dell for several days and that my setup tasks were way ahead of schedule. The hardest thing I dealt with was trying to decide which IRC client to go with. (I finally settled on Colloquy, but Linkinus was a close second.) Every time I went to look for some software to fill a need for something I used regularly on the old machine, I was able to find something that was either Free/Open Source or that was inexpensive shareware. The only commercial software that I've bought so far is VMware, but I expect to get one or two others.
So now the Dell has had its original Windows XP reinstalled and it has been recycled into being the first laptop for a member of my family. I've been using the Mac almost exclusively for a few weeks now, and it has been great. There are a few things that I don't like, or at least haven't adjusted to yet and it hasn't been quite as stable as I expected (more about these in another article) but all in all I've been very pleased with my choice.
The three main bullet points above have been satisfied very well. I've had no issues with networking at all, and it seamlessly transitions from wired to wireless and back with no interruptions in service. I've even had ssh sessions that remained connected when the wireless dropped for several minutes, and I was able to pick up where I left off when the wireless link came back again.
Sleeping and resuming works wonderfully, with no crossed fingers required.
And VMware Fusion has been a dream come true. Its support for Windows guests is not quite as polished as Parallels, (but it's only a 1.0 product so I expect that to improve over time,) and it's support for Linux guests far out-shines that of Parallels. There are a few features I miss from the VMware Workstation product available for other platforms, but they are not that critical for day to day operation. I'm able to have two "large" VMs running simultaneously and the computer doesn't even break a sweat. For CPU and disk intensive things like compiles the Linux virtual machine is actually much faster than doing the same thing directly on the Dell hardware was, although it's not as fast as running it on Cyclops, which happens to have the same CPU as the MacBook. (Cyclops is one of the Linux PCs under my desk which is used for making the wxPython binary packages for Linux) The Windows VM is also almost as fast for development work as the Windows PC I was using before. I still have that PC running because it is doing other things for me, but I've moved my development work to the VM because of the convenience factor. Incidentally, I can have compiles running in both VMs, and still be using the host machine's applications without noticing any slowdowns or jerkiness in their UI at all.
Well, I've rambled on long enough for one article. I've not yet covered all the things I thought I would in this post so I expect I'll make a few more on this subject over the next few weeks. Stay tuned.