
A few days ago I realised that a plugin I am developing has already been done. Even worse, the plugin that I seem to be recreating is a masterpiece of functionality offering every option under the sun. How I missed the existing plugin isn’t important; what is important is that in trying to justify to myself why I shouldn’t abandon my work I have realised that I do have a definite philosophy about plugins that I use, and that I develop.
Up until now I have just built what I wanted without much thought to the way I wanted it to appear. My decisions were really a default position.
The end result was likely in line with my philosophy, just not consciously so.
Had I realised that the other plugin existed I may not have started developing my own, but with a stated philosophy to consider it is easy for me to find the parts of the other plugin that don’t fit my ways. Equally, had it already met my philosophy it would have clear that my efforts were not needed.
Over time I intend to give more thought to my philosophy, and publish it on a page here somewhere, but for now here are three points that come easily to mind:
I use WordPress because I like it, so I want Plugins to look and feel like they are part of WordPress. When I develop I don’t consider the admin pages to be a place for me to express my creativity and when I use them I want the experience to be as seamless as possible.
The best plugins are ones that just work. Every choice added is a decision the user has to make and every extra bit of code added to support an edge case adds bloat to the system.
I have suffered a fair number of problems with JavaScript in the WordPress admin pages and the more plugins that use it the more potential there is for problems to occur.
I don’t feel it should be avoided at all costs, but equally I don’t think it should be used unless there is a clear value. There is nothing wrong with page refreshes in my book.
These are some of my philosophies but what are yours? When you use a plugin, or produce one, what do you want of it? and what would make you choose not to use it even if it does do what it says on the tin?