effort passed a milestone yesterday when the first pieces of code were uploaded for Shindig
(tip of the hat to Mr. Topf
for pointing this out), an open source implementation of the OpenSocial API.
Why is this important? Quite simply, I see an open source implementation as critical for the success of any API. As noted in the Shindig Proposal
on the Apache Software Foundation's web site:
Shindig will provide implementations of an emerging set of APIs for client-side composited web applications. The Apache Software Foundation has proven to have developed a strong system and set of mores for building community-centric, open standards based systems with a wide variety of participants.
A robust, community-developed implementation of these APIs will encourage compatibility between service providers, ensure an excellent implementation is available to everyone, and enable faster and easier application development for users.
The Apache Software Foundation has proven it is the best place for this type of open development.
The Shindig OpenSocial implementation will be able to serve as a reference implementation of the standard.
The key part is that last sentence. A "reference implementation" does a couple of things. First, for developers for whom the license terms are appropriate, they can simply incorporate the code directly into their products and... ta da... they are writing OpenSocial applications. Second, for developers who can't directly use the code verbatim due to licensing, they can at least study the code and understand how it works. They can see how the OpenSocial interaction occurs in a working example.
Getting an open source reference implementation out there enables developers all over to rapidly use and learn about the API. While this news yesterday represents only the very first step in the development of the project, it's a good start down the path. Now, developers can download the existing code, try it out, and, hopefully, contribute patches/fixes/etc. back into the code base.
Shindig will be a good project to watch. There does not yet seem to be an official project web page, but there is a "project status page
" on the Apache Incubator site.
P.S. And for those wondering, "shindig
" is an English word for "a social gathering" which makes it rather appropriate.