Over time, perhaps I come across as anti-Microsoft. This really is not the case: I am anti-proprietary. Even that is over stating it. I would place myself as anti-proprietary standards. I think that I should be able to do as many things as possible regardless of the platform that I wish to do them on.
Wherever a computer user seeks to communicate with the outside world, my belief is that there should be some Open standard that allows them to do this; whether it be a word processing document that needs to be sent to a colleague or the TCP/IP standard that allows this exchange of document to take place. That’s not to say that the programs that interpret such standards cannot or should not be proprietary, just that the document formats they use should be standard so that I can use a program of my choice to actually view them.
For example, most people would say that OpenOffice is not as pleasant to use as MS Office. This would mean that many people would buy Office over OpenOffice because they are used to it and find it easier to use. Note that I am not talking here about firms who require the advanced interoperability features which Office offers that OpenOffice does not; I’m talking about home users and small businesses who choose to use Office because they like it.
If, say, my parents were to send me a Word document, I am thankful that I have OpenOffice to open it and do not have to worry them about sending it in plain text or whatever. I would not wish to spend the money to buy MS Office at this time (and not because I’m anti-MS!), I just cannot afford it and do not wish to acquire it in some other way.
However, how much development effort has been, in effect, wasted developing the interpreters for OpenOffice to read MS Office documents? That time could have been spent on far more worthwhile things than reverse-engineering the Office file format. If MS had provided the specifications for Office online, available to all, far more productive use of a developer’s time could have been found. Providing a good experience for the user is paramount in many software endeavours and I feel much more progress would have occurred here were it not for time wasted on these things.
I’m not worried if the standard is complicated; difficult to implement or whatever, as long as it is available. Standards for many things are naturally going to be very complicated; the specification for a word processing document produced on as powerful a piece of software as MS Word not being least among these. Perhaps all the features available would not be implemented on all programs, they probably would not need to be, but time would be saved on having to find out what one needs to implement in the first place.
Sometime I lambaste MS as they are generally a very visible proponent of such lack of openness with their file formats; an easy target. They are not the only ones though, and as such should just be taken as an example of the targets of my displeasure.