I’m not sure about software engineering as a whole but can I see AI making programming obsolete.
it will move up to the next level of abstraction and continue from there
My worry is that the next level of abstraction above Python is plain english and that anyone will be able to write programs just by asking “Write an app that does X” except they’ll ask the AI that instead of asking a freelance developer.
The historical trend has been that programming becomes easier. But maybe programming will become so easy that everyone can do programming and programmers won’t be needed anymore.
A historical analogy is search which used to be a skilled job that was done by librarians and involved creating logical queries using keywords (e.g. ‘house’ AND ‘car’). Now natural language language search makes it possible for anyone to use Google and we don’t need librarians for search anymore.
The same could happen to programming. Like librarians for search, it seems like programmers are a middleman between the user requesting a feature and the finished software. Historically programming computers has been too difficult for average people but that might not be true for long.
Unless we are assuming truly awesome models able to flawlessly write full-fledged apps of arbitrary complexity without any human editing, I think that you are underestimating how bad the average person is at programming. “Being able to correctly describe an algorithm in plain english” is not a common skill. Even being able to correctly describe a problem is not so common, because the average person doesn’t even know what a programming variable is.
I’ve been in Computer Science classrooms, and even the typical CS student often makes huge mistakes while writing pseudo-codes on paper (which are basically programs in plain english). This has nothing to do with knowing Python syntax, those people are bad at abstract reasoning, and I am quite skeptical that a LLM could do all the abstract reasoning for them.
I’m not sure about software engineering as a whole but can I see AI making programming obsolete.
My worry is that the next level of abstraction above Python is plain english and that anyone will be able to write programs just by asking “Write an app that does X” except they’ll ask the AI that instead of asking a freelance developer.
The historical trend has been that programming becomes easier. But maybe programming will become so easy that everyone can do programming and programmers won’t be needed anymore.
A historical analogy is search which used to be a skilled job that was done by librarians and involved creating logical queries using keywords (e.g. ‘house’ AND ‘car’). Now natural language language search makes it possible for anyone to use Google and we don’t need librarians for search anymore.
The same could happen to programming. Like librarians for search, it seems like programmers are a middleman between the user requesting a feature and the finished software. Historically programming computers has been too difficult for average people but that might not be true for long.
Unless we are assuming truly awesome models able to flawlessly write full-fledged apps of arbitrary complexity without any human editing, I think that you are underestimating how bad the average person is at programming. “Being able to correctly describe an algorithm in plain english” is not a common skill. Even being able to correctly describe a problem is not so common, because the average person doesn’t even know what a programming variable is.
I’ve been in Computer Science classrooms, and even the typical CS student often makes huge mistakes while writing pseudo-codes on paper (which are basically programs in plain english). This has nothing to do with knowing Python syntax, those people are bad at abstract reasoning, and I am quite skeptical that a LLM could do all the abstract reasoning for them.