I'm not the most hardcore Linux user, in fact I'm primarily a Windows user at my current place of work (although a possibly upcoming place of work advertises itself as a totally Linux shop), and the machine I'm currently using is WinXP.
However:
- Linux can be particularly good for low-end bits of hardware. By which I mean, not at the front end of the curve. Not that I have many bits of equipment that aren't powerful enough for a given version of Windows[1], but bits of hardware that are still not actually broken can be made useful. If only as something a mail server, home automation system controller, or for something like sitting in the background and calculating ever increasing prime numbers... Which is not to say that high-end equipment can't also benefit (see later) fakeedit for Boucharts ninjaesque response: you can probably emulate a lot of things, despite that, if you start off by excluding anything that your 8yo hardware wouldn't have run unemulated in the first place
- (As a slight intermission, I'm currently using a PuppyLinux bootable CD (which could even fit onto a smaller media) to work some magic on a certain machine. I don't need to mess with the currently installed system any more than I want to. Which could be true for booting up in DOS (or Windows installation media in Recovery mode), if it weren't for some of the issues with the disk and the machine itself. Tools for the job, of course, and probably not a real point, but just happens to be a topical piece of information.)
- It's also free (download bandwidth, burnable media or shrinkwrap-box purchase excepted, if any of these incur you cost, and corporate versions are produced where you essentially pay for support). Good for when you get equipment from someone who won't (or can't) also pass on their valid Windows licence. Yes, you could get a 'Black' copy of Windows, there are plenty out there (and as a computer repairer, I've seen enough messes where someone brings in a machine that can't properly pass the WGA Validation, or shouldn't and the workaround causes even more problems), but there's a non-zero chance that this will get you into trouble in some way. Officially or unofficially, as already intimated.
- Nice shiny new Windows 7 machine you've got there. What? Your printer won't work properly with it? But the company supports Windows 7. Ah, but not your 64-bit system. So, how are you going to sort the problem out? Now, I'm not saying that you can sort out a similar Linux problem (and, indeed, not all hardware manufacturers pay quite the attention towards Linux drivers that you'd wish), but the wonderful thing is that there are a load of little
gnomesgeeks out there who just love to sort such Linux problems out for themselves, just as soon as they can get their hands on the hardware concerned. Not only solve such problems, but make things better than the manufacturer thought to do. - Some might consider this the weakest argument, if worded this way but: Security Through Obscurity. If you're being hacked by someone who can get through your usual Linux defences and take advantage of your Linux machine after breakfast, they'd have already gotten through your Windows defences while still buttering their toast. No computer system is completely hacker-proof (and the biggest problem is not your system, but the social engineering methods behind the Black Hatter's attempts to get you to open up your system to them... which even with the Win7 version of UAC is often too much of a case of shooting fish in a barrel) with a little luck and/or expertise behind the attacked. But the phrase "low-hanging fruit" does sort of make a decently set up Linux machine far less worthwhile trying to randomly attack than all those Windows ones sitting there ready to be plucked. If not already plucked into a handy bot-net.
- Get to the heart of your system. Peek and poke the hardware, tweak the OS, re-write the software. Not necessarily as simple as just written, but possible because of the Open Sourced nature of everything from the Kernel, through the WM to the (majority of) programs that you'll be running and because you have the rights to mess around with it (with all due care and backups, of course).
I have to admit, at this point that my AMD Dual Core/2GB machine is actually dual-booting WinXP and Fedora
8. But, you see, the WinXP boot (although valid, bought as an OEM along with the hardware) was only actually used to play some FPS game or other that I'd pre-emptively bought (GTA San Andreas?) got bored with and was never actually registered/validated. And I got the Fedora 8 so nicely configured for my needs that I've never actually bothered to upgrade that to the latest version (what is it? 13? 14?). I've got a nice super-zippy computer, which I know I've got a decent chance of running most things that I might want to run (including Windows apps through WINE, which is how I first ran Dwarf Fortress, MUSHClient and a number of other programmes). I even have a nice flight-sim which came in a combined Windows/Max/Linux version disk, although I can't guarantee it'll run on Win7, and maybe not even Vista.
Shall I tell you why
not to go for Linux? Don't do it "to be cool". Ok, so there's a sort of Geek-Chique thing in some circles, but if you aren't already in those sort of circles it's going to be more time and effort to get knowledgeable enough to be accepted than it might be worthwhile to apply to getting 'in' with some other group (another example of low-hanging fruit) which you would be happy to belong to. (Just like becoming a valued member of the cheer-leading squad isn't just a matter of taking off your glasses and letting down your hair. IYSWIM.) Don't do it because it is "The answer to everything...", because as people quite rightly point out, mainstream games for Windows largely don't get (officially!) ported to Linux. You might be able to WINE some of 'em, with a decent bit of kit (and you might even find a way of getting Console games equally usable, making Linux better than Windows), but getting the bleeding-edge stuff working right out of the box is going to need some overkill, work on your part and/or some seriously dedicated geek doing a lot of the conversion on your behalf.
Also, while Linux can be made to
look like Windows (I remember Lindows, in particular, prior to its enforced rebranding), it's going to be different in so many different ways. And I
still have to remember that it's "mkdir" not "md", at the shell prompt. Even after nearly two decades of (admittedly off-and-on) *nix shell use. Darn my MSDOSed-out mind, but I refuse to set up an alias to make "md" work, because I have to make myself remember! (Still, that apart I can roll a decent shell script beyond the dreams of DOS... Well, actually you can do quite a lot in modern (2K onwards) DOS through the Command Extensions, delayed environment variable expansions, "usebackq" addition to the FOR command, etc, but it's still not as good as a good bit of bash and always looks and feels far more kludgey).
And, actually, I'm very much personally
not enamoured of a lot of the Bells And Whistles stuff you get in all of the more modern OSes. (The Macs much-copied media toolbars, Windows' Aero themes and even the Linuxes that implement all that kind of these things in a similar (or better!) way.) Call me a luddite. Even this XP machine next to me has the Classic style (fits better with the way I like my interfaces, honest and not wasting resources on 'roundness' effects and transparencies, even when there's the resources to spare and it's mostly farmed out to the graphics card).
But that's another plus for Linux. From the barest 'X' through various KDE and GNOME configurations, XFCE, Fluxbox, ICE. Or just sticking with the plain command shell (bourne, korn, csh, tcsh, zsh... I'm sure I've used more than that, in my past, but the old grey cells are being stubborn about revealing what else there might have been, especially as these share a lot of common factors).
Which is also the big minus. So many varieties. I don't actually like Ubuntu/Mint versions (too touchy-feely, the versions I've tried) and have sort of settled with Fedora/Red Hat variants (but, as already mentioned, am reluctant to upgrade, just in case it's 'ruined'), with a passing fascination for Puppy for fixing machines, Backtrack for... testing them..., have used DSL and of course there's the grand-daddy (or at least grand-uncle) of them all, Slackware which I really should get to know more. I've built up this mini-list of likes and dislikes, but where would you start? Ubuntu currently often targeted at getting people 'hooked' from both Linux and non-Linux literature, but I know
I can't get on with it (when I tried it). Even if you have a certain narrow interest in mind, like setting up a media-PC, MythTV competes with XBMC, etc. And my own indecision (not to mention verbosity) makes me a poor advocate for getting into Linux, I know.
And, of course, I seem to have lost my point, again. But I think I've put pros, cons and everything in-between, here. If you're still reading, and you get the time to work it out for yourself, you might find it interesting to work with Linux. As someone else has by now mentioned, there's always LiveCD versions (with some obvious limitations on performance) to have a try. Regular PC magazines often have the odd "Try this linux!" disc on them, and Linux-specific ones almost always have "Try these Linuxes" multiboot monstrocities. And, of course, there's downloading of .ISOs off the web and burning them yourself to CD (or USB stick).
[1] I have a Win95 machine which came with 8Mb (was upgraded to 40Mb), a Win98 I think got up to 128Mb before some unrelated component on the motherboard exploded, I still have a W2K machine running happily on 64Mb, several XPs on anything from 512mb to 2Gb and though I don't personally have Vista or W7 machines, I'd recommend no less than 2Gb for the former and I think 1Gb might be
better used on the latter... Processor speeds range from P133 on the Win95 to IforgethowfastbutanAMDDualCore on one of the XPs.