Note that this is older post, from the peak of WP / GPL holy wars. Things have changed - I became WP professional, preference of GPL for WP code “won”, while actual “all is derivative” issue was swiped under the rug.
Warning! Highly boring and inflammatory topic ahead. And some strong language.
So why exactly people (me included) won’t just shut up and stick to single opinion on WordPress, GPL, plugins, themes and rest of stuff? Simply put we are being enforced to follow opinions rather than facts.
- I am not a lawyer;
- I don’t work with WordPress for a living;
- I don’t have business stake in the issue;
- I do not claim supreme knowledge of the issue and welcome any fact corrections.
So why do I bother sticking my nose into this? Simply put WordPress project tries to build a fence in the middle of WP users crowd and leave me on the side of evil bastards.
I may be an evil bastard, but that is not for WordPress project to decide. They want to call names and throw hard opinions around, so do I at times.
Making sense of WordPress structure
- WordPress is not glob of bright light, flying around and making people happy.
- WordPress as word is registered trademark managed by WordPress Foundation. It is discouraged to use it in an unauthorized way and WP is usually suggested as safe to use alternative.
- WordPress as software is open source server software under GPLv2 license that is CMS to create blogs and sites.
- WordPress.org is site that hosts WordPress software as well as documentation for it and repositories of themes and plugins.
- WordPress.com is site that provides blog hosting services on fremium model (free basics, paid extras) and is powered by publicly unavailable version of WordPress.
- Automattic is private corporation that (to degree possible) owns, runs, funds and profits from all of the above.
So while WordPress is free and open source it is controlled and shaped by single company.
In this post WordPress mostly refers to software.
Automattic in this post refers to statements by Matt Mullenweg (WordPress co-founder, developer, founder of Automattic) and other Automattic-related people, policies and actions. If some parts do not belong to Automattic it is because related statements are often vague as from where exactly they come.
Update. According to Matt's comment bellow the WordPress core team would be more accurate entity instead of Automattic.
WordPress and GPL
WordPress started out as b2/cafelog fork and inherited GNU General Public License, version 2 license from it. While not set in stone it is very likely that it is stuck with this license for life. It is very unlikely to change or extent to multi-license model.
WordPress and extensions
WordPress has architecture made to work with extensions. WordPress itself, referred to as WordPress core, is not supposed to be modified. All additional functionality is supposed to be added through usage of plugins and themes.
There are some differences between themes and plugins, but a lot of functions can be performed by either.
Extensions and GPL
And here is where shit hits the fan.
By the very principle GPL is contagious. If you produce and distribute something derived from software under GPL it must be under GPL as well.
Very expensive question – are WordPress extensions derived from WordPress?
Automattic position is following:
- any PHP code that interacts with WordPress is derived from it and must be licensed under GPL (if it is distributed);
- related non-PHP files can be licensed differently;
- everything (PHP or not) must be licensed under GPL to be allowed on sites/repositories of WordPress project.
And this is part where I disagree.
- WordPress extensions does not include or bundle WordPress code, the only thing from WP they include are function names.
- WordPress extensions can include multiply second and third party components, such as:
- WordPress-specific PHP code;
- not WordPress-specific PHP code;
- CSS stylesheets;
- HTML markup;
There is no legal case or unambiguous definition saying that WordPress extension must be GPL. That is merely one of possible opinions.
Basically Automattic is stuck with GPL for WordPress and advocates that everything related should be GPL as well. And it is developer’s responsibility that all of extension’s multiply components comply, huge pain in the ass is an understatement for this.
Other people may or may not license their WordPress extensions under GPL completely or partially. But if they want to sit near Automattic – it is mandatory.
Community and GPL
So basically we have mass of people that use WordPress and have different opinions about inheritance of GPL for extensions. Bunch of adults should be able to admit that opinions differ and live with it.
Actual situation is quite different. Anyone in disagreement with opinions propagated by Automattic is labeled evil, harmful, hostile and hater. All exact words used. You either do what Automattic says or you are bad bad person.
This goes well beyond software and GPL as well:
- perfectly GPL-compliant companies had been vilified for paywall business model;
- people had been punished for association with non-GPL projects, as much as having banner or link to non-GPL theme had been reason to have developers’ theme removed from WP repository;
- non-GPL-compliant people are not allowed to organize, sponsor or even speak at WordCamp events.
non-GPL-compliant people, my ass!
WordPress community is all of people who use WordPress. Different people, with different opinions. Automattic want to sort and label these people into good and bad in accordance with Automattic’s business agenda.
This has no longer anything to do with GPL. Either what you do fits Automattic interests or it does not. Former and you are patted on the head, latter and you are called names and labeled as desecrator of open source spirit.
Spirit being additional rules on top of GPL that Automattic coins or supports. Namely (in my words):
- you should not make people pay for useful code;
- you should not pay for code not under GPL;
- you should not release WordPress extensions under licenses that fit your interests over those of Automattic;
- you should not publicly challenge ideas of mandatory GPL for extensions or affiliate yourself with people who do;
- you are not part of WordPress community and should find the door out unless you agree with these silently and completely.
Yay, restrictions. The very fucking thing GPL fights against, served as WordPress freedom.
Truth is neither side gives a damn about GPL anymore. It is merely a buzzword for political bullshit around WordPress.
Question is – will that BS be enough to crash community for good and if so how soon?..