Die erste Version dieses Projekts entstand am 09.06.2020 und war nach ca. vier Stunden fertig.
Am 09.06.2020 öffneten die Boulderwelten wieder ihre Tore, nachdem sie monatelang aufgrund der COVID-19-Beschränkungen geschlossen hatten. An diesem Tag aktualisierten sie auch die Besucher-Ampel auf den Webseiten ihrer Filialen in Deutschland. Dieser Ampeln zeigen an, wie voll eine Boulderwelt gerade ist und wo das Corona-Maximum liegt.
Doch nur diesen aktuellen Stand sehen zu können war mir zu wenig. Ich wollte wissen, wie voll meine Boulderwelt in der Regel zu der Zeit ist, zu der ich mit meinen Freunden dort hingehe. Dafür muss ich jedoch die Daten der Vergangenheit kennen. Also einmal kräftig in die Tasten gehauen und nach ca. vier Stunden stand folgende Version:
Die Basisfunktionalitäten waren vorhanden und das Tool konnte beginnen, Daten zu sammeln, während ich mich darum kümmerte, die Oberfläche schöner zu machen. Das Minimal Viable Product für die erste Version war kurz gesagt:
Als Version 1 ein paar Tage stabil lief, startete ich mit Version 2 und expandierte vor allem:
Dadurch dass ich jetzt die Daten aller Boulderwelt-Standorte abspeicherte, wurde natürlich auch die Datenmenge deutlich größer, die jeden Tag erfasst wurde. Zusätzlich wurde die Datenbank mit jedem Tag immer größer und größer. Bald waren es also zu viele Daten, um sie alle im Graphen darzustellen. (Das sehen Sie auch bereits am Screenshot oben.)
Also wurde es Zeit für Version 3:
Dieses Projekt ist ein sehr einfaches und anschauliches Beispiel für agile Software-Entwicklung:
Nach einigen Wochen des sauberen Dahinschnurrens des Boulderwelt-Traffic-Monitors hatte ich am 23.07. spontan Lust, zusätzlich zu den Daten der Boulderwelten auch noch die lokalen Wetterdaten abzuspeichern. Meine steile These: "Vielleicht kann man über den Wetterbericht ja voraussagen, wie voll es sein wird."
Also: Eingebaut, getestet und hochgeladen. Nachdem der Prozess zwei Tage auch auf dem Live-System stabil lief, vergaß ich den Boulderwelt-Monitor auch wieder ein bisschen - bis zum 31.07.2020. Und da kam dann das ziemlich bescheidene Erwachen. Offenbar hatte die neu angebundene Wetter-Schnittstelle angefangen, irgendwelche Fehler zu werfen:
Und weil ich meinen Code auf diese Fehler leider nicht ausreichend vorbereitet hatte, fiel der gesamte Crawling-Prozess aus:
Eigentlich lernt man diese Lektion als Programmierer schon sehr früh: Man muss seinen Code auf unvorhergesehene Fehler vorbereiten - vor allem wenn man mit dritten Systemen arbeitet, die vielleicht unvorhergesehene Dinge machen. Bei diesem Hobby-Projekt bin ich dahingehend nachlässig geworden ich bekam direkt die Quittung dafür! :)
Also baute ich schnell eine Routine ein, die den Boulderwelt-Traffic-Monitor beim Sammeln seiner Daten deutlich resistenter gegen unerwartete Fehler macht. Außerdem warnt mich das System jetzt automatisch, sobald eben diese Ausnahmefehler auftreten, damit ich für die Zukunft ausschließen kann, dass nochmal mehrere Tage lang keine Daten gesammelt werden und ich es nicht mitbekomme.
Happy End:
Nachdem der Boulderwelt-Traffic-Monitor mittlerweile ein paar Wochen Wetterdaten gesammelt hatte, konnte ich jetzt endlich dazu übergehen, meine steile These zu überprüfen: Bouldern die Leute tatsächlich mehr bei schlechtem Wetter?
Und die Antwort ist ganz klar: Ja!
Man sieht wunderbar, wie wenig am ersten Tag los war. Bei 33°C im Schatten will einfach fast niemand bouldern - verständlich.
Interessant ist, wie stark die folgenden drei Tage sind, die stark verregnet waren.
Sehr interessant ist außerdem der allabendliche Spitzen-Besucherstand, der bis zu einem gewissen Grad auch besserem Wetter standhält. Das sind vermutlich die Feierabend-Sportler, für die Bouldern zu ihrer Abendroutine gehört, die sie nur dann zu durchbrechen scheinen, wenn einfach zu gutes Biergarten-Wetter ist.
Vermutlich könnte man noch deutlich mehr aus diesen Daten lesen. Beispielsweise könnte man sich die Trägheit bestimmter Werte und Korrelationen ansehen, aber für den Moment belasse ich es dabei und freue mir darüber, wie gut das hier alles funktioniert! :)
Der Boulderwelt-Monitor war von 09.06.2020 bis zum 14.04.2023 online. Mittlerweile habe ich ihn in den verdienten Ruhestand geschickt, weshalb Du ihn leider nicht mehr live ausprobieren kannst.
Aber: Er war sehr cool. 👍
Alles beginnt mit einer ersten Nachricht, einem ersten Treffen und gemeinsam entstehen tolle Erfolgsgeschichten.
Ich schreibe dir jetzt einfach mal