Why coding is good for you

Samuel Dylan Trendler King
4 min readJun 10, 2019

I started coding about 3-4 years ago as part of my transition into the world of data science and, honestly, I’ve never looked back. This article is partly a reflection on the joy and flow I have found in writing code, but also on how coding has impacted my way of thinking. I hope it is at least an enjoyable introduction and at most a useful impetus for those thinking about getting into programming for the first time!

1. Seriously structured thinking: Perhaps the first thing to say it that coding forced me to organise my thoughts and think in a seriously structured way. Better than any management consultancy framework, writing code requires you to think coherently about the problem you are actually trying to solve, how you can break it down into smaller solvable components, and how to piece those components together in a systematic way. By design, writing code forces us to be very clear about the steps we need to take to achieve our goals (your program simply won’t work unless all these steps are correct!). Coding also therefore forces us to constantly check our assumptions. If our scripts run (and we get the output we expected) we validate our thinking, and if it doesn’t… we need to critically reassess our way of thinking. As our boy Benjamin Frank once said (more or less): ‘There is nothing certain in the world, except death… and compile-time error messages’. This type of structured, critical, and iterative form of thinking is an incredibly useful cognitive tool and applies far beyond coding. It has helped me think effectively through how to breakdown problems in business and personal life. In short, coding has made me a seriously structured thinker.

2. Building your ideas: For me coding also fundamentally shifted the way I think about interacting with the world I see around me. Rather than a passive observer, writing code gives us the tools to not just see problems in the world, but also think practically about how we might solve them! In all our lives there are any number of laborious tasks or tough challenges we normalise as ‘part of life’. However learning to code made me realise we do not always have to accept these as fact. If you don’t want to copy/paste every single email address from your contact book into an excel file, write a script to automate it! If you hate the idea of having to check back every few minutes to see if there are any new apartments in that area you desperately want to live, build a tool to do it for you! In fact for all sorts of problems in the world (big and small), coding helped me think about how I might build a solution. Programming made me realise I have the tools to build my own world… and if that isn’t a liberating feeling I don’t know what is.

3. Learning to learn: Beyond anything else however, by far the most important thing coding has taught me is to never stop learning. When we write code we are faced with brand new challenges every day. Whether these are new problem areas, or new libraries, technologies, and languages we think could be used to solve them, programming forces us to leave our comfort zone and experiment on a daily basis. In a reformulation of the old Socratic paradox: ‘The only thing a programmer knows… is that he knows nothing at all’. The only way to overcome this is to constantly dive in, explore, and get your hands dirty experimenting with new solutions. All the time. In doing so, we rid yourself of the fear of failure (because you are forced to fail so often!). In turn this means that even if you are totally new to a technology or process, you can still remain confident in your ability to learn and apply it to your work. To me this had profound consequences for my outlook on life. Always being willing to consider new options, even if they are unfamiliar to us and to be happy to admit ignorance and learn new things helped me understand how to better approach all sorts of challenges in life. Learning new things regularly and building on our old knowledge to push our learning further is one of the core principles of a happy life.

Give a man a fish and he’ll eat for a day, teach a man to code and he’ll be fulfilled for a lifetime.

--

--