WordPress Plugin and Theme GPL Misconceptions, Misinformation, and Perspective
I don’t have some crazy linkbait title bashing some plugin, developer, or Automattic employee/executive, but you’re here so I guess you still found the post somehow.
Lately, there has been a lot of talk about a variety of issues related to the commercialization and GPLness of plugins, themes, and Automattic. Some of these discussions have been overlapping and conflicting. Most of them are crap, and it’s getting harder and harder to weed through all the crap to find the legitimate stuff.
It’s been made clear before, but I’ll say it one last time, if you develop a plugin or theme for WordPress and plan on hosting it at wordpress.org, giving it away, selling it, or distributing it to the public in any fashion it must be GPL. If you don’t like this, then go develop for something else. When I started developing for WordPress, I did so with the knowledge that someone could take the fruits of my hard work, and redistribute it as their own. This is seen by some as a crutch, a roadblock to making money with GPL software development. Some people have decided that the GPL is some sort of burden (whether by design, flaws, or implementation) to making money. Tell that to Red Hat, Sun Microsystems, our own Automattic, or the countless thousands of people and companies making their living from WordPress in some way (including fully compliant plugin and theme development).
For one thing, if you’re developing plugins because you think you’ll get rich off the donations, then stop right now before you waste your time. Aside from the fact that we do it for other reasons that you’ll never understand, your average wp.org plugin just isn’t going to provide you with donations on a level that will afford you early retirement. Open source software development is about the community being able to bring together collective and individual efforts to create applications that best serve everyone. It’s not about getting software free of charge, even though that often can be a great side effect.
I sometimes wonder if some of the GPL misconceptions we see in the WordPress community are largely due to people having their first exposure to “free and open source” software with WordPress. They see this great free software with lots of free community supporting, plugins, and themes, and perhaps think that everything has to be free, or that everything touched by GPL software has to be free (in either sense of the word).
Let’s look at Akismet. You can download the Akismet plugin, which of course is free of charge, but also the GPL kind of free. This plugin interfaces with a proprietary Akismet service. The Akismet service doesn’t have GPL freedoms, that doesn’t even apply here. Whether or not the Akismet plugin costs money has absolutely nothing to do with it being GPL, and whether or not the Akismet service it interacts with costs money has nothing to do with the plugin being GPL. Another example would be any one of the many Google-related plugins. There are plugins to interact with Google Maps, Google Analytics, Youtube, Google Translate, Google search, etc. These plugins are all GPL (free as in liberty). They interact with a service that is not. We don’t have access to the source code of Google, and have no liberties with it, other than being able to use their API. Whether or not Google charges for any of these services is irrelavent. The code that the GPL applies to is the plugin itself. The fact that it happens to interface with something that may or may not be commercial, and may or may not be GPL doesn’t affect the GPLness of the plugin itself.
Making money with WordPress Themes and Plugins
There have been some recent movements to help plugin developers either be better compensated for their work, or to develop a solid business model.
There has been talk a while back, and again recently, about Automattic creating a commercial themes repository for the community theme developers to use. Now people have been talking about a commercial plugin repository, which could possibly be similar to the iPhone App store. While I wouldn’t be opposed to this happening, I won’t lose any sleep at night if it doesn’t. I keep seeing all these posts and comments lately that Automattic or Matt needs to define a list of business models. Although I suppose it would be great to have someone tell me how to make tons of money, it really isn’t their responsibility to hold the hand of someone trying to figure out how. They’ve made it clear that they pretty much don’t care (and fully support) whatever business model you dream up, just as long as you comply with the GPL.
Another topic being discussed lately is the fact that donations to plugins are fairly meager. Again, I have to point out, that if you’re concerned about how you’re going to make money with the plugin you uploaded to the repository, you’re missing the point of creating that plugin. As someone who develops several popular WordPress plugins, I can testify that you aren’t likely to make a living from the donations. Do I enjoy receiving and appreciate donations of any size? Of course I do. Do I require it or look down on someone just because they don’t donate? Absolutely not. I have no problems with receiving little or no donations from most people for my contributions, that’s not why I do it. If I never get another donation I would still continue to work on developing my public and private plugins and love doing it!
Some people wonder about a plugin developer who’s had part or all of the functionality of their plugin intergrated into the core of WordPress. I suppose I can see why someone could be upset if they just lost what was their primary means of income, but again, this is missing the point of the GPL. (I need to point out that certain functionality of a plugin winding up in the core doesn’t mean that the specific code they used is the same as the code to achieve that functionality in the core, but that’s a topic for another day.) The point of the GPL isn’t to enable someone to have access to free (of charge) software, or to be able to take someone elses’ software and put their own name on it. Are the developers of SimplePie or TinyMCE upset that WordPress uses their software in the core? I doubt it, especially since SimplePie themselves makes a WordPress plugin. The whole point is that we can all benefit. It may not be much consolation to tell you that you should be honored that the functionality of your plugin was so great and so desired that it made it’s way into the core, but that’s what it’s all about.