However, there are a lot of trivial work in software development. For example, the behavior of a button, or editable text. Same to any kind of art, most developers in the industry are doing trivial or ordinary work, and few are solving challenging problems. What I mean is that those who do trivial work will be culled, or liberated, from doing that as a job, while the elite could remain there to solve unique, challenging problems.
Recently I have been working with coding agent to fix bugs and implement new features. I implemented my solution first and let coding agent come up with its own solution. Most of the time, the coding agent came up a better solution than mine. Most of the time, its solution was not worse than mine, and I would keep most of its code and only do some minor improvement. Most probably, I am not an experienced/advanced developer, since I seldom deal with advanced math/algorithms/architecture in my day-to-day work. Thus, it would be natural that we have different feeling to the same thing.
I am interested in Dijkstra's idea about natural language programming you mentioned, is that EWD667?
https://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD667...
Translation is natural language in, natural language out. That has very little to do with programming. Dijkstra knew back in the 70s that the very concept of natural language programming was bullshit, and that fancy new tech is never going to change the fundamental issues with the idea. In my opinion, his argument is as valid as ever.
Edit: I wasn't trying to imply that natural to natural language translation is trivial. The best LLM tools can be pretty shit at that even today, too. Tried using localised Microsoft developer documentation lately. It's unintelligible.