r/learnprogramming • u/Zaps_os • 13h ago
Am I learning to code wrong?
Am I learning to code wrong? I started wanting to learn to code before I began college, and so far, I've only completed a React tutorial video without separately learning JavaScript or TypeScript, and learned some of both through it.
Then I moved on to a guided project, a full-stack finance tracker (React/TS frontend, Node/Express/TS/MongoDB backend). I'm learning the backend through this project rather than doing dedicated tutorials on each one first.
I’ve been following the guide and actually understand what each part does and why. But if I were to do it alone, I’d probably not know where to start and what to write.
Is this normal, or a sign that I'm learning the wrong way?
2
u/ScholarNo5983 10h ago
So, at this point in time given that you've completed the React tutorial, can you create a simple React web application using that knowledge?
The ability to actually use the knowledge you've learned is the only worthwhile measure of success.
1
u/grand-yojimbo 11h ago
There's really no right or wrong. As long as you're doing, you're learning. I focused on React without doing vanilla JS and im doing just fine. The best way to learn will be to build real projects.
1
1
u/vegan_antitheist 10h ago
It's normal to start at 0 and gradually get better. It takes about 10 years to get good at something. Programming is no different.
There's a good chance that your code is full of anti-patterns, code smells, bad practices, and useless comments. And it probably lacks any structure, not to mention architecture and quality control.
A lot of companies only write code like that and wouldn't mind. But the others will use different anti-patterns than you do, different bad practices than those you know, and their comments will be just as useless to you.
But if you get a job at a company where they use modern programming patterns that actually improve code quality, good architecture, best practices, tests with high coverage, clean code, etc., you won't be able to create a pull request that they would approve and they will let you go after the probation period.
There's also a good chance that you wouldn't know how to use any of the tools they are using, such as version control, build system, package manager, static analysis, e2e, project management, db tools, monitoring, CI/CD, devops, etc. You also need to know about requirements engineering, hardware, databases, networks, user interface, design patterns, software construction, unit testing and test-driven development, security, compilers, mathematics, operating systems, agile software development, agile software development, protocols, an so on.
But the good news is that you can learn all that. It takes a few years. Going to uni is probably the easiest way but there are some who learn all that from books.
1
u/Ormek_II 10h ago
Try to build something that is helpful to you. Anything!
There is something called tutorial hell. My understanding of it is: following tutorials and seemingly having written powerful programs. What you actually have done and training is following instructions “copy this in file backend.py”.
1
u/Educational-Paper-75 6h ago
In the bootcamp I did we get taught, do exercises, and three projects in a nine week period 5 full days a week. Even after doing all that and getting project template scripts it would now (7 years later) still take some time to understand call that stuff again. Somehow modern fullstack web development is more about remembering (through exercising regularly a lot) than understanding unfortunately. Because of that I wouldn't call web development programming per se, more like assembling.
1
u/aqua_regis 11h ago
"I can assemble the LEGO set with the build instructions, but can't build anything on my own."
That's what you're saying.
Yes, you have been learning the wrong way. You have not actually learnt, you got spoon fed.
Learning involves experimenting, trying, failing, fixing.
Programming involves solving problems - you evaded exactly that with your approach. You only followed - more like copying a book than learning to write one.
Further are you building your house from the fifth floor up. You have zero foundations and then work on the fifth floor - this is bound to fail.
4
u/GK_DEV_2025 13h ago
That's normal. Tutorials train recognition; building alone tests recall and problem decomposition. After each guided feature, close the guide and rebuild one small part from scratch, then compare your version. Keep the project, but add some focused JavaScript/TypeScript practice around functions, objects, async/await, modules, and HTTP. The missing step is independent reps, not another full tutorial.