Am Puls von Microsoft

Entwicklertagebuch: Kennzeichner #1 mit Bing AI Chat als Datengrundlage

Entwicklertagebuch: Kennzeichner #1 mit Bing AI Chat als Datengrundlage

Wir auf Dr. Windows haben schon öfter neue Bastelprojekte gestartet. Manche konnten abgeschlossen werden, andere wie unsere „DuoBahn“-App blieben aufgrund von äußeren Einflüssen wie Kriegen unvollendet. Das Schöne an solchen Projekten ist, dass dies vollkommen, okay ist! Also lasst uns ein Neues starten!

Hallo, neue Bastelei

Noch möchte ich nicht zu viel über unsere nächste App verraten, nur zwei Fakten seien schon einmal erwähnt. Der Name der App wird „Kennzeichner“ heißen und die Datengrundlage hierzu müssen wir uns selbst zusammensuchen. Ein Glücksfall hierfür ist auf dem Papier, dass alle hierzu benötigten Informationen unter „Open Data“ also als „frei verfügbare Daten“ nutzbar sein müssten.

Das ist das Ziel

Die App Kennzeichner soll den Nutzer befähigen, anhand der Gebietskennung ein Kennzeichen einer Stadt beziehungsweise einer Region zuzuordnen. Für die Suche nach „A“ würde „Augsburg“ erscheinen, aber auch „Aalen“, da hierfür die Kennung „AA“ verwendet wird. Für einen gewissen Mehrwert sollen Metainformationen zu den jeweiligen Regionen in Deutschland beitragen. Welche dies sind, ist bisher noch nicht bestimmt. Des Weiteren soll diese App mit einem auf den ersten Blick einfachen Benutzungsszenario auch die Experimente für mögliche Erweiterungen wie einer sprachbasierten Suche ausgeloten. Somit ist es schwer, das „endgültige“ Ziel der App zu bestimmen. Eher sind es Schritte in eine gewisse Richtung, mit welchen ich viel lernen möchte, aber auch schnelle Erfolge feiern will ohne Wochenende für Wochenende an einem Feature bauen zu müssen.

KMM – Kotlin Multiplatform Mobile

Ungewöhnlich für ein Microsoft-nahes Portal ist, dass diese App in der ersten Stufe auf dem Ansatz der Kotlin Multiplatform Mobile, kurz KMM, erbaut wird. Kein Xamarin, kein Blazor Hybrid, kein .NET MAUI. Zu den Gründen wird es in zukünftigen Artikeln mehr Erklärungen geben, je weiter ich mich mit der Thematik KMM auseinandergesetzt habe. Zum jetzigen Zeitpunkt kann ich nur so viel sagen, dass durch die Qualität, welche .NET MAUI bis Ende letzten Jahres hatte, auch was den VS for Mac Support anbelangt, mir ein Einsatz dieses Tech Stacks aus C#, XAML und eben dem MAUI-Framework nicht gerade nahegelegt wurde.

Ob MAUI eventuell doch die bessere Wahl gewesen wäre, werden wir wohl am Ende der Reise mit diesem Bastelprojekt wissen. Ein großer Pluspunkt, wofür MAUI steht, ist die Möglichkeit, die App-Oberfläche nur einmal schreiben zu müssen, um sie auf allen Plattformen nutzen zu können. Ein Lösungsansatz hierfür aus dem Kotlin-Ökosystem wäre „Compose Multiplatform“. Hierzu habe ich private ein Beispiel programmiert. Zu einem späteren Projektzeitpunkt werde ich erneut evaluieren, ob ich mit plattformspezifischen Oberflächen arbeiten möchte oder mit einer geteilten – trotz der etwaigen Nachteile.

Microsoft ist dennoch vertreten

Dennoch ist Microsoft im Entwickleruniversum breit aufgestellt. Natürlich wird die Android-App fit gemacht für das Surface Duo, falls es bis dahin noch existiert. Auch ohne das Duo lassen sich dennoch Produkte aus Redmond wiederfinden. Einerseits GitHub zur Quelltext- und Ticketverwaltung als auch eventuell Microsoft App Center für etwaige Verteilung von Android Testversionen. Ob die App die FluentUI von Microsoft verwenden wird, liegt größtenteils daran, wie weit die Unterstützung von Jetpack Compose und SwiftUI vorangeschritten ist, bis wir zu diesem Punkt an sich kommen.

Bing AI als Datengrundlage

Eingangs erwähnt benötigt die App eine gewisse Datengrundlage, welche es nach meinen Recherchen so noch nicht gibt. Ich suche alle aktuell verwendeten Kennzeichen, deren Region sowie die geografischen Lager ebendiesen. Hinzu sollen optional noch Metainformationen über die Kennzeichenregion bereitgestellt werden. In meinen Augen ist dies ein perfekter Aufhänger, um sich mit dem Bing AI Chat zu beschäftigen.

Die Anfänge meines Gesprächsverlaufes mit der AI waren sehr vielversprechend. Bing verstand mein Anliegen, hat gezielte Nachfragen gestellt, mir angeboten aus den Daten sogar eine Excel-Tabelle zu erstellen und diese mir an meine hinterlegte E-Mail-Adresse zukommen zu lassen. Ich war beeindruckt und auch begeistert – doch dann endete alles anders als erwartet.

Obwohl mir Bing versicherte, mir eine Nachricht zu schicken, kam diese nie an. Um dies zu untersuchen, fragte ich Bing, an welche Adresse es die Liste schickte und wie viel Speicherplatz diese benötigt. So konnte ich ein Problem mit einer falschen Spamzuordnung oder einer nicht korrekt hinterlegten E-Mail-Adresse ausschließen.

Während weiterer Versuche schlug meine Nutzung der AI mit unterschiedlichen Problemen fehl, welche sich dennoch als „Fehler beim Datenexport“ zusammenfassen lassen. Eine direkte Ausgabe als CSV-Text in der Gesprächsansicht wurde torpediert, da hier die Texte in der Mitte immer mittels „…“ gekürzt wurden, trotz Bitte, dies zu unterlassen.

Bei direkten Befehlen, mir die erstellte Datei zu mailen, gestand mir Bing, dass dies noch nicht möglich sei. Diese Einschränkungen wurden vom Microsoft Experten Raphael Köllner auf Twitter bestätigt. Wieso also bot es mir dann die AI beim allerersten Durchlauf an?

Die Frage bleibt, ob der zum Zeitpunkt des Artikels in einer geschlossenen Beta-Phase befindliche Excel Copilot dieses Problem besser hätte lösen können.

Bing AI Chat Prompt Experte gesucht

Falls ihr euch mit den Anfragen an den AI-Chat auskennt und ihr es hinbekommen habt, mein Anliegen erfolgreich zu lösen, teilt bitte euren Prompt mit der Dr. Windows Community, um gemeinsam lernen zu können.

Wie geht es weiter?

Das Bastelprojekt kann zu anfangs auch mit Demo-Daten betrieben werden. Dies blockt also nicht die aktive Entwicklung der App. Ich werde mich in den kommenden Wochen vertrauter mit Kotlin und KMM machen. Das Bastelprojekt findet ihr wie so oft als Repository auf GitHub. Um eine aktive Teilnahme an der Entwicklung bitte euch auch noch nicht, da erst einmal der Rahmen und die Möglichkeiten meiner Idee ausgelotet werden sollten. Nichts ist schlimmer als eure verschwendete Lebenszeit. Wer sich zu KMM, Kotlin, Jetpack Compose und Co. unterhalten möchte, kann gerne mit mir auf den englischsprachigen Discord Server von Kobweb (ein Aufsatz auf Compose for Web) kommen.

Ü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