ActiveSideDevice – mein eigenes Touch-Bedienpanel für den Schreibtisch

Ich habe vor einiger Zeit eine externe „Touchbar“ für über 150 Euro gesehen. Die Idee fand ich interessant. Ein kleines Display neben der Tastatur, auf dem die gerade benötigten Funktionen direkt erreichbar sind, könnte ich mir gut auf meinem Schreibtisch vorstellen. Bei dem Preis kam aber auch die Frage auf, ob sich etwas Ähnliches deutlich günstiger selbst bauen lässt.

Eine kurze Recherche brachte bereits ESP32-basierte Geräte mit Touchscreen für deutlich unter 50 Euro zum Vorschein. Ich habe mich schließlich für ein etwas größeres Gerät entschieden, das schon mit Gehäuse kommt und einfach per USB an den Computer angeschlossen werden kann. Die im Projekt verwendete Hardware ist ein Waveshare ESP32-S3-Touch-LCD-4.3B mit 4,3 Zoll und 800 × 480 Pixeln. Damit steht die Hardwarebasis für mein Projekt ActiveSideDevice.

Read full post gblog_arrow_right

UI-Sprache für ExApp-Seiten

Eine ExApp-Seite liegt in einem iframe und besteht aus HTML, das der Go-Dienst selbst ausliefert. Die Übersetzung von Nextcloud greift dort nicht. Wer in Nextcloud Deutsch eingestellt hatte, bekam bisher trotzdem englische Überschriften, englische Dialog-Buttons und englische Fehlermeldungen.

Ich habe go-nc-exapp um die Unterstützung der UI-Sprache erweitert. In der Navigations-Shell ermittelt die Library einmal pro Seite die Sprache, die Nextcloud für den jeweiligen Benutzer meldet. In dieser Sprache zeigt die Library ihre eigenen Bedienelemente an, also die Navigation und den Dialog. Die übrigen Texte der Seite bringt die ExApp selbst mit, auf Englisch und auf Deutsch. CheckDNS und StalwartAdmin sind die ersten ExApps, die beide Sprachen mitliefern.

Read full post gblog_arrow_right

Was KI Systeme können, und wen das ersetzt

Dass sich die Softwareentwicklung durch KI verändert, habe ich Anfang September schon beschrieben. Die Frage, die danach oft kommt, ist eine andere: Werden wir alle ersetzt?

Meine kurze Antwort: Das vermischt zwei Dinge. Die eine Achse ist Fähigkeit — wo ein System zuverlässig scheitert, und warum? Die andere ist Arbeit — was passiert mit Stellen und Rollen, wenn es innerhalb eines begrenzten Bereichs oft genug klappt? Ein unsicheres Assistenzsystem kann trotzdem Stunden ersetzen. Ein beeindruckender Demo-Agent kann trotzdem neue Aufgaben schaffen. Der IMF spricht von hoher Exposure — rund 40 Prozent der globalen Beschäftigung, rund 60 Prozent in fortgeschrittenen Volkswirtschaften — und betont zugleich: Exposure ist keine beobachtete Massenarbeitslosigkeit.

Read full post gblog_arrow_right

Mein Wechsel zu Go

Im privaten Bereich bin ich von Java auf Go gewechselt. Auslöser ist, dass die Arbeit mit KI die Softwareentwicklung auf den Kopf gestellt hat. Was früher Nachschlagen, Boilerplate und viel Tippen war, erledigt ein Assistent heute in kurzer Zeit. Übrig bleibt die Frage, ob man das Ergebnis versteht, prüfen kann und später noch ändert.

Dass sich der Alltag dadurch verändert, habe ich Anfang September schon beschrieben. Hier geht es um die Folge für die Wahl der Sprache im Backend: Go auf der einen Seite, Java mit Spring Boot oder Quarkus auf der anderen. Die Punkte habe ich für mich neu geordnet. Es sind Überlegungen aus der eigenen Arbeit, keine Messreihe.

Read full post gblog_arrow_right

MinimalesLLM: ein kleines Sprachmodell zum Anfassen

Auf dev.neitzel.de habe ich beschrieben, was Large Language Models sind und wie sie arbeiten. Das bleibt Theorie, solange man die Maschine nicht selbst laufen sieht. Deshalb habe ich dieselbe Arbeitsweise in einem kleinen Go-Projekt umgesetzt: MinimalesLLM.

MinimalesLLM ist ein winziges neuronales Netz. Es trainiert auf einer normalen CPU, ohne Grafikkarte und ohne großes Rechenzentrum. Die Texte sind keine Sätze und keine Dialoge, sondern einzelne kurze Wörter, Vornamen, Buchstabe für Buchstabe. Das Netz lernt, welches Zeichen als Nächstes wahrscheinlich folgt, hängt dieses Zeichen an und macht weiter, bis das Wort zu Ende ist. Wer einen Anfang vorgibt, bekommt eine Fortsetzung. Ohne Anfang zieht das Programm selbst ein neues kurzes Wort.

Read full post gblog_arrow_right