There's never going to be a reality where you would find yourself in a cave and the only way to escape is to build an Iron Man suit with a bunch of scraps. You are always going to have the internet and LLMs. Nobody is going to turn these off. Plus, even better tools will emerge as we wade more towards the future. So there must be no need to prepare for “just in case.” You should be able to take things for granted.
Around two and a half years ago, Andrej Karpathy tweeted that English is the hottest new programming language.
And about six months ago he coined the term “vibe coding” in another tweet. The times are changing: you ask an AI what you want in English and get code, you run the code, tell your AI what is not working and what you want to add, and then after some feedback loop, you are done. And in most cases, this totally gives you what you want.
There is a boundary for what you can take for granted in programming, and time and technology decides the elasticity of this boundary. With the introduction of LLMs, this threshold suddenly contracted a lot and the top dogs found themselves already far beyond the faint line.
This is why ‘vibe coding’ helps those who already know a lot of stuff compared to those who are just starting. But with time this threshold will contract more and more, and everyone will have suddenly and automatically crossed it.
But is this any good? Would this make you dumb? Yes, but if everyone is dumb then no one is. Take an analogy of importing libraries. You don't need to know the tiny working mechanism, down to lines and functions and variables and shortcuts and clever optimizations. You can just import numpy as np
and use it, and no one can point their fingers at you. You can know nothing about the math of back propagation and still just import libraries and train a neural network.
Real men are not real enough just because they code in assembly. They might be slightly real if they create their own CPU from rock and code pure binary there. But only those who create the whole Universe from scratch are really real. You can’t just make an apple pie from scratch without taking so much for granted.
You can imagine the early adopters of libraries being booed by so called OGs. There are always gatekeepers. I have seen so many posts by these professionals on LinkedIn talking trash upon those who use AI assisted coding. These gatekeepers want to be praised and respected. Their insults, their memes are their defence mechanism. Whatever makes them sleep better at night, but inside I think they know the shift is happening and soon their skill will be useless and obsolete.

But do you really need nothing? Can you be as clueless as a potato and make a decent website? In the future, yes. At present, no.
But I think it's always essential to have an intuition of what's happening and why it's happening, to think clearly and design a good workflow in your mind before helloing the LLM. Have a vague idea of what you want before asking, and try to stitch the steps together first. Use LLM as a worker, rather than your boss. Give your commands, guide it, be an engineer. Remember it was Tony Stark who built things, not Jarvis. Jarvis only helped him if Tony was imaginative enough. How good the tool, depends on the user.
But of course, you won’t get a job this way. At least for 10 years I predict. If you want a job, then you must memorize every shortcut, every popular algorithm and technique, maybe have a pretty decent Leetcode score, and create projects from basic stuff. For a long time, companies will still require you to write Learn Recurrent Cache from scratch in notepad during interviews.
Even if the company’s motto is to “increase productivity” and “make everything (including vibe coding ) easier and accessible”, they are only going to hire the really learned professionals. They don’t want their customers as their workers.
But if you are going to treat coding as a skill, a tool to build things for your own sake, rather than a career or a show off, you don’t need any deep insight to get started. You will learn enough as you go along. Just like how you would automatically learn about pumping air on the tires, greasing the joints when you start to ride a bicycle. You don’t have to be an expert mechanic when you first tring the bell.
Try to know at present where you are, and predict how long until you suddenly find yourself on the other side of the boundary. But until the boundary contracts, either you wait or learn it yourself.