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

 

A Little Politics: Windows vs. Linux

Windows Failures

Up to this point we've focused on the broad comparison of open source software and closed source software. As we make our way down to the next granular level of the politics of Windows and Linux, let's focus in on some more specific examples. As I mentioned earlier, I have used both Linux and Windows side by side, and time after time I have seen Windows simply fail, while Linux continues to run. This explains why I have hardly any bad experiences with Linux to document, as there just aren't any! This subject is at the center of wars and debates all over the Internet. I am speaking only from personal experience here and from reading other blogs, articles, and information. I have noticed that I am not the only one out there that has noticed this behavior of Windows failing over and over again. I think that most of us that have used Windows, have experienced some sort of let down at some point or another. We've learned to live with it. But, this behavior is not something that needs to be tolerated. So, let's look at why I feel so.

Another example recently where I discovered another letdown of Windows, was when I tried to set up a simple backup of my PCs. I have a Linux file server running Samba on my home network, and I wanted to have a few folders on my computers to be backed up automatically at certain intervals incase of a hard disk failure. On my Linux computer, I spent about 20 minutes installing rsync (a nice lightweight and very efficient program to replicate the contents of one folder to another folder), and setting up replication from my entire Linux profile folder to a share on my file server with a simple cron job that runs silently once an hour. I will provide how I set this up later on. Knowing that Windows lacks a built-in utility to do this, I did some research and found that there is a port of rsync for Windows. But wait, after reading some more I discovered there are complications of rsync on Windows backing up open or locked files. There were some documented ways around this by using Microsoft's Shadow Copy Service, but none were guaranteed to guard against possible file corruption of the backed up files. I also found a post that claims a working configuration of rsync on Windows. After an hour and a half, I gave up because I could not get the Microsoft VSS utility (vshadow.exe) to actually run properly. I got the error "- Returned HRESULT = 0x8000ffff - Error text: E_UNEXPECTED", a typical Microsoft error where it does not explain what the error is. I have posted screenshots of the Windows Event Viewer related to this error to further explain my frustration of the meaningless errors, anybody care to try and decipher them? I spent about 30 minutes trying to figure out what the errors were, then decided to scrap the idea of trying to get rsync working in Windows and the Shadow Copy Service. After doing some more research, I found that Microsoft offers a free utility called "synctoy", that is designed to do exactly what I want, or so I thought. After downloading synctoy 2.0 and installing it, I found the interface to be very easy to understand and set up. I set up a few folder pairs and let it run. Much to my dismay, I found that when it runs it pops up a window on the screen to show the progress in a nice status window. But in this case I wanted it to run silently and not bug me, so that I could use Windows Task Scheduler to run it once an hour, similar to my setup in Linux. While doing some research on how to keep the popup window from appearing, I discovered miscellaneous errors in the log that synctoy generated about certain files that it skipped. Once I found that synctoy has not quiet mode to suppress the status window that pops up, I gave up for the time being. I just went back to a basic manual copy of the folders within Windows Explorer to my file server. Unfortunately, this is a very inconvenient solution as it requires a complete copy over the top of the destination folders on my file server each time I want to back up. So, I end up wasting time by shutting down all of my open programs, then copying gigabytes of data to my file server each time. With rsync in Linux, it is very efficient and will actually only copy portions of changed files each time it is invoked. Just another example of many where the many minds of the open source community have come up with a solution that beats the pants of the commercial software market. Eventually when I find the time, I will revisit the subject and try to find a 3rd party free solution that is hopefully stable.

 

We all remember the things in life that stand out the most, right? I recall once where I was checking out at a local supermarket, back in 2002 or thereabouts. Back around this time, the self checkouts were beginning to become quite popular. The supermarket I was shopping at had recently installed several self checkout machines. One day as I was checking out, I saw that a technician was busy trying to troubleshoot one of the machines. When I glanced over I immediately noticed a familar screen, the infamous blue screen of death, right on the touch screen of the machine. I chuckled to myself, as I immediately recognized that it was running Windows NT 4.0. I haven't seen this happen since, but I thought this was pretty amusing that the company that implemented those machines used Windows as their platform of choice. About a year later they did replace the machines with a completely different model. A new and more stable operating system was used, perhaps? I haven't seen any of these crash since then, so I am not sure what operating system they use now.

Recently another very good example of the failures of Microsoft happened to land in my lap. On December 30, 2008, everybody around the world that owned a Microsoft Zune 30, unexpectedly experienced the "lockup" issue where the player simply locked up, and was useless. Microsoft quickly posted a message on the main Zune website hosted by Microsoft stating that the issue was known and that a fix would be posted soon. Well, as promised, two days later a fix was posted. And get this, the fix is to drain the device's battery so that basically it shuts off. Then, to power it back on and continue on your way! Doesn't this sound par for Microsoft? If all else fails, reboot? Ah ha... yes, a reboot. But the snag with the Zune is that there is no way to do a complete reboot as long as the internal battery has power. The following bit of text is quoted directly from the Microsoft website for the Zune:

My Zune 30 is frozen. What should I do?

Follow these steps:

1. Disconnect your Zune from USB and AC power sources.
2. Because the player is frozen, its battery will drain—this is good. Wait until the battery is empty and the screen goes black. If the battery was fully charged, this might take a couple of hours.
3. Wait until after noon GMT on January 1, 2009 (that's 7 a.m. Eastern or 4 a.m. Pacific time).
4. Connect your Zune to either a USB port on the back or your computer or to AC power using the Zune AC Adapter and let it charge.

Once the battery has sufficient power, the player should start normally. No other action is required—you can go back to using your Zune!

My Zune 30 has been working fine today. Should I be worried?

Nope, your Zune is fine and will continue to work as long as you do not connect it to your computer before noon GMT on January 1, 2009 (7 a.m. Eastern or 4 a.m. Pacific time).

Note: If you connect your player to a computer before noon GMT on January 1, 2009, you'll experience the freeze mentioned above—even if that computer does not have the Zune software installed. If this happens, follow the above steps.

And, best of all, Microsoft doesn't even mention what the problem really was!! I myself do not own a Zune, but I was quite inquisitive to find out what operating system the Zune runs since I have never heard of such a thing where every single device simply locks up at the same time. After a little investigation, I found that the Zune runs.... drumroll please.... Microsoft Windows CE! Should we be surprised? No way. So buyer beware. I know nothing is perfect, but if I had two options sitting side by side... one running Windows, and other running Linux, I would definitely choose Linux solely based on its good track record. This comparison can better be brought into light by comparing the Zune to the Apple iPod. The iPod is undoubtedly the most popular portable player out there. And, I will give you one guess what operating system it uses! Well, I can't give it to you that easy. The iPod runs a very stripped down version of Mac OS X, which is based from Unix. And, as we already know, Unix and Linux are quite similar.

OK, granted this example doesn't apply to a business critical application, it was definitely an inconvenience to those that owned the Zune and it affected thousands and thousands of Microsoft customers, yet again. Imagine being out somewhere enjoying your music and suddenly the device locks up for no apparent reason. You wonder if it's bad, needs repair, if you did something to cause it to malfunction, if the wind is coming out of the wrong direction that day, or just needs to be replaced. What would you do? Luckily most folks started scouring the Internet and soon found that others were having the exact same problem with their Zunes, and finally came together to try and come up with their own solution. Some started cracking open their Zunes in frustration, to remove the battery and try to reset it themselves rather than waiting for official word from Microsoft. I even came across many posts of frustrated users threatening to scrap their Zune for an Apple iPod. Add up all of the wasted time for each Microsoft customer and imagine the total cost of peoples' wasted time. What a bill that would be for Microsoft.

Now, it's easy to point the finger at Microsoft and point out these various failures. You may ask, "Why don't you be fair and point out the same failures for Linux, too?". The fact is simple: there aren't any to point out. Take the thousands of appliances, devices, servers, and computers out there currently running Linux. Have you ever heard of such an outbreak as above, where ALL of them simply lock up one day? I haven't seen any, and if I ever come across one I will be sure to post it.

Failures Out of the Box

One of my worst experiences with Microsoft software plain not working straight out of the box is with Windows Deployment Services. This is a package released by Microsoft (for free), that adds functionality to any Windows server to hold images of your computers. It is actually a successor to the Remote Installation Services (RIS). With the release of Windows Deployment Services (WDS), Microsoft documented that WDS would provide the ability to simply click and upgrade previous RIS images. This sounded spectacular and would make the migration from RIS to WDS quite easy. The migration to WDS was being forced with Windows Server 2003 Service Pack 2 (the service pack automatically upgrades RIS to WDS). Unfortunately, upgrading from RIS to WDS is not all made of flowers and lollypops like Microsoft says it is. The software upgrade or installation process was painless, which is good. By default, upgrading from RIS to WDS leaves WDS in "legacy mode", which basically makes it function just like RIS to the end users that are using the pre-made images. But, Microsoft failed in a couple of areas with this product.

First, the one-click upgrade of an existing RIS image to WDS flat out did not work, for any images. It would run through the process and at the end, would fail. After some hefty Google searching, many other posts came up with others having the same exact problems, but no solutions were posted. In this case, it was desired to upgrade the images away from RIS as we were experiencing image corruption with RIS (where images would get installed but there were corrupted files present after the image installation process was completed). Fortunately, upgrading the RIS images to WDS could still be done the long way, by installing the RIS image on a physical computer that it belonged to, then capturing the image back to the server in WDS format. But, the point to this is that Microsoft provided a way to do the image upgrades, but the functionality failed right out of the box. Who can fix this? None other than Microsoft only... and this leaves all of its customers standing around waiting for the fix, while driving up wasted time and costs.

Second, with WDS Microsoft provided no way to retain the CD images that were created in RIS, for any operating system below Windows Vista, in WDS format. Whoa... time out... what? Basically here's a summary of what I discovered. In RIS, a nice feature was the ability to capture the installation CD of the operating systems such as Windows Server 2003 or Windows XP, and place the contents of this into a RIS image on the server. This eliminates the need for searching for the installation CDs when it comes time to installing the operating system on a new PC. This is a nice feature of RIS. Also, this allows custom changes to the CD installation as well, so that a complete CD installation can be done with custom settings integrated as well. OK, so everything sounds great until RIS is upgraded to WDS. Now, these CD images can be kept in RIS if WDS is used in legacy (RIS) or mixed mode. But, what about getting CD images in WDS format? This functionality is simply not provided and completely skipped over. Several people did post workarounds to this that were posted on the Internet, however I have personally never found any of them to work correctly. But why is this functionality left out? Well, here's the catch. This functionality IS provided in WDS for Windows Vista and Windows Server 2008! Right away I'm sure you can see where this is going. This functionality is only left out for operating systems before Vista and Server 2008 (like Windows XP and Windows Server 2003, etc). Nice and very clever at trying to push people into using Vista and Server 2008. Fortunately, this can be worked around by leaving the WDS service in "mixed mode", which will provide RIS and WDS functionality at the same time. So, older CD installation images will stay in RIS format, and other images can be created or manually migrated from RIS to WDS. Obviously new images can be created directly in WDS format.

Third, no good documentation was provided for WDS. Microsoft did publish a "step-by-step" guide on WDS, but this document was found to be poorly written and left out many in between steps of how to do things. I have found better luck learning WDS myself and using online forums for support to be easier than following the WDS guides released by Microsoft. I soon found out that many others out there were in the same boat, trying to figure out things on their own due to lack of good documentation. I have seen forums full of many questions and problems with WDS. Some had replies by others with solutions, others were left unanswered.

With all this said, WDS does provide a nice interface for creating new images and modifying them. Also, a console is now used to manage the images (whereas RIS did not have a single administration console). But, to use the full functionality of WDS, you must use Windows Vista and/or Windows Server 2008. I'm guessing operating systems after that will also be supported. At least, for now anyway.

There are a couple of additional gotchas about WDS that I would like to mention before moving forward to the next subject. These are functional issues, which I blame on poor or badly research and engineering at Microsoft.

I do have one part that did make me laugh about WDS. I also ran into another issue during the implementation of WDS where after sysprepping any laptop would cause the mini-setup for Windows XP to freeze for about 10 minutes when booting up for the first time. It freezes at the part of mini-setup near the tail end of the network setup. This became slightly annoying after a while as it was starting to waste time having people sitting around waiting for a laptop to finish installing, at a point that should take no longer than a couple minutes, was now taking upwards of 10 minutes or so. So, after a little research I found a posted article on Microsoft's website, KB835362 to be exact. Here, this article addresses this very issue. But the kicker and what made it very comical is the workaround for this issue. As quoted from this article:

"To work around this behavior, wait for the network configuration to complete. This process may take as long as three minutes."

To me this is hysterical! Instead of addressing the issue of why this happens, Microsoft says to just wait and everything will be wonderful. How nice! In this very same article, Microsoft's so-called cause is: "If the network adapter driver does not respond promptly, the Client for Microsoft Networks will wait for the synchronization with the network adapter driver to complete. Windows may appear to stop responding during this process.". So it's the driver's fault? I have seen this happen on every single laptop computer with a wireless card in it. To me this just doesn't add up. But, rather than wasting time wondering why, I have moved on to bigger and better things, and just dealt with it being the way it is.

OK, so I've talked about all of the faults of WDS but explained that it can work with a few minor glitches or workarounds. My point in bringing this up is that almost all Microsoft software is closed source. This means that nobody except Microsoft can enhance this or fix the gotchas mentioned above. So, we must all live with the way it is, and either wait for a fix or use it as-is. Open source can be modified by anybody at any time.

With this being said, I have yet to identify a good product for Linux that does nice image capturing. As with most open source software, there is more than one way to handle a specific task. There are utilities such as tar and dump/restore that can capture an entire hard drive to a remote file or a tape drive. There is also a product called "Ghost4Linux" that is known to capture an entire computer's disk to a remote location as well. And, lastly, the program that I have started to use (with great success) is Bacula, which has in-depth documentation on how to capture a computer for complete disaster recovery. None of these products have a pretty interface to use, but they are effective. I would be most interested in using Bacula, as it is a complete client/server backup solution all in one package. I haven't tried this yet but if I do I will update this document with the findings.

The examples above in my opinion are living proof of how effective the unlimited number of developers with Linux and the open source community is far superior to the limited number developers with Windows and Microsoft. And, they are also good examples of why Microsoft customers are continually faced with bugs, glitches, difficult upgrades/migrations, and other miscellaneous problems.

A Simple (or not so simple) Software Update Example

As I have mentioned already, open source software is distributed worldwide among many many distribution points or what we call "mirrors". This means that anybody that wants to download Linux or any open source program, can connect to any mirror site and download it directly. The same concept applies for updates. For instance, I am a die hard Fedora fan, so when Fedora releases any sort of update I usually read up on it and optionally download it. I have yet to have any issue downloading an update due to bogged down servers. All downloads go quick and easily and I have it installed and on my way to an updated system very quickly. But, in the world of closed source Microsoft, updating software is not always as glorious and quick as it may seem.

Just today as I'm writing this, Microsoft released their monthly security updates and patches (it's the second Tuesday of the month). I figure, I might was well go and download the updates since they are available. Well, this task ended up wasting over an hour of my time. My first visit to http://update.microsoft.com locked up Internet Explorer completely. Keep in mind if you want to use another brower like Firefox, you will spend more time downloading patches individually and applying them since Microsoft makes their automatic web-based updates proprietary for Internet Explorer only (it uses an ActiveX plugin). I guess this is OK since if you are already in Windows, you will always have Internet Explorer there to use since it's integrated right into Windows.

In Linux, you can simply visit the Software Updates application and browse for updates and install them within minutes. Apple also uses this same concept in OS X. But, back to my experience. The second time around I finally got past the first step which prompted me that I needed a "software update" in order to continue. Unfortunately I had no other option but to comply and click "Install" and wait another 5 minutes for it to download and install this mysterious update. Finally, when that was done, I got an error page saying there was an "error on page" and it just sat there. No instructions on what to do. So, I just gave up for today, I'll check back tomorrow. My initial thinking is that these problems were caused by Microsoft's servers getting slammed because of the security updates that everybody has to download and install. It seems that Microsoft has ONE distribution point for their software updates, since they need to keep a tight hold on their software. This might be good for Microsoft, but it's not so good for its customers who need the updates, especially to fix critical issues. Again, a delay can be seen in these updates as I have previously mentioned.

Microsoft update error
The Microsoft Update website displaying an error probably because of a heavy load on the servers which cannot handle the request.

Just after I published the errors above, another widespread Windows Update problem crept up. This time, random users started getting a "403 - Forbidden: Access is Denied" error when trying to update Windows via the Microsoft Update website. [8] This time the problem was coded as the "403 Update Bug". Nobody really knows for sure what caused it or what happened, Microsoft was completely silent on the issue. However, it appears there was some sort of web server problem at Microsoft that caused the error. Luckily, a few bloggers posted a solution which was to manually install a proprietary update component called the "Windows Update Agent", which is a browser plugin for Internet Explorer only.

So, there is definitely a bottleneck of some kind at Microsoft for getting the latest software updates. To me, this doesn't give me a great feeling, especially if I need to get an urgent update or fix a security problem. On the flip side, when I want to download an update for Linux or pretty much any open source product, I can easily and very quickly get it from the nearest software mirror. Software mirrors are basically identical servers spread all over the Internet that contain the exact same contents. So, when somebody attempts to download a file, they can obtain it from whichever server is closest (and fastest) to them. This is an extremely efficient model which is also used for many other things besides software updates. Take for instance DNS (domain name services or domain name system, whichever your preference), which is the backbone of the Internet host names (i.e. website names, email addresses, etc.). There are what we call "root servers" that are the main servers of the entire Internet's DNS system. These "root servers" are spread all over the world, similar to how software mirrors are, and therefore make the DNS system very efficient. After all, they are the backbone of the Internet naming system and therefore make up the Internet as we know it.

When you buy a new electronic device for example, and you need to call for help, would you rather be on hold for 45 minutes, or 5 minutes? If Microsoft ran the company are calling, you may be on the phone for 45 minutes because there is only one channel of support and you are forced to go through that channel or you won't get any answers. The company may have a limited number of employees and may just not be able to handle the high volume of calls. You know what this is like, we have all been on the phone before and have had to wait and wait on hold for something. Who wins in this situation? Really nobody. The consumer probably gets a bad image of the company because of the wasted time on hold and frustration of their product.

Now, take the opposite approach on the situation. If the company has an unlimited number of people to handle the volume of calls, there would never be a hold time since the callers would be able to connect to somebody right away since somebody would always be available! Unfortunately, there is no such company that has an unlimited number of operators ready to take your call. But... this type of scenario is exactly like how the open source community is organized. Software download mirrors are located all over the world. This opens the door and allows Linux and open source users to immediately get their software updates or download new software. Downloads can be verified for authenticity to ensure they are not compromised or modified by anybody. Distributions such as Fedora publish their list of trusted software mirrors directly on their website. This system has been used for decades and has already proven itself over and over again with high success.

It Isn't Funny

Not only have I seen failures like those mentioned above in my years in the IT profession, but if you talk to others that use Windows, you will soon discover a common similarity among all Windows users... all have seen its quirks and ugliness from day to day use. In fact, it is so common to see Windows quirks and problems that jokes about them have spread over the Internet. The example below is just one of those examples. The fact is, those that use Windows have all become accustomed to seeing its software faults on a regular basis, and figure it is just the norm to see them. But... if you step back and think about all of these issues and problems, should they really be tolerated as "normal"? What if software were to work 99% of the time without quirks like this? Obviously nothing can be 100% perfect, but there are degrees to how close to perfect the software can get. This is where comparison of Windows to Linux can get quite interesting, as in my personal experience, Linux excels over Windows in this aspect.

For all of us who feel only the deepest love and affection for the way computers have enhanced our lives, read on.

At a recent computer expo (COMDEX), Bill Gates reportedly compared the computer industry with the auto industry and stated the following.

If GM had kept up with technology like the computer industry has, we would all be driving $25 cars that got 1,000 miles to the gallon.'

In response to Bill's comments, General Motors issued a press release stating:

If GM had developed technology like Microsoft, we would all be driving cars with the following characteristics (and I just love this part ):

1. For no reason whatsoever, your car would crash......... Twice a day.

2. Every time they repainted the lines in the road, you would have to buy a new car.

3. Occasionally your car would die on the freeway for no reason. You would have to pull to the side of the road, close all of the windows, shut off the car, restart it, and reopen the windows before you could continue. For some reason you would simply accept this.

4. Occasionally, executing a maneuver such as a left turn would cause your car to shut down and refuse to restart, in which case you would have to reinstall the engine.

5. Macintosh would make a car that was powered by the sun, was reliable, five times as fast and twice as easy to drive - but would run on only five percent of the roads.

6. The oil, water temperature, and alternator warning lights would all be replaced by a single 'This Car Has Performed An Illegal Operation' warning light.

I love the next one!!!

7. The airbag system would ask 'Are you sure? before deploying.

8. Occasionally, for no reason whatsoever, your car would lock you out and refuse to let you in until you simultaneously lifted the door handle, turned the key and grabbed hold of the radio antenna.

9. Every time a new car was introduced car buyers would have to learn how to drive all over again because none of the controls would operate in the same manner as the old car.

10. You'd have to press the 'Start' button to turn the engine off.

PS - I'd like to add that when all else fails, you could call 'customer service' in some foreign country and be instructed in some foreign language how to fix your car yourself!!!!

Please share this with your friends who love - but sometimes hate - their computer!

An Internet joke that has circulated since Windows 95, depicting the everyday faults and quirks of Windows.

The Latest and Greatest Isn't So Great

Recently all over, there is much talk about Windows Vista now that it has been out for almost a couple of years. But how is it going for those that have installed it? The results are mixed, but there have been a LOT of horror stories published, and from my research, almost too many of them. Not only were there failures when Vista was first released, but Microsoft tried to patch things up when it released Service Pack 1 for Vista. But, this service pack brought even more problems to a large group of customers that installed it in hopes of fixing the problems with the initial release of the software. Evidence is everywhere that Vista has turned into a huge can of worms both for Microsoft and its customers.

I guess you can argue that this can happen whenever you make a jump into a new operating system. But why does each version of the operating system have to consist of such vast changes so that people are forced to make leaps and bounds from the previous version? Is Microsoft needing to make such vast improvements because of shortcomings? My personal belief is that Microsoft has over time learned by its own mistakes, and has tweaked its own software over and over again with each new version. If you ever have a lot of spare time, just go ahead and start doing some searches on the Internet of users with Vista, and the frustrations that go along with it. Not to mention that Vista is a huge resource hog and requires a PC that is at the most 2 years old or newer. I will get into this a little later on the minimum requirements and high hardware costs. Many companies are dragging their feet bigtime, in upgrading from Windows XP to Vista. Other companies are seeing the light and realizing that there are better options out there such as Linux, and are migrating away from Windows completely to save themselves from being drawn under. This seems to be even more common in recent times where economic conditions are not so great.

Now, to be fair I have also installed the latest and greatest version of Linux, too. Most recently, I have installed Fedora 8, 9, and most recently 10. So, you are probably assuming that it has similar issues to Windows there it's more bloated than the previous version, has quirks to be ironed out, etc. Well, the truth is, it doesn't. The main differences that I have noticed is that versions of software contained in each version are slightly newer with the newer releases of Fedora. Of course, each version has a newer version of the Linux kernel as well to support the latest and greatest hardware. Performance is identical. Now, nothing is perfect, and I acknowledge that. Especially since Fedora is slated as "beta" software by its supporter, Red Hat. But, remember that even thought it's "beta" software, the entire open source community is supporting it which means that any issues will be identified resolved rather quickly. Even though Fedora is actually beta software, it is in reality enterprise grade and stable software. I will get more into my findings with Fedora 10, and some quirks that I identified and resolved later.

Windows XP downgrade
The Windows XP Downgrade option for Windows Vista, offered by Dell

So, having the latest and greatest should be all good, right? Consider this: Take a look at Dell systems on Dell's website, they now offer a "Windows XP Downgrade" option. Say what?? A downgrade option? This is no joke. Now, you tell me, if Dell is offering a downgrade option, there is seriously something wrong about this supposedly pretty picture of Windows Vista. Well, it turns out that Vista is not everything that Microsoft has it cracked up to be. This shouldn't come as any surprise. Now that Vista has been out for a while and more people have started using it, more are realizing that it has some downfalls behind its pretty front face.

On one hand, I feel a little bad for computer hardware vendors as they are caught in the middle between Microsoft and their customers who are using their hardware with Microsoft's software installed on them. Unfortunately, Microsoft has the better end of the bargain since Dell is responsible for supporting the computers. How often have you called Microsoft about a problem with their software for a home computer? Probably never, because the vendor is responsible for the support. Corporate users are more prone to calling Microsoft directly instead. Thankfully, Dell does understand this and does offer some limited open source solutions (and have been for quite some time). Dell offers servers with Red Hat Linux, and home computers with Ubuntu Linux. This sounds great, but unfortunately they do not run any sort of major deals on these systems like they do with the ones with Vista.

Wait, Didn't We Go Through This Once Before?

More recent posts now show that Microsoft is turning its head from Vista and focusing on yet another release of Windows, now called "Windows 7". What? But wasn't Vista supposed to be such a huge leap forward, and now customers who went out and purchased Vista, are now supposed to upgrade yet again and buy the even newer version? Microsoft has even admitted that Vista was a "learning experience", and that Windows 7 will make improvements where Vista lacked. Microsoft's Steve Ballmer himself said that Windows Vista is a "work in progress", which further backs up the fact that Microsoft knowingly sold what I would consider beta software, and is already looking away from Vista and on to Windows 7. Thankfully I personally did not purchase Vista, nor do I have any plans to. The decision was made for me actually, because I do not have any hardware that is beefy enough to run Vista with ease. The very ironic thing about this is that consumers of Microsoft products had just been through this very same experience in 1999, when Microsoft released the infamous Windows ME. Users of Windows ME will no doubt recall the huge list of problems, glitches, and strange issues with Windows ME since it was quickly rolled out and was soon shoved under the rug by Microsoft. The subject of Windows ME could be researched in further depth, simply doing a little searching on the Internet on it, will yield a list of the issues that marked it one of the worst operating systems ever released by Microsoft. Many consumers which were forced to buy Windows ME on new PCs were then stuck with it, left without much hope other than trying to buy the best alternative at the time, Windows 2000 or to wait out until Windows XP. And yet again, forced to buy something to replace what they already bought shortly before. I feel especially bad for the consumers that tried to stick with Windows ME and just use it as-is. This experience left a very sour taste in the mouth of faithful Microsoft consumers. Could Vista be yet another repeat of this disaster? It definitely has many signs the Windows ME failure, but thankfully I don't think it's nearly as serious. But it definitely proves to me that Microsoft is still learning from its mistakes of constantly switching directions with its software. Linux on the other hand moves (and has been moving) in ONE direction, which is forward. No backtracking and constantly changing gears like Windows.

Further Windows Shortcomings

As I just described, it seems that Microsoft almost expects its customers to follow it like lost puppies and buy buy buy. Buy Windows today, buy Windows tomorrow. I guess it's nice to be on the cutting edge, but constantly having to pay for upgrade upon upgrade is not a winning situation from the consumer's standpoint. Fortunately, with Linux, upgrades are not nearly as drastic from version to version because they are just not practical from a functionality standpoint. And, all upgrades are and always will be FREE. Yes, loading up software with lots of bells and whistles is good for marketing, but not so much for functionality, which Microsoft seems to ignore. Linux is very modular in design, so that you can start with a basic setup, and easily expand upon that and install additional free software as you need. Yes, some Linux distributions are released one upon the other, some quite frequently after the other (6 months to a year sometimes). And yes, the upgrade process of installing one version over the top of another is not always a pretty sight... but there is no push to upgrade. Windows upgrades on top of the other are even worse. Recall that since the Linux developers are essentially unlimited, current versions of many programs are packaged for older distributions of Linux. I can still find the latest software like Mozilla Firefox, Thunderbird, and others, that are packaged for my Red Hat Linux computers that are 7 years old. Yes, and it's pretty common to find programs such as these still released for older versions of Windows as well. However, some proprietary Microsoft released software is only supported on the latest versions of Windows. Yet ANOTHER ploy to help prod Microsoft customers into upgrading Windows. This can be a huge headache as this forces consumers to upgrade the Windows operating system, in order to install a newer version of Microsoft software.

Unfortunately, I have first hand experience of trying to use a newer version of Microsoft software on an older Microsoft Windows operating system to back up the point just mentioned above. A year or so ago I attempted to upgrade Microsoft Money 2004 to Money 2007, since 2004 had suddenly stopped working for doing online price updates. No errors came up, so I just assumed it was because the software was a few years old and online updates were no longer supported. All was fine and dandy, until I found the final roadblock in that Microsoft did NOT support Money 2007 on any operating system older than Windows XP. Wait... time out. Am I saying that I cannot install Money 2007 on Windows 2000? Correct! This is unbelievable, or is it? What on earth does Windows XP have that Money needs that it can't get in Windows 2000? Well, that is still a mystery to me, which I will probably never find the answer to. One would think Windows is Windows, and a Windows application should install on pretty much any version of Windows. Money will flat out not install on Windows 2000 or any version earlier than that. Unfortunately, upgrading from Windows 2000 to Windows XP was not an option in this case. So, it was decided to steer away from Microsoft Money and look at a 3rd party product called Quicken, and buy yet another program which thankfully still supports Windows 2000. Unfortunately, Microsoft lost one more customer since I had been a user of Money since Money 98. They finally gave me a good reason to look elsewhere.

Look Out, It's Bloated!

There have been statements going around saying that Windows seems to be more bloated than its previous versions. And this is totally true. In reality, software does need to be updated to keep up with the times. And thus, hardware follows the same path as well. However, Windows has made a huge jump in required hardware to run it, with the release of Windows Vista. To be fair about it, Linux has also grown over the years and requires more system resources than previous versions, however the jump is not even close to that of Windows when it comes to the amount of resources required. I get into the topic of added hardware costs that are incurred because of this in a later section of this document.

As they say, the proof is in the pudding. And with the next release of Windows, Windows 7, the signs of being bloated is ever present. The most notable example of this is the latest trend with netbooks. These are small and lightweight laptops, designed to be less resource intensive and therefore good for a lot of Internet programs such as web surfing, email, and basic Internet tasks. They are also less expensive than full laptops which makes them appealing for those that travel and don't want a lot of extra weight or baggage. Most netbooks today either come with Linux or Windows XP. The current numbers show around 90% run Windows XP, and around 10% run Linux. Some vendors have attempted to install Windows Vista which has resulted in massive failures because of the resource hungry nature of Windows Vista. Most recently it has been attempted to run Windows 7 on netbooks which has also proven to be quite a discouragement for Windows users. So, Microsoft has announced that future netbooks with Windows 7 (slated to be called "Windows 7 Starter") will only allow up to 3 programs to be open and running at the same time. Time out... am I joking here?? Unfortunately, the answer to this is "no". It's true, Microsoft is limiting the number of programs with their next operating system for netbooks to 3 programs at once. This is a true sign that even Microsoft knows that Windows is bloated. And their solution is to limit the users who are running the software, rather than try to make the operating system more efficient to the point that it does not have these limitations. This has boosted the use of Linux on netbooks which is perfectly capable of running on them, without any such limitations.

Another boost to Linux on netbooks is Windows' inability to use the ARM architecture of netbooks, which is a low voltage architecture designed to save power and extend battery life. Windows is currently reported as "incompatible", however Microsoft has hinted at the possibility of Windows 7 as being compatible. Meanwhile as most would expect, Linux is fully compatible now with the ARM architecture. I also touch on another issue very similar to this in the next section, that deals with the amount of memory (RAM) that Windows and Linux can use.

So, back to this netbook example, we can clearly see that Windows is becoming bloated, while Linux remains to stay efficient in its resources needed to run. This adds to higher costs of running Windows when compared to Linux because more hardware is needed, which I will touch on in more depth in a later section. This also demonstrates how users of Windows are actually limited in functionality right out of the box, in order to try and compensate for the bloated nature of Windows. These reasons and more should give Linux a boost in the netbook market, especially in 2010 when Windows XP will no longer be available on netbooks. Right now, Windows XP does run efficiently on netbooks which is the only reason Windows is on them. It has already been proven that Windows Vista, and probably Windows 7, will either not run very well, or will have severe limitations in functionality. Luckily most desktops and laptops now come with enough resources to run the latest version of Windows. But, with that being said, since Windows consumes a higher amount of resources when compared to Linux, it leaves less room to grow in years to come when using the same hardware. My prediction is that Windows users will probably soon find their resources being maxed out on their computers, while Linux users will be able to use the same computers for many more years to come, without these issues.

Help, I've Lost My Memory

Recently I came across another disturbing downfall of Windows. Let me size up the whole situation for you from the beginning. This one has to do with 32-bit and 64-bit architectures, on the Intel platform. Since the 1980s, the Intel platform has been 32-bit. This platform has worked well all of these years and is still used today. But, a few years ago Intel started releasing 64-bit architectures. What are the benefits? Well, mainly speed and expandability. For instance in this example, the 32-bit Intel architecture was originally designed to use up to 4 GB of RAM (memory), and that's it. The 64-bit Intel architecture can use quite a bit more than 4 GB of RAM. So, you're sold on 64-bit already? Well, don't move forward quite that fast. Yes, 64-bit has its advantages that's for sure, but it's still not been around long enough so that it does have its quirks about it. So, even today, 32-bit is the most stable platform as far as applications and software go, because they have been developed and stabilized over a longer period of time. So, retaining 32-bit functionality is quite important, at least for now until more software is written and tested on the 64-bit platform.

 

Full PAE on Linux (6GB RAM, 32 bit)
My quad-core Linux system running in native 32-bit mode, using all 6 GB of memory with Intel PAE.

Luckily, Intel found a way to increase the maximum memory of the 32-bit architecture by introducing something called Physical Address Extension, or PAE. Essentially what this does is allow 32-bit operating systems to address up to 64 GB of memory running on a native 32-bit architecture. This is a big deal. This allows users to continue using 32-bit computers with 32-bit operating systems and programs, yet take advantage of more memory and surpass the infamous 4 GB limit. If the motherboard in the computer supports it, up to 64 GB of memory can be used from a 32-bit operating system.

This is where I will point out a serious flaw in Windows XP and Windows Vista, that has been lingering around for quite some time and is even still present today in the latest version of Windows. Even with enabling PAE in Windows XP and Vista, neither of the operating systems can use more than 4 GB of memory. Essentially what this means is that Microsoft for whatever reason, has never gotten these versions of Windows to correctly use PAE that Intel designed to allow more memory to be used. The worst part from Windows' perspective is that developers of the Linux kernel successfully implemented PAE, and Linux can use up to 64 GB of memory without any hassle. Again, Microsoft has fallen short on implementing functionality in its Windows operating systems. For some reason though, Microsoft has successfully gotten PAE working in some of its server operating systems. While this partially makes sense since servers generally can require quite a bit of memory compared to desktop computers, there are many times that desktop computers should be able to use more than 4 GB of memory. Many desktop models today come with 4, 6, 8 GB or more. Take for example the need to use more robust applications like AutoCAD, Solidworks, virtual machines, and other intensive applications. In this case, using more than 4 GB is essential.

If you want to use Windows, you are forced to use the 64-bit version of the operating system in order to successfully use more than 4 GB for desktop computers. As I mentioned already, running the 64-bit version can be very painful. The 64-bit operating system can run 32-bit applications, but device drivers for Windows must be 64-bit; 32-bit drivers cannot be used with a 64-bit operating system. This can cause a lot of problems, not only for reliability since 64-bit versions of drivers are usually not as widely used, but that they also require the vendor to write a 64-bit version. Essentially, at this point you are at the mercy of the vendor to write the driver, unless Microsoft decides to write the driver itself, but there is no guarantee. With Linux, you do not run into this issue since the drivers are almost always written by the developers that work on the Linux kernel. This means that many older devices have drivers available for a 64-bit Linux kernel, which greatly broadens the backwards compatibility. However, with the 64-bit Linux kernel, it is not used as widely so you can still run into similar issues where drivers and software may not be as reliable as the 32-bit versions. However from my experience, using the 64-bit Linux kernel has a high success rate.

The chart below shows the memory limit for various popular operating systems today, mainly Windows, Mac OS X, and Linux. Note that only higher end Windows Server operating systems fully support PAE and 64 GB of RAM on 32-bit platforms. Since the Linux kernel doesn't have multiple editions, it simply and fully supports PAE, whether it is on a server or a workstation. This is a high success story for Linux, and a confusing and sorry story for Windows.

Operating System Maximum Memory Limit
Windows 2000 Advanced Server 8 GB
Windows 2000 Datacenter Server 32 GB
Windows XP 4 GB
Windows Server 2003 Enterprise Edition 32 GB
Windows Server 2003 R2 (or SP1) Enterprise Edition 64 GB
Windows Server 2003 Datacenter Edition 64 GB
Windows Server 2003 Standard Edition 4 GB
Windows Vista 4 GB
Windows Server 2008 Enterprise or Datacenter Edition 64 GB
Windows Server 2008 other editions 4 GB
Linux 64 GB
Mac OS X 32 GB

What Goes On Behind Closed Doors

We've all heard of the many issues and problems with Microsoft's latest version of Windows, Windows Vista. I've already pointed out many and will point out more as we go. The issues of Windows Vista actually go into much more depth from the basic issue of Microsoft releasing what seems like beta software, that is almost as if it is unfinished but yet pushed out the door. Well, read some more on Vista and you will soon find out there's a huge amount of information about conspiracies within Microsoft about how Vista was released too soon, before many loopholes had been closed. There are published reports of Microsoft executives themselves admitting that there were items within Windows Vista that knowingly would not work, but the product was shipped anyway. Some well known and published facts that are pretty interesting about Vista:

The full text of this message can be found on many websites [9]. When you realize what Microsoft has knowingly done with Vista behind closed curtains, it should prove to be quite upsetting, especially for those that have spend their own money on Windows Vista. The evidence above is proof that Microsoft knowingly released beta quality software and charged a premium price for it. This is not right.

I am sure that more similar cases could be found by simply looking around in the Internet some more. My whole point is that one minute Microsoft is hyping up its latest operating system and other software, urging its consumers to buy buy buy now. The next minute, it's admitting mistakes with this very same software, and looking to the next version to be released to fix all of its mistakes, and requiring its consumers to buy the next new version and pay for its mistakes!! Unbelievable. Personally, I have become tired of paying for Microsoft's mistakes and am moving on to something better, WAY more affordable, and FAR less bloated: Linux. Linux is released right on time, without deadlines to meet for marketing purposes, without hype, without rushing to push a product out the door. This is a winning situation for the users of the software, as quality is put before quantity.

More and more companies and individuals are finally seeing the light. Even Federal Government Agencies such as the U.S. Department of Transportation (DOT) and the National Institute of Standards and Technology (NIST) have openly published statements that they are disallowing Windows Vista completely from their network of 54,000 people, due to problems with the software and high cost. [10] Dell is offering a Windows XP Downgrade. Users have even started a petition to demand that Microsoft extend the July 2009 deadline or end of life date for Windows XP because they feel that Vista is not an option. [11] Time will tell if Microsoft actually listens to their customers and lifts the Windows XP deadline. The evidence is out there, that Vista is failing miserably and the public is realizing this and suffering from it. The fact that all of these events are taking place tells me there is just something drastically wrong here. Users should not have to revolt against the operating system's maker. They should be using their computers for what they were meant for! This whole scenario has signs of a dictatorship which I pointed out previously in this article, where Microsoft is the dictator and controls its customers. Microsoft has had more than 20 years to learn how to release an operating system to the public's benefit, and still to this day cannot do so without causing turmoil. This has prompted many to look for other options, and has given open source software and Linux a fighting chance to start spreading through to more homes and businesses to fill this void.

 

Is Windows Mutating into Linux?

OK, so I have probably covered just about every angle of Windows and Linux, the advantages of Linux and open source. One of the most comical moves that I discovered in more recent times is with the latest server operating system yet from Microsoft. Microsoft Server 2008 is looking the most like a Linux operating system than ever. If you find time to read up on Windows Server 2008, note the many "new" features that they boast about. A powerful command-line shell. Hm, it seems to me that Linux was built on a powerful command-line shell, no? And how about "server roles with only the necessary components and subsystems without a graphical user interface" (taken directly from the Microsoft product information pages for Server 2008). Is this Windows we are talking about, without a graphical user interface? Is Windows NOT supposed to be a graphical user interface anymore? Check out more products such as Exchange 2007, which Microsoft has actually taken out functionality from the graphical user interface and included it in the command line interface. It might be just me, but it looks as though Microsoft is realizing that having an operating system that is primarily based on a simple design with an optional graphical interface isn't such a bad idea. Funny that this is Linux definted to a T, and has been for many years since the earliest of its life. This can account for the high success of Linux in the server world.

It might be a little overdramatic, but I am seeing more and more of Microsoft picking up Linux ideas and adopting them, yet bashing Linux at every chance they can get to try and improve their sales. If you read more on articles of Windows vs. Linux, you will notice plenty of articles hosted on Microsoft's own website. But, count how many you see on other hosted websites, I am guessing that number won't be too high.

In more recent times, Microsoft started releasing products under the Common Public License (an open source type of license invented by IBM). In 2007, Microsoft founded its Shared Source program [12] and started to allow the source code to be distributed for a select few products. Microsoft's own website quotes: "The principles behind Microsoft's Shared Source philosophy include empowering customers and developers to be more successful, improving feedback to continually improve software...". Hm, this sounds vaguely famliar, doesn't it? Ah ha... very similar to the open source concept of the GNU General Public License! So, even Microsoft which over the years has been completely closed source, has started to open its doors, although so far it's been only opened a crack. Most of Microsoft's products are still completely closed source. It will be interesting in the future to see Microsoft's stance on open source, especially with its own products. I think it is definitely evident that Microsoft is feeling the pressure from the open source community because it is starting to adopt some of the concepts of open source that have been out there for years.

Next Section : Maintenance Headache

Previous Section: A Little Politics:Web Browser Wars, Web Application Wars

 

Table of Contents
 

 

Click Here to Continue reading on making the actual migration.

 

References

8. Yahoo News: Windows Update '403' Bug Found, Plus a Solution

9. Wikipedia : The GNU General Public License

10. Federal Agencies Ban Windows Vista Due To Compatibility Problems Several Other Issues

11. The "Save XP" Petition against Microsoft

12. The Microsoft Shared Source program at microsoft.com