Link of the Week: Linux versus E. coli
A recent post from science writer Carl Zimmer on his blog The Loom compared the programming networks in Linux and the E. coli bacterium.
Their similarities are interesting, as are their differences, says Zimmer:
“The history of Linux has played out differently. A lot of the oldest functions in Linux are middle managers or master regulators, not workhorses as in E. coli. And while old genes in E. coli haven’t evolved much, programmers have heavily rewritten Linux’s old functions.
“Both networks developed, step by step, as increasingly sophisticated systems for operating things — computers or cells.
“But the Linux network was the work of programmers, while E. coli is the product of four billion years of evolution. The differences in the history and shape of the two networks emerge from the ways in which they developed. The programmers who built Linux did not have the time to invent entirely new workhorse functions. It was simpler for them to just use the old workhorse functions in new modules.
“But this strategy leaves Linux a lot more fragile than a biological network. Its modules overlap, so that in many cases, a workhorse function is essential for many different modules at once. As a result, Linux gets buggy and prone to crashing. And so as programmers improve Linux, they’ve had to fine-tune its all-purpose functions at every step of the way.
“E. coli is far more rugged. Mutations crop up all the time as the bacteria multiply, and yet they generally don’t suffer a catastrophic network crash. One reason E. coli is so robust is that its modules have evolved to be distinct. Overlapping modules make cells particularly vulnerable to mutations, because a single mutation can shut down a lot of their essential biology. Natural selection favors organisms with a more rugged network.”
For more, see The Loom.