Tornado, Facebook's real-time Web framework for Python, is hardly the first bit of code that the company has donated to the community, but the announcement makes some good points on the subject:
Real-time updates have become an important aspect of the social Web that make it easier to share with friends. In March, we introduced a real-time News Feed to make the stream as relevant and engaging as possible for users. Similarly, FriendFeed, which we recently acquired, built their entire site to support real-time updates. It hasn't been easy to build and scale these features, so today we're open-sourcing a core piece of infrastructure called Tornado, which was originally developed by the FriendFeed team.
It is no longer just the traditional Linux, Apache, MySQL, and PHP stack that make a site like Facebook or FriendFeed possible, but new infrastructure tools like Tornado, Cassandra, Hive (built on top of Hadoop), memcache, Scribe, Thrift, and others are essential. We believe in releasing generically useful infrastructure components as open source (see Facebook Open Source) as a way to increase innovation across the Web.
As this post rightly points out, we're moving way beyond the traditional LAMP stack in large-scale open source deployments, with all kinds of powerful and innovative tools being developed and shared. This is a testimony to the increasing maturity of open source solutions in such high-end applications. Facebook should also be praised for its mature view that releasing “generically useful infrastructure components” as open source is good for the ecosystem, and hence good for them.
Against that background, though, it's sad that the benighted US patent system is currently forcing Facebook to open up *all* its code, albeit only to one company:
Facebook’s legal battle with Leader technologies, has taken a new turn! The Delaware District Court judge ordered Facebook to release their source code by August 21, 2009 .
We have a new update on the case, Facebook objected on the orders to release their source code, which has just stalled this case for a while. Both Parties are sticking to their original stand, Leader say, that they need the full access to the source code and Facebook say, that Leader’s contentions are inadequate.
According to the latest public Court Order document dated 4th September 2009, Facebook objections are Denied, and Facebook has to produce its entire source code, for Leader’s review no later than September 15, 2009.
One solution would be for Facebook to open source everything, in which case it wouldn't need to worry about such tiresome court cases. That's actually quite realistic, because Facebook's power does not stem from any “secret sauce” in its code: it lies in its vast, dominating size, and the huge database its user base has constructed. As many have pointed out, this emphasises how software is becoming commoditised – not least thanks to open source – and that the real power, and the real lock-in, lies increasingly with the data.