One of the key distinguishing features of digital technology is its generativity. Simply put, it is how the people do things that you as the original creator never thought about doing. Zittrain popularized the concept by analyzing the growth of PC and the Internet. In an ISR article that I wrote with Ola Henfridsson and Kalle Lyytinen, I proposed the notion of layered modular architecture as the technical underpinning of such generativity of digital platform ecosystems.
Despite its importance, there is not enough empirical research looking at the patterns of generative evolution of digital platform ecosystem. One such ecosystem is the platform that I am now using to write my blog. WIth the generous support from the National Science Foundation, my former student, Sungyong Um, and I have been looking at the evolution WordPress since its inception in 2004. Sungyong has collected every plug-in written for WordPress and analyzed their source codes to find out which APIs they use. We found out that plug-in developers mix both APIs developed by WordPress and those by others (such as Google, Twitter, and Facebook). In January 2004, there were 86 plug-ins using 40 APIs by WordPress and 4 by others. A decade later (December 2014), there were 23,218 plug-ins using a pool of 443 APIs, only 99 of which were created by WordPress and the remaining 344 APIs coming from other large and small web service providers.
We characterized each plug-in as a combination of APIs, which allowed us to build a dynamic network of APIs to understand the generative evolution of the entire ecosystem. Below is an animation that shows the dynamic growth of WordPress. In the animation, blue dots are APIs built by WordPress. A line connecting two APIs indicates that those two APIs are being used to build a plug-in. If two APIs are repeatedly used, the lines become thicker. The animation is a bit jittery as the software changes the angle for different years.
The full manuscript is in the final stage (we hope) of the review process. What you will see from the animation is the important role that certain outside APIs play as the network grows over time. We are in the process of analyzing the history of R ecosystem. I will share the results here soon.