Wahrscheinlichkeitsrechnung mit dem Satz von Bayes nicht nur für Versicherungen und Medizin

Der Satz von Bayes ist ein grundlegendes Theorem in der Wahrscheinlichkeitsrechnung, das den Zusammenhang zwischen bedingten Wahrscheinlichkeiten beschreibt.

Der Satz von Bayes ist ein spannendes Werkzeug aus der Welt der Mathematik, das uns hilft, Wahrscheinlichkeiten zu verstehen und zu berechnen. Er wird in vielen Bereichen angewendet, von der Medizin über Künstliche Intelligenz bis hin zu Alltagssituationen. Aber was genau besagt dieser Satz, und warum ist er so nützlich?

Was ist der Satz von Bayes? „Wahrscheinlichkeitsrechnung mit dem Satz von Bayes nicht nur für Versicherungen und Medizin“ weiterlesen

Der Brier-Score (Brier-Wert) nicht nur für Prognostiker

Der Brier-Wert ist ein effizientes und einfaches Maß zur Bewertung der Genauigkeit probabilistischer Vorhersagen. Durch die Kombination aus einfacher Berechnung und aussagekräftiger Analyse ist er ein weit verbreitetes Werkzeug in der Statistik und im maschinellen Lernen.

In der Praxis hilft er, die Qualität von Vorhersagen quantitativ zu bewerten und kann zur Verbesserung von Modellen und Algorithmen beitragen. Die Bezeichnung „Brier-Wert“ stammt von dem amerikanischen Meteorologen Glenn W. Brier, der das Maß (1950 – VERIFICATION OF FORECASTS EXPRESSED IN TERMS OF PROBABILITY) entwickelte und damit die Grundlage legte.

Der Brier-Wert wird häufig in Bereichen wie Meteorologie, Medizin, Finanzwesen, Wahlprognosen und maschinellem Lernen verwendet, um die Genauigkeit von Prognosen zu bewerten. Er ist besonders nützlich bei binären Klassifikationsproblemen, bei denen das Modell Wahrscheinlichkeiten für die Zugehörigkeit zu einer von zwei Klassen liefert (z. B. Regenwahrscheinlichkeit).

Wir erstellen zur Verdeutlichung mal ein JSon Datei mit ein paar Daten von der Reserve Bank of Australia, die bei ihren monatlichen Sitzungen Zinssätze beschließt. Die RBA lässt die Zinssätze im Allgemeinen unverändert, erhöht sie jedoch manchmal und senkt sie manchmal, je nach wirtschaftlicher Lage. Die Daten stammen aus diesem Artikel und wurden von mir in das JSon-Format überführt. „Der Brier-Score (Brier-Wert) nicht nur für Prognostiker“ weiterlesen

Raspberry Pi per SMB automatisch beim Start verbinden

Im Mac Finder muss im Mac unter Sequoia 15.0.1 jedesmal eine SMB (Samba) verbindung zum Pi erneut über Server verbinden eingestellt werden. Das kann auch beim Start des Macs automatisch getan werden.

Im Scripteditor dies Script erstellen und evl. den Username pi anpassen

und als App speichern unter: „Raspberry Pi per SMB automatisch beim Start verbinden“ weiterlesen

Java Programm zur Goldbachsche Vermutung mit Heap Analyse

Die Goldbachsche Vermutung ist eine der ältesten ungelösten Probleme in der Mathematik, die der Mathematiker Christian Goldbach 1742 in einem Brief an Leonhard Euler formulierte. Sie besagt:

Jede gerade Zahl größer als 2 lässt sich als Summe zweier Primzahlen darstellen.

Diese Vermutung ist in zwei Formen bekannt: „Java Programm zur Goldbachsche Vermutung mit Heap Analyse“ weiterlesen

NodeRed ist vor 17 Tagen in Version 4.0.3 auch für den Raspberry Pi veröffentlicht worden

Node-RED ist eine flow-basierte Entwicklungsumgebung, die hauptsächlich für die visuelle Programmierung von IoT- und Automatisierungslösungen verwendet wird. Es bietet eine einfache und intuitive Oberfläche, um Datenströme (Flows) zwischen Geräten, APIs und Diensten zu erstellen, ohne tiefgehende Programmierkenntnisse zu benötigen.

Vorteile von Node-RED: „NodeRed ist vor 17 Tagen in Version 4.0.3 auch für den Raspberry Pi veröffentlicht worden“ weiterlesen

Wie können alle Flugzeuge im Umkreis von 20 km ermittelt werden?

Währe es nicht schön, wenn man auf einem Display (eines Raspberry Pi oä.), ähnlich wie am Flughafen alle Flugzeuge die in der Nähe sind, angezeigt bekommt. Dazu müsste erst ermittelt werden, welch Flugzeuge im Umkreis (Rechteck) vom Flughafen Hannover (oder jeder andere Ort) von ca. 20 km in der Luft und am Boden sind.

„Wie können alle Flugzeuge im Umkreis von 20 km ermittelt werden?“ weiterlesen

Lieben Dank für die neue ArchUnit 1.3.0 Version mit Support für Java 23

Das Java Framework ArchUnit ist ein leistungsstarkes Werkzeug für die Gewährleistung von Softwarearchitektur und Code-Qualität in Java-Projekten. Die Entwicklung von Softwareanwendungen wird immer komplexer und anspruchsvoller. Um sicherzustellen, dass Softwareprojekte effizient, skalierbar und wartbar sind, ist die Einhaltung einer soliden Softwarearchitektur und Code-Qualität von entscheidender Bedeutung. Hier kommt das Java Framework ArchUnit ins Spiel, das sich als unverzichtbares Werkzeug für die Überprüfung und Aufrechterhaltung dieser Standards etabliert hat.

ArchUnit ist ein Open-Source-Framework für statische Codeanalyse in Java-Anwendungen. Es wurde entwickelt, um Entwicklern und Architekten dabei zu helfen, die Einhaltung von vordefinierten Architekturrichtlinien und -regeln in ihrem Java-Code sicherzustellen. Das Framework ermöglicht es, Architekturvorgaben in Form von Java-Codeausdrücken zu definieren und automatisierte Tests zu schreiben, um sicherzustellen, dass diese Vorgaben im gesamten Projekt eingehalten werden. Die neue Version die vor ein paar Wochen veröffentlicht worden mal eben einem Quicktest unterziehen. „Lieben Dank für die neue ArchUnit 1.3.0 Version mit Support für Java 23“ weiterlesen

10 Gründe warum Nutzer eine Bill of Materials (SBOM) brauchen

Seit ein paar Wochen gibt es die neue Version 2.7.11 von CycloneDX. Wenn das nicht nicht ein Grund ist, einen neue SBOM zu erzeugen. Eine Software Bill of Materials (SBOM) ist eine Liste der Bestandteile und Komponenten einer Softwareanwendung sowie ihrer Beziehungen zueinander. Hier hatte ich ja schon mal beschrieben wie man mit Maven und dem CycloneDX Plugin eine erzeugt. Hier sind die 10 wichtigsten Gründe, warum Benutzer eine SBOM benötigen:

„10 Gründe warum Nutzer eine Bill of Materials (SBOM) brauchen“ weiterlesen

ArchUnit Version 1.2.1 veröffentlicht für eine kontinuierliche Überwachung der Architekturstandards

Das Java Framework ArchUnit ist ein leistungsstarkes Werkzeug für die Gewährleistung von Softwarearchitektur und Code-Qualität in Java-Projekten.

Durch die Möglichkeit, deklarative Regeln zu erstellen und automatisierte Tests zu schreiben, hilft ArchUnit, konsistente und hochwertige Software zu entwickeln. „ArchUnit Version 1.2.1 veröffentlicht für eine kontinuierliche Überwachung der Architekturstandards“ weiterlesen

Quarkus REST-Service mit Swagger-UI in unter 10 Minuten von 0 auf dem Raspberry Pi 4 installieren (Bonus: Panache)

Einen aktuellen Quarkus REST-Service mit Swagger-UI kann in unter 10 Minuten auf dem Raspberry Pi 4 installiert werden. Das längste daran ist noch der erstmalig download. Vor 3 Jahren hatte ich das ja schon in 15 Minuten gemacht.

Also diese 7. Schritte sind auf der Kommandozeile nötig, um einen Aktuellen REST-Server mit Quarkus 3.5.3 zu starten:

Freut euch immer

„Quarkus REST-Service mit Swagger-UI in unter 10 Minuten von 0 auf dem Raspberry Pi 4 installieren (Bonus: Panache)“ weiterlesen

Interquartilsabstand (IQR oder IQA) mit PSPP berechnen (Teil 6)

Der Interquartilsabstand (IQR) ist ein Streuungsmaß in der deskriptiven Statistik. Der IQR ist eine robuste Maßzahl, die in der Lage ist, Ausreißer in Datensätzen zu identifizieren und Informationen über die Streuung der Daten zu liefern. Der Interquartilsabstand, oft abgekürzt als IQR, ist ein Maß für die Streuung oder die Verbreitung von Daten in einem Datensatz. Er basiert auf den Quartilen, die die Daten in vier gleich große Teile aufteilen.

Die Quartile sind: „Interquartilsabstand (IQR oder IQA) mit PSPP berechnen (Teil 6)“ weiterlesen

Quarkus CO2 Server 2.x auf Version 3.4.1 Migration mit update Tool oder per Hand

Der 3. Oktober ist in Deutschland ein Feiertag, wenn das nicht Grund genug ist, mal die Migration eines Quarkus 2.0 CO-2 Servers auf 3.4.1 durchzuführen.

Am dritten Oktober, freu’n wir uns sehr,
Ein Feiertag, der uns vereint, ist hier.
Die Einheit Deutschlands, im Glanz erstrahlt,
Wie Quarkus, stark und neu, die Zukunft malt.

Die Alte 2er Version, längst vergangen Zeit,
Jetzt weichen muss, für Neues, das gedeiht.
Wie Quarkus 3er, frisch und schnell, die Zukunft weist,
Die Migration, sie kommt, wir sind bereit.

Die Server, stark wie Eichen im Revier,
Wie Quarkus, schnell und stabil, das ist ihr Tier.
Die Zukunft winkt, wir schreiten voran,
Mit Feiern und Migration, Hand in Hand.

-Thomas Wenzlaff

Es gibt da ja automatisch Scripte und eine Anleitung.

Es war aber doch etwas Handarbeit angesagt, da das „Quarkus CO2 Server 2.x auf Version 3.4.1 Migration mit update Tool oder per Hand“ weiterlesen

XCA – Certification Authority (Zertifizierungsstelle) mit Elliptische-Kurven-Kryptografie (ECC) secp256k1

In der Informationssicherheit und Verschlüsselung steht „CA“ für Certification Authority. Eine Zertifizierungsstelle ist eine vertrauenswürdige Organisation, die digitale Zertifikate ausstellt und verwaltet. Diese Zertifikate werden verwendet, um die Identität von Websites, Servern und Benutzern in verschlüsselten Kommunikationen zu überprüfen, z. B. bei der SSL/TLS-Verschlüsselung im Web. Hier ein Bild der XCA GUI unter Linux:

Gestern wurde eine neue Version 2.5.0 der XCA veröffentlicht. Dafür gibt es auf dem Raspberry Pi 4 noch kein Package.

Aber man kann es ja auch selbst compilieren und zwar so für den aktuellen dev 2.5.3 Stand:

„XCA – Certification Authority (Zertifizierungsstelle) mit Elliptische-Kurven-Kryptografie (ECC) secp256k1“ weiterlesen

SSL/TLS-Zertifikat mit Elliptische-Kurven-Kryptografie (ECC) secp256k1 und eigener CA erzeugen und per Java einlesen auf dem Raspberry Pi

In der heutigen digitalen Welt ist die Sicherheit von Daten und Kommunikation von höchster Bedeutung. SSL/TLS-Zertifikate spielen eine entscheidende Rolle bei der Verschlüsselung von Datenübertragungen im Internet und der Gewährleistung der Vertraulichkeit und Integrität von Informationen. Das Open-Source-Programm xca ist eine leistungsstarke und vielseitige Anwendung, die die Verwaltung von SSL/TLS-Zertifikaten und vieles mehr erleichtert.

Es kann einfach per sudo apt install xca installiert werden und steht dann im Zubehör-Menü zur Verfügung:

„SSL/TLS-Zertifikat mit Elliptische-Kurven-Kryptografie (ECC) secp256k1 und eigener CA erzeugen und per Java einlesen auf dem Raspberry Pi“ weiterlesen

Warum Leerzeichen im Source-Code von Eclipse entfernen?

Die Möglichkeit, Quellcode in der Eclipse IDE zu vergleichen, ist äußerst nützlich, um Änderungen in Ihrem Code nachzuvollziehen. Das Ausschalten von Leerzeichen während des Vergleichs kann dazu beitragen, Code-Konsistenz zu gewährleisten und Platz zu sparen. Das geht jetzt ganz einfach über die Toolbar über diesen Button:

Die Eclipse Integrated Development Environment (IDE) ist eine der beliebtesten Entwicklungsplattformen für Programmierer weltweit. „Warum Leerzeichen im Source-Code von Eclipse entfernen?“ weiterlesen

Die Arduino IDE 2.2.1: Ein Werkzeug für Innovation und Kreativität in neuer Version mal was anderes als iPhone 17 plus

In einer Welt, in der Technologie und Elektronik einen immer größeren Stellenwert einnehmen, ist die Arduino IDE (Integrated Development Environment) zu einem unschätzbar wertvollen Werkzeug geworden. Arduino ist weithin bekannt für seine Benutzerfreundlichkeit und seine Fähigkeit, Menschen jeden Alters in die Welt der Elektronik und Programmierung einzuführen.

Die Arduino IDE hat sich als unschätzbares Werkzeug für Entwickler, Hobbyisten und Bildungseinrichtungen etabliert. Mit ihrer Benutzerfreundlichkeit, ihrer lebendigen Community und ihren umfangreichen Ressourcen bietet sie eine ideale Plattform, um in die Welt der Elektronik und Programmierung einzutauchen. Ob Sie ein Anfänger sind, der gerade erst anfängt, oder ein erfahrener Entwickler, der komplexe Projekte erstellen möchte, die Arduino IDE bietet die Werkzeuge und Unterstützung, die Sie benötigen, um Ihre Ideen in die Realität umzusetzen.

Hier ein paar allgemeine Vorteile auch zur neuen Version: „Die Arduino IDE 2.2.1: Ein Werkzeug für Innovation und Kreativität in neuer Version mal was anderes als iPhone 17 plus“ weiterlesen

Die wichtigsten Unterschiede zwischen Trust Stores und Key Stores für Java und HTTPS

Die wichtigsten Unterschiede zwischen Trust Stores und Key Stores für Java und HTTPS.

Der Key Store speichert private Schlüssel und zugehörige Zertifikate zur Identifizierung und Authentifizierung.
Der Trust Store speichert Zertifikate von vertrauenswürdigen Zertifizierungsstellen zur Überprüfung der Glaubwürdigkeit von Remote-Entitäten.

Beide Speicher sind wichtig, um eine sichere Kommunikation über HTTPS und andere verschlüsselte Protokolle zu gewährleisten. Der Key Store ermöglicht die Identifizierung und Authentifizierung, während der Trust Store das Vertrauen in die Gegenstelle sicherstellt. Hier die Unterschiede als Mindmap und als Tabelle:

„Die wichtigsten Unterschiede zwischen Trust Stores und Key Stores für Java und HTTPS“ weiterlesen

MP4 ins GIF Format umwandeln (mp2togif) mit ffmpeg

Warum die Konvertierung von MP4 zu GIF sinnvoll sein kann?

Die Konvertierung von Dateiformaten ist eine gängige Praxis in der digitalen Welt, die verschiedene Zwecke erfüllen kann. Ein solches Szenario ist die Umwandlung von MP4-Videos in GIF-Animationen. Obwohl beide Formate ihre eigenen Vorzüge haben, gibt es bestimmte Situationen, in denen die Konvertierung von MP4 zu GIF durchaus sinnvoll sein kann.

Zum Beispiel bietet Blender keinen GIF export. Deshalb habe ich ein kleines Script geschrieben, welche mit ffmpeg die Umwandlung durchfürhrt. Wir haben z.B. dieses MP4 Video „MP4 ins GIF Format umwandeln (mp2togif) mit ffmpeg“ weiterlesen

Das „Haus vom Nikolaus“ mit seinen 88 Möglichkeiten und seine Bedeutung in der Graphentheorie

Das „Haus vom Nikolaus„, ein einfaches geometrisches Muster aus fünf Linien, das die Form eines stilisierten Hauses darstellt, mag auf den ersten Blick wie eine unschuldige Kindermalerei wirken. Doch hinter diesem scheinbar simplen Muster verbirgt sich eine faszinierende Verbindung zur Graphentheorie, einem Teilgebiet der Mathematik, das sich mit den Eigenschaften und Beziehungen von Graphen beschäftigt. Dann mal los, und ein kleines Java Programm dazu.

Was ist das „Haus vom Nikolaus“? „Das „Haus vom Nikolaus“ mit seinen 88 Möglichkeiten und seine Bedeutung in der Graphentheorie“ weiterlesen

Königsberger Brückenproblem oder etwas Graphentheorie mit jgrapht in Java

Das Königsberger Brückenproblem ist eine klassische mathematische Herausforderung, die im 18. Jahrhundert entstand und einen wichtigen Einfluss auf die Entwicklung der Graphentheorie hatte. Es handelt sich um eine Fragestellung bezüglich der Überquerung von Brücken über den Flüssen Pregel und seinen Inseln in der Stadt Königsberg (heute Kaliningrad, Russland). Das Problem wurde erstmals von dem Schweizer Mathematiker Leonhard Euler im Jahr 1735 gelöst und legte den Grundstein für die moderne Graphentheorie.

In Königsberg gab es sieben Brücken, die die Flüsse Pregel und die beiden Inseln verbunden haben. Die Frage war, ob es möglich war, die Stadt zu durchqueren, indem man jede Brücke nur einmal überquerte und schließlich an einem beliebigen Punkt endete.

Euler bewies, dass es keine Möglichkeit gibt, das Königsberger Brückenproblem zu lösen. Er zeigte, dass mindestens zwei der vier Landpunkte eine ungerade Anzahl von Brücken haben müssten, um eine Lösung unmöglich zu machen. Dies führte zur Entwicklung der Graphentheorie, bei der das Problem als ein Graph dargestellt werden kann, wobei die Landpunkte die Knoten und die Brücken die Kanten des Graphen sind.

Da kommt nun die Implementierung mit JGraphT in Java ins Spiel. „Königsberger Brückenproblem oder etwas Graphentheorie mit jgrapht in Java“ weiterlesen

Every main method deserves picocli!

Picocli: Eine leistungsstarke Bibliothek für die Erstellung von Befehlszeilenanwendungen. Hier habe ich schon oft davon berichtet. Da es im Juni die Version 4.7.4 gab, mal hier ein Beispiel dazu.

Die Entwicklung von Software, sei es in Form von Anwendungen oder Tools, erfordert oft die Integration von Befehlszeilenfunktionalität, um Benutzern eine effiziente Interaktion mit der Software zu ermöglichen. Eine der bemerkenswertesten Bibliotheken, die diese Aufgabe erleichtert, ist „Picocli„. Picocli ist eine Java-basierte Open-Source-Bibliothek, die Entwicklern dabei hilft, robuste und benutzerfreundliche Befehlszeilenanwendungen zu erstellen.

Was ist Picocli? „Every main method deserves picocli!“ weiterlesen

Maven Embedder

Der „Maven Embedder“ ist eine Möglichkeit, Maven in Java-Anwendungen einzubetten und Maven-Funktionen programmatisch aufzurufen. Damit kannst du Maven in deinem Code verwenden, um Build- und Dependency-Management-Funktionen auszuführen, ohne externe Prozesse aufrufen zu müssen.

Man braucht nur eine Abhängigkeit:

Das Apache Maven Build-Tool ist ein weit verbreitetes Werkzeug in der Java-Entwicklungswelt, das die Automatisierung von Build-, Test- und Abhängigkeitsverwaltungsaufgaben erleichtert. Normalerweise wird Maven über die Befehlszeile oder in Build-Skripten verwendet. In einigen Szenarien kann es jedoch erforderlich sein, Maven in Java-Anwendungen einzubetten, um Maven-Funktionen programmatisch aufzurufen. Das Maven Embedder ermöglicht genau das. Was ist der Maven Embedder? „Maven Embedder“ weiterlesen

Rot oder Grün, das ist hier die Frage

Zum Wochenende mal ein kleines Quiz. Läuft der Test grün oder rot?

Die Lösung … „Rot oder Grün, das ist hier die Frage“ weiterlesen

Unit test your Java architecture a new release of ArchUnit (v1.1.0) is out.

Leider keine Zeit für eine Reise nach Nashville, TN zum Patient Blood Management and Blood Health: They Top the Charts! Annual Meeting. Dann mal die gestern veröffentlichte Version von ArchUnit testen.

Das Java Framework ArchUnit ist ein leistungsstarkes Werkzeug für die Gewährleistung von Softwarearchitektur und Code-Qualität in Java-Projekten. Durch die Möglichkeit, deklarative Regeln zu erstellen und automatisierte Tests zu schreiben, hilft ArchUnit, konsistente und hochwertige Software zu entwickeln. „Unit test your Java architecture a new release of ArchUnit (v1.1.0) is out.“ weiterlesen

pinout – die GPIO-Schnittstelle des Raspberry Pi

Ein einfaches pinout gibt auf dem Pi die Belegung aus. Cool! Hier die Ausgabe eines Raspberry Pi Zero W

Der Raspberry Pi ist ein vielseitiger Einplatinencomputer, der in den letzten Jahren enorm an Popularität gewonnen hat. Eines seiner bemerkenswertesten Merkmale ist die General Purpose Input Output (GPIO) Schnittstelle. GPIO ermöglicht es dem Raspberry Pi, mit der physischen Welt zu interagieren, indem es digitale Signale sendet und empfängt. „pinout – die GPIO-Schnittstelle des Raspberry Pi“ weiterlesen

Wie kann eine Datei-Liste aller Maven Abhängigkeiten eines Projektes erstellt werden?

Manchmal will man eine Liste aller Abhängigkeite eines Maven-Projektes in einer eigenen Datei.

Das geht einfach mit dem maven-dependency-plugin.

Die effiziente Verwaltung von Abhängigkeiten ist ein grundlegendes Element bei der Entwicklung von Java-Projekten. Maven ist ein weit verbreitetes Build-Management-Tool, das Entwicklern ermöglicht, Abhängigkeiten zu verwalten und den Build-Prozess zu automatisieren. Das Maven-Dependency-Plugin ist eine Erweiterung von Maven, die speziell für die Handhabung von Abhängigkeiten entwickelt wurde.

Also einfach das Plugin in der pom.xml einbinden z.B.: „Wie kann eine Datei-Liste aller Maven Abhängigkeiten eines Projektes erstellt werden?“ weiterlesen

Software Bill of Materials (SBOM) mit CycloneDX Maven Plugin leicht erzeugen

In einer zunehmend vernetzten und digitalisierten Welt sind Softwarekomponenten und -anwendungen allgegenwärtig. Unternehmen verlassen sich auf komplexe Softwarelösungen, um ihre Geschäftsprozesse zu unterstützen und innovative Produkte und Dienstleistungen anzubieten. Angesichts der wachsenden Bedrohungen durch Sicherheitslücken und Compliance-Anforderungen wird die Transparenz über die verwendeten Softwarekomponenten immer wichtiger. Hier kommt die Software Bill of Materials (SBOM) ins Spiel, die eine detaillierte und strukturierte Auflistung aller Softwarekomponenten eines Projekts bietet. Vor einem Jahr hatte ich schon mal davon berichtet. In diesem Artikel werden die Vorteile einer SBOM genauer betrachtet.

Transparenz über Softwarekomponenten:
Eine SBOM ermöglicht eine umfassende Transparenz über die verwendeten Softwarekomponenten in einem Projekt. Sie listet alle Komponenten auf, einschließlich Open-Source-Software, Drittanbieterbibliotheken und proprietäre Codebasis. Dies schafft Klarheit über den Ursprung und die Lizenzierung der Software, was für die Einhaltung von Compliance-Anforderungen und die Vermeidung von rechtlichen Problemen von entscheidender Bedeutung ist.
„Software Bill of Materials (SBOM) mit CycloneDX Maven Plugin leicht erzeugen“ weiterlesen

git -v = git version 2.40.0

Git ist ein weit verbreitetes verteiltes Versionsverwaltungssystem, das eine effiziente und flexible Möglichkeit bietet, Code zu verwalten. Mit Git können Entwickler Änderungen am Code nachverfolgen, zusammenführen und rückgängig machen. Es ist einfach zu erlernen, jedoch mächtig genug, um komplexe Projekte zu handhaben.

Git ermöglicht auch die Zusammenarbeit von Teams, indem es die Verwaltung von Code-Änderungen und die Integration von Features erleichtert.

Am 12.3.2023 ist eine neue Version von git mit diesen Releasenotes veröffentlicht worden. Wenn das kein Grund ist mal ein update durchzuführen. „git -v = git version 2.40.0“ weiterlesen

REST-Server mit statischen HTML Seiten bzw. Bildern in 5 Minuten erstellen

Wie in diesem Beitrag beschrieben, kann leicht ein REST-Server in 5 Minuten erstellt werden. Auch die Sicherheit kann in 5 Minuten mit Helmet erweitert werden, wie hier beschrieben. Wer weitere 5 Minuten hat, kann auch auf ein Verzeichnis mit statischen Resourcen zugreifen.

Eine statische Webseite ist eine Art von Webseite, bei der die Inhalte für jede Seite im Voraus erstellt werden und nicht dynamisch auf Anfrage generiert werden. Dies bedeutet, dass der Inhalt jeder Seite statisch ist und sich nicht ändert, es sei denn, jemand bearbeitet manuell die HTML-Dateien, die die Seiten darstellen.

Statische Webseiten werden oft verwendet, wenn der Inhalt der Seite selten oder nie aktualisiert wird, z.B. bei Landingpages, Informationsseiten oder Blogs mit selten aktualisierten Inhalten. Sie sind einfach zu erstellen und zu verwalten und erfordern keine spezielle Software oder Programmierkenntnisse. „REST-Server mit statischen HTML Seiten bzw. Bildern in 5 Minuten erstellen“ weiterlesen

REST-Server in 5 Minunten erstellen mit Node.js and Express.js

REST (Representational State Transfer) Server sollten genutzt werden, wenn es darum geht, eine Web-API (Application Programming Interface) bereitzustellen, die es ermöglicht, Daten zwischen verschiedenen Systemen auszutauschen.

REST ist ein Architekturstil, der sich auf die Verwendung von HTTP-Methoden wie GET, POST, PUT und DELETE konzentriert, um Ressourcen zu erstellen, abzufragen, zu ändern und zu löschen. Ein REST-Server kann in fast jeder Programmiersprache entwickelt werden und ist eine gute Wahl für die Erstellung von Microservices oder für die Integration von Anwendungen mit anderen Systemen.

Express.js ist ein web Application Framework für Node.js, das es Entwicklern erleichtert, eine HTTP-Server zu erstellen und Routing-Funktionalitäten bereitzustellen. Es ist eines der am weitesten verbreiteten Framework für Node.js und wird oft für die Erstellung von Webanwendungen und REST-APIs verwendet. „REST-Server in 5 Minunten erstellen mit Node.js and Express.js“ weiterlesen

Twitter auch per Tor über Onion-Routing-Netzwerk (Darknet) erreichbar

Twitter ist auch im Darknet über diese Adresse erreichbar:

Also bin auch ich und jeder Twitter User im Darknet erreichbar, hier mein Link

Der Anonymisierungsdienst Tor ist weltweit und unabhängig von Internetblockaden erreichbar. Dann mal gleich den Tor-Browser updaten:
„Twitter auch per Tor über Onion-Routing-Netzwerk (Darknet) erreichbar“ weiterlesen

Hakrawler ein schneller golang Web-Crawler auf dem Pi im Docker

Wer einen Web-Crawler auf dem Pi laufen lassen will, kann sich mal den in Go geschiebenen hakrawler anschauen.

Blutzelle

Nach der Installation lassen wir das Programm im Docker (nur gegen eigene Server!) laufen, z.B. mit der Domäne http://kleinhirn.eu/

echo http://kleinhirn.eu | docker run –rm -i hakluke/hakrawler -subs -u

Hier ein Ausschnitt aus dem Dump:

„Hakrawler ein schneller golang Web-Crawler auf dem Pi im Docker“ weiterlesen

Clean Code Developer (und Software Craftsmanship)

Drei Tage mit Clean Code und Software Craftsmanship. Wenn das nicht genuge ist 😉 Gem. Wikipedia bezeichnen Softwareentwickler in erster Linie Quellcode, aber auch Dokumente, Konzepte, Regeln und Verfahren, die intuitiv verständlich sind als „sauber“. Als intuitiv verständlich gilt alles, was mit wenig Aufwand und in kurzer Zeit richtig verstanden werden kann.

Hier mal ein Überblick, den ich vor Jahren schon gemacht hatte: „Clean Code Developer (und Software Craftsmanship)“ weiterlesen

Einfaches generieren von Software Bill of Materials (SBOM) mit Maven CycloneDX Plugin

SBOM (Software Bill of Materials) ist eine Inventar Liste einer Codebasis (hier im Beispiel Java), einschließlich aller identifizierbaren Komponenten samt ihrer Lizenz- und Versionsinformationen sowie Angaben zu eventuell vorhandenen Sicherheitslücken.
SBOM soll helfen, den Softwarecode samt bekannter Bugs und lizenzrechtlicher Fallstricke in der Codebasis zu inventarisieren, um so Risiken auszumerzen.

Diese SBOM Listen im Json oder XML Format können leicht mit dem Maven Plugin CycloneDX erzeugt werden.

Das Plugin kann in der pom.xml an die Package-Phase wie folgt mit den default Werten angekoppelt werden:

Hier die erzeugten Beispiel SBOM für das TWBibel Projekt im XML Format (entfernt).

Und im JSON Format:

„Einfaches generieren von Software Bill of Materials (SBOM) mit Maven CycloneDX Plugin“ weiterlesen

Explorer Plug-In und Start Explorer für Eclipse Version: 2022-03 (4.23.0) installieren

Oft will man einen Browser oder eine Commandline in einem bestimmten Verzeichnis öffnen. Für mich ist es eines der wichtigsten Plug-Ins für Eclipse. In Eclipse 2022-03 sind sie nicht per default installiert. Über den Eclipse Marketplace kann das Start Explorer 4.1.0 Plug-Ins leicht installiert werden:


„Explorer Plug-In und Start Explorer für Eclipse Version: 2022-03 (4.23.0) installieren“ weiterlesen