Is Gaining Open Source Contributors Really This Easy?
So you made a thing. It’s this new API called Where’s My Toaster™ and obviously, it’s the best thing since sliced bread (bu-dum — tis)…
So you made a thing. It’s this new API called Where’s My Toaster™ and obviously, it’s the best thing since sliced bread (bu-dum — tis). You poured your heart and soul into this thing. You quit your job, your wife left you, you spent every last penny you had, and now it's finally ready for its initial release to the world. It’s finally time for the floodgates to open. Millions of users and thousands of contributors are about to get slapped with your amazing toaster finding awesomeness.
But… there's just one problem. Literally, nobody knows about this thing you made. Nobody is using it and nobody is contributing to it and honestly, you need help (because you need to spend some time getting a job and your wife back).
So… if you just made the new hotness and nobody knows about it, how do you fix that?
Seriously this is the story of nearly every software project ever created and it's easy to fall into this trap. You’ve spent so much time making the thing and it was hard. Now that it's done you should be able to reap the reward, right?
Unfortunately, creating a project and launching it is really just the beginning of the journey, and the work you are about to do is probably waaaay outside of your comfort zone. It's time to take off that programmer hat and put on your marketing hat. What? You don’t even own a marketing hat? Well, we’ve got some work to do.
Building a base of contributors and users of your project means that you NEED to build a community. But, way before you build a community you need to know who would want to be part of the community. I don’t want to burst your bubble here, but you probably should have thought about this before you made the thing you made. So let’s take a step back and quickly identify some of this stuff that should have happened in the very beginning.
And it’s really just one simple question. The thing you made, what problem does it solve? And I don’t mean what technical solution does it provide. I mean what problem does a human being have that this thing actually fixes? Think about it for a second. It really only needs to be one problem, but hopefully, it’s a good one because the next question directly depends on the answer. And the obvious answer here is “people have lost their toasters and need some serious help finding them”.
Now that you know the problem you’re solving, what type of person has this problem? Again, be specific. You are targeting people who have lost their toasters. Their problem is that their toaster is missing right? Who, loses their toaster? Well, that seems pretty obvious.
Millennials who live in vans down by the river. It’s pretty clear that many of these van-living Millenials are living way beyond their means and their vans are in either disrepair or have poorly crafted mechanisms for securing their toasters while winding down that incredibly bumpy road. As these disrepaired-van owning bumpy road traveling Millenials are moving from place to place seeking their deepest enlightenment they obviously are losing toasters left and right. You need to help these people. These are your people.
And you, my friend just defined your audience! So, ready for the next step? It’s time to reach that audience and tell them about how you are about to save their asses and literally dozens of dollars by making sure they always. And I mean always know where their toaster is AT ALL TIMES.
How hard could this possibly be, right? There are like at least a million disrepaird-van driving, toaster-losing Millenials out there. They probably all hang out at the same spots and pick their avocados from the same patches. Oh, wait? They don’t? Well crap. Maybe driving around to avocado patches isn’t the right move.
Oh, I know! Maybe Twitter? Yes, Twitter. One simple search later and here you go. Millennial avocado lovers in full abundance. As a matter of fact, here’s someone complaining about losing their toaster! Perfect. Slap a comment in there and look at that. Your first user is in the books. You just helped someone.
Well, there must be some other places just like this, right? How about Facebook? How about Reddit? How about Only Fans? Uh, maybe not Only Fans. Well, whatever you win some, you lose some. The point is, figure out where these van toaster losers hang out and get involved!
But wait a sec. Don’t be that guy. Ya know that one that just shows up in a community just to hock his junk. You need to be involved. Get to know these people. Be one with the avocado van drivers. Figure out their wants, their needs, and what works for them. Fit your product in as part of their lives.
But wait just another second. I thought this was supposed to be about finding contributors to a project, not users??!
Right. I got a little distracted there, but this is TOTALLY about finding contributors because guess what? Your best and only contributors are going to be people who actually use your toaster finding magnificent masterpiece. Why would someone contribute to your project if they don’t even use it?
So now’s the time. You identified your audience, you engaged your audience, avocado hipsters are totally using your thing. You are one with the community, then it happens. Someone approaches you and says: “hey, so I was driving down the bumpy road of life the other day and my toaster totally flew out the window of my hipster van and I thought: man, it would be totally sweet if this thing would send me an alert the moment I lost my toaster, so… I decided to jump into your code base and add it myself. What do you think?”
YEYYYYYYSSSSSSSSS, you now have your first contributor!
This should lead you to the next obvious step. If the avocado dis-repaird van lovers are using your tool so much that they wish it did more, maybe you should ask them what they want next. Then, now that you have a following, maybe you should put the word out that you would love it if they would contribute to HELP THE COMMUNITY.
Ah, see what you did there? You became part of a community and then you asked for that community to come together and help make a thing. Woah! Magic, right?
So now it’s simple. Just say “hey all you avocado toaster losers. How many of you know how to write code? Specifically, I wrote this toaster finder in erLang and so I'm pretty much just looking for any of you disrepared-van driving, toaster-losing, avocado-loving, bumpy road driving, erLang enthusiasts to jump on board and help me out”!
Obviously, at this point, the story tells itself! You’ll have so many erLang-loving, toaster-losing, avocado hipsters you won’t even know what to do with yourself!
And that, my friends, is how you gain avocado-loving, dis-repaird van driving, toaster-losing contributors for your open source project.
Easy right?