Saturday, September 5, 2009

Nature and Software

I found that there is a wonderful similarity between software and nature. Nature is an eminent architect of elegant software called universe. There are lots of software applications running in the wider operating system of the universe. For example, human body itself is an example of fool-proof six sigma coded software. Even in that foolproof software we get bugs called diseases. For that we have different development or more precisely bug fixers. For example, for skin related diseases we have dermatologists, equivalently UI developers. Kernel of human body is mind. For that we have the bug fixers called neurologists. We have physicians to check overall human health, equivalently the integrators. No regressions are expected in bug fixing of human body.

This is just a human body. One example of elegant software, of numerous applications, running in the wonder world. Likewise we can find lot of similarities between wider spectrum of computer science and nature. Eg., Multithreading, database, OS. etc. Interestingly, what might be reboot for the universe. Is it big bang? Probably nature is the longest running and running server.

Nature still has lot of hidden secrets which human mind yet to discover. I think if we try to find similarity between software and nature, we can find lot of voids in computer science which need to be filled by coming generations.