Learning to code is hard, but I truly believe anyone can do it with the right resources!
I have been working as a junior web developer for a year now, but it was never obvious to me I would get a job. Some resources really turned things around for me and, in this post, I am going to share them with you:
- đš The FAST method to learn anything
- đ Spaced repetition
- đ€đ» My accountability partner
- đŸ Scrimba Discord community
- đ Tech Resume Inside Out
- đ The pomodoro technique
- đ€ Embracing stoicism
The FAST method to learn anything
Jim Kwikâs FAST method will help you learn web development faster.
The acronym stands for Forget, Active, State, and Teach. Letâs break it down.
Forget
In his book Limitless, Jim explains:
People donât learn faster because they feel like their cup is full. You want to forget what you already know about the subject so you can learn something brand new.
When learning something new, what we think we know about the topic we are trying to learn can stand in the way of our ability to absorb new information.
When learning arrow functions for example, I took a break and started from scratch.
Act
To learn to code, you need to act:
- Write code
- Talk about code
- Build projects
- Do coding tests
- Turn what youâre learning into social media posts
No matter how interesting a course, video, or coding book is, you wonât remember it very well unless you act to put the information to use.
State
All learning is state-dependent. What is state? Think about it like a snapshot of how your mind and body are feeling.
If you are agitated, overstimulated, or underrested, you're not going to retain information very well.
On the flip side, we remember information best when there are strong emotions associated with it. I doubt you would forget your first kiss, for example! Remembering how hoisting works in JavaScript howeverâŠ
When an event involves emotions, your brain considers it important and remembers it for a long time.
In practical terms, if you want to remember code better, you need to spice up your learning process with some emotions:
- Learn with a friend and laugh
- Push through your nervousness and raise your hand at a meetup
- Boost your mood through a quick workout
Most importantly, keep on coding. Every developer eventually makes a âsillyâ mistake and feels embarrassed. Due to that strong emotional feeling, theyâre not going to repeat that mistake in a hurry.
In time, youâll solve your first âimpossibleâ bug and feel elated. Youâll remember the debugging process and implementation details for a long time, compared to if you were just pouring oer learning resources.
Teach
The final letter in the FAST acronym T stands for Teach.
âWhen you teach something you get to learn it twice.â
Consider teaching what you learn to your friend or by recording a YouTube video or volunteering to talk at an online meetup.
Knowing you will teach something, makes you learn and remember it better.
Spaced repetition
Itâs tempting to cram information. New developers have a lot to learn, after all! But the science about how we learn is clear. Cramming does not work.
The graph illustrates that when you first learn something, the information disappears at an exponential rate:
In my experience, cramming actually had a negative impact on my learning because I felt stressed and I couldn't remember anything. It made me feel frustrated and my confidence took a knock. Understanding how memory works and the importance of spaced repetition changed the game.
To reduce the rate at which you typically forget, I learned you have to reinforce the information a few days apart. Every time you reinforce your training, the rate of decline reduce. The more you have studied the topic. The longer gaps you can leave between reinforcement sessions:
In practical terms, you might take notes from a book on day 1, review those notes on day 2, put what you learned to practice on day 4, and teach a friend what you learned on day 6.
My accountability partner
Like many before me, I started learning to code on my own. Also like many before me, I fell into the trap of watching tutorials and not building projects from scratch. You might recognise this slippery slope by the name tutorial hell đ„.
It was only when I reached out to a friend that I gained the confidence to build something on my own. At times, we would pair program together, which put me in a good State to learn FAST.
As we completed Scrimbaâs Frontend Developer Career Path together, we would set goals for each week, and then discuss the topics we learned and the issues we faced.
If youâre wondering where to meet an accountability partner, try Discord. Since I was learning on Scrimba it was very natural for me to join the Scrimba Discord community
Scrimba Discord
Once I joined Scrimba's discord channel, I was inspired by two of their channels - #đ·đ»i-built-this and #âi-got-hired:
It was inspiring to see other people and read about how they made it.
Even though I had completed Scrimba's Frontend Career Path, I didnât feel confident to apply for jobs. I spent more than 2-3 months figuring out what I wanted to do next.
Eventually, my accountability partner told me to me:
You have nothing to lose, just start applying!
I started applying using just LinkedIn, but I wasn't getting calls for the interview.
Perhaps it was my resume?
Turns out my resume template looked nice but I rolled with it too quick without thinking through my selling points and story.
Someone in the Scrimba community suggested a book called The Tech Resume Inside Out. I's about making a resume that gets noticed by the recruiters.
Tech Resume Inside Out
This book by a former Hiring Manager at Uber teaches developers how to make their resume pop. In the book, the author invites people who actually do the resume screening (other engineering managers, recruiters, and senior developers) to share their take.
Best of all, itâs free for anyone who doesnât have a job. Claim your complimentary copy here.
I spent a good amount of time making my resume with the information thatâs absolutely necessary, removing any unwanted stuff, showing my strong points and things I have worked on. A few days later I got a call for an interview!
The pomodoro technique
The pomodoro technique is a time management system whereby you divide your tasks into 25 minute âchunksâ. You focus for 25 minutes, before taking a 5 minute break.
It helped me in two ways,
- When my motivation was low, the pomodoro technique helped me get started. Once I did one pomodoro, I would often do 2, 3, 4, or more!
- When I found tasks daunting, I broke them down into 25 minute chunks. This made the work more approachable.
Embracing stoicism
Stocism is technically a philosophy but itâs more approachable to think about it in terms of quotes, idea, and advice to help deal with stress and uncertainty. Something new developers know all too well.
It is not because things are difficult that we do not dare, it is because we do not dare that things are difficult.
âThe impediment to action advances action. What stands in the way becomes the way.â
The verdict
It would have been nice if someone showed me the path from the beginning but, in the end, there was only my path. You have your path as well. While you might not use the same resources as me exactly, you should be leaving this post with some ideas about what you could try.
The imposter syndrome doesnât go away; you just have to know what you control and whatâs outside of your control. There are off days, where I couldnât be productive, but there are also good days, so it eventually balances it out.