The Harbour Master's Tide Chart: On the Predictability of Unstable Systems
There is a creased and faded chart, laminated against the salt spray, that has hung in the harbour master’s office for as long as anyone can remember. To the untrained eye, it is a beautiful mess of overlapping, gently curving lines, a tangle of arcs and numbers in blue and red ink. It is not a map of the seafloor, but of time itself. It predicts the tides.
Every day, the harbour master consults this chart. He knows that the water level is never static; it is a system in constant, rhythmic flux. High tide and low tide are not binary states of ‘full’ or ‘empty’, but predictable points on a continuous, oscillating curve. He doesn't measure the harbour’s ‘uptime’ as a simple percentage of being accessible. Instead, his success is measured by his ability to anticipate the rhythm of its instability. He knows precisely when the channel will be too shallow for a deep-keeled vessel and when the current will run dangerously fast under the pier. This knowledge isn't about preventing the tide from turning—that would be impossible—but about scheduling arrivals and departures within its immutable laws.
We could learn a lot from that tide chart. In our world of services and systems, we often treat ‘down’ as a catastrophic, singular event, a binary flip from ‘up’ to a state of failure. But many of the systems we build are more like estuaries than mountain lakes. They have their own tides. There’s the predictable daily surge of user traffic, the weekly ebb of weekend maintenance windows, the spring tides of holiday sales or product launches that push load to its absolute peak. These are not failures. They are the inherent, predictable rhythms of a living system.
Observing the Rhythm, Not Just the Level
The harbour master’s job isn’t to stare at the water level at a single moment and panic if it’s not exactly where he wants it. His true work is in observability—understanding the forces that create the rhythm. He tracks the phase of the moon, the barometric pressure, the direction of the wind. He has a qualitative feel for how these factors will pull and push on the water, bending the predicted curve from the chart. Similarly, effective health checks go beyond a simple ping. They measure latency under load, they track the rate of incoming requests, they observe the memory usage curve. They tell you not just if the service is ‘up’, but how it is breathing.
By accepting that our systems exist in a state of constant, measurable flux, we can move from a mentality of reaction to one of anticipation. The goal is not to build a wall against the sea, but to build a harbour that works in harmony with it. A probe that only screams ‘failure’ when the water recedes below a certain mark is useless if that recession happens like clockwork every twelve hours. A reliable service is one that understands its own tides, that has a chart for its own predictable instabilities, and that schedules its critical journeys accordingly. It’s about knowing the difference between a routine low tide and the beginning of a drought that will leave you stranded on the mudflats.
Notes & further reading
A few pages I came back to while writing this:
- Austin, TX
- The Lighthouse and the Lantern: Two Views of the Service Beacon
- Brownsville, TX
- The Baker's Window: On Knowing When the Oven is True
- Carrollton, TX
- The Summer Cicada: On the Sound of Things Not Failing
- Corpus Christi, TX
- Dallas, TX
- Fort Worth, TX
- Frisco, TX
- Garland, TX
- Grand Prairie, TX
- Houston, TX