Skip to content
Notes

How I think.

Decisions I made, and the reasoning behind them.

Two panels. On the left, the first version adds the criteria up: a long bar for strong finances and a short bar for the academic record with a long unexplained gap sum to a pass, marked as the wrong answer. On the right, the rebuilt version: the same bars, but the academic gap is flagged as a hard blocker, a line marks the cap, and the result is capped, whatever the total.
Illustration. The first version added the criteria up; the rebuild lets one hard blocker cap the band.
First instinct
Weight every criterion and add them up.
The evidence
A test profile with strong finances and a long unexplained gap in the academic record came out as a pass. A caseworker would reject it on the gap alone.
What I chose
Tiered band-capping: every criterion still counts, but one hard blocker caps the final band, whatever the total. The rules live as data.
Still open
I can't yet separate a borderline pass from a borderline fail. That needs outcome data I don't have.
Read the note
Frontier Works Organization

Timeouts that weren't the query's fault

Two timelines of one request at peak load. Before: almost the whole bar is spent waiting for a connection from a drained pool, and the request times out before its query ever runs. After: a short wait, the bounded query, and the connection released straight away.
Illustration, not to scale. The time went to waiting for a connection, not to the query.
First instinct
Go after the slow queries.
The evidence
The query plans were unremarkable. The failures happened before any query ran: requests held connections while iterating unbounded result sets, and the pool drained.
What I chose
Bound the queries so no request holds a connection while streaming an open-ended set, resize the pool, and fail fast instead of queueing.
What I kept
Find where the time is actually spent before optimising whatever looks slowest.
Read the note
A cloud of dots labelled normal readings, with a second, smaller dense cluster. One dot sits far from everything and is labelled globally rare, caught by Isolation Forest. Another sits just outside the small cluster, close to other readings but unusual next to its neighbours, and is labelled as caught by Local Outlier Factor.
Illustration, drawn in two dimensions. The real feature space has ten.
First instinct
Train a supervised classifier on labelled faults.
The evidence
Nobody labels the readings. A fault gets recorded, if at all, in a maintenance note once the vehicle is already in the workshop. There was nothing to train on.
What I chose
Learn what normal looks like across a 10-dimensional feature space, with Isolation Forest and Local Outlier Factor together, because they fail differently.
Still open
With no labels there's no precision or recall to quote, and the alert threshold is a judgement call tuned by inspection.
Read the note