How to start learning to code anything

The learning pyramid shows us how well we understand and remember things depending on how we learn them.


Notice the best method is to teach others. How can I teach something I don’t know? Well as soon as you learn one little thing turn around and teach it. I recommend writing a medium article to teach others as soon as you learn anything. Not only does it provide a reference in case you forget how to do something, but it increases your retention by forcing you to confront and deal with your misunderstandings.


First develop practicable goal of what you would like to accomplish. Goals such as read n coding books encourage you to waste time in the 10% retention range or goals to complete an online course at 20% retention are not as strong as goals such as “Make an app that does xyz” in the 75% range.


Enroll in a class with a good teacher, you can find them at a bootcamp, Upwork (probably over seas), a generous friend, or in University (but you will overpay in most cases). Over time you will find skilled people on Github, StackOverflow and Linkedin who will help you. Just remember if you ask questions, make sure you thoroughly act on them that is the currency of mentorship: the mentee appreciates the time of the mentor and the mentee acts on the advice and the mentee does not feel entitled to it (remember its probably free).

Even though its 50% its really important. Being a developer is the same as accepting constant frustration on a routine basis. Especially when you are starting the level of frustration can be overwhelming. Just remind yourself that this is normal. Its only emotions. Also, having a mentor of sorts to help get you unstuck is crucial for mitigating frustration. Commit up front to not being deterred. Sometimes you might work on a problem for weeks. Don’t sweat it. It happens. By the end you will save so much time from what you learned.

How to Google search properly.

The other methods have such low retention that they shouldn’t take the time of higher retention activities.

The 2 requirements to start any project are the respective Integrated Developer Environment IDE which you may need to download, and the choice of language which you probably won’t need to download because its reader (compiler) comes for free on your machine or with the corresponding IDE.

  • 🤖 Non-Apple phone development aka Android development, uses Kotlin (Easier), or Java (Harder) with Android Studio as the go to IDE. Android is the operating system.
  • 📱iPhone Development, uses Swift (Easier), and or Objective C (harder) with Xcode as the go to IDE. iOS is the operating system.
  • 🌐 Web development uses HTML, CSS, and a backend such as Javascript. I recommend using Visual Studio.

With that in mind if I am trying to do something I generally follow this format.

"How to do x" "<Language>" "<Operating System>"

What this will reveal to me will start me down a path to hone my question to become more specific and use more appropriate or alternative jargon to find something useful and actionable.

It might lead me down a rabbit hole that has me refactoring my search anywhere from 1–20 times to hone in on what I’m looking for.


You must switch your motivations so that you maximize your motivational impact. For example before you start, tell yourself its easy! Or whatever you can to get yourself to do to start. When you start and are starting to get frustrated, acknowledge the difficulty and accept yourself and your struggle so that you stick to the project.




Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

MYLS (Make Your Life Simple)

Writing Without Thinking is Injurious to a Project’s Health

Congratulations Tank#2914 🎁


Horizen Source Code Audit

Kristian Hamilton — Frontend developer

Hosting .net application in Azure VM using IIS

How Do I Know When My Company Needs Custom Software?

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store


More from Medium

The best way to become a Solana developer

Super Useful Tips to Improve Trading Forex

Understanding of Web 3.0 industry