badpopcorn

Paper, Biology and Computing

Written by Ben on December 15, 2005 | 1 Comment

It has been some time since I proclaimed a love for pen and paper. My followup, as promised, covers a bit about paper’s survivability. That survivability being non-existent. The twist here is that the goal isn’t to make paper survivable, it’s to ensure that the written word on the paper is.

To do so, one can apply the following four design concepts:

  1. Distribution — “A spatial or temporal array of objects or events”. Here we are talking about the spatial distribution.
  2. Replication — defined as “the act or process of duplicating or reproducing something” and “the process by which genetic material, a single-celled organism, or a virus reproduces or makes a copy of itself” in Biology.
  3. Decentralization “To distribute the administrative functions or powers of (a central authority) among several local authorities.”
  4. Active Coordination – “integrating or linking together different parts of an organization to accomplish a collective set of tasks.”

Why are these four facets important? It comes down to survival.

  1. Placing all your eggs in a basket is asking for trouble, so the cliche goes. Place them in different locations to increase the chances of their survival.
  2. It is quite easy to lose information if there only exists a single copy. But, there won’t be a complete loss if a few copies are destroyed when many more exist.
  3. A central entity/organization is vulnerable just as much as a single copy of a book or program. Spread the authority out to many entities so the system can keep running when one of them goes down.
  4. All parties should actively work together (in varying degrees) so the system as a whole will function. A passive system won’t do anything to recover from disaster, where as an active system will do something.

The world’s library systems, if you will permit, meet all these aspects. They are geographically spread out around the world; multiple copies of books exist at multiple libraries; they operate more or less individually, there isn’t a “central library boss”; and they coordinate with each other to move books around.

Biology sees the same thing. Humans are spread all across the globe; there are over 6 billion humans; we more or less are individuals; and we work with eachother to survive (to varying degrees).

Highly available computing systems follow these concepts. Work is distributed across computers and geographical locations; files have multiple copies and backups; they are generally designed to process work individually; and protocols are used between computers to both do work and maintain their data.

Understanding these four rules will definately help in making survivable systems, and hopefully a society that can survive. But let me part with a final fifth design rule that applies to many more problem domains: K.I.S.S. – Keep It Simple, Stupid. The less complex something is, the less there is to break. We’ll talk about this some other time.


1 Comment »

  1. [...] And because I’m a geek, I would design for manageability, extendability, scalability, survivability, and (hopefully) usability. But doing a full design upfront would be a great load of work, and would make for a very very long blog post. Instead, I have some suggestions about some technologies and design strategies that may help in acheiving some of these goals… off the top of my head: [...]

    Pingback by Badpopcorn » Musings About the CouchSurfing System of Sharing — July 3, 2006 @ 3:09 pm

RSS feed for comments on this post. | TrackBack URI

Leave a comment

XHTML ( You can use these tags): <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> .