Daniel Lemire's blog

, 2 min read

Biology and computing are more alike than you think…

Biological systems are seemingly of infinite complexity. We still don’t know what a heart attack is, not really. Despite billions spent, we still don’t know what Alzheimer’s is. We don’t what aging is, not really. We don’t know how genes work, we can’t reprogram you at will.

We study biology from the top down. We see a tree growing and we try to figure out how it does it.

Computing is built from the bottom up. We design chips. We assemble them. We write the software. And the whole thing comes together.

If your software and hardware are simple enough, then one person can fully understand a computing system. However, we have long run past this stage.

A single processor can include billions of transistors, organized in circuits that implement clever algorithms. Then we have layers upon layers of software abstractions.

It is hard to compare the complexity of a living being with that of a computer, but the human genome can easily fit on a cheap USB key. In fact, there are companies that will sequence and ship your own genome on a USB key for less money than you’d think.

You might think that the information contained in our genome is highly compressed data, but the evidence points in the other direction. Most of our DNA is seemingly unnecessary.

Of course, we know a lot more about how an iPhone works than a human being. It has to be so. Nevertheless, the lines are blurring.

Recently, a piece of software, AlphaGo, defeated the best human player in the game of Go. The software and the underlying systems were all designed by people… but the resulting machine plays a game of Go at a much higher level than any of the designers of AlphaGo could. This means that, in a very real sense, the designers of AlphaGo don’t fully understand their creation. It escapes them. It will do things that they could not predict.

Increasingly, computing will become less about pure engineering, pure science and straight programming… and more about taming complexity.

Meanwhile, with the growth of synthetic biology and the application of computing to medicine, the work of biologists will become closer to that of the software engineers of today. Instead of letting the body heal itself with help, we will increasingly be reprogramming it.

At some point in this century, the difference between biology and computing will fade almost entirely.