Who will maintain the software in the future
The other day I read this article and I've have a lot of comments about it, specially this part
The most valuable skill in software isn't writing code, it's architecting systems.
Because I agree that the most valuable skill in software isn't writing software. It's solving problems. And that architecting systems it's not a trivial thing, not everyone could do it right without experience.
But this word keeps repeating itself through the years: coding. I think I've started recognizing it from when Obama was president because I remember his messages about teaching coding and maybe there is a cultural barrier or because English it's not my first language that I don't think that coding or programming are the final goal in the software development industry. It's to solve problems.
I think it's because my generation learn programming with C, Basic and Pascal we heard a lot of times that programming is to tell the computer what to do, and what we wanted was to solve problems that in other ways would be difficult for humans to handle or perform without errors, for example repetitive tasks like massive input data, maths and data conversion and analysis. You know, things that could reduce the work of humans for their to have more free time. I know, pretty utopic.
So when I've heard the the software development industry it's reduced to write code I think we are missing the big picture and this is why many CEOs wanted to fire programmers and software engineers. Because they think that now that we have AI that could write code, ergo, coding, humans are not necessary anymore.
But as I said before, software development it's also the problem analysis, writing documentation and testing (two things that many people keep saying we should let to AI but I am skeptical about it), deployment, maintaining and debugging.
There are two things here that I will keep bringing because it seems that not many people are worried: The correctness of the software built with AI and the maintenance of this. Not only the software that is written with AI but without AI. What will happen when we lost all the experience and context of the brilliant people writing software nowdays? And we lost the arts and craftsmanship of the industry because the new programmers are learning with AI? Imagine all the bad things that could happen because we think that software development it's only writting and not thinking, maintaining and debugging.
For now we should keep maintaining, and testing and debugging and writting documentation.
ThePrimeagen has a lot of good points about this article as well because it started pretty well, with some examples about how some trends didn't kill the industry but created new jobs and opportunities.