Who bears the cost of (non)-standardization?
Last week my feed reeder was dominated by two news: Google dropping support for h.264 (a format for playing videos on the web) videos in Chrome and Nuxeo dropping JCR (a way to access content in a content management system). Both announcements were followed by heated debates around the pro's and con's of the standards in question, of possible alternatives and impact to users.
Of all the things I read in the last week, two really sticked out: Adrian Sutton's analysis of the impact of Google's video move to other players in the HTML5 video game and Arjé Cahn's post on the impact of allegedly "dead" standards to users. Both posts left one topic unanswered: "Why do companies standardize - and why don't they standardize.". Stephane Croisier's tweet made the point clear:


My answer needs a bit more elaboration, which is the reason for this blog post.
Every standard has only one single reason to exist: to save the user money. This money-saving can be immediate, by reducing cost of interoperability, or deferred by avoiding vendor-lock-in and increasing competition. This does not mean that every standard saves user's money, there are ample examples of failed standards - and the reasons for failure can be both technical and due to market adoption. Those failures often prove costly for the early adopters of failed standards, but without risk there is no reward. If for a certain problem domain no standard emerges, users have to pay the opportunity cost of non-standardization through increased vendor lock-in, reduced competition and higher transaction costs.
On the other hand, the cost of standardization is carried entirely by the standardizing vendors. Aside from R&D investment to actually implement the standard, they have to acquire patents, participate in standardization organizations and sometimes even give credit to their competitors. Additionally, they cannot immediately carry over the cost of standardization to users, in order to make sure they get initial adoption. The new standard must prove it's value over the status quo almost immediately, but will pay off only over time.
We can see exactly these behaviors in the events and discussions of last week:
- Vendors not implementing JCR, because it means a departure from their established technologies and technical debt
- Vendors not implementing h.264, because it means having to license patents from their competitors
- Standardizers open sourcing and giving away reference implementations of their standards to increase adoption (Apache Jackrabbit, WebM)
- Standardizers granting free use of their h.264 technology for limited time to increase adoption
And last, but not least: Users bearing the cost of non-standardization, because vendors fear the short-term costs of standardization and being unable to realize the long-term payoff. In the case of Chrome and h.264 this means video publishers have to encode videos into more than one format and provide additional storage. It means browser users having to install and maintain plugins to view content. In the case of JCR it means developers having to rely on vendor-specific APIs and users not being able to access their content across repositories.

