Update unserer Projekte im OKLab Leipzig (alias Code for Leipzig Lab) mit Beschreibungen und zukünftigen Umsetzungszielen sowie auf die Angebote der Stadt Leipzig sowie anderen Anbietern
Vorgehen
● Was: Nutzung offener Daten mit Bezug zu Stadt / Region
● Zielgruppe: direkt oder indirekt Bürger, Unterstützung im Alltag
● Daten befreien: Scraper schreiben, um Daten zu parsen
● Harmonisieren: gewonnene Daten in standardisiertes Format
bringen
● Analyse: Muster in Daten erkennen, Anreichern mit Metadaten
● Aufbereitung: Suche, Datenvisualisierung, Geolokalisierung
programmieren
● Redeployment: Anwendung für andere Städte
nutzbar machen
5stardata.info
Ten principles for opening up government information Was sind offene Daten?
Wie alles anfing...
EinUndLeipzig: Architektur
● Daten: Leipzig Statistik / recherchiert von Journalistik-Studenten,
die wir damals beim Aufbau der Seite unterstützt hatten
● Technologie: HTML, Javascript, D3.js
einundleipzig.de
Wie alles anfing...
EinUndLeipzig: Wie unterstützen?
● Daten auf den aktuellen Stand von 2018/19 bringen
●
Aktuellen Mietspiegel verwenden
https://www.leipzig.de/buergerservice-und-verwaltung/aemter-
und-behoerdengaenge/behoerden-und-dienstleistungen/diens
tleistung/mietspiegel-der-stadt-leipzig-5360b46eb0425/
●
Monitorbericht Wohnen
https://www.leipzig.de/bauen-und-wohnen/stadtentwicklung/ra
umbeobachtung-und-monitoring/monitoring-wohnen/
● Veränderungen der letzten Jahre journalistisch nachvollziehen
●
Stand der Gentrifizierung jetzt
● Analyse der Immobilien-Firmen in Leipzig
● Renovierungen / Neubauten über OpenStreetMap Diffs
nachvollziehen
● Kontakt zum Datenjournalismus-Studiengang in Leipzig
aufnehmen
● http://leipzig-stadtfueralle.de / http://leipzigfueralle.blogsport.eu
● Engagement Deutsche Wohnen in Leipzig
https://ratsinfo.leipzig.de/bi/vo020.asp?VOLFDNR=1011413
OKLab Leipzig
Luftqualität Sachsen: Architektur
luftqualitat.readthedocs.io
● Daten: gescrapt vom Umweltamt Sachsen
● Technologie: Django
Wie unterstützen?
● Wieder zum Laufen bringen
● Aktuelle Daten verwenden
● Verbindung zu www.luftdaten.info und www.opensensemap.org
● Code auf https://github.com/CodeforLeipzig/luftqualitaet_sachsen
OKLab Leipzig
Kids LE: Architektur
● Daten: OpenStreetMap extrahiert / selbst recherechiert
● Technologie: Django / GeoJSON
● Daten auf den aktuellen Stand bringen (neu entstandene
Kindergärten und Schulen nachtragen)
● Verknüpfung mit Kiwan (https://www.meinkitaplatz-leipzig.de)
● Idee von https://www.facebook.com/KitaPlatzTauschboerse wieder
aufgreifen
● Kinderärzte erfassen
● https://github.com/CodeforLeipzig/osm4kids war ein geplantes
Nachfolgeprojekt
● Code auf https://github.com/CodeforLeipzig/kidsle
Wie unterstützen?
kidsle.leipzig.codefor.de
OKLab Leipzig
Kids LE: Architektur
● Daten: OpenStreetMap extrahiert / selbst recherechiert
● Technologie: Django / GeoJSON
● Daten auf den aktuellen Stand bringen (neu entstandene
Kindergärten und Schulen nachtragen)
● Verknüpfung mit Kiwan (https://www.meinkitaplatz-leipzig.de)
● Idee von https://www.facebook.com/KitaPlatzTauschboerse wieder
aufgreifen
● Kinderärzte erfassen
● https://github.com/CodeforLeipzig/osm4kids war ein geplantes
Nachfolgeprojekt
● Code auf https://github.com/CodeforLeipzig/kidsle
Wie unterstützen?
kidsle.leipzig.codefor.de
OKLab Leipzig
Stadtratmonitor: Architektur
● Daten werden mit einem in Ruby geschriebenen Scraper (
https://github.com/jrlover/city_council_leipzig_recent_papers)
jeden Tag über www.morph.io über einen CronJob (
https://morph.io/jrlover/city_council_leipzig_recent_papers) vom
Leipzig Ratsinformationssystem (https://ratsinfo.leipzig.de/) als
CSV-Daten gezogen
● Ruby-Rails-Anwendung wird vom morph.io CronJob nach dessen
Beendigung über einen Webhook benachrichtigt
● Ruby-Rails-Anwendung holt die neuen CSV-Daten und importiert
sie eine SQLite Datenbank von der sie wiederum in einen
ElasticSearch-Server importiert und dort indiziert werden
● neben dem Suchformular in der Webanwendung gibt es
außerdem noch die Möglichkeit, Suchen als RSS-Feed zu
abonnieren
stadtratmonitor.leipzig.codefor.de
OKLab Leipzig
Stadtratmonitor: Wie unterstützen
● Scraper ablösen und stattdessen die Daten aus dem nun
verfügbaren Oparl-REST-Endpunkt des RIS-Systems nutzen:
https://ratsinfo.leipzig.de/bi/oparl/1.0/bodies.asp?id=2387
● Karte mit geolokalisierten Papers bauen analog zu
https://www.muenchen-transparent.de
● Beschlussstatus der einzelnen Vorlagen expliziter machen (also
ob beschlossen, geändert beschlossen, oder abgelehnt), analog
zu https://github.com/sascha11110/hackatum-citygraph
(alternativ vielleicht auch in Form eines Kanban-Boards)
● PDF-Dokumente scrapen und durchsuchbar machen (z.B. mit
http://givemetext.okfnlabs.org)
● https://politik-bei-uns.de und https://meine-stadt-transparent.de
als weitere Referenz
● https://github.com/CodeforLeipzig/stadtratmonitor – Code als
auch Issue Tracker
stadtratmonitor.leipzig.codefor.de
OKLab Leipzig
Stadtratmonitor: Wie unterstützen (2)
● Online-fähig machen (aktuell wird auf die Artikel in der Original-
Seite verlinkt, die sind aber nicht mobil-fähig)
● Karte mit Stadtbezirksräten und Ortschaftsräten (Adresse +
nächstes angesetztes Treffen + Protokoll vom letzten Treffen)
● Personen bei Einreichern verlinken
● Harmonisieren der Einreicher-Namen (z.B. SR, Stadtrat,
Stadträtin, Name ausgeschrieben, abgekürzt, usw.), eventuell
kann man dazu das Tool http://openrefine.org nutzen
● Wordle generieren aus häufigen Worten in den Vorlagen
(Zeitraum-basiert)
● Statistische Auswertungen (meiste Antragssteller, usw.) (grafisch)
● Amtsblatt verlinken:
https://www.leipzig.de/buergerservice-und-verwaltung/stadtverwa
ltung/amtsblatt/
● Livestream aus Stadtrat verlinken und taggen:
https://www.l-iz.de/tag/livestream
stadtratmonitor.leipzig.codefor.de
OKLab Leipzig
LVZ Polizeiticker: Architektur
● Java Spring Boot Anwendung im Backend
● von http://www.lvz.de/Leipzig/Polizeiticker/Polizeiticker-Leipzig
werden vom CronJob die Artikel gescrapt und in einen
ElasticSearch Index geladen
● aus dem Text des Artikels werden mittels Named-Entity-
Recognition-(NER)-Bibliothek potenziell geolokalisierbare Namen
extrahiert: https://nlp.stanford.edu/software/CRF-NER.shtml
● gegen https://nominatim.openstreetmap.org/ werden diese
Namen in Geokoordinaten aufgelöst
● Frontend ist in AngularJS 1! (https://angularjs.org) programmiert
und nutzt Leaflet (https://leafletjs.com) als Plugin für die
Kartendarstellung (darüber wird auch die Heatmap unterstützt)
● Frontend kommuniziert über REST-Aufrufe mit dem Backend, um
Suchanfragen, Blättern in den Suchergebnissen darstellen zu
können
lvz-viz.leipzig.codefor.de
OKLab Leipzig
LVZ Polizeiticker: Wie unterstützen?
● AngularJS 1 auf die letzte Version (z.B. 7) aktualisieren oder
gleich ein anderes Frontend-Framework (z.B. Vue.js) benutzen
● Geolokalisierung aus den Texten heraus ist nicht immer richtig,
deswegen sollte es die Möglichkeit, über das UI die Geo-Marker
nachträglich manuell permanent umzusetzen (vielleicht sogar als
Crowd sourcing realisierbar)
● Beidseitig Verlinkung von Text auf Marker und von Marker auf
Text, momentan wird nur Popup angezeigt
● Taggen / Kategorisieren von Artikeln (Verbrechen) durch die
Nutzer ermöglichen
● Accordion-Widget, um Platz in Artikel-Leiste zu sparen:
https://api.jqueryui.com/accordion/#entry-examples
● Code befindet sich auf https://github.com/CodeforLeipzig/lvz-viz
dort gibt es auch nochmal einen Issue Tracker:
https://github.com/CodeforLeipzig/lvz-viz/issues
lvz-viz.leipzig.codefor.de
OKLab Leipzig
Wo ist Markt (Leipzig): Architektur
● HTML, Javascript, Leaflet
● Web-Anwendung nicht von uns in Leipzig entwickelt, wir haben
nur die folgende JSON-Datei bereitgestellt
● https://github.com/CodeforLeipzig/wo-ist-markt.github.io/blob/ma
ster/cities/leipzig.json
editieren (am besten auf einen eigenen Branch) und
anschließend einen Pull-Request gegen das Haupt-Repo stellen
● um Änderungen nicht manuell nachtragen zu müssen, gibt es
jetzt auch einen Javascript-basierten Scraper für die Leipziger
Behörden-Seite:
https://github.com/CodeforLeipzig/wo-ist-markt-scraper die eben
diese JSON-Datei als Ergebnis erzeugt
● Scraper nutzt https://github.com/cheeriojs/cheerio für das
Navigieren im DOM und https://mozilla.github.io/nunjucks/ als
Templating-Engine
wo-ist-markt.de/#leipzig
OKLab Leipzig
Wo ist Markt (Leipzig): Wie unterstützen?
● Kombinieren mit https://farmshops.eu
● Weitere Städte in der Region erfassen
● Scraper-Code:
https://github.com/CodeforLeipzig/wo-ist-markt-scraper
● https://github.com/CodeforLeipzig/wo-ist-markt.github.io die
geforkte Web-Anwendung von
https://github.com/wo-ist-markt/wo-ist-markt.github.io
wo-ist-markt.de/#leipzig
OKLab Leipzig
Amikeco: Architektur
● Entstanden im Rahmen des Digital Refugees Lab 2016:
https://codefor.de/digitalrefugeelabs/
● als Meetup-Clone geplant für Leute die neu in Leipzig sind und
Kontakte zu anderen über Freizeitaktivitäten knüpfen wollen
● HTML, Javascript, Bootstrap-Anwendung (
https://getbootstrap.com) (Web-Komponenten-Framework)
Wie unterstützen?
● Backend-Logik implementieren (Anmelden, Termin anlegen,
Favoriten pflegen, usw.)
● Code auf https://github.com/jrlover/amikeco
jrlover.github.io/amikeco
OKLab Leipzig
Trinkwasser: Architektur
● Daten wurden von MIDEWA bereitgestellt
● Redeployment der Web-Anwendung (HTML, JS) von
https://github.com/opendata-heilbronn/trinkwasser
●
Branding und Texte ausgetauscht
●
Andere Mineralwasser-Quellen (Vergleichswerte)
●
Einpflegen der bereitgestellten CSV-Datensätze
● Leaflet-Karte wurde zusätzlich von uns gebaut
● Gemeinde-Kreise wurden über eine entsprechende Abfrage der
Administrations-Grenzen in https://ww.overpass-turbo.eu als
GeoJSON extrahiert (
https://github.com/CodeforLeipzig/trinkwasser/tree/master/utils/D
rinkingWaterGenerator
) und nachträglich über einen TopologyPreservingSimplifier aus
dem JTS vereinfacht
● Im GeoJSON sind die Trinkwasser-Daten nachgepflegt
trinkwasser.codeforleipzig.de
OKLab Leipzig
Trinkwasser: Wie unterstützen?
● Aktuelle Daten bekommen und nachpflegen
● Daten für Leipzig direkt bekommen und entsprechend dann auch
Mineralwasser aus dem Leipziger Land als Vergleichwerte
nehmen
● Interessante Daten bekommen (z.B. Nitrat-Belastung,
Grundwasserspiegel)
● Trinkwasser-Qualität selber messen (Sensoren dazu sind aber
teuer)
● Inspriation vielleicht:
https://blog-smartcountry.de/eine-lorawan-tonne-fuer-muensters-
aasee/
● Verlegte Wasser-Rohre in Augmented Reality (mit Anzeige der
letzten Wartung / Austauschs)
trinkwasser.codeforleipzig.de
OKLab Leipzig
Gläsernes Klärwerk
Architektur Wie unterstützen?
● Daten wurden von MIDEWA
bereitgestellt
● Mit https://c3js.org erstellt
● Aktuelle Daten bekommen
● Weitere interaktive Diagramme
bauen, z.B. Sankey diagrams:
codeforleipzig.github.io/glaeserne-klaeranlage/
OKLab Leipzig
OpenSenseMap: Architektur
● Von Uni-Münster uns im Rahmen von https://sensebox.de
bereitgestellt
● Die senseBox:home ist eine modulare Umweltmessstation zum
selber bauen (auf Arduino Basis) zur kontinuierlichen
ortsbezogenen (mobilen oder stationären) Messung von
Temperatur, Luftfeuchte, Luftdruck, Beleuchtungsstärke, UV-
Strahlung oder Feinstaubbelastung
● Installations-Beschreibung findet sich hier:
https://sensebox.github.io/books-v2/home/de/index.html?Deutsch
=Deutsch
opensensemap.org
OKLab Leipzig
OpenSenseMap: Wie unterstützen?
● Wir haben im Lab keinen geeigneten Aufstellplatz gefunden
● Inzwischen ist einer der Sensoren kaputt, die Temperatur wird
falsch ausgegeben, an sich ist noch ein weiterer Sensor verbaut,
der auch Temperatur-Daten liefert, Software-mäßig werden
dessen Werte aber bei der Ausgabe von den Daten des kaputten
Sensors überschrieben
● d.h. man könnte die Sensebox entweder durch einen neuen
Sensor (teuer) reparieren oder über Anpassung der Software
teilweise reparieren
opensensemap.org
OKLab Leipzig
Museen Mitteldeutschlands: Architektur
● HTML mit Leaflet-Plugin
● Daten wurden aus einem lokal gehosteten Nominatim Server (via
Docker und OSM Extrakten von http://download.geofabrik.de)
extrahiert (um das Aufruf-Limit zu umgehen)
● Die Mittelpunkte der Shapes wurden selber programmatisch
berechnet
● Die Daten werden als GeoJSON in Leaflet geladen und als Cluster-
Karte dargestellt
damals.in/museums
OKLab Leipzig
Museen Mitteldeutschland: Wie unterstützen?
● Noch mehr Informationen aus https://www.museum-digital.de/
oder auch www.deutsche-digitale-bibliothek.de an die Museen
hinterlegen (z.B. Ausstellungsstücke)
● Museums-Kategorien extrahieren (oder vergeben lassen):
Heimatmuseum, Naturkundemuseum, DDR-Museum, usw.
● Filtern der Marker nach Kategorie
● Filtern nach Öffnungszeiten
● Code liegt auf
https://github.com/CodeforLeipzig/codingdavinciost2018/tree/mas
ter/de.oklab.leipzig.cdv.glams
damals.in/museums
OKLab Leipzig
damals: Architektur
● HTML mit Leaflet-Plugin
● Die Bilder wurden bereitgestellt von
https://codingdavinci.de/daten/#stadtgeschichtliches_leipzig und
https://codingdavinci.de/daten/#stadtarchiv_leipzig im Rahmen
des https://codingdavinci.de/events/ost/ Hackathons
● Außerdem wurden CSV / XLSX Dateien mit den dazugehörigen
Metadaten bereitgestellt
● Fotos wurden inzwischen auch auf Wiki commons hochgeladen
und werden von dort auch referenziert
● Neben der Hauptanwendung (Karte mit geolokalisierten Fotos)
gibt es noch ein Spiel (http://damals.in/leipzig/spiel/) bei dem
man den Aufnahmeort eines Fotos möglichst nah erraten soll
sowie ein Quiz (http://damals.in/leipzig/quiz/) bezogen auf die
Fotos (bzw. ihrer dargestellten Orte / Elemente)
damals.in/leipzig
OKLab Leipzig
damals: Wie unterstützen?
● Mehr freie Fotos auch aus unterschiedlichen Epochen
geolokalisieren und referenzieren
● mehr Quizfragen (statt nur einer, wie aktuell)
● Suchen in Metadaten der Fotos filtert die entsprechenden Marker
auf der Karte
● Motive, die in mehreren Fotos vorkommen taggen und suchbar
machen (z.B. Neues Rathaus am Horizont)
● Weitere Ideen gibt es in der Präsentation
https://github.com/CodeforLeipzig/codingdavinciost2018/blob/ma
ster/docs/presentation/damals.pdf
ab Folie 17 sowie Links zu verwandten Projekten
https://altes-leipzig.net und http://altes-leipzig.de fehlen da noch
in der Aufstellung
● Collage alt und neu wie z.B. in Heilbronn gemacht:
http://heilbronn.apps-1and1.net/marktplatz
damals.in/leipzig
OKLab Leipzig
Leipzig openData: Architektur
● HTML mit Leaflet-Plugin und GeoJSON / JSON-Dateien
● Teil eines Tutorials, wie man nach und nach immer komplexere
Karten-Anwendungen mit Leaflet erstellt, die Dateien hierzu
können hier heruntergeladen werden:
https://github.com/CodeforLeipzig/opendata-leipzig-playground/re
leases
● Jede der enthaltenen HTML-Dateien lässt sich einzeln im Browser
öffnen, sie sind aber dazu gedacht im einfachen Text-Editor
geöffnet und bearbeitet zu werden, sie enthalten Kommentare
und austauschbare Teile, mit denen man den Umgang mit Leaflet
lernen kann (nach Speichern der Änderungen sieht man deren
Auswirkungen direkt im Browser)
● nutzt die Shape-Daten und die statistischen Daten von
http://opendata.leipzig.de
codeforleipzig.github.io/opendata-leipzig-playground
OKLab Leipzig
Leipzig openData: Wie unterstützen?
● Weitere Redeployments für andere Städte wie bereits für
Wuppertal (
https://github.com/joergreichert/GeohackDesGutenLebens /
https://joergreichert.github.io/GeohackDesGutenLebens/) und
Moers (https://github.com/joergreichert/hackday-moers-2019 /
https://joergreichert.github.io/hackday-moers-2019/) geschehen
● Legende generisch aus der Werte-Spanne der errechnen lassen
● Javascript-Code in wiederverwendbare Dateien extrahieren
● Auswahlbox für dynamische Attributauswahl, so dass nicht nur
Einwohnerdaten sondern andere Daten anzeigbar sind
● Andere Visualisierungen (z.B. Kuchendiagramm) je nach
Attributauswahl
● Radarchart aus Moers-Redeployment mit Auswahl von höchstens
3 Attributen auf einmal und mit Karte in Beziehung setzen
● https://github.com/CodeforLeipzig/opendata-leipzig-playground/tr
ee/master/docs
codeforleipzig.github.io/opendata-leipzig-playground
● Bot (aktuell in Form einer Webapp), der in natürlicher Sprache
formulierte Fragen zum Klima-Wandel beantworten kann
● Neben Wissensfragen sollen auch statistische Fragestellungen
mit Orts- und Zeitbezug beantwortet werden können
– Beispiel: Wie viel CO2 hat Deutschland im Jahr 2017
produziert?
Klimabot - Ziele
OKLab Leipzig
OKLab Leipzig
Fancy LVB Telegram Bot: Architektur
● NodeJS Anwendung, die das Framework
https://github.com/yagop/node-telegram-bot-api nutzt, um einen
ChatBot für den Telegram-Messenger https://telegram.org unter
einem freiwählbaren Namen (der auf Bot endet, wir haben uns für
fancyLVBot entschieden) zu registrieren, der dann als Kontakt von
jedem hinzugefügt werden kann
● Nutzer-Eingaben werden über Reguläre Ausdrücke gematcht und
in entsprechende Kommandos umgesetzt
● Wir haben den Zugang zu den aktuellen MDV-Daten in GTFS-
Format (https://gtfs.org) bekommen, die wir auf
gtfs.leipzig.codefor.de in einer http://www.opentripplanner.org
Anwendung hosten und somit auch als REST-API zur Verfügung
haben
● des Weiteren nutzen wir https://www.npmjs.com/package/lvb für
die Live-Abfahrten-Abfrage
github.com/CodeforLeipzig/fancy_LVB_Telegram_Bot
OKLab Leipzig
Fancy LVB Telegram Bot: Wie unterstützen?
● Haltestellen zusammenfassen, die geografisch sehr nah
beieinander liegen und logisch als ein Haltestellenpunkt
betrachtet werden können
● Unscharfe Suche (Fuzzy Search), um auch Haltestelle zu finden,
wenn man sich verschrieben hat, bzw. nicht genauen Wortlaut
der Haltestelle trifft
● ChatBot aus anderen Chats heraus nutzen können
● EasyGo API nutzen, da GTFS API nur statische Daten liefert und
das lvb npm Package noch auf eine veraltete API geht, die nicht
alle neuen Haltestellen enthält (deren Abfahrten werden aktuell
noch aus den statischen GTFS Daten aufgefüllt, dort bekommt
man dann aber keine aktuellen Verspätungen)
● Code: https://github.com/eisc/fancy_LVB_Telegram_Bot
● Issues: https://github.com/eisc/fancy_LVB_Telegram_Bot/issues
github.com/CodeforLeipzig/fancy_LVB_Telegram_Bot
OKLab Leipzig
Schulinternet: Architektur
● stellt Internetverbindungen von Schulen in Sachsen auf einer
Karte dar und soll damit den weiteren Breitbandausbau vor allem
im Bildungssektor anregen
● Nutzt https://cheerio.js.org zum Scrapen der Web-Seiten,
https://www.npmjs.com/package/fast-csv zum Parsen der CSV-
Dateien und https://github.com/hiddentao/fast-levenshtein für
das Abgleichen der Schulnamen aus den unterschiedlichen
Quellen nach Ähnlichkeit und schließlich https://leafletjs.com zum
Visualisieren der zuvor generierten GeoJSON-Datei auf einer Karte
Wie unterstützen?
● Kombinieren mit https://jedeschule.de (stellt Informationen über
rund 30.000 allgemeinbildende Schulen in Deutschland
maschinenlesbar bereit)
● Code: https://gitlab.com/gerbsen/internet-an-sachsens-schulen
schulinternet.sachsen.codefor.de
OKLab Leipzig
Gentrifizierung: Umsetzung
● Alle Polygone, die mit „building“ getaggt sind wurden aus alten
OpenStreetMap-Ständen, verfügbar auf
http://download.geofabrik.de/europe/germany/sachsen.html unter
raw directory index) als GeoJSON Dateien ausgelesen
(geografisch eingeschränkt auf die BoundingBox von Leipzig)
● Über das obere rechte Menü kann man nun die Gebäude-
Polygone der verschiedenen Jahre ein- und ausblenden, sowie die
Luftbildaufnahme von 2014 oder 2018 anzeigen, um so sehen zu
können, wo Dinge neu gebaut (bzw. in OSM eingepflegt) wurden
Wie unterstützen?
● Mit http://www.baustelle-leipzig.de verschneiden; mit offiziellen
Bebauungsplänen abgleichen; recherchieren, welche
Immobilienfirma verantwortlich war; Mietpreise;
● Code: https://github.com/CodeforLeipzig/Gentrification
bebauung.codeforleipzig.de
OKLab Leipzig
Wahldaten: Umsetzung
● da keine Shapefile mit den sächsischen Wahlkreisen gefunden
werden konnte, sondern nur eine Aufstellung, welche PLZs zu
welchen Wahlkreisen gehören, mussten die Shapes der PLZ-
Gebiete programmatisch zu den Wahlkreis-Shapes
zusammengemergt werden
● neben den PLZ- und Wahlkreise, werden auch die
Gemeindegrenzen angezeigt
Wie unterstützen?
● für die Großstädte noch die Stadtteile mit als Shapes hinzufügen
● die Wahlergebnisse beim Klick auf die einzelnen Gebiete als D3.js
Grafik (Säulendiagramm, Tortendiagramm, Veränderungen)
anzeigen lassen
● Code: https://github.com/CodeforLeipzig/wahldaten
wahldaten.codeforleipzig.de
OKLab Leipzig
Klimabot: Umsetzung
● Backend: Python, Flask, https://github.com/snipsco/snips-nlu als
Machine Learning Library zum automatischen Matchen von
eingegebenen Fragen zum Klimawandel auf vorgefertigte Frage-
Antworte-Paarungen, Python-Wikipedia-Library für die Bedienung
von Was-ist-Fragen
● Frontend: React
Wie unterstützen?
● Fragen-Antworten-Katalog erweitern
● Bot mit Beispiel-Eingaben trainieren
● Code: https://gitlab.com/gerbsen/climatebot und
https://gitlab.com/gerbsen/climatebot-ui
● OKFN Slack-Channel: #climatebot
app.klimabot.de
OKLab Leipzig
DresDenRallye
● entstanden als Prototyp auf dem Open Data Camp Hackathon in
Dresden am 9. und 10.11.2019
● über Gamification (Nudging, Serious Game) die verschiedenen
Mobilitätsangebote der Stadt bekannt machen und die Nutzer
dazu bringen, von ihrem gewohnten Mobilitätsverhalten
abzuweichen und so sich potenziell umweltfreundlicher und
abwechslungsreicher fortzubewegen
● Nutzt die Daten der Verkehrsbetriebe als auch von Teilauto und
Nextbike, Open Routing Service und Turf.js als Technologien
Wie unterstützen?
● Mobile-fähig machen, bessere Performance durch Backend,
Routen-Editor, kreative Challenges, Team-Player-Modus
● Code: https://github.com/Geo3eck/dresden-rallye-web
geo3eck.github.io/dresden-rallye-web/
OKLab Leipzig
Klimawatch
● Erreicht man die Klimaschutzzielen zur CO2-Reduktion in Leipzig?
● oder muss Druck auf Politik und Gesellschaft ausgeübt werden?
● Ursprünglich von Code for Münster initiiert, inzwischen tragen
andere OKLabs die Daten ihrer Stadt hier ein
● in Leipzig entwickeln wir jeweils eine Backend- und eine Frontend-
Anwendung, um besser weitere Datenquellen anzubinden und
interaktivere Visualisierungen umsetzen zu können
● Nutzt die Daten aus dem ESKP der Stadt Leipzig sowie des
Statistikamts, Vue.js im Frontend, Spring Boot im Backend
Wie unterstützen?
● Daten im Backend als LinkedOpenData annotieren
● Interessante Visualierungen sich ausdenken, z.B. wie hier
● Code: https://github.com/CodeforLeipzig/klimawatch-leipzig
und https://github.com/CodeforLeipzig/klimawatch-leipzig-vue
klimawatch.de
OKLab Leipzig
Majorelle Mystery
● Mischung aus Point-and-Click-Adventure und Room-Escape-Spiel,
entstanden im Coding da Vinci Hackathon Saar-Lor-Lux 2020
● Nutzt die aktuelle und historischen Fotos aus der Jugendstil-Villa
Majorelle in Nancy, Frankreich
● Technologien: Godot Engine mit Escoria, läuft (außer im Web) auf
allen Plattformen (Windows, Linux, MacOS, iOS, Android)
● Übrigens das Point-and-Click-Adventure Casebook 1899 - The
Leipzig Murders ist gerade von Gregor Müller in Entwicklung und
spielt in Leipzig um 1900
Wie unterstützen?
● auch Leipzig hat noch viele Gebäude aus der Gründerzeit, könnte
ein solches Spiel wäre vielleicht auch was für eine Leipziger Villa
● Eventuell reicht auch eine Umsetzung als Graphic Novel
majmys.art
majmys.art
majmys.art
OKLab Leipzig
Klimadashboard
● versucht den Fortschritt der Energie-, Verkehrs- und
Landwirtschaftswende in Sachsen zu dokumentieren
● Technologien: Django, Angular 2
Wie unterstützen?
● Weitere interessante Auswertungen / Visualisierungen hinzufügen
● Mobile freundlicher machen (aktuell Seitenleiste auf Handy nicht
optimal dargestellt)
klimadashboard.danielgerber.eu
OKLab Leipzig
Baumfilter
● Spin-Off (bzw. Vorläufer) von Leipzig giesst
● generelle Baum-Informationen anzeigen
● Bäume nach ihren Eigenschaften filtern können
● Technologien: Leaflet, jQuery, Daten: Baumkataster Leipzig
Wie unterstützen?
● Mobile freundlicher machen (aktuell nicht wirklich auf Handy
bedienbar)
● Integration von Wikidata-Informationen (wie teilweise schon bei
Leipzig giesst geschehen)
● Gruppieren und Abfrage nach (Ober-)Gattungen, aktuell können
z.B. nicht alle Linden abgefragt, weil die Info, dass z.B. die Stadt-
Linde auch eine Linde ist, nicht hinterlegt ist
baumstatistik.codeforleipzig.de
OKLab Leipzig
Leipzig giesst
● Kollaboratives Gießen der Straßen-Bäume in der Stadtgesellschaft
● Redeployment von GiessDenKiez aus Berlin
● Daten: Baumkataster Leipzig, Radolan-Daten vom DWD
● Technologien: React, Mapbox, Vercel, Netlify. Python, expo.dev
Wie unterstützen?
● Gamification-Ideen beitragen
● Organisieren von Gießevents
● Bereitstellen von Wasserquellen
● Mitgießen
app.leipziggiesst.de
OKLab Leipzig
Wo ist Testzentrum?
● Informationen über die offiziellen Corona-Testzentren
● Filtern nach Leistungsumfang und Öffnungszeiten
● Abwandlung von woistmarkt.de
● Daten: Corona-Testzentren aus dem OpenDataPortal Leipzig
● Technologien: Plain Javascript, Bootstrap, Leaflet
Wie unterstützen?
● Daten nachpflegen (sofern das ab 2023 überhaupt sinnvoll ist)
wo-ist-testzentrum.de
OKLab Leipzig
Kieznotiz
● Informationen über die Akteure und Veranstaltungen im Leipziger
Osten (speziell Neustadt-Neuschönefeld und Volkmarsdorf)
● Weitere Infos: Uhrzeit, Wetter
● Daten: JSON API von Leipziger-Ecken.de
● Technologien: Grafana, Leaflet
Wie unterstützen?
● Anzeige der Live-ÖPNV-Abfahrtzeiten
● Weitere Infos: Luftqualität, Rad- und KFZ-Zählstellen-Daten
● Umsetzungen für weitere Stadtteile Leipzigs
kieznotiz.codeforleipzig.de
OKLab Leipzig
Leipzig pumpt
● Informationen über die aktuellen, aber auch abgebaute und
kaputte Handschwengelpumpen in Leipzig
● Daten: Wikipedia, OpenstreetMap, eigene Datenerfassung
● Technologien: Leaflet
Wie unterstützen?
● Kontrolle der Standorte, von denen der aktuellen Zustand nicht
klar ist
● Splash-Screen
● Anbindung Backend, um die Kontrollgänge erfassen zu können
● Weitere Fotos beisteuern
pumpenkarte.codeforleipzig.de
OKLab Leipzig
Leipzig Maps
● Visualisieren der Daten des Statistikamts pro Stadtteil
● Anzeige von POIs (zum Teil aus Statistikamt-Daten, zum Teil aus
OpenStreetMap, zum Teil selbst gescrapt von Stadt-Webseiten)
● Daten: Statistikamt / OpenDataPortal
● Technologien: React
Wie unterstützen?
● Anbinden weitere Quellen
● Anziehen der offiziellen Gesamtleipzig-Zahlen (statt aktuell
Aggregation der Stadtteil-Zahlen (fehlerhaft bei Quotienten))
● Weiteres Drilldown (Gesamt auf Stadtteil, Jahres- auf Quartal- auf
Monatszahlen)
● Sinnvolle Bezugsgrößen (d.h. z.B. Delta Ärzte zu Delta
Gesamtbevölkerung oder Delta Bevölkerung älter 60 Jahre)
leipzigmaps.codeforleipzig.de
OKLab Leipzig
Wo ist Weihnachtsmarkt?
● Entdecken von Weihnachtsmärkten nach Angeboten (z.B.
viktorianischer Weihnachtsmarkt), Aktionsformaten,
Öffnungszeiten und Erreichbarkeit in Leipzig und nähere
Umgebung
● Daten: Statistikamt / OpenDataPortal, LeipzigLeben-Blog, eigene
Erfassung
● Technologien: Next.js
Wie unterstützen?
● mehr Fotos
● Preisvergleich
● Volltextsuche
weihnachtsmaerkte.codeforleipzig.de
OKLab Leipzig
Tools: Overpass Turbo / API / OSM TagInfo
Overpass API by Example
http://overpass-api.de/
http://overpass-turbo.eu/
https://taginfo.openstreetmap.org/
OKLab Leipzig
Wie sich beteiligen
● Unsere Projekte befinden sich auf
https://github.com/CodeforLeipzig/
● In jedem Projekt sollte eine Beschreibung angezeigt werden, was
es macht und wie man es sich aufsetzt / einrichtet
● Was ist GitHub: https://t3n.de/news/eigentlich-github-472886/
● Git Grundlagen: https://git-scm.com/book/de/v2
● Docker Grundlagen:
https://jaxenter.de/einfuehrung-docker-tutorial-container-61528
● Am besten ihr forkt euch das Projekt, das euch interessiert, in
euren eigenen GitHub-Account, arbeitet dort an Features auf
einem Branch und stellt dann einen Pull Request gegen das
ursprüngliche Projekt
● https://help.github.com/en/articles/fork-a-repo
● https://help.github.com/en/articles/creating-a-pull-request
● Um sich beteiligen, muss man nicht zwingend programmieren
können, neue Ideen, Test-Unterstützung, UI-Mockups helfen auch
Angebote der Stadt Leipzig
Open-Data-Portal der Stadt Leipzig
opendata.leipzig.de
Angebote der Stadt Leipzig
leipzig.de/wirtschaft-und-wissenschaft/digitale-stadt/aktuelle-projekte/urbane-daten
plattform-und-sensorik
digitalcampus.leipzig.de/referat-digitale-stadt