Errors, The Ultimate Architect of Everything
I was programming the other day, and quite like every other day, stumbled into some errors. I tried to fix them and run it again, only to realize that I have run into some other errors now. I was feeling frustrated and closed my laptop. After starting work on this project around 3 months ago, there is this little exercise that I do whenever I jump into an endless loop of compilation mistakes and other frequent crashes — I look back at all that I have done up until now. There were plenty of instances where I had thought that I won’t be able to crack this one, and would have to give it up for the other, more experienced members of the team, but finally ended up solving them myself. There has been no hurdle which I faced, that I couldn’t solve by myself. Some of them took a day, some other took weeks, but I had resolved every one of them in the end.
No matter what the platform, whatever language or framework, there is one thing that is common in every software stack — errors. Errors are the stones with which we build software. Well, we don’t literally build stuff with code full of errors, but you get the point. Every new feature that you envision in your mind is born into this world, covered with errors in the first code you write. Just like a new born baby, you have to clean it up with help from Stack Overflow, the mid-wife.
Still without having solved the current error, I decided to take a break.
Speaking of errors, the same process of developing clean code was in a manner, involved in the developing of life on Earth. Whoa, wait, what?! That escalated a bit too quickly, didn’t it? Well, Darwin’s Theory of Evolution, which is now an accepted fact says the same. All that we call life today began and developed purely by luck. Trial and error was how life was created in a virgin earth.
One of the visual representations of this process, which I really liked, is from Neil deGrasse Tyson’s Cosmos. In one of the episode he explains how the eye evolved. While life was only single celled organisms, swimming down in the oceans, a random single-celled creature had a mutation in its DNA which gave it a patch of light-sensitive area in its body. These creatures with the mutation could sense sunlight from above, and were adept in not swimming up to the surface, which was lethal considering there was no ozone layer formed at that time. So the creatures with the mutation had a better chance of survival and eventually reproduced and even the offspring had a greater chance of survival. Eventually the majority of the population had light sensitive patches in them, as the ones without them couldn’t sense light and died up in the radiation from sunlight.
“All of the systems in our body that we take for granted today, was carefully sculpted over millions of years of run-time errors!”
The entire intricate structure of the animal eye, was carefully crafted in such a manner, mutation by mutation. The process of trial-and-error continued over the millions of years. While the successful ones kept surviving and passing on their traits, the unsuccessful ones died off in the race for survival.
A quick research in Wikipedia might show that in fact, all of the systems in our body which we take for granted today, was carefully sculpted over millions of years of run-time errors! Really puts the mistakes we make everyday into perspective doesn’t it? We all make mistakes and will keep on making mistakes as long as we are still “human”, because we were made by making mistakes only. Remembering Einstein’s quote, making mistakes is the only way we can learn something new.
Ah, what a nice ending to a train of thought, right? But what about situations where we can’t afford to make mistakes, like the moon landing missions, for instance? Well, there comes the might and creativity of humans. We going to moon, hoisting our flag and coming back safely doesn’t mean that we didn’t face any hurdles. Just read upon the moon landing of 1969 and story makes us respect and admire the people behind it even more. They faced a lot of life-or-death situations, throughout the journey and even up to the point where they were going to land their vehicle on the moon, and getting back to the spaceship. They were situations where mission control back on earth would’ve had to abort the mission if the situations didn’t end up as they did. With the combined effort and courage of the people, they were able to overcome all of the hurdles faced and emerge successful. So, why am I saying this here? Human beings are not perfect. But it is our imperfections that make us who we are. We ended up this way through a very random process with a lots of bumps and turns, but what we do next and where we sail the ship to in the future lies on our hands. And in this endeavor we will make mistakes — mistakes that will shape us. So be proud of the mistakes you make, and wear them as a badge of honor when you emerge successful!