In many ways, Twitter is a re-incarnation of the old Unix philosophy of simple, cooperating tools. The essence of Twitter is its constraints, the things it doesn’t do, and the way that its core services aren’t bound to a particular interface.
It strikes me that many of the programs that become enduring platforms have these same characteristics. Few people use the old TCP/IP-based applications like telnet and ftp any more, but TCP/IP itself is ubiquitous. No one uses the mail program any more, but all of us still use email. No one uses Tim Berners-Lee’s original web server and browser any more. Both were superseded by independent programs that used his core innovations: http and html.
What’s different, of course, is that Twitter isn’t just a protocol. It’s also a database. And that’s the old secret of Web 2.0, Data is the Intel Inside. That means that they can let go of controlling the interface. The more other people build on Twitter, the better their position becomes.
O’Reilly also talks about how a large number of Twitter users use Twitter to update their Facebook status, which is exactly what I do. In fact, if you just look at my Facebook page, it looks like I’m fairly active on Facebook, until you realize that almost every thing in my profile is pulled into Facebook from other services like Twitter or this blog (via Wordbook). Thanks to the demise of Scrabulous, I pretty much only go to Facebook any more to approve friend requests and respond to people who comment on my Twitter status inside of Facebook instead of in Twitter.
I’m not sure what a Facebook that tried to untie its data from its interface like O’Reilly recommends would look like though. But an even more interesting thought experiment is this: what about a Facebook-like social networking system that works like laconi.ca, a Twitter-like piece of software where the data itself is decentralized on individual instances of the software but where the social networking & communication can occur across each instance. This gets around both the centralization of interface, but also the centralization of data, which is really a much bigger problem!