I had tried my hand at several different distros of Linux in the past. The first was a version of Red Hat that came with a Linux for Dummies book. That was back in 1999 I believe. I had no idea what I was doing and hosed my Windows partition trying to install. Once it was up and running, I didn't know what to do with it, so I reinstalled Windows. In 2001 I installed Mandriva (then Mandrake) onto a spare hard drive I had and would swap the drive out when I wanted to play with Linux. I enjoyed the distro, but still didn't really know anything about Linux other than it was free and open source. I never really went past the software that came with the distro. Most of the usage consisted of my wife and I playing frozen bubble.
In 2003 I bought a really old IBM Thinkpad on ebay for like $200. It had a 266Mhz Pentium 2 and 128 MB of RAM. I actually did run XP on it for a while. It was really slow and unwieldy. I knew that Linux could be a really lightweight OS, so I started doing some research. I tried Ubutnu Hoary Hedgehog, but couldn't get my wireless card running at all. Plus, Hoary didn't seem much faster than XP on the old dinosaur. I got the same results from Mandriva. Finally, I stumbled across Gentoo. I read through damn near every page of their setup documentation and a lot of the content on the wiki, and was sold. Just from a geek point of view, this was the perfect distro as far as I was concerned. I started getting in set up, and after several days of compiling (I told you it was a dinosaur) I had a nice little fluxbox system up and running. I loved using that laptop with Gentoo on it. It ran like a dream and I was learning a lot about how Linux worked. I think the thing that really made it stick for me was the portage package manager. I had futzed around with RPMs and had even installed a few packages from source before, but I never really liked the way it worked. Installing from source was a pain because I didn't understand all the dependency stuff not to mention difficult to keep track of if I ever wanted to remove something, and RPMs hardly ever seemed to work for me. Portage was great because it just worked, and kept track of what I had installed. Not to mention the fact that I could tweak the build settings and get something really optimized for MY machine. I'd probably still be using that build of Gentoo today if the laptop hadn't crapped out.
In 2006 I got a nice new Dell laptop for my birthday. I had XP on there by itself for a while, then decided to try my hand at Linux again. I put Ubuntu Feisty Fawn on the laptop along side XP in December of '06. After a couple of months, I took XP off completely and I haven't looked back. The degree to which I can dig in with Linux and make my computer my own is fantastic. Plus it has just made me a much smarter developer. I always relied on Visual Studio to handle most of the "monotany" of programming, but once I started toying around with programming on Linux (particularly in C++), I found that I didn't really know much at all about real developing. I learned about the compiler and the linker for real, not just as a vague aside. I learned how to use Makefiles to control my build. But I think the most important thing I learned was the Intellisense was a crutch more than a tool. I now use emacs to code and find that it makes me focus much more on what I'm writing. It's made me a better programmer at work, too (which is all Windows dev BTW). There's so much more I could say about using Linux, but I'll probably save that for later posts.
Geek Out