Your Brain as a Zoom Lens

Your Brain as a Zoom Lens
Photo by Dan Cristian Pădureț / Unsplash

Framing

If you're reading this, you're looking at it on a display of some kind. That idea by itself has enough detail buried in it that you could write a rather lengthy book describing every single component of the various systems that enable this ability.

There's a rather famous interview question that gets used in the SRE/SWE ecosystem that is easy to ask and allows a candidate to really dig into their depth of understanding:

Please describe, in as much detail as you think makes sense, what happens when you type a URL in a web browser's address bar and hit enter.

I was asked this when I interviewed for Disney / ABC a number of years ago, and it has never exited my mind. The question is deceptively simple, and I think it represents a few much larger concepts that are worth exploring in a bit more detail.

Details, Details

In the brief few moments after the question was asked, my mind did something that I hope yours does too: I felt like my internal mental model zoomed in and out in rapid succession, akin to the visual changes you might see when you look through a telephoto zoom lens on a camera. Elements of the system in question appear and disappear as you move in and out to different levels of abstraction.

Abstraction. What a word. What a tool. What a hell of a thing to spend time mulling over.

Abstraction is the process by which you take specific understanding from individual examples and turn them into more generally applicable ideas across a domain. Generalization is a specific form of abstraction that you will use every day of your life without conscious effort.

"Dog" is an abstraction. It represents numerous specific subspecies in the Family Canidae. This one happens early in your life.
"Water" is an abstraction. It represents *llions of particles moving together with chemical bonds and various other forces holding it together, and behaves at a large scale in a certain way.

'Why does this matter?' I hear you thinking.

Zooming In and Out

When asked the above interview question, perhaps in poor taste, I decided to offer a simple "gotcha" answer back to the interviewer (a Principal Java person there):

Do you want hardware interrupts?

This is bad form. Do not make my mistake unless you fully trust that your interviewer has a sense of humor. Mine did not. After figuring out that my joke didn't land as well as I had hoped, I pivoted to answering the question more properly. Your first stop on this question for most folks will be DNS. DNS is kind of like the address book the internet uses to figure out where the thing you're trying to get to lives. You have multiple tiers of caching and lookup that happen, escalating steadily until you hit an authoritative DNS server that helps run the internet.

The question leaves enough room for interpretation that you could feasibly get completely down a rabbit hole describing any individual component in the stack. When you zoom in enough you start to have to care about the electrons moving over the wire. You start having to care about the encoding decisions at the bottom of the OSI model.

This kind of detail revelation as you get closer and closer to your subject is a fundamental property of the world you exist in.

EVERYTHING has this feature. Reality is fractal in this particular way from where I sit. Yet again, we have an abstraction for this - in the hard sciences you'll hear it called reductionism: the concept that any complex system can be broken down and described in terms of its sub-components. This idea is so powerful that data scientists, physicists, mathematicians, and every other technical discipline you'll ever bump into use it. There are a few examples that really helped this whole concept click for me: objects in the world that we interact with are composed of many small parts. This applies to water as noted above, but also applies to things like your car.

Your car has many parts, of which most of them can be analyzed as sub-components of the whole, but each of them can have generations worth of knowledge required to really grasp how and why it works the way it does. The engine in the car is a perfect example. Traditionally, it would be internal combustion - make a bang, use the energy to move the piston, transfer that energy through a shaft or coupling to the wheels. Today though, the mechanism of action has changed, but the fundamental "use energy from an energy provider to turn the wheels" hasn't. Instead of bang, spin you now get something closer to spin, spin. Electric motors can be rolled into our abstract set of "motion providers" with limited need to grasp the how, but rather the output.

Those are all technical examples, I hear you cry! Absolutely right. Let's move away from engines and wires and into something a little more intuitive. Imagine you're tasked with measuring the coastline of the UK. Easy, right? Just grab a ruler and get to work!

As you start measuring, you realize something curious: the answer depends entirely on how close you look. With your ruler, you only capture a tiny, jagged line. Zoom out to a map, and the coastline smooths out, but you sacrifice detail. And if you take to the air with a plane, you see a grand sweep of coast, but the tiny coves and inlets disappear.

To describe these types of systems we cannot possibly reveal all of the details at once, as there is far too much going on at any one time to keep it all in your brain's hot storage.

Takeaways

What's all this about, why does it matter to you? It's mostly just musing on an observation that seems to have held up since the first time it occurred to me in my youth. If you keep this truth in mind it can shape the way you describe things, learn things, and share that knowledge.

One of your fundamental challenges in life is to establish the appropriate level of abstraction to be working at. This is true for conversations, the work you do, how you learn new ideas, and how you integrate those ideas.

As you learn to engage with this tool, it will force a question you may not already be asking early enough.

How much detail do I need to have on hand for this right now?

Keep this question at the front of your mind. Never let go of it. Force others to engage with it. Apply it to the problem you're solving now. Remember that sub-components are just as complex as your higher order component.

Learn to use your brain's built in zoom lens, it'll change your perspective forever.

Anthony Blardo

Anthony Blardo

20 Year SRE, SysAdmin, SWE, and technologist. Have been called a hacker, nerd, wizard, geek, engineer, coder, maker, and pretty much every positive and negative version of these you can conjure up.
Florida