Statelessness

December 31, 2010

I have, at the same time, both a wonderful and an abysmal memory. I cannot remember many conversations with friends; to their frustration I tell them the same things over and over sometimes. But I can remember numbers, algorithms, or “relevant” facts with ease. (For a definition of relevant, see Rands’ The Nerd Handbook and the annoyingly efficient relevancy engine.) This odd property, and the growing complexity of my life has forced me to trend towards a certain kind of operating procedure that I’ve started to call statelessness.

Being stateless is the opposite of maintaining lots of state. This could translate to [independent trials](http://en.wikipedia.org/wiki/Independence(probabilitytheory) in statistics like separate flips of a coin or Poisson processes. In software, dealing with something in a stateless manner greatly simplifies design because there’s so much less to worry about. Each transaction, operation, or whatever can be dealt with independently rather than in consideration of many other transactions.

Interestingly, in life, dealing with things in a stateless manner translates roughly to honesty. If you aren’t maintaining state there’s nothing to translate into a coherent set of lies, or a facade of yourself, or anything like that. It becomes much simpler to operate because, well, there’s less state to deal with. As life gets more and more complex, I think the only two options are to trend towards statelessness or to get completely mired down by trying to deal with too much state.

When I talk about life getting more complex, I’m describing a lot more state being introduced into a person’s life. There’s two kinds of “busy” - the busy you get when you’re motivated and have a lot of things you need or want to do, and the kind of busy you get when you have a lot of idle time. The latter tends to be unproductive. The former is the productive complexity I’m thinking about.

I think this is how most highly functioning people operate. A good executive officer (or anyone “at the helm”, like a ship’s captain) will take the information available, evaluate it, and come up with a set of conclusions and drive forward. They usually won’t wallow in their decision or delay. If they do, they probably won’t last long in their post.

The opposite is also true. Gossip mongering and over-emphasis of things like fashion or silly culture - basically shows like The Real Housewives - only occurs when life is idle. When there’s not enough state to make people’s lives interesting (afterall, humans are complex) they invent state, and usually make things worse for themselves.

It’s a fascinating idea that to be able to deal with more state in your life you have to approach it in a stateless manner. But what does this mean exactly? I think it means taking each decision or situation that you’re confronted with as independent from others and evaluating it only on the information available. Sometimes, of course, this will mean digging for more information. Which means you get to ask the right questions, one of the many benefits of operating like this. Asking questions keeps you humble. Approaching every conversation independently keeps you from holding grudges or worrying about past experiences.

I’m still not sure that statelessness is quite the right word for this yet. I wonder if the notion of having a small cache is more appropriate. You should keep some small amount of state in the same way that a CPU uses a small, tidy L2 cache instead of slower, larger memory. These are your defaults. The small set of axiomatic rules that you start with when evaluating what’s around you. Every situation means you check these rules again, making sure they’re still appropriate. Instead of a Least Recently Used cache, maybe it’s a Least Generally Applicable cache.

I’ve heard people describe one of the main themes of Stephen King’s book On Writing as honesty in writing. But not strict honesty, in that Carrie, The Stand, or many of his other books are ridiculous fiction. Rather, they have the feel of truth and are convincing in their story. Statelessness has the same feel about it to me. It’s not strictly true, factual, or honest. It doesn’t create the best possible outcome in every situation either. It does get things moving and help you to be truly critical about situations without being over-critical. When I was worried about performing at work, I asked a very good friend of mine. He said, “Just do the best you can, every day.” That’s stateless. And it’s both humbling and gratifying.


Greg Olsen
Hi I'm Greg. Occasionally, I do things.ArchiveTumble