Programmers are generally very optimistic. They spend a lot of time designing how the system should work. They mostly succeed; their systems work as they were intended. But mostly they forget to realize what happens if a system encounters a problem in normal operation. There are several reasons out there which may cause a vulnerable system to crash and it is a fact that any system does not run in a perfect sandbox.

So what could be done to prevent failures? “Do pessimistic coding approaches help?” Well, no matter how we write code, or how we run it, the system is never 100% immune to failures. You might wonder, “If a perfect system cannot be built&#151if faulting is invincible, then why do we need to talk about it?” Actually, the real smart thing is to learn to live with it. This may sound a little contradictory to what we were talking about earlier, but as you read more you would understand why?”

This presentation is aimed at lime lighting some of the good practices that I have come across in my career, adopted from great programmers and some the original ideas of myself.