Jahresrueckblick 2024 und Ideen für 2025

Was war, was vielleicht sein wird

Für das ausgehende Jahr 2024 hatte ich mir einiges vorgenommen. Ende Dezember ist ein guter Zeitpunkt für eine Bilanz, zumal ich mit meinem gegenwärtigen Energielevel während der Festtage kaum noch viel leisten werde.

Ich wollte mich mit den Programmiersprachen Erlang, Rust, Haskell, TypeScript und mit Shell-Skripting befassen. Weitere Technologien auf meiner Liste waren Ansible und Hugo. Lesen wollte ich Software and Mind von Andrei Sorin. Was ist daraus geworden?

Erlang und Haskell

Im Januar habe ich mich mit Erlang befasst. Hier wollte ich das Standardwerk Programming Erlang von Joe Armstrong durcharbeiten. Das habe ich auch zu einem grossen Teil gemacht, wovon mein learning-erlang-Repository zeugt.

Etwas negativ überrascht vom Buch war ich, als ich die JSON-Serialisierung ausprobieren wollte. Diese hat schlichtweg nicht so funktioniert, wie es im Buch beschrieben ist. Grund dafür ist, dass Armstrong die Lösung beschrieb, die er gerne gesehen hätte. Umgesetzt ist es so bis heute nicht in Erlang. Ich halte das für eine gröbere Verfehlung.

Warum ich dann Ende Januar bei Kapitel 14 ausgestiegen bin, daran erinnere ich mich nicht mehr so genau. Ich weiss nur, dass ich mich ab Ende Januar wieder mit Haskell beschäftigt habe, wovon Commits in meinem learning-haskell-Repository zeugen. Auch das habe ich nur bis Anfang März durchgezogen, da ich mit keinem der beiden Bücher ‒ Effective Haskell und Haskell in Depth ‒ so richtig warm geworden bin.

Rust und Web-Technologien

Offebar war mir Haskell eine Stufe zu hoch, und ich bin dann auf Rust umgeschwenkt. Das habe ich ein halbes Jahr sehr konsequent durchgezogen ‒ und keinen Tag verpasst. Einen kleinen Rückblick habe ich in meinem Tagebuch darüber geschrieben. Das war eine sehr lehrreiche Zeit.

Eine ernsthafte Beschäftigung mit Rust würde aber verlangen, dass ich mich tiefer in async einarbeite. Auch Makros sind völlig auf der Strecke geblieben. Immerhin konnte ich mein Grundlagenwissen festigen, sodass ich bei Bedarf gerne wieder in Rust einsteigen kann.

Aus meiner Frustration mit Angular heraus, das ich bei einem Kunden einsetzen musste, wollte ich mich dann das vierte Quartal mit Web-Technologien befassen. Der Plan war es, im Oktober JavaScript, im November TypeScript und im Dezember Angular zu lernen. Das Projekt nannte ich Daily Frontend Grind. Zwar habe ich mich jeden Tag mit den Technologien befasst, ich bin aber nicht über TypeScript hinausgekommen. Meine Frustration mit dem Buch Essential TypeScript 5 hatte dazu geführt, dass ich nur sehr langsam vorwärts gekommen bin. Da ich Angular vorerst nicht einsetzen werde, darf das auch ruhig auf der Strecke bleiben. Immerhin kenne ich mich jetzt einigermassen mit TypeScript aus.

Weitere Technologien

Im Februar habe ich diese Webseite dann in Hugo mit einem eigenen Template neu aufgebaut. Ich bin mit dem Ergebnis recht zufrieden, obwohl die mobile Version nur im Breitformat akzeptabel aussieht. Go Templates haben mich leider nicht überzeugen können, aber ich kann damit einigermassen arbeiten.

Für die Schule habe ich Hugo auch verwendet, um meine Modulunterlagen (Modul 346 und Modul 331) einfacher verfügbar zu machen. Hierzu habe ich das mächtige Relearn-Theme für Hugo verwendet. Die Webseiten werden mit Ansible deployed, womit ich mich gelegentlich etwas befasst habe, aber kaum systematisch. Immerhin konnte ich damit eine Menge automatisieren.

Aus der Not heraus ist im Spätsommer das Projekt achim entstanden, womit ich Cloud-VMs automatisch bereitstellen kann. (Ich habe andernorts bereits darüber geschrieben.) Immerhin soll das Projekt nun die Grundlage dafür sein, die Laborumgebung an der Berufsschule loszuwerden und durch eine Public Cloud zu ersetzen. Dieses Projekt wird mich 2025 voraussichtlich stark beschäftigen.

Kurioserweise habe ich mich 2024 nicht mit der Unix-Shell, sondern mit der PowerShell befasst. Müsste ich einmal im Windows-Umfeld etwas automatisieren, käme ich doch recht gut damit zurecht. Da man im Microsoft-Umfeld mittlerweile das meiste über die PowerShell lösen kann, sind Sachen wie Azure für mich nun auch etwas erträglicher geworden. Mal schauen, ob ich es produktiv einsetzen werde.

Eine Resteverwertung des Jahres 2024 habe ich im Debian Adventskalender 2024 vorgenommen. Die Resonanz auf meine Beiträge war gemischt, aber immerhin habe ich noch einmal gewisse Sachen reflektiert, die sonst liegengeblieben wären (z.B. DuckDB oder der Lua-Filter für Pandoc).

Auf der Arbeit habe ich mich wieder mit Ruby und Rails und teilweise etwas mit Python im CAD-Umfeld beschäftigt. Ruby ist dort schön, wo es funktional eingesetzt wird.

Ende Jahr habe ich aus einer Laune heraus einen neuen Blog angefangen: Read, Think, Write. Leider schreibe ich darauf nicht so häufig, wie ich mir das ursprünglich erhofft hatte. Aber es bietet mir eine gute Plattform um kürzere Artikel auf Englisch zu publizieren.

Auch hatte ich mich kurz noch mit dem Stable Marriage Problem befasst. Die geplante umfassendere Beschäftigung mit Algorithmen zur Entscheidungsfindung ist daraus leider nicht entstanden. Ein neues ungelesenes Buch in meinem Bücherregal erinnert mich immer noch schmerzlich daran.

Weitere Aktivitäten

Im ersten Halbjahr konnte ich meine Lehrerausbildung abschliessen. Jetzt darf ich mich offiziell Berufsschullehrer im Nebenamt nennen und bis zu einem Pensum von 50% an einer Berufsschule unterrichten.

Auch Schlagzeug habe ich dieses Jahr gespielt. Besonders angetan hat es mir Mark Zonder, der ehemalige Schlagzeuger von Fates Warning. (Diese Band war 2024 mein klarer Favorit, was der Spotify-Jahresrückblick mir bestätigte.) Seine Performance zu Monument hat mich davon überzeugt, mir doch ein Double-Bass-Pedal zu kaufen. Leider habe ich damit nicht so fleissig geübt, wie ich mir das erhoffte.

Im Sommer habe ich Discipline Equals Freedom von Jocko Willink gelesen. Dies war für mich das einflussreichste Buch in diesem Jahr, zumal ich seit August um 5 Uhr morgens aufstehe und zuerst einmal Sport mache. Im Dezember wurde es dann sogar 4:30 Uhr morgens, sodass ich um 4:45 Uhr mit dem Training auf dem Ruder-Ergometer anfange, das bis 5:45 Uhr dauert. Nach einem kurzen Unterbruch im September durch eine Erkältung konnte ich das bis nach Weihnachten durchziehen, als mich ein Hexenschuss kurz ausser Gefecht setzte. Ich will das Rudern unbedingt weiterführen. Das Aufstehen um 4:30 Uhr bereitet mir überhaupt keine Mühe und geschieht nun fast automatisch.

Das Buch Software and Mind habe ich leider nicht gelesen. Zwar habe ich mir die gedruckte Ausgabe antiquarisch besorgt, bin aber kaum über die ersten 200 Seiten herausgekommen. Vielleicht sollte ich gelegentlich noch einige Passagen daraus lesen um zu schauen, ob ich mein Interesse daran wieder wecken kann.

Gelesen habe ich allgemein eher wenig. Zumindest kann ich mich nicht an viele Bücher erinnern. Der Pate war eine interessante Lektüre; gerade der Vergleich zum Film, denn dieser zeigt viele interessante Szenen nicht. Ansonsten habe ich vor allem technische Bücher durchgearbeitet, wovon ich andernorts berichtete.

Ausblick

Für 2025 nehme ich mir bewusst wenig vor. Zum einen möchte ich mich erneut mit Clojure befassen, weil es meiner Meinung nach eine der schönsten Programmiersprachen ist. Auch rudern möchte ich weiterhin täglich. In der Schule möchte ich das Modul über agile Softwareentwicklung etwas neu konzipieren. Im Zentrum sollen Essays über die Softwareentwicklung und Übungen in TypeScript stehen.

Lange habe ich mit dem Gedanken gespielt, das nächste Jahr Concrete Mathematics durchzuarbeiten. Vielleicht mache ich das ab dem 2. Quartal, wenn ich mit Clojure produktiv arbeiten kann.

Was meine Firma betrifft, werden wir uns dieses Jahr etwas neu ausrichten. Hierzu kann ich derzeit noch nicht viel sagen. Wichtig ist mir aber, dass ich an Sachen arbeiten kann, die mir auch eine gewisse Freude machen. Fürs Geld alleine könnte ich mich ja schliesslich auch irgendwo anstellen lassen.

Das Thema Minimalismus möchte ich nach zehn Jahren wieder aufgreifen. Meine erste richtige Wohnung, in die ich im Sommer 2015 eingezogen bin, war sehr spartanisch eingerichtet. Mit dem Einzug meiner Frau hatte sich einiges geändert. Seither hat sich vieles angesammelt. Nun bin ich dabei, viele Sachen zu verkaufen und zu entsorgen. Noch wichtiger aber ist, dass ich mir nur noch nötige und hochwertige Sachen anschaffe. Unordnung erzeugt Stress, und ich möchte lieber Ruhe.

Zum Minimalismus gehört auch digitaler Minimalismus, womit ich mich dieses Jahr mehrmals beschäftigte. Von den News konnte ich mich nun schon fast drei Jahre fernhalten. Nun möchte ich den Computer nur noch als Arbeitsgerät verwenden bzw. nur in einem sehr kontrolliertem Ausmass für Unterhaltung. Hier arbeite ich noch an der richtigen Balance: zu strenge Regeln kann ich nicht einhalten, also muss ich etwas experimentieren. Immerhin schaue ich wesentlich weniger Videos als noch vor einem Jahr. Seit Frühling habe ich zudem kein Computerspiel mehr gestartet. Aus Social Media habe ich mich auch zurückgezogen.

Nachtrag (12.01.2025)

Fast hätte ich es vergessen: Ich habe letztes Jahr die Linux-Zertifizierung LPIC-1 bestehend aus den beiden Prüfungen LPIC-102 und LPIC-102 abgelegt. LPIC-101 haben wir zu dritt in einer Lerngruppe organisiert. Nach der Prüfung LPIC-101 im Juli habe ich mir den zweiten Teil selbständig in zwei Wochen angeeignet und die Prüfung LPIC-102 ohne grössere Probleme abgelegt.

LPIC-2 habe ich mir zwar 2025 nicht als Ziel gesetzt, es könnte aber ab dem zweiten Quartal zu einem Thema werden.