It happens all the time: someone thinks they have a great idea and all they need is a developer to implement it and internet riches will roll in. Recently someone sent me a (nice and very reasonable) email about how they had been developing their idea and now were looking for developers. Their efforts to reach out to programmers on GitHub hadn’t been very successful and they were wondering how to proceed.
This is what I said:
To answer your question on meeting developers, it’s complicated. I think reaching out to people on GitHub is a nice impulse: they’re developers that are making cool stuff and open to being somewhat out there in public. And, it shows that you understand how (many) developers work and are coming to them.
However, you’re correct that many developers are hesitant to join startups like that. Frankly, ideas are easy, it’s execution that’s hard. I think that I’m like many freelance developers: I get many people coming to me with their ‘great idea’ that will be oh so simple for me to build and I should definitely build it in return for a portion of the revenue.
Unfortunately things are rarely (never?) that simple. First, they often dramatically underestimate the amount of work it’ll take. This leads to the second problem, they dramatically undervalue the programmer’s time and skill. They both think that less skill is required (so the programmer doesn’t deserve much compensation) and that less time is required (effectively creating a very low hourly rate for the programmer, given the flat rates that are often proposed).
Finally, if a revenue share is bring proposed, that essentially means that the programmer is trusting that the product will sell well, including that the other person will do marketing and promotion necessary to make it a success (the amount of which is necessary is often underestimated by the idea person). In the best case this means the developer is waiting months to get paid and at worst not at all. Having already handed over the code for the product to go to market, the developer has essentially no leverage to ensure that they get paid.
Finally there’s the question of the opportunity cost for the developer. First, if the developer is working for a reduced rate compared to their regular clients, that’s obviously money they’re not making that they normally would. Of course, in theory the project is much more fun and interesting and world-changing than their normal gigs. However, I find that’s not often the case.
That relates to another issue, which is that often the ideas are unrealistic. I’ve found that, partially thanks to the variety of projects I’ve worked on as a freelancer, I have a much better sense of the problems inherent in an idea, both as a product and as a business, than the person presenting it to me.
Given all this and considering that developers are creative people themselves who could be spending their unpaid time on their own projects, the final opportunity cost is simply that it would take time from their own potentially world-changing project.
So, it takes a lot to convince a developer to join your project! For all the reasons above, developers like me are understandably wary of people coming to them with lots of ideas but little money. Now, I don’t know at all if you’re guilty of those things but unfortunately your messages probably triggered developers’ thoughts of all that bullshit! Bummer, isn’t it!
Second, why not learn to make it yourselves? Without knowing what you want to do I can’t say how hard it’d be, but often it’s a lot easier than you might think. And I and many others at the programming meetups are happy to answer questions and help new programmers. Just speaking from my own experience, I’ve always found it easier to learn a new programming language or tool when I had a specific project I wanted to learn it for.
Update, 2011-05-25: There has been a nice big discussion on Hacker News about this post.
Update, 2013-01-31: This post has been translated into Hebrew. Cool!