In the computer hardware world, certain segments are saturated with choice, while others are not. Take graphics cards for example. For the most part, it’s AMD (ATI) vs. NVIDIA. For CPU’s, AMD vs. Intel. For CPU coolers… ugh, where to begin. We’d need at least a billion “vs.” for that one! Then there are operating systems, where like GPU’s and CPU’s, the choices of major vendor are slim.

For consumers, there are three main operating systems on the market, with Microsoft’s Windows dominating all of the others. In second place is Apple’s Mac OS X, followed by all Linux variants combined. An OS seems simple, but in truth, it’s the one piece of the computing puzzle that seems to divide us all. After all, there are few applications, games and drivers that are interoperable across each.

That being the case, I doubt many would refute the fact that some OSes do a better job at some things than others. Although Linux is easily the least-popular of the three consumer offerings on the market today, over my years of using the OS full-time, I’ve stumbled on many things that caused me to shout, “Why can’t Windows do that?!”, and this article pretty much sums up a handful of those.

To be clear about this article’s intent, it’s not to bash Microsoft, or Windows. Because to be fair, despite using Linux 95% of the time while I’m on the PC, I can find more faults with it than Windows. So, this article’s goal is to highlight some of the major pluses of Linux, and also showcase where Windows could improve in the future, should Microsoft take heed of the suggestions.

Please note that the list here is in no particular order, and because Ubuntu is currently the market-leading distribution, I used the latest release (10.04 Beta 2) for the sake of capturing most screenshots and backing up my claims. Ubuntu utilizes GNOME, but the entire list applies to KDE and likely other desktop environments as well. So without further ado, let’s dive in!

1 – Partitioning

Long before I began to take Linux seriously, one thing that bothered me about Windows was the weak partitioner built into the OS. The biggest issue is its absolute lack of flexibility, and another is its lack of compatibility. Microsoft has done well to make sure that only a handful of file systems are supported for creation and even less for reading.

Have a Linux ext3 partition? In Windows’ partitioner, it will show up as “Unknown”. That’s not too useful, and there’s no real excuse for it given that file system ID numbers are an industry standard, so it would take nothing for Microsoft to at least recognize the partition and display it properly, rather than default everything other than what it wants to unknown.

That I can live with, but to make things worse, there’s just no real power made available to the user. At most, you can split a partition in half. There’s no resizing, moving… nothing. If you are feeling really ambitious, there might be an option to format, but I recommend not choosing it hastily.

Regardless of the Linux distribution you’re using, you have access to one of the best partitioning programs known to man: GParted. Yes, its name is a little bland, but what it can do is not. For starters, it supports an incredible array of file systems, and many are not just Linux-specific. Those include FAT, NTFS, HFS and HFS+, and of course it also supports all common Linux file systems such as ext2 – ext4, JFS, ReiserFS, UFS and also XFS.

GParted is more than just support, though. With this tool, you can easily create partitions any way you like, at any size, and even move them around after-the-fact if you need to. You can also handle the various flags that are available (boot, hidden, lvm, etc), duplicate an entire partition to another drive, and also check for errors to make sure your partition is in tip-top shape.

To be fair to Windows, there are some free partitioning solutions available, but the caveat is that none are included with Windows, so most people are left to using what’s made available, or they run out and purchase a commercial partitioner. GParted has been included in every distro I’ve ever tested, making it completely accessible to any Linux user.

2 – Activation

This could be considered a cheap-shot against Microsoft since Windows is a paid OS and Linux isn’t, but over the years, I’ve been bit by Windows’ activation far too many times to keep quiet about it. Given that Windows costs money, I could understand the requirement to activate after the install, but it’s all of the downsides that plague the activation scheme that bothers me.

Because your activation is tied to your computer’s hardware, if you as much as swap out a graphics card or even update your motherboard’s BIOS, you risk suffering the consequence of booting back into a deactivated copy of Windows. The solution? To reactivate, of course, which takes a quick call to Microsoft that requires you back and forth two sets of numbers; one set of 64 and the other of 48 (if memory serves).

On Linux, you can do whatever you please to your OS or hardware and not have to worry about a thing. Just over a month ago, I switched over most of my PC’s integral hardware, including the motherboard, CPU and memory. I simply carried over my same Linux install, and it booted up without an issue (under Linux, many drivers work for more than one piece of hardware, making migration a cinch).

Activation might be a necessary evil, but when you don’t have to deal with it ever, it feels like complete freedom. And freedom is sweet.

3 – Customization

I haven’t used OS X enough to understand its level of customization, but this is one area where Windows falls flat on its face. According to Microsoft, customization includes being able to choose between two different taskbar sizes, adding a sidebar, and changing the color of your windows. Oh, I almost forgot to mention about the adjustable icon sizes, small to GIGANTIC.

On Windows, customization is almost non-existent compared to Linux, regardless of the desktop environment you’re using. In the case of GNOME and KDE, both environments are designed to be modular, so swapping out an entire icon theme if you wanted to is a simple process. The same thing applies to the desktop themes themselves, organization of the environments UI elements and much more.

Want to move the clock in your taskbar? Easy in Linux. I’m not sure about GNOME, but thanks to KDE’s Plasmoids, you could move the clock right out of the taskbar if you wanted. The same can be said for most other elements as well. You could easily place the trash in the taskbar or the desktop and remove elements you might not ever touch (such as the device manager). You can scale things down to your liking, or bloat it up as much as you like. The major difference between Windows and Linux in this regard is that in the latter, the choice is at least there.

For Windows, there are of course some tools out there to help you customize the OS, but especially on Vista and 7, the options are severely limited. XP was a bit different, but I’ve yet to see truly impressive modifications for either of Microsoft’s latest OSes. Then again, those would be considered add-on’s… but not so for Linux.

4 – Automatic User Logon

If you read this heading and said, “I have automated logon for my Windows, ya douche!”, then you’ve apparently never, not once, ever added a second user to your Windows. Maybe you don’t even update your OS as often as you should. For all versions of Windows, automatic logon works fine as long as you stick to one user, but in my experience, there have been updates downloaded straight through Windows Updates that have stuck me to a logon screen at boot, despite having just one user.

The most common issue is caused by having more than one user, though, and it’s a problem that anyone who uses such a setup faces. Many times, the main user of the PC would rather an automatic logon to save the hassle, but for some reason, getting that done is made difficult. If you’re on Windows right now, go ahead and have a look for the option.

All the way back to XP, my solution for this problem has been Google. That’s right, in order to figure out how to create an auto logon, you basically have to go to Google or some other search engine to figure out how it’s done. For Windows XP, you actually have to go to the registry and find some specific string. For Windows Vista/7, you need to go to the command line and type in ‘control userpasswords2’.

Those solutions work, but neither are common sense, nor too easy. For something that should be absolutely simple, sending someone to a search engine for a solution is a little ridiculous. To get this done in GNOME, you simply go to the System menu, then Administration and finally select Login Screen. There, the options are straight-forward. For KDE, you must go to the System Settings panel, and select Login Manager under the Advanced tab. Both solutions between GNOME and KDE are simple, and don’t require a Google search to handle.

5 – Troubleshooting

This is a rather broad area to tackle, so I’ll just talk about the basics. Running into an issue in Linux used to be a major problem given the lack of overall support, but today, that’s not true. There exist countless communities out there to help you out, and unless you have a truly bizarre or hardware-related issue, chances are good that you can find a solution quick.

There are also many communities for Windows users, but I can honestly say that most of the time when I run into an issue, I end up on Microsoft’s own TechNet, MSDN or support sites. That sounds all fine and good, but it’s rare when those truly help with the problem, and most often, they can even confuse you more. Compare this to the vast amounts of common-sense documentation for most major distros, and also the communities that are available as well. There’s a stark difference.

Aside from general information-seeking, there’s also the case of when your OS becomes non-bootable or something else happens that renders your PC useless. In Windows, your options are extremely limited. You can boot up with the DVD and try to repair using the basic tools, but all too often, that’s not enough. In some cases, some people may even consider their data gone, given that Windows doesn’t offer anything like a Live CD, or even a way to access your data outside of the OS (assuming Safe Mode is also problematic, which happens).

In Linux, the problem might require some technical knowledge to fix, but you should never be far from your data, and fixing the issue is almost always a possibility. It doesn’t even matter if you’re running a different distro. I could boot up with a Gentoo Live CD to fix an Ubuntu problem… it’s not a big deal. The best aspect of this is when you use a robust bootable CD like Ubuntu’s, though. The reason is twofold… one, you can access all your data, and two, you can actually get online to search for a solution. It’s for this reason that even Windows users should keep a Linux Live CD around… you never know when it may save you.