Yes, but not for the reason you were given five years ago, and not by the method most courses still teach.
The old pitch was that typing code was a scarce, well-paid skill. That pitch is weaker than it was. A model will now produce a working script faster than you can open the documentation, and pretending otherwise does nobody any favours. The honest question is what is left, and the answer turns out to be most of what mattered.
What actually changed
One thing: producing a first draft of code is no longer the bottleneck. Remembering the syntax for reading a CSV file, recalling which method sorts in place, looking up how to format a date — that work has largely evaporated, and it is not coming back.
If your definition of "learning Python" was memorising those, then yes, that specific investment has lost most of its value. A great deal of beginner curriculum is still organised around exactly that, which is why the question feels so pressing.
What did not change
Writing code was never the hard part of programming. The hard parts were always these, and none of them moved:
- Knowing what to ask for. A model will build precisely what you described. Describing what you actually need — including the cases you have not thought about — is the job, and it is the same skill whether you type the result or someone else does.
- Telling working from nearly working. Generated code runs. Running is not the same as correct. Code that is off by one row, silently drops the entries with a missing field, or works on your sample and fails on the real file will not announce itself.
- Knowing when the answer is nonsense. This is the difference between a person who benefits from AI and a person who is quietly harmed by it, and it comes almost entirely from having written enough of your own code to have expectations.
- Fixing something when it breaks. Six months later, the file format changes and the script stops. Someone has to read it and understand what it was doing.
The model removed the typing. It did not remove the thinking, the checking, or the responsibility.
The comprehension trap
There is a specific failure worth naming, because it catches motivated beginners.
You ask for a script. It arrives. It reads clearly, you follow the logic, you run it and it works. It feels like you understood it — and reading code you would not have been able to write is a genuinely convincing illusion of competence. Then you are asked to change one thing, and nothing comes.
Recognition is not recall. The gap only shows up when the assistance is removed, which for most people is exactly the moment it matters: an interview, a broken script, a decision about whether a result can be trusted.
Avoiding it costs less than it sounds. Type things out at least once rather than pasting. After reading a solution, close it and rebuild it. Change something on purpose and predict what will break before you run it.
What "knowing Python" is worth now
The floor moved up and the ceiling moved further away. Being able to produce a hundred lines that work is no longer distinctive. Being able to look at a hundred lines and say "this will fail on the first row with a missing date" is worth more than it has ever been, because far more code is being produced by people who cannot.
For non-programmers, the calculation is different and often better. If you work with data in a spreadsheet and have hit the point where the spreadsheet fights back, a modest amount of Python plus an assistant is an enormous upgrade. You are not competing with software engineers. You are trying to stop doing four hours of manual work a month, and the level required for that is genuinely small.
How to learn it differently
- Learn to read before you lean on generation. The first weeks should build the ability to look at a block of code and say what it does, line by line. That is the skill everything else rests on.
- Use the model as a tutor, not a vending machine. "Why does this fail?" and "what would break if the file were empty?" teach you something. "Write me a script that…" teaches you nothing.
- Finish small things. A calculator, a guessing game, a script that renames your files. Completed projects force you to combine ideas, which is where understanding actually forms.
- Break things deliberately. Take working code, change one line, predict the failure, then run it. Ten minutes of this is worth an hour of reading.
- Write the error message down. Most beginners lose hours to about a dozen recurring mistakes. Once you can recognise them, you stop losing the hours.
The honest bottom line
If you wanted to learn Python purely because it looked like a route to a job title, that route is more crowded and less certain than the internet promised. Go in with clear eyes.
If you want to stop being stuck — to be the person who can check the answer, fix the thing, and know when the confident output is wrong — then this is a better time to learn than any that came before it. You have a patient tutor available at 11pm, and the tedious part of the work has been taken off your hands. What is left is the part that was always worth having.