And of course there is an element of truth in the accusation, I am very anti Microsoft. I am afraid that in my personal experience the quality of their software is well below the standard that it should be, given the amazing state of the equivalent hardware industry. It is all summed up for me when most non-professional users of PCs that I come into contact with can't believe how difficult the software is to use and in particular how awful Word is.
But is this all Microsoft's fault? The answer is no, it is the fault of the IT industry in accepting second rate, simply because the "packaging" made it easier. As a result, with no objective criticism coming from professionals who should know better, the users simply followed like lemmings; anything being better than old typewriters, dumb terminals, etc. The effect was simply to enable Microsoft to create a monopoly. And that is a key point, it is not Microsoft per se that is at fault, it is the dreadful problems that a monopoly, any monopoly or cartel, create that is the problem. I have no doubt that in on open market Microsoft, with their vast wealth, would be able to produce better products and still be a leading supplier. As it is their major revenue stream comes from forcing users to buy new releases whether they need them or not. Could any company really justify the expense of the upgrades to desktop PCs over the last few years? I doubt it.
However while I will stand by my open antagonism to Word et al in the office environment, the same is less true in the server and development tool market. Here there is competition. The corporate world has strongly told Microsoft that it is not going to be trapped into a monopolistic system for core business applications. In the area of Application Servers it is Java based tools that are being preferred to Microsoft's .NET products. The obvious reason for this is not that it is a Sun Microsystems inspired concept (Sun would love a monopoly just as much as Microsoft or anyone else), but because it has been adopted by a wide range of suppliers, including the steadily growing band of cost effective Open Source based systems. Java is not perfect, but it offers choice and forces suppliers to be competitive.
But now this creates a paradox. Microsoft have no chance of dominating the server and tools market as they have done the desktop, but they will nevertheless be a major player alongside IBM, Sun, Oracle, BEA, etc. In order to compete they cannot employ the nasty "upgrades" tricks that they use in Office, but must compete in value, functionality, support, etc.
The key to relative success for Microsoft lies in holding on to the mindset of the current application developers. This is not as easy as it seems at first sight because of a number of reasons. First .NET is significantly different to the older Visual tools, giving developers an opportunity to switch to the Java camp if they feel trapped. Secondly most of the new generation of programmers are brought up in college on Linux and Java; their needs and biases will have an influence. But above all the biggest draw back to going along with Microsoft for application development is the total commitment that is implied to Windows operating systems. This in turn means an equal commitment to Intel processors. And the developers won't be worried about the Intel bias too much, because all the OSS is dominantly Intel based.
Microsoft has done some good things, notably influencing the industry in the concept of an integrated development environment, but also in the support for some standards. No supplier will ever fully commit to standards because that takes away the competitive edge. But now all software suppliers, and that includes Microsoft as much as IBM, Sun, et al, pay more than lip-service to standards. The .NET platform is firmly rooted on XML and associated standards, and just as Sun have been the inspiration behind Java, then Microsoft are making some attempts to have their own systems accepted as standards.
The biggest influence for the good then is e-commerce. Since there is no chance of Microsoft (or any one else) dominating, then just as the applications are about inter-company working, then the software systems must also inter-work. Everyone has a vested interest in making the standards work at last!
Martin Healey, pioneer development Intel-based computers en c/s-architecture. Director of a number of IT specialist companies and an Emeritus Professor of the University of Wales.