Why NOT everyone should write code?

12 April, 2019

The world is becoming increasingly more code-centric. It’s the way of life and it’s not going to change soon. The idea that everyone should at least learn to write code is gaining quite some popularity lately. I strongly believe that not everyone should write code. Quite the contrary. People writing code professionally should really understand the basic principles of software development or our legacy is going to be nothing, but a mess. A very expensive mess.

Imagine if I told you that you should learn to build a house, brew beer or fly a plane. That doesn’t sound too crazy, right? From the common sense perspective it does make sense for everyone to at least know what writing code means. My grandmother just like most of the population on the planet has absolutely no clue what writing code is. To them it’s almost some form of dark magic that pays well. Thus understanding what writing programming code means will expand one’s perspective. Just as having a basic understanding of mathematics, physics, human evolution, biology, geography is at least a nice-to-have unless you are going to be the president of the United States.

Unfortunately, the story doesn’t stop here as there is this popular myth that everybody can become a programmer. There are tons of online introductory courses introductory in programming (typically in JavaScript or PHP which are amongst the easiest languages to learn). Simply completing one of these courses doesn’t mean you can call yourself an IT specialist and start looking for a new job. Yes, you can! But no, you should not. I am not trying to discourage you if you have decided to take the leap. However, coding is almost a meaningless activity that is a means to an end. Writing sentences doesn’t make you a poet. Neither laying bricks makes you a construction engineer.

Writing code is often used as a synonym for creating software systems. In real-life writing code is only a fraction of what has to be completed in order to deliver and maintain a working system. And funny enough, it is the least important one. Software engineers are always told the seemingly strange stats that fixing a bug in the code is 100 to 1000 times more expensive than doing this at the level of business requirements. As an industry, we don’t need coders. We need proper software engineers who have an in-depth understanding of conflicting stakeholder requirements, software architectural and design patterns, algorithms, databases, etc. etc. Writing code is only one part of the story. Only if you are willing to learn the complete spectrum of the software development process can you become a proper “coder”.

Author

Aram is the founder and the CEO of Codific. With over 15 years of experience, he has a proven track record in building complex software systems by explicitly focusing on software security. Aram has a PhD in cybersecurity from DistriNet KU Leuven. His contributions to the refinement and streamlining of the LINDDUN privacy engineering methodology have been incorporated into ISO and NIST standards. Aram is also a core contributor to OWASP SAMM project and the architecture and security mentor for all our teams.

If you have questions, reach out to me here

Contact