A Note On Standards + Some Harshing

Standardization, in the context related to technologies and industries, is the process of establishing a technical specification, called a standard, among competing entities in a market, where this will bring benefits without hurting competition.
Some people get standardization confused with policy, and their revulsion for the latter tends to taint their view of the former. This is a taxonomy problem. For instance, your local petty tyrant may tell you "We're standardizing on VB 6" or "We're standardizing on a web template that fell out of the ugly tree and hit every branch on the way down." Those aren't standards, those are policies.*

As a developer, policies will naturally irritate you, even if they are more well thought out than the above examples. They irritate you because policies seek to limit your range of options, and as a developer is a problem solver by nature, any raid into your tool pouch is usually met with a frown.

But a standard is different from a policy. A standard is something you add to your tool kit. What a standard gives you is interoperability - the ability for diverse tools to read, write, or communicate in a common language.

The key to an effective standard is having a body representing relevant industry leaders that can discuss, approve, and record standards. The biggest player in that field is the International Organization for Standardization (ISO).

.ISO Map

ISO is an international standards body founded in 1947. The organization promulgates world-wide industrial and commercial standards. While the ISO is not a government organization, its ability to set standards that often become law makes it more powerful than most NGOs. In practice, the ISO acts as a consortium with strong links to governments.

With the setting laid down, let me first get out a congratulations to GML for becoming an ISO standard (see Slashgeo). From the OGC website:

The OpenGIS Geography Markup Language (GML) Encoding Specification is an XML encoding for the modeling, transport and storage of geographic information including the spatial and non-spatial properties of geographic features.
Now I'm going to harsh on Microsoft.

The world already has an ISO standard document format - ODF. This ~800 page spec lets anyone that wants to read or write to the ODF format do so. The spec is open. For example, Google Docs, OpenOffice, StarOffice, AbiWord, KOffice, and others work with ODF, and you can write a Python script to manipulate your ODF docs if you want to. Open is a beautiful thing.

It’s not, however, a Microsoft thing.

Microsoft jumped into this game when government agencies had problems housing data in Microsoft’s proprietary .doc format. A government has to be able to access data far into the future, and a closed format could endanger their ability to do so. After the infamous Massachusetts case, Microsoft decided money/FUD alone wouldn’t be able to tackle this problem. Rather than working with the existing ODF ISO standard, however, they are trying to make Microsoft’s Office Open XML format (OOXML) an ISO standard.

I wouldn’t be opposed to that on the merits if there were any. The technical problems with OOXML are well documented (patent problems, binary holes, backwards compatibility proprietary garbage, a 7000 page unusable spec, when has Microsoft ever followed a standard, etc.). But Microsoft didn’t rise to the top of the food chain on technical merits.

Each participating country gets a say so in the ISO standardization process (currently OOXML is being debated for fast-tracking to standardization). When the US’s 7 member ISO group became 21 right before the vote for fast-tracking, 13 of the new members being Microsoft business partners and all voting to fast track OOXML, a lot of eyebrows were raised. Still, if it was anybody else, I’d give them the benefit of the doubt.

There is no doubt over what just happened in Sweden’s ISO group. As in the US, lots of Microsoft business partners magically joined the group at the last minute to vote yes to OOXML. In this case, however, some of Microsoft’s communications with their business partners have gone public. Here’s the gist (from the above linked PC World article):

  • In an email Microsoft sent to its business partners in Sweden Microsoft told them they were expected to register and "take part in the meeting on Aug. 27 to vote yes for Office Open XML."
  • Microsoft's partners were also requested to attend more meetings after the vote in order to prove "their sincere participation".
  • For the benefit of those partners that feel that they didn't know enough, Microsoft also provided ready-made reasons why OOXML should be accepted by SIS. "[Partner companies] do not need to discuss the technical contents of the specification, but should be prepared to state some reasons for voting yes -- these will be provided by Microsoft," stated the e-mail.
  • There was a registration fee, 15,000 Swedish kronor (about US$2,000), which Microsoft expected its partners to pay. However, to make up for the outlay, Microsoft offered "marketing contributions" and "extra support in the form of Microsoft resources" to any company that registered and took part in the vote.
I know I like to harsh on Microsoft from time to time**, but this really bothers me. Standards are critical things. The idea that Microsoft, the convicted monopolist, is going out and buying an ISO standard is outrageous, and it does not bode well for document interoperability. I have a dream of one day being able to open the same document in OpenOffice or Word without having my formatting go berserk. It's not in my top ten list of dreams, but it is a dream nonetheless.

If this irritates you too, take a minute and go sign the petition at http://www.noooxml.org/. Better yet, make it a policy to do so.

*Your local petty tyrant will use the word “standard” rather than “policy” because your local petty tyrant (a) thinks the word standard sounds more official and (b) has a limited vocabulary.

**Only because they suck.