A hefty discussion has been going on about people’s motivations to develop Open Source software, starting with Alex King’s blog post and followed up by many others including Weblog Tools Collection. I disagree wholeheartedly with some of Alex’s statements. Chris Olbekson did a post I agree with more, and he also asked for my opinion on Twitter:
— Chris Olbekson (@chris_olbekson) December 2, 2010
He’ll get my opinion. And you’ll get it too, right here. So, sit back, relax and take some time to read, this is the longest post I’ve written this year.
Why I build and contribute to Open Source Software
To explain why I build and contribute to open source software, I need to take you on a short trip through my own history as a developer. I’ve actually been participating in Open Source projects for years, and it didn’t really start with WordPress. I was, and officially still am, a committer on the WebKit project before that, mostly because I’ve literally built thousands of automated test cases for them.
Why did I do that? Because it was fun! It was fun to help the core developers get more features in faster by making it easier for them to test those new features. WebKit is an entirely different project from WordPress, but I think you’ll agree that it has a huge impact on the web as well. If you don’t know how, read up on it. The short version? It’s the HTML & CSS rendering core of Chrome, Safari and almost all proper mobile browsers.
While doing that work, I started a site called CSS3.info, my first real WordPress based site. Even at that time, when my work wasn’t recognized by many people outside of the WebKit community, my open source connections allowed me to grow this site quickly, and allowed me to make money doing it. Through CSS3.info, I quickly fell in love with WordPress. My dayjob at that time was as an SEO (in part it still is today), and I felt the need to optimize my WordPress blog more. So I started building plugins.
The first plugins I built were for my own use, but I quite quickly decided to release Robots Meta, a very early predecessor to its current form and even to my WordPress SEO plugin. While it didn’t make me any money, it did gain me a reputation in the SEO industry, allowing me to speak on international conferences and get my blog, at that time joostdevalk.nl, better known. In fact, I was ranking top #10 for “SEO Blog” at the time, in large part due to the links I got through people mentioning my plugins.
And so, with my continued involvement in especially the WordPress community, this site grew. It grew larger and larger because of my articles, but mostly because of my plugins. It grew so large that it lead to me making more money with my site(s) than in my job, and eventually going solo, first in part, and, just 2 days ago, entirely. I’m living a dream, seriously, and I wouldn’t have been here without open source development.
Let me repeat that:
I wouldn’t have been where I am now without engaging in open source development.
And why I disagree with Alex so much, is that I’m 100% sure that I wouldn’t even have been reading his blog, let alone have the respect I have for him, if he had not done what he had done. He would not have been able to build a 15 person company, he would have been just another developer.
Is the current model sustainable?
Alex makes quite the dramatic statement:
I actually feel strongly that the current situation is unsustainable. Unless the WordPress community at large starts to better recognize and reward the developers that create the tools that they use and rely on, the developers won’t/can’t continue to provide as they have.
He’s 100% wrong. Of course we’d all like more love and for people to send us $1,000 checks every other day. That’s not gonna happen. The fact that he gets $100/$200 a month for donations says one thing, and thing only, to me: he sucks at conversion. He sucks at getting people to think about sending him money for his efforts. I know because when I whined about this exact issue a while back, some people just told me plainly: they’d never even thought about donating, why didn’t I remind them? So I did, I included this box on the plugins settings page (well another version, I’ve done some testing on it):
You know what that resulted in? I top that $200, every week, with just my Google Analytics plugin. So it’s not that people don’t want to give, it’s that we have to remind them. It doesn’t rely on a sodding donate link on WordPress.org, my god. Ok, enough about donations, they’re nice, but the real money is in consulting, as Alex should know, as he built his company around it and is now whining about the very community that allowed him to build that company. Not. Cool.
Don’t get me wrong Alex, if you read this, I respect who you are and what you’ve done. You’re just wrong in this.
Another quote from Alex’s post:
…it seems fairly universal that the reward for a successful plugin is a deluge of support email that includes the worst kind of sense of entitlement, rudeness and ignorance.
Sadly, it’s true, I do get those emails too and I get very angry with them, and probably vent way too much about them on Twitter and else where. Why too much? Because it means I forget to tell everyone about how many very cool emails I get, and how many of those ignorant people, when you explain to them what it is you do, turn out to be warm, thankful people.
You know what helps? To laugh about it. Just the other day I stepped in on a thread in the StudioPress forums, because the awesome @andrea_r asked me for feedback. It was a thread about WordPress and SEO, something I dare say I know a bit about. The guy in the thread called me an SEO Rookie. Seriously, a rookie. Brian Gardner noticed too and had the same reaction I had:
— Brian Gardner (@bgardner) December 2, 2010
So, seriously: don’t take yourself so seriously. Very often the people emailing for plugin support are frustrated because they can’t get something to work, in my case often because they can’t get their sites to rank or don’t know how to configure something. Writing better documentation helps. Doing explanation video’s helps too. This costs time and sometimes money, but you know what? It pays for itself.
What you should do
If you’re only getting annoying emails, maybe you should consider what it is in your plugin that makes people react that way. Do you make promises you can’t keep? Does your plugin’s name mislead people into thinking it’s something it’s not? Did you not update your plugin to work with newer versions? Alex, in his post, says he’s employed someone to update his plugins, and makes it seem as though that’s a stupid thing to do. It’s not. It’s his responsibility. If he does not want to update them, it’s very simple to do something about it: you post a blog post, asking someone else to take up development. That, Alex, is open source. I’d be happy to pick up some of your plugins, most of which are very cool.
Now, a plea to all plugin developers out there: don’t release every piece of code you write, please! Release well thought out plugins, with a feature set people will want and even need to use. I’ve made that mistake myself, more than once. Also, release plugins you know you’ll want to maintain. If you don’t want to maintain it, throw the code online in a blog post, release it under the GPL and ask people to pick it up and use it. If no one does, no problem, the code or solution wasn’t that spectacular apparently.
I strongly believe the system is sustainable. I strongly believe, in fact, I know from experience, that if you code awesome plugins and you do your marketing well, you can make a very good living as a WordPress developer, even build out a company if you want. If you don’t know how to do that, the marketing part, come talk to me, I’d love to help you.
Header image provided by Shutterstock.