I think this is an interesting point:
The key point is that it is possible to develop new features just be writing plug-ins that plug into the core API. The way Firefox has add-ons, and Drupal and WordPress have modules is similarly key to those projects’ success. And, it is not just the technical architecture to do this. It is important also to have a place where developers can easily share what they have done, and other users can find and download the add-ons.
A “place”, or simply a community that be more distributed?
I wonder if github and some of the stuff that’s developed around that (the homebrew package manager for Mac OS X, and npm for node.js, etc.) might provide an interesting model for distributed extension/module development with the benefits of a single go to access point. With the github API, you can even put UIs on top of it.