Buffer Overflow

One of the many uses I give to astrology is that of a social lubricant. Every time when there’s some awkward silence around the table, I pull out my iPhone and start by candidly asking around: “So, what’s your sign?”. Then, you know, one thing leads to another, and in like 5 minutes everybody is interacting.

For a few months, I saved the astrological charts on one of the astrology sites I use, without any problem whatsoever, and without worrying about the storage space too. I think I saved a few dozens of charts. Then, one day, while I was saving another chart, a strange message popped out: “You reached the maximum of 100 slots for chart saving. If you want to save more charts, you have to first delete one”. Since I was in a hurry, I deleted some old test data, then moved on with my thing.

A few months passed since that incident. Needless to say that, meanwhile, I had to carefully manage my storage space, being already at the top limit and stuff. And, all of a sudden, this morning I realized there’s something very interesting about this incident. Namely, that we’re surrounded by buffers.

What Is A Buffer?

A buffer is a safe zone. Some space where you can play safely, without worrying that you’re going over your limits, or something. My “astrological charts saving storage” buffer was 100. That was my maximum. In order to keep that playground safe, I had to delete some of the extra stuff.

We have buffers in many areas of our lives. We have buffers in social relationships, for instance. There’s only a certain numbers of close friends that I can manage. If I’m a popular guy, this number would be probably higher than the average. If I’m a shy guy, well, the manageable circle of my friends will be smaller.

We also have buffers in our skills area. We do learn a certain number of – let’s called them “tricks” – and then stop. Those “tricks” are usually related to our job and we’re normally learning them during school, or some sort of on the field training. If we go over a certain number of “tricks”, we’re out of our safe zone.

Buffer Overflow

But what happens if we have so much stuff around, that the buffer is overrun? If you’re a software engineer, you’re awfully familiar with these words: “buffer overflow”. According to Wikipedia, the definition of a buffer overflow is:

“In computer security and programming, a buffer overflow, or buffer overrun, is an anomaly where a program, while writing data to a buffer, overruns the buffer’s boundary and overwrites adjacent memory. This is a special case of violation of memory safety.

Buffer overflows can be triggered by inputs that are designed to execute code, or alter the way the program operates. This may result in erratic program behavior, including memory access errors, incorrect results, a crash, or a breach of system security. Thus, they are the basis of many software vulnerabilities and can be maliciously exploited.”

That’s exactly what happens in our real life buffers. If we’re over a certain number of people in our social relationships area, we start to act erratically. We forget some of their names. We mistake one for the other. We forget what we say to some of them. That’s a buffer overflow in personal relationships.

If we’re talking about skills, well, that’s even funnier. We learn something for a new job, then, in a few weeks, we completely forget what we use to knew before that. It’s like we never knew that stuff. It may be that we can re-learn it, but, as long as we’re not forced to use that thing on a regular basis, it’s like out of our buffer.


By now, you should have realized that buffers are our comfort zone. It’s that place where we can play it safe. And every time that comfort zone is hit, we’re not feeling well. We’re feeling aggressed, stressed, we sometimes even crash, like a software program hit by a buffer overflow.

But you know what? The real life happens outside of the comfort zone. Always. We may rest for a while in the comfort zone, but all the excitement, all the fun, all the challenges and the indescribable taste of victory, well, all of them are to be found outside of the comfort zone.

When there is a buffer overflow somewhere in the code, programmers do a very interesting thing. They start debugging that code. I won’t go into the technical details, let’s keep it simple. Suffice to say that they stop the program in the exact spot that was hit by the overflow, and start isolating the real problem. Which usually means the buffer must be a bit bigger, in order to accommodate the bigger input. They test it for a while, and if it’s ok, they restart the entire program. It’s working now.

Debugging in real life should be our option too, when we have a buffer overflow. Unfortunately, we’re not machines, and we’re not always able to stop our life in the exact spot hit by the overflow and isolate the problem. We should be able to do it, but, alas, we’re not. And the most common cause for that is what we usually call “the fight or flight syndrome”.

In real life, a buffer overflow is a “fight or flight syndrome”. We either fight the problem, or run from it. These reactions are deeply engrained in our brains. They’re located in the limbic brain (or the reptilian brain), which is one of the oldest parts of our gray matter bulb. As such, they’re the first to be followed. All our rational area is in the cortex, which is actually the external “blanket” of the brain. We don’t respond to rational stimuli, unless we first process all the input with the reptilian brain.

Yeah, that’s tough stuff. It means that, in order to debug our life programs, we must somehow invalidate our initial reaction. Which is, as I said, to either fight, or run away. It’s like fighting against our own survival mechanism. Evolutionary speaking, the “fight or flight syndrome” is a very useful mechanism. It kept as safe as species for millennia. And now, we have to skip it, and try to use the most recent layer, the cortex, which will rationally process all the stuff and solve it.

Fear Of Stretch

In the end, it’s all about fear. And how we’re able to manage it. It’s all about the ability to stop the basic impulse of preserving the comfort zone (by taking it with us in the run, or by fighting for it with whoever overflew our buffers) and go for the stretch.

It doesn’t always work, you know. Sometimes you’re literally sinking in an ocean of unmanageable inputs and have to run for your life. You go zen or start to withdraw from the world. That’s the flight thing. And sometimes you stay there but violently refuse the input. You go bitchy and cynical. That’s the fight thing.

And yet, in between, there’s a way of managing this stuff. You honestly accept that you’ve’ been overrun. Yes, it happens. You’ve been overrun by sadness, by lack of hope, by whatever overflow hit your buffers. And then, patiently, honestly and lucidly, you start to debug the thing. And if you stay there long enough, you start to glimpse a part of the problem.

And then you start growing those buffers, day by day, thought by thought, action by action. And one day, no matter how big is the input, how unexpected is the energy flow that hits you, no matter its polarity (being it “good” or “bad”) you just take it as it is and feel no pain anymore.

And all you have from that painful buffer overflow is a memory.

So, what’s your buffer overflow right now?