The year was 2020 and I remember talking to one of our investors over dinner about how revolutionary the shift to no-code was. It felt to me like Zapier, Retool and Bubble were being proven right - that organizations who had frequent, small computing tasks ought to use something simpler than code for their automation needs. It looked to me like the user interface of drag and drop and node-based graph editors would win and that this would be the way we naturalize many more "programmers".
Fast forward to now, and generating legible, efficient code is simple for anyone with access to advanced LLMs like ChatGPT. The problem is no longer "how do I make the program?", the problem is now "how do I describe my program", "how do I know this program works?" and "how do I deploy the program?". The winners now are platforms that solve those problems with less effort than Docker or AWS. Repl.it comes to mind as a product that is positioned well to solve this.
The standard definition of a program remains as code and I think (with the benefit of hindsight) that's a good thing for everyone. All these different drag and drop UIs entrench program definition into proprietary formats that aren't portable or open. I have made two such GUIs in my career and I always did feel like there should have been an open standard for them.
Soon we will have AI that can interact with GUIs, but I doubt AI will settle on GUIs as the standard means of program definition. I think it's safe to say that code has won for the foreseeable future.