In my mind, there are four kinds of open.
- Torvalds Open.
- Zuckerberg Open.
- Not Open but we use the word Open anyway.
- Saad Open.
This fragmentation has diluted the word open to the point where it almost has no value.
It's time to re-define the word open. First let me explain each category.
In Linus Torvalds world (the guy who invented Linux) Open means that the software is developed through a community process. The source code is visible and modifiable by anyone and is available for free.
This is called 'Open Source'.
Companies may package and bundle the software in new and novel ways, and provide support and services on top for a fee.
The problem with Open Source on the web is that the software itself has less value than the network effects and up-time provided by a branded, hosted experience. Running Twitter.com on open source software, for example, would have very little value because Twitter's lock-in is not their software, but rather their name space (@chrissaad) and their developer ecosystem all developing software with dependencies on their proprietary API.
Open Source is useful, interesting and important, but is not what I mean when I talk about the Open Web. I feel like its value is well understood and it is not the first, best way of making our world (and the Internet) a better place - at least not in the same way it once did when client-side software was the primary way we used computers.
When Mark Zuckerberg talks about open, he is not talking about Technology. He is talking about human interactions.
Ever since the popularity of Data Portability (via the DataPortability project) Facebook has gone to great lengths to redefine the word Open to mean the way people interact with each other.
In doing so, they have managed to, in large part, co-opt the word and claim their platform makes people 'more open'.
In many respects, and by their definition, they are right. Facebook has encouraged a mind bending number of people to connect and share with each other in ways that had been previously reserved for bloggers and other social media 'experts'.
Facebook deserves a lot of credit for introducing social networking to the masses.
Their definition of Open, however important, is not the kind I'm talking about either.
Not Open but we use the word Open anyway.
This is when a platform or product has an API and therefore claim that they have an 'Open Platform'.
There's nothing open about having an API. It's just having an API. The platform could be closed or open depending on how the given application and API is built and what limitations are placed upon it.
In most cases, an 'Open Platform' is not actually open, it's just a platform.
My definition of open is very specific. In fact a better way to describe it would be Interoperable and Distributed.
To explain, let me provide some compare and contrast examples.
Twitter is closed because it owns a proprietary namespace (e.g. @chrissaad). The only way to address people is using their username system. They own those usernames and have final authority over what to do with them.
They are closed because they do not provide free and clear access to their data without rate limiting that access or cutting deals for improved quality of services.
They are also closed because they are not a federated system. You can not start your own Twitter style tool and communicate with users on Twitter or vice versa. The only way to message people on Twitter is to use Twitter's propietary APIs for submitting and retrieving data.
A proprietary API is an API that is special to a company and/or produces data that is not in an open standard.
Wordpress, on the other hand (and to contrast) is an open system. Let's compare point for point.
It does not own the namespace on which it is developed. The namespaces are standard URLs. This blog, for example is hosted at blog.areyoupayingattention.com. Wordpress does not own that domain.
Wordpress produces a single type of data - blog posts. Those blog posts are accessible using an open standard - RSS or Atom. There is no rate limit on accessing that data.
Wordpress is a federated system. While they provide a hosted solution at Wordpress.com for convenience, there is nothing stopping me from switching to Blogger or Tumblr. The tools that you would use to consume my blog would remain unchanged and the programmers who make those tools would not need to program defensibly against Wordpress' API. They simply need to be given the URL of my RSS feed and they are good to go.
This makes Wordpress an open tool in the open blogosphere.
Blogging is open.
Microblogging should be open too.
To summarize. Open, in my definition, does not mean the software is open source or free. It means that the software receives open standards data, provides open standards data, has an interoperable API and can easily be switched out for other software.
Today I was challenged on Twitter that Echo is not 'Open' because it is proprietary code and costs money to use.
This person does not understand my definition of Open. Echo is open because it is not a destination site, it sits on any site anywhere. The owner of that site can take it off and replace it with another engagement tool at any time. The data being absorbed by Echo, for the most part, is RSS or Atom, and the data coming out of Echo is RSS.
It does not have any proprietary namespaces (except our useless legacy login system which we are trying to get rid of as quickly as possible) and does not pretend to create some amazing social network of its own. It is just a tool to communicate on the open, social web.
Is Echo perfect? No, of course not, but our intention is to make each and every aspect of the product as interoperable and distributed as possible. We will even use and contribute to open source where appropriate.
How does your product, or the tools you choose, compare? Tell me in the comments.
Next up, we should start to redefine the 'Open' community that creates open standards. Much of it is not very open.