Pro Choice
Rick Jelliffe: I have long-standing bias towards plurality, I don’t think that standards should be about stifling rich computer environments but enabling them: some overlap between standards is good.
+1
There are a number of potential objections to OOXML. It is all too easy for those incented to do so to identify spurious ones in such a list, and thereby discredit the whole.
The anti-choice objections are amongst the weakest.
As wikipedia (currently) reflects: There is little really universal agreement about the usage of either of the terms “open” or "standard". In my mind, the reason for this is simple: the definitions put forward deal with potentialities instead of measurable realities.
I prefer simpler definitions. A standard is one that has multiple, inter-operable, independent implementations. An open standard, at least in the software world, is one where at least one of those implementations is open source.
Even with this simpler definition, a spectrum exists. Web developers tend to find ECMAScript more interoperable than the W3C DOM, at least with respect to ubiquitous extant implementations. Samba is clearly open and yet interoperability (in particular, the potential for future interoperability) continues to be an issue. I would also continue to assert that the classic PowerPoint binary formats fit into this spectrum.
At the present time, OOXML fails to achieve either criterion. Could OOXML potentially foster multiple complete independent implementations? Could OOXML potentially be completely implemented by an open source implementation? Both of these questions are subjects of endless debate. OOXML will continue to be controversial until these issues are addressed.
By contrast ODF undeniably meets both criteria.
may be implemented
That’s an example of a potentiality that I would prefer to avoid. People can (and will) differ at length as to whether or not OOXML (for example) is implementable by anybody other than Microsoft. Until it is actually done, nobody can be sure.
Posted by Sam Ruby atI don’t think an open source implementation is sufficient to call a standard ‘open': what if the implementation is a sprawling mass of code in a language that can’t possibly run in the environment I’m targeting?
My personal definition of what makes a standard 'open’ has long been ‘can I imagine a talented developer building an implementation of this (or at least something useful based on it) in 6 months?’ Most of the really good open standards are also simple enough to be understood and implemented in a meaningful way in a relatively short period of time, while the standards that lack open source support tend to do so because they are too complex for an initial implementation to form; their complexity acts as a barrier that makes the standard appear to be closed or proprietary.
Comparing HTML/XML/CSS with ODF or OOXML is interesting. Both can represent the abstract structure and concrete style of a document, but for me only CSS provides a rendering model that is solid enough to claim it is open. ODF and OOXML require a developer to invest a lot of time understanding the undocumented rendering quirks of the de facto implementation of the standard, taking it well beyond the realm of one developer/6 months.
Posted by Mark Wilkinson atwhat if the implementation is a sprawling mass of code in a language that can’t possibly run in the environment I’m targeting?
My primary issue with most definitions of open is that they accept things with an unproven ability to be implemented in an open source manner by an independent third party, not that the software can run in every niche environment or that some implementation exists that meets some subjective standards of “well written”.
My personal definition of what makes a standard 'open’ has long been ‘can I imagine a talented developer building an implementation of this (or at least something useful based on it) in 6 months?’
I definitively sympathize with this, but it is way to subjective and too easy to skirt. For example, WS-* is a large collection of small standards, each relatively small, and fairly independent.
Posted by Sam Ruby atEspecially the OOXML spec has a lot of stuff that is related to micromanaging esoteric layout bugs and features of legacy apps. What is often disregarded, though, is that the visual exact layout duplication depends on the originator of the document and the recipient having the same fonts and the same font rendering subsystem. Rendering text is so complicated these days that it would be naïve to expect FreeType, Microsoft, Adobe and Apple (to mention the top 4) interoperate 100% even with the same text and the same font file.
Taking a document to a different system with different fonts means changing the algorithm (engine) and part of the input (font) and still expecting the same result! Tweaking the details around this problem is missing the point.
The only format that works around this is PDF which puts the glyph placement on the generator side and ships glyphs and their positions over to the recipient. Of course, the result is final-form with rigid lines. The alternative is taking the HTML/CSS approach and saying that text reflow on the client is a screaming feature and not a bug.
Anyway, trying to achieve PDF-like results (which many people seem to expect from word processing files for some reason) without doing what PDF does is an exercise in futility. You are still hiring Guillaume Portes’ font engine and font portfolio.
Posted by Henri Sivonen atexercise in futility
That may very well be. I particularly like this comment by Maynard Handley.
But it may also be true that reasonable people disagree on that. Even if they don’t, every once in a while somebody manages to do something that everybody else thinks isn’t reasonable. Heck, even HTTP and HTML sound insane when you think about it.
*shrug*
I just don’t see any reason to object to other people spending their resources to pursue their dreams. On that point I agree with Rick.
Posted by Sam Ruby atSam - if a year from now, OpenOffice and other office suites (say GNumeric and others) have support for OOXML (there’s already a lot of talk of this happening) - would you call it an open standard then?
Posted by Sriram Krishnan [Microsoft] at
if a year from now, OpenOffice and other office suites (say GNumeric and others) have support for OOXML (there’s already a lot of talk of this happening) - would you call it an open standard then?
If this support is widely viewed as inter-operable, then yes. In fact, it is likely the quickest path to silencing critics, or at least changing the conversation to tangible terms. If you read my continue to assert link above, you will see that such thinking was the cornerstone of our thought process regarding the open sourcing of IBM’s SOAP4J through the ASF.
Since you identified yourself as associated with Microsoft, please permit me to share an observation / open question. I was once involved with ECMA’s TC39 TG3. In fact, I was the one who encouraged Miguel de Icaza to join.
Mono contains an open source implementation of ECMA 335. The degree to which this implementation is perceived to be inter-operable with Microsoft’s implementation is something that Microsoft could do more to foster, if that is something they truly felt was important.
To what extent does Microsoft want OOXML to be viewed as an Open Standard?
Posted by Sam Ruby atlinks for 2007-01-26
Catching Up My EC2 slides made it to the Amazon blog - cool! (tags: me) Help, My Hard Drive is Full! File-sharing via NAS on a home network with Windows and OS X (tags: toread osx windows) Will Price: The Economics of SaaS: We Need a Platform...Excerpt from Pragmatic Dictator at
Defining Standards
In Pro Choice, Sam Ruby says: I prefer simpler definitions. A standard is one that has multiple, inter-operable, independent implementations. An open standard, at least in the software world, is one where at least one of those implementations is...Excerpt from ongoing at
“To what extent does Microsoft want OOXML to be viewed as an Open Standard?” I think the main question at hand is whether it should be an ISO standard, not whether it is “open”. There are all sorts of open and non-open (by your definition) ISO standards, offered with different intellectual property licensing terms. All sorts of industries manage to function and interoperate via standards that are not open or free. I do agree with the widespread consensus that software / data standards should be open and royalty free, I’m just noting that these questions aren’t particularly relevant to the ISO OOXML debate.
To the extent “Microsoft” has an opinion, however, I’m sure it would disagree with “IBM’s” position equating open standards and open source. The closest thing I can find to an official statement on this is [link] and [link]
“Open” as I personally understand it implies a) open to being understood-- the technology is documented to the level needed for people competent in the technology domain to understand, evaluate and implement it; b) open to implementation by 3rd parties without onerous license conditions (that’s the point of the Open Specification Promise); and c) open to change ONLY via the standards body’s process, e.g. the original submitter can’t rev the underlying spec and claim that it is a “standard”. That’s not as simple as Sam’s definition, but I think it’s more robust, and more in line with actual industry policy and practice. For example, some hypothetical spec that is “open” by this definition and has multiple implementations that interoperate would a useful standard, whether or not any of the implementations are open source. More specifically, would recent SQL standards be an “open” by your definition? I don’t know ...
Posted by Michael Champion atI think the main question at hand is whether it should be an ISO standard, not whether it is “open”.
That could very well be the “main” question in your mind, but not in mine.
To the extent “Microsoft” has an opinion, however, I’m sure it would disagree with “IBM’s” position equating open standards and open source.
Please don’t do that. There is a reason why this page has a Disclaimer link on the right hand side.
Posted by Sam Ruby at“Please don’t do that. ” Sorry. I hate it when my babbling is treated as coming from “Microsoft” so I should have been more careful.
Anyway, I wasn’t referring specifically to you. Lots of people employed by IBM have put “open source” in the definition of “open standard”. I put the company names in quotes to try to emphasize that it’s people not companies with an opinion.
Posted by Michael Champion atLots of people employed by IBM have put “open source” in the definition of “open standard”.
I certainly do.
IBM’s position is a bit more nuanced. I don’t speak for IBM on this particular subject, but I have been involved with the open sourcing a number of codebases which implement one standard or another. One of the oft-repeated criticisms of standards is that there are so many to chose from — the inevitable downside of being “pro choice”. In such an environment, ubiquity is an important attribute, and ensuring that there is an open source implementation under a permissive license (like Apache’s) can be an important enabler.
My own position is a bit more extreme, and is a reaction to seeing phrases like open to being understood being put forward in a duplicitous fashion. More specifically, seeing a pattern of behavior which involves trumpeting official certification as a proxy for openness while simultaneously fostering a climate of fear, uncertainty, and doubt about the interoperability of competing implementations.
And that’s why I answered Sriram’s question the way I did.
Posted by Sam Ruby at"Pro-choice", "open standards" and the freedom to use
In a discussion about OOOOOOOOXML (or whatever it’s called this week), Sam puts some wood behind the definition-arrow for “open standard”. He says, correctly IMO : I prefer simpler definitions. A standard is one that has multiple, inter-operable,...Excerpt from Geir's Blog at
Sam Ruby: Pro Choice
“A standard is one that has multiple, inter-operable, independent implementations. An open standard, at least in the software world, is one where at least one of those implementations is open source.” I completely agree with Sam’s posting....Excerpt from del.icio.us/webmink at
XML supports (or doesn’t hinder) repurposing and retargetting. “Incomplete” uses of an XML format are just as important as “complete” ones, in fact, some people may consider them more important, because the “complete” users tend to be large and corporate. For example, a spreadsheet application may not read the word processing parts, but it could still be useful to work off a standardized format. Or an indexing application may ignore all binary media files. That there will be a plugin so that Office can export ODF and a plug in so that OpenOffice can export OOXML is nice, but it is not the main game for, say, integrators and archivists who may be more interested in open access ahead of blind interchange.
Posted by Rick Jelliffe at
Sam Ruby on Standards
Sam Ruby, a colleague I have not met within or without work, has this to say on Standards: A standard is one that has multiple, inter-operable, independent implementations. An open standard, at least in the software world, is one where at least one...Excerpt from knolleary at
웹 표준
남의 말을 옮기기만 하는건 별로 좋아하지 않지만, 이 글들은 너무나 감동이라서 어쩔 수 없다. (Disclaimer: 나는 현재 남엑스님과 같은 회사에 다니고 있다. 하지만 결혼식은 못 갔다. 아내가 아팠기 때문이다. 남엑스님 용서해 주세요.) Rick Jellife 의 글: 난 오래 전부터 다수를 선호해 왔기 때문에, 표준이라는 것은 다양한 컴퓨터 환경을 가능하게 해야지 틀어막아선 안된다고 생각한다. 따라서 몇 [...]...Excerpt from Considered Mostly Harmful at
Further Major Kudos to Adobe on Open PDF, AJAX
Via Simon Phipps comes news there is a patent non-assertion clause associated with Adobe’s decision to take the fully open, de jure route to PDF standardisation. This is a maraschino cherry on top of the original news. Duane Nickull apparently...Excerpt from James Governor's Monkchips at
I don’t know much about OOXML specifically, but on the general question of defining “open standard”, I’d suggest that open mention patents or other IP. That is, standard means has implementations, and open means may be implemented.
Posted by Lenny at