 |
Open Standards Definitions
Posted by pbrittan on October 21, 2003 at 09:07 AM | Comments (5)
What do we mean by open standards anyhow?
My last entry evoked a certain amount of name-calling in the arena of open standards. Today I'd like to explore just what "Open Standards" might mean. This will seem very simplistic to many of you, but I hope it’s helpful to sort things out in a simplistic way.
I’d like to start with some definitions:
Open - Open for third parties to support and create products to (opposite is Closed)
Proprietary - Legally owned by a company, individual, or private group (opposite is Public Domain)
Community - Administered by a group, not just a single company (opposite is Sole-Stewardship)
One minor note that some people seem to miss is that open and proprietary are not opposites. A standard may be both open and proprietary at the same time. A "closed standard" is an oxymoron. You can have "closed systems" which do not allow third-party integration, but you cannot have a meaningful closed standard.
A standard that is not legally owned by any company or person is said to be in the public domain. Examples of this include: HTML, SNMP, etc.
A proprietary standard is owned by a single company and may be administered solely by that company, as Windows and Solaris APIs are, or it may be administered by a community, as Java is. Some communities are have their own bodies for collaboration (JCP), and some rely on standards bodies, such as the W3C, OASIS, ECMA, and so on, to handle community collaboration and be the official keepers of the spec.
An "open source" standard is one in which the source code as well as the APIs are included in the specification of the standard, meaning that third-parties can extend the product at the source code level, not solely by working through an API. Open source is considered by many to be the purest form of open standard. But again, that doesn't mean it can’t be proprietary. Linux, a favorite open source example, is not in the public domain. The Linux GPL license does not require a monetary fee, but it does make other requirements which it imposes with a copyright. For instance, all source code for modifications made to Linux must also be freely available. Linus Torvalds explicitly owns the registered trademark "Linux". FreeBSD, as a counter-example, is also free of charge and open source, but does not impose the requirement of sharing enhancements with anyone else.
Whether software costs money, and what it costs, are economic/strategic decisions made by the owners of the software / standard. 0 is a price, just like 5 or 745. 0 just carries more psychological weight than other numbers. The underlying license and source code for Linux are free, but distributions of Linux do not have to be free. Companies can charge whatever they want for them.
The relative advantages of these are not moral. They are rooted in various benefits they give to the owners and users of the standards. One of the benefits of using open community standards is vendor-independence: multiple vendors can create competing products that implement the same standard, thus giving customers more choices. Cost, ability to extend, and ability to debug are common reasons that customers choose open source software, but keep in mind that many “closed-source” solutions do provide source code to their paying customers for debugging purposes. One might say that a sole-stewardship standard carries the risk to users that the single company administering the standard can potentially change that standard to suit only its own needs, thus causing damage to third-party users of the standard. Conversely, since a community-administered standard must reflect the interests of a group of different constituencies, it is unlikely to change capriciously or quickly. This distinction is the heart of the Microsoft / Java war of words.
The flip side of that is, of course, that since community standards are slow to change, single-stewardship standards can be much more nimble and capture the changing realities of the marketplace in a more time-sensitive way. When a standard is too slow to change, then vendors supporting the standard are sorely tempted to add one-off extensions for functionality that is not yet standardized, which erodes the value of the standard.
Customers make choices about their adherence to standards based on what they need to achieve and the risks they perceive.
Bookmark blog post: del.icio.us Digg DZone Furl Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment
-
Re: What do we mean by open standards anyhow?
First, I feel its important to make a seperation between a standard and an implementation. Saying there is no such thing as an closed-standard is not entirely accurate since I followed the same file-format for versions 1 through 6 I created a standard. Hence standards are the definition and implementation the (duh) implementation of that standard.
Implementations range from Proprietary to Public domain with loads and loads of variations of freedom enforced by copyright in between; which one suits you is up to you. Since the javas sourcecode is certainly proprietary, you can imagine the scope of licencing options.
We tend to call any source tree that we can change to fix our bugs non-proprietary.
Saying that HTML is not owned by a company and hence in the public domain is painting a wrong picture; while it certainly looks like that, its not that simple. HTML (the name) is owned by the w3c, which is a company. A non-profit company, but still a legal form of a company. If the majority of the W3C thinks HTML should be payed for from now on; they can do that. But since around 400 members will have to agree with that; you can be quite sure the standard will not only be open, but also free.
The second wrong is that standards are not copyrightable; the documents describing them can be, but the standard is not, so you can't place it in the public domain.
What an open standard is for (as opposed to a closed one) is to explicitly multiple implementations for that one standard. In theory everyone can define his own open standard; what makes an open standard really open is that there is a community that owns the name which said they will not simply change the standard, and thereby breaking implementations.
Next to open standards a product must be free from patents. Its absolutely no use to have an open standard if Bob in his garage can't create a legal implementation for absolutely free. The company could just as well have closed the standard since the effect will mostly be that competiters will create a new standard to avoid paying.
An open source standard; as you called it; is an open source implementation of an open standard. You can't legally have an open source implementation of a closed standard; so its a bit of a double, which basically means that all open source applications automatically implement open standards, but just like any open standard the owner of the name is free to change it, breaking alternative implementations.
In the end when you want the perfect product you buy a product the implements an open standard, which is held by a respectable entity (i.e. not microsoft). The implementation you then buy can be the closed source version of company XYZ because it is the most finished one. Or you can buy one from HackerX since its free.
Posted by: zander on October 21, 2003 at 01:44 PM
-
Closed standards
I'd contend that there are such things as closed standards - whenever there is a group you have to join to be allowed to implement, or even gain knowledge of, the standard. A famous example would be the DVD decryption debacle.
Third parties may implement it, but it is generally not open to them to do so. In order to get hold of the standard, you not only have to pay a fee to join an industry body, but you also have to sign an NDA so that the details of the standard are not revealed to others. Even if you do this, your application may be rejected.
The argument boils down to which meaning of "closed" you choose. Closed as in a closed door, or closed as in a closed set? The DVD group isn't closed in the first sense - the door is open, even if they later slam it shut; but its definitely closed in the second sense (http://mathworld.wolfram.com/SetClosure.html - the operator is "A may reveal the DVD standard to B").
This distinction is fundamental - even certification schemes like J2EE don't prevent you from discussing and implementing your own version of the standard - you are simply not allowed to market it as such.
Posted by: ba22a on October 22, 2003 at 02:58 AM
-
n theory everyone can define his own open standard; what makes an open standard really open is that there is a community that owns the name which said they will not simply change the standard, and thereby breaking implementations. Next to open standards a product must be free from patents. Its absolutely no use to have an open standard if Bob in his garage can't create a legal implementation for absolutely free. The company could just as well have closed the standard since the effect will mostly be that competiters will create a new standard to avoid paying. An open source standard; as you called it; is an open source implementation of an open standard.
Posted by: markovich on October 07, 2007 at 03:08 AM
|