Canonical, Core, Something Plugins

For the past year or so, we’ve all been hearing this term ‘canonical plugin‘ at numerous WordCamps and in interviews Matt has conducted. I’ve struggled with understanding what this term means in relation to the WordPress ecosystem and how plugins are developed but after months of hearing Matt talk about the idea and of course, reading the recent post on the dev blog that goes into more detail, I think I get it.

The idea is to make it as easy as possible to enable people to collaborate with plugin authors. Instead of everyone going their own seperate ways, bring resources and people together to focus on a common goal, that being the canonical plugin. These plugins would be under the wings of the core development team to insure compatibility, good coding practices, and would probably excel at whatever functionality they were designed for.

Now for as long as I’ve used WordPress, the plugin ecosystem is like the free market. After awhile, end users spread the word and generally can determine plugins that are good for a specific purpose. For example, Contact Form 7 was a house hold name that I saw mentioned time and time again as an easy way to generate a contact form in WordPress. The wisdom of the crowds in this case was correct. I wonder though how the canonical system will affect the free market system the repository currently has or if nothing will happen. Do plugin developers really want to work together for the common good or do they want to do their own thing without anyone looking over them?

I have no idea how this canonical plugin system will work or how it will evolve but the core development team of WordPress has discussed the issue at great lengths and I look forward to sitting back and watching to see what the vision turns into. One thing I really like about this canonical plugin idea is that it gives the team the option to yank out specific functionality in the core of WordPress and turn it into a group developed plugin. The example I continuously bring up are the Code editors in WordPress. Personally, I think these should be removed but a number of people find them useful. I think the editors should be replaced by a canonical plugin called CodePress. CodePress would then be a built in editor on steroids with line numbers, colorful syntax highlighter and something I’d love to see, revisions or versioning.

I have a bunch of questions regarding canonical plugins that I think will be addressed in the coming weeks. First, how does a plugin become canonical? How does that plugin become non canonical? How will this system work?

As for the name, I’ve decided to stick with Canonical. Core this or core that is just ripe for confusion. I get the idea behind the relationship of these plugins with the core of WordPress but I still think this name would be bad in the long run. In the poll, I voted for Other and then left the space blank. Too bad Canonical is also big in the Ubuntu community so confusion could arise from that term as well.

I’m hoping that the canonical stuff takes off as the entire team hopes and believes it will. There is also a thread dedicated to the topic of Canonical plugins that you can find here.