There was a lot of discussion at the end of last year about Canonical Plugins. Matt Harzewski wrote a short post yesterday about his idea for Canonical WordPress Plugins which got me thinking about the whole subject again so I thought I would share my opinions with you all :)
What are Canonical Plugins?
I first heard about Canonical Plugins via John Hawkins, who gave a brief two minute talk about the topic at WordCamp New York last November. Though the issue had been raised many times previously, most notably by WordPress founder Matt Mullenweg.
Essentially, what they are suggesting is an official plugin for each genre which is developed in conjunction with official WordPress releases, to ensure that the plugin is secure and works with the official WordPress releases.
Jane Wells explained the situation well in this article at the start of December 2009.
Canonical plugins would be plugins that are community developed (multiple developers, not just one person) and address the most popular functionality requests with superlative execution. These plugins would be GPL and live in the WordPress.org repo, and would be developed in close connection with WordPress core.
There would be a very strong relationship between core and these plugins that ensured that:
a) the plugin code would be secure and the best possible example of coding standards, and
b) that new versions of WordPress would be tested against these plugins prior to release to ensure compatibility.
There would be a screen within the Plugins section of the WordPress admin to feature these canonical plugins as a kind of Editor’s Choice or Verified guarantee. These plugins would be a true extension of core WordPress in terms of compatibility, security and support.
Are Canonical Plugins a Good Thing?
Some people are unsure about whether ‘Core Plugins’ are good for the WordPress Community as a whole. I personally think it could be a great thing as it has the potential to really push developments in certain plugins genres.
The two points which Jane Wells brought up in her article were security and ensuring that Canonical Plugins (i.e. key plugins) work with official WordPress releases. For me this is a huge reason why I would love to see WordPress introduce Canonical Plugins. In the past some major plugins have become unusable because the code clashed with the latest official WordPress release. Of course, the risk of non-Canonical Plugins clashing with a new version of WordPress would remain but at least there would be a collection of high quality plugins which would always work, regardless of what WordPress version you upgrade to.
Quality is also something which Canonical Plugins will ensure. The system should encourage plugin developers to collaborate with each other and with official WordPress developers too. However, there are obviously downsides to this. Competition is healthy in any environment and if the top 2 or 3 plugin developers of a certain genre worked together on the official Canonical Plugin, you might find it difficult to find a viable alternative solution if the Canonical Plugin doesn’t do what you are looking for.
At the moment there seems to be more pros than cons from introducing officially supported plugins, though I’m sure that many problems will not become apparent until it has been launched. At the very least though, I think this is a step in the right direction. As John Hawkins rightly pointed out in his talk, the rating system can be easily gamed, so this would allow WordPress users to quickly see what plugins are secure and of a high quality (and quality is certainly a major issue with a lot of plugins).
WordPress haven’t talked about Canonical Plugins in a few months but I have no doubt that there will be more progress with this during 2010.
Whether Canonical Plugins prove to be a success depends on a number of factors but support from plugin developers will undoubtedly be the largest one. So the system has to be setup so that they all developers continue to benefit from their efforts, not just those who work on Canonical Plugins.
I’d love to hear your opinion on core plugins. Do you think this is a good move from WordPress, or do you think that the theme and plugin market should remain community driven?