Case study

One kind of business, a big metro and a mid-sized city.

Neither place was chosen by hand. A seeded draw picked both of them, and the radius for each, before anything was measured. Here is what the two runs found, how to read it, and what it does not show.

How the two places were picked.

One seed string drives a small generator in scripts/draw.mjs, which picked the kind of business, one of the largest US metro areas, and one mid-sized city. The radius for each kind of place was fixed in that script before any run started, so nothing a run returned could steer the choice. The script touches no network, prints the same draw every time, and was committed before either run.

Seed

One departure, recorded by the draw itself.

What the two runs found.

Everything the map listed, split into the six groups a business can land in. Only the last group was measured, so only the last group is ranked. Every count is shown out of everything the map listed.

The need bands, worst band first.

The measured sites of each run, grouped by how much work they need. A band holds every site that came out at the same need, and the ladder only has the rungs that run found.

How to read it.

Neither run is the other's score.

The useful part is not which place came out worse. It is that most of what the map lists never reaches a ranking at all, and that the sites which do reach one arrive carrying the measurement that put them there. A band is a queue to work through, not a league table.

Every banded site.

The whole list from both runs, worst band first, with the top finding of each site and the measurement it rests on. Names and domains are withheld, so each site is a salted id.

    What this does not show.

    Six things a reader could otherwise take from the figures above, and should not.

    The unedited output.

    This is what disrepair rank prints for each run, unedited. Every figure on this page comes from these two files, and the audit reports both runs as internally consistent.

    Run one on a town you know.

    Disrepair is free and open source, and it has no dependencies. It runs from the command line and needs Node 20 or newer.