Why Google open-sourced its Servlet Engine

In opening up the Google Servlet Engine (now OpenGSE), the search giant demonstrates that even the big Web companies have good reason to open-source their code.

Matt Asay Contributing Writer
Matt Asay is a veteran technology columnist who has written for CNET, ReadWrite, and other tech media. Asay has also held a variety of executive roles with leading mobile and big data software companies.
Matt Asay
2 min read

In 2006, I took Google and Yahoo to task for not open-sourcing more of the code that makes them tick, given that much of it derives from open-source software that these Web companies modify.

Jeremy Zawodny, then at Yahoo and now at Craigslist, riposted that there are all sorts of legitimate reasons for not contributing back code, but the arguments largely centered on two primary themes: it would be hard, and it might not actually help anyone outside Yahoo to contribute code back.

This was a valid response, but as I said then, those same arguments apply to any company interested in getting involved with open source, and they are the same arguments used by enterprise IT not to contribute to open-source projects.

But there's hope for enterprise IT because, guess what? Two years after Zawodny described why open source may not be the obvious route for Google and its ilk, Google is open-sourcing things like its Open Google Servlet Engine (OpenGSE), announced this week.

OpenGSE fits Zawodny's description: it was hard for Google to open-source for legal and other reasons, and it normally would be considered code that is both strategic to Google and potentially not very useful to companies outside of Google. Google, however, describes how it might be useful to outsiders:

The "toy" servlet engine supplied with the test suites would have the same core HTTP processing code (as far as possible) as the servlet engine which powers Gmail, etc.

For folks outside of Google, there's really no compelling argument to drop Apache Tomcat/Jetty, etc., in favor of OpenGSE's reference servlet engine, but anyone interested in servlet engine and servlet spec compliance would have a fantastic learning resource available to them.

With OpenGSE, in other words, Google is not giving me the ability to be Google, per se. But it is giving me the opportunity to learn how Google manages HTTP processing, and thereby to improve how my own product manages this.

It's not that Zawodny was wrong. It's just that over time, the big (and small) Web companies have discovered that there are significant strategic benefits to participating more fully in open-source projects.

Google is a leader in this area, and I suspect that it will become a real differentiator in encouraging outside developers to write code for Google's platforms, including the enterprise developers that it is now targeting with its Google I/O conference.

As with Microsoft, developers are the key to Google's future: not the developers it employs, but rather the developers that congregate around Google's code. Open source is critical to making that happen.