This is the companion article to my speak at WordCamp Ottawa on July 22th, 2017. The slides will also be available at the bottom if you’d like to see them.
Having your plugin (or theme), with which you make money, on a public code repository like GitHub, might seem a bad idea at first. You’ll be thinking: “Well if it’s available right here, for free, people will never pay for it!”
This can be true for some people, but they are the same that would have tried to find your product on a torrent site, or a blackhat forum or anything like that. They’re not potential buyers or customers, so you’re not even losing money. And at least, if they download it from GitHub, you know they use clean code instead of something infected with malware.
You also have the ones who download your product to try it, see if it fits their need or not. Those one are interesting because they will, at one point, need support & updates if they like it, so they can be converted pretty easily. They’re often developers, or people with enough knowledge to work out what GitHub is and how it works.
The majority of your customers don’t even know what GitHub is, or how to use it. It’s a developer tool, and it’s scary!
As you see, having you product on a public repository will not make you lose money, and it can even potentially make you gain more. But there’s also the community aspect that is important.
When you have your code on a private repository, the only ones who can access it are your developer team, or maybe just you if you work alone on the product. You don’t get much external feedback. But when it’s on a public repository, everyone can contribute to it, and help you improve the product. You’ll see people opening issues, forking the repository and making pull requests. It’s a win-win: a community member contributes, your product becomes better, and it benefits all the customers.
I think that fits quite well in the spirit of open source, and WordPress in general.
Here is an example. WP Rocket, for which I’m the current lead developer, was initially on a private repository on BitBucket. We moved to GitHub on July 2016, and at the end of the year, we made it public.
Since then, we didn’t notice any impact on our sales. Meanwhile, we received 5 pull requests from external contributors, and more than 30 issues to report bugs or suggest improvements to the plugin. All that without making any publicity about our change!
So if you’re a premium plugin or theme developer, I invite you to consider making your code available publicly, even if it seems scary. You’ll probably be positively surprised by the result.