[wp-hackers] Less than Core, More than Plugins/Themes: Proposing Optional Modules.

Mike Schinkel mikeschinkel at newclarity.net
Tue Feb 3 15:46:33 GMT 2009

> I don't see why we need these "Optional Modules".

There has been frequent refrain on the list of "We don't want to add that to the core."  Optional Modules addresses those issues for things that many would like to have added to the core but that the core team opposes.

> If there is API missing from our framework we should add it.

But only if the core team has the bandwidth to address. Optional Modules allow for faster enhancement because it allows more than the core team to participate. It also more importantly creates a mechanism by which plugin authors of similar plugins may choose to collaborate on shared infrastructure (using my earlier examples of Twitter and Image Management as examples again.)

> If there is a big piece of functionality that is required by a 
> large portion of our end-users we should add it to the core.

Google SiteMap?
Themeing Framework?
Image Mangement?
Video Shortcodes?
Twitter Sync?

I could go on...

> "history has shown that functionality not in use by a large 
> portion of the user base gets broken and doesn't get the  
> attention it needs to be kept up-to-date.

Can you please point to where I can read about that history?

Besides, it doesn't have to be "a large portion of the user base", it only has to be "a significant number of users."  If not the latter it wouldn't justify becoming an Optional Module.  

But if 40% of the WordPress user base needs/is using something then that is a huge number of users, even if 60% of them overall WordPress user base would rather not have it "bloating their core."  WordPress has the scale to support this whereas most open source projects do not.

> Moving to having optional bits of code would only increase the burden.

Only if the ability to add an Optional Module as made freely available as plugins. I'm envisioning probably 10 of these, not 1000.  And the community would still decide what became or did not become an optional module just like the community vets inclusion into the core.

And yes, in this reply I reverted back to discussing Optional Modules as functionality in addition to just as APIs. Both have value.

> The open-source model prefers choice over restriction which 
> is why there are multiple plugins that do the same thing - 
> this is not a bad thing it is a good thing!

That's a gross simplification of the open source model that obscures all of the facets of successful open source.  Without a core that people can reliably build-on, open-source flounders. Optional Modules are simply extensions to the core where either:

 1.) There is a need for APIs (a large amount of choice in APIs is NOT a good thing, wouldn't you agree?)
 2.) The community process has already identified a "winner" (i.e. the Google Sitemap plugin.)

It *everything* is chaos, you get nothing better than a Tower of Babble.

-Mike Schinkel

More information about the wp-hackers mailing list