Open Source Software vs. Commercial Software:
Migration from Windows to Linux
An IT Professional's Testimonial



All in all, I have brought up many points in which I believe that using Microsoft Windows is a disadvantage for both the corporate and home users. People are creatures of habit, and since many users have been using Windows since its early days, they fear change or plunging into the unknown world of another operating system. Remember that Microsoft is in the game to make money for its software, and this is not the ideal scenario for producing top quality software. If Windows were perfect, users would have no reason to upgrade and buy the latest version. This is apparent when comparing Windows to Linux side by side. In most cases, Windows lacks functionality where Linux makes up for this and has perfected in areas where Windows lacks, thus giving it a large amount of functionality that is already built in and works right out of the box. Neither Windows nor Linux are perfect, but when you compare the two side by side, Linux has the decades of building blocks to make it extremely stable, backed by a vast community that give it a competitive edge over Windows.

I have provided real case scenarios that I have encountered in everyday experiences with real users, not hypethetical examples created in a lab or skewed by sponsorship. As I mentioned at the beginning of this document, my views may come across as totally biased in favor of Linux. However as I also mentioned, all of my views are based on my personal experience from years of usage. And, from that experience, the facts come out in favor of Linux by themselves; my purpose is to lay out those facts in plain view so they can be examined when it comes to comparing Windows and Linux side by side. I have based my own opinions all strictly on my personal experiences running Windows and Linux side by side in similar if not identical environments, as well as dealings with other IT professionals and end users of the software. My goal is to put all of the facts on the table, so that others will realize that they do not have to stay locked into the Windows monopoly (otherwise known as vendor lockin).

Linux has bad rumors floating around about it not being very friendly in the home user arena. In the past these rumors have been true. But what people don't realize is that Linux has been greatly improved over the years by many thousands of peoples' hard and diligent work, and refined to the point that it is quite easy to install and use. I have pointed out many examples of Linux used in various hardware devices, servers, and high end appliances. It has more than proven itself in those wide variety of applications, so it is definitely more than qualified to work in any home environment. The issue left is really the one I pointed out about people being habitual, and resistant to change. Nobody likes plunging into the unknown, even with their computer. Linux is friendly enough to that it can run in parallel with Windows, if you want to run both and see how it goes. Microsoft only provides instructions for removing Linux, none on how to run with it. Big surprise, going back to my point about Microsoft and its one way street politics. Again, the mention of closed source software not being compatible with open source, yet open source being completely compatible with closed source.

Some have even gone to the extreme of mentioning the ultimate death of Windows, but this is probably an unlikely event, at least in the near future. However, let's look at the current trends. Microsoft's operating system upgrades over the years have proven to be bumpy rides, time and time again. Personally, I feel that this will always be the case (and the situation may even become worse in future versions) as long as Windows is a commercial product. Microsoft's newest operating system (Windows Vista) has proven to be a failure for a lot of its consumers, and a lot are finally abandoning ship and looking at Apple's Macintosh or using Linux on IBM/Intel hardware. Both MacOS and Linux operating systems are Unix-based derivatives, which continue to prove themselves over. Especially Linux, which is the focus of this document, proves itself to be reliable, cost efficient, and does everything the consumer wants and more without the huge list of usual Windows headaches and burdens. So, if we base our assumptions on the current trends and posted data all over the Internet, people are moving to Linux and are staying with it, which is a true sign of the winner in my opinion when you weigh out Windows and Linux on the big scale. Just because Windows is pushed to market and is used more in our everyday world today doesn't mean it's the better choice for tomorrow.

The Future's So Bright

I gotta wear shades. Well, maybe not quite that far, yet. Linux still has some hurdles to get itself into the market for the common users. Linux has already proven itself over in the server world where it has been shown to run over 80% of the world's supercomputers. But on the desktop, Windows is still dominant. However, the trends are showing that Windows has been losing market share in recent years, mainly starting in 2005-2006 with the release of Windows Vista. Vista has forced past Microsoft customers to start looking for alternatives. In 2002-2003, Windows was used on around 92-94% of all desktop computers. However, the most recent numbers in early 2009 are showing that Windows is on about 86-88% of all desktops, with Mac OSX around 10% and Linux on around 2-4% of all desktops [1]. These numbers are very difficult to compile, so these results are probably somewhat skewed in one way or another.

The interesting point to this is that Linux has been around the 2% mark for several years now, and just can't seem to break that barrier. Here's where I believe the problem comes up for Linux. While the main strength of Linux is it being open source, this situation is bittersweet in that open source has nobody to market it to the general public. You can walk into any Best Buy, Walmart, or most retail stores and find computers with Windows or Mac OSX, but mysteriously there are no computers with Linux. You can watch TV and see ads for Windows and Macs, but never Linux. Why is this? Well, let's consider the main fact on these operating systems, is that Windows and MacOS are both strongly commercial products, so they have strong companies behind them as well as marketing campaigns. Meanwhile, Linux is not a strong commercial product as it is open source, developed by the very users that use it. As I've reinterated many times, it's the opposite of commercial. Without this market exposure, Linux doesn't have fancy ads to get through to people. Dell has started selling desktops with Ubuntu Linux which is definitely promising. But, even with that, Dell doesn't run any specials on the desktops with Linux, only the models that have Windows. Yes, there are some companies such as Red Hat that market their own version of Linux, but they mainly push their products to the server market and not the desktop market. Red Hat itself has admitted that it does not have any immediate plans to try and tap the desktop market yet where Windows still dominates. But, the interesting point to all of this is that even though Windows is constantly being advertised and pushed in retail stores, it is still losing market share to Apple, and Linux without any marketing at all is very slowly gaining some of the market share lost by Windows.

With all of this being said, Linux still needs user awareness, which can definitely be found with articles posted around on the Internet. Simply searching Google for Linux compared to Windows will quickly yield an overwhelming amount of articles supporting Linux. This fact speaks for itself. Also, since Linux is user supported, there is an unlimited amount of documentation and support available on the Internet. Hopefully, word of mouth and other ways will get through as more and more people and companies realize that going down the Windows path is a losing situation. It definitely takes a lot to get the true facts out in the open, which is why I have written this extensive article. Luckily I have kept an open mind through my years in the IT world and used both operating systems, enough to discover the power and countless advantages of Linux.


Goodbye, Microsoft

So, in theory, if you wanted, you could scrap your Microsoft Windows PC and just install Linux and be on your merry way, right? Well, not quite that easy, it can take some patience. Since I am a typical IT person I have a few computers in my house, which are currently running Windows XP. One day one of those computers running Windows XP started acting up in a very unusual way. The main malfunction was that the 20 GB hard drive was completely full, and we only use the PC for the Internet, and basic word processing. After some investigation, it turns out the System Restore services of Windows XP were eating up about 15 GB of space! After a reboot, the space was magically back and we were back down to around 5 GB of used space on the drive. After shrugging my shoulders and walking away, the problem soon came back a few days later. I ended up completely turning off the System Restore service and voila!, the hard disk problems were gone for good. But, after thinking about this some more made me realize that I had just turned off a feature that is supposed to be useful in Windows. What if I got a virus or installed another program that completely hosed the system? This got me thinking that I have a computer that can't be used to its full potential. There were other reasons too, but overall I thought maybe it was time to scrap Windows and try out the latest version of Fedora 8 (Red Hat Linux beta). I have been a user of Red Hat Linux since 1997 (version 4.2 to be exact). And I admit I am a victim of habit and sticking to this distribution, but I have found that Red Hat is very widely supported and is pretty easy to use. Red Hat has done a superior job of customizing its Linux distribution into a complete and neat package that just works time and time again. This and a handful of more reasons, I have stuck with it since.

So, after the above problem with Windows XP I started thinking that I should seriously investigate Linux as a direct replacement for my Windows PCs. What finally got me to make the move is when I saw Windows Vista. OK, it looks nice and shiny on the front, so I have to give Microsoft credit for making a very nice looking front end. After looking at the PCs in my house, I soon realized that they didn't even have a chance to run Vista since they don't even come near the minimum requirements. For example one of my systems I use every day is a dual processor Pentium III 1000 MHz, with 512 MB of RAM and the motherboard can't handle more than 512 MB. Looking at the specifications for Vista, my PC would be the very minimum according to Microsoft. So, what's the big deal, Microsoft says it will run on this machine, why not just do it? Unfortunately the numbers that Microsoft provides are a little misleading. OK so Vista will install and run on my PC, but I can guarantee that as soon as I want to start using any software, it will need to access additional memory over the 512 MB mark and since it's not there, the PC will probably start to eat itself alive.

I have installed Vista and from personal experience, if the machine doesn't have a minimum of 1 GB of memory you can simply forget it. OK so maybe I'm a little behind the times on the hardware, however why should I go through and upgrade all of my computers when there is really no reason? I know that I'm not the only one out there is this same situation. Upgrade all of my computers so they can run Windows Vista? No way. Recall my examples previously on the cost of upgrading/purchasing new hardware for Vista. Plus, why are all of the vendors like Dell now offering a "Windows XP Downgrade" option? Obviously there is a really good reason, because Vista isn't panning out, and I'm not about to waste my time and go down a route that leads to a dead and costly end.

Looking at the numbers for Fedora 8 (and later for Fedora 10 while I continue to update this document), I easily meet the minimum requirements. Yes, keeping Windows XP would also easily meet the minimum requirements, but I have a bad feeling about the Windows XP end of life date in July 2009 that Microsoft has set in stone. Why should I install something now that is going to be unsupported by Microsoft (and soon thereafter by other 3rd parties as well)?

So, in the end Microsoft has made my decision for me, and here are my reasons:

Take it from me, an IT professional, I am done dealing with these problems. I'm migrating my Windows computers to Linux so that I can finally be free of all of this nonsense.

Mass Migrations in the Real World

If you are still a little skeptical or afraid of the unknown, do know this: mass migrations are possible so your migration can be possible, too. You may or may not have heard about the City of Munich, Germany, which made a switch from Windows to Linux for about 15,000 of its employees starting in 2006. The project took a couple of turns along the way, as the rollout continued. It started with Debian Linux and ended up switching to a customized version of Kubuntu Linux later on, and that is where it finished up and is today. At one point, even Steve Ballmer himself flew to Munich in May of 2003 for a personal visit to try and pursuade the city council to stay with Microsoft Windows. In the end, the city council found it awkward that the CEO of a large corporation thought he, one person, might be able to convince the city council that they should stick to Microsoft solutions. They had already made up their minds for the most part, to scrap Windows and look at a secure and open platform, and Linux fit the bill.

I am surprised in this project as it did not provide a large cost savings, which we would think should be a major benefit. Instead, the City found that Windows 2000 at the time was "phoning home" to Microsoft and there were security concerns with that. They were unable to get clear answers from Microsoft on which services were sending information back to Microsoft, when, and what information was being sent.

There are many good articles on this infamous mass migration, and the Linux Voice published a recent article summing it up with a direct conversation with Peter Hofmann, the leader of the project. The Linux Voice also published a very nice PDF article as well, that sums up the project so that other managers can read it and learn how migrating to open source software can possible help them as well in the same or similar ways as the City of Munich.


Windows Software Retainment

So, if we decide to make the jump from Windows to Linux, what kind of risks are we looking at? Migrating from Windows to Linux may seem easy up front, but there are hurdles that we must contend with. Ah, but what about software that you have already purchased for Windows, that you still want to use? Fortunately, this is not a problem. Let me introduce you to Wine. Wine is a Windows Emulator (hence its name -- win + e), and is one of the most interesting pieces of Linux. It is a complete gateway for your Windows software. It will run Windows programs directly in Linux, just as if you were sitting at a Windows computer. You simply open up your Windows program from your main menu just like any other piece of Linux software, and it runs your Windows application in its own window just like any other application! It is truly amazing and the best part of all is you can run Windows programs without ever having to bother with keeping up a Windows operating system with updates, security holes, quirks, bugs, crashes, etc. And, in some cases the software will run faster than it does on a real Windows system. This is especially the case when comparing to Windows Vista (which runs quite slow on older hardware).

Dreamweaver in Wine (Linux)
Dreamweaver for Windows running in Wine (in Linux)
Internet Explorer IE in Wine (Linux)
Internet Explorer 6 running in Wine (in Linux) using an ActiveX plugin
Mozilla Firefox Putty (Linux)
Linux versions of Mozilla Firefox and Putty
OpenOffice (Linux)
Linux version of OpenOffice Writer 3 with an open document.
Gnome desktop
The Gnome desktop with images, file browser, and XMMS media player.

And what's even more amazing is that even complex programs such as games that use complex DirectX 3D graphics and interface with cameras and scanners will also work. Think of Wine as a conduit that can interface your Windows programs directly with hardware and peripherals like scanners and cameras on your Linux computer. Wine includes DirectX 9.0c support, and can access your sound card and other devices, too. If your video card and sound card are supported in Linux (you can safely assume it is), you should have excellent luck in Wine allowing your Windows programs to access those devices just like on a real Windows system.

In the end, you can take all versions of Windows, 95, 98, ME, NT, 2000, XP and Vista, and tie them all up into one system and run all of your Windows software in one place. This sounds all great and dandy, however as with anything there can be problems. Not all programs will function in Wine straight out of the box. Some programs are so tightly integrated to Windows, you can run across issues. For instance, some versions of Quicken are heavily tied to Internet Explorer. As we all know, Internet Explorer is bound to Windows with super glue. However, as with any open source software, developers and users all over the world have put in lots of work and have come up with ways to get applications like this to work in Wine. And yes, even Internet Explorer itself has been found to work in Linux, thankfully to the hard work of the open source community. Even with full support of ActiveX plugins! A huge database of programs is maintained on the Wine website, complete with reports of which applications work and which ones don't or have issues with different versions of Wine, complete with feedback from other open source users and developers. You can always check to see if your program is listed in this list ahead of time and see what you may be faced with. Wine just became its final version in the fall of 2008, which means it is quite stable and will run many applications without much intervention or tweaking needed. This is especially the case for regular programs in Windows that don't need much special hardware access like games. As an example, see the screenshot to the right of me using Dreamweaver for Windows, on my Linux computer, creating this very web page!

Now, as I mentioned earlier, your mileage will vary quite a bit with Wine. Even though it has been refined over the years, it is still not perfect. Some programs can be challenging to get working, and some may not work at all. One of the first things to do is to assess the software that is required. For instance, can you operate solely on the native Linux applications like Firefox, Thunderbird, and OpenOffice? Or will you require additional Windows software that cannot be replaced? Making a list of the software required is definitely a first step in determining how difficult your migration journey will be, or if it will even be possible. Unfortunately there are still niche areas where software for certain tasks is only available in Windows. Probably the most challenging part of the migration is trying to run Windows software with Wine in Linux, if you find that you must do this. Your mileage will vary greatly. I have run into a few roadblocks where I could not get some applications to completely work, or work enough so that they would be usable. In this case, I've had to keep a Windows computer available if any of this software is needed.

The best thing to do is make a list of all needed software. Then, for Windows software, it will be a matter of using Google or some looking to see if a native Linux application will do the job and replace it. I also provided a few websites that have done this work for you already:

If no equivalent applications can be found or they don't meet all of the requirements, then you may have to look at getting the application to work in Wine. Sometimes programs will install and work without any modifications necessary. But to be honest, this is fairly rare, and chances are some tweaking will be necessary. From my experience, the older the application, the better chance of running it. I have found that in most cases for software that doesn't work in Wine, that some tweaking is needed.

For instance, the program may need a native Windows dll file that is not present in Wine or the Wine version doesn't work. This can be a very tedious task, and will require some technical knowledge, as well as a running Windows computer available to copy files from or troubleshoot. But, the good news is that in most cases, you don't need to re-invent the wheel for getting programs to run in Wine. Chances are for most common applications, others have already done the work and found a way to get it running, if you run into a problem. The website is a great resource for an assessment of which programs work in Wine. Generally I have found that once you can get a program to work, that it will need some extensive testing. Just because it opens up doesn't mean that it will run without any glitches. Check out all of the functionality before you throw up the flag that all is working. If you get lucky there won't be any issues and you can congratulate yourself on a working Windows application in Linux! But as I have stated before, your mileage with this will vary greatly as every Windows application is totally different.

Next Section: Making the actual migration

Previous Section: How About Standards?


Table of Contents



1. Wikipedia : Comparison of Windows and Linux