Why Founders Should Know How to Code
"In a web/mobile startup coding is not an outsourced activity. It’s an integral part of the company’s DNA"
See Video: http://www.youtube.com/watch?v=4Ylm3THHNpM
“By knowing things that exist, you can know that which does not exist."
Book of Five Rings
A startup is not just about the idea, it’s about testing and then implementing the idea.
A founding team without these skills is likely dead on arrival.
I was driving home from the BIO conference in San Diego last month and had lots of time for a phone call with Dave, an ex student and now a founder who wanted to update me on his Customer Discovery progress. Dave was building a mobile app for matching college students who needed to move within a local area with potential local movers. He described his idea like “Uber for moving" and while he thought he was making real progress, he needed some advice.
As the farm fields flew by on the interstate I listened as Dave described how he translated his vision into a series of hypotheses and mapped them onto a business model canvas. He believed that local moves could be solved cheaply and efficiently through local social connections. He described when he got out of the building and quickly realized he had two customer segments – the students – who were looking for low budget, local moves and the potential movers – existing moving companies, students and others looking to make additional income. He worked hard to deeply understand the customer problems of these two customer segments. After a few months he learned how potential customers were solving the local moving problem today (do it themselves, friends, etc.) He even learned a few things that were unexpected – students that live off campus and move to different apartments year-to-year needed to store their furniture over the summer breaks, and that providing local furniture storage over the summer was another part of his value proposition to both students and movers.
As he was learning from potential customers and providers he would ask, “What if we could have an app that allowed you to schedule low cost moves?" And when he’d get a positive response he’d show them his first minimal viable product – the mockup he had created of the User Interface in PowerPoint.
This was a great call. Dave was doing everything right. Until he said, “I just have one tiny problem." Uh oh…
“I organized some moves by manually connecting students with the movers. And I even helped on some of the moves myself. But I’m having a hard time getting to my next minimal viable product. While I have all this great feedback on my visual mockups I can’t iterate my product. My contract developers building the app aren’t very responsive. It takes weeks to make even a simple change."
I almost rear-ended another car when I heard this. I said, “Help me understand.. neither you nor your cofounder can code and you’re building a mobile app? And you’ve been at this for six months??" Whoah. This startup was broken at multiple levels. In fact, it wasn’t even a startup.
Dave sounded confused. “I thought building a company was all about having hypotheses and getting out of the building and testing them?’
There were three problems with Dave’s startup.
- He was confusing having an idea with the ability to actually build and implement the idea
- He was using 3rd parties to build his app but he had no expertise on how to manage external developers
- His inability to attract a co-founder who could code was a troubling sign
A Startup is Not Just About a Good Idea
As the miles sped by I explained to Dave that he had understood only two of the three parts of what makes a Lean Startup successful. While he correctly understood how to frame his hypotheses with a business model canvas, and he was doing a good job in customer development – the third component of Lean is using Agile Development to rapidly and iteratively build incrementally better versions of the product – in the form of minimal viable products (MVP’s).
The emphasis on the rapid development and iteration of MVP’s is to speed up how fast you can learn; from customers, partners, network scale, adoption, etc. Speed keeps cash burn rate down while allowing you to converge on a repeatable and scalable business model. In a startup building MVP’s is what turns theory into practice.
Dave had fallen into the new founder trap of looking at the business model canvas and thinking that coding was simply an activity (rapidly build mockups of first the the U/I and then the app). And that he could identify the resources needed, (outsourced contract developers who could build it for him) and he would hire a partner to do so. All great in theory but simply wrong. In a web/mobile startup coding is not an outsourced activity. It’s an integral part of the company’s DNA.
Having a coder as part of the founding team is essential.
Coding is the DNA of a Web/Mobile Startup
I offered that if Dave wanted to be the founding CEO then he was going to have to do two things: first, create a reality distortion field large enough to attract a technical co-founder. And second, learn how to code.
Dave was a bit embarrassed when he explained, “I’ve been trying to attract another co-founder who could code but somehow couldn’t convince anyone." (This by itself should have been a red flag to Dave.) And then he continued, “But why should I have to know how to code, I’m not going to write the final app."
One interesting thing about the Lean Startup is that it teaches founders about Sales and Marketing (and a bit of finance) without making them get an MBA or a decade of sales experience. Founders who go through the process will have an appreciation of the role of sales and marketing like no textbook or classroom could provide. Having done the job themselves, they’ll never be at the mercy of a domain expert. The same is true for coding.
I was glad I had a lot of time in the car, because I was able to explain my belief that all founders in a web or mobile startup need to learn how to code. Not to become developers but at a minimum to appreciate how to hire and manage technical resources and if possible to deliver the next level of MVP’s themselves.
Dave’s objection was to list a few successful startups that he knew where that wasn’t the case. I pointed out that are always “corner cases" and if he thought I was wrong he could simply ignore my advice.
As I was about to pull off an exit for lunch and to recharge my car I strongly suggested to Dave that for both this startup and the rest of career he put his startup on hold and invest his time in attending a coding bootcamp. It would take him to the first step in appreciating the issues in managing web development projects, identifying good developers, and finding a technical co-founder.
Weeks later Dave dropped me a note, “Boy, what I didn’t know about how much I didn’t know. Thanks!"
Shared from Pocket
September 5th, 2014