We talk a lot about why observability is so critical for complex systems and hard problems. And it's true! Without it you're screwed!
But I'm starting to think we talk about it TOO much, because people think they ONLY need it at scale or with microservices or distsys. Noooope
Deciding to first spin up a bunch of old school logs and metrics, then switch to observability when you "need" it, is like investing in outhouses and cisterns until you "need" plumbing.
I mean...that is a choice, you can choose it.
I think people think this way for two reasons. 1) o11y is newer and less familiar. I'll grant you that.
2) they assume that because it's more powerful, it must be harder to use. Which is understandable -- but wrong. SO wrong.
It may /feel/ harder at first to those of us who have been contorting our brains around metrics, tags, aggregates and logs for decades. But it is NOT harder. It is straightforward and direct.
It speaks the language you do, of code and services and requests.
In lots of places, ops's primary function is simply translating those dashboards and their systems-ese into the language of code and requests. It's a hard job, as much intuition and battle scars as science.
You'll never get software eng to own their shit using tools like that.
Instrumenting your code for observability isn't an investment in your distant future, when you're big and grown.
It's an investment in your team *now*. Every day you work on your system and your code. Every day you need to understand and debug it. Every day it's better.
You can follow @mipsytipsy.
Tip: mention @threader_app on a Twitter thread with the keyword “compile” to get a link to it.
Enjoy Threader? Sign up.
Threader is an independent project created by only two developers. The site gets 500,000+ visits a month and our iOS Twitter client was featured as an App of the Day by Apple. Running this space is expensive and time consuming. If you find Threader useful, please consider supporting us to make it a sustainable project.