Boehrsi.de - Neues Backend im Mai
Wie bereits erwähnt geht die Entwicklung meines neuen Backends für Boehrsi.de gut voran und ich plane den Rollout im Mai. Darin enthalten sind dann verschiedene Anpassungen, die sich größtenteils im Hintergrund abspielen. Sichtbar werden kleinere Änderungen bei den Kommentaren und der Suche sein, am relevantesten dürfte aber das neue Gewinnspielsystem sein. Es ist nun von den Kommentaren getrennt und benötigt nach initialer Teilnahme eine Bestätigung in einem zweiten Schritt. Dieser sollte für normale Nutzer keinen allzu großen Aufwand darstellen, dürfte aber die Script Kiddies etwas stören. Damit hoffe ich wieder verlässlich Gewinnspiele veranstalten zu können, ohne das einzelne Individuen die gesamte Veranstaltung für alle torpedieren. Sollte letzteres allerdings der Fall sein wird es vermutlich keine weiteren Umbaumaßnahmen und entsprechend Gewinnspiele mehr geben.
Open Source Projekte unterstützen
Open Source Software ist in vielen Bereichen meines IT-Lebens sehr relevant. Egal ob ich an meinem PC arbeite oder etwas auf dem Server konfiguriere, diverse Programme, Tools und ganze Betriebssysteme bewegen sich bei meiner täglichen Nutzung im Open Source Bereich.
Auch wenn Open Source nicht zwangsweise kostenlos bedeutet, sind die meisten Tools die ich in diesem Kontext verwende gratis. Selbige müssen aber natürlich trotzdem finanziert werden und aus diesem Grund versuche ich mindestens einmal im Jahr verschiedenen Open Source Projekte zu unterstützen. Dabei geht es nicht um gigantische Beträge und auf die Menge möchte ich auch gar nicht speziell eingehen, sondern nur auf den Fakt das ich etwas Spende. Denn vielleicht schaffe ich es damit den einen oder anderen ebenfalls mit der Idee anzustecken, sodass etwas mehr bei den Open Source Projekten eurer Wahl ankommt.
Ich werde dieses Jahr auf jeden Fall wie gewohnt Let’s Encrypt etwas Geld zukommen lassen. Doch auch Thunderbird möchte ich dieses Jahr unterstützen, denn ich nutze den Mail-Client nun schon sehr lange und bin durchaus glücklich nicht diverse Web-Interfaces abarbeiten zu müssen, sondern alles an einem Ort zu haben.
Die finale Spende geht dieses Jahr an Godot, die Game-Engine mit der ich zur Zeit mein erstes Spiel entwickle. Godot ist die Basis für mein Projekt und ermöglicht es mir meine Idee umzusetzen, ohne Kosten und mit einem meiner Meinung nach sehr fairem Einstiegsniveau.
Als Alternative zu monetären Mitteln ist es natürlich auch möglich sich aktiv an Open Source Projekten zu beteiligen, sofern es die eigenen Fähigkeiten zulassen. Dabei gibt es neben reinen Programmieraufgaben auch diverse andere Dinge bei denen man vielleicht unterstützen kann.
Willkommen im Internet, wo jeder ein Profi-Spieleentwickler ist
Im Internet sind bekanntlich alle Fachleute, mit fundierten Informationen und objektiven Meinungen. Zum Beispiel im Twitch Chat oder auf anderen gängigen Plattformen hat entsprechend jeder eine Meinung, die natürlich extrem relevant ist, meinen zumindest die Ersteller. Generell versuche ich mich aus wertenden Diskussionen in diesem Kontext raus zuhalten, denn am Ende hat dergleichen ohnehin meist einen sehr geringen Mehrwert. Doch manchmal mache ich den Fehler und verfolge eine Konversation, so geschehen an den Ostertagen und das ist auch der Grund warum ich mal wieder meine Fail Kategorie befüllen muss.
Alle Godot Engine Nodes erklärt
Für die Entwicklung meines Spiels nutze ich wie bereits mehrfach erwähnt die Engine Godot. Godot kann für 2D und 3D Spiele genutzt werden und entsprechend gibt es diverse Komponenten, welche man nutzen kann. In Godot spricht man meist von Nodes und selbige sind meist sehr einfach und logisch nutzbar. Doch um eine Node nutzen zu können, muss man natürlich wissen das selbige existiert.
Bevor man jetzt langwierig die gesamte Godot Dokumentation open_in_new ließt, wobei mitunter sicherlich nicht alles hängen bleibt, kann man auch ein extrem kurzweiliges, aber dennoch sehr informatives Youtube Video konsumieren. Das Video von Lukky open_in_new schneidet alle 219 Godot Nodes (Stand Ende 2023) an und gibt euch so, in etwas mehr als einer halben Stunde, einen sehr guten Überblick. Mit selbigem kann man sich dann weiter informieren. Ich fand das Video sehr interessant und habe einige Nodes kennengelernt die mir zuvor nicht bekannt waren. Falls ihr also auch mit Godot arbeitet oder aber dies plant, schaut euch das Video doch mal an.
Als kleine Randnotiz kann ich übrigens sagen, dass auch die weiteren Videos von Lukky sehr interessant und durchaus einen Blick wert sind.
Boehrsi.de Backend erhält Dart Rewrite
In den letzten Monaten habe ich neben der Weiterentwicklung meines Spiels, auch eine Neuentwicklung meines Blog-Backends in Dart vorangetrieben. Grund dafür war vor allem das Interesse an den neuen serverseitigen Möglichkeiten von Dart open_in_new. Denn neben Clients in Flutter oder Dart Konsolen Tools, gibt es mittlerweile diverse Ansätze um Dart auf Servern nutzen zu können. Für mich ist dies vor allem spannend, da Dart Code zu einer nativen Binary File wird und keine Runtime braucht, im Vergleich zu z.B. Java oder Kotlin. Letzteres ist für meine aktuelle Lösung nötig und bedeutet das Java und alles was dazugehört auch dem Server aktiv sein muss. Auch wenn dies generell kein Problem ist, so bin ich ein Freund von Programmen oder Tools die als einzelne Binary File ausgeliefert und genutzt werden können, ohne weitere Konfiguration auf dem Host-System. Dadurch werden Deploy und Update Prozesse einfacher und in meinem speziellen Fall hoffe ich die RAM Nutzung optimieren zu können.
Godot Editor mit Custom Themes
Da ich aktuell wieder etwas mehr Zeit finde, um an Project Space weiterzuarbeiten, nutze ich natürlich auch den Godot Editor wesentlich mehr. Verbunden mit dem Update auf Godot 4 habe ich auch im Kontext von Themes und anderen Verbesserungen für den Editor die Augen offengehalten und bin auch ein schlichtes, aber sehr praktisches Theme gestoßen.
Migration von WillPopScope zu PopScope
Deprecation ist etwas natürliches in der Softwareentwicklung. Code Teile werden als veraltet markiert, Alternativen werden geschaffen und die Entwickler wechseln auf die neuen Klassen und Methoden. Leider kommt es immer wieder vor, dass die angebotene Alternative anders funktioniert als erwartet oder gewünscht und es entsprechend zu Problemen kommt.
Selbiges Problem habe ich mit der Migration von WillPopScope open_in_new zu PopScope open_in_new. Beide sind dafür zuständig in einer Flutter App die normale Behandlung des Back-Buttons zu verändern. Ich nutze dies z.B. in meiner Tessa App. Mit WillPopScope gab es keine Probleme, aber aufgrund einer Änderung im Android System mussten die Flutter Entwickler hier etwas neues schaffen, um auch die Funktionen in neueren Android Version zu unterstützen.
Während WillPopScope für meine verschiedenen Fälle immer funktionierte, nutzt PopScope einen anderen Ansatz und zwang mich zum umdenken. Dabei geht es nicht nur mir so, wie der GitHub Issue open_in_new zum Thema zeigt.
Content - Wo geht die Reise hin
Abseits der geänderten Frequenz der Blog-Beiträge (ich berichtete), überlege ich auch seit längerem wie ich bezüglich des Contents weiter mache. Im letzten Jahr berichtete ich viel über meine Projekte, Battlefield, Flutter, Gaming & Software Bundles, Angebote im Online Shopping und veranstaltete diverse Gewinnspiele.
Einige Beiträge hatten entsprechend Tiefgang, der Großteil war aber eher reines Informieren, über Dinge die auch an anderer Stelle nachlesbar sind. Während dies generell kein Problem ist, möchte ich die Verteilung dieser Inhalte ändern. Dies bedeutet das ich mehr Content erstellen will den es nur hier gibt. Dabei geht es nicht zwangsweise um lange Tutorials oder umfangreiche Devlogs, sondern z.B. auch um kleine Beiträge zu Dingen die mir während der Softwareentwicklung aufgefallen sind.
In den nächsten Monaten werde ich entsprechend versuchen meinen Content etwas anzupassen, denn wenn ich schon weniger schreibe, möchte ich zumindest sinnvollere Inhalte erstellen. Was sinnvoll ist und was nicht liegt dabei natürlich im Auge des Betrachters. Den Anfang macht heute eine neue News Sammlung zum Thema Flutter. In selbiger werde ich gezielt auf Probleme oder Learnings eingehen, die ich während der Entwicklung hatte und wie ich mit selbigen umgegangen bin. Die Inhalte werden durchaus spezifisch sein, aber vielleicht helfen sie dem einen oder anderen da draußen ja trotzdem.
Devlog #6 - Project Space - Update auf Godot 4 geplant
Es ist schon fast ein bisschen traurig wie lange das letzte Update zu Project Space her ist. Doch leider wissen wir ja alle wie es ist, denn Zeit ist ein sehr begrenztes Gut und vor allem im letzten Quartal 2023 war ich mit meinem Umzug und diversen weiteren Dingen komplett ausgelastet. Auch wenn der Großteil in diesem Bereich abgeschlossen ist, so gibt es weiterhin diverse Aufgaben zu erledigen, sodass ich definitiv generell etwas weniger Zeit haben werde.
Es bleibt allerdings dabei, Project Space hat von meinen Softwareprojekten die höchste Priorität und wird entsprechend weiterentwickelt. Abseits davon habe ich noch einige Inhalte die ich noch nicht in Form von Beiträgen verarbeitet habe, ihr könnt euch also auf weiteren Content freuen. Denn zuletzt habe ich gute Fortschritte bei diversen Kernsystemen, dem Content und verschiedenen kleinere Teilbereichen gemacht.
Patchday - Frische Library Updates
Neben meinem Blog waren auch meine Libraries in den letzten Monaten auf Eis gelegt. Dies habe ich letzten Sonntag behoben, mit neuen Updates für alle meine aktiven Libraries. Konkret wurden Device Marketing Names – Dart Version 0.8.0, Device Marketing Names – Kotlin Version 0.5.0 und OnUpgrade Version 1.1.9 veröffentlicht.
Weitere Informationen zu den jeweiligen Updates findet ihr im unteren Teil des Beitrags.
- Device Marketing Names - Dart / Flutter Projektseite open_in_new
- Device Marketing Names - Dart / Flutter auf pub.dev open_in_new
- Device Marketing Names - Kotlin Projektseite open_in_new
- Device Marketing Names - Kotlin auf Maven Central open_in_new
- OnUpgrade Projektseite open_in_new
- OnUpgrade auf pub.dev open_in_new