What’s your idea of learning to code?

Many picture a straight road. Then quit at the first sign of struggle. Or because they think they're dumb.

But here's how to learn efficiently.

[thread]
1/ The struggle is the way.

Learning to code is at least 50% struggling.

Especially at the beginning. And that’s how it should be.

I’ve seen people quit because they don’t want to struggle with bugs.

But that’s like hating the gym because you don’t want workouts to hurt.
2/ Neuroscience shows that practice doesn’t make you perfect.

It is deliberate practice to improve in a specific task that makes you perfect.

And deliberate practice involves struggling.

Your mantra should be:

• code.
• debug.
• struggle.
• overcome.
• Then repeat.
3/ You’re not dumb, you’re learning at the wrong level.

Not all introduction courses are intro enough for you.

Some intros can be advanced because your thinking is not wired yet to programming in general.

There’s no shame in finding something lower and starting from there.
4/ Intro for kids is also great for adults.

I don’t see this recommended enough but if you’re struggling with intro courses, you should switch to programming for kids.

Learn with tools like:
- Codewars
- Scratch
- Alice

They can give you the soft intro you need badly.
5/ One project > 10 `hello worlds`

I understand the thrill of completing simple exercises. But I have to be honest with you.

This won’t cut it!

No matter how many Intros you learn, you’ll never get past the basics unless you push yourself to.

Start learning projects ASAP.
7/ Motivation is like taking a hot shower.

Taking a hot shower feels good - you should do it.

But if your hot water is out for 2 weeks, would you not shower?

In the same way, don't base your learning on only days when you're motivated to learn to code.

Learn to learn daily.
8/ Pre-commitment is your friend

On days when you feel super motivated to learn, use your motivation to quickly commit yourself.

Commit to something big that will keep you accountable when your motivation goes dry.

Example:
#30daysofcode
#100DaysOfCode
#30daysCodingChallenge
9/ Learning is never-ending

No one teaches you how to learn. But it’s crucial in going far.

You may have started with the idea of simply learning to code or to one day become a developer.

Keep going!

When you come out on the other side, you'll be proud of how you transformed.
10/ The End.

If you enjoyed this like and retweet the beginning of the thread to spread to others who need help too.

This thread is part of an initiative to help new coders and junior devs.

Have any questions? DM's open.

Here's a longer blog post: https://www.lifetechpsych.com/learn-code-efficiently/
You can follow @LifeTechPsych.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: