Mein Rückblick auf das Jahr 2022

Wie jedes Jahr, schreibe ich in den letzten Wochen des Jahres immer ein kurzes Review über das vergangene Jahr. Dies ist besonders für mich immer interessant, da ich mir wirklich bewusst nochmal Gedanken dazu mache, was gut oder schlecht gelaufen ist. Aber durch den Beitrag hier erhaltet ihr auch einen Einblick und vielleicht ein wenig Inspiration.

Gerade nutze ich die Zeit diesen Beitrag zu schreiben, auf dem Weg nach Köln zur diesjährigen Firmenveranstaltung. Es ist auch was besonderes dieses Jahr. Denn Tricept feiert den 22. Geburtstag. Darum sind neben den Mitarbeiterinnen und Mitarbeiter auch z.B. Kunden eingeladen. Auch für mich ist es dieses Jahr etwas besonderes. Denn ich bin nun auch schon seit 10 Jahren bei Tricept mit dabei.

Als ich vor 10 Jahren meine Ausbildung zum Fachinformatiker in der Anwendungsentwicklung angefangen habe, hätte ich nie gedacht so lange hier zu bleiben. Da ich zuvor eine Ausbildung zum Koch absolviert hatte, kannte ich viele Kollegen die oft nur wenige Jahre oder gar Monate in einem Betrieb gearbeitet haben.

Doch nicht bei Tricept. Nach meiner Ausbildung wurde ich übernommen und die Projekte und Aufgaben wurden immer vielfältiger und spannender. Natürlich aber auch fordendern und anspruchsvoller. Wenn ich zurück auf die letzten gut 8 Jahre blicke, die ich hauptsächlich im Bereich für Phoenix II gearbeitet habe, ist es wirklich erstaunlich was wir für ein tolles Produkt entwickelt haben und was ich auch alles dazu beitragen konnte.

Mittlerweile ist mein Beruf wirklich viel mehr als nur das reine Arbeiten. Es ist meine Berufung. Ich stecke neben der Arbeit auch in meiner Freizeit wirklich sehr viel Zeit in private Projekte und das Kennenlernen von neuen Funktionen, Packages oder Technologien. Dies ist auch der Grund, warum ich Tools wie Sitealarm.de, Zhylon.de oder meinen URL-Shortener entwickelt habe und auch ständig weiter am laufen halte.

Dieses Jahr war geprägt von vielen Änderungen. Auch durch einen Umzug in Sommer, musste ich viele Gewohnheiten umstellen und die neue Umgebung auf mich einwirken lassen. Insgesamt hatte ich dieses Jahr recht wenig Zeit in private Projekte gesteckt. Erst jetzt so gegen Ende Oktober gelingt mir es wieder besser.

Insgesamt glaube ich aber, dass ich meine privaten Ziele gut eingehalten habe und auch einige Projekte weiterentwickeln konnte. Ich habe mir ja extra nicht zu viel vorgenommen. Etwas schade finde ich jedoch weiterhin, dass ich viel zu wenig hier auf meinem Blog schreibe oder auf Twitter poste. Das werde ich vermutlich dann nächstes Jahr angehen.

Technologisch habe ich noch intensiver mit ClodFlare beschäftigt. Habe hier z.B. die Zero Trust Technology angesehen. Auch im Bereich Server Management im Bezug auf Zhylon habe ich einiges neues gelernt. Und mein Projekt Management Tool ist mittlerweile soweit ausgereift, dass es schon einige Bekannte als echte Lösung verwenden.

Ich hoffe das nächste Jahr geht genau so gut weiter wie es aktuell läuft. Noch etwas mehr Zeit für die Familie und vielleicht auch weiterhin mehr Bewegung durch Fitness.

Ich empfehle dir auch Mal auf die freien Stellen bei Tricept mal zu schauen. Wenn sich die Digitalisierung interessiert und eine Ausschreibung auf dich zu trifft, dann bewerbe dich gerne bei der Tricept.

Nun heißt es anpacken und die letzten Wochen des Jahres noch super abschließen.

Verschlüsselung der .env Datei

In modernen Anwendungen wie z.B. Laravel, werden häufig „.env“ Dateien verwendet, um Zugangsdaten für die Datenbanken, API-Token oder andere Zugangsschlüssel zu speichern (siehe https://dotenv.org/). Dies hat den Vorteil, dass diese nicht im Quellcode der Anwendung hinterlegt werden müssen und so an einer zentralen Stelle gespeichert werden. Außerdem kommen sie so nicht in die Versionskontrolle wo sie ggf. von Personen außerhalb des Projektes gelesen werden könnten.

Sobald ein neuer Wert in dieser Datei hinterlegt wird, muss dieser auch bei allen Entwickler im Team hinterlegt werden oder in die produktive Umgebung eingespielt werden. Gerade wenn es hierfür keinen richtigen Prozess gibt, wie die Zugangsdaten dann verteilt werden, könnte dies wieder unsicher übertragen werden. Vielleicht wird hier eine Rundmail geschrieben oder mit einer Message via Slack, Teams oder gar in WhatsApp verschickt. Und sollten sich die Werte auch nicht in Produktion automatisch oder per Deployment aktualisieren, dann muss hier auch immer händisch noch der richtige Wert hinterlegt werden.

Eine Lösung hierfür kommt von Dotenv selbst und bietet eine Synchronisierung. Doch wer Kosten sparen möchte oder eine Cloud Lösung nicht in Frage kommt, der steht wieder vor dem Ausgangsproblem.

Darum habe ich ein kleines Package gebaut, mit dem man die .env Datei sicher im Repository hinterlegen kann, ohne das es hier zu Bedenken der Sicherheit kommt. Mit dem Package lässt sich die lokale .env Datei sicher verschlüsseln und damit auch in das Repository einchecken. Andere Personen im Team können diese dann auschecken und dann wieder entschlüsseln. Das gleiche geht auch für die produktive Umgebung. So muss nur noch der geheime Schlüssel bekannt sein, welcher nur für ausgewählte Personen im Team bekannt ist.

Das Package findest du wie immer bei GitHub. Es befindet sich noch in der aller ersten Version: https://github.com/TobyMaxham/laravel-envcrypter

Meine Tech-Pläne für 2022

Die letzte Woche aus 2021 hat nun begonnen. Zeit das vergangene Jahr nochmal zu reflektieren und zu schauen, was man alles erreicht hat, vielleicht gerade noch daran arbeitet oder aus verschiedensten Gründen dieses Jahr nicht mehr erreichen wird. Wie jedes Jahr habe ich das auch zusammen gefasst und muss sagen, daß ich allgemein ganz zufrieden bin. Hier geht es zum Beitrag

In diesem Beitrag soll es nun aber um die technischen Ziele gehen, welche ich mir für das nächste Jahr gesetzt habe. Da ich 2021 noch nicht alles erreicht habe, was ich mir vorgenommen habe, werde ich an einigen Projekten wohl noch weiter arbeiten.

Projekt UX9 URL Shortener

In meiner Serie zum Laravel Upgrade habe ich ja schon den Upgrade Prozess für Laravel 8 beschrieben. Mit dem Release von Laravel 9 und PHP 8.1 wird dies wohl das erste Projekt im neuen Jahr sein, das mit dieser Technik umgesetzt wird. Es fehlen auch noch ein paar Anpassungen an der API sowie Sicherheitsvorkehrungen, bevor der Puplic Access wieder hergestellt werden kann. Das Kürzen von URLs ist derzeit ohne Account nicht möglich. Hintergrund ist die Häufung von Phishing URLs. Hier geht es zur Anwendung: https://ux9.de/

Projekt Sitealarm

Auch hier soll die Codebasis auf Laravel 9 und PHP 8.1 umgestellt werden. Hier habe ich auch bereits angefangen. Es gestaltet sich jedoch sehr aufwendig, da ich hier als Basis Laravel Spark verwendet hatte und dies nicht mehr verwenden möchte. Außerdem läuft die Webanwendung auf einem Hosted Server, auf dem offiziell PHP 8.1 noch nicht unterstützt wird. Ich werde das Projekt wohl auch in meinem Blog regelmäßig als Thema verwenden. Ob ich eine App dazu rausbringen werde, kann ich heute noch nicht sagen. https://sitealarm.de/

Projekt Elnu CDN

Dieses Projekt habe ich nun einige Jahre schleifen lassen und nur privat verwendet. Doch auch hier leider nicht überall. Ziel war es zwar nie, eine große Reichweite zu erhalten oder mit großen Unternehmen zu konkurrieren. Prinzipiell geht es bei dem Projekt um den Lerneffekt und was man technisch alles für ein gut funktionierendes CDN benötigt. Im nächsten Jahr möchte ich hier versuchen, eine gute Basis für eine öffentliche Nutzung des Service zu schaffen. Dann sollen ausgewählte Benutzer die Möglichkeit bekommen, wie bei anderen Anbietern auch, eigene Repositories dem Netzwerk hinzuzufügen um so auch davon profitieren zu können. https://elnu.de/

Project Management

Dieses Projekt wird mich das ganze nächste Jahr beschäftigen. Das Projekt soll den Public-Status erreichen, sodass jeder der möchte daran mitarbeiten kann (Link zu GitHub, sobald öffentlich). Einen privaten Fork, für die original Anwendung, gibt es nun auch. Hier soll es noch viele Erweiterungen geben. Unter anderem sollen die Exporte noch besser werden, eine offizielle API soll geschafft werden und die Anbindung an das von meinem Arbeitskollegen (@santwer) programmierte Tool (Kouky) soll erweitert werden. Hier haben wir auch bereits einen Fork erstellt, der hier als optimierte Schnittstelle dienen soll. Wie wir das genau umsetzen ist noch nicht ganz sicher. Vermutlich wird es auf der selben Platform laufen wie das Hauptprojekt, ohne Verbindung zur offiziellen Seite von Kouky.

Hier geht es zur Website: https://proĵect.de/

Social Media und Öffentlichkeit

Ich möchte in 2022 wieder aktiver auf Twitter werden. Außerdem regelmäßig Blog Beiträge erstellen. Ich habe hier auch schon ein paar Ideen, wie mir das einfacher fallen kann. Damit verbundenen werde ich wohl auch endlich meine Website überarbeiteten und wieder ein bis zwei Mal pro Monat einen Newsletter verschicken. Fürs erste plane ich ca. 7 Tweets pro Woche, also ca. einen Tweet pro Tag. Das sollte eigentlich machbar sein. Vor allem werde ich auch Links teilen und Empfehlungen für Packages und Tutorials veröffentlichen.

Ich habe mir hoffentlich nicht zu viel für das kommende Jahr vorgenommen. Doch sind mir diese Projekte sehr wichtig, weshalb mir ein erfolgreiches Gelingen dieser Ziele sehr am Herzen liegt. Ein paar Projekte sind aber auch stark von der Entwicklung der Corona Pandemie abhängig, da ich z.B. beim Elnu und „Projects“ im engen Kontakt mit ein paar Freunden stehe und dieser durch Corona leider eingeschränkt ist. Trotzdem sind die Ziele machbar und durch verschiedene Meilenstein auch schrittweise erreichbar.

Rückblick auf ein ereignisreiches Jahr 2021

Es ist eigentlich jedes Jahr das gleiche. Der Dezember beginnt, mein Geburtstag naht und ich wundere mich jedes Mal darüber, wie schnell das Jahr wieder vergangen ist. In diesem Jahr habe ich die letzten Wochen etwas mehr Urlaub als sonst und kann das Jahr ganz in Ruhe mit der Familie ausklingen lassen. Zeit auch dafür, das Jahr noch einmal rückblickend zu bewerten und Ziele für das nächste Jahr zu setzen (könnt ihr hier nachlesen).

Auch dieses Jahr war wieder geprägt durch die noch anhaltende Corona Pandemie. Das habe ich selbst vor allem dadurch gespürt, dass sich meine privaten Projekte deutlich langsamer entwickelt haben, als ich ursprünglich wollte. Nicht nur durch die fehlenden engen Gespräche mit Freunden, auch das erhöhte Home-Office und mehr Zeit mit der Familie hatten darauf Auswirkungen. Nun muss ich aber sagen, dass dies ja nichts schlechtes ist. Mehr Zeit mit der Familie verbringen zu können ist wahrlich etwas schönes und ich genieße jede Minute, die ich mit ihnen verbringen kann. Auch das Home-Office bringt viele Vorteile mit sich. Es fallen gut zwei Stunden Fahrtzeit weg und auch die Spritkosten wirken sich positiv auf die Umwelt und den Geldbeutel aus.

Ich sehe es ein wenig wie eine inspirierende Auszeit an, um neue Ideen für neue und bestehende Projekte zu sammeln. Davon war das Jahr auch geprägt. Ich habe über 200 Stunden Tutorials bei Laracasts und auf YouTube angesehen. Viele neue Technologien ausprobiert, z.B. PHP 8.0 und 8.1, Tailwind CSS oder Laravel Livewire. Ich habe viel mit GitHub Actions experimentiert und meine DevOps Skills erweitert. Kurzum, ich habe viel Erfahrung gesammelt aber relativ wenig Projekte umgesetzt.

Projekt UX9 URL Shortener

Hier gab es wohl die größten Veränderungen. Gegen Ende des Jahres habe ich die Anwendung überarbeitet und auf Laravel 8 umgebaut. Außerdem für PHP 8.0 bzw. PHP 8.1 vorbereitet. Zudem gibt es nun für alle Klassen Unit Tests wodurch ich eine Code Coverage von über 90% erreichen konnte. https://ux9.de/

Projekt Zhylon und Deployer

Danke vor allem an meinen guten Freund Norbert, der hier nun viel Entwicklungsarbeit leistet. Zusammen konnten wir einige Updates einspielen was das Server Deployment nun deutlich erleichtert. Es gibt nun auch eine Version für kleine Teams und einen besseren Server Monitor. Zuletzt habe ich noch den OAuth2 Server aktiviert, wodurch ich neben MX-Codes nun auch Zhylon als Login verwenden kann. Gerne kann jeder sich beteiligen oder Beta Tester werden. Das Projekt wird noch einige Zeit brauchen, bis es komplett öffentlich werden kann. https://zhylon.de/

Projekt Management

Dieses Projekt hat vor etwa einem Jahr begonnen, da ich mit der Umstellung auf MacOS das von meinem Betrieb bereitgestellte Zeit-Buchungs-Tool nicht mehr nutzen konnte. Um mir das Buchen meiner Arbeitszeit etwas einfacher zu machen, habe ich ein altes Projekt wieder zum Leben erweckt und um einige neue Features erweitert. Norbert und Heiko konnte ich auch davon begeistern, sodass es nun regelmäßig mit großen und kleinen Updates ausgeschmückt wird. Nachdem wir bisher kein Namen für das Projekt finden konnten, haben wir nun endlich eine Domain gefunden und bestellt. Somit ist das Projekt nun ganz offiziell nutzbar https://proĵect.de/. Der Basiscode soll demnächst Open Source werden, sodass vielleicht eine Community entstehen könnte um noch mehr Features zu bekommen.

Wie ihr gelesen habt, bin ich mit dem ganzen Jahr eigentlich sehr zufrieden. Ich bin auch sehr froh darüber, dass mich die Pandemie nur am Rande betroffen hat und ich kaum größere Einschnitte dadurch gespürt habe. Ich hoffe auch das kommende Jahr wird wieder ein gutes und erfolgreiches Jahr.

Euch allen wünsche ich auf jeden Fall ein erfolgreiches, glückliches und gesundes neues Jahr.

Jahr des Bloggens

Nachdem ich mir heute die WordPress App erneut herunter geladen habe, musste ich mit Schrecken feststellen, dass ich im vergangenen Jahr 2019, lediglich vier Blogeinträge erstellt habe.

Bei näherer Betrachtung hatte ich noch etwa 10 als Entwurf vorbereitet, wovon aber mindestens die Hälfte nicht mehr aktuell sind oder das Thema nicht mehr passt.

Das möchte ich dieses Jahr drastisch ändern. Ich versuche mindestens einmal pro Woche einen Eintrag zu schreiben. Außerdem werde ich die Kategorien anpassen und vermutlich auch regelmäßig kleinere Beiträge schreiben, bei denen ich das ganze SEO-Thema nicht ganz so ernst nehmen werde.

Den Content werde ich dann noch teilweise für meinen Newsletter verwenden, der ja auch in der Häufigkeit etwas abgenommen hat. Zuletzt werde ich in unbestimmten Zeitabständen alle möglichen Neuerungen meiner Apps hier präsentieren. Da wurde ich in den letzten Wochen immer wieder darauf angesprochen.

Die entsprechenden Erinnerungen habe ich bereits in Todoist hinterlegt, sodass ich es nicht vergessen werde.

Der nächste Eintrag wird von meinen letzten Upgrades Richtung PHP 7.4 und Laravel 6 handeln.