Patchday - Device Marketing Names aktualisiert

In den letzten Tagen habe ich meine geplanten monatlichen Updates für meine Device Marketing Names Libraries vorbereitet. Nach etwas mehr Arbeit als gedacht konnte ich selbige nun online stellen und somit sind Version 0.6.3 open_in_new Device Marketing Names - Dart / Flutter und Version 0.4.3 open_in_new Device Marketing Names - Kotlin verfügbar.
Im Dart / Flutter Bereich gab es die gewohnten Updates von Abhängigkeiten und natürlich einen frischen Datensatz, welcher von meinem Device Identifiers Tool geliefert wird.
Die Kotlin Library war dieses Mal etwas mehr Aufwand, da sich mit Gradle 8 open_in_new und dem Android Gradle plugin (AGP) 8 open_in_new einige Dinge geändert haben. Durch diese Breaking Changes musste ich unter anderem die Einbindung von Jacoco open_in_new für die Auswertung der Tests umbauen und auch der Release Flow, welcher über das maven-publish Plugin realisiert wird, musste angepasst werden. Auch wenn das Ganze etwas aufwendiger war als gedacht, kann ich nun direkt auf das offizielle Jacoco Plugin setzen, der Release Flow wurde vereinfacht und einige Stellen im Code sind nun besser strukturiert. Diese Änderungen sollten sich für Nutzer der Library nicht bemerkbar machen, hier dürfte lediglich der aktualisierte Datensatz sichtbar werden.
Unzuverlässige Tests sind ein Problem

Ich bin durchaus ein Freund von Tests in der Softwareentwicklung, auch wenn ich sie ehrlicherweise zu selten nutze. Für mich persönlich ist wichtig wie und wofür man Tests einsetzt, denn einige Arten sind meiner Meinung nach nicht unbedingt das Gelbe vom Ei. Doch über das generelle für und wieder von verschiedenen Testarten möchte ich an dieser Stelle nicht sprechen, denn dafür bräuchte man eine komplette News-Sammlungen und würde vermutlich trotzdem die Hälfte nicht ausreichend betrachten.
Heute möchte ich auf einen Punkt eingehen der alle Arten von Tests mitunter extrem weniger relevant machen kann. Das Thema ist die Unzuverlässigkeit von Testergebnissen. Also Tests die manchmal funktionieren und dann doch wieder nicht und insofern bei der Auswertung unklare Ergebnisse generieren. Diese False Positives und False Negatives sorgen im Laufe der Zeit dafür, dass die Ergebnisse immer weniger ernst genommen werden und somit das Risiko besteht valide Probleme nicht zu erkennen.
Das Risiko derartiger Probleme ist sehr unterschiedlich und stark abhängig von der Art der Tests. Bei Unit Tests dürften solche Probleme eher selten auftreten, da man hier ja in sich geschlossene und lokale Funktionen testen soll. So umfangreicher der Test Flow, so problematischer wird das Ganze allerdings. Auch die Menge an externen Tools und involvierter Software und Hardware beeinflusst die Häufigkeit dieser Problematik maßgeblich. Wenn also Unit Tests eher selten Probleme in diesem Bereich haben, sind End to End Tests oder UI Tests eher anfällig für selbige.
Checklisten in der IT - Mein Fazit nach einem Jahr

Vor einiger Zeit beschrieb ich meinen relativ simplen, aber durchaus praktischen Umgang mit Checklisten. Diese Listen nutze ich nun seit mehr als einem Jahr für die Releases meiner Libraries im Android und Flutter Bereich und auch für App Releases.
Während ich einige meiner Libraries fast monatlich aktualisiere und somit “im Flow bin”, sind vor allem App Releases seltener. Insbesondere hier helfen mir die Checklisten nichts zu vergessen und sie machen mich sogar schneller, da ich einem roten Faden folgen kann. Zuletzt habe ich das beim Release der aktuellen Version der Tessa App gemerkt.
Generell ist es meiner Meinung nach hier egal welches Tooling man nutzt, wichtig ist etwas zu finden was sich schnell und einfach in die eigenen Flows integriert und dadurch eine Hilfestellung zu Abläufen und dem Fortschritt bietet. Denn dann ist eine Checkliste keine zusätzliche Arbeit, obwohl man sie ja pflegen muss, sondern eine nützliche Hilfestellung.
Falls ihr wiederkehrende komplexere Aufgaben habt, kann ich euch nur empfehlen mal einen Blick auf das Thema Checklisten zu werfen. Egal ob Softwareentwicklung, Server-Wartung oder Backups, ein roter Faden hat noch keinem geschadet und ein paar Haken sind wirklich schnell gesetzt. Solltet ihr bereits Checklisten einsetzen, würde mich euer Tooling und eure Herangehensweise sehr interessieren und über Kommentare würde ich mich sehr freuen.
Tessa App Version 2.2 veröffentlicht

Vor wenigen Stunden gab es mal wieder ein geplantes Update für die Tessa App. Ich versuche aktuell meinen „ein mal pro Quartal„ Release-Zyklus einzuhalten und bis dato funktioniert dies meist ganz gut.
Update 2.2.0 bringt ein überarbeitetes User Interface im Kontaktbereich und einen dedizierten Eintrag für die Statistik in der Hauptnavigation. Zuvor war der Statistik-Bereich nur indirekt erreichbar, was meiner Meinung nach eher unpraktisch war. Damit einher geht eine Änderung in der Kalenderansicht, welche die Anzeige der primären Aktivitätskategorie des jeweiligen Monats besser hervorhebt und dem Nutzer die Möglichkeit gibt schnell die dazugehörigen Aktivitäten zu überfliegen. Ebenfalls neu ist die Möglichkeit lokale Backups zu erstellen. Zuvor war es möglich seine Backups z.B. an Google Drive zu senden, was weiterhin eine Option ist, nun kann allerdings auch ein lokaler Geräteordner gewählt werden.
Patchday - OnUpgrade - Version 1.1.6 Maintenance Update

Vor wenigen Tagen wurden bereits meine Device Marketing Names Libraries aktualisiert und heute folgt nun meine OnUpgrade Library. Es gab neben kleinere Aktualisierungen der Abhängigkeiten, Aufräumarbeiten in der Beispiel-App, kleinere Fehlerbehebungen in der Readme und Aktualisierungen des Build-Systems. Dieser Release ist ein reiner Wartungs-Release und sollte nichts an der eigentlichen Funktionalität ändern. Falls ihr Fragen oder Anregungen zur Library habt meldet euch gerne in den Kommentaren.
Patchday - Device Marketing Names aktualisiert

Gestern gab es wieder einmal einen kleinen Patchday für meine aktuellen Projekte. Die Flutter und Android Versionen meiner Device Marketing Names Library wurden dabei mit neuen Daten ausgestattet, welche von meinem kleinen Dart Tool Device Identifiers geliefert werden.
Die aktuelle Flutter Library Version der lautet damit 0.6.2 open_in_new und bei Android haben wir Version 0.4.2 open_in_new erreicht. Letztere erhielt darüber hinaus ein paar Aktualisierungen der Abhängigkeiten. Funktional gab es keine Änderungen. Alle weiteren Informationen gibt es wie gewohnt in den Related Links und falls es Fragen gibt, meldet euch gerne in den Kommentaren.
Humble Tech Book Bundle: Cybersecurity by Packt 2023

Cybersecurity ist ein wiederkehrendes Thema hier im Blog und das mit Recht. Jeder von uns sollte ein gewisses Grundwissen in diesem Bereich haben, um sich und andere vor derartigen IT-Problemen schützen zu können.
Solltet ihr tiefer in den genanten Themenkomplex eintauchen wollen, könnte das Humble Tech Book Bundle: Cybersecurity by Packt 2023 vielleicht etwas für euch sein. Noch zwei Tage lang gibt es hier bis zu 24 Bücher, verteilt auf drei Stufen. Die erste gibt es wie gewohnt bereits ab 1 €, während alle Inhalte mindestens 16,97 € kosten. Dafür gibt es dann unter anderem Cyber Warfare - Truth, Tactics, and Strategies, Mastering Windows Security and Hardening und The Ultimate Kali Linux Book. Eine bunte Mischung aus allgemeinen Informationen, aber auch spezifischen Tipps zu Tools und der Anwendung von diesen. Falls ihr Interesse habt folgt einfach wie gewohnt den Related Links.
Devlog #1 - Project Space - Mein Einstieg in die Spieleentwicklung

Nachdem ich es bereits vielfach angesprochen habe, gibt es heute nun Devlog #1 zu meinem aktuell in der Entwicklung befindlichen Spiel. Eigentlich wollte ich vor dem ersten Artikel noch ein paar weitere Eckpunkte fertig planen, doch wenn ich jetzt nicht anfange zu schreiben, verliere ich selber den Faden. Damit bin ich auch schon bei meinem ersten generellen Learning in diesem Themenbereich: Spieleentwicklung ist selbst für erfahrene Softwareentwickler eine völlig neue Ebene an Themenbereichen in denen man sich verlieren kann.
Als Softwareentwickler bin ich sicherlich nicht der Erste, der sich denkt ein Spiel zu programmieren wäre super. Entsprechend habe ich diesen Plan schon sehr lange, allerdings fehlte mir die Zeit und Motivation mich in diesem Bereich einzuarbeiten. Um das Zeitproblem zu lösen habe ich im letzten Jahr meine bis dato aktiven Projekte in einen Zustand gebracht, der mir eine schnelle und einfache Maintenance inklusive Deployment erlaubt. Mit der dadurch freigewordenen Zeit stieg auch die Motivation und die ersten Game-Dev Gehversuche starteten in 2022. Doch fangen wir erst einmal mit meinem groben Plan und der eigentlichen Idee an.
Humble The Complete Python Programming MEGA Bundle

Python ist und bleibt eine extrem beliebte Programmiersprache und falls auch ihr euch mehr in selbige einarbeiten wollt, könnte das Humble The Complete Python Programming MEGA Bundle vielleicht interessant sein. Noch knapp zwei Tage habt ihr Zeit um es zu erwerben.
Enthalten sind bis zu 20 Kurse zu diversen Themengebieten im Python Kosmos. Aufgeteilt sind diese Inhalte auf drei Stufen, wobei die erste schon ab 1 € zu haben ist und alle Inhalte ab 19,31 € freigeschaltet werden. Dafür gibt es dann unter anderem Python Turtle Mini-Projects, Machine Learning with Python and Tensorflow und Python Projects - Object-Oriented Game.
Ein schönes Bundle mit abwechslungsreichen Inhalten für Anfänger, Fortgeschrittene und Profis. Sofern ihr Interesse habt folgt einfach wie gewohnt den Related Links für weitere Informationen.
Humble Pluralsight Beginners Web Development Bundle

Die Welt der Web-Entwicklung ist extrem vielseitig und falls ihr euch weiterbilden wollt oder erst einmal einen Einstieg sucht, dann könnte das Humble Pluralsight Beginners Web Development Bundle für euch durchaus relevant sein. Auf drei Stufen verteilt findet ihr bis zu 20 Kurse zum Thema. Für den Kauf bleiben euch noch etwas mehr als zwei Tage, insofern solltet ihr also zeitig zuschlagen. Die erste der drei Stufen gibt es ab 1 €, während das gesamte Bundle ab 23,52 € für euch freigeschaltet wird. Unter anderem könnt ihr euch Creating Offline-first Mobile Apps with HTML5, JavaScript: Functions und HTML, CSS, and JavaScript: The Big Picture sichern. Alle weiteren Informationen könnt ihr wie gewohnt den Related Links entnehmen.