The "fail fast" principle, sometimes referenced as "fail often" or "fail cheap," is a powerful business management concept. It encourages a trial-and-error process to quickly assess the long-term viability of a product or strategy and move on, cutting losses rather than continuing to invest in a doomed approach.
The core rationale is to discover failure before significant investment is made, at the earliest possible stage. The associated practices are designed to identify concerns before a product enters extensive research and development, and long before a release or rollout.
In software development, this principle is often adopted without developers even realizing it. The volatile nature of software means that logic must be constantly updated to meet business expectations. Even with extensive analysis, software is often difficult to "forecast," especially in complex systems.
The main advantage of fail fast should be limiting costs before it's too late. However, this principle can become so appealing that it is used as an excuse to skip proper analysis, morphing into a reckless "let's start immediately and see what happens" approach.
This divergence has the opposite effect of its intention. Instead of limiting costs, we're validating an idea in an unexplored territory without the necessary references or indicators to evaluate when we should "stop" or "proceed." Moreover, a fail fast approach without analysis can cause even more costs if the original strategy was correct, but the time to implement it correctly increases dramatically as it's adapted on the fly. Not to mention the frustration this can cause for developers, as continuously changing requirements lead to poor quality results.
So, fail fast is an excellent principle, but only if you don't fail first. The analysis process can save your business in advance, and if done well, it can validate most of your strategy. The fail fast philosophy should be applied at the customer level to validate the impact of the product and make possible improvements and adjustments.
Never start something without a clear idea with the thought, "It's okay, we'll fail fast." Simply because you can't even measure that "fast" when you have no plan to begin with.