Justin Tadlock

It's legal but unethical

Some people in the WordPress community are still trying to hold on to that last shred of proprietary licensing. That idea that their code shouldn’t be shared with others. That it’s wrong to use their creations freely.

The thing that really irks me is that people are using open source in name only. They stamp a GPL license on their code to appease the community leaders. Then, they proceed to call anyone who uses that code “unethical” if it’s not to their liking.

You’ve probably heard a few of these other words thrown around too:

  • immoral
  • disrespectful
  • dishonest
  • stealing

This has been an ongoing theme in the WordPress-o-sphere for a while. It’s time to stop this nonsense.

The latest “scandal” has been about WPAvengers. I have my issues with that site and how the owners are going about things, but I don’t consider what they’re doing with the code unethical in the least.

This post isn’t about WPAvengers though. Many of the reactions to this story just brought back some feelings I’ve had for a while about commercial theme/plugin providers and their followers in the community.

Principles of open source

Before moving forward, we have to look at the four core freedoms that provide the foundation for open-source software.

  1. The freedom to run the program, for any purpose.
  2. The freedom to study how the program works, and change it so it does your computing as you wish.
  3. The freedom to redistribute copies so you can help your neighbor.
  4. The freedom to distribute copies of your modified versions to others.

These freedoms are essential. They’re not trivial things. Not just WordPress, but the Web as we know it today would be a much different place without this foundation.

If you’re a WordPress plugin/theme developer, any time you call someone unethical for exercising one of these four core freedoms, you’re doing a disservice to both the WordPress and open-source communities. I consider it in bad taste and unethical in and of itself to say such things.

You gave me permission

A “license” is merely a means of giving permission. When you license your code under an open-source license, you’re giving anyone who gets a copy of your code the permission to excercise the four freedoms above.

Others do not need additional permission to use your code. You’ve already given it to them for that purpose. That’s the reason licenses exist. They’re a method of giving permission.

Please stop saying people “stole” your code if they’re using it under the license in which you placed on it.

Get over it

People are going to take your code. I don’t care what license you have it under. If you put it under an open-source license, you told them that it was okay.

There seems to be at least two different camps people belong to when it comes to using their code.

  • Those who are happy.
  • Those who are angry.

I’d argue that the last group is highly detrimental to the community. If you’re angry about people taking your code and excercising any of those four freedoms, it’s not good for your health. That’s too much stress and wasted time on things that are of little consequence. You’d be much happier and productive if you put that focus and energy into creating cool stuff with WordPress.

I recommend joining the first camp. Embrace those people who are using your code. If you decided to fork my theme framework (fork), I might even write a nice blog post about you. I can’t tell you how many times people have passed code fixes/features back upstream to me when they’ve forked something of mine.

It’s all about the atmosphere. When we get angry about these things, we create a toxic atmosphere, one that isn’t good for anyone.

If we start changing how we view the use of our code, we start changing how the system works. We build better tools for working together. We build a stronger community around our products.

Embrace open source

WordPress itself was built on open source software. It is a fork of b2. The very rock upon which WordPress is built is the GPL, a license which keeps those four freedoms intact and has helped WordPress become the content management system that it is today.

Those of us in the commercial WordPress ecosystem must understand what this means because it can change how we do business. But, it seems to me that many people are still holding on to those ideals of proprietary software in an open source system. While I have nothing against closed-source software, it’s not what WordPress is about.

We must adjust our thinking. We need to think about how we can build products that fit in line with open source and learn to live with that. If you don’t adjust your viewpoint, you’ll be that same ol’ guy commenting on blogs five years from now about how some dude is not “respecting” you as a developer because they “stole” your code and are doing so “unethically.”

If everyone can learn to embrace the philosophy at the heart of WordPress, it’ll make the community a much nicer place and one that I’d be much prouder to be a part of.

One last thought: it’s not unethical to practice the four core freedoms of free software. Let’s stop saying anything different.