Get together my thoughts on OOXML/ODF

An attempt to respond to the latest thing I’ve read and stake out my feelings on ODF/OOXML.

From what I understand of the market, you have a number of (free) add-on ODF plugins for Microsoft Office. This means that the simple requirement being able to read and write the format will be satisfied to the level of quality of the plugins and the ability of the interoperable aspects of the ODF standard to handle office semantics. I feel that the blogoshpere has made it clear that the only way ODF will be able to handle the body of existing office documents (Bugs and features) at full fidelity is for there to be a large number of extensions that would render ODF something not ODF anymore, especially from the standpoint of other ODF implementations. It might be in the vaguely “right” looking container, but it would not be interoperable. Any movement in this space would (rightly?) be branded Embrace, Extend, Extinguish.

I believe it is clear that users want something like OpenXML. We’ve seen that previous movements in this direction by office in the 2003 products are never used because of the loss of fidelity. I’m just not going to migrate my spreadsheets to ODF format if my formulas are going to break, and that is the type of user complaints that you will start to get when you tell your customers you must move over. If you don’t get how complex this type of thing gets, you should start reading Raymond Chen’s blog. It is quite obvious how hostile the ODF crowd appears to be to backwards comparability with the amount of hoopla generated around supporting the 1900 excel/lotus 123 date issues in OOXML.

Could all the the technical issues been worked out in ODF? Maybe. I think the hostile environment, the time required to work on modifications to ODF in an open way and the timeline for the politics and government mandates pretty much precluded that option for the short term. On the brightside, ODF folks can take the out there and free OOXML spec and decide how they want to absorb it for future versions of ODF. Thus somday the promised nirvana of ODF being the native interoperable format of all office suites that it’s supporters want might be realized. In the here and now, there is a pretty cool creative energy that both formats competing right now has created. In an attempt to score points in some insane “Who is Right” contest both sides are pointing out the flaws in the other, and the pragmatists will pick up the real stuff and just make thier stuff better. This is a good thing no matter how ugly the process is to get there.

In the background of this debate, It appears that their are two camps in the world when it comes to this stuff, purists who believe that future technology should be clean slates not marred with the real world and those who muck around in the complex world of user demand and prior work. I have to admit out of college I was very much in favor of the purist view of the world. This little debate is making me realize that I’ve now firmly landed in the other camp. The purist typically ends in the worst hacks and/or low adoption. There are a lot of people out there who use software and just don’t care about the religious battles. It doesn’t matter what your standard is or how you architected the code is, if it doesn’t solve the user’s needs.  Put simply, users are more important then you or I and placing requirements down that are tangential to their needs is just a speedbump for them to roll over. The coders who love and support these users are going to have to help carry forward whatever hack someone came up with to get around the artificial speedbump. The sooner one grok’s this concept the better the world might be.

If ODF solves a user’s needs, they will use it, if OOXML solves it better it will be used regardless of which of them have ISO certification. There is already ECMA certification and good IP promises for OOXML. (The inability to use without IP considerations a file embded in either format is a red herring). It appears that Microsoft is supportive of having OOXML ISO certified, which sounds great to me. If there are considerations unrelated to ODF then they should be fixed, but the notion of which sausage factory produced the 1.0 spec or that you can’t have both formats be standards seems silly to me. Both are too new on the scene to have proven that they are going to be the end all. If anything, office via market share and caring about backwards compatability has a huge leg up.

Disclaimer: I work for Microsoft but nothing to do with office.


2 thoughts on “Get together my thoughts on OOXML/ODF

  1. W^L+

    If a document is saved in an XML format, how is that backwards compatible with the existing binary formats? If Word 97 cannot open it, and it can’t, it is not backwards compatible. Thus, backwards compatibility is not even relevant to the discussion.

    What you are looking for is faithfulness of representation, and an XML (such as ODF) format *can* represent 1/4 inch separation above footnotes (for example) without using "footnoteLikeWeDidIn1995" by simply saying what is intended.

    In the case of spreadsheet formulae, I think that is important, and I would not have moved the specification forward without settling things, but the OpenFormula supplement is already in the approval process and being implemented in (at least) upcoming versions of OpenOffice/StarOffice and KOffice.

    The date thing is simple. Since you are working around an error that Lotus made, you can do that *internally*, so that the error eventually dies out. Instead, OOXML is designed to drag that mistake into the distant future where our great-great-grandchildren will still be dealing with it. There is no need or reason to build that error into the file format for the future.

    With the former Office XML formats, there wasn’t a lot of use because people were already locked into the .doc/.xls/.ppt formats. Most people (other than XML geeks) found those formats to be useless because they couldn’t really exchange them.

    Now, after years of XML hype, the development community and the internal IT resources within enterprises are now realizing that XML formats can make their data more usable for things like management dashboards and long-term preservation. However, no enterprise will want to implement both formats if they can avoid it. If an enterprise has to do business with certain government entities, they are going to have to use the format that said entities use. So far, that format looks to be ODF.

    It will be scary for softies if their pet format doesn’t fly, but the eventual benefit that users will gain is worth a little pain in Redmond.

  2. Ben Langhinrichs

    I tend to disagree about the purist vs. real world distiction. I think backwards compatibility is important, although more so in rendering than in opening, since neither Open XML nor ODF can ever really be backwards compatible with a binary format.

    The problem I have with Microsoft’s direction is not that they created an XML format, but that they went to great lengths to NOT listen to any comments, suggestions, etc. that would have made the format better without sacrificing the compatibility and features. It felt during the process as if they were hell-bent on creating a format that is the easiest possible to implement with the existing code possible, without even making their own lives easier. A good example is the bitwise operations required to set various flags. There is absolutely no reason those could not have been separated out from their original bit-packed flags, but it will make everyone’s life harder, including the Microsoft partners (such as myself) who want to work with the XML. Microsoft just didn’t want to hear any criticism, constructive or otherwise, of anything in the specs while they had a chance to make it better before they released Office 2007. Now, they are stuck forever supporting the mess left in which didn’t need to be. It was somewhat like the problem the U.S. government gets into when Democrats and Republicans can’t seem to even hear each other, and so miss glood, workable ideas that both side could back. Microsoft got into an "anti-ODF" stance during development of the Open XML specs, and any comments which said it could be different were treated as ODF propaganda.

    Now, I don’t suggest ODF is perfect, far from it. It lacks adequate definition of many pieces, especially formulas. But generally, the ODF specs have been open to suggestions and changes. I worry that the political in-fighting will harden the ODF stance until its proponents also act like any criticism is Microsoft propaganda, but it hasn’t happened yet.

    So, unfortunately, Microsoft is going to have to live with the results of its obstinance for a long time. It is just not clear that the rest of the world needs to.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s