Much has been said on the topic of finding a technical cofounder, ranging from what exactly to look for, to why you’re an idiot for hiring developers the way you have been, and basically everything in between.
I’ve been fortunate in having the opportunity to work with a fantastic developer/designer team, but the project ultimately fell apart due to lack of customer validation. It was a bit like spending a year building an amazing Voltron-esque team, only to realize that the task I wanted to accomplish was turning on a light switch. (Side note: if anyone would pay for a giant robot to turn their lights on, let me know.)
This seems to happen a lot, causing people to get hung up on the question of “how do I find a technical cofounder?” – I’ve learned that the best answer is to be the cofounder you’re looking for (callback to the title, nice!)
- Learn a programming language. Hint: Rails is not a programming language. If you have a hard time getting into Ruby like I did, I recommend giving Python a try to see if your brain works that way – start with the very excellent “Learn Python the Hard Way” by Zed Shaw (link), which will teach you skills beyond just programming.
- Don’t spend time trying to figure out best practices. Best practices will come through experience and twitter responses, do not spend time agonizing over the absolute best way to push code to your server. You’re trying to get just good enough to make it work.
- Cut corners. Evidently a big part of writing code to be run on a server is actually preparing the server for said task. I spent a good amount of time under the tutelage of some sharp people learning how to get Python and EC2 to play nicely together, and I learned a lot. However, there’s still so much to me to learn about programming, configuring server environments is a low priority. Use App Engine or Heroku to get a jump start.
Remember: you’re going to bring on someone technical once you build something that shows promise, do not get paralyzed with the thought “What happens when this has 1,000 users?”
When it has 1,000 users, you bring in someone who knows what the hell they’re doing.
The technical person you form a relationship with will appreciate the change of pace from “Wana try this cool idea?!” to “I built an application that has some paying users, but I can’t take it any further myself, would you be interested in joining up?”
If we all agree that execution is most important (which we do, right?), then you need to learn to code. Not a lot, just enough.