I failed for years to learn to code. Here are 3 of my biggest mistakes and how I overcame them.

For years I tried to learn to code.

I started a variety of online courses, each time burning out after a few weeks. I would get bored, frustrated and forgot why I started in the first place. Other priorities and "life" took over each time.

This year, I finally completed Harvard's CS50 online course. Whilst i'm no world-class programmer, i've written code that has saved hundreds of hours of valuable clinician time for the startup I work at, i've uncovered insights in real world patient data, and took our side-hustle product to the next level.

It's become an incredible source of career leverage, and my only regret is how much time I spent spinning my wheels. Here are three of the biggest mistakes I made along the way, and how I eventually overcame them.

Mistake 1 - Not being clear about my why.

Learning a new skill from scratch is difficult.

Whenever I hit a wall, I started to ask "why am I doing this again?". I started overthinking. I compared myself to other professionals who had learned to code and became full time developers. I did irrational and irrelevant things like looking at software engineer salaries, comparing aspects of a programming job to mine. Basically anything to avoid the discomfort that comes with learning something new.

For me, writing out a statement of intent was what finally made it click.

"I'm learning to code because I want to have a basic technical literacy. I believe this is a fundamental skill like reading, writing, or communicating well."

Having a clear, simple statement of intent stopped my brain from creating a bunch of irrelevant excuses. When the going got tough, I stayed true to the reasons I started.

Mistake 2 - Not being clear about the when and the how.

A lack of clear action plans meant I stagnated in my first few attempts when life got busy.

The big unlock for me was setting a process-based goal.

I committed to doing 6 hours a week of the CS50 course - no more, no less.

I was fully in control of the outcome. Every Sunday for four months, I would look at my calendar and find six hours in the week where I could sit down and do the work.

There were weeks where I got stuck, but as long as I kept working at it and learning, I was happy. I was winning all along the way.

Mistake 3 - Forgetting to having fun.

This is a lifehack that really applies here: don't do things out of a sense of obligation.

I reframed my thinking from an "I should" to an "I want to" mindset each time I sat down to code. I reminded myself that this was something I was genuinely curious about, and shut off the part of my brain searching for the upside. I started to actually have fun.

When I got stuck, I called a good friend of mine who was a software developer. Those pair debugging sessions became an opportunity of us to connect over his work, and it made the process of learning a lot more fun. I still remember a hilarious conversation when he tried to explain recursive code to me.

If you've tried to learn something new for ages but have failed, try addressing these three mistakes and you'll surprise yourself.

Bonus: Pictures of my actual bullet journal

Life gets in the way. The practice wasn't perfect. But I still got there in the end.

Image
Image
Image
Image

Found this interesting? Follow me on twitter for more

Enjoying my writing?

Sign up to get an email once a month of my favourite essays, book notes, and more. No Spam, promise.