There's a version of leadership that looks busy, looks needed, and looks like it's working but turns out to be the least effective version there is. This summer I read Bob Chapman's Everybody Matters , and one distinction from the book kept coming back to me weeks after I'd finished it: firefighting versus firelighting, as two fundamentally different modes of leadership. Chapman's point is simple to state and harder to live by. A firefighting leader spends their energy reacting: jumping from one problem to the next, stepping in to rescue a team the moment something goes wrong. A firelighting leader does the opposite. They don't chase problems. They ignite something in people, so the problems get solved without the leader showing up with the extinguisher every time. In the book, the differences are listed like this: Firefighting: Reactive by nature . You wait for the smoke before you act. The leader becomes the bottleneck. Nothing moves unti...
Note: this is a follow-up to my post on monitoring GitHub Copilot Chat with the Aspire Dashboard. Same idea, different agent. Some developers on the team have switched (part-time) from Copilot Chat to Claude Code for their agentic work. Same question came up again: how much are we actually using it, what does it cost, and where does the time go in a session? Claude Code has its own OTel support, separate from Copilot's, so it needs its own setup — but it plugs into the exact same Aspire Dashboard we already had running. What Claude Code exports Claude Code emits three kinds of OTel signals: Metrics — session counts, token usage, cost, lines of code changed, active time Events — one event per prompt, per API call, per tool result, per permission decision Traces (beta) — a claude_code.interaction span per prompt, with claude_code.llm_request and claude_code.tool spans nested underneath Remark: traces are still beta. Metrics and events are the stable path ...