Do you consider yourself a creative thinker with great ideas?
Are you, by any chance, a person with a non-technical background?
Are you looking for someone technical who can make your business concept come true?
Then this post is for you.
Maybe it’s because of my own non-technical background. Maybe it’s because there are just not enough technical people here in Amsterdam. Whatever it is, I get pitched on a monthly basis by non-technical founders where they can find technical talent. They go to Hackers & Founders, Appsterdam and Startup Weekend with only one goal: finding a technical person who can make their business concept reality.
So this blog post is to all non-technical founders who are sitting and waiting to find their technical counterpart:
You don’t find a technical co-founder, you earn one. And until the moment arrives, stop looking for a technical co-founder, and start to learn code.
Don’t get me wrong. I was just like one of you. I started SNTMNT about 12 months ago. At the time, I couldn’t write a single line of code. I was just lucky to find technical people who believed in my hustling skills. Very lucky actually, as these were not very good at the time either :)
Despite having technical founders in my team, I have taught myself how to code over the past months. And I can tell you: it’s hard work. It’s frustrating. It takes ages until you’re able to produce something decent. Still, it has given me much more in return than I expected.
But first, before diving into details how and why you should pick up coding, I feel compelled to point out that there is one pretty important question you might want to answer first:
Do you actually need a technical co-founder?
This is a very difficult question. For most businesses I wouldn’t know the perfect answer, but most of the time you do. I do think that in essence, the perfect founding team consists of a Hustler and a Hacker, and maybe a Hipster if your business relies heavily on design. There’s a great blog post about this by Derek Dukes. I think he makes some very interesting remarks that go against the more traditional Hustler, Hacker & Hipster paradigm.
A quick note on outsourcing your software development
There are those startups who have no technical people around, leaving the business with just Hustlers, Hipsters and god knows what else. They let someone else build their first MVP, paid out of their own pockets. And sometimes even with money from outside investors, which I think is even worse. There are a few companies I know that became successful while outsourcing software development from the beginning. Still, I have seen twice as many startups here in the Netherlands that failed miserably this way. In the beginning stages of your startup, I would definitely vote against it. I personally find it very dangerous if startups are not developing their own software. This is primarily because of intellectual property and learning effects. What knowledge about your product resides within the company if you’re not the one building it? A software company that doesn’t build their own software sounds like an empty shell to me.
I can imagine that whether or not you can afford to outsource your product development might be a little dependent on your business. Taking from Alexander Osterwalder’s Business Model Canvas, a lot of this depends on your key resources. For a startup like Surf Air, this might be OK. Their planes are their true key resource, not their Website. Then again, if you’re going to be any kind of matchmaking platform that connects supply and demand, like Airbnb or Kickstarter, it’s different. These kind of companies are not extremely tech-savvy, but their platform is their key resource, and you would be a complete idiot to outsource development here.
OK, so you’re still looking for a technical co-founder.
Which brings us back to the title of this post. Stop pitching your business to every technical person you meet on every tech related event you can find. I doubt that you will find a technical co-founder this way. I believe you have to earn one by enabling your business to move forward until a point that technical people will find you.
Yes, this means that you will have to build your MVP yourself. But this also means that you should not just focus on making progress from a product dev (hacker) perspective. You should be focused on making real progress from a customer development (hustler) perspective as well. Learn about your critical assumptions, start building a following by sharing what you think is important, and get your first sales experience while talking to potential customers. Get the word out.
Although this seem like doing a great many things at once, the good news here is that a lot of this will go hand in hand with hacking your MVP. The biggest reason to stop searching and start coding yourself is that it will force you to think lean. One of the motivations given to prefer Hacker & Hustler over Hacker, Hustler & Hipster is that in startup phase, design can be hustled. Especially with the rise of startups like 99designs and Bootstrap. If design can’t be hustled it’s an art, and not a business. From a lean startup perspective, I think this applies to your MVP as well. If your MVP can’t be hustled, it’s probably not lean enough. Being relatively unskilled forces you to stick to the essence. Use the learnings from customer development to define what your product should really be about. Use your creativity to keep things simple.
Some great resources to start coding:
I use TextWrangler, which works fine for me, but there are better ones. Whatever you do, don’t use Dreamweaver.
HTML & CSS
W3Schools worked great for me.
I started programming in Python because of two good friends, Dwight and Aksel, both of whom I’m still very grateful. Although I have no way of comparison, I found that Python is a very friendly language to learn. I hear nice things about Ruby as well. Here is a small overview from StackOverflow. If Ruby is more your thing: here is an excellent blogpost by Will Miceli that provides great links to Ruby / Rails resources.
- Biteofpython. Good book to start with.
- Diveintopython. Decent book. Little problem is that the guy who wrote it has disappeared from the surface of the earth. This makes it hard to find demo code snippets as he removed all of those too.
From my experience, I think that in general you should stay away from these books as much as possible. In the end I felt you learn most by just doing. Just like entrepreneurship in itself. The following are therefore a very warm recommendation:
- Google Python classes. The Google Python classes were very useful to me, although I had difficulties finishing all of them on my own. Probably wait until you’re a little further (for instance after reading Biteofpython) to get going with these.
- Learn Python The Hard Way - I actually only found out about these while writing this blog post, but this looks like a very good resource, maybe even to begin with from scratch.
When I learned coding, my purpose was to be able to do basic Web development. Therefore, after the basics of Python, I quickly proceeded to learn Django. Django is a very straightforward framework that enables you to build websites very quickly. Resources that were very useful for me included:
- Djangobook.org - the official body that explains the basics and gets you going in building some basic apps like polls and stuff.
- Beginning Django Ecommerce - this book was very useful for me. Especially if you’re looking to build a products that requires user logins and/or shopping cart functionality, this book is great.
I know how difficult it is to start learning something from scratch. Off course it’s scary at times. And yes, very often you’ll find that coding stuff sucks big time until it works. That’s the nature of programming. For me though, I found it very rewarding to be able to prototype my own way into the universe. I will never be a great coder. I know for sure that my code will crash when more than a hundred people use it. Still, I’m happy to say that I can build my own prototypes, do front-end stuff when necessary.
In addition, there are other benefits that are way more valuable when you learn to think more like a hacker. For me, my intent has never been to turn myself from a business person into a world-class hacker. I think picking up programming should be to rather acquaint yourself with the particular challenges of engineering. You will find that it will help considerably to understand the technical people you’re working with (and maybe even selling to before too soon!). And, most important: it will most definitely help you to command respect in your quest for a technical co-founder. Good luck!
And, as always, feel free to leave a comment. I highly appreciate to hear about your experiences about picking up coding as a non-technical person.
Image credit: Kalyan.