When I first started my self-learning journey I would try to memorize everything, from every HTML tag to every use case of every CSS property. Because of that, I felt like I was making no progress. Every time I would try to code something I could not think of the exact code off the top of my head and I thought:
- I am so stupid.
- This is not for me.
- Why can't this just stick?
Little did I know that my learning approach was completely wrong. It wasnβt until I completely shifted my learning approach that I started to make significant progress.
In this article, I will show you why memorizing is not the right approach in learning to code. I will also share some quick tips to help you shift your learning approach.
Google is your best friend
You do not need to memorize everything. Even the best software engineers still Google and copy and paste from stack overflow. If there were perfect engineers there wouldn't be software updates every few months. If you know how to Google properly and use the correct keywords to find what you are looking for you are set. Instead of memorizing focus on problem-solving skills practice by building projects and going on websites to practice algorithms and data structures.
Muscle memory
You can reference the muscle memory phenomenon and use it to help your learning process.
βMuscle memory is a form of procedural memory that involves consolidating a specific motor task into memory through repetition, which has been used synonymously with motor learning. When a movement is repeated over time, a long-term muscle memory is created for that task, eventually allowing it to be performed with little to no conscious effort.β -Wikipedia
The more you practice the more you will understand and you will begin to think like a programmer. You will know when to use a specific HTML tag or CSS property or even think of JavaScript functions a lot easier. You will be able to "dream of code" and understand how it works.
Programming is a completely different way of thinking. Most brains are not programmed to think this way. You have to teach your brain how to think like a programmer.
Quick Tips
When you are studying and writing out your notes make sure they are properly structured so that it is easy to go back to them. You will always have to revisit your notes. This is one of the reasons why I like having digital notes. I can easily search and find what I need.
Talk to yourself!
When you are coding talk to yourself and explain every step. Why are you using a specific CSS property or what is your function doing.
Especially when you are stuck on a bug this is the best time to learn. Talk to yourself through the problem. Go through every step.
There are a lot of different approaches you can take when learning to code. It all depends on your learning style and what works best for you. I hope this was helpful.
If you are even a bit intrigued and are interested in learning to code lets connect! I would love to help in any way I can.
Photo by Jesse Martini on Unsplash
Top comments (47)
This reminds me of some of the best learning advice I ever received. It came from my A-Level Physics teacher:
He meant essentially that any amount of last minute cramming, or just trying to stuff your head with information that you didn't fully take the time to really understand - is completely futile.
Learn by doing - it's the key to understanding
100% agree! cramming never helped me in uni. Actually, it made things worse haha
This is why I tell interview candidates that they can use Google/Stack Overflow/MDN/whatever to complete the mini app I have them build. It's silly to expect anyone to know everything, especially with the multiple technologies required in the world of web apps.
Watching what a candidate searches for and how they use the info they find is very revealing about how they think, which ultimately shows me how they problem solve better than just reading whatever code they wrote (or copied) after the fact.
Seriously? Respect π for you and all those who think this way. I wish I could be interviewed with that maturity someday :XD
One coding interview I did something the interviewers didn't know about (and subsequently started using in production code), simply because of Intellisense.
This is great! Better than a lot of interview experiences I've heard of from others
Good point about well structured and easily accessible notes. That's why I would always convince anyone to have your very own personal wiki with all quick tips, code snippets, cheat sheets and recipe for cheesecake :) just everything. Don't use your brain to do things which can be done more effectively by simple software.
yes! I use the notion app for everything I have my own notes on everything it is extremely helpful. I also include code snippets that I always end up referencing.
Great advice. It reminds me of a talk by Barbara Oakley, a professor of engineering who also teaches a course called "Learning how to learn". In the talk, she pointed out that our education systems often focus on declarative learning, which is mostly concerned with memorising facts at a conscious level. In contrast, procedural or implicit learning is more akin to gradually building a program in your head that carries out a task expertly with almost no mental effort. The way to take advantage of procedural learning is of course to just practice and try things, rather than trying to memorise overly specific facts.
It sounds like a very insightful talk. I think especially in the tech industry procedural learning is key ποΈππ
Love your post. I wonder if people get this idea from interview horror stories. Regardless, I encourage you to look up stuff and take notes just like you are doing. I love that you use notion I used to keep a little wiki locally but notion is much easier. The benefit of looking stuff up too is that you will develop your ability to filter out bs. Its an overlooked but important skill especially if you are looking for answers to 'hot' technologies everyone throws stuff out there but its not always high quality.
100% agree! Knowing how to use the correct keywords in your search is a skill π we al need to constantly practice
"Talk to yourself" actually has a particular name. Rubber duck debugging.
en.wikipedia.org/wiki/Rubber_duck_...
Yes I've heard of it π but I don't have one. So I Just talk to myself π
So true and I had it today. It was about the 'option' element and I knew that aside of the 'select' element there is another element where the 'option' element is used but wich one? I couldn't get it into my head, so I went to mdn to figure out that it was 'datalist'.
I totally agree! I'm a webdeveloper for more than 15 years now, and I have never had any education in webdevelopment. Btw, no education in using Google as well of course. ;)
But during that days it was normal to use any search engine. "Programming" in the early days at least for me, was being able to search, find, copy-paste and apply to your own project.
And 15 years later, that's what I still do. However, seems experience caused me to gain some knowledge and muscle memory as well :D
I definitely talk to myself. I am lucky enough that with my current position, my office has a white board. When I am trying to solve a problem, I will draw the idea out, and specifically talk out loud to see where it will all go. This trend does help me flesh out what I want to do.
I have been meaning to get a white board. I always end up talking to myself and scribbling on some paper .
Itβs one the most important ability the every developer should have and thereβs no recipe, everyone must find the best approaches fits for you.
But, as was mentioned, have a organized structure is the key point.
Yes! Since structuring my notes and learning process o have been able to learn a lot more and a lot faster ππ
Some comments may only be visible to logged-in visitors. Sign in to view all comments.