Am Puls von Microsoft

Auf zu unseren neuen Surface Duo App „DuoBahn“: Teil 1

Auf zu unseren neuen Surface Duo App "DuoBahn": Teil 1

Vor wenigen Wochen hat die Bundesregierung etliche offene Datenquellen ins Internet gestellt, die meisten davon findet man unter bund.dev, kurz für „Bundesstelle für Open Data“, zentral zusammengefasst. In meinem neuen kleinen Xamarin.Forms App Projekt „DuoBahn“ ziele ich im Speziellen auf die Webschnittstelle für alle Daten rund um deutsche Autobahnen ab.

Was ist bund.dev?

Unter dem Titel „Wir dokumentieren Deutschland“ wurden hier auf Bundesebene etliche freie, öffentlich zugängliche Webschnittstellen zusammengefasst.

Das Portal beschreibt sich wie folgt selbst:

Im API-Portal des Bundes finden Sie Dokumentationen zu Programmierschnittstellen von Verwaltungsleistungen und Informationsportalen des Bundes. Die Zahl online verfügbarer Schnittstellen wird im Rahmen des „Gesetzes zur Änderung des E-Government-Gesetzes und zur Einführung des Gesetzes für die Nutzung von Daten des öffentlichen Sektors“ (2. Open-Data-Gesetz) bis 2024 stark anwachsen.

Darüber hinaus stehen auf der GitHub Seite von bund.dev etliche OpenApi Spezifikationen zum Herunterladen bereit. Wer auf dem neuesten Stand bleiben möchte, kann dem Portal auch auf Twitter (@bund_dev) folgen. Eine Antwort auf einen Tweet habe ich jedoch bis dato leider noch nicht erhalten.

Zurück zur App: Um was geht es genau?

Um ehrlich zu sein: keine Ahnung. Spaß beiseite, die App steht noch komplett am Anfang. Jede Idee ist willkommen. Bisher ist angedacht, Informationen zu vom Benutzer ausgewählten Autobahnen anzuzeigen. Natürlich bin ich hier an die zur Verfügung stehenden Daten der API gebunden.

Es stehen folgende Informationen zur Verfügung:

  • Verkehrsmeldungen
  • E-Auto Lader
  • Sperrungen
  • Baustellen
  • Webcams
  • Rastplätze

Man merkt bereits, dass diese App wohl mit einem sehr starken Fokus auf Karten gestaltet werden sollte.

Leider wird es wohl nicht möglich sein, ohne externe Helfer alle Daten aller Autobahnen anzuziehen. Es scheint, als bin ich hier bei ersten Tests in Ratelimits gelaufen. Dies empfinde ich jedoch auch von der Customer Story her nicht wirklich als Blocker, da man sich meistens nur für bestimmte Autobahnen interessiert. Darum ist eine Auswahlmöglichkeit der gewünschten Autobahnen vom Benutzer in der App einzuplanen.

Erste grafische Ideen

Auch wenn ich kein Gestalter bin, habe ich gern etwas vor meinen Augen, wo die Reise grob hingehen soll.

Aus diesem Grund habe ich mir auf Basis des offiziellen Surface Duo Design Kits als auch des Kits zu Material Design in Figma einen frühen Entwurf der Oberfläche für die DuoBahn App ausgedacht.

DuoBahn App

Ob ein Teil dieser Konzeptidee sich schlussendlich in der fertig entwickelten App wiederfindet, ist ungewiss, dennoch gibt es mir eine Art Führung, an der ich mich während meiner freizeitlichen Entwicklungssession entlang hangeln kann.

Wieder kein MAUI

Nach dem Verzicht auf eine Migration unserer Dr. Windows #rTsd war eigentlich mein Plan, die nun anstehende nächste Freizeitbeschäftigung im neuen .NET MAUI Kontext zu entwickeln. Durch etliche Verzögerungen als auch das verspätete Release von Visual Studio for Mac 2022 – im dem entsprechenden Jahr – hat sich dieser Plan nun geändert. Außerdem ist mir persönlich zum jetzigen Zeitpunkt MAUI noch zu fluent in der Gestalt von Breaking Changes. Ungünstig ist auch, dass man als Einsteiger keine wirkliche Dokumentation findet, da es mittlerweile etliche Vorschauversionen gibt und manche Dinge sich bereits stark unterscheiden.

Allgemein ist dies zu verkraften, da ich nach jetzigem Planungsstand nur das Microsoft Surface Duo bespielen möchte und somit die „Write Once, Run Everywhere“ Funktionalität von MAUI nicht wirklich benötige.

Warum kein Flutter oder ReactNative?

Ich habe mich schlussendlich weder für Googles Flutter noch für ReactNative von Facebook entschieden, da hier nicht nur, wie bei Flutter, die Unterstützung für Foldable Devices dem Zeitplan hinterher hängt, sondern ich einfach auch in Bezug auf ReactNative diesen Tech Stack nicht mein Eigen nenne und auch keinerlei Ambitionen habe, diesen auszuprobieren, geschweige denn zu unterstützen.

Wie geht es weiter?

Die Tage werden kürzer, die Nächte länger, da wird der Nerd zum Tasten-Bänger. Das Projekt steht noch ganz am Anfang. Es gibt noch Etliches an Versuchsarbeit zu leisten, um hier „offiziell“ mit der eigentlichen Entwicklung anzufangen.

Dies hat jedoch den Vorteil, dass wir sehr gerne über etwaige Funktionen der App diskutieren können.

Welche Features würdet ihr gerne sehen? Würdet ihr die App eher mit zwei Bildschirmen nebeneinander oder übereinander benutzen wollen?

Welche bisher getroffenen Entscheidungen wie zum Beispiel Xamarin.Forms hättet ihr anders getroffen?

Ich freue mich auf eure Kommentare!

Über den Autor

Tobias Scholze

Tobias Scholze

Bayrischer Open Source- und Community-Enthusiast, Verfechter des neuen Microsoft und Wandler zwischen den Betriebssystemwelten. #communityrocks Von Herzen ein Nerd mit der festen Überzeugung, dass man gemeinsam und durch den Einsatz von moderner IT die Welt für jeden ein Stückchen besser machen kann.

Anzeige