8
donuts
5y

My manager asked me why would our server would get overloaded, after analysing the issue and giving him a technical analysis over the last N weeks.

So I used an analogy:

Imagine an empty tank. The water coming in comes through a giant hose where the output is like a tiny tap.

Then just now I was thinking how to explain the Node event loop... And thought of this analogy:

Imagine fireball Mario running around in a circular track throwing fireballs to the side as he runs.

Maybe not entirely true but got made me chuckle...

Does anyone else come up with these sorts of analogies to explain programming problems to "nonprogrammers"?

Comments
  • 6
    All the time. In IT/infrastructure especially I find physical analogies extremely useful to let non-technical people conceptualize technical problems.

    RAM usage conversation: The amount of RAM in your computer is like table space on your desk. Each time you open a program in your computer it’s like opening a book on your desk. If you have too many books open, you have to close a book to open another. If you fill up the desk, you might break the legs under the weight. It’s best to not have all your books open on the desk, and instead close the ones you’re not reading (80 chrome tabs user I’m looking at you!).

    Disk space conversation: Imagine your computer is a car. Every time you save a file you put that file in the trunk of your car somewhere. Eventually, if you never clean out your trunk, it will get full, and make it hard to use your car.
  • 1
    "imagine your PC is a bunch of boxes that all your shit's in. Your HDD is stuff you use anywhere from kinda often to really infrequently. Your RAM is a box with stuff you use so often you either need it on your person or need it somewhere it'll be immediately findable. Your CPU is you."
  • 2
    Refactoring / Larger change requests: Well... Ever played "hit the pot" in a mine field?

    Trying to Invest in hardware instead of fixing the underlying, faulty architectur: You have a water leak in your basement.
    You would fix the leak, right? Well... Throwing hardware at it means the opposite. You cram a larger pipe over the old one, add a weldseam and hope that this will withstand the increasing pressure of the underlying water leak.
  • 0
    @IntrusionCM by architecture you mean the software?
  • 3
    I typically resort to cars and car things because people understand them.
  • 0
    @billgates depends. Architecture can mean database design / RDBMs choice / ... , too.
  • 0
    @Diactoros Loved the RAM analogy 👌

    But if you really had to explain HDD using that sentence, I'm wondering if the person you were talking to was older than 5? 🤔
  • 0
    All ages. I live in a rural part of the US where office jobs are the minority. Many people use computers with no concept of what they’re actually doing.
Add Comment