(Most) Coding Diagrams Are Useless — Learning to Code Using Analogies

The power of the analogy

When you’re learning something new, you usually have no context for it. That’s part of the problem. You have no way of connecting these foreign concepts to anything you already understand.

And that’s why I love using analogies.

Here are just a few of the analogies I use in my course:

  • ”How does a database work?”
    Well, I’m sure you’ve used a filing cabinet before…
  • “What’s the purpose of using a framework?”
    Do you know how every house is built on a foundation…?

If you’re learning to code, you probably don’t know what MVC is, or how databases work, or what the hell you use a framework for.

BUT you do know how to play with Legos, the purpose of a filing cabinet, and (I assume) that houses are built on foundations.

So when I explain the foreign ideas — the coding ones — side-by-side with things you already know, it allows you to develop a strong mental connection to this new knowledge — a pathway, if you will. It opens a door for you to include this new concept in your memory, by including it as a connection to something that already existed in there.

Learning a new concept using an analogy

And from then on, that connection can be “referenced” when you need to recall the new coding concept: “What’s MVC again? Oh, right! It’s like building something with Legos. The request comes in, and …”

Learning new things doesn’t have to be as difficult as people try to make it.

And you can put this “trick” of using analogies to use on your own, too.

The next time you’re attempting to learn something and it isn’t explained very well, try making up your own analogy. Read through the explanation of the new concept a few times; then try and think of something you already have intimate knowledge of that you can compare it to. That way, you can cement the new knowledge in your brain via that connection — via the analogy.

I’m always looking for new ways to help make the process of learning a new skill easier and more enjoyable for noobs. (After all, noobs are my people!)

Because when you’re learning something new, the facts are easy to come by. It’s consuming them in the proper context that determines how effective you are.

So remember: when you’re learning something new, connect it to something you already know. And avoid useless fucking diagrams.




Security Analyst | hacks and secures | Web Application Pen-tester.

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

Go: How Does the Garbage Collector Mark the Memory?

| Engineering News-Record

My Journey in concurrency land

Azure Blob Storage using a .NET Core Console Application

Some Tips for Tensorflow Developer Certificate Exam

Drawing Route Between Two Points Using Google Map

Weekly Development Update 46 & 47

Amazon Simple Queue Service (Amazon SQS)

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
Joseph Musando

Joseph Musando

Security Analyst | hacks and secures | Web Application Pen-tester.

More from Medium

Coding Competitions

How to quickly and effectively read other people’s code

What is software?

Learn Programming The Correct Way