I first got into linux for a simple reason, the small company I worked for had almost no money, and needed a server, we took a risk and used debian to setup a small samba server on a extra desktop we had. I had previous unix experience from working at an ISP, so the commands and structure were familiar. We went on to eventually buy a real server and decided to still stay with linux. Eventually our website, email, and just about everything else except desktops were linux.
I use linux at home because I like it. Also, I do not like the direction microsoft is going and as of yet, can not justify the purchase of a mac. I have windows vista on a partition and I feel it is a step in the wrong direction for my needs, the more I read about the next windows OS, the more I feel it's moving even further from what I need. My linux setup is exactly how I like it with great tools to get the jobs I want done. I wish there was more gaming support, but that is not a deal breaker for me, actually it makes me get the things I normally push off to game done. To put it this way, windows runs on a 250 gig drive with nothing installed except games. Ubuntu runs on a 500 gig drive, has some games and all the apps I use for day to day work. And while a lot of the tools I use exist on windows as well (firefox, openoffice, pidgin, netbeans, eclipse, awesome shell scripting (cygwin) etc) a lot of them don't (transmission, bluefish, Anjuta, evolution, gnome (god I love gnome for some sick reason), etc) I also feel that ubuntu looks cleaner and is more usable then windows.
I've tried to go back to my roots with debian and gentoo, but I've found ubuntu actually does everything for the most part the way I want it anyways, so I end up wasting my time. Plus it's easier to find packages for ubuntu that are not in the repos then it is debian (I've never needed a package not in gentoo's package manager). It's also easier to find documentation on more complex stuff for ubuntu (and easier to find bad advice, but that is another story). Plus the release schedule means more up to date software without the worry of something breaking in sid.
I've tried a few times to go back to windows full time. I even bought some software to help fill my gaps. I'm trying to get into cross platform programing now, and so I got a copy of visual studio.net 2008, but I find I like monodevelop a lot more. I tried dreamweaver, but because I never really use the design mode, I really found bluefish to meet my needs a lot better (my job is 75% php/javascript, 20% java, and the rest server management). I guess I'm just used to linux now, and I can't see paying for an OS (although my vista copy was free from work), and almost all the software I love is open source, so why not go all the way.