When I started learning programming on my own, I made a lot of mistakes that slowed me down. Looking back, I realize most beginners fall into the same traps. So instead of just saying "don’t do this," I want to share what actually happened to me and what I learned from it. Hopefully, this saves you some time and frustration.
1. Don’t Rely Too Much on Tutorials
Watching tutorials is fine, but depending on them for everything is what people call "Tutorial Hell."
I remember binge-watching an old Java playlist without really understanding it. The moment I wanted to build a project, I froze and didn’t know where to start or how to structure anything.
Instead, use tutorials as a launchpad, but make sure you’re building small projects along the way and YOU SHOULD FAIL AND F'D UP BIG TIME TO LEARN. Even something simple like a to-do app teaches you more than endless passive watching.
💡 If you are really the type of person that learns through video, you'll definitely like Scrimba, check it out.
2. Don’t Write Notes Like a Court Reporter
Back then, I wrote down every single thing from tutorials, the entire code samples, word-for-word explanations. The problem? I never used those notes again.
A better way is to write your explanation of what you learned, in your own words, and keep it short. Google already has the reference material; your notes should be a shortcut for your brain.
To retain it much longer, you can try spaced repetition with your notes. (I want to do a shameless plug about my note taking app with diff learning methods + chatgpt api for summarizing and etc. but it's not usable rn as I ran out of credits)
3. Don’t Be Afraid to Ask for Help
At first, I thought asking questions made me look dumb, so I tried to figure out everything on my own. The truth? That mindset slowed me down. More experienced people often already solved the problem you’re stuck on.
4. Stick to One Programming Language (at First)
I said at first because later on, you’ll probably need to pick up other languages for work or projects. But starting out, focusing on one will make your progress much faster.
I jumped from Java → Python → Kotlin → JavaScript in just a few months. Big mistake. Instead of focusing with the fundamentals and going deeper into one language, I kept restarting from scratch.
Start learning the programming fundamentals in one language, once you are comfortable with it, switching to another one will become much easier
5. Blackbox topics you think might be needed in the future (this one works wonders!)
Blackboxing a concept or topic is like putting it in a mental storage box. You don’t need to understand every detail right now, just set it aside, know what it does at a high level, and come back to open that box when you actually need it.
Early on my self studying journey, I worried about backend while I was still learning frontend. Instead of trying to master both at once, I started “blackboxing” backend concepts, like randomly searching terms about it, skimming through blogs, watching short videos just to be exposed to a topic little by little.
💡 Why this works: You’ll hear terms and concepts way before you need them. By parking them in your “future learning box,” you’ll already have some mental hooks when you finally study them. Example:
While learning frontend → note: "Backend = where data is stored & managed."
Later, when learning backend → "Oh, this is the part that powers the data my frontend shows."
Thank you for reading up to this point! I made this in Oct 2022, and I just decided to post it today!
👉 If you’re a beginner: did this blog help you, or do you relate to any of my experiences?
👉 If you’re experienced: what’s the biggest beginner mistake you made when you were starting, and what advice would you give to your past self? I'd like to know it!
Top comments (0)
Some comments may only be visible to logged-in visitors. Sign in to view all comments.