When I was in college, I became something of a Linux geek. I tried it out, liked what I saw, and embraced it. I didn't have to "borrow" the software needed for my CompSci assignments, it was all there, and free. I didn't have to reboot constantly, like I did with Windows. It was solid, and it did everything I needed. I even managed to go most of my senior year using only Linux, and rebooting only a handful of times, for kernel upgrades mostly.
When I graduated, I kept running Linux at home, even though my employer was an all-Microsoft shop. It was nice to come home to an OS that just sat there and ran. Unfortunately, over time, I started needing to do more work from home, only possible if I booted Windows. I rediscovered Quicken, which only ran on Windows. After a PC upgrade, I discovered that some tasks that had previously been easy for me in Linux were now very hard (burning CDs comes to mind). Windows 2000 was, in my estimation, finally a usable, stable version of Windows - a Windows I could live with. I found myself phasing out my Linux usage, to the point where it was only my "server OS."
Every so often, I'd try Linux again on my desktop. But I was never satisfied. It seemed like a dark time for Linux on my desktop. Things seemed to be worse than I had remembered it. Or maybe I just didn't want to tinker anymore? Windows was Just Working. From the sounds of it, things may not have changed much since - but that's just one small example. I know Linux is working better on the desktop than ever for the overwhelming majority.
So, I've been on Windows 2000, and now XP Pro, exclusively for a few years now. They've been very stable for me. I've gotten my things done that I've needed to get done. I've kept running my Linux server all along and used it for a variety of things, but my desktop has remained Windows - it's working just fine for me.
That time may come to an end in the next year or two. My XP installation isn't going to fall over and die, but I'm going to, at some point, upgrade/replace my computer, and I intend to make it a laptop when I do it. The trouble is, by that time Microsoft Windows Vista will be out, in all six wonderful flavors. And I'm confused as all get-out. I don't need/want "home" edition - I won't be running a media center, and won't be running many high-powered games on it. The "business" editions will likely be more expensive than I want to pay, or won't come on the hardware I want. What is the home hacker/geek who works on the occasional code project to do?
This confusion I think will be what pushes me over the edge into a Mac. I've been wanting one for a long, long time - ever since I first saw Mac OS X on launch weekend. It's got eye candy without the performance penalty. It's got a cohesive feeling across the system. The performance is solid. It's very stable. Hardware conflicts are almost unheard of. It's UNIX underneath, which keeps the Linux geek in me happy. The majority of the software I use on a daily basis already runs on it, or there are even better versions available. The only thing missing right now is Quicken - last I heard, Quicken on Mac OS X wasn't very good. But I've got a good 18 months before it really becomes an issue. It'll open up other possibilities for me as well - cross-platform development for one. No more shackling to Windows with .NET. Sure, I can run a good number of the cross-platform environments on Windows (Ruby, Java, PHP, Perl, etc.) but I get the feeling that they're more "ready" on Mac OS X due to its UNIX underpinnings and the UNIX roots of those platforms.
I just can't see an advantage to me pouring more money into the Windows coffers when the time comes to replace my current hardware & software. I know I should give Linux a look, but for a laptop, Apple is really attractive to me right now.