Vibe Coding, YOLO Mode and the impact of AI on programming jobs
A great article on how programming has changed through the years, which has lessons to learn more broadly about the impact of AI on knowledge work.
Vibe coders
Two new words are solidifying in tech slang:
Vibe coders / Vibe coding: Programmers who don’t directly write or edit code, but just chat with an AI to implement things.
YOLO Mode: I didn’t think YOLO would have so much longevity, but here we are. Vibe coding in YOLO Mode means accepting all changes an AI made to your code without checking the work. After that, you just see if it works or not. If not, paste back the error message without even adding any extra words, let the AI work and accept all changes again, repeat. YOLO Mode has it’s uses but it also results in (for example) having 10 different kinds of custom buttons in your project instead of properly reusing the same shared button everywhere.
An amazing post about the history of programming, making the point that AI is changing programming, not replacing programmers. This is one of the best pieces I’ve read on why AI is not going to lead to mass unemployment even in places where it is already clear it will become very, very good, very soon.
The first programmers connected physical circuits to perform each calculation. They were succeeded by programmers writing machine instructions as binary code to be input one bit at a time by flipping switches on the front of a computer. Assembly language programming then put an end to that. It lets a programmer use a human-like language to tell the computer to move data to locations in memory and perform calculations on it. Then, development of even higher-level compiled languages like Fortran, COBOL, and their successors C, C++, and Java meant that most programmers no longer wrote assembly code. Instead, they could express their wishes to the computer using higher level abstractions.
This was far from the end of programming, though. There were more programmers than ever. Users in the hundreds of millions consumed the fruits of their creativity. In a classic demonstration of elasticity of demand, as software was easier to create, its price fell, allowing developers to create solutions that more people were willing to pay for.
In each of these waves [assembly, high level languages, operating systems, web], old skills became obsolescent—still useful but no longer essential—and new ones became the key to success. There are still a few programmers who write compilers, thousands who write popular JavaScript frameworks and Python libraries, but tens of millions who write web and mobile applications and the backend software that enables them. Billions of users consume what they produce.
Tim O’Reilly continues asking: Might this time be different with LLMs? And then writes:
I still don’t buy it. When there’s a breakthrough that puts advanced computing power into the hands of a far larger group of people, yes, ordinary people can do things that were once the domain of highly trained specialists. But that same breakthrough also enables new kinds of services and demand for those services. It creates new sources of deep magic that only a few understand.
The whole article is worth a read, even if you’re not that interesting in programming the thinking applies much more broadly: https://www.oreilly.com/radar/the-end-of-programming-as-we-know-it/