> Read/print this article in Adobe Acrobat PDF format.
What's So Bad About Microsoft?
Table of Contents
From a Software User's Perspective
Why is it that Microsoft's products keep mushrooming in size with each new release always requiring significantly more disk space and more processing power than the last time? They might claim it's because of all the new features they add each time,
but that's only half the story. The new features and the increased processing requirements are designed to fuel the process of perpetual upgrades. This is Microsoft's way of rubbing Intel's back so that Intel will give Microsoft preferential treatment
when it comes out with new chip specs. It's also Microsoft's way of convincing consumers that their newer product versions are better because they are so much bigger. Their new features are often superfluous but users must still deal with the overhead
required by the features even though most will never use the features.
- CNN has a good article which explains why bloat is such a bad thing. Unneeded features make products more cumbersome to use and the addition of new features often sacrifices the
performance (and sometimes the integrity) of older features. Why not stick with an older version of the product then? Two reasons: 1) you only get customer support if you stay current and 2) if you need to work with other people using the same program
older versions are often incompatible with newer versions, so if anybody is using the newest version then everybody must upgrade.
- "The Bloatware Debate" is a technical discussion of how two separate people dissected one particular Microsoft program and found out, to their shock, that it was over 2,000% larger than it should have been.
It would appear from this discussion that the cumbersome size of Microsoft programs is due not only to the continually growing clutter of useless features but it is also due to careless programming (perhaps to an even larger degree).
- Did you realize 486's are still useable machines if you're running something other than Microsoft's latest software? For instance, Linux worked great on 486's back when they were the top of the line and amazingly
enough it didn't stop working on them once the Pentiums came out. Yes, Linux has evolved since then to take advantage of more powerful computers, but the latest version of Linux will still work well on older equipment. There are also plenty of other operating
systems that work equally well on machines that Microsoft has abandoned support for. Don't let your old equipment gather dust - older machines make great IP Masquerading routers (which allow you to connect multiple
computers to the internet at once using only one phone line or cable modem) or great machines for checking email and chatting online. If you can't use your older equipment yourself, rest assured that somebody out there (such as your local school) could
put it to very good use. Don't write it off because Windows doesn't run on it.
Also contributing to Microsoft's goal of putting everybody on a perpetual upgrade cycle is the backward incompatibility in Microsoft's products. Once a small number of users adopt a new version of a Microsoft product all other users are pressured
to upgrade lest they are unable to interact with files produced by the newer program.
- Dan Martinez summed up the situation created with the incompatibility in subsequent versions of Word when he said "while we're on the subject of file formats, let's pause for a moment in frank admiration of the way in which Microsoft brazenly built
backward-incompatibility into its product. By initially making it virtually impossible to maintain a heterogenous environment of Word 95 and Word 97 systems, Microsoft offered its customers that most eloquent of arguments for upgrading: the delicate sound
of a revolver being cocked somewhere just out of sight." (cited from the quote file) For a more detailed lament of how Microsoft likes to pressure its customers to keep buying the same product over
and over by using backward incompatibility, see Zeid Nasser's page on 'Forced upgrading,' in the World of Word.
It's pretty obvious why the concept of perpetually upgrading is a bad idea for consumers. Perpetual upgrading encourages Microsoft to ship bug ridden products because they can always charge for the upgrade after the bugs are fixed. Case in point,
Windows 98 is essentially a bug fix for Windows 95 but those who paid for Windows 95 still have to pay for what should have worked right the first time they bought it.
Whenever Microsoft spies yet another potential market which it thinks is ripe for taking over it generally announces its intention to move aggressively into that market. Microsoft frequently announces new products for these markets that they will
ship soon regardless of whether or not they have any genuine interest in actually shipping said products. What this frequently leads to is that people stop buying software in this market because they want to wait for the Microsoft version. Unfortunately
if Microsoft sees the market drying up they usually just walk away and never deliver their promised products. The end result is that the small software companies in these markets take a very big hit and frequently go under while consumers end up without
their promised product.
- Caldera has an excellent description of how Microsoft uses vaporware to "curtail adoption of competitive products by deceiving end users" along with an unfortunate example
of how Microsoft's blatant lies led to consumers forgoing the adoption of a superior, available product in anticipation of Microsoft's non-existent product (i.e., a DOS-less
consumer Windows which still doesn't exist as of this writing [August, 2000], well over half a decade later). Caldera's entire paper is highly recommended reading.
- On October 9, 1996 Bill Gates gave a speech at Unix Expo Plus. Unix is typically used within the industry on high-end systems where reliability is key and Microsoft at the time was pushing Windows NT as an alternative for mission critical systems.
In the typical Microsoft style of touting some feature as just around the corner so as to downplay the present differences, Mr. Gates stated that "next year Windows NT will move up to take advantage of that 64-bit address space". Those who fell for that
promise had to wait much longer than a year to get the promised support that they gave up by foregoing existing Unix products that had this high performance feature at the time. It was not until over four and a half years later, on May 29, 2001
that Microsoft announced an available 64 bit version of Windows (i.e., Windows XP 64-Bit Edition). References: [Mr. Gates' Speech] [Microsoft
Hostile treatment of customers
In the past, Microsoft has fueled its amazing growth by leveraging its way into new markets in order to acquire new customers. The problem that Microsoft has been facing recently is that they have come to dominate so many different markets that there
are not enough markets left (where they can leverage their monopoly power) that can be captured for the purpose of sustaining the growth that their shareholders require. Consequently, Microsoft has turned its sights back on its existing customers. Microsoft
is finding creative ways to wring more money out of its existing customers, often times with hostile results. Now is the time to switch to Microsoft alternatives so that you can escape the Microsoft auditors who can make more stringent demands on you than
the IRS (because you agreed to these demands by accepting Microsoft's EULA, or End User License Agreement).
- One example of Microsoft's hostility to its existing customers came in September, 2000. Microsoft demanded that the Virginia Beach government account for all copies of Microsoft software
that were in use within the government and provide proof of purchase for each product. The reason? "Nick Psyhogeos, a Washington, D.C.-based attorney for Microsoft, said the firm has found that government agencies sometimes inadvertently acquire counterfeit
software." There was no mention of a reason why this particular city government was singled out - they were not investigated because of something which they did to arouse suspicion, but simply because they were a large organization that Microsoft hoped
they could frighten more money out of. The city was presumed guilty until proven innocent and this cost the tax payers a great deal of money as the city reassigned 25 percent of its technical work force to work specifically on the task of generating the
information demanded by Microsoft.
- Microsoft has recently added "features" to its software in order to prevent unlicensed use, and users are already crying out at the negative effect this has had on usability and reliability.
- David Coursey from ZDNet has written about his personal experience of being deprived of the use of his legally licensed Microsoft software at the worst possible time
because of Microsoft's over-zealous "anti-piracy" measures.
Microsoft tends to kill off competition by drawing on resources supplied by its OS monopoly to completely out-spend its competitors, by using its customers' dependence upon existing products to force new products upon them, or by buying its competitors
outright. Probably the most publicized (but definitely not the first) example of Microsoft's leveraging of their monopoly power to take over new markets is their dealing with Netscape. Microsoft spent millions of dollars creating a competitor to Netscape's
web browser and then gave away the browser for free in an attempt to drive Netscape out of business. Not only did Microsoft give its browser away for free but it also spent money on promotions so that people who switched to their browser would get other
things for free - Microsoft was essentially paying people to use their web browser. Microsoft would not have been able to do this if it did not have a monopoly on the OS market and Netscape had no possible business defense on this because you can't make
money when you have to pay people to use your products.
To make matters worse for Netscape, Microsoft used their influence with full force to prevent OEMs (an OEM is a computer maker such as Gateway or Dell) from putting Netscape on any of the computers they shipped. Microsoft told OEMs that they could not
uninstall Internet Explorer and install Netscape's Navigator even when customers asked specifically for Netscape or they would lose their Windows licenses. For OEMs, losing their Windows licenses would essentially put them out of business, so they had
no alternative but to submit to Microsoft's demands. So, Microsoft used their absolute control over something that OEMs couldn't do without (Windows) to push a totally unrelated product (Internet Explorer) into more places than customers wanted and keep
other products (Netscape Navigator) out even when that's what customers wanted and what OEMs wanted to give them.
Finally, Microsoft has a habit of killing off competitors by either buying them or their technologies. Once again, a good example of this is shown with Microsoft's foray into the web browser market. Microsoft was late to catch on to the fact that the web
was going to revolutionize the way people used computers and once they finally woke up they were dangerously close to having their Windows monopoly destroyed by the greatly reduced importance of operating systems that a web based paradigm would produce.
They needed to do something fast. They allegedly tried to carve up the market with Netscape by getting Netscape to agree to stop making Windows web browsers while Microsoft would only make Windows web browsers. Fortunately for consumers, Netscape did not
agree to the deal and the web was saved from becoming a Microsoft only technology as surely would have happened. But this made it even more urgent for Microsoft that they reign in this new market right away while it was still time. Lacking any decent technology
of their own, Microsoft licensed the Mosaic web browser from Spyglass which they turned into Internet Explorer. So the weapon that Microsoft fashioned in their attempt to defeat Netscape wasn't even their own, but technology they bought from someone else.
This was not a one time thing, but a recurring habit of reaping the rewards for other peoples' work which started way back in the beginning when Bill Gates bought DOS (no, Microsoft didn't even create the product that was the seed for their entire monopoly).
- Here is a fairly complete list of all the companies and products that Microsoft has swallowed with its ever increasing appetite for total market domination.
- Yes, Microsoft royally screwed over Spyglass by licensing their code and then turning around and giving it away for free. This obviously made it a lot more difficult for Spyglass to sell other licenses since their potential customers could just embed
Internet Explorer for free. Not only did Microsoft destroy Spyglass' existing market, but Spyglass also accused Microsoft of not paying the required royalties on the code that
they licensed. Spyglass has since been relegated to a niche market, and it is interesting to note that they don't even mention Internet Explorer as one of their accomplishments in their showcase.
- Microsoft forced major internet web site operators to agree not to promote Netscape Navigator and to forego any business relations with Netscape if they wanted featured placement on the
Windows desktop. Yes, you read that correctly - Microsoft didn't just ask for preferential placement of it's own products, it demanded that its competitor's products not be promoted at all. So the next time you hear Microsoft say that they are for consumer
choice be aware that they are lying through their teeth.
- Even the mighty Compaq feared Microsoft and curtailed business relationships with Go Corp and Netscape under pressure from Microsoft.
- Why don't you see any computer vendors offering to sell computers that have Windows and some other operating system installed (this is referred to as a dual-boot system)? Considering that many non-Windows operating systems, such as Linux, are
free and have excellent, free tools that would be useful to certain types of people (for example, engineering students), you would think that many OEM's would jump at this chance to differentiate the computers they offer. However, the fact of the matter
is that they can't because the contract that they have which Microsoft allegedly forbids them from offering a non-Windows operating system as a boot option. (This contract is not available for the public to read because it is classified as a "trade
secret" - Microsoft has gone to great lengths to keep its strongarm tactics hidden from the public.) References: [Byte Article]
Bundling of inferior products
In a desperate attempt to try and kill Netscape, Microsoft "integrated" its browser into its OS (well, not really, but that's what they claim in order to get the US DOJ off their back). What this meant for Microsoft was that they got to keep their monopoly
for a little bit longer, but it had much more dire consequences for consumers. It meant that consumers were now stuck with a very buggy browser and file system viewer because Internet Explorer was such a rush job.
The buggy browser wouldn't have been too terrible since most people were still smart enough to use Netscape anyway, but Microsoft replaced the standard Explorer (the file system viewer) with IE which left users nowhere to hide from the bugs. If you use
Internet Explorer today, be aware that for a significant period after it was introduced it was very unstable and clearly inferior to the competition, but if you wanted to use Windows you had to use IE anyway because it was made a core part of the system
(i.e., the file viewer). The lesson to be learned is that by using Microsoft products you are putting yourself at the mercy of having pieces of your system which work relatively reliably (by Microsoft standards) ripped out from under you and replaced by
something broken and inferior every time they find a new competitor they want to kill.
- The January 16, 2000 edition of the Daily Wrap and Flow gives a good summary of major Microsoft components which were bundled with Windows in order to kill competition and which
were clearly inferior at the time of their bundling. Specifically listed are GUIs (in response to Quarterdeck), DOS (bundling practically killed DrDos), disk compression (used against Stac), networking (used to thwart Lantastic, Novell and others), Java
(in an attempt to wrestle the language from Sun Microsystems) and Internet Explorer (extremely aggressively bundled so as to obliterate Netscape).
Bugs, bugs, and more bugs
Did I mention that Microsoft's products tend to be full of bugs? I'm sure you know this if you've used any Microsoft products to any great extent. It's pretty sad that people have accepted things like rebooting daily because the OS crashed as a part
of computing, but that's probably because they haven't seen the alternatives.
- System administrators who have had experience with other operating systems know that Windows is a nightmare to maintain. For a taste of what these people must suffer through read this insightful usenet posting by one
frustrated sys admin. He describes some inexplicable problems that crop up in Windows and the vastly inadequate support that Microsoft provides when they arise. Especially interesting to note is the catch-22 that Microsoft puts its users in by refusing
to give technical support when the user follows the instructions in Microsoft's own "knowledge base".
Microsoft's products are notorious for their security holes. Security holes in Internet Explorer and Windows NT have been widely publicized and are now accepted as a common occurrence when announced. The public has become largely desensitized to new
security holes which is unfortunate because it means that a widespread attack on users' systems is not only possible but quite easy. If it's not such a big deal for you that security isn't a top priority for Microsoft because you don't keep sensitive information
on your computer, think again - if your computer is taken over it could easily be used for such devious tasks as trafficking child pornography, trafficking pirated software, or emailing death threats to the president. What's worse is that any such activity
would point to your computer and you would have no way of proving that somebody else did it because Windows does not keep logs.
With its .NET strategy, Microsoft is essentially attempting to transform itself from a consumer software company into a bank. They want to hold all of your personal information and charge you every time it is used (you will be charged indirectly through
the merchant you purchase goods from in a way similar to how merchants must pay the credit card companies each time you make a credit card transaction). This is going to make a bad situation even worse if Microsoft maintains its track record for insecurity.
While the consequences of using insecure consumer software are bad, the consequences of using insecure software that manages your financial and personal information are much, much worse. This reason alone should be more than enough to avoid Microsoft's
products as their intention is to have .NET permeate everything they release which means that a security problem in an obscure part of .NET could leave all of your software vulnerable even if you are careful about avoiding .NET features.
- This News.com article does an excellent job of explaining the root of a lot of Microsoft's security problems and why there are so many security problems. The basic idea is that old code
at Microsoft is continually retro-fitted for uses other than what it was originally designed for and as a result problems which were originally annoyances and harmless bugs become gaping security holes. In particular, Microsoft's retro-fitting of all its
legacy code to work with the internet opened up a proverbial Pandora's box of problems.
- Microsoft's problems with .NET started to show through at a very early stage. Hotmail users got a surprise in November 2, 2001 when they learned that simply reading their email left their financial data "wide open" and easy to capture. While experts
said that the particular exploit that was used was easy to fix, it nonetheless was the result of a "inherent flaws" that would be a "pretty complex task" to fix. Reference article: [CNet
From a Technical Perspective
It is commonly known that Microsoft's applications are given an unnatural performance advantage on Windows because they take advantage of secret APIs which give them the extra speed they need. It's rather disturbing that Microsoft can't compete on
a level playing field and feels the need to tip the field because they own it. What's even more disturbing is that they are willing to sacrifice stability and good design principles by "integrating" applications with their OS just to make their applications
Mutilation of existing standards
Unfortunately, it's not enough for Microsoft to make up its own standards which it keeps unpublished. It also feels the need to hijack existing standards and break them especially if it will help them keep their OS monopoly. For example, Microsoft
felt threatened by the Java standard because it was OS independent so it attempted to twist the standard into something Windows specific, all in the name of giving customers what they want.
- News.com has an excellent article on Microsoft's holy war on Java . Read it and you will marvel at how Microsoft can ever say with a straight face that they do things for the good of
their customers. That article is only the beginning, though. Check out Thomas Winzig's site dedicated to exposing Microsoft's Java strategy.
- Whether it was intentional or merely an act of incompetence is unclear, but several Microsoft products were built to output broken HTML (the language used to create web pages). When viewed with non-Microsoft products, the resulting HTML appears to
be filled with grammatical errors. John Walker gives a good explanation of the situation on his page containing a short program to fix the problem.
- Kerberos is a technology created at MIT to make it easy for users to securely prove who they are. As an example, instead of having to enter a password for every program or web page you want to use, you would enter your password once when you begin
your session with the computer and then Kerberos would take care of authenticating you everywhere else so that you don't have to re-enter your password over and over. This is a bit of an over-simplification, but suffice is to say that Kerberos is very
useful and very well designed.
Kerberos, as with most MIT software projects, was made freely available for anybody to use and integrate into their software. In typical Microsoft style, Microsoft took the Kerberos standard (which they got for free, mind you), integrated it into Windows
and then changed it to be incompatible with Kerberos on every other platform. If that wasn't enough, they refused to freely release details of the changes that they made so that other platforms could be made compatible with their Windows "extensions."
After much complaining from the tech community, Microsoft eventually released a spec for their changes, but in order to access it you had to agree to a license stating that it was a trade secret (yes, they wanted to claim trade secret protection
on something they had mostly gotten for free from MIT)! Some people eventually decided to ignore the license and publish what changes were made anyway, which prompted Microsoft to threaten legal action. (Note: Microsoft did eventually allow public access
to their changes after much outcry. Nonetheless, their Kerberos implementation still does not allow appropriate interoperability with standard Kerberos software.) Reference articles: [Slashdot
article #1] [Slashdot article #2] [LinuxWorld article]
Lack of innovation
It's disgusting how Microsoft portrays itself as the supreme innovator when just about all the technology that it has was copied off of others' previous work. Think about all the major innovations in CS technology and then count how many of them were
developed by Microsoft. I count zero. This is because Microsoft admittedly does not enter a market until the potential amount of money to be made in it is fairly large.
From the Perspective of Everybody Else
Attempts at taking over appliance markets
When computer chips started popping up in more and more appliances Microsoft couldn't bear to see a potential market for software that it didn't control so it threw together something called Windows CE. What they don't understand is that people are
used to reliable appliances and they won't put up with the level of unreliability that accompanies most Microsoft products in their appliances. I for one absolutely do not want Windows driving my car. I encourage you to never buy any product which uses
Windows CE so that this threat doesn't spread.
Attempts at buying the public's trust
Microsoft's fierce competitive nature has alienated everybody in the industry to the point where voluntary supporters are virtually nonexistent. For quite some time Microsoft has resorted to buying public endorsements and there have been documented
incidents of Microsoft employees posing as normal software users in public settings without revealing their true identities. And these are just the incidents that the public has found out about - who knows how many cases have never been exposed for the
false endorsements that they actually are? So when you see that rare instance of Microsoft support you need to seriously question whether it is genuine.
- Microsoft's recent "astroturf" campaign fortunately blew up in its face. The astroturf campaign was Microsoft's attempt to create a grassroots movement in its legal
battle against the DOJ by paying people to show public support. It was referred to as astroturf rather than grassroots because the support was completely fake.
- MSNBC is also an obvious attempt by Microsoft to buy the good publicity which it does not deserve.
- During Microsoft's 1999 anti-trust trial there were reports of Microsoft encouraging its employees to post messages in public forums stating that "Microsoft is responsible for all
good things in computerdom" and that "The government has no right to prevent MS from doing anything. Period." It's pretty sad when the only people you can get to support you are those that depend upon you for their daily sustenance.
- The Steve Barkto incident was what opened a lot of people's eyes to the practice of Microsoft employees mis-representing themselves in public forums. This is a must read because it
offers hard evidence that this practice has in fact taken place at Microsoft.
The examples of Microsoft's outright deception are numerous and well documented. Everybody should be very concerned about this regardless of whether or not you think it directly affects you because it does affect you. Allowing Microsoft to get away
with fudging its way to the top only encourages every other company in existence to do the same while discouraging companies from giving you the whole truth that you need in order to make informed decisions as a consumer and that you have a right to as
a member of a civilized society.
This is not even close to an exhaustive list of examples and there will be many more examples added here as we get the time to sift through our news archives.
- Microsoft submitted doctored video in anti-trust trial - Microsoft claimed that they accidentally used the wrong video in this case. OK, so they accidentally
grabbed a doctored video instead of the real video!?!? Does that sound anywhere near plausible to you? I hope not. (Alternate Article #1) (Alternate
- And they did it again - Microsoft did not learn its lesson and submitted two more videotapes which were successfully shown to be misleading.
- Regarding Microsoft's bundling of Internet Explorer and Windows - Microsoft continues to insist that Internet Explorer is part of the operating system and it was made that way to benefit consumers despite testimony
to the contrary from Microsoft's own executives. However, inside company walls you're likely to hear a different story. In an obscure patent application Microsoft's
own lawyers stated "It should be understood by those skilled in the art that a Web browser, such as Netscape Navigator or Internet Explorer, ... is separate from the operating system." So make up your mind already, Microsoft.
- Microsoft's flip flop on Java - This was an unfortunate example of Microsoft's embrace and extend strategy that impeded what would have been a great technology. Java promised to make it simple to write programs that would run on any computer
regardless of whether or not that computer was running Windows and many people were pleasantly surprised when Microsoft announced that they would fully support this new technology and
would not "extend Java in ways that would be proprietary to Windows." It was only much later, to the dismay of many Java developers who had actually believed that Microsoft was acting out of goodwill, that Microsoft started leaving critical pieces
out of the version of Java which it shipped as well as replacing those critical pieces with code that would only work on Windows thus negating one of Java's primary advantages for the sake of keeping their Windows monopoly. Developers
banded together to beg Microsoft to live up to their original promise but Microsoft's response was very mocking, reportedly saying that "anybody riding on Java is... hanging on
a limb." This was a far cry from their original promise to fully support Java. Of course, they made that promise back when they were desperately trying to gain market share for their fledgling Internet Explorer browser and they certainly wouldn't have
achieved their current market share without Java support, so now that they have what they wanted it's ok for them to go back on their promise, right?
- Microsoft caught with pants down over hardware IDs - Windows 98 must be registered and when registered it sends an ID to Microsoft which can uniquely identify your computer's hardware. What's worse is that if during registration you tell Windows
not to send this information which can be used to track you on the internet back to Microsoft it does it anyway. Microsoft insisted that this was a feature to aid customer support when users call in with problems, but after much pressing they admitted
that it wasn't really necessary. So why is Microsoft interested in tracking people that use Windows then? The Register postulates that it is for marketing and anti-piracy purposes that Microsoft
is willing to invade your privacy under their over-used guise of helping the customer.
- Microsoft code has no bugs - In an interview with a German magazine called FOCUS, Bill Gates stated that Microsoft code does not have any significant bugs and he blamed the so called "bugs" on
user error. Wow. This is frighteningly reminiscent of double-speak from 1984. Microsoft is in fact known for incredibly buggy software. Lest you think otherwise, Word should
not crash when it is simply being used, IE should not crash when it is simply being used, and Windows should never crash just because a program it is running has performed an "illegal operation". These are just the tip of an enormous iceberg, but
they are the most obvious bugs which anybody who has ever used Microsoft products for an extended period of time has run into. Don't let Bill Gates try to bully you into thinking Word crashing is your fault for not knowing how to use it - Word completely
dying because you did something "wrong" would be the equivalent of your car stalling because you didn't adjust the rear view mirror to be perfectly centered with the rear window.
Common Defenses of Microsoft Debunked
Microsoft is ahead because their products are superior
Microsoft's products are generally not superior. As an example, Windows is more bloated, much less stable, less secure, much more expensive, and lacking much of the capabilities of Linux, one of its competing operating systems. The real reason that
Microsoft is ahead is that their marketing is superior and because they leverage their existing market share to keep consumers locked into Microsoft specific solutions.
Microsoft should not be punished for its success
Of course it shouldn't be punished for its success, but it should be punished for using predatory practices to out muscle competition in a way that would not be possible if they did not have their monopoly. The best way to punish Microsoft
is to use the alternatives to their products. A fringe benefit of using alternatives is that you will generally end up with much better software.
KMFMS welcomes thoughtful contributions for addition to this page and the KMFMS website in general. The people listed below have made significant contributions to this page. If you would like to contribute to this page or to the KMFMS site in general please
send your additions to us using our comment form. We are particularly looking for well documented examples that illustrate the points on this page as well as clear explanations of other points we may have missed.
- Timothy W Macinta was the initial author and remains the primary author and editor in chief of this page.
- Allan Stojanovic contributed quite a few links with accompanying summaries.
- Franklen Kin Shing Choi has contributed many links and suggestions as well as a Chinese summary of this page.
Above article is mirrored with permission. Copyright Timothy W Macinta of KMFMS. The original KMFMS content may be found at http://www.kmfms.com/.
Alternatives to Microsoft's Products
Microsoft's Really Hidden Files
Adobe Acrobat PDF version of this article.