Should You Still Learn To Code?
While it’s possible that AI might end up doing most software programming in the future, it’s still a wise move to learn at least the basics of the software coding process.
What I read: “The End of Programming” by Matt Welsh. Published October 4, 2022.
Since I worked for a long time in the software technology field, I’m often asked by younger people and students if they should still take the time to learn to write code, also known as programming. I guess I should force you to read longer for the answer, but I’ll give it to you now.
Yes.
However, I would add some strong caveats to that answer.
Over the course of my tech career, I saw many industry developments that changed how programming was done and the efficiency with which it could be created. The first program I wrote in the Fortran language was written on paper punch cards, something that might leave my younger readers scratching their heads wondering what that means.
Punched cards were once common in data processing and the control of automated machines.
We’ve certainly come a long way since then. I won’t mention every software programming change over the past few decades that have advanced the efficiency and accuracy of programming. One example would be the creation of software code “libraries” which allow programmers to grab chunks of clean, pre-written, optimized software code and place them inside other programs. Instantly programmers became drastically more efficient in how much code they could write and how clean that resulting could would be.
But right now, the big elephant in the room is artificial intelligence (AI) and what that might do to the field of software programming. Some in the field, like Matt Welsh, believe that AI will essentially eliminate most existing programming jobs.
I believe that the conventional idea of “writing a program” is headed for extinction, and indeed, for all but very specialized applications, most software, as we know it, will be replaced by AI systems that are trained rather than programmed. In situations where one needs a “simple” program (after all, not everything should require a model of hundreds of billions of parameters running on a cluster of GPUs), those programs will, themselves, be generated by an AI rather than coded by hand.
He might be correct. He might be incorrect. We won’t know for a few years. Whether or not AI takes up the task of writing most of the software we use, I still think there’s an argument to be made that knowing at least the basics of software programming will be beneficial regardless of where the industry trends lead.
From the early 1980s until the mid-1990s, I would have been considered a technical person in the software field, meaning I could still craft a robust and useful program in a coding language of some sort. Then, in 1998 when I sold the book publishing company I owned for 10 years, I stumbled into a return to one of my past breadwinning professions, software. In this case it was large-scale enterprise software.
The technical writer position I was hired into didn’t officially require a deep technical knowledge of software, but I have firsthand experience that it helped dramatically in my work.
Technical writers usually don’t know all of the underlying guts of the software they’re documenting. They simply need to know how it works from the end user perspective and perhaps from a more detailed implementation perspective. But often one can do that job without knowing how to actually code software.
What I learned though is that my past software coding background made it a lot easier to do my job. I knew how to talk to the software developers who held the knowledge that I needed to include in my documentation. I could sit in development meetings and understand most of what was said. I could come up to speed quickly with new software application development technologies because I had at least a basic knowledge of how it all worked.
The same can be said for many positions within technology. Product managers often have a functional knowledge of the applications they oversee, but not a deep technical understanding. Marketing and Sales people must understand how the user and implementer sides of the application works, but they don’t need to understand specifically how the bits and bytes inside the machines do what they do. Project management is another such area where technical knowledge is usually not as important as functional knowledge.
I’ve been referencing the software industry itself. But those are only a fraction of the overall number of jobs in which how to program code is currently important. Banking. Financial institutions. Governmental agencies. School systems. Health care. All kinds of industries and entities require in-house programmers to make everything run smoothly. The same upside to having some programming knowledge helps in those environments too.
So, nowadays, my answer when someone asks my advice on whether they should still learn to code is yes they should.
However, here’s the rub. I believe that AI will take away a bunch of programming jobs in the future. Some might shift to other job duties with the net result being the same number of jobs overall. Only time will tell regarding that trajectory. But I don’t think there’s much doubt AI will take over at least a lot of the programming tasks.
This means that relying entirely on one’s ability to code software is probably not a good employment strategy, especially for younger people looking to secure their employment future for a few decades to come.
In “The 10 Most In-Demand Skills In 2024,” Bernard Marr writes about what he considers the most in-demand skills for 2024 and beyond. He goes into more detail in his book Future Skills: The 20 Skills and Competencies Everyone Needs to Succeed in a Digital World (paid link), but the article points the reader to some important insights.
Of the 10 skills Marr lists, only four of the 10 require a deep technical understanding of the underlying software or technology. All 10 types of positions would benefit considerably from having a good understanding of computer and software coding basics, but I contend it’s soft skills and the ability to quickly learn and pivot in new directions that will determine if one’s long-term career is successful or not.
So yes, learn how to code. At least take a class, training, or read a book on the basics of how programming code is written, structured, and deployed. That’s going to be useful information for many years to come. Should you want to go into programming today, go for it. It’s still one of the better paying jobs one can have right now. But be ready to quickly go down other professional paths if AI ends up taking over enough of your programming job to make you partially or entirely obsolete. It may or may not happen, but I’d lay down money in Las Vegas that AI is going to take over a significant portion of programming in the future.
Only time will tell if I’m correct about this, but were I still in the corporate workforce, I’d make sure to hedge my bets by expanding my skill set far beyond simply writing code.
As an Amazon Associate I earn from qualifying purchases from the book link. You can use this link to access all my writings and social media and ways to support my work.