"I don’t care about standards, I just want everyone to implement the same thing in the same way”

September 26 2009

Yes it is true - as Doug Mahugh reports on the DII Workshop on Office 2010 Extensions, I did in fact make that statement.

It was a good day at up at Microsoft headquarters on Sept 18th, 2009. We talked about how Microsoft is adding new features and functionality to Office 2010 and the OOXML format. Doug explains:

Office 2010 takes advantage of two types of extensibility mechanisms in ISO/IEC 29500: extension lists and ACBs (alternate content blocks).  These extension points, which are documented in the text of the standard (see Part 3), provide implementers with a standardized way to innovate and add new functionality while maintaining conformance to the standard itself.  The core concept is that an implementer can provide more than one representation for an object (a shape on a slide, say), and then consumers of that document can render the version that they understand.

The workshop featured four presentations on how Office 2010 uses ACBs and extension lists.  Word/Excel/PowerPoint program managers (Zeyad Rajabi, Chris Rae, and Ric Bretschneider, respectively) explained examples from each of those products, and Nick Chiang of the graphics team covered some general concepts about how graphics are handled in Office 2010.  The presentations included demos of various new types of functionality in Office, followed by deep-dive explanations of the markup used to serialize this new functionality.

What this means to those that really following the specifications details is that Microsoft can add functionality to the OOXML format via approved methods - instead of submitting these to the ISO/IEC and waiting for them to be approved. All of these additions can be added to the formal specification if the ISO members desire it. I like this approach - Microsoft is not trying to force the members to take on features that Microsoft wants to implement. Microsoft can add new functionality to add more value - and the greater community can decide what becomes part of the official spec as desired.

My comment above was around the fact that while there is one Open Document Format (ODF) specification, the implementations of the ODF spec are what is fragmenting the use. Microsoft implemented to the letter of the spec. Open Office and the current version of Symphony haven known bugs with their ODF implementation. Google has only implemented a portion of the ODF spec. Apple and others have implementations with issues as well. What we need is a way to measure a product's ODF implementation - just like we use the Acid2 and Acid3 tests to measure a web browser. I am far less interested in the standard itself as I am in the implementation - and how it impacts users. Users do not care about the ODF spec - they care that they can create things themselves, open and edit from others, and share without losing any data. Today, that is very difficult. We must get better.

I was very impressed to see that Microsoft implemented a feature request I made last year. If you turn on 2007 compatibility mode in Word 2010, the features that will not be saved are now greyed out. Want someone to open your Excel work book in 2007 - you can't even create a spark line. Not just some horrible dialog when you go to save the document. Nice work to the Office team.

I really think we are on the verge of a document generation explosion, and heavy use of the ODF and/or OOXML formats. All of this work and discussion is important so that when that explosion happens that products are ready.

Thanks again to Doug and the entire team at Microsoft.