29 juli 2026. Alle aantekeningen.
Elke ophaalronde in deze site heeft een label: route-1, route-2, enzovoort. Dat label staat in de URL waarop iemand zich abonneert, dus het moet blijven staan zolang die ronde bestaat.
Intern is een ronde echter een vingerafdruk van haar kalender, en die kalender verandert elk jaar. In januari heeft elke ronde dus een nieuw intern nummer, en moet er opnieuw bepaald worden welk oud label erbij hoort. Dat gebeurt door te kijken welke straten erin zitten.
De eerste versie gebruikte daarvoor de gebruikelijke maat voor twee verzamelingen: de doorsnede gedeeld door de vereniging. Dat lijkt redelijk, en het werkt ook, zolang de twee verzamelingen even groot zijn.
Dat zijn ze hier niet. Een gemeente wordt in deelrunnen opgebouwd, honderdvijftig straten per nacht, dus een ronde groeit. Vergelijk je 47 straten van gisteren met de 140 van vandaag, dan geeft die maat 0,34. Onder de drempel, dus: nieuw label.
En dan bestaat route-3 opeens niet meer, terwijl er mensen op geabonneerd zijn.
Niets zichtbaars. Dat is het vervelende. Een agenda die een abonnement niet kan ophalen, toont dat aan niemand: ze noteert ergens een synchronisatiefout en blijft ondertussen de verouderde ophalingen tonen. Wie zich in maart geabonneerd heeft, ziet in juli nog steeds keurig zijn ophaaldagen staan. De verkeerde.
De maat is nu insluiting: de doorsnede gedeeld door de kleinste van de twee verzamelingen. Die 47 straten die opgaan in 140 geven dan 1,0 in plaats van 0,34, en het label blijft dus staan. Labels die een ronde niet voorkwamen worden bewaard in plaats van opgeruimd.
En als een label toch niet meer te koppelen valt, is dat nog steeds geen foutcode. Er wordt dan gezocht in welke ronde de straten van dat oude label nu zitten, en de abonnee wordt daarmee bediend. Het gevraagde label blijft in de agenda-items staan, anders zou zijn agenda alles weggooien om het meteen opnieuw aan te maken.