Recently, no matter where we go on the internet we'll see claims that it's a terrible idea to begin learning programming. And on the surface it's obvious why such advice is popular to give, AI tools like ChatGPT and CoPilot are gaining popularity and are getting better at writing code themselves. Why wouldn't we want to get ahead of the wave of automation and study something else? However I have my doubts on how good this advice is though.
A professional programmer in 2024 is expected to be able to do all of the following:
- Write code
- Create automated tests
- Debug code that they wrote AND didn't write
In addition, programmers are also expected to do more than just programming. They will also be expected to:
- Gather requirements from vague sources
- Convert these into User Stories
- Collaborate with technical AND non-technical team members
- Manually test their own code
- Estimate how long complex work will take
- Learn new skills
These skills are crucial in todays world, where communication is a must when working in a team environment. Ironically, Large Language models like ChatGPT also require strong communication skills when working with them, making this skillset essential for the future as well.
And, as AI continues to become more present in our daily lives debugging skills will allow us to adapt to new AI model changes faster than our competition (be it other developers trying to get jobs or other companies leveraging AI as part of their products).
The ability to write code, or at least understand the code that AI writes gives us another edge. We'll be able to run the latest models, play with new technology and customize what is available to run better for us. If we revisit the tools already being used by programmers today I can see where both ChatGPT and Copilot can be customized to work with our coding styles and personalities. Meaning with some effort we can make them work with us a lot better than someone who is just using either tool straight out of the box.
These tools that we customize could help us by aiding in all of the steps I managed above. For example instead of writing the code the AI could be helping analyze the code that we write and suggest ways we could improve it. This brings the AI from replacement to partner.
I strongly believe that these are the reasons why learning programming is a great idea. However there is a caveat: if we stop learning, or we get complacent with our skills then we will wake up one day to discover our jobs automated away by tools we don't understand and can't use any better than everyone else.
Top comments (0)