Icosian Reflections

…a tendency to systematize and a keen sense

that we live in a broken world.

Today's Quote: Fallibility

Today's quote comes from a talk about programming languages:

"If you're ever writing code to loop over the indices of an array, just assume there's a bug in it somewhere."

(In particular, we were discussing pitfalls of imperative languages, but that's not at all important to what I'm trying to talk about, so ignore this sentence if you didn't understand it.)

Okay, so it's not quite true; I've reached the point in my programming career where, upon needing to write array-indexing code, I am still forced to stop, ask myself what I want to do, and then tell the computer to do it -- but at least I usually get it right that first time. Even so, there are certainly other areas of my life where I could benefit by applying similar logic:

  • If you're ever planning to be on time to a class/meeting/event, just assume that you're going to be ten minutes late.
  • If you're ever planning your time around the deadline for an assignment, just assume that you're going to be working up to literally the last minute.
  • If you're ever coming up with a password, encryption key, or other important string of characters to remember, just assume you're going to forget it tomorrow.
  • If you're ever reading a book before bed, just assume you're going to read at least an hour later than you expected.
  • If you're ever planning to take a small nap and get back to work, just assume it's not going to happen.

The common factor here seems to be "There are some things you're really chronically bad at planning; you should stop assuming that you're going to be better at them this time, just because." As I said, I could definitely benefit by approaching things with this attitude more often.

edit: As the comments thread of my Facebook share of this post has shown, I should probably add to this list "If you're ever writing a blog post, just assume that you're going to explain the Big Idea badly, and people are going to get confused."

The common theme here is supposed to be "Trying really hard to simply not [X] doesn't work; work around the situation instead." The exact method varies, but usually, the warranted fix is to either (1) avoid the situation entirely or (2) reframe the situation from "I'll just decide to not [X]." to "Notice when I [X] and react appropriately."

The reframe might sound obvious or trivial, but I've found that consciously shifting from the former mindset to the latter can make a big difference in the way I plan for, and deal with, fallibility in everyday life.