The state of the Internet operating system

Tim O’Reilly offers a definition of the Internet operating system:

This is the crux of my argument about the internet operating system. We are once again approaching the point at which the Faustian bargain will be made: simply use our facilities, and the complexity will go away. And much as happened during the 1980s, there is more than one company making that promise. We’re entering a modern version of “the Great Game”, the rivalry to control the narrow passes to the promised future of computing. (John Battelle calls them “points of control”.) This rivalry is seen most acutely in mobile applications that rely on internet services as back-ends.

This is a great and important article, an explanation of where we are right now as an industry.

The two questions that I’m interested in trying to answer, or seeing other people try to answer, are:

  1. What are the keys to preserving the freedom and openness of the Internet given the trends in the article?
  2. How should people developing applications using the Internet operating system be investing their time right now?

One thought on “The state of the Internet operating system

  1. If it doesn’t do REST, it isn’t the web. If it doesn’t do JSON or (reluctantly, for me) XML or HTML, it isn’t the web. If it relies on a proprietary plugin… if it has the word “RPC” in the title, it isn’t the web. If it can’t be parsed easily in browser JavaScript, if it relies on (distinct from exploiting) a particular non-JavaScript language, if it claims to solve all your problems, if it requires authentication against a proprietary API, if it doesn’t make an effort (not always going to be successful) to divide content and presentation… if it’s binary when it could be text, if it doesn’t allow you to link to other resources, or embed them, or be embedded, or be expanded, if it has an undocumented API that requires you to use a particular library, if it requires approval from a standards body, if it was designed to a lowest-common-denominator, if it requires you to explain a bunch of Computer Science concepts to the user, if it’s a showcase of your understanding of advanced algorithms… it’s not the web.

    If it’s resource-oriented (which really means “distinct things on a server you can talk to”; if it’s REST; if it doesn’t tunnel things, it might be the web.

    Having wasted a vast amount of time on XML Schema, the fact that something is from the W3C is not enough to make it worth pursuing.

    Not that I have a strong opinion on the subject.

    There has been a real neglect of open standards and interoperability with the land rush mentality of recent years. Where are the standard metadata formats for image and video embedding? For social network inclusion? We got syndication but syndication isn’t everything (and the state of RSS vs. Atom vs. ??? isn’t great).

    I understand why the land rush, I understand Not Invented Here very well, but it’s hurting the ability of independent developers to build interoperable applications. Facebook does a good job of extracting metadata from diverse site formats when you post a link, but it’s not easy for one person to do the same thing without those resources. It’s very frustrating that the very simple standards that are required are not widely disseminated.

    (And I blame XML Schema for much of that… because it is virtually impossible to use and wholly inappropriate for the real purpose of a schema language, the communication of a data format between humans rather than between computers… computers don’t need schema languages, they don’t understand them anyway. And if you think that XSD is the “right” way to communicate a standard format, you’re not going to bother trying.)

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>