5 Reasons Coding is Good for You
This is a version of the lightning talk I gave at the Women Who Code Meet Up last month. It’s in the context of why start up founders should code, but can be applied to anyone on a small tech start up team.
1. Understand what is actually going on
So you have validated your business idea, now you need to build it. When you code, you learn how long things take to implement. You know what’s hard to do, what’s not, what can be done with the team you have, what skills you lack and need to hire for. You have a much deeper understanding of how things work, and if your livelihood depends on running a business on top of all this code, then you should understand how the underlying technology works, and where the risks are.
I think especially for female entrepreneurs, being able to code lends a lot of credibility, which is pretty important when you want to be taken seriously by people you’re trying to extract money from.
2. Discovering opportunities
The novelist E.M. Forster wrote “How do I know what I think until I see what I say?”
I think this applies to coding in the same way that you don’t really know how things will work out until you actually attempt to build it. It is only in the process of building that certain revelations appear. This is how companies often end up becoming successful not with their original idea, but with a byproduct that they built while implementing their original idea. When you code you learn about abstraction. You can separate the underlying technology from the current application. You can see how the technology can be adapted and used in other ways. When you’re removed from the process of building, you will miss opportunities that only emerge during the building process.
3. Dealing with failure
This came to me recently when I was particularly frustrated with trying to fix a bug all day. Coding often involves long periods of time when you don’t feel like you’re making any progress because you’re stuck on trying to solve a unique problem. You’re trying all these different ways to solve it, but you’re failing a lot along the way. This is very similar to getting a start up off the ground. You’re trying all these things in the hopes of making a break through, but a lot of these things won’t work out. When you code, you’re already used to that, so I think it’s easier to push ahead in the face of countless obstacles, because you have built up this trust that you will find a way to solve it, or a work-around (which could end up being the better solution!).
4. Getting stuff done
Coding or hacking is a frame of mind, and you will get more stuff done faster, which is what start ups are all about. You can create tools that will help you, even if your main role isn’t a programmer. Let’s say you’re in marketing, you can make your own demos and prototypes of new features to validate with potential customers, or integrate better analytics tools to improve metrics gathering. There are so many tedious tasks that could be improved with software, if only the people that had to do these tasks knew how to code.
My very first co-op job when I was a first-year student was at a roofing company, where I was tasked with manually copying thousands of slides of training material from Word documents into a new system. Instead of doing that, I wrote a parser that could fairly reliably extract the data from the documents and insert it directly into the database of the new system. I then had the rest of my work term essentially free.
5. Finding a co-founder
There are a lot of people looking for this mythical technical co-founder that will realize their product vision and get them funded. I think the time could be better spent learning how to code, and making a prototype of your product idea on your own. This way you can test out the technical feasibility yourself, and learn a lot along the way that is also transferable to future projects. You are also much more likely to attract a good technical co-founder this way.
There are now a lot of tools and communities that help beginners learn to code, so there’s no excuse not to start. However, I do want to stress that coding is something you have to continually do. Because coding is hard and that’s the only way to be good at it. It’s not like learning how to bike. You don’t learn to code and then that’s just something you know how to do. This is why I specifically didn’t want to title this post about learning to code. Many professional developers, especially women, stop coding after a few years, usually after entering management or other sectors. I believe coding is valuable to do continuously if you want to start a technology company some day.