On a very regular basis I am asked, “Do you know any developers?,” to which I smile and answer seriously, “Yes, they grow on trees down the street” or “Get in line.” Strong computer science talent is a dime a dozen these days and with the surge of tech companies growing and starting, the demand seems to be outweighing the supply.
In an efficient market, the mismatch between supply and demand requires an increased supply of developers, so it makes sense that people are seeking out opportunities to learn how to code and programs like Codecadamy and Skillshare classes have entered the scene.
People are also learning how to code because of the perception in the tech entrepreneurial realm that in order to start a company you need to write code. Often driven by necessity (when a non-technical person cannot find a developer, she or he resorts to learning how to code), this notion is driving floods of aspiring entrepreneurs to take up a new learning venture.
That’s all well and good, and good for you if you want to learn to code. But I’m telling you right now, stop coding.
Guilty myself, as I get caught in this trap of thinking I should improve my HTML, CSS, PHP, Python, and Ruby skills so I could just build all the great ideas I have sitting in Evernote. The truth is, I don’t need to be a super coder to test out my ideas. There are a lot of non-coding ways to test out ideas and figure out product market fit. Learning to code so you can build all of your great ideas will likely leave you disappointed. In reality, building cool apps is only a piece of the puzzle. Believe it or not, non-technical skills are a critical piece of the puzzle as well.
Don’t believe me, take it from Kevin Stanton. Kevin is the founder of Farehelper. When catching up with Kevin he told me:
I gave up on Farehelper in January after finally accepting that the team just wasn’t up to the task. I’ve learned the hard way that engineering prowess alone does not make a successful startup. The key ingredient we lacked—and I see in all the successful startups I’ve watched bloom in the past year along side us—is a strong, relentless non-technical co-founder with a vision for a product that they’re passionate about and able to make quick decisions on. We definitely didn’t have that, so us engineers fought constantly over what we were building. Once we finally released our MVP and got solid user feedback, things had become so strained because only two-thirds of the team was doing all the work and we were spread way too thin.
Kevin’s story is a great example of technical talent alone not making a company successful. In my time working for a venture capital firm, some of the most talented and successful entrepreneurs don’t write code right away when pursuing a new venture. They start with testing the market, putting together “Wizard of Oz” experiments to test hypotheses before spending resources to build the product.
That being said, don’t get me wrong—learning to code can be a great thing to do. But, it’s all about your intentions and expectations. Learning new skills and challenging oneself with new goals are great pursuits. I’m a big proponent of learning new skills and challenges. Heck, I do it on a monthly basis. Knowing enough about writing code can help an entrepreneur with a non-technical background better communicate with technical teams and understand the requirements to build the product.
Consider your intentions and outcomes of your learning. Why are you learning to code? Do you want to better understand the time requirements and possibilities? Are you learning so you can build all of your genius ideas? Remember, you don’t need to code to test out ideas. In fact, t’s a more efficient use of time to stop coding and start experimenting with simple, quick, easy tests.
I disagree on stop learning to code. Would you tell somebody not to go to engineering school if he wants to become an engineer?
Any non technical people on any field should and MUST learn if not some but most of the technical part
A person selling computers that doesn’t know anything about computers? A person selling software consulting when he has not written a single line of code?
I see a lot of non technical founders looking to build an idea that doesn’t make sense or that it has been built before many times. They either spend a lot of time and money building something that is not viable or convincing a developer to build their idea for free.
A lot of these non technical founders are stubborn and they don’t want to learn to code. I tell them to actually go and learn. Many of them that do, realize how their idea could be simpler or realize that such thing was not what they imagined and move on to something else.
Learning to code, following professional practices, is the best way for a non technical founder to come back down from the cloud. Not the best translation for “para que se bajen de esa nube”.
Thanks for sharing your thoughts. I agree that there is value in non-technical founders learning enough code to be familiar, but learning to code with the goal of being a one-person team to create the next Instagram is less realistic or valuable use of time.
Learning code at a level to actually produce something (quickly, efficiently, and of quality) is different than being familiar with it. One might know how a brain works from reading about a brain, and actually be able to administer headache medicine but not brain surgery. Everyone needs to know about the law, but don’t be your own lawyer. Similarly, it is great for anyone working with a tech company to understand the “tech” aspect of that company, but you don’t need to be an expert.
I’m in agreement here. Learning something about the technology and process of building a software based business is valuable to a non-technical founder. However, learning enough to build it themselves is sometimes misguided. At DevMynd we don’t really consider a developer “experienced” until they’ve been doing it professionally for 3-5 years, and even then they might still fairly junior on the spectrum.
A non-technical individual looking to start a business shouldn’t expect to have the bandwidth and mental capacity to actually start a business and learn enough to build that business in a few short months. In my opinion, those folks are better off digging in just enough so that they have the context to ask the right questions of potential technical partners. Code schools can be a good avenue for acquiring this knowledge, but appropriate expectations should be set.
If, on the other hand, an individual wants to make a lateral move into full-time programming from a non-technical field, then by all means, dive in 🙂
Good point JC. I think it’s a good idea for entrepreneurs to have a basic understanding of coding simply because it’s useful information to have. But you’ve got a lot of other things on your plate to worry about and coding probably isn’t the most pressing. There is a big jump between learning and knowing and that’s where experience comes into play.
“Strong computer science talent is a dime a dozen these days and with the surge of tech companies growing and starting, the demand seems to be outweighing the supply.”
Confused by your use of “dime a dozen” there. That phrase means “exceedingly common,” which you then follow up by saying is also in low supply? These are conflicting concepts.
It is useful to have some basics as it makes the jobs of the computer engineers a bit easier when explaining stuff. Also, having some basics might enable you to have a better sense of the amount of work that will be required to push a new feature. Having said that, people should focus on their core skill and a founder coder is a coder and non-technical founder is probably focused on marketing, PR, investor relations and having the overall vision for the company.
Very well put Abdallah! Thanks for sharing!
Can you please do a follow-up article of what those tests (experiments) would be and how does one go about creating these tests? You’ve mentioned them numerous times in Your article and I am intrigued.
Thanks for the suggestion! I will be happy to share some examples in a future article.
I completely agree that those who aren’t coders should stop trying to be something they’re not. You’re not going to pick up high level coding skills in time for it to be of value to your startup.
On the other hand, there is this “Cult of the Founder” that’s basically made up of inexperienced incubator candidates who figure they’ll just make a mockup and outsource the product development to India. That idea needs to die. Someone on the founding team should have coding chops.