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:

  1. 💹 The FAST method to learn anything
  2. 🔁 Spaced repetition
  3. đŸ€đŸ» My accountability partner
  4. đŸ‘Ÿ Scrimba Discord community
  5. 📚 Tech Resume Inside Out
  6. 🍅 The pomodoro technique
  7. đŸ€” 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:

In the #⭐i-got-hired channel 3-4+ developers post a week, as they get 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,

  1. 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!
  2. 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.