Architecture and Hardware

Why We Compute

Microsoft Research Director Daniel Reed

Normal 0 false false false EN-US X-NONE X-NONE

Why do we, as researchers and practitioners, have this deep and abiding love of computing?  Why do we compute?  Superficially, the question seems as innocuous as asking why the sky is blue or the grass is green.  However, like both of those childhood questions, the simplicity belies the subtlety beneath. Just ask someone about Raleigh scattering or the quantum efficiency of photosynthesis if you doubt that simple questions can unearth complexity.

At its most basic, computing is simply automated symbol manipulation. Indeed, the abstract Turing machine does nothing more than manipulates symbols on a strip of tape using a table of rules.  More deceptively, the rules seem simpler than some board games. Though vacuously true, the description misses the point that symbol manipulation under those rules captures what we now call the Church-Turing thesis.

However, as deep and as beautiful as the notion of computability really is, I doubt that is the only reason most of us are so endlessly fascinated by this malleable thing we call computing. Rather, I suspect it is a deeper, more primal yearning, one that underlies all of science and engineering and that unites us in a common cause. It is the insatiable desire to know and understand.

Lessons from Astronomy

When I recently I stood atop Mauna Kea, looking at the array of telescopes perched there, I was again struck by our innate curiosity. Operated by a diverse array of international partnerships and built on Mauna Kea at great expense, they are there because we care about some fundamental questions.  What is the evolutionary history and future of the universe?  What are dark matter and dark energy? Why is there anything at all?

Answers to these questions are not likely to address our current economic woes, improve health care or address our environmental challenges. We care about the answers, nevertheless. 

As I pondered the gloaming sky my thoughts turned to Edwin Hubble, who first showed that some of those faint smudges in the sky were “island universes” – galaxies like our own.  The universe was a far bigger place than we had heretofore imagined. As Hubble observed about this age-old quest to understand:

From our home on the Earth, we look out into the distances and strive to imagine the sort of world into which we are born. Today we have reached far out into Space. Our immediate neighborhood we know rather intimately. But with increasing distance our knowledge fades, and fades rapidly, until at the last dim horizon we search among ghostly errors of observations for landmarks that are scarcely more substantial. The search will continue. The urge is older than history. It is not satisfied and it will not be suppressed.

Hubble’s comment was about the observational difficulties of distance estimation and the challenges associated with identifying standard candles. However, it could just as easily have been a meditation on computing, for we are driven by our own insatiable desires for better algorithms, more flexible and reliable software, new sensors and data analytics tools, and by ever larger and more faster computers.

Computing the Future

Why do we compute? I suspect it is for at least two, related reasons, neither relating to publication counts, tenure, wealth or fame.  The first is the ability to give life to the algorithmic instantiation of an idea, to see it dance and move across our displays and devices.  We have all felt the exhilaration when the idea takes shape in code, then begins to execute, sometimes surprising us in its unexpected behavior and complexity. Computing’s analog of deus ex machina brings psychic satisfaction.

The second reason is that computing is an intellectual amplifier, extending our nominal reach and abilities. I discussed the power of computing to enable and enhance exploration in another CACM blog. (See Intellectual Amplification via Computing.) It is why those of us in computational science continually seek better algorithms and faster computer systems.  From terascale to petascale and the global race to exascale, it is a quest for greater fidelity, higher resolution and finer time scales. The same deep yearning drives astronomers to seek higher resolution detectors and larger telescope apertures.  We are all chasing searching the ghostly signals for landmarks.

It is our ability to apply our ideas and their embodiment in code to a dizzying array of problems, from the prosaic to the profound, that attracts and compels us. It is why we compute.

Hubble was right.  We compute because we want to know and understand. The urge is deep and unsatisfied.  It cannot be denied. 

Join the Discussion (0)

Become a Member or Sign In to Post a Comment

The Latest from CACM

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More