Mozilla

Standards and Interoperability

January 15th, 2008

There’s a lot to be saId about standards, and I hope to have some good discussions to guide Mozilla’s work in this area. But before jumping into the discussion of how things are today, or how they might be better, I’d like to start with some basic topics. Some may seem obvious, and maybe even dumb. But even so, I’d like to see how great a shared understanding there is.

To start with, why do you think standards matter? What’s the most basic reason we care about them?

To me, it’s interoperability. There are a lot of corollaries, or caveats and drawbacks that result from this, but the fundamental principle is interoperability. If one didn’t care about interoperability I suspect the interest in standards would drop dramatically. I see “standards” and “standards bodies” and “standards compliance” are the means we use to achieve the goal of interoperability. I see them not as an end in themselves, but as the best tool we have found to achieve this fundamental principle.

Does interoperability seem like the right fundamental principle to you? Are there other ideas you see as more important, or at odds with the primacy of interoperability? If so, please let me know.

24 comments for “Standards and Interoperability”

  1. 1

    Weiqi Gao said on January 15th, 2008 at 1:14 pm:

    Shouldn’t portability be a more important fundamental principle?

  2. 2

    Unselfish said on January 15th, 2008 at 1:16 pm:

    Interoperability is something that doesn’t occur to selfish people/companies, and I think open standards compliance is a great measuring stick for selfishness. DRM is one example of an attempt to ignore this fact, which is why it’s starting to fail, and companies have woken up and are abandoning DRM in droves.

  3. 3

    Mitchell Baker said on January 15th, 2008 at 2:12 pm:

    Weiqi: Very interesting question. I’m approaching portability as a type of interoperability. One can be portable only if the stuff you take from the old place can work at the new place. We talked about this some when working on the Mozilla Manifesto. We ended up by using only the word “interoperatiblity” and then giving examples of the different areas in which this would apply:

    “6. The effectiveness of the Internet as a public resource depends upon interoperability (protocols, data formats, content), innovation and decentralized participation worldwide.

    The Mozilla Manifesto can be found at: http://www.mozilla.org/about/mozilla-manifesto.html

    Does this cover the concern? If not, can you be more specific about what you mean by portability and what you would like to see more clearly stated? thanks

    mitchell

  4. 4

    Dave said on January 15th, 2008 at 2:30 pm:

    When I build an web app, I just want it to work in all the browsers, without having to go and cater for their own quirks/missing functionality.

    I’m a believer in standards because I want the web to be a better place for developers, in order to encourage them to make fantastic things.

    I develop first in Firefox because it is just program to develop for. Firebug and Web Developer extensions make it even nicer. Opera usually just works if I code for Firefox… then I guess maybe 50% of the time I have to bang my head on the desk to ‘fix’ IE.

    Who wouldn’t want their job to be easier? All browser’s supporting the same specification would certainly achieve that. 🙂

  5. 5

    David Hammond said on January 15th, 2008 at 2:52 pm:

    One would hope that the published standards have gone through a lot of scrutiny by a lot of different independent parties and are thus fairly sound implementations of the desired concepts.

    In contrast, a technology designed behind closed doors, even if designed with the other players in the field and thus made to be interoperable, might end up more poorly designed because there were fewer eyes on it.

    There are, of course, plenty of exceptions. XMLHttpRequest is a much easier-to-use implementation of the concept than the W3C’s DOM Load and Save. In general, political or personal philosophical incentives come into play whether the technology is developed openly or privately, and that can often be harmful to the real-world usefulness of the technology.

  6. 6

    David Smith said on January 15th, 2008 at 3:08 pm:

    Standards are what (if they worked better) would keep me from spending 3 weeks of 8 hour days tracking down a single incredibly obscure Internet Explorer quirk that screwed up my webapp.

    I consider that important 🙂

  7. 7

    Harry Lewis said on January 15th, 2008 at 3:17 pm:

    I agree that that IT standards are all about interop. Many standards charters will require formal interop demonstration prior to achieving the most stable status or title for the standard.

    It is worth distinguishing IT standards, in this regard, compared to safety, manufacturing process and some other standards where compliance to a threshold is the main goal rather than interop.

    There are some IT standards which will look more like the above, such as those dealing with benchmarks and performance measurement.

  8. 8

    David Baron said on January 15th, 2008 at 3:21 pm:

    I think another point that’s related but not completely overlapping is that standards can serve to enable or ease competition. In other words, they make it easier to write software that interoperates with other software.

    They do this by:

    * documenting what is needed to interoperate with other implementations (which makes it easier for existing implementations to interoperate better and makes it easier for competitors to enter the market)

    * being built using a process that’s less likely to tie the required behavior to the details of one implementation (for example, defining as a Web standard something that’s very easy to implement on Windows but nearly impossible to implement anywhere else, like ActiveX)

    * having a prior agreement about the correct behavior so that the burden of interoperability is not entirely on the trailing implementations but is shared by the market leaders as well, generally through pressure placed on them by their customers (rather than having correctness defined only by the leading implementation and thus placing all the interoperability burden on their competitors)

    Competition, in turn, creates pressure that improves the quality of both existing and new implementations.

  9. 9

    Alex Faaborg said on January 15th, 2008 at 5:23 pm:

    >why do you think standards matter?

    I think a direct result of interoperability is competition, and a direct result of competition is improved products. So standards are indirectly responsible for progress.

  10. 10

    satoshi said on January 15th, 2008 at 5:27 pm:

    Hi Mitchell,
    it’s my first time commenting, I think it’s great that you are cranking out serious discussion in this direct/community way!

    I do agree that interoperability should be fundamental principle, the reason being:
    I loved Firefox on my Windows pc and when I switched to my Mac, I loved it even more b/c Firefox made the switch so smooth and enjoyable. I think the “switch” wouldn’t have been possible w/o the interoperability (of protocols, data formats, content) as a whole and Firefox definitely made it easier.

    It’s just my personal experience, hope I’m not missing the point…

    satoshi

  11. 11

    Aaron Pauls said on January 15th, 2008 at 8:39 pm:

    Innovation is a key factor in the growth and maturation of the web (and just about everything else). In a materialistic world, a common motivation to innovation is the pursuit of wealth. However, it becomes harder to acquire that wealth when new innovations are expected to become standardized.

    This fact keeps many from releasing their new ideas into the seemingly “unprofitable” world of standardization. Often, these ideas are patented and only made available in ways that make true standardization difficult.

    It would be unwise to simply ignore all “non-standard” ideas, as they could be (and sometimes are) better than the standardized ones. With this in mind, the first thing to do is, of course, clearly portray the virtues of standardization.

    Unfortunately, the pursuit of wealth often trumps arguments of virtue. In light of this, processes and assistance need to be made available for anyone with new ideas — to help them standardize while still making a profit, or at least getting recognition for their contribution.

  12. 12

    Shahryar Eivazzadeh said on January 15th, 2008 at 8:57 pm:

    By eliminating diversity, Standard harness the complexity in boundaries of our processing capacities.It means we reduce the horizontal complexity of different interaction protocols so we have more space for vertical complexity of building things up each other.

    Of course at the same time Standard cuts some ways of possible future innovation. Anyway I think “Controlling Horizontal Complexity” is the main concept.

  13. 13

    Daniel Glazman said on January 16th, 2008 at 2:17 am:

    Hmmmm. This is indeed a more difficult question than most people think.

    Yes, interoperability is one key. But interoperable implemented standards can also be a total failure from a user’s point of view : the best example is the DVD region code ; incredibly painful for people like me who love to see movies from all around the world… It also isolates some markets from globalization and allows ridiculous price differences (I bought a Pixar DVD in San Diego the day it was released a few years ago ; 14.99$ ; went on sale in Paris six months later for 27.99 euros…). Finally, even DVD player vendors implement workarounds they let leak to the public so customers can easily set their region code ! A few years ago, Toshiba was even selling here in France R2 and R0 (region free) DVD players !!! Two products in shelves instead of one, pffff.

    So interoperability is one thing, but it’s not the ultimate panacea some people describe. Interoperability without user focus is close to nothing.

    Standard bodies are also very useful from two other points of view : (1) technical and market challengers rarely meet to discuss the future of their world, that’s a tautology. Only in standard bodies they can seat around the same table and discuss their views to make technology evolve in the same direction for the benefit of all.
    (2) standard bodies are a place where IPR issues can appear BEFORE the products are released in the wild. That’s incredibly useful.

    Standards have one bad side though : standards are usually a weak compromise between parties looking for a first mover’s advantage and other parties looking for a minimization of that advantage. The result is often far from initial expectations and brilliant ideas are often trashed in the name of “purity” or “implementability” if you allow me that neologism. To tell the truth, some companies just play antigame when they don’t want a given feature to appear. I can’t count the number of superb extensions to HTML or CSS that were proposed and rejected in the name of “feasability” or “purity”. As a reminder, the Web would not be where it is today if all initial suggestions to HTML+ had to go through standard bodies…

    Last thing, and it’s a controversial one : interoperability does not exist and can almost not exist for some standards. In the case of CSS for instance, the number of potential interactions between the various properties and property values is so huge it’s impossible to test them all. So what means interoperability when it’s NOT possible to test all interactions and then validate implementations ? Answer is simple : interoperability in that case only means “some sort of visible coherence when we look only at the most used and visible features”.

    In conclusion, I think we need standards available in printed or electronic form for vendors and the public because (a) it paves the path for the future (b) we need interoperable products (c) we need feedback and user input.

  14. 14

    pd said on January 16th, 2008 at 3:24 am:

    I find it disturbing that you are raising this topic so soon after taking on a different role within MoFoCo.

    It really makes me wonder (perhaps paranoia plays a factor 🙂 ) what the agenda is.

    The issue of standards compliance must surely be well and truly fundamental and entrenched within MoFoCo? Is it not Commandment 1? Constitution Section A already? If not I’ve been duped!

    I don’t see any benefit to indirectly questioning the benefit of standards so soon after the IE8 ACID2 vapor has filled the air.

  15. 15

    Tristan said on January 16th, 2008 at 5:02 am:

    “Being future-proof”, in the case of formats? I don’t know what kind of browser/application I’ll be using in 10 years time to access my documents in the future. As we put more and more stuff into electronic format, the ability to access it down the road is becoming more and more important.

  16. 16

    Iang said on January 16th, 2008 at 6:48 am:

    Interoperability was already achieved nicely by Microsoft, many times over. Their products were all interoperable, and as long as everyone had them, there was no problem.

    Just talking about interoperability alone doesn’t explain it. Somewhere there is this hidden assumption that you, as a competitor, have a right to also play.

    But that’s a very troubling notion: Why do you have a right to insist that Microsoft follow standards? Why do you have a right to also ship a browser that differs from “the defacto, market leading standard”? In practice, rights won’t explain your position either.

    Competition is about the ability to fight and out-innovate the other guy, and thus deliver the better product, which is chosen by the market place. To the extent that everyone chooses standards, everyone chooses not to innovate, and therefore not to advance the product. Competition is dead, and so is progress.

    So, somewhere in this battle of extremes is some sort of middle position; standards are in continual battle with innovation, and the more standards are used to achieve interoperability, the more they kill innovation. One really has to then have a very clear metric that guides when one chooses standards, and when one chooses innovation.

    For my money, it is “when the problems are solved.” HTML is solved, so standardise. Security is not solved, so innovate.

  17. 17

    Maxo said on January 16th, 2008 at 6:57 am:

    Interoperability is pretty much the only reason it matters. Every other reasons that they matter are all a result of the interoperability.
    If the open document format was used in place of .doc, then do you really thing people would pay hundreds of dollars for Microsoft Word, when free alternatives that are just as good exist? Not likely. So open standards also lower prices, but that is a function of interoperability.

  18. 18

    mawrya said on January 16th, 2008 at 2:39 pm:

    It may help to think about standards in a broader sense – outside the computer industry. Safety standards, for example, do not immediately bring to mind interoperability.

    Standards work to balance the self-interest of the provider of a product or service with the interests of the consumer of the product or service. That is why we care about them. The base-level interests of the consumer are quality and security of life.

    Interoperability is a benefit built on top of the two base-level interests. Interoperability often improves both security (You can buy any Toaster and not worry if it works with your bread) and quality (because your bread works with any toaster, marketplace competition will eventually force the ultimate balance between quality and price).

  19. 19

    Christopher Blizzard said on January 16th, 2008 at 6:54 pm:

    I think that it’s important to put standards in their context and understanding the goals behind the actual standard. For example, I think that many people call for “open standards” to break monopolies (recent MS document standards, for example) or to unite an otherwise split market (WHATWG, W3C.) Standards often are also a tool for companies to share risk and intellection property. (MPEG and DVD.) And sometimes standards are put in place to spur a market to be created. (See Chris Andersen’s video at Nokia for that context.)

    I’m the kind of person who wants two things:

    1. Competition to create great products and prevent monopolies from emerging. This is one of the best ways to improve the human condition, IMHO. (Although certainly not the only one.)

    2. I want to see standards for communication that allow anyone to create on top of them. The best way to get to great products (#1) is to make sure that no one is restricted from exploring and building on top of them. That explosion of creativity is predicated on open standards.

    So I think that when you’re talking about standards you need to talk about the context and the goals. And why things like interoperability are important and how that relates directly to competition and creativity. Because our big goal is to improve the human condition, and that’s what we’re really talking about here.

  20. 20

    Olivier said on January 17th, 2008 at 3:57 am:

    My view is that standards allow de-centralization.

    In a world without open standards, networks are created in which one node controls it all. Such is the case of Skype, Blackberries, MSN or Facebook-mail for example.

    The Internet is fundamentally de-centralized. No single node will affect the Internet if removed. This is what made the Internet stand out and what makes it unique, interesting and fun.

    So to me the key is to not create “centers” to the Internet. This is what open standards (through interoperability) are all about.

  21. 21

    David Bolton said on January 17th, 2008 at 4:20 pm:

    Standards reduce bloat

  22. 22

    Marco Trevisan said on January 23rd, 2008 at 6:23 am:

    I found standards dramatically important for a good health on web and web application in the future. Yes, I agree with you, standards mean interoperability, to me too.

    Even if I found frustrating the low speed from W3C in evolving web standards. Yes, I know the big effort they have to do… but… you know, the real world can’t wait too much long.

    My wish is project “one to many”, spending my time to find good solutions on communication, usability, design, functional tools.

    In conclusion, standards matter, deeply matter.

  23. 23

    Andre said on January 23rd, 2008 at 10:21 am:

    I think it is the regulatory environment that matters and to achive for “interoperability” what GATT achieved for free trade. A political review process that pushes the standards of standards higher.

  24. 24

    Pingback from Stefano’s Linotype » Blog Archive » Interoperability by Friction

    […] Joel Spolsky and web standard advocates (read, for example, Sam’s reply). This reminded me of a question that Mitch Baker asked on her blog about “standards and interoperability” that I had in my to-do list to […]

Skip past the sidebar