Is it still worth learning to code from scratch when AI coding tools are evolving so fast?
Posted by Chief_Spike@reddit | learnprogramming | View on Reddit | 39 comments
I’m relatively new to programming (work as a PM, so not starting from ground zero) and have been learning React. I’m doing this because I want to be able to build fullstack products (may consider transition to SWE).
Right now I’m trying to figure out where my time is best spent. Do I:
- Go deep and learn React/JS properly
- Move fast using AI tools and figure things out as I build
AI tools like Cursor are already great at writing and explaining code, at least in my limited usage, and they're only getting better and better. Which makes me wonder, will knowing syntax and structure really matter a year from now? At the same time, I don’t want to just cheat my way through problems and regret it later. I want to be able to debug, understand what’s going on, and make intentional architecture choices.
What would you do if your goal was to become a fullstack dev who can ship (possibly AI-enabled) products quickly? How would you balance fundamentals with speed? And does syntax knowledge/being able to read your code even matter anymore?
Lotton@reddit
How would you know the ai is feeding you total crap of you never learned how to code?
alien-reject@reddit
this is soon like asking how do I know if my gps is feeding me wrong driving directions if I dont know the area?
ConfidentCollege5653@reddit
Yeah eventually but people gave saying developers are about to be replaced since the 60s
alien-reject@reddit
And this is the first time we have something even remotely close to making apps with little coding knowledge being required
ConfidentCollege5653@reddit
That's what they said every other time
alien-reject@reddit
now you're just making shit up. show me where someone could vibe code an app without prior coding knowledge in the 60s
ConfidentCollege5653@reddit
I didn't say vibe coding. But also people can't vibe code a decent app now.
COBOL was pitched as allowing business people to create applications rather than dedicated coders.
Drag and drop style application builders promised the same.
Nocode solutions promised the same.
There's been several AI winters when the next big thing turned out to not be good enough to drive cars or write apps or produce sentient robot butlers.
alien-reject@reddit
Define decent app, I’ve made a decent app and made some money so that’s decent to me
ehr1c@reddit
That analogy only holds if your GPS had a reasonable chance of directing you to drive into a lake
ConfidentCollege5653@reddit
In the early days of GPS there were numerous incidents of GPS telling people to drive into lakes, off cliffs, etc. and several people blindly followed the directions.
They were the vibe coders of their time.
plastikmissile@reddit
And people didn't have eyes and realize it was telling them to drive into a lake?
ConfidentCollege5653@reddit
Indeed. It happened more than you would think.
plastikmissile@reddit
Show me the numbers then because honestly i don't believe you.
ConfidentCollege5653@reddit
I mean don't get me wrong it's not happening by the hundreds, but there are occasional news stories still
https://theweek.com/articles/464674/8-drivers-who-blindly-followed-gps-into-disaster
For example
plastikmissile@reddit
So it's rare. Which means your analogy only holds if instances of AI not being able to create production code is rare, which is the opposite of what happens.
ConfidentCollege5653@reddit
My (badly articulated) point was that even with generally reliable technology some people still make the mistake of blindly trusting it and get into trouble. So something as unreliable as LLMs are very dangerous.
plastikmissile@reddit
But that's the whole point. AI code generation is still not reliable when it comes to real-world cases. Not even close. It's very good for toy requests, which gives a false sense of security. And since people who are still learning generally learn using toy apps, using AI quickly becomes a dangerous crutch that lulls them into thinking that they are ready for real-world tasks (i.e. jobs).
ConfidentCollege5653@reddit
I'm doing a horrible job here, because I agree with you 100% and I'm failing to articulate that.
plastikmissile@reddit
LOL. That's fine :)
Lotton@reddit
Think of it less as a GPS and more like if you give a Carpenter a table saw. If I used a table saw sure I could put something together but it's not going to be as good as the carpenter with the proper foundation
d9vil@reddit
This…if you dont understand the fundamentals, then youre just writing shit code and then replacing that with shit AI code in the name of refactoring.
deanlinux@reddit
done a programming courses where even the IDE was banned, even the exam was hand written. Develop the skills first. Went on a helicopter course and they used a basic helicopter without all the fancy autopilot stuff so you can learn proper 😀
code_tutor@reddit
https://www.reddit.com/r/myHeadstarter/comments/1dzzwns/what_are_your_strategies_to_learn_fast/
PM discovers AI and wants to vibe code, needs to learn fast, and can't search but wants to be a dev meme.
Did you really ask if you should "learn properly"? It seems like the only question in learn subs is "do I have to learn?"
AI is hit or miss. It can instantly do a small project. It can also fail at simple tasks. Who is going to take over when it falls?
There is no chance of a career as a vibe coder. Consider how much someone would get paid to do it if there's no learning required. This will be a dirt cheap outsourced job or done by seniors if it fails.
It's going to take many thousands of hours of concentrated study to learn full stack. The best way to learn is with structured courses. You're already wasting huge amounts of time by not learning programming and JS before React, which is like skipping a few math courses and trying to learn by reading only homework answers. People often mistake this as a prudent optimization. Something like CS50 and the Odin project is good.
Debugging is a different skill set, which mostly comes from experience but also from using a proper IDE, using a debugger, and understanding error message vocabulary.
Architecture is also a different skill set. It could mean system design. It could mean cloud. It could mean code organization. These are separate things to study.
no_regerts_bob@reddit
Entry level coding is already over, a lot of people just don't understand that yet or want to pretend it isn't true. The path from zero to career is no longer clear. It's definitely not what it used to be
Trying_to_cod3@reddit
The answer to learning programming has never been go deep instantly (you'll forget everything)
gametorch@reddit
mmmm, I would disagree. I think a lot of people learn the most by immediately getting their hands dirty. You need a tight, direct feedback loop. Set out to do what you're ultimately trying to achieve and you'll learn a ton along the way.
While I respect your opinion, I think you gotta go deep and fast to learn the quickest.
Trying_to_cod3@reddit
I think we just disagree on what digging deep means. OP said
one or the other:
In that case going deep sounds like reading a textbook, watching a tutorial, or studying the nitty gritty. I think what we both are saying is you need to make a project and learn what it takes for your specific needs.
gametorch@reddit
Ah yeah in that case I completely agree with you
Turnip_The_Giant@reddit
I think this is inadvertently a good example of why these questions are so impossible to give a good broad answer to.
People learn in such fundamentally different ways. What will work for one person will just frustrate or confuse the next person so it really always just comes back to figuring out how you learn and adapting that to x subject. You have to do it a million times a week as an actual dev.
TheRealApoth@reddit
And you gotta embrace failure. Lots of it. Possibly for weeks or months. If you don't fail at least a little, it's likely you aren't pushing yourself.
alien-reject@reddit
if your goal at the end of the day is to make apps that users will use, then just start with AI coding, if you want to be a engineer then go to school and get a degree. AI coding will be the go to for mainstream, and engineers will be the ones making and overseeing those apps that AI tools become
AleksandrNevsky@reddit
You should not use an AI to code anything you yourself cannot. You should use it AT MOST for just speeding up something you're capable of doing on your own.
This means you should learn to code, learn design paradigms, and learn how to bug fix. Why? Because the AI can and will fuck it up and then it's up to you to correct the mistakes.
XerTheSquirrel@reddit
Yes. AI will impede you and put a ceiling on your abilities. An AI is essentially doing the wirk for you and thus you cannot develop the cognitive abilities required to program.
Programming is a different mindset which you need to get into. It is very scientific method, theory, and execution. It can look easy from a management position because problems and solutions are simplified before they get to you. You will have to look at things from the bottom up.
Neither, take your time to learn programming concepts and why things are done a certain way.
None of these, programming is much more than trying to make things go fast, code or product wise, or being able to read syntax. It is a mountain that you will fail to climb multiple times, only to realize that there is a higher mountain once you reach the peak. Humility and learning from failures is required if you want to go beyond basic competency.
Kallory@reddit
Yeah think of AI as augmented intelligence not artificial
NarayanDuttPurohit@reddit
Yes, you need to learn programming, you may need not to programme yourself, 'cause imagine the results of detailed prompt of programmers vs prompt of someone who does even know what a switch is,by switch is bad, how to get around switches
gametorch@reddit
Yes, I think it's definitely worth it. You save a lot of time by knowing what prompt to right without having to do any research. You also save a lot of time when you can do the occasional surgery yourself.
But totally valid question!
StrikingImportance39@reddit
U won’t go very far only with AI. The best u can be just a junior dev.
For anything more serious u need to know stuff.
vasupol11@reddit
Move to AI is obviously the move, but you need to learn the basics to move there to do impactful stuff.
Because AI hallucinations are still very real. It will throw you off the tracks, fix things you didn’t ask to be fixed, and you need to guide it along as much as it has to guide you.
If you know how to code with the right mental framework, AI will make you work 10x-100x faster depending on the phase of the development. The beginning could be 100x , then generally it will slow down as you get to the specifics.
killaakeemstar@reddit
If you have to ask that question then no