Photo by Rodolfo Quirós/ Pexels
Learning a new programming area like Java, ASP.NET, lodash, CSS or ABAP can be difficult, because you have to learn a lot of new stuff on top of what you've already studied. It's not specific for programming. The same problem happens when you want to learn rocket science or string theory. Fortunately there are methods to make learning new coding material easier.
1. Dividing Material into Measurable Goals
First, you have break your material into sections that are easy to comprehend, and write down goals for each section. For example "I'm able to manage an array in C#", or "I can deploy TypeScript app to AWS", or "I know Python syntax", or "I can build a subscription page with Next.js and Stripe".
2. Minimizing Distractions
Next, you have to get rid of all the joy in life. Disable notifications, find a quiet place, or use good headphones, to minimize distractions. That way you'll absorb material faster and better.
3. Effective Note-Taking and Repetition
One forgotten, almost ancient method of learning is note-taking. It goes long way beyond learning programming areas. But for that single purpose it's great. Note down most important things, or ones you find important to remember. That way your brain gets a suggestion to make more neutral connections and that the material you're studying is not a throwaway short video, but something you'll earn money with.
4. Making Connections
Learning is connecting. Our brains ignore things that we can't connect with our memories, emotions, world, literally anything else we store. So how should we connect programming knowledge? Mostly a world of abstract concepts? It's the most important part of learning, to figure out connections, even if they don't make a lot of sense, it's something our brain needs. For example Summon The JSON programming flashcards connect programming interview questions and programming aspects with a fantasy world. That way, different parts of our brains activate, making learning smoother and nicer.
5. Structuring Information
Information you gain about a new programming area can be organized in various ways. You can have cheat sheets, notes, drawings etc. All of these made by yourself are ways of structure the information. That way your brain may not know the information, but may remember the structure that you'll be able to navigate to find the information you need. It's the concept of navigating through corridors of levels of a memory palace technique employs.
6. Diverse Learning Materials
Utilizing a variety of learning materials is essential. Our brains respond to different stimuli, so incorporating books, video tutorials, bootcamps, studies, flashcards, exercises, and personal projects activates various areas of the brain. Again, the more various input you'll give to your brain, the better it will be at remembering stuff. Because it will feel it's surrounded by Java and has to learn the enemy :)
7. Breaks, Sleep, and Relaxation
Taking breaks, ensuring proper sleep, and allowing time for relaxation is also very important. I can't stress it enough.
Actually I'm strong believer we only prepare the input during the day, and actually learn during our sleep. For this to happen, you have to keep your stress level low, try to understand as much as you can during the day, and leave stuff you can't understand for the night. During the night your brain will figure out the rest, while you sleep about buying a Tesla.
Never give up on breaks and sleep when you learn, because it will undermine your results. Also, remember that a break is a time, when you don't waste your brain cycles. For example watching short videos, TV shows and gaming is great way to have a joy in life, but won't give your brain the necessary time to process. After every learning session give yourself some time doing something less brain demanding, something that doesn't fire up your brain before you'll start to play.
In summary learning new coding areas is hard. Especially, if you already learned so much. But using these methods will help you. Let's repeat:
- set up goals
- minimize distractions
- note down and repeat
- make connections
- structure coding material
- use various methods of learning
- take real breaks and sleep
Learning programming areas, like new technology, programming language, framework or React is done best when it's a balance between learning and relaxing. Wishing you all the best in the progress, and expanding your knowledge. Either if you're a junior developer or principal engineer, you can do it! You just need to use the tools mentioned above!