You’re either with us or you’re against us


I’m sure most of you have had those annoying conversations with folks on a topic where that person views things in black and white. I definitely get annoyed when this pops up in politics for instance, and it’s often times insulting. Anyone with knowledge of the subject knows it’s never that simple, and when people talk it black in white you wonder whether they don’t have enough knowledge themselves, or if they aren’t giving you enough credit. Lately, I’ve seen this approach used in discussions around the file format, and it’s pretty annoying. For example, there are a handful of very vocal “anti-OpenXML” folks out there who would like you to believe that you have to decide to be either pro-ODF or pro-OpenXML. This is obviously a ridiculous point of view, because it leaves no room for those who are pro-XML formats in general.


I view myself as both pro-ODF and pro-OpenXML. I still remember when we were working on our XML formats for Office, and Sun announced that the next version of StarOffice was going to use XML formats as their default format. I thought this was very cool. We were working on WordML at the time, and I had spent a lot of time thinking about how we could transform WordML into other formats like HTML, DocBook, etc. I thought that the arrival of the StarOffice XML formats would be another example of how XML formats immediately raise the significance of Office documents. The only thing I was disappointed in was that the version of Office we were working on at the time (Office 2003) was only going to offer XML as an alternative format, and not the actual default. It wouldn’t be long though before we felt there was enough value that we made the decision to build default XML formats. I have a post here that goes through the history of both ODF and OpenXML for those interested: http://blogs.msdn.com/brian_jones/archive/2007/01/25/office-xml-formats-1998-2006.aspx


I know that a number of folks out there have thought we are anti-ODF because we don’t natively support the format in Office. I can understand why people have that impression. Microsoft is a big company with a lot of resources, so for many folks it seems like the lack of support for a technology implies there was a malicious decision to not support that technology. The thing you need to look at though is the entire ecosystem. There are a number of formats out there I would love to have native support for in Office. For instance, it would be cool if we had native DocBook support in Word, or XBRL support in Excel. At the end of the day though, we need to pick features that will have the most widespread positive impact, and allow Office to be extensible enough that 3rd parties can build the vertical solutions on top of it. There is no way we can build everything people request. Remember that we have 400 million customers out there, so even a request from a large organization can’t always be met directly. That’s why our partner ecosystem is so important. We often rely on those third parties to help tailor the product to meet the more specific demands of our customers.


Remember that ODF wasn’t even a blip on most people’s radar when we started working on Office 2007. It had been submitted to OASIS by Sun and was being worked on by a small group of folks. There were only 2 people who attended more than 75% of the meetings (Michael Bauer from Sun and Gary Edwards who was an independent). At the end of the day though, they pulled off some really great stuff, and it’s really a credit to them. They dramatically raised awareness for open formats, and XML. While ODF couldn’t work as the default format for Office, it definitely could serve as an alternative format if that’s what folks want.


When we made the decision to go with XML formats as the default for Office, I thought our biggest problem would be backward compatibility, and general end user pain. I never in a million years thought there would be folks who would actually claim the OpenXML formats weren’t open enough. I know there are folks who have a more religious view on what “open” means, but for me it’s pretty simple. There are a key number of things you want to be able to do with a format (as I described here). We’d had people for years demanding that we better document our formats, and the work we did for Office 2007 went so far beyond those folks were asking for. Not only were we going to fully document the formats, but we were going to switch into a format that was significantly easier to develop on (XML as opposed to the old binaries). Unfortunately a handful of the pro-ODF people out there feel that they also need to take the anti-OpenXML position. This isn’t necessary though, as OpenOffice, Corel, and Microsoft Office have all shown the move to support both.


So, the next time someone asks you if you’re pro-ODF or pro-OpenXML I hope your answer will be “yes.” I know mine is.


-Brian

Comments (21)

  1. Yes, indeed.  I support both ODF and OpenXML.  I understand why ODF wasn’t added as a native format originally due to time/budget/resource constraints .  I was glad to see that Sun is coming out with a free add-in that will allow ODF as a native format when plugged into MS Word, so I also look forward to your inclusion of that functionality in an Office 2007+ update, now that it will be readily available.  I am also encouraging IBM to add Open XML formats to their productivity editors as soon as a plug in is available that will work with them.

  2. Democritus says:

    ODF is just an extremely good idea from almost any viewpoint. There are few arguments against it and those tend, as you’ve noticed, to be partisan.

    I’m glad to see this happening throughout the industry in so many vectors. If it spreads any further I’ll be able to publish my novels using opendrm, in openxml, with odf.  😉

    Demo

  3. Actually, it has little to do with the format support in Office, and everything to do with what top Microsoft executives say when you say Linux. Last nugget was Ballmer talking about suing Linux users for IP violations since "Every copy of Linux uses our IP".

    You guys can, and do, come up with kick – ass solutions, try to make interop easier, but when the mouth at the top is full of foot, then none of it matters.

  4. Stephane Rodriguez says:

    Wow, I can’t find a single sentence of truth in what you say. Whatever you are smoking, I want some of it.

    By the way, you still owe me an explanation on what you meant by "CleverAge’s plugin is complete", although anyone taking the time to really use it will come with the conclusion it is not.

    Let me explain to your readers the trick you have been using for at least two years (virtually, since your first Channel9 interview).

    You adopted ZIP (borrowed from the OpenOffice guys). It does not really matter to remind others that you took a lot of credit out there for something you merely adopted.

    What’s the trick then?

    Obvious.

    Anyone can crack-open this thing, and say they can read and write since the parts are accessible.

    Why is it a trick? because it gives a false sense of open. Reading and writing, by hand or with code, is not a replacement for understanding the semantics of Office documents.

    Semantics? 15 years of Microsoft legacy, plus all the new stuff that was introduced in the 2007 timeframe.

    Not much of that is documented in ECMA 376. If ECMA 376 included the above, we would be talking a 600,000+ page spec.

    One example. The chart drawing engine. It has changed completely (I am not talking about the fact you added bevel options, and stuff like that). It has changed so much that even Excel 2007 cannot open in "full-fidelity" an Excel document created with an older version.

    Are those changes documented?

    Of course they are not.

    One counter-example is enough to silence the claims you have made for two years now.

  5. Stephane Rodriguez says:

    In this blog post, http://osindia.blogspot.com/2007/02/ooxml-and-open-standards.html, Doug Mahugh (your partner in crime) said "(…)If you have an interest in the Open XML formats, why not talk to respected Indian technology firms that are working with the formats, such as Sonata or AztecSoft or others?(…)"

    Sure, it does not help that :

    1) AztecSoft is paid by Microsoft to help test the CleverAge plugin

    and

    2) Sonata software is paid by Microsoft to help grow a (false) sense of community over at openxmldeveloper.org

    Ah aha ahahah, caught the hand in the bag.

    PS : for those who did not know, Doug Mahugh is also the guy who bribed an "XML expert" Rick Jetliffe to edit Wikipedia articles without being seen.

    So much for being the good guys…

  6. Chris_Pratley says:

    Hey Brian. No kidding. "never in a million years" is right. All that work and then you have guys come along and smear you.

    I wouldn’t bother replying to Stephane if I were you. Honestly, where in the ODF spec does it describe the layout engine rules to be followed by implementors of ODF? Nowhere. Now that’s a big dose of "truthiness". Straight from the gut – unburdened by fairness or facts.

    And ZIP was "borrowed" from ODF, as if no one else had used it before in the last 20 years to keep a set of files together. Talk about damned if you do – if we had used SVG as ODF guys want, then we’d have "borrowed" that from ODF too. Different choices from ODF: bad. Same choices: bad. Mr. Rodriguez, have you no shame?

    Keep on rockin’ Brian.

  7. Alex says:

    I think there’s a big difference in the demands you saw. People asked you to document your file formats; you did that, but only by creating an entirely new file format.

    I find your XML file format timeline extremely interesting. For example, the same month that OASIS standardised OpenDocument, Microsoft announced that it’s new formats would be the default. Would Mirosoft have done that without the pressure that OpenDocument created?

    For years you’ve been able to define your formats as you please. You’re still trying to do that with OXML, even if it is documented – you want to maintain control. You’re realising that’s not going to work in the future, though. OXML being standardised isn’t about choice or market demand: it’s about whether again an office file format can be authored by a single vendor, or whether it will be developed under the control of a standards organisation (even now, Ecma do not have control over OXML – they have to maintain Office 2007 compatibility).

  8. Francis says:

    Well put, Brian.

  9. Sherwin Amiran says:

    Brian,

    I think one of the big issues, and the primary "non-partisan" complaint against OpenXML is that there are a good number of tags which are defined as, "Open (insert archaic application here) and copy that behavior".

    In order to fully implement OpenXML, one needs to be able to replicate the behavior of Word 1.0, Wordperfect 3.0 for Mac OS 8, and a host of other older apps.

    Don’t you agree that this stuff doesn’t really have a place in a standard? Instead of saying "replicate said behavior", why not document how Office 2007 implements that behavior? Obviously, internally, you guys know what is going on, otherwise you wouldn’t be able to implement that tag.

    *shrug* If Microsoft would provide addendums to document that behavior, it would resolve 99% of the complaints against OpenXML, including the complaints that IBM is making to the standards bodies.

  10. Once again, the "in order to fully implement" argument.

    The only reason an application would WANT to fully implement the spec is if it was trying to be an entire office suite.

    If IBM wanted the ability to import and export OpenXML spreadsheets from DB2 tables, do you think that the developer tasked with the job would say that it was impossible without ensuring that it could support import and export from Word and Powerpoint?

    Stephane: Why are you so annoyed, don’t you make money by selling software to create old and new version Excel files? Why don’t you withdraw your sofware in disgust and use your considerable talents creating a component to create ODF spreadsheets instead?

    Anyway, market forces will have the last word on this argument, either way.

    Gareth

  11. hAl says:

    @Shwerwin Amerin

    The the deprecated tags make it possible for implementing aplication to informa their users that exisiting converted files might have used alternate rendering when creating the file. Especially informative for documents that need rpinting fidelity.

    They do not require any cloning of behaviour. It would be difficult to define a difference in redenring behaviour as both the Office formats does not prescribe how to render the regular tags.

  12. Gareth – Are you suggesting that it is inappropriate that somebody else should want to build "an entire office suite"?  After all, a standard is there to be implemented, and there are now multiple "entire office suites" that implement ODF.  Of course that is why the complaints are there.  If the only purpose of the specification is to use, create and consume documents, spreadsheets and presentations that are used with Microsoft Office, then it is not a standard, it is just a specification of that one suite’s formats.  Making it a standard assumes that somebody else might want to make "an entire office suite".

    – Ben

  13. hAl says:

    @Ben

    Building an entire Office suite takes many thousands of hours.

    There will probably not by many full office suites (10 or less). It might well be that the OOXML spec is 5% more difficult to implement or that ODF is 5% more difficult but a much bigger difference between applications in cost of implementation is the support for non format stuff. For instance supporting multiple embedded formats, the support for scripts and the support for java or activeX objects.

    Noone is just waiting for an Office suite that just implements the basic standard office format. They will pick the Office suite on the ability to offer extra functionality and more and more the ability to comabine data from different sources in Office documents. bot standard have excellent support for embedding stuff but those relativly little parts of standard could cost half the total implementation time to incorperate.  

  14. @hAl – I am fully aware of how much time it would take to build an office suite.  My point was that Gareth was minimizing the impact of the deprecated elements by implying that people wouldn’t be building complete office suites.  If they are not, why the standard?

    Of course, there are better arguments defending the deprecated elements, but his does not make sense.  That is all I was saying.

    – Ben

  15. Scot says:

    The blogosphere can certainly blow some things out of proportion, over time the motivations of microsoft have rarely turned out to be altruistic, maybe predatory would be a better adjective.

    I know microsoft is a great place to work but step back and think if you were outside of the company, and think about why microsoft didn’t involve themselves in the ODF development to further a new  standard, instead stand on the corner and complained about it . Maybe it isn’t for altruistic reasons but rather predatory reasons that you have been allowed to go as far as you have.

    Imagine a day when ODF is dead, and your bosses don’t think they are making enough money on office because the file format is too open. You find yourself working on MSN messenger instead … :)

    Maybe not altruistic but predatory (Netscape, WordPerfect, etc.. etc.. )

    Please forgive me if i am cautious.

      -Scot

  16. Ben-

    I am not saying it is inappropriate to build an office suite, just that it seems the arguments have become so odd, as to say that the spec is useless if you might find it very difficult to build an Office suite based on it.

    I was not aware of all of the implications that the fact that it is a "standard" imbued to it.

    The purpose of OpenXML as a standard is for Microsoft to describe and publish a technical and legal framework for dealing with MS-Office 2007 compatible documents.  Based on Microsoft’s "empirical expertise" in this area (completely dominant for years) the specification should also be useful to other software developers who wish to leverage the spec in some way.  

    As far as I see it, that is all. This has to go through standards bodies in order to ensure that that organizations have no or little risk in Microsoft reneging on this version (I make no assumptions about future versions) to their detriment.  This creates a known (or semi-known) quantity, where previously the formats were inscutable and proprietory.  Whether that is from a technical perspective as regards reproducing these documents in 100 years time, or legally, this is a step forward.  

    Like it or not, most of the worlds business documents are in Office format, so making OpenXML a standard should not necessarily be done because it is a technical masterpiece, it is the de facto standard anyway.  It’s like the Betamax/VHS argument.  Who knows, maybe the XML equivalent of DVD will appear down the line and obsolete these two dinosaurs in 10 years time.

    If you think that you can open an ODF instance in any office suite that uses the standard and get full fidelity rendering, then you will be sadly disappointed.

    Until any indisputable high ground is achieved, neither side can stand on it.

    Gareth

  17. Sam Hiser says:

    Brian-

    This indicates you still don’t get it. An XML format that defeats the purpose of XML is not supportable.

  18. Stephane Rodriguez says:

    Chris Pratley, you need to take a newbie class about OPC if you don’t make the difference between ZIP and MS ZIP used in OPC (where parts become corrupt if you remove one by hand without telling others).

    As for being shameful or not, I’ll leave it to others to decide for themselves. Perhaps you need to inform yourself a bit more on the real world. After all, you are a Microsoft employee.

    And while you do so, don’t forget to tell people here why you chose to implement yet another vector format in OneNote instead of using DrawingML. I guess that’s because you care about customers…

    Those schmucks.

  19. jones206@hotmail.com says:

    Thanks for the comments folks.

    Sam, it would be great if you gave a few examples of what you’re trying to do with the OpenXML formats that currently isn’t working. You said that it defeats the purpose of XML, which I don’t understand. What needs to be changed in the format so that’s no longer the case?

    -Brian