Hacking the Process of Learning to Code
5 ways to make your code sticky and brain friendly.
If you're reading this, you're probably an accomplished learner. You're learning every day, for sure, or you wouldn't last long in the world of code.
But is your learning optimised? Can you hack the learning process?
You bet you can. Here are 5 evidence-based ways to make your brain a sticky place for new code.
- Sleep.tight() Research shows that your brain processes the thing you were doing with it right before you went to sleep. So I switched from Netflix before sleeping to coding before sleeping.
Widely known and widely ignored, your brain needs extra sleep cycles when it's learning hard. Cutting sleep to code all night is a false economy. You'll feel busy, but like the fat and bloated code you wrote at 2 am, there is a more efficient way to run the learning algorithm.
- Immerse Yourself It's called a language for reason - there's grammar, syntax and culture in code. Evidence shows again and again that if you're going to learn Spanish, you want to throw out the phrasebook and get on a plane to Spain. The further you immerse yourself, the more you create an identity as a coder.
Identity formation is key to motivation and if you're new to the world of code this is especially important for you. Join a club, buy a t-shirt, get a bumper sticker. That's who you are now.
- Waste Time Nobody who codes a lot particularly likes to type a lot. Look at the proliferation of code-completion tools like Kite and you're looking at a lot of code jockeys who count key strokes.
But repetition has been proven again and again and again to be the best way to learn anything. Repetition can be maximised in every session just by challenging yourself to cut and paste nothing. All those extra key strokes build muscle memory.
- Go Hard Training sessions in the gym build strength and endurance by stressing the muscles and creating fatigue from which your body grows back stronger.
Laziness is efficient and thoughtful laziness is an excellent tool for success. But as a learning tool, laziness sucks. When you're in the learning zone and tackling a problem, intentionally ignore the way you know in favour of a harder, more complex, unnecessarily complex alternative.
Code hard, or learn nothing!
- Loop Cognitive load is the constant bridesmaid of the learning party - always there, always essential, and never getting any attention. Cognitive load is the number of balls you are juggling while performing an activity and the fewer balls the better if you plan to learn something.
Iterating through familiar tasks and incrementing the challenge in small ways is a great way to learn to code. When you revisit an old project or snippet you reduce the cognitive load because the aims, logic, flow and outcomes are all decided. This frees up your brain to focus on the cognitive load of learning.
Learning is a way of life and you might as well be good at it. Practice these 5 hacks surprise yourself with what you can learn is less time than you thought possible.