There is a paradigm in software (and other engineering disciplines, I suspect) called “fail fast.” On first encounter, it sounds odd. Why fail fast? Don’t we want to delay failures? Of course, the context drives the design; and far too often, in software, one deals with a increasingly complex system that comprises of many moving pieces. So, sometimes, if something fails, it’s much better to know about it sooner than later, so it can be addressed. Jim Shore wrote the best article on the advantages of failing fast to my knowledge, here. He says:
Some people recommend making your software robust by working around problems automatically. This results in the software “failing slowly.” The program continues working right after an error but fails in strange ways later on. A system that fails fast does exactly the opposite: when a problem occurs, it fails immediately and visibly. Failing fast is a nonintuitive technique: “failing immediately and visibly” sounds like it would make your software more fragile, but it actually makes it more robust. Bugs are easier to find and fix, so fewer go into production.
I find parallels between my software experiences and my life. I often notice what works in one paradigm has uses in others and — in many cases — I want my experiences to be “fail fast.” In other words, I want to know sooner rather than later if a new product will be successful, if a new business relationship will work, if a new idea will manifest, etc.
If you want to succeed, double your failure rate. – Thomas J. Watson
In business, it is better to know of upcoming failures early in order to avoid the loss of putting time and money into ideas that are likely to fail. In dating it’s better to dump a guy up front if he doesn’t want kids and you do. I’d rather know this sooner than later. How does this translate to actions? To me, it translates to more encounters, more interactions, more ventures, more things to “start.” Not all ventures will succeed, but in order to increase successes, there must be a higher rate of corresponding failures. And if we have to have failures, why not get them over with quickly?
In order to do so, however, we need to rethink failure as a feedback mechanism. We often make failure out to be a stigma. While failure is not optimal in all situations, sometimes failures are nothing but lessons in disguise. They can be feedback mechanism for actions; they tell us how to improve on things, how not to do something. How else can you discover a new passion without exposing yourself to failure? How many times have we started a project, failed, but discovered a new way to do things? We have all heard stories of Edison failing to invent the light bulb 1,000 times.
So, my friends, fail fast, fail often.