The average programmer is an illusion. Most programmers working in software, and I’m including not just the tech industry specifically, but all companies that employ or contact for programming are not very good. The relatively few who are outstanding skew the average. You know the joke about Bill Gates walks into a bar?
Most programmers were already doing what vibe programmers do with AI now, just more manually.
Virtually no one in tech seems interested in doing what Jobs suggested despite the level of success he delivered.
Telling an average developer to work backward from the customer will generally be met with a foul mood. Especially when that constraint suggests that the currently preferred technical ideology or tribe is no longer suitable.
The whole thing is one big ego trip most of the time.
A compounding factor is when requirements are filtered through B2B layers. At which point the end-user is not the customer and it turns into a game of telephone.
Apple sidesteps this issue with vertical integration.
Computer security is a solved problem, and has been since the 1980s.
Unfortunately adopting it requires us to abandon the ambient authority model of application development and our operating systems that support it. Currently when you tell an application to open a file, it can actually do almost anything. There are operating systems that enforce your choices, not many, they're very niche, for now.
We're at the point where the power grid would be if nobody ever used fuses or circuit breakers. All power could rush to any fault. The same is true with any application a user might run under Linux, Windows, etc.
To save a lot of grief: I'm not suggesting we use Windows UAC, AppArmor, or any other administratively driven security measures. Think power boxes[1] that replace file dialog boxes, and the give file capabilities to the application per the users will, in a secure, transparent and easy to understand manner.
Most of the work is meaningless and some form of theater, lots of folks are chasing total comp and resume driven development. Many metrics measured are orthogonal to success, and the work that matters to success is hard to measure at all. Complexity for complexity's sake. "Just one more framework|technology|abstraction bro."
That AI and search engines use a lot of cheap labor. On systems like Mechanical Turk, or hiring third world quality raters to check results. It is particularly obvious.
Automation isn't having robots assemble things, it's laying off accountants who read numbers from spreadsheets, type them into their calculator, and enter the number back into the spreadsheet, and replacing them with a spreadsheet that was created by someone who actually knows what they're doing.
The only shaming I’ve seen are for people using AI badly or not at all.
I also think we should differentiate between programming to get a program you can do something else with, programming to understand the machine, and programming to give the programmer a logical challenge to keep their skills sharp.
what does solved even mean? If I don't own the wheel, I'm not reinventing it. Paying rent for Microsoft's or Google's wheels don't solve my software needs.
Most programmers were already doing what vibe programmers do with AI now, just more manually.