Hofstadter’s Law

Douglas Hofstadter in his book Gödel, Escher, Bach: An Eternal Golden Braid (1979) named Hofstadter’s Law which states:

It always takes longer than you expect, even when you take into account Hofstadter’s Law.”

Hofstadter’s Law is easy to understand: complex and/or infrequent tasks take a longer time to complete than estimated. This law is particularly relevant if someone is considering how long it will take themselves to perform an operation, as opposed to someone else, as people are over-confident about their abilities. 

Origins In Chess

The Law originates from discussing chess, namely how long it would take a computer to beat a chess grandmaster. The prevailing assumption was that computers would one day overtake humans in the game of chess as a computer could technically process a greater number of permutations than a human being, particularly when the computer program has learned from massive inputs into its system. One day for a computer to overtake a human was estimated to be ten years in the future. Ten years later, that one day was still a long way off, likely another ten years. This kept going on. Hofstadter’s Law was written in 1979, by then frustration in the computing or chess community about how long digital prominence has taken had already set in.

One day did not occur until almost twenty years after the Law was formulated in 1997 when a supercomputer from IBM named Deep Blue beat Gary Kasparov, the world champion of chess at the time. 

Recursive

The law itself is self-referential: Hofstadter’s Law is stated in its own law, implying a circular loop. 

For instance, let’s say that a task will take an estimated hour. The first part of Hofstadter’s Law states that it will take longer than an hour, so we should push our estimate to two hours. However, the second part of the law says that it will still take longer than two hours, even as the new projection accounts for it being longer than the hour originally estimated. One might think that a three-hour estimate would be sufficient then, taking into account both aspects of Hofstadter’s Law. Still, the second part of the law states that the task will take longer than even the conservative estimate of three hours…and so it continues on and on into infinity. 

All of this recursive logic merely points out that an exercise will take a long time and overestimating the time required to complete it will be difficult.

Rule of Thumb

A prudent but crude projection of the time it will take to complete a task is to multiply the original estimate by three. So for something that you think will take an hour, allocate three hours.

Another more absurd way to estimate, though for complex tasks may be appropriate, is to take an estimate of time to complete the task, double the estimate and then move to the next largest incremental time factor as follows: 

Second-> Minute->Hour->Day->Week->Month->Year->Decade->Century

As an example, a task that is assumed to take two days may take four weeks to complete. This hyperbolic projection seems to be comical but may very well be the case for difficult projects.

This article, and comments, is an interesting exploration of how to estimate time for a task. 

Productivity

If it wasn’t crystal clear by now, one is generally bad at estimating the time it will take to complete a task. When setting out a to-do list or time-blocking, a person often thinks that they will complete the item in the time allotted…only to find that they didn’t finish half of the task and will need to continue to work on it at a later time. Conversely, the task may be completed but often took so long that there were other items on their to-do list that were bumped to a future completion date (as an aside, frequently those items that are bumped should not be done anyways and your subconscious is telling you that those tasks are not important).

My writing habit is a good example. A post like the one you are reading should take, in my head, two hours to complete. A few hours into writing, I still may not have a rough draft completed. I will find that I still need to finish that draft followed by editing and finally publishing it. The two-hour task might take six hours in total to complete a post. 

It is really difficult to write down in a schedule that a simple piece of writing should take six hours as it is an admittance that I am not as productive as I think myself to be. This over-confidence or ignorance is psychologically behind most errors in estimating timing to complete a task, particularly a regularly occurring task.

Good Enough

How to prevent the time spent on a task from ballooning? The primary answer is that you have a choice of when to call a project “done.” The perfectionist will keep obsessing over an assignment when in most cases they need to declare that their work is “good enough” and ship. 

A task will still take longer than originally planned. However, the difference between it taking 3 times longer than originally planned rather than ten times longer is this “good enough” distinction.

Questions

  • What are the tasks that I regularly undertake that I consistently short-change myself on?
  • Where am I rushed?
  • What tasks suffer as they get pushed to be addressed later?
  • In what areas are you a perfectionist, as evidenced by how long a task takes to complete?