Status Datensatz vollständig, maschinelle Prüfung grün, Ergebnisse veröffentlicht (Stand 05.08.2026)
Umfang 1.261 Vereine · 19 Verbände · alle 16 Bundesländer · 894 Bootshaus-Koordinaten · 841 Gewässer-Zuordnungen
Umgebung Claude Code · Python-Pipeline aus 13 Schritten
Ablage einem lokalen Projektordner (Code im Git, Excel und Karte generiert)
Jira RM-486 im Epic RM-485
Externe Kosten 0,00 € – die 886 Google-Places-Abrufe lagen im Freikontingent

Worum es geht

Wer eine Kanutour plant, braucht eine Frage beantwortet, die keine Quelle direkt beantwortet: An welchem Gewässer liegt dieses Bootshaus? Der Deutsche Kanu-Verband führt zwar alle Vereine mit Adresse, aber die Adresse ist die Straße, nicht der Steg – und ob nebenan ein Fluss fließt, steht nirgends.

Das Ergebnis sind zwei Artefakte: eine Excel-Arbeitsmappe mit 1.261 Vereinen und 19 Verbänden und eine interaktive Karte, die sich auf Satellitenbild umschalten lässt – erst dort sieht man, ob ein Bootshaus wirklich am Wasser steht. Beides erzeugt eine Pipeline vollständig neu, ohne Handarbeit.

Die eigentliche Arbeit: Position vor Gewässer

Ein Gewässer lässt sich nur so genau zuordnen wie die Position, von der aus gesucht wird. Die Verbands-Koordinate ist im Median 19 m genau – aber mit einem langen Schwanz: Einzelne liegen über zwei Kilometer daneben, weil dort eine Geschäfts- oder Schuladresse hinterlegt ist.

Deshalb entsteht die Position über eine Rangfolge mit vier Stufen, und jede Zeile weist aus, welche gegriffen hat.

Rangfolge der Positionsquellen

  • Handkorrektur – Marker in der Karte auf das Bootshaus gezogen. Schlägt alles und überlebt jeden Neulauf.
  • OpenStreetMap (269 Vereine) – benanntes Vereinsobjekt, das dem Vereinsnamen ähnelt und zur Sportart passt, oder genau ein als Bootshaus erfasstes Gebäude im Umkreis.
  • Google Places (558 Vereine) – Suche nach Verein und Adresse, begrenzt auf 5 km um den bisherigen Punkt.
  • Verbands-Adresse (67 Vereine) – der Kartenpunkt des DKV, ersatzweise geokodiert.

Warum das Feld ehrlich leer bleiben darf

Von der gewählten Position aus wird das nächste benannte Gewässer im Umkreis von 400 m gesucht. Wird keins gefunden, bleibt das Feld leer – es wird nichts geraten. Jede Zeile trägt zusätzlich ein Konfidenz-Kennzeichen, das sechs Zustände unterscheidet; entscheidend ist die Trennung zwischen „kein Gewässer im Umkreis" und „noch nicht geprüft".

Diese Unterscheidung ist kein Detail. Ein Datensatz, der Unwissen als Negativbefund ausgibt, sieht vollständig aus und ist falsch.

Sieben Fehlbefunde, die den Datensatz belastbar gemacht haben

  • Eine API, die still lügt: Die öffentliche Geodaten-Schnittstelle antwortete unter Last mit „alles in Ordnung, keine Treffer" – ununterscheidbar von „hier ist kein Fluss". Aufgefallen an einem Verein 110 m von der Ruhr. Konsequenz: lokale Datenextrakte statt Live-Abfragen.
  • Zu enger Suchradius: 150 m warfen echte Wasser-Vereine heraus, weil die Adresse die Straße meint. Mit 400 m stieg die Trefferquote von 66 % auf 92 %.
  • Nähe ist kein Beleg: Der nächstgelegene Kartenpunkt machte aus einem Wassersportverein eine Kohlenniederlage. Seitdem muss der Name passen – und die Sportart, sonst zieht ein Kanu-Club in einen Ruderclub.
  • Breite Flüsse: Die Kartenlinie eines Flusses ist die Flussmitte, nicht das Ufer – ein Bootshaus direkt am Wasser erschien 152 m entfernt.
  • Google liefert oft die Geschäftsadresse: In 57 Fällen wäre ein Verein bis zu 43 km weit auf seine Vereinsanschrift gesprungen. Sprünge über 2 km werden deshalb gemeldet, nicht übernommen.
  • Bundesland aus der Postleitzahl, nicht aus der Karte: Landesgrenzen verlaufen in der Flussmitte – sechs Bremerhavener Vereine landeten dadurch in Niedersachsen.
  • Eine überflüssige Filterbedingung: Die Gewässersuche verlangte zusätzlich eine Straßenangabe. Acht Vereine mit bekannter Koordinate fielen dadurch still heraus. Sieben von ihnen liegen an einem Gewässer.

Was daran übertragbar ist

Kein einziger dieser Fehler wäre durch Nachdenken aufgefallen. Alle sieben kamen ans Licht, weil Stichproben gegen die Wirklichkeit geprüft wurden – gegen ein Satellitenbild, gegen einen Verein, dessen Lage bekannt war – und nicht gegen die eigene Erwartung.

Der achte Befund kam zuletzt und ist der unbequemste: Die Detailseiten des Verbandes, seit Beginn im lokalen Zwischenspeicher, führen Felder, die nie ausgelesen wurden – darunter das Gewässer selbst für 523 Vereine und die Flussseite mit Kilometerangabe für 350. Die Quelle wurde nach den erwarteten Feldern durchsucht, statt zuerst zu erheben, welche Felder es überhaupt gibt. Daraus ist eine feste Regel für alle Projekte geworden: neue Quelle zuerst inventarisieren, dann parsen.

Vom Datensatz zur veröffentlichten Seite

Ergebnisse, die als Datei auf einem Rechner liegen, sind für alle anderen nicht vorhanden. Der Datensatz steht deshalb als geschützte Webseite auf derselben NAS wie diese Seite hier – mit Startseite, interaktiver Karte und Download der Arbeitsmappe.

Das Rechte-Modell ist bewusst zweistufig: Es gilt dieselbe Anmeldung wie auf Ein IT-Projekt mit KI, aber eine eigene Freigabeliste. Ein gültiger Login genügt also nicht – der Benutzer muss zusätzlich für den Kanu-Bereich freigegeben sein.

Ein Detail daran ist übertragbar und leicht zu übersehen: Eine hochgeladene Excel-Datei wäre trotz Login öffentlich gewesen, weil der PHP-Login nur .php-Dateien schützt und auf dieser NAS die Verzeichnis-Konfiguration gar nicht ausgewertet wird. Die Arbeitsmappe wird deshalb kodiert in einer PHP-Datei ausgeliefert und geht damit zwingend durch die Anmeldung. Ein Schutzmechanismus schützt nur das, wofür er zuständig ist – und das ist selten alles, was im selben Ordner liegt.

Auffrischung statt Einmal-Datensatz

Ein aus Webquellen erhobener Datensatz veraltet ab dem Tag der Erhebung. Alle fünf Quellen stehen deshalb in einem Register und werden über einen einheitlichen Ablauf neu abgerufen, der den Unterschied zum alten Stand berichtet, statt still zu überschreiben – festgehalten im Baustein Kontrollierte Datenauffrischung. Handkorrekturen an Bootshaus-Positionen überleben jeden Lauf, und die kostenpflichtige Quelle läuft nur nach ausdrücklicher Bestätigung mit.

Aktueller Stand

  • 1.261 Vereine und 19 Verbände über alle 16 Bundesländer, 894 mit Bootshaus-Koordinate.
  • 841 Gewässer-Zuordnungen – 821 als „sicher" gekennzeichnet, 20 als „vermutet".
  • Interaktive Karte mit Satellitenansicht, Filtern und ziehbaren Markern; jede Korrektur wirkt dauerhaft in Karte, Tabelle und Zuordnung.
  • Maschinelle Prüfung aller Akzeptanzkriterien läuft grün und hat unterwegs zwei echte Fehler abgefangen.
  • 93,8 % der 1.100 Vereins-Webseiten antworten; tote Links sind als solche markiert statt stillschweigend mitgeführt.
  • Veröffentlicht als geschützte Webseite auf der NAS – gemeinsame Anmeldung mit Ein IT-Projekt mit KI, eigene Freigabeliste, Arbeitsmappe nur nach Login.
  • Auffrischbar über ein Quellen-Register mit Unterschieds-Bericht und Lauf-Historie; Handkorrekturen bleiben dabei erhalten.
  • Fortgesetzt im Projekt „Kanu-Aktivitäten" – dieselbe Vereinsbasis, aber die Frage nach Veranstaltungen statt nach Standorten.

Eingesetzt in

Dieses Projekt wird in folgenden anderen Projekten verwendet:

← zurück zur Projekt-Übersicht