
Durch „Zufall“ im Wald diese Muster gefunden. Das habe ich mal mit dem neuen GPT-5 Modell analysieren lassen. Das Ergebnis: „GPT-5 Bildanalyse – Git Test-Repo für Raspberry Pi ua. – Zufall oder Schöpfung“ weiterlesen
Sollte in Maven-Multiprojekten in der Sub pom.xml eine Version angegeben werden oder nur in der Haupt pom.xml?
In Maven-Multiprojekten (Multi-Module-Projekten) gilt als Best Practice, die Version ausschließlich in der Haupt- (Parent-) pom.xml zu definieren und in den Submodul-poms keine eigene Versionsangabe für das Artefakt zu machen.

Submodule erben die Version automatisch vom Parent, sofern im Submodul kein eigenes
Praxisbeispiel: „Sollte in Maven-Multiprojekten in der Sub pom.xml eine Version angegeben werden oder nur in der Haupt pom.xml?“ weiterlesen
Welche Sprachen müsste man sprechen, um 90 % der Weltbevölkerung zu erreichen?
Um etwa 90 % der Weltbevölkerung sprachlich zu erreichen, reicht es nicht, nur die meistgesprochenen zehn Sprachen zu beherrschen. Denn die Sprecherzahlen überschneiden sich teilweise (viele Menschen sprechen mehr als eine dieser Sprachen), und die Weltbevölkerung verteilt sich auf Tausende von Sprachen. Dennoch gibt es Schätzungen, welche Sprachen man sprechen müsste, um möglichst viele Menschen zu erreichen:
Laut mehreren Quellen benötigt man etwa 12 bis 15 Sprachen, um 90 % der Weltbevölkerung zu erreichen. Die wichtigsten sind:

Diese Liste deckt die größten Sprachgruppen und die wichtigsten Verkehrssprachen ab. Die exakte Zahl hängt davon ab, wie man Zweitsprachler und Mehrsprachigkeit berücksichtigt. Deshalb habe ich meinen Event-Generator (TWRente in Version 1.2.2) um 6 weitere Sprachen auf 18 erweitert. So können das Programm nun die „ganze“ Welt nutzen:

Weitere Infos zum Event-Generator (TWRente) siehe hier. „Welche Sprachen müsste man sprechen, um 90 % der Weltbevölkerung zu erreichen?“ weiterlesen
Eclipse 2025-06: PlantUML Plugin – Ein Muss für Softwarearchitekten
Habe hier schon öfterst von meinem lieblings Plugin berichtet. Das PlantUML-Plugin für Eclipse ist ein leistungsstarkes und vielseitiges Werkzeug, das die Erstellung und Visualisierung von UML-Diagrammen direkt in der Eclipse-IDE ermöglicht. Für Java-Entwickler und Softwarearchitekten, die Wert auf eine nahtlose Integration von Dokumentation und Code legen, ist dieses Plugin ein echter Gamechanger.

PlantUML ist eine Open-Source-Bibliothek, die eine einfache, textbasierte DSL (Domain Specific Language) zur Beschreibung verschiedenster UML-Diagramme bietet – darunter Klassendiagramme, Sequenzdiagramme, Zustandsdiagramme, Aktivitätsdiagramme und viele mehr. Die Stärke von PlantUML liegt darin, dass Diagramme direkt aus Textquellen generiert werden können, was die Versionierung und Nachvollziehbarkeit im Softwareentwicklungsprozess erheblich vereinfacht. „Eclipse 2025-06: PlantUML Plugin – Ein Muss für Softwarearchitekten“ weiterlesen
Eclipse 2025-06: Startexplorer Plugin
Eines der wichtigsten Plugins für Eclipse ist der Start-Explorer.
Der StartExplorer zählt zu den essenziellen Plugins für Eclipse, insbesondere für Entwickler, die regelmäßig zwischen IDE und Dateisystem wechseln. Auch mit der aktuellen Eclipse-Version 2025-06 läuft das Plugin zuverlässig weiter:

Das ist die Install URL:
|
1 |
https://fabioz.github.io/startexplorer/update/ |
Funktionen und Vorteile „Eclipse 2025-06: Startexplorer Plugin“ weiterlesen
Starten von eigenen Java Programmen auf dem Raspberry Pi in 2 Minuten

Auf dem Raspberry Pi kann man leicht Java Programme schreiben und starten.

Voraussetzung es ist Java mind. in Version 22 installiert. Welche Version installiert ist kann man schnell checken mit: „Starten von eigenen Java Programmen auf dem Raspberry Pi in 2 Minuten“ weiterlesen
Pattern Matching für switch (3)
Pattern Matching im switch-Statement ist seit Java 21 ein vollwertiges Feature, das die Ausdruckskraft und Lesbarkeit von Code deutlich erhöht. Es ermöglicht, dass case-Labels nicht nur konstante Werte, sondern auch Typmuster und Bedingungen enthalten können, wodurch komplexe Entscheidungslogik kompakter und sicherer gestaltet werden kann.

Mit Pattern Matching im switch lassen sich beispielsweise unterschiedliche Objektarten direkt im switch-Statement abfragen und verarbeiten, ohne vorheriges instanceof und explizites Casting. „Pattern Matching für switch (3)“ weiterlesen
Record Patterns: Wie Record Patterns das Extrahieren von Komponenten vereinfachen (2)
Java Records zum Tag der Arbeit (1)
Mit der Einführung von Records hat Java einen eleganten Weg geschaffen, um unveränderliche Datenobjekte effizient und ausdrucksstark zu modellieren. Records ersetzen den klassischen, oft umfangreichen Boilerplate-Code für Datenklassen durch eine kompakte, deklarative Syntax. Sie eignen sich hervorragend für Value Objects, Data Transfer Objects (DTOs) oder als Rückgabetypen in APIs.

Was sind Java Records?
Ein Record ist ein spezieller Klassentyp, der für die Speicherung von Daten entwickelt wurde. Die Felder eines Records sind automatisch private und final, der Zustand eines Record-Objekts kann nach der Erstellung nicht mehr verändert werden. Konstruktor, Getter-Methoden, sowie sinnvolle Implementierungen von equals(), hashCode() und toString() werden automatisch generiert. „Java Records zum Tag der Arbeit (1)“ weiterlesen
PPLNS-Algorithmus (Pay Per Last N Shares)
Der PPLNS-Algorithmus, was für Pay Per Last N Shares steht, ist eine Methode zur Berechnung der Auszahlung in Kryptowährungs-Mining-Pools. Im Gegensatz zu anderen Methoden wie PPS (Pay Per Share) oder Proportional, belohnt PPLNS Miner nur für die letzten N Shares, die zur Lösung eines Blocks beigetragen haben. Dadurch wird das Risiko von Pool-Hopping verringert, da Miner mehr Anreiz haben, kontinuierlich im gleichen Pool zu bleiben. Die Auszahlung richtet sich nach der Anzahl der gültigen Shares, die ein Miner in einem bestimmten Zeitraum beigetragen hat. Dies fördert Fairness und Effizienz im Mining-Prozess.

Das „Bezahlung für die letzten N Anteile“ wird von vielen Mining-Pools genutzt, um die Belohnungen unter den Minern zu verteilen.
So funktioniert das PPLNS-Verfahren „PPLNS-Algorithmus (Pay Per Last N Shares)“ weiterlesen
TWRente 1.2.1 (Event-Generator): Unterstützung für 12 Sprachen mit dynamischer Umschaltung zur Laufzeit

Die Benutzeroberfläche des TWRente 1.2.1 Programms (Event-Generator) kann nun ohne Neustart dynamisch in eine von zwölf Sprachen umgeschaltet werden. Alle statischen Texte, Menüs, Labels, Schaltflächen und Hinweise erscheinen sofort in der gewählten Sprache. „TWRente 1.2.1 (Event-Generator): Unterstützung für 12 Sprachen mit dynamischer Umschaltung zur Laufzeit“ weiterlesen
Release am Freitag – weil Bugs auch Wochenende machen wollen. Neue Version vom Event-Kalender-Generator 1.1.4
In diesem Sinne eine neue Version 1.1.4, siehe auch hier.

Installation: „Release am Freitag – weil Bugs auch Wochenende machen wollen. Neue Version vom Event-Kalender-Generator 1.1.4“ weiterlesen
Java Programm mit KI in 1 Stunde erzeugen
Das Grok-2-Modell das im August 2024 veröffentlicht wurde, bietet eine Reihe von Verbesserungen und Funktionen, unter anderem ist das Kontextfenster von 131072 Tokens möglich. Also mal in Perplexity das Grok-2-Modell für ein Java Programm-Generierung verwenden. Hier mal das Endergebnis vorweg:

Ich hatte die Idee, mal für jeden Tag, bis zur Rente einen Eintrag in meinen Kalender mit Counter eintragen zu lassen. Also z.B, in der Form „Noch 33 Tage bis zur Rente“. Rausgekommen ist dann ein universelles Programm, das auch für alle anderen Ereignisse verwendet werden kann, also z.B. noch „55 Tage bis zum Urlaub“ usw.
Ganz zum Schluss, gibt es auch das Programm zum kostenlosen Download.
Hier mal alle Schritte bzw. Promps die an die KI gingen. „Java Programm mit KI in 1 Stunde erzeugen“ weiterlesen
Effiziente Materialgestaltung in Blender 4.4 : Ein Blick auf ein komplexes Node-Setup zum Wochenende
Ein solches Material mit Nodes wollen wir nun erstellen. „Effiziente Materialgestaltung in Blender 4.4 : Ein Blick auf ein komplexes Node-Setup zum Wochenende“ weiterlesen
Dynamische Projekteigenschaften mit Maven Resources Plugin und Filter
Das Maven Resources Plugin wird häufig zum Filtern von Dateien verwendet, wodurch Platzhalter in Ressourcendateien durch in der pom.xml definierte Werte ersetzt werden können. Im Kontext der Ausgabe der Versionsnummer kann dieses Plugin dynamische Projekteigenschaften (Version, artifactId, groupId) während des Build-Prozesses direkt in Ressourcendateien einfügen. Die Maven-Koordinaten bestehen aus groupId, artifactId und version.

Maven verwendet Konventionen für die Namensgebung von Koordinaten. Die groupId identifiziert eindeutig eine Projektgruppe über alle anderen Gruppen hinweg. Sie sollte den Java-Paketnamensregeln folgen, beginnend mit einem umgekehrten Domainnamen, den Sie kontrollieren. Die artifactId ist der Name, unter dem das Projekt bekannt ist. Zusammen mit der groupId erzeugt sie einen Schlüssel, der dieses Projekt von allen anderen Projekten unterscheidet. Die version gibt an, um welche Version es sich handelt. „Dynamische Projekteigenschaften mit Maven Resources Plugin und Filter“ weiterlesen
Stressberry mit dem Raspberry Pi Zero W und Ergebnisse visualisieren
Stressberry ist ein Python-Paket, das zum Testen der Kerntemperatur eines Raspberry Pi unter verschiedenen Belastungen verwendet wird und vergleichbare Diagramme erstellt. Es ist ein Tool, um zu überprüfen, ob ein Raspberry Pi unter voller CPU-Last in seiner Umgebung ohne Überhitzung und Verlangsamung laufen kann.
Stressberry check für den Raspberry Pi Zero W.

Nach der Installation, starten des Tests und erzeugen der Grafik: „Stressberry mit dem Raspberry Pi Zero W und Ergebnisse visualisieren“ weiterlesen
Test bis zur maximal Temperatur des Raspberry Pi Zero 2 W oder was sind Shares

Mal ein Test, wie lange es dauert bis der Raspberry Pi Zero 2 W seine maximale Betriebstemperatur erreicht hat. Wie ist denn seine maximale Temperatur bzw. sein Arbeitsbereich. In der Spec vom Hersteller Datenblatt vom Pi steht: „Test bis zur maximal Temperatur des Raspberry Pi Zero 2 W oder was sind Shares“ weiterlesen
Quicktest: Blender 4.4, mal was anderes als KI
Heute ist die neue 4.4 von Blender veröffentlicht worden. Dann mal gleich geladen und für dieses Jahr das erste Bild gerendert. Quicktest: Ok, gefühlt langsamer, später mehr …

Get Started OpenAiChatModel mit LangChain4j in Java
LangChain4j ist ein Open-Source-Framework, das speziell für die Integration von Large Language Models (LLMs) in Java-Anwendungen entwickelt wurde. Es bietet eine vereinheitlichte API, die den Zugriff auf verschiedene LLM-Anbieter wie OpenAI oder Google Vertex AI erleichtert. Mit LangChain4j können Entwickler Aufgaben wie das Erstellen von Embeddings, semantische Suchen, Chatbot-Implementierungen und Retrieval-Augmented-Generation (RAG) effizient umsetzen.

Um LangChain4j in einem Java-Projekt zu nutzen, müssen die entsprechenden Maven-Abhängigkeiten hinzugefügt werden und zwar so in der pom.xml: „Get Started OpenAiChatModel mit LangChain4j in Java“ weiterlesen
ESP32 Ticker mit WhatsApp Benachrichtigung

ESP32: Wetterdaten wie Temperatur, Luftfeuchte, Luftdruck und Kursdaten in Dollar (Euro auch möglich) von BTC, ETC, SOL, DOGE, NANO und DUINO mit User-Wallet und auch die Zeit anzeigen. Auch gibt es Benachrichtigungen per WhatsApp, Code siehe hier. „ESP32 Ticker mit WhatsApp Benachrichtigung“ weiterlesen
Kühlkörper für den Pi Zero 2 W mit Quicktest: Pool-Mining von Dogecoin (DOGE)
Ein Kühlkörper auf einem Raspberry Pi dient dazu, Wärme von den Prozessoren und anderen Komponenten abzuleiten, um Überhitzung zu vermeiden und die Stabilität zu gewährleisten. Besonders bei intensiver Nutzung wie das CPU-Mining oder Übertaktung ist eine zusätzliche Kühlung sinnvoll, da sie die Leistung stabilisiert und die Lebensdauer der Hardware verlängert. Soeben eingetroffen und montiert:

Gleicher Quicktest wie hier, auch wieder über 80 Grad: „Kühlkörper für den Pi Zero 2 W mit Quicktest: Pool-Mining von Dogecoin (DOGE)“ weiterlesen
Quicktest: Raspberry Pi Zero 2 W mit 64-Bit mit Pool-Mining von Dogecoin (DOGE)
Vor ein paar Tagen ist mein neuer Raspberry Pi Zero 2 W eingetoffen:

Bisher hatte ich jahrelang den Zero W mit 32-Bit am laufen. Dann mal gleich ein Debian in 64-Bit installiert, das habe ich hier dokumentiert. Nun mal der erste Leistungstest. Der Testfall soll sein, eine cpuminer-multi Miner installieren und Dogecoins über der ZPool zu minen. „Quicktest: Raspberry Pi Zero 2 W mit 64-Bit mit Pool-Mining von Dogecoin (DOGE)“ weiterlesen
Debian bookworm 64-Bit auf einem Raspberry Pi Zero 2 W installieren
Das aktuelle bookworm läuft auch auf einem Pi Zero 2 W, in der 64-Bit Version. Welche Schritte sind nun noch nötig für die Installation?

1. Den aktuelle Imager installieren und starten, und das 64-Bit System wählen. „Debian bookworm 64-Bit auf einem Raspberry Pi Zero 2 W installieren“ weiterlesen
ESP32: Wetterdaten wie Temperatur, Luftfeuchte, Luftdruck und Kursdaten von BTC, ETC, SOL, DOGE, NANO und DUINO mit User-Wallet anzeigen
Vor 8 Jahren hatte ich schon mal über das OLED Display „Don’t give up! berichtet. Und während der Pandemie diente es als CO2 Anzeige. Das habe ich nun abgebaut und durch ein paar Abfragen per REST-Api von OpenWeatherMap und Coingecko umprogrammiert. Das Ergebnis sieht man in diesem Video:
Es werden mit dem ESP32: Wetterdaten wie Temperatur, Luftfeuchte, Luftdruck und Kursdaten von BTC, ETC, SOL, DOGE, NANO mit DUINO User-Wallet angezeigt. Das Programm sieht ungefähr so aus: „ESP32: Wetterdaten wie Temperatur, Luftfeuchte, Luftdruck und Kursdaten von BTC, ETC, SOL, DOGE, NANO und DUINO mit User-Wallet anzeigen“ weiterlesen
Sierpinski-Dreieck: Mal was anderes als der Mega-Hack der Bybit Exchange mit ca. 401000 ETH ( ca. 1,4 Milliarden Dollar ) Verlust
Der Crypto-Bereich ist in Aufregung, weil Bybit von einem Ethereum-Cold-Wallet ca. 1,4 Milliarden Dollar geklaut wurden. Wie war das technisch möglich? Hier eine Erklärungsmöglichkeit:

Aber kommen wir nun zu etwas einfacheren und auch sehr interessanten Thema: Das Sierpinski-Dreieck. „Sierpinski-Dreieck: Mal was anderes als der Mega-Hack der Bybit Exchange mit ca. 401000 ETH ( ca. 1,4 Milliarden Dollar ) Verlust“ weiterlesen
Fibonacci-Folge mit Java

Leonardo Fibonacci, auch bekannt als Leonardo von Pisa, war ein bedeutender Mathematiker des Mittelalters, der um 1170 in Pisa geboren wurde und nach 1240 verstarb.
Er ist vor allem für die Einführung des indisch-arabischen Zahlensystems in Europa und die nach ihm benannte Fibonacci-Folge bekannt. „Fibonacci-Folge mit Java“ weiterlesen
Warum sind Nano (XNO)Transaktionen im Status „receivable transactions“ (Abholbar) oder wie läuft die Block-Lattice-Architektur
Der Status receivable transactions bei Nano-Transaktionen bedeutet, dass eine Transaktion vom Sender abgeschlossen und vom Netzwerk bestätigt wurde, die empfangenen Mittel jedoch noch nicht vom Empfänger in dessen Konto eingebucht wurden. Dies ist ein einzigartiger Aspekt des Nano-Protokolls, das auf der Block-Lattice-Architektur (gerichteten azyklischen Graphen (DAG)) basiert.
Die Block-Lattice-Architektur ist eine Datenstruktur, die Nano von klassischen Blockchain-Systemen unterscheidet. Sie ermöglicht schnelle, effiziente und gebührenfreie Transaktionen, indem sie jedem Nutzer eine eigene Blockchain zuweist. Also anders als bei Bitcoin oder Solana.

Die Funktionsweise läuft in drei Schritten: „Warum sind Nano (XNO)Transaktionen im Status „receivable transactions“ (Abholbar) oder wie läuft die Block-Lattice-Architektur“ weiterlesen
Dogecoin (DOGE) auf dem Raspberry Pi im Pool minen

Das Mining von Dogecoin (DOGE) auf einem Raspberry Pi ist eine interessante Möglichkeit, die Grundlagen des Kryptowährungs-Minings zu erlernen. Obwohl der Raspberry Pi aufgrund seiner begrenzten Rechenleistung nicht für profitables Mining geeignet ist, bietet er eine kostengünstige und energieeffiziente Plattform für Experimente und Bildung. „Dogecoin (DOGE) auf dem Raspberry Pi im Pool minen“ weiterlesen
unMinerable nun wieder für geringe Hashrate mit ESP32 offen
Vor ein paar Tagen hatte ich berichtet, das unMinerable Device wie ESPs mit geringer Hashrate sperrt. Nun gibt es eine Meldung von unmineable.com das der Support für geringe Hashrate wieder gehen soll:

Das habe ich mal mit dem Nano (XNO) Coin ausgeteste, der eine Marktkapitalisierung von über 200 Millionen Euro hat.
Es wird jetzt tatsächlich alle 5 Minuten „unMinerable nun wieder für geringe Hashrate mit ESP32 offen“ weiterlesen
Duino-Coin Dashboard für Miner auf Raspberry Pi ua.

Ein Dashboard für Miner wie z.B. „Duino-Coin Dashboard für Miner auf Raspberry Pi ua.“ weiterlesen
