Am Puls von Microsoft

#rTsd – Road to Surface Duo, das Entwicklertagebuch: Teil 3

#rTsd – Road to Surface Duo, das Entwicklertagebuch: Teil 3

Bisher erschienene Artikel zur Serie:

Dank eurer regen Teilnahme an unserer Road to Surface Duo bekam ich auch eine Reihe von Fragen bezüglich des Projektes und dem Einstieg in die Entwicklung allgemein zugesandt. Auf diese Fragen möchte ich in diesem Beitrag einmal eingehen.

Natürlich stehe ich weiterhin sowohl in den Kommentaren als auch via Email an tobias@drwindows.de für Nachfragen zur Verfügung. Denn wie wir alle wissen, nur geteilter Spaß ist wirklicher Spaß.

Kurz und knapp

Frage: Machst du das auch beruflich?

Ja, ich bin hauptberuflich studierter Software Engineer für iOS Entwicklung mit Swift. Xamarin.Forms ist mein reines Hobby und ich starte hier quasi wieder von Neuem, was die Erfahrung anbelangt.

Frage: Wird #rTsd die momentan verfügbare Dr. Windows App ablösen?

Nein, meine App ist ein sehr simples und im Funktionsumfang stark eingeschränktes Technologiebeispiel, welches sich auf das „Neue“ am Duo spezialisiert. Die Dr. Windows App ist und bleibt für iOS und Android bestehen.

Frage: Wird es die App auch für iOS geben?

Nein, bei dieser App stehen die kommenden, neuen Surface Geräte im Fokus. Das Android des Duos ist hierbei die unangefochtene Zielplattform.

Frage: Wird es die App auch für Windows 10 (X) geben?

Nein, eventuell nachgelagert. Das Surface Neo ist unbestritten eine spannende Geräteklasse. Dennoch liegt im Moment der Fokus auf dem Surface Duo.

Frage: Wird es die App im Store geben?

Nein, dies ist nicht angedacht. Die App soll ein reiner Technologieträger für erklärende Dr. Windows Beiträge bleiben. Ein Storeeintrag bringt weitere Arbeiten mit sich. Diese Zeit möchte ich lieber in die aktive Entwicklung stecken.

Frage: Machst du jetzt nur noch Xamarin und kein Windows 10 IoT Core Apps mehr?

Nein, auch weiterhin habe ich etliche Ideen für Windows 10 IoT Apps mit etwas mehr Hardware im Hinterkopf. Auch diese werden weiterhin auf Dr. Windows veröffentlicht.

Frage: Wie viele Teile der Artikelserie wird es geben?

Kann ich noch nicht sagen. Ich möchte nicht jede Kleinigkeit, welche für das große Ganze uninteressant sind, unnötig aufbohren. Ich versuche im grob wöchentlichen Rhythmus Beiträge bezüglich des Fortschritts in der Entwicklung der App zu veröffentlichen.

Länger ausgeholt

Frage: Warum sind deine Readme und deine Quellcode-Kommentare in Englisch?

Englisch ist und bleibt die Sprache der Entwicklung. Fachbegriffe als auch sonstige Terminologien im Kontext der Softwareentwicklung sind in dieser Sprache. Persönlich halte ich eine Mischung aus Deutsch und Englisch für sehr kontraproduktiv. Um jedoch mehr Menschen Zugang zu diesem Projekt und Idee hinter der rTsd-App zu verschaffen, habe ich mich entschlossen, dass GitHub Issues auf Deutsch ausformuliert werden.

Frage: Warum native und nicht als Progressiv Web App (PWA)?

Für mich persönlich als professioneller Entwickler mobiler Plattformen wird auch in Zukunft nichts an nativen Implementierungen vorbeiführen. Auch wenn diese simple App dafür wohl geeignet wäre, möchte ich hier von meinem Standpunkt nicht abweichen. Vor allem bei iOS, auch wenn dieses hier nicht unterstützt wird, wäre eine PWA keine valide Applikation, um diese in den App Store einzureichen.

Frage: Was für einen Computer brauche ich, um mit dem Entwickeln zu starten?

Generell lässt es sich auch auf einem Raspberry Pi für 30 Euro mit dem Entwickeln beginnen. Dies ist sogar recht sinnvoll, wenn man direkt mit dem Raspberry Pi und dessen Hardware in Python oder JavaScript arbeitet. Die Mär, dass man eine mehrere tausend Euro teure Maschine braucht, ist für die allermeisten Developer nicht berechtigt. Für Xamarin-Softwareentwicklung wie jetzt bei der #rTsd-App würde ich mindestens acht Gigabyte Arbeitsspeicher, eine halbwegs moderne SSD sowie einen Intel Core i5 als gute Einstiegskonfiguration ansehen. Wer es nur einmal probieren möchte, kann auch mit schwächeren Maschinen einsteigen.

Kurzum: Fang einfach an. Wenn es dir Spaß macht, aber es dir zu langsam geht, kannst du ja über eine Aktualisierung deiner Maschine oder der Peripherie nachdenken.

Frage: Kann ich mich auch als Nicht-Entwickler beteiligen?

Klar! Ein Stück Software besteht meist aus mehr als nur einigen Zeilen Quelltext. Es gibt die nicht-technischen Disziplinen Oberflächengestaltung, Benutzerführung, Asset-Erstellung, Texte, Qualitätssicherung und vieles mehr.

Ein Beispiel hierfür innerhalb der #rTsd-App ist das GitHub Issue #2 (Help wanted: App Icon). Hierbei wird ein App Icon gesucht. Näheres hierzu findet ihr im oben verlinkten Ticket. Dieses hat keine Quelltext-Anteile, sondern benötigt grafisches Gespür und ein Händchen für das Schöne.

Frage: Macht es dir immer Spaß?

Nein, jedoch welches Hobby macht das schon? Vor allem am Anfang fällt man leicht über die kleinsten Fallstricke oder stapft in Fehler des Frameworks hinein, wo man sich einfach nicht vorstellen konnte, dass es diese Löcher in der Funktionalität gibt.

Wer auch die frustrierenden Momente sehen möchte, der kann sich die ein oder andere Aufzeichnung meiner Coding-Sessions auf YouTube ansehen. Achtung: Diese dienen nicht zum Lernen, dazu gibt es weitaus bessere und sie beinhalten Sprachfehler.

Um so schöner und befriedigender ist dann dieser eine Moment, wo es so funktioniert wie man möchte – wenn auch nur kurz *scnr*.

Wie geht es weiter?

Jetzt, wo die staade Zeit näher rückt und für viele Leute die verdiente Urlaubs- und Ferienzeit beginnt, lasst uns auch weiterhin gemeinsam Spaß an der Reise haben! Diese ist noch weit und es kommen wohl auch Tiefen in der Motivation auf uns zu. Als Community schaffen wir aber, auch diese zu überwinden. Dabei kann jede/r etwas Neues lernen.

#communityrocks

Ü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