Die Pflichtlektüre für Freunde quelloffener Software
 |
|
|
|
Hallo, es ist Freitag und wir haben wieder ein neues Spotlight für euch. Heute löse ich mein Versprechen von letzter Woche ein und stelle euch die mysteriöse App vor. Ein kleiner Schlenker vorab: Open Source beschränkt sich nicht auf Code und Quelltexte, sondern auch Inhalte und Daten können, im weiteren Sinne, Open Source sein. Wikipedia ist ein bekanntes Beispiel, bei dem viele Menschen kollaborativ Inhalte zusammentragen, korrigieren, weiterentwickeln. Das trifft auch auf OpenStreetMap zu, der freien, digitalen Weltkarte. Leider ist das Editieren und Ergänzen bei OpenStreetMap nicht ganz so einfach, wie in einem Wikipedia-Artikel herumzudoktern. Das Tool, das ich euch heute vorstelle, senkt die Hürde rapide und macht es spielend einfach, Einträge in OpenStreetMap zu ergänzen. | | | |
|
|
Heute im Spotlight
|
| ● | StreetComplete - Spielerisch OpenStreetMap verbessern |
| ● | Interview mit Tobias Zwick - Entwickler von StreetComplete | | | | | | |
|
|
|
|
|
Spielerisch OpenStreetMap verbessern | | | |
Ich bin ein großer Fan von OpenStreetMap und benutze es nahezu täglich, ob für Fahrradtouren, den nächsten Spielplatz zu finden oder den Linienweg eines Busses nachzuschauen. Aber selbst daran mitzuwirken, hat mich bisher abgeschreckt. Bei mir hat sich festgesetzt, dass es kompliziert ist, obwohl man mittlerweile selbst über die Webseite einfach an den Karten mitarbeiten kann. Aber die ganze Karten-Logik will einfach nicht in meinen Kopf. Ein banales Bedürfnis hat diese Sichtweise geändert: Wir mussten aufs Klo! Im Urlaub planten wir einen Ausflug auf Zagrebs Hausbergs Medvednica. Doch auf dem Weg dorthin suchten wir aktu eine öffentliche Toilette. Mit der App OsmAnd fand ich zwar ein Örtchen, aber das war außer Betrieb. Zu unserer (auch sprichwörtlichen) Erleichterung gab es aber in Gračansko Dolje, in der schicken neuen Seilbahnstation, moderne Toiletten, die bisher nicht in OpenStreetMap eingetragen waren. Später wollte ich das ändern und zumindest diese klitzekleine Information in OpenStreetMap ergänzen. Ich stöberte im Wiki, welche Apps es gibt. Mit Every Door habe ich es dann geschafft, das Klo in die Karte einzutragen. Hängen geblieben bin ich den Rest des Urlaubs aber an einer anderen App aus der Liste.
|
Spotlight-Steckbrief
|
| ● | Entwickler: Tobias Zwick |
| ● | Plattform: Android (iOS in Arbeit) | |
| | | |
|
StreetComplete zeigt auf der Karte Quests an, die man durch Beantwortung einfacher Fragen löst. (Bild: Keywan Tonekaboni, c’t) | | | |
StreetComplete ist kein Karteneditor für Geografie-Nerds, sondern bietet einen ganz anderen Weg, um zu OpenStreetMap beizutragen. Es lädt für die eigene Umgebung Daten herunter und zeigt auf der Karte Aufgaben, sogenannte Quests: Gibt es an der Ampel einen Knopf für Fußgänger? Wie hoch ist der Bürgersteig? Welche Öffnungszeiten hat dieses Geschäft? Aus welchem Material ist der Straßenbelag? Meist kann man die Fragen schnell beantworten, da die Antwortmasken optimal gestaltet sind. Die Frage nach dem Bordstein oder dem Straßenbelag zeigt etwa Beispielfotos. Das erinnert etwas an die lästigen Captcha-Tests, zum Glück nur optisch. Flugs die Pflastersteine oder den abgesenkten Bordstein ausgewählt, schon ist eine weitere Aufgabe erledigt. Für die Mühen gibt es als Belohnung Punkte, Abzeichen und Statistiken. Die App appelliert also an unseren Spieltrieb. Und ich muss euch warnen: Die App macht auch ein bissel süchtig. Plötzlich finde ich mich innerhalb eines eleganten Damensalons wieder und frage die verdutzte Stylistin nach den Öffnungszeiten aus – und das mit meinem leicht schludrigen Urlaubs-Outfit. Probiert es einfach selbst aus. | | | |
Interview mit Tobias Zwick - Entwickler von StreetComplete | | | |
Um mehr über StreetComplete zu erfahren, haben wir für euch mit dessen Entwickler und Maintainer Tobias Zwick gesprochen. c’t: Wie kamst du dazu, Software zu entwickeln? Tobias: Zur Softwareentwicklung gekommen bin ich schon mit zwölf Jahren über ein ulkiges deutsches Spiel namens Clonk, welches ich zuerst begeistert gespielt und später dann mitentwickelt habe. Als der Hauptentwickler das Spiel auf- und es letztlich als Freeware freigab, habe ich mit anderen das Spielkonzept in einem Spin-Off namens OpenClonk als freie Software neu entwickelt. Und da habe ich schon gesehen: Programmieren ist etwas, das ich auch beruflich machen möchte. c’t: Was war deine Motivation, StreetComplete zu entwickeln? Tobias: Das ist ganz lustig. „Schuld“ war meine Lebensgefährtin, mit der ich 2014 in Thailand lebte. Damals hatte ich mir als vormalig begeisterter Geocacher als Hobby angelacht, an der OpenStreetMap mitzuarbeiten. Es gibt einem schon eine gewisse Genugtuung, der Erste zu sein, der eine bis dahin weiße (OpenStreetMap-)Karte mit Leben füllt. Man fühlt sich ein wenig wie ein Entdecker. Und so notierte ich mir bei Ausflügen akribisch jedes Detail von Straßen, Geschäften, Parks und so weiter, um sie zu Hause am Computer in die OpenStreetMap einzupflegen und anschließend zu bewundern, wie „mein“ Viertel danach auf der Karte erschien. Klar, dass das meine Lebensgefährtin gar nicht toll fand, wenn ich auf gemeinsamen Ausflügen damit so beschäftigt war. Und ehrlich gesagt artete das auch immer in ziemlich viel Arbeit aus: Nicht nur dauerte das Einpflegen dieser teils handschriftlich erfassten Daten dann mindestens noch einmal ebenso lange am Computer, vor Ort wusste ich auch nicht genau, was nun schon eigentlich auf der Karte eingetragen war und was nicht. Vieles hatte ich dann überflüssigerweise doppelt erfasst. Die Idee war also, eine kleine App zu haben, die die OpenStreetMap-Daten in der Umgebung automatisch analysiert und mit der man dann durch Beantwortung jeweils einer einfachen Frage die fehlenden Informationen einzeln direkt beitragen kann. Das Konzept war also, ganz nebenbei – mal hier, mal da, ohne großes Commitment, vor Ort Beiträge zur OpenStreetMap zu machen, ohne diese später am Computer dann noch einpflegen zu müssen. Und gegebenenfalls auch, ohne dass meine Lebensgefährtin mitbekommt, dass ich hier schon wieder herumnerde, statt die schöne Szenerie zu genießen. 😉 | | | |
|
|
c’t: Es gibt diverse OpenStreetMaps-Editoren, auch für Mobilgeräte. Was ist das Besondere an StreetComplete? Tobias: Naja, für Mobilgeräte gibt es so viele nicht, vor allem damals nicht. Damals gab es für Android vor allem den Editor Vespucci. Mit diesem kann man theoretisch alles an der OpenStreetMap bearbeiten, was man auch am PC bearbeiten kann. Aber es ist eben so, dass wenn der zur Verfügung stehende Bildschirm die Größe einer Handfläche hat und der zur Verfügung stehende Mauscursor bloß der eigene dicke Finger ist, es wirklich sehr lästig und zeitaufwendig ist, irgendwelche sinnvollen Änderungen zu machen, vor allem wenn man unterwegs ist. Daher lief man eher mit Kamera oder Zettel & Stift herum, statt die Daten direkt am Mobiltelefon einzutragen. StreetComplete ist hier konzeptionell eher ein Quizmaster als ein OSM-Editor, oder auch wie Geocaching oder Pokemon Go: Die Karte ist gespickt mit Aufgaben (Quests), die es zu lösen gibt. Diese zu beantworten geht ganz fix und die Antwort wird dann direkt in die OpenStreetMap hochgeladen. Nutzer der App müssen nicht wissen, wie OSM intern funktioniert, um etwas beizutragen. Und so ist die App eben für jedermann geeignet. Nur vor Ort muss man sein, das ist alles. Das bedeutet natürlich auch, dass es sehr limitiert ist, was man überhaupt mit der App zur OpenStreetMap beitragen kann - nämlich nur das, wofür eben speziell Fragen & Antworten einprogrammiert wurden. Neue Straßenzüge, Gebäude und so weiter wird man wohl nie direkt mit der App hinzufügen können, nur immer Informationen zu schon bestehenden Objekten: Anzahl der Fahrspuren von Straßen, Straßennamen, Gebäudehöhe, Öffnungszeiten von Geschäften, …. Mittlerweile ist das aber eine Liste an Quests, die sich sehen lassen kann. Aber, ehrlich gesagt: Neue Straßen, Gebäude und andere Geometrien hinzufügen macht man auch besser am Computer mit der Maus. Das ist viel, viel effizienter. c’t: Was waren Hürden, mit denen du bei der Entwicklung von StreetComplete konfrontiert warst? Tobias: Die größte Herausforderung war und ist eigentlich, dass das Interesse an der App viel größer ist, als ich das anfangs erwartet hatte. Daraus ergibt sich dann ein viel höherer Wartungsaufwand, zum Beispiel um allein überhaupt die ganzen neuen Vorschläge zu lesen, die ständig auf Github, per E-Mail und im Forum gemacht werden. OpenStreetMap und Android entwickeln sich auch immer weiter, wodurch schon deswegen ständige Anpassungen der App notwendig werden – von der Entwicklung neuer Features mal ganz abgesehen. Die Zeit dafür muss ich irgendwo hernehmen. Als reine FOSS-App fehlt eine Monitarisierung. Man kann aber spenden, will ich an dieser Stelle einmal anmerken 🙂. c’t: Wie entwickelt ihr die Quests? Und wie findet ihr dann die Orte, die zu einer Quest passen? Tobias: Schätzungsweise kommen bestimmt mittlerweile 90% aller Vorschläge für Aufgaben aus der OpenStreetMap-Community. Technisch gesehen ist das nicht so interessant: Es werden sämtliche OpenStreetMap-Daten rund um den Nutzer heruntergeladen und dann lokal auf dem Gerät pro Aufgabentyp analysiert, wo noch Daten nachgetragen werden können. Daraus resultieren dann die Pins mit den Aufgaben, die man auf der Karte sieht. Es ist aber eben nicht alles machbar, was so als neuer Aufgabentyp vorgeschlagen wird. Das kann verschiedenste Gründe haben, aber ganz besonders wichtig ist die Überlegung, dass das Beitragen an der OpenStreetMap mit dieser App eben schon Spaß machen soll. Disqualifiziert sind also Aufgaben, die nach Informationen fragen, die langwierig, schwierig, mühsam, verwirrend, nur mit Expertenwissen oder nur unter bestimmten Umständen überhaupt beantwortbar sind (Details dazu stehen in den Quest Guidelines). c’t: Wie ist die Zusammenarbeit mit der restlichen OpenStreetMaps-Community?
Tobias: Die Entwicklung der App ist tief in die restliche OpenStreetMap-Community integriert. Wie schon erwähnt, stammt zumindest die Idee, aber oft auch die Implementierung vieler Aufgaben von Mitwirkenden aus der OpenStreetMap-Community. Ich würde sagen, das Projekt gehört neben den Projekten für die Komponenten, die direkt auf der OpenStreetMap-Website zu sehen sind, zu den aktivsten Projekten mit den meisten Mitwirkenden. Verbesserungen an Aufgaben, wie etwa klarere Formulierung, bessere Bebilderung, bessere Auswahl von Objekten, nach denen die Nutzer gefragt werden, etc. werden regelmäßig vorgeschlagen. c’t: Wie komplex ist es, Datensätze von den Usern zu OpenStreetMaps zu übertragen und einzupflegen? Tobias: Genau das ist ein Punkt, bei dem sich in dieser App erstaunliche Komplexität verbirgt. Für Nutzer sieht die App so simpel, so einfach aus, insbesondere verglichen mit Editoren, die, ich sag' mal, näher an der Materie, näher am Technischen sind. Aber gerade das erfordert eben, mit dieser Komplexität intern selbst umzugehen. Einerseits müssen die derzeitigen Daten korrekt interpretiert werden, daraus die Aufgaben generiert und gegebenenfalls die aktuellen Daten in für den Nutzer verständlicher Form angezeigt werden, andererseits müssen die Antworten, die der Nutzer gibt, wieder korrekt in OpenStreetMap-Daten übersetzt werden. Das macht einen nicht zu vernachlässigbaren Teil des Gesamtprogrammes aus. Die Bedienung der OpenStreetMap API allerdings ist recht einfach, es handelt sich um eine einfache REST (XML) API. Allerdings ist diese auch sehr einfach gestrickt, sodass bestimmte Operationen letztlich für den OSM API Klienten (also etwa StreetComplete) wesentlich komplizierter umzusetzen sind, sofern Nutzern nicht überlassen werden soll, dies manuell korrekt zu machen. So etwa das Aufspalten einer langen Straße in mehrere Segmente. Ein weiterer Punkt, der einige Komplexität birgt, ist der Umgang mit Konflikten - also wenn ein anderer OpenStreetMap-Nutzer in der Zwischenzeit die gleichen Daten verändert hat, die nun eigentlich von StreetComplete hochgeladen werden sollten. Ich will hier nicht zu sehr ins technische Detail gehen, aber die App löst zum Beispiel die meisten Konflikte automatisch, damit der technisch nicht versierte Nutzer nicht damit konfrontiert werden muss. Das macht sonst kein anderer OpenStreetMap Editor. Ich hatte dazu auch einen Talk auf der State of the Map 2021, der jährliche OpenStreetMap-Konferenz, gegeben. c’t: Welche Features planst du als Nächstes für StreetComplete? Tobias: Eine iOS Version der App, ganz klar. Daran habe ich das letzte halbe Jahr gearbeitet und werde es auch weiterhin tun, sofern ich dafür eine Anschlussförderung finde. Denn das ist vom Aufwand her nicht allein durch Einzelspenden, Arbeit am Wochenende und Beiträgen von Mitwirkenden gedeckt. 🤞 c’t: Wofür begeisterst du dich abseits von Softwareentwicklung? Tobias: Wer mein Aktivitätsprofil auf OpenStreetMap verfolgt, der wird festgestellt haben, dass ich neulich alle Bootsverleihe in Hamburg zur OpenStreetMap hinzugefügt habe. Nicht ohne Grund. Ich habe diesen Sommer jede Gelegenheit genutzt, auf der Alster SUP (Stand-up-Paddling) zu fahren. Aber generell habe ich wechselnde Interessen - zurzeit gehe ich oft schwimmen und lerne Spanisch. | | | |
|
|
|
Seid ihr auch begeisterte OpenStreetMap-User oder verlasst ihr euch lieber auf Apple, Bing und Google Maps? Habt ihr schon aktiv an OpenStreetMap editiert? Falls ja, mit welchen Tools und Apps habt ihr gearbeitet? Falls nein, und ihr grundsätzlich Interesse daran hättet: Was hält euch davon ab, bei OpenStreetMap mitzumachen? Lasst es mich gerne wissen, indem ihr unten auf "E-Mail schreiben" klickt. Bis zur nächsten Woche und Happy Hacking! | | | |
|
|
Immer informiert: Folge dem Thema "Open Source" auf heise online | | | |
|
|
Wir freuen uns auf dein Feedback | | | |
Fragen, Kritik oder Lob? Schreib uns eine Nachricht oder bewerte diesen Newsletter in unserem Survey | | | |
| | |
Wir lesen uns, dein Team vom Open Source Spotlight | | | |
|
|
|
|
NEUER NEWSLETTER
|
c't Tech-Check
|
Neue Hardware, neue Tools – was sich lohnt und was nicht.
|
| | | | | |
|
|
Newsletter
|
c't exklusiv
|
Immer auf dem Stand der Technik bleiben - kompakt und persönlich. Jeden zweiten Donnerstag.
|
| | | | | |
|
|
Newsletter
|
c't 3003 Hype
|
Was ist gerade Hype - und was steckt dahinter? Jeden Donnerstag
|
| | | | | |
|
|
c't immer dabei - jetzt die App herunterladen | | | |
| | |
|
|
Bleib mit uns auf dem Laufenden | | | | |
|
|
Impressum Heise Medien GmbH & Co. KG, Karl-Wiechert-Allee 10, 30625 Hannover Registergericht Hannover HRA 26709, Persönlich haftende Gesellschafterin: Heise Medien Geschäftsführung GmbH, Registergericht Hannover HRB 60405 Geschäftsführer: Ansgar Heise, Beate Gerold Telefon: +49 (0)511 5352 - 0 E-Mail: Infoservice@heise.de Du bist unter folgender Adresse eingetragen: open@newsletter.ct.de - 31521272. Hier kannst du dich von künftigen Zusendungen unserer c't-Club-Mails abmelden. Solltest du eine Abmeldung in Betracht ziehen, möchten wir dich bitten, uns vorab in unserem Survey zu erläutern, warum du dich zur Abmeldung entschieden hast, damit wir unser Newsletter-Angebot weiter verbessern können. Kontakt | Impressum | Datenschutz | | | |
| |