the Fail Whale
loreweb devops culture
Twitter's overload mascot, a whale lifted by birds, that turned chronic downtime into a beloved brand from 2007 to 2013.
Yiying Lu's illustration 'Lifting a Dreamer' greeted users whenever early Twitter buckled, which during live events was constantly; the error page acquired fan clubs, tattoos, and merchandise. Behind it was a Rails monolith being rearchitected in flight into the JVM-based service that eventually retired the whale around 2013. It remains the strangest achievement in operations history: an outage page users were sorry to see go.
The fail whale was the illustration Twitter showed when overloaded, an image of a whale lifted by birds, and it appeared often enough during the late 2000s to become an internet-wide reference for a service failing under its own popularity.
Its interest is as an object lesson in scaling architecture. The service was built as a conventional database-backed application, and the pattern it needed, fan-out of every message to the timelines of arbitrary numbers of followers, is genuinely hard on that architecture. The rewrite that followed, into separate services with purpose-built storage, is one of the more public examples of a company being forced to re-architect in production while continuing to operate.
The cultural half is the part worth keeping. A charming error page bought an extraordinary amount of goodwill for repeated failure, because users experienced it as an endearing symbol of a service growing faster than it could cope rather than as incompetence. That is a real finding about incident communication: how a failure is presented substantially changes how it is received, and dressing it up is not the same as concealing it.