The Code is your Enemy
You’re a builder. That’s great; also that’s the problem.
You’re a builder, a creator—whether a back-end programmer, a Linux hacker, a Javascript ninja, a UX magician, a designer. You make stuff.
That’s great of course, because in a new startup everyone needs to be either making stuff or selling stuff—there’s no room for managers and executives and strategists. But this also produces a natural weakness, and when I look at what made me a successful entrepreneur—not just a great coder—one reason is that I discovered and overcame this weakness.
The weakness is the same as your strength as they often are: Your love of creation. You love to write clean, tested, scalable, extensible, beautiful code. You love converting “JTBDs” into 960-wide artwork. You love developing an entire app in the browser against a scalable back-end.
And because you love it, it’s what you do. You wake up in the morning thinking about what you can make. You open Visual Studio before you consult your to-do list because there’s something you just need to tweak. You launch xterm before your CRM (if you even have one, which you don’t) because the server was running just a tad slower than you’d expect and you want to paw through log files.
The trouble is, this is almost certainly not the activity that would most benefit your startup.
As much as you’re a minor deity when it comes to TextMate or Balsamiq, so are almost all the technical founders of all high-tech startups. We can all write code—at least well enough to get a product launched and through a few iterations. We can all make a functional website—at least well enough to produce orders.
Most startups fail, despite excellent coding and/or design skills.
Read that headline again; this should bother you more than it does. Yet, because coding is your love, your passion, that’s what you do anyway.
Most startups fail because not enough people show up on the home page, or people show up but they don’t try the product, or they don’t pay for the product, or it’s too expensive to get them to show up, or they don’t tell their friends to come along, or because it’s not solving a pain that people have, or it’s not solving a pain that people know they have, or it’s too hard to explain the pain, or a bunch of other things that are not whether the code works or whether it looks good. It’s a Drake Equation.
Customers don’t open their wallets based on your unit test coverage or whether you used Bodoni instead of Times New Roman on the home page. In fact I’ve made millions of dollars on companies with hideously ugly websites and buggy code. Those things are actually not the most important things.
So if these things—the raw materials and skills used in web-based startups—are necessary but insufficient, what are those things outside your comfort zone which nevertheless are the things that are actually valuable to your company?
Here are two:
-
Have you talked to 50 potential customers? By that I mean fifty, not a dozen. I once vetted an idea and after the first 10 interviews I thought I was really on to something. Suddenly things changed and future interviews weren’t so clear. Turns out there was accidental bias in the people I selected, obvious only in hindsight. Another time, everyone said it was a great idea, but it wasn’t, which was only clear after dozens of interviews. Do you find it hard to locate that many people? Well it will still be hard to locate them after you’ve built a product, and then it’s unlikely the product matches what they want! So solve that hard problem now. Don’t forget to vet the price at the same time and make sure they’re actually going to buy it, otherwise it doesn’t count. Here’s how to interview.
-
Are people coming to your website every day? If not, solving that is much harder and much more outside your control than building software. Consider: Would you rather get hired as the CTO of a company with 1,000 daily new, unique, qualified visitors with a buggy product, or the CTO of a company with a clean, stable product and 10 uniques visits to the home page? You know you can solve for the first case; no one knows if the second will ever be a real business. But if you stay nose-down in the code instead of working on getting attention, you’re building the second case. Are you sure the market even exists?
This article gives much more detail about what you should be doing, and even how to find those potential customers to interview.
Here’s a coder-centric way of thinking about all this more generically: When you tackle a large development project, do you tackle the high-risk, inadequately-understood modules first, or leave those to the end? First, of course, because you understand the rest and you need to solve the unknown problems while you still have lots of time to pivot and re-plan.
This is the same thing, it’s just that in a business it’s the attention, marketing, positioning, selling, defining part that’s high-risk and inadequately-understood, and all of the coding and design is low-risk and well-understood in comparison.
So force yourself out of your comfort zone. You’ll also do coding and design, and that’s fine of course. But force yourself to mostly do those other things that create a valuable business.
Put down the compiler and talk to customers.
Proof from your peers
The above was written in 2013; in 2024 engineering founders still won’t listen, as was on display with a tweet from the great Rob Walling. Here’s that tweet, and many successful bootstrapped founders concurring, and lamenting that still no one listens.
![developer realizes that marketing is important](/code-is-your-enemy/developer-realizes-marketing-important-1284w.png)
![people go through this](/code-is-your-enemy/people-go-through-1272w.png)
The Twitter thread has far more responses, all just like these.
Can you learn this lesson today, without having to “find out for yourself?”
Just this once?
https://longform.asmartbear.com/code-is-your-enemy/
© 2007-2024 Jason Cohen
![Twitter](/images/twitter.png)