David Wheeler on Indirection
David Wheeler, the first person to receive a Ph.D. in
Computer Science, has been widely quoted on the topic of indirection.
The basic quote is "All problems in computer science can be solved by
another level of indirection", but many variations exist:
-
The current Wikipedia article ("All problems in computer
science can be solved by another level of indirection, except of course
for the problem of too many indirections.") quotes a non-authoritative
source: Andy Oram; Wilson, Greg; Andrew Oram (2007).
Beautiful code
. Sebastopol, CA: O'Reilly. ISBN 0-596-51004-7.
-
The Wikipedia page on Indirection
suggests that the corollary "...except for the problem of too many
layers of indirection." was added by Kevlin Henney, not Wheeler. I tend
to believe this because I do not recall hearing this ending until after
2008.
-
The Wikipedia talk page contains an important variation reported by Markus Kuhn,
who reports speaking to Wheeler prior to his death in 2004: 'He did
however stress that he considered the inclusion of the – often omitted –
second part "But that usually creates another problem." as
significant.' This matches my memory of the original quote.
-
There are also variations which substitute the word
"layer" for "level", which Kuhn reports Wheeler as feeling are
insignificant.
My preference is therefore for "Every problem in computer
science can be solved with another layer of indirection - but that will
generally create another problem." The thought is important enough to
put a stake in the ground.
Note that Maurice Wilkes, David Wheeler, and Stanley Gill
invented the closed subroutine as an implementation of this idea.
Compare to an open subroutine ("macro").
Question: Does Wheeler's insight apply to
any sufficiently complex system?
Possible answer: Yes, maybe. It applies to software because software is abstracted from its implementation on hardware (see the
Church-Turing thesis
for proof that software is not tied to an implementation). Is not any
complex system (e.g. modern culture) also highly abstract, and possibly
abstracted from its implementation in human beings?
Earth's Biosphere
Astrophysicist
René Heller suggests that Earth is nearing the end of its time as a habitable planet in an article entitled
Planets More Habitable Than Earth May Be Common in Our Galaxy
in Scientific American's January 2015 issue.
-
The Earth is 4.54 ± 0.05 billion years old (see Wikipedia article and USGS Age of the Earth page).
-
The earliest (scientifically) undisputed evidence for life on Earth is 3.5 billion years ago (see Abiogenesis Wikipedia article and bibliography).
-
The Sun's radiation output is increasing as it ages, thus slowly pushing the Goldilocks Zone, where water can exist in a liquid form, outward.
-
Within 500 million years, Heller calculates that multi-cellular life will not be able to sustain form.
-
Within 1.75 billion years, water will not be able to be in a
liquid state on the Earth's surface. This will remove the ability for
uni-cellular life to exist on the Earth's surface.
Ronald Wright has noted, "Each time history repeats itself, the cost goes up." (
A Short History of Progress [
Amazon,
Goodreads]).
Question: Were humanity to fail, would another intelligent species have time to evolve?
Possible answer: Maybe not. Our species is only 3 million years
old since the last common ancestor with chimpanzees, but the earliest
mammalian fossils are "are dated about 167 million years ago in the
Middle Jurassic" (
according to Wikipedia).
A new species surely could not push the 500 million year date since
environmental pressure on development would presumably be severe long
before multi-cellular life ceased to be viable. Also recall that:
-
There is no such thing as a "ladder" of evolution. Evolution
does not direct life toward any goal other than survival in ecological
niches. Another intelligent species is not guaranteed to evolve.
-
Humanity is currently
causing a mass extinction event. This massive reduction in biodiversity
will surely have an impact on any future evolutionary possibilities.
-
We are heating our planet faster than Heller's analysis
alone suggests. The human impact on climate may last for 100,000 years
even if we stopped now (which we are not). See
Deep Future
by Curt Stager. We might cause a runaway greenhouse effect, which could significantly limit our time horizon.
We might need to survive as a species, and possibly as a
civilization, long enough to get off of the planet. This might be our
only chance.
Quote of the Day
"I can explain it to you, but I cannot comprehend it for you." -- New York City Mayor (1978-1989) Ed Koch