COM.lounge GmbH

Wer schon immer mal wissen wollte, wo genau sich denn welche Baustellen in Aachen befinden, der konnte bislang nur die lange Liste der Stadt Aachen durchforsten. Doch viel besser wäre es doch sicher, das mal auf einer Karte anzuschauen.

Der Import der Baustellen

Das geht jetzt auch, denn wir haben uns die Liste mal genommen und mit einer Kartenanwendung versehen, die unter baustellen.offenes-aachen.de zu finden ist. Grundlage ist die oben genannte Liste, die wir leider bislang noch per Hand abtippen müssen. Das soll sich zwar irgendwann einmal ändern, wenn die neue Datenbank-Anwendung für diese Baustellen eingeführt wird, die wohl auch einen Export haben soll. Da uns das aber irgendwie zu lange dauert, haben wir das einfach schonmal selbst umgesetzt.

Die Anwendung selbst bietet im Moment nur die Basisfunktionen, man kann aber zumindest zwischen Baustellen unterscheiden, die nur auf Gehwegen stattfinden (wie Glasfaser-Ausbau) oder aber auch auf der Fahrbahn. In Kürze wird es zudem noch einen Export der Daten geben und wir arbeiten an einem Editor, um die Baustellen noch genauer einzeichnen zu können (soweit dies aus der Baustellen-Liste ersichtlich ist). Und auch eine mobile Version ist in Arbeit (vielleicht machen wir auch eine App draus).

Nicht alle Baustellen sind im Moment übrigens richtig platziert. Dies werden wir mit dem Editor dann beheben. Die Automatisierung hat bei den vorhandenen Daten leider ihre Grenzen.

Wer den Source-Code einsehen will, der kann auch dies tun, indem er einfach diesem Link folgt. Dort ist auch eine CSV-Datei der aktuellen Daten mit Stand 22.4.2013 zu finden.

Und mit diesem Blogpost ist dann auch unser neues Blog eröffnet, dass als Fokus hoffentlich auch viel Technik haben wird 🙂 (und alle weiteren Einstellung, Plugins usw. kommen dann nach der re:publica dran).

Website: baustellen.offenes-aachen.de

 

Update: Inzwischen hat die Stadt Aachen eine offizielle Schnittstelle implementiert und wir haben die Anwendung aktualisiert, so dass wir diese Schnittstelle nutzen. Kein Abtippen mehr und damit eine bessere Datenqualität sind die Folge. Außerdem ein gutes Beispiel, was man machen kann, wenn öffentliche Institutionen Ihre Daten offenlegen.

 

 

 

Am letzten Wochenende war es wieder soweit: Der Open Data Hackday Niederrhein in Moers fand jetzt schon zum 2. Mal statt. Ich selbst konnte leider nur am Sonntag vor Ort sein, habe aber gehört, dass auch der Samstag super gewesen sein soll. Und das trotz meiner Abwesenheit. 

Das Drumherum war dank Claus Arndt von der Stadt Moers und der Bertelsmann-Stiftung natürlich wie immer perfekt (vielleicht bis auf das WLAN, das leider für Livestreaming dann nicht so geeignet war). Anwesend waren über 70 Personen und die jüngsten Teilnehmer waren gerade mal 11 Jahre alt (siehe deren Präsentation weiter unten). 

Traditionell begann der Samstag mit Vorträgen, auf die ich aber dank Abwesenheit meinerseits schlecht eingehen kann. Ich kann allerdings dafür über die Ergebnisse berichten, die am Sonntag zum Besten gegeben wurden.

Die Rocket Girls beim Open Data Hackday Niederrhein

Rocket Girls

Es begann mit den Rocket Girls, einem Workshop von 2 mal 4 Stunden, der von Patricia Ennenbach und Marie-Louise Timcke durchgeführt wurde. Der Workshop richtete sich hauptsächlich an Frauen und Schülerinnen. Das Ziel war eine Einführung in die Programmierung und Datenvisualisierung auf Basis von offenen Daten.

Dazu gab es zunächst am Freitagabend einen Workshop, in dem Patricia erklärte, was offene Daten sind und erste Schritte auf der Command-Line vermittelte. Danach wurde mit Hilfe von Python und Jupyter Notebook gezeigt, wie man Daten verarbeitet und visualisiert. Zum Schluß wurde noch eine Anwendung mit flask gebaut.

Am Samstag übernahm dann Marie-Louise und hat die Themen Programmierung und Datenvisualisierung mit Hilfe der Sprache R aufgezeigt. 

Die Folien findet man hier (musste ich allerdings kopieren, damit das Einbinden funktioniert):

Klicken Sie auf den unteren Button, um den Inhalt von docs.google.com zu laden.

Inhalt laden

Bußgeldanalyse von Julius und Mats

Dass man nicht wirklich alt sein muss, um mit Open Data zu beginnen, zeigen Julius und Mats (beide 11 Jahre alt). Sie haben sich die Bußgelddaten der Stadt Moers vorgenommen und visualisiert. Dabei haben sie einige interessante Erkenntnisse gewonnen. 

Und gut vortragen können sie auch schon! Hut ab! 

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

VRR-Qualitätsanalyse

Als nächstes waren zwei „alte“ Hasen der Open Data-Szene dran. Elmar Burke und David Krystof haben sich den Qualitätsbericht des VRR vorgenommen und visualisiert. 

Der Haken an der Sache: Bislang gibt es diesen nur als PDF. Das Gute am Hackday: Jemand vom VRR war vor Ort und eventuell bessert sich das. 

Hier aber die Präsentation: 

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Datenwaben für alle!

Ein weiterer alter Hase ist Thomas Tursics, der ja schon so einiges im Bereich Open Data gemacht hat. Er hat beim Hackday Niederrhein an seinem Datenwaben-Projekt gearbeitet. 

Er nimmt dabei die Datensätze eines Open Data Portals einer Stadt und stellt diese als Waben mit einem interessanten Wert da. Das sieht für Wien z.B. so aus:

Datenwaben für Wien

Datenwaben für Wien

Beim Hackday wurde eine Seite für Moers bearbeitet, aber auch für Aachen gibt es jetzt wohl schon Infrastruktur. Schaue ich mir auf jeden Fall demnächst mal an. 

Hier stellt er es aber noch einmal selbst vor: 

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Der Hausaufgabenplaner

Lennart war letztes Jahr schon auf dem Open Data Hackday und hat diesen zum Anlass genommen, Programmieren zu lernen. 

Sein Ziel: Seinen Schulalltag mit einer App besser planen zu können. Dies hat er auch erreicht und inzwischen ist es nicht nur eine App, sondern auch ein Webservice, damit man auch Daten von außen einspeisen kann.

Auf dem Hackday Niederrhein hat er zudem noch zwei Mitstreiter gefunden, die ihr Projekt im folgenden Video vorstellen:

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

InstallYourSport

Bei der letzten Präsentation ging es um Sport und die Frage, wie man Trendsportarten populärer machen kann. Genannt wurden u.a. BMX oder Cheerleading (oder Lacrosse aus dem Publikum). 

Die App soll mit Hilfe von Videos, News und Locations Lust an diesen Sportarten wecken und zudem helfen, diese in den Schulalltag einzubauen. Dazu wurden u.a. Open Data-Quellen genutzt (z.B. Sportstätten), die sogar live während des Hackdays von Claus Arndt zur Verfügung gestellt wurden. 

Hier die Präsentation der beiden:

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Geolocations für das Ratsinfo Aachen und Umgebung

Ich selbst habe leider nicht so viel geschafft, habe aber immerhin ein Python-Script geschrieben, welches die Geodaten unserer Ratsinformations-Datenbank aktualisiert.

Dazu muss man wissen, dass wir mit Hilfe unseres ALLRIS-Parsers die Geokoordinaten einer Vorlage grob anhand der Straßennamen ermitteln. Dann liest das Projekt unserac.de dies ein und dort sitzt dann noch eine Redaktion, die diese Daten überprüft und ggf. korrigiert. 

Und genau diese Daten fließen dann jetzt auch zurück in unsere Datenbank.

Weiterhin habe ich begonnen, die Schnittstelle unserer Ratsinfo-Datenbank (die ja immerhin Daten aus Aachen, Alsdorf, Würselen, Herzogenrath, Eschweiler und der Städteregion Aachen umfasst) einmal zu dokumentieren. Auf diese Art können diese Daten ja vielleicht in Zukunft noch von anderen Projekten genutzt werden.

Danke für einen gelungenen Open Data Hackday Niederrhein!

Zum Schluss möchte ich mich noch einmal bei allen Beteiligten bedanken. Es war wieder super, Stimmung war toll und gute Ergebnisse gab es, wie ich fand, auch!

Wenn ihr im übrigen noch Links zu euren Projekten habt (Code, Homepage), dann hinterlasst sie doch einfach in den Kommentaren, dann schreibe ich die noch rein. 

Hoffentlich also bis zum nächsten Jahr!

März und April scheinen die Monate zu sein, wo sich die Events nur so knubbeln. So gab es Ende März das Barcamp Ruhr, dann letztes Wochenende das PythonCamp und nächstes Wochenende geht es direkt weiter! Alles anstrengend, aber auch alles gut und vor allem eine Möglichkeit, neue und alte Bekannte zu treffen!

Hier mal meine Reiseliste, vielleicht ist ja für euch auch noch was dabei. Twittern dazu werde ich auf unserem Twitter-Account und die Events dann hier auf dem Blog zusammenfassen.

Aber so geht es los:

9./10. April: Hackday Moers (#oddmo16)

Nächstes Wochenende findet der 2. Open Data Hackday Niederrhein in Moers statt. Organisiert wird es von der Stadt Moers in Zusammenarbeit mit der Bertelsmann Stiftung. Ich war auch letztes Jahr schon dort und kann nur sagen, dass es sich auf jeden Fall lohnt!

Gerade Moers ist ja dank Claus Arndt Vorreiter in Sachen Open Data. Insofern also der beste Ort in NRW für solch einen Event. Es sollten viele aus der Open Data-Community dort anzutreffen sein.

Wenn ihr also dazugehören wollt: Kommt vorbei! Dabei muss man nicht notwendigerweise programmieren können, auch die Bereiche Visualisierung, Kommunikation, Design, Konzepte oder auch nur Ideen sind bei Open Data wichtig.

Noch sind (soweit ich weiß) Plätze frei und wer kommen will, mag sich in das Organisationspad eintragen. Auch Ideen können dort dokumentiert werden, vielleicht findet sich ja schon im Voraus ein Mitstreiter.

(Ich persönlich bin leider nur Sonntag da)

Hier noch ein paar Bilder vom letzten Hackday:

13. April 2016: NetzpolitikCamp in Dortmund (#netzpolitikcamp)

Weiter geht es direkt am Mittwoch drauf mit dem NetzpolitikCamp im Dortmunder U. Organisiert wird es wieder durch cortex digital im Auftrag der Staatskanzlei NRW.

Ein Thema gibt es dieses Mal auch, nämlich Freifunk. Wenn ihr also etwas zum Thema Freifunk oder generell Netzpolitik diskutieren wollt, dann seid ihr bei diesem Barcamp richtig (bei Barcamps ist man natürlich generell richtig, egal welches Thema).

Tickets gibt es scheinbar auch noch, also schnell anmelden!

2.-4. Mai 2016: re:publica in Berlin (#rpTEN)

Zur re:publica muss man sicherlich nicht viel sagen. Begann es als Blogger-Treffen, so ist sie inzwischen zu DER Konferenz rund um die Themen Internet und Gesellschaft geworden. Immerhin feiert sie dieses Jahr auch 10-jähriges. Der Ort ist wie die letzten Jahre schon die STATION Berlin. Sogar Tickets gibt es noch.

Ich werde die ganze Zeit dort sein und hoffentlich viele von euch treffen!

Und das waren auch meine nächsten Reisen. Es gibt wahrscheinlich noch viel mehr, aber irgendwann muss man ja auch mal daheim sein 😉

Wer sich treffen will, darf sich gerne melden (z.B. per Facebook oder Twitter).

In meinem ersten Tutorial auf diesem Blog will ich darstellen, wie man Gemeindegrenzen auf einer Auf Open Street Map basierenden Karte darstellen kann. Die Gemeindegrenzen (in diesem Fall NRW) selbst nehme ich dabei nicht direkt von OSM, sondern aus einem Shapefile, das ich in diesem Fall von der Seite zur Landtagswahl des Innenministeriums herunterlade. Als Grundlage für die OSM-Darstellung nehme ich die JavaScript-Library leaflet.js.

Shapefile in GeoJSON überführen

Die Hauptaufgabe ist nun, das Shapefile mit den Gemeindegrenzen in das GeoJSON-Format zu überführen, denn dies ist das Format, das leaflet erwartet. Lädt man die Geometrie der Gemeinden (direkter Downloadlink) herunter und entpackt das ZIP-File, so erhält man folgende laut zu einem Shapefile zugehörigen Dateien:

DVG1_Gemeinden_utm.dbf
DVG1_Gemeinden_utm.prj
DVG1_Gemeinden_utm.shp
DVG1_Gemeinden_utm.shx

Wichtig ist dabei im Prinzip nur die Datei mit Endung .shp, da diese die eigentlichen Geometrien enthält.

Um diese Datei in GeoJSON umzuwandeln gibt es zum Glück ein Tool, dass sich ogr2ogr nennt und im GDAL-Paket zu finden ist. Unter OSX kann man dies mit macports wie folgt installieren:

sudo port install gdal +geos

Bevor man die Konvertierung startet, muss man zwei Dinge beachten. Zunächst einmal die Art der Projektion. So gibt es verschiedene Verfahren, die Erdkugel auf eine rechteckige Karte zu projizieren. Das Shapefile benutzt UTM (wie im Dateinamen zu erkennen),  leaflet bzw. OSM mag aber lieber EPSG:3857. Hier muss man also entweder umrechnen oder in leaflet die Projektion umstellen, was mit dem Plugin Proj4Leaflet geht. Ich werde hier aber die Daten schon vorher auf die Ziel-Projektion umrechnen.

Das zweite Problem ist die Datenmenge. Die Definition der Gemeindegrenzen ist nämlich sehr genau, was bedeutet, das die Polygone sehr viele Punkte beinhalten. Dies bedeutet aber, dass die Karte eher behäbig daherkommt. Da es bei der Darstellung aber eher auf die Flächen ankommt und man sowieso nicht bis auf den letzten Stein herunter zoomen kann, können und sollten diese Polygone vereinfacht werden.

Beide Probleme lassen sich glücklicherweise direkt mit ogr2ogr lösen und der zugehörige Aufruf sieht wie folgt aus:

ogr2ogr -f geojson -simplify 20 -t_srs EPSG:4326 -a_srs EPSG:4326 gemeinden.json DVG1_Gemeinden_utm.shp

Die einzelnen Argumente bedeuten dabei folgendes:

Eine Besonderheit von ogr2ogr ist dabei, dass zunächst die Zieldatei angegeben wird und dann erst die Quelldatei. Also aufpassen!

Man beachte auch die Projektion, denn entgegen meiner vorherigen Behauptung mit EPSG:3857 arbeitet leaflet dann wohl doch lieber mit EPSG:4326 (wenn ich das richtig verstehe ist letztere der Koordinatensatz auf einer Kugel, während 3857 die projizierte Version ist. Ob leaflet das dann automatisch umrechnet, ist mir nicht so ganz klar, mit 4326 funktioniert es aber auf jeden Fall).

Hat man nun die Datei, muss man sie nur noch anzeigen. Dazu initialisiert man zunächst leaflet (und jquery gleich mit). Laden wir zunächst die notwendigen Dateien vom CDN:

    <link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.5/leaflet.css" />
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>
    <script src="http://cdn.leafletjs.com/leaflet-0.5/leaflet.js"></script>

Dann noch ein bisschen CSS für eine Fullscreen-Map:

<style>
     html, body, #map {
         height: 100%;
     }
</style>

Die Karte selbst ist nur ein DIV:

<div id="map"></div>

Dann brauchen wir noch Code zum Initialisieren der Karte grob auf NRW (ausserdem benötigt man noch einen API-Key von cloudmade.com, wobei man zum Experimentieren aber alternativ auf die Tiles von OSM nutzen kann. Die Nutzung ist dort allerdings eingeschränkt):

    <script>
        $(document).ready(function() {
            var map = L.map('map').setView([51.463, 7.18], 10);
            L.tileLayer('http://{s}.tile.cloudmade.com/API-KEY/{z}/{x}/{y}.png', {
                attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery &copy; <a href="http://cloudmade.com">CloudMade</a>',
                    maxZoom: 18
            }).addTo(map);
    </script>

Nun müssen wir nur noch das GeoJSON-Objekt laden und anzeigen. Dies geschieht per getJSON-Aufruf:

$.getJSON("/gemeinden/gemeinden.json", function(data) {
    L.geoJson(data, {
        style: function(feature) {
            switch (feature.properties.KN) {
                default:
                    return {
                        fillColor: '#00'+(0x1000000+(Math.random())*0xffffff).toString(16).substr(1,2)+"00",
                        fillOpacity: 0.5,
                        weight: 2,
                        color: '#111',
                        opacity: 0.7,
                        dashArray: '4'
                    }
            }
        }
    }).addTo(map);
});

Wichtig ist dabei hauptsächlich der Aufruf von L.geoJSON und der Angabe der Daten. Mit der style-Funktion ist man zusätzlich noch in der Lage einzelne Flächen einzufärben (hier per random-Grün), die Grenzen zu stylen usw. Mehr Informationen erhält man hier.

Ein komplettes Demo gibt es auch!

Es tut sich was in Sachen Open Data und eine aktuelle Entwicklung will ich hier kurz beschreiben, nämlich die um das Transparenzgesetz NRW.

So gab es am Montag im Landtag NRW auf Einladung der Fraktion der Grünen ein Fachgespräch zum Thema Transparenzgesetz. Eingeladen waren Vertreter der Initiative aus Hamburg, die inzwischen ein solches Gesetz haben, aber auch Vertreter der Initiative NRW blickt durch. Dabei handelt es sich um einen Zusammenschluss von Mehr Demokratie e.V., dem Bund der Steuerzahler und Transparency International und ihr Anliegen ist, ein solches Transparenzgesetz auch für Nordrhein-Westfalen auf die Beine zu stellen.

(mehr …)