Oh yeah, I remember people saying that about SQL a long time ago. People wouldn't need database engineers any more.
Same with Visual Basic. No more application developers. Just drag and drop!
You might ask yourself why VB6 or Delphi didn't simply rule the world forever. We had those ~25 years ago and with those tools, non-engineers could drag and drop their client/server database-CRUD apps together. Hell, you could do most of that stuff in FoxPro or dBase even earlier, minus the GUI.
You touch computer science stuff only when you
dive deep in something that hasn't been commercialised
completely and when the market is large enough it
quickly develops into services where you tell
the computer do things in "plain English".
You're fantasizing away the enormous middle ground of development work that lies between "hardcore computer science-y stuff" and "things non-engineers are able and willing to accomplish."
The "plain English" bit is hilarious. Human languages are extremely imprecise. That's why we have specialized "languages" for lots of things: math, music, etc. Maybe you are living in another universe where AppleScript took over, I don't know.
Ask yourself if "plain English" tools have replaced engineers in other specialized disciplines. Can I tell my keyboard to write me a song in "plain English?" Can I design an airplane in "plain English?" Can I build a bridge in "plain English?"
These days very small number of people know
how computers actually work(how many know
assembly or even C?)
Sure, only a small % of work requires low-level languages, or knowledge of how a CPU works.
But the bottom line is, somebody needs to describe complex processes to the computer in a very precise way that handles lots of edge cases, filthy data, errors, etc.
At some point, somebody has to write that logic and if there's more than one person doing it they'll need a development pipeline of some sort. And they'll need to do it in a maintainable and scalable way.
The tools are generally not the limiting factors here. You could replace Javascript and Python and Ruby with world's friendliest, code-free GUIs but you'd still have to describe those processes in an equal amount of detail and do it in equally maintainable and scalable ways, and I doubt it would be as terse or as expressive as the aforementioned languages.
Similar abstractions have been happening
everywhere, from AI to game development
or graphics generation everything is so
abstracted that all you need is to learn
the tool through a few tutorials to be
productive.
I am not denying the power of these tools. However, I see these more as "opening up new avenues" as opposed to "eliminating the need for all kinds of nitty gritty development work that actually makes businesses go."
Drag and drop all the sweet zero-code shit together you want in Unreal Engine; somebody has still got to sanitize and massage the weirdo sometimes-broken JSON that our partner's API likes to return sometimes and handle the error states when it can't be fixed.