Thursday, November 5, 2009

Maybe Google is serious about OSS

With its open source release today of its Closure JavaScript tools, Google is starting to suggest that it may eventually become a good open source citizen.

The newly released tools include a JavaScript compiler, a very broad JavaScript class library, and Java/JavaScript-friendly templates. All are released under the Apache 2.0 license, a very permissive license that essentially lets outsiders do whatever they want (rather than a viral or semi-viral license like EPL or LGPL).

Sure, Google has released other code before. Some of it has been experimental (beta quality) examples. Much consists of libraries (or example code) to get at Google’s APIs and thus provide complementary products that increase the value of Google’s services. Even Android would fit in the latter category — albeit at a larger scale — since it helps make handsets that access Google services.

However, the Closure Compiler, Closure Library and Closure Template are production level code that’s been used for years. These are the same tools that Google uses to implement gmail, Google Docs and Google Maps. Theoretically, a competitor could use these tools to make web-based services that compete with Google: Microsoft and Yahoo are unlikely to do so, but I would be surprised if some of the foreign portals (without large internal R&D staffs) don’t quickly adopt the technology.

Of course, Google’s not doing this out of the goodness of their hearts, and the ultra-secretive company has not said why this release now of this code. Perhaps it doesn’t think rivals will use it, perhaps it has a huge head start, or perhaps it’s just non-strategic commodity code. Conversely, perhaps it’s trying to shape de facto industry standards for JavaScript (now that Netscape and AOL are gone), either to influence complementors or assure a supply of well-trained newby programmers.

Still, this is only one step of openness from a semi-open company leading the race for Total World Domination. Even if — as blogger Matt Asay and Google spokesperson argue — Google is a leading (if not the leading) contributor of open source code, that doesn’t mean that they have become good open source citizens.

Revealing code is only one part of sponsored open source openness, which also includes shared authority over the future of the code and governance of the community, providing both transparency and permeability to outsiders. This has proven impossible for many companies — both big, powerful, autocratic ones used to throwing their weight around, and smaller so-called “open source” startups that use OSS as teaseware for their real (commercially licensed) product.

IBM was the first and one of the few companies to prove it was serious about open source — but then it could sell hardware and services if the OSS commoditized its software offerings. Its Eclipse Foundation remains the largest and most successful multi-vendor sponsored open source community.

Five years ago, HP had a similar business model and comparable principles (if not level of investment) in Linux and other open source efforts. However, under its new penny-pinching CEO it seems to have cut back on many R&D and community oriented efforts, and the former Linux Systems Division (later Open Source Business Office) now seems to be just a web page.

Apple isn’t normally considered an open (or open source), but its WebKit library is perhaps one of the most successful and most cooperative firm-sponsored efforts after Eclipse. Google, Nokia and now even RIM are working to make the library suitable for the industry’s wide range of mobile devices.

Meanwhile, Nokia got off to a bad start last year — following the model that Sun used for so long — of a nominally open project that’s completely controlled by the sponsoring company. Maybe both will get better someday (and to be honest I haven’t checked Sun recently), but letting go is clearly hard for big companies to do.

So will Google ever let go on strategically important code on projects? Or will it always require that it retain control of such efforts? My crystal ball can’t see through all the walls of secrecy erected by the Monster of Mountain View, so I refuse to hazard a guess. But I suppose anything’s possible.

Hat tip: Matt Asay’s Twitter® feed.

5 comments:

Ian Skerrett said...

Joel,

I think a good example to support your claim is Android 2.0. As far as I know, source code is still not available even thou phones are shipping with it. Google is using open source licenses but not really developing Android in the open.

Anonymous said...

and did Google ever committed to working on their projects in open? why suddenly everyone who makes his work available to others under OSS license, should be producing it in open?? There's no such relationship.

Joel West said...

I am in violent agreement with both of you. As I said back in July 2008, “Perhaps someday Android will be open.” It certainly isn’t open yet.

Unknown said...

If you look at the title on their home page at http://source.android.com, you may start to wonder. I wouldn't mind if they dropped the open and project out of it and just called it Android Source.

Andre Stegplatten said...

I wouldn't mind if they dropped the open and project out of it and just called it Android Source. I know, source code is still not available even thou phones are shipping with it. Google is using open source licenses but not really developing Android in the open.