Learn to code, the hard way

These quick tricks will make learning to code as difficult and unrewarding as possible! *

Peter Gleeson
Jun 20, 2018 · 8 min read
A pinch of salt… Photo by Mira Bozhko on Unsplash.

1. Pick a really difficult language

Make sure to choose a difficult programming language. This will really set back your learn-to-code journey before it’s even started.

If learning to code doesn’t make you melancholy, you’re doing it wrong. Photo by Ethan Sykes on Unsplash.

2. Set up a nightmare coding environment

You may have heard of various text editors and IDEs (integrated development environments) that can be downloaded or trialled for free. Examples include Sublime, Atom, VSCode, IntelliJ,… and many more besides.

Via https://xkcd.com/378/.

3. Tackle major projects early on

If you’re serious about learning to code, then everyone knows you should make world record progress.

4. Never, ever ask for help

Despite its common, everyday meaning, in software development the word “beginner” actually refers to someone born with many years worth of experience and programming knowledge.

Learning web development? Don’t be asking for any help now… Photo by Kobu Agency on Unsplash

5. Take frequent six month breaks

You know what’s harder than learning to code?

You never got good at this by practicing every day. Photo by Nathan Dumlao on Unsplash.

6. Don’t read around the topic

It’s a well known drawback of the Internet Age — there simply aren’t enough things to read, watch, and listen to online.

Interesting books and blogs exist only in stock photos. Photo by Anete Lūsiņa on Unsplash.

7. Avoid interacting with more experienced programmers

The number one rule of learning anything is “stay clear of experts”.

Are these guys pair programming? No. Photo by Helloquence on Unsplash

8. Stay away from internships and job applications

Lastly, be sure to avoid Googling for internships and entry-level developer jobs in your area.


*Of course, if for some reason you wish to learn to code the easy way, follow the exact opposite of this advice.

Pick a modern, accessible and universally used language like JavaScript or Python or Ruby.

… editors and IDEs are widely used throughout industry by pros and experienced developers

Autocompletion, syntax highlighting, code-linting, and access to all kinds of extension packages all … make coding easier

There are many beginner-friendly, step-by-step learning projects out there

It is as easy as it has ever been to start contributing to popular, open-source projects

StackOverflow… full of developers of all experience levels answering each other’s questions…

…software pros with expert knowledge they want to share with programmers at all stages

Practicing ‘little and often’ is the best way to learn a new skill

Even 20 minutes a day can make a difference

Get into a regular habit of making learning part of your normal routine

Reading around a topic helps you develop a broader understanding

Chance articles can spark your interest in directions you may never have considered otherwise

They can be high-quality, written by experts, and very often entirely free

Visit a bookstore or a library

Pair programming is a great way of learning tricks and tips from more experienced developers

Experienced developers like talking about what they do

Ask all the same questions they had when they were starting out

Internships can provide real world experience of working in software as part of a team. They can let you get real feedback on how you are progressing. They can also help you decide if you are ready for a particular job role

Looking at job applications can help you gauge which skills you should focus on developing next

Interviews… get easier with practice and experience

Put yourself out there and aim high!

Thanks for reading!


This is no longer updated. Go to https://freecodecamp.org/news instead

Peter Gleeson

Written by

Founder Associate, Revolut


This is no longer updated. Go to https://freecodecamp.org/news instead