Thinking About Thinking: Your Brain is a Self-Rewriting Algorithm (And That's Why You Can't Stop Checking Your Phone)

A deep dive into how our brains are self-modifying algorithms that rewrite themselves with every experience, and why understanding this changes everything about habits, anxiety, and human behavior

Thinking About Thinking: Your Brain is a Self-Rewriting Algorithm (And That’s Why You Can’t Stop Checking Your Phone)

Okay, picture this: I’m thinking to myself last week (like that Pepper song where they get caught in that recursive loop about thinking about thinking), and this absolute mind-bender hits me. β€œFeelings are metadata.” Just like that. Two words that completely flipped how I think about my own brain.

And yeah, that’s metadata. Like the stuff that tells you when a photo was taken, but for your emotions. Stay with me here because this gets WILD.

Here’s the Thing About Your Brain

So I’ve been thinking about this nonstop (classic programmer brain, can’t turn it off). Your brain isn’t just processing information. It’s processing information ABOUT how it processes information. And then using that to change how it processes future information.

That sounds like some recursive nonsense that would crash a badly written program. But get this: that’s exactly what your brain is doing all day, every day, and it’s not crashing. Well, mostly not crashing. We’ll talk about anxiety spirals in a bit.

Here’s an example. When I first learned to drive, every single thing required conscious thought. Checking mirrors, finding the blinker, calculating how hard to press the brake. My brain was generating all this metadata: β€œturning left requires this much wheel rotation,” β€œthat car seems too close,” β€œoh god oh god oh god.”

Fast forward to now. I drive home from work and literally don’t remember the journey. My brain took all that metadata from thousands of drives and basically compiled it into unconscious subroutines. The processor rewrote itself.

The Dog Story (Because Everything Makes More Sense With Dogs)

Let me tell you about my german shepherd Kylee and my best buddy Alan. When we were kids, Alan’s mom would babysit me, so I basically lived at their place. Alan’s older brother (can’t remember his name now, but he was a tough kid) got bitten by a dog. Not badly, but enough to be scary. To be fair, the kid probably shouldn’t have been teasing the barking dog by hanging his hand over the fence. But still, for the next year, every dog was a threat to him. His brain had written this metadata: β€œDOG = DANGER” in big, bold letters.

But here’s where it gets interesting. Their parents didn’t just avoid dogs. They started with videos of puppies. Then a friend’s ancient, sleepy golden retriever. Then slightly more energetic dogs. Each interaction generated new metadata that competed with the original β€œDANGER” tag.

Eventually he got over it. Meanwhile, I had Kylee, who was the chillest german shepherd ever. Same input (dog), completely different processing between us. The algorithm literally rewrites itself through experience.

Why You Can’t Stop Checking Your Phone (It’s Not Weakness, It’s Recursive Metadata)

This is where it clicked for me. Every time you check your phone and find something interesting, your brain generates metadata: β€œchecking phone = potential reward.” But here’s the kicker… that metadata becomes part of the context for processing the next moment.

So when you’re sitting there trying to work, your brain isn’t just dealing with the current moment. It’s processing through a filter that includes all those previous β€œphone = reward” metadata tags. The urge to check isn’t coming from nowhere. It’s coming from your own processing history.

It’s like your brain is running this code:

current_urge = process(current_moment, accumulated_phone_metadata)

And every time you give in, you add more metadata to the pile. The processor keeps modifying itself to make checking more likely. It’s not that you’re weak. You’re literally fighting against your own recursive optimization function.

When the Recursion Goes Bad (Hello, Anxiety My Old Friend)

Remember I mentioned crashes? Yeah, let’s talk about anxiety spirals. This is when the metadata generation goes haywire.

You have one awkward interaction at a party. Your brain generates metadata: β€œsocial situation = potential embarrassment.” Next social situation, you’re processing through that filter, which makes you more awkward, which generates MORE β€œdanger” metadata, which makes the next situation worse…

I watched this happen to myself after a particularly brutal code review early in my career. Every time I submitted code, my brain was processing through this thick layer of β€œyour code will be torn apart” metadata. Made me write worse code because I was so stressed. Which led to more criticism. Which added more negative metadata.

The recursive loop from hell.

The Beautiful, Terrifying Truth

Here’s what really gets me: we’re not fixed entities. We’re not even consistent processors. We’re self-modifying algorithms that rewrite ourselves with every single experience.

That photo you saw this morning? It modified your brain’s processing patterns, even if just slightly. That conversation you had yesterday? It’s now part of the filter through which you’ll process every similar conversation in the future.

We’re basically walking, talking examples of machine learning, except we’re both the model AND the training algorithm. We’re updating our own weights in real-time.

So What Do We Do With This?

Look, I’m not gonna pretend I have all the answers. But understanding this has changed how I think about a lot of things:

Bad habits aren’t moral failures. They’re recursive loops that have optimized themselves really, really well. Your brain is doing exactly what it’s supposed to do… it’s just optimized for something you don’t want anymore.

Therapy makes so much more sense now. It’s not just talking about your feelings. It’s literally injecting new metadata to compete with the toxic recursive loops. It’s debugging your processing algorithm.

Hacking your own recursion is possible. Want to change something? The key is generating new metadata that’s strong enough to compete with the existing patterns. One gym session won’t override years of β€œexercise = misery” metadata. But fifty might start to shift the weights.

β€œSleep on it” is literally a thing. Your brain consolidates and integrates metadata during sleep. It’s like running garbage collection and defragmentation on your mental hard drive. No wonder everything seems worse at 3 AM… you’re running on fragmented metadata.

The Weirdest Part

Sometimes I wonder if consciousness is just the feeling of watching your own metadata generation in real-time. Like, that voice in your head commenting on everything? Maybe that’s just you observing your own recursive process.

Pretty wild, right?

Every moment you’re simultaneously the programmer, the program, and the computer running it all. You’re writing code that rewrites the coder. It’s recursion all the way down, and somehow, most of the time, it actually works.

Next time I catch myself in a pattern I don’t like, I try to remember: I’m not broken. I’m just running code I wrote without realizing it. And if I wrote it, I can rewrite it.

It just takes time, patience, and a whole lot of new metadata.


Have you noticed your own recursive loops? The ones that help and the ones that hurt? I’m genuinely curious about how other people experience this. Drop a comment or hit me up on Twitter. Let’s compare notes on our self-modifying algorithms.


Song Reference:

The opening of this post was inspired by Pepper’s β€œNo Control” - particularly that perfect recursive line about thinking about thinking. The whole β€œstation under no control” theme throughout the song perfectly captures these automatic metadata loops we’re all running.

β€œNo Control” by Pepper
Album: No Shame
Songwriters: Yesod Williams / Bret Bollinger / Kaleo Kalani Wassman / Zachary Andrew Barnhorst
Watch on YouTube

---- Lyrics

Hey!

I've got the right of way
And that's all you've got to say

I've been thinking about, thinking about
Some things I thought I'd never be thinking
Too many drugs dropped into my mouth
Looking for something new but I end up drinking
Ignore the warnings on the shore
I'll take my chance, run into danger
I wanna taste life more and more
But you need a little risk for the perfect mixture

This is your station under no control
Broadcasting for you to let go
This is your station under no control
Get up, get up, get up, get up, get up
And enjoy the show, yeah

Hey!
I've got the right of way
And that's all I've got to say

The fuses gone, just a flame and a bomb
Now how do you explode unstable?
A big suit with a briefcase
Arm holding contracts stayed in higher label
Holding on to a phone on hold
While I'm told to wait for the next operator
I wanna taste life uncontrolled
Oh no, here I go, I hope to see you later

This is your station under no control
Broadcasting for you to let go
This is your station under no control
Get up, get up, get up, get up, get up
And enjoy the show
Hey!
I've got the right of way
That's all you've got to say

This is your station under no control
Broadcasting for you to let go
This is your station under no control
Get up, get up, get up, get up, get up
And enjoy the show
This is your station under no control
Broadcasting for you to let go
This is your station under no control
Get up, get up, get up, get up, get up
And enjoy the show
Everything that I would like to see
Broadcast this emergency

Everything that I would like to see
Broadcast this emergency
Emergency, emergency, emergency, emergency

Source: Musixmatch

Songwriters: Yesod Williams / Bret Bollinger / Kaleo Kalani Wassman / Zachary Andrew Barnhorst

No Control lyrics Β© Guava Lane Publishing, Pujo Music, The Dude Music
Page Views:
Loading...
πŸ”„ Loading

☎️ contact.info // get in touch

Click to establish communication link

Astro
ASTRO POWERED
HTML5 READY
CSS3 ENHANCED
JS ENABLED
FreeBSD HOST
Caddy
CADDY SERVED
PYTHON SCRIPTS
VIM
VIM EDITED
AI ENHANCED
TERMINAL READY
RAILWAY BBS // SYSTEM DIAGNOSTICS
πŸ” REAL-TIME NETWORK DIAGNOSTICS
πŸ“‘ Connection type: Detecting... β—‰ SCANNING
⚑ Effective bandwidth: Measuring... β—‰ ACTIVE
πŸš€ Round-trip time: Calculating... β—‰ OPTIMAL
πŸ“± Data saver mode: Unknown β—‰ CHECKING
🧠 BROWSER PERFORMANCE METRICS
πŸ’Ύ JS heap used: Analyzing... β—‰ MONITORING
βš™οΈ CPU cores: Detecting... β—‰ AVAILABLE
πŸ“Š Page load time: Measuring... β—‰ COMPLETE
πŸ”‹ Device memory: Querying... β—‰ SUFFICIENT
πŸ›‘οΈ SESSION & SECURITY STATUS
πŸ”’ Protocol: HTTPS/2 β—‰ ENCRYPTED
πŸš€ Session ID: PWA_SESSION_LOADING β—‰ ACTIVE
⏱️ Session duration: 0s β—‰ TRACKING
πŸ“Š Total requests: 1 β—‰ COUNTED
πŸ›‘οΈ Threat level: SECURE β—‰ SECURE
πŸ“± PWA & CACHE MANAGEMENT
πŸ”§ PWA install status: Checking... β—‰ SCANNING
πŸ—„οΈ Service Worker: Detecting... β—‰ CHECKING
πŸ’Ύ Cache storage size: Calculating... β—‰ MEASURING
πŸ”’ Notifications: Querying... β—‰ CHECKING
⏰ TEMPORAL SYNC
πŸ•’ Live timestamp: 2025-08-25T18:29:49.612Z
🎯 Update mode: REAL-TIME API β—‰ LIVE
β—‰
REAL-TIME DIAGNOSTICS INITIALIZING...
πŸ“‘ API SUPPORT STATUS
Network Info API: Checking...
Memory API: Checking...
Performance API: Checking...
Hardware API: Checking...
Loading discussion...