Es gibt ja schon seit Oktober eine neue Version des Camunda BPMN 2.0 Modelers. Quicktest mit meinem Crypto-Workflow:

Download für die Version … „Quicktest: Camunda Modeler 4.11.1“ weiterlesen

mit Java, Raspberry Pi, SDR, Linux, Arduino, Sicherheit, Blender, KI, Statistik, Krypto und Blockchain
Es gibt ja schon seit Oktober eine neue Version des Camunda BPMN 2.0 Modelers. Quicktest mit meinem Crypto-Workflow:

Download für die Version … „Quicktest: Camunda Modeler 4.11.1“ weiterlesen
Eben eine Neue Eclipse Version 2021-12 veröffentlicht. Die letzte in diesem Jahr. Wenn das kein Grund für ein Quicktest ist!

Alles OK beim meinem Blockchain Projekt und das bei BTC 48414 bzw. ETH 4196 🙂 … „Quicktest: Neue Eclipse Version 2021-12“ weiterlesen
„Mama hat immer gesagt, dass Sterben ein Teil des Lebens ist.“ -Forrest Gump
Hatte ja schon mal einen Lebenskalender Generator im PDF erstellt und hier davon berichtet.
Hier gibt es eine schöne Visualisierung der Lebenserwartung. Man muss nur sein Alter und sein Geschlecht angeben und schon geht es los. Hier mal ein Beispiel eines 58 Jahre alten Mann in der USA als Foto …
…
Also noch 20-29 Jahre in der USA „Visualisierung der Lebenserwartung (Lebenskalender)“ weiterlesen
Vor drei Tagen ist die neue Blender Version 3.0 veröffentlicht worden. Mit Blender dem freie, mit der GPL lizenzierte 3D-Grafiksuite, können Körper modelliert, animiert und mit texturen versehen werden.
Das habe ich mal kurz an einem Covid-10 Virus Textur gemacht, die ich auf eine Kugel gelegt habe. Diese habe ich dann etwas annimiert und das ganze als mp4 gerendert. Die Renderfunktionen sind etwas versteck, habe den Toolbar-Button und die relevanten Felder mal grün markiert:

Hier das Ergebnis als HD-Video.
GO ist eine Programmiersprache von Google und läuft auch auf dem Raspberry PI. Sie ist schnell installiert mit
sudo apt-get install golang

Ein Test mit go version gib die Version aus, und zeigt an, das go installiert wurde. Z.b.
go version go1.15.9 linux/arm
Heute, mal ein „Hallo Welt“ und ein REST-Server um zu zeigen, wie einfach der Start ist.
Also dann mal die Datei erstes-go-programm.go mit diesem Inhalt anlegen: … „Es muss ja nicht immer Java sein, GO ist eine Programmiersprache von Google und läuft auch auf dem Raspberry PI“ weiterlesen

Mit nodejs -v -> v12.22.5 bei: sudo npm install -g truffle auf Linux 5.10.63+ armv6l und das im Urlaub! … „JavaScript heap out of memory – nicht nur bei Java“ weiterlesen
Hatte noch einen Raspberry Pi rumliegen, der Headless mit Raspian 11 bullseye bespielt wurde. Hier ein screenfetch:

Auf den wollen wir nun packet analyzer oder packet sniffer installieren (man braucht dazu kein Kali 😉 ). Hatte in der Vergangenheit schön öfters davon berichtet (1, 2, 3). Tshark ist das Kommandozeilen API für Wireshark. „Penetrationstest: Sniffer tshark auf dem Raspberry nutzen“ weiterlesen

So, es gibt ein neues Update vom Tor Browser: … „Tor Browser 10.0.17 vs. Hidden Onion-Services auf v3 updaten“ weiterlesen
Vor 4 Tagen ist nun das git 2.34.0 Release veröffentlicht worden. Wer auf einen Pi ein apt install git macht, bekommt nur die Version 2.30.2. Wer das aktuelle Release braucht, kann es sich auf dem Pi selbst compilieren.

Wie kann die aktuelles Git Version auf einem Raspberry Pi installiert werden?
Hier die drei Schritte: … „Wie kann die neue git Version 2.34 auf dem Raspberry Pi installiert werden?“ weiterlesen
Mehr als 1000 Mindmaps auch zum Thema Computer gib es auf kleinhirn.eu.
Jetzt in der dunklen Jahreszeit hat man evl. wieder etwas mehr Zeit zum lesen. Warum nicht mal die Bibel lesen.
Wer die Bibel ab heute täglich lesen will, kann diese Termine in seinen Kalender importieren. Dann vergisst man es nicht, und weiß immer wo man ist.

Einfach laden und doppelklicken, genau Anleitung hier. Im Kalender sind dann diese Termine eingetragen. Beispiel für Matthäus mit 1 Kapitel am Tag ab Heute. Man sieht auch den den blauen Link zur Online-Bibel … „„Lies die Bibel täglich““ weiterlesen
Angesichts meiner ca. > 200 git Repos auf github 73, gitlab 25, privat local 92, bitbucket 2 und npm 5 mal ein paar Zeichnungen die im laufe der Jahre (über 5 Jahre alt) zusammen gekommen sind. Es muss ja auch nicht mehr Subversion, Dimensions (Micro Focus), CVS oder IBM Rational ClearCase (lange ist es her 😉 ) sein.
Was waren meine git TOP 10 vor 5 Jahren? Antwort.

Woran liegt das?
Hatte vor Corona schon mal eine Abfrage gemacht, wieviele Flugzeuge in welcher Höhe fliegen. Hier im Beitrag, habe ich auch das Java-Programm dazu vorgestellt, welches ich vor fast 2 Jahren geschrieben haben.

Es waren damals 6559 (19. Mai 2019) Flugzeuge. Heute … „Wieviele Flugzeuge sind jetzt im Vergleich zu „vor Corona“ in der Luft?“ weiterlesen
TWRestMindmap mit React, Patternfly, RESTEasy, Swagger-UI, Quarkus, Panache, ORM, JPA, Hibernate, Docker und PostgreSQL DB verwenden. Um nicht JUnit 5 zu vergessen.

Wir bauen nun mit Quarkus eine React Anwendung die Titel und das Datum von Mindmaps anzeigt und per REST bedient werden kann. Die GUI im Browser sieht dann so aus: „TWRestMindmap mit React, Patternfly, RESTEasy, Swagger-UI, Quarkus, Panache, ORM, JPA, Hibernate, Docker und PostgreSQL“ weiterlesen

Vor ein paar Tagen wurde Picocli 4.6.2 veröffentlicht. An meinem heutigen Urlaubstag habe ich nun Zeit für einen Quicktest. Wie oben zu sehen, ist alles im TWEtherScan Projekt ok. Da habe ich auch eine große Testabdeckung der CMD-Api mit Picocli. Dieses Release fix einige Fehler auch mit dem Encoding. Aber, „This release has no breaking changes„.
Wer einen Reverse Proxy mit Gui, für API-Gateway, Sicherheits Proxy und HTTP-Proxy oä. benötigt, kann den Java Service Proxy auf einem Raspberry Pi 4 (Zero geht nicht) wie folgt erstellen.

Es muss nur Java auf dem Raspberry Pi installiert sein. „Membrane Reverse Service Proxy auf dem Raspberry Pi installieren“ weiterlesen

Am 7. November 2001 hat IBM den Quellcode für die Eclipse IDE freigegeben. Wenn das nicht mal ein Grund ist diese Tastenkombination vorzustellen. Das geht schnell mit der Tastenkombination: Command + Shift + O und unter Win Ctrl + Shift + O. Wenn der Cursor auf einer rot markierten Klasse steht, kann auch nur dieser eine Import gefixt werden mit Command + Shift + M
Meine Twitter App läuft nach dem Update auf Monterey (12.0.1) nicht mehr.

Habe solange die Browser Version verwendet. Nach dem starten „blitzt“ sie nur kurz auf und beendet sich. Habe nun eine Lösung. Bei mir hat das Löschen des Verzeichnis com.twitter.TFSFeatureSwitches.config geholfen:
|
1 |
rm -rf ~/Library/Containers/maccatalyst.com.atebits.Tweetie2/Data/Documents/com.twitter.TFSFeatureSwitches.config |
So es läuft nun auch wieder das MacPorts auf dem MacOS Monterey. Es gibt nun die v12, die mit dem Installationsprogramm installiert werden muss.

Und es läuft wieder mit … „Mac Ports auf MacOs Monterey läuft nun wieder“ weiterlesen

Seit dem 10. Juni 2021 werden Impf-Zertifikate (sogenannte Impfbescheinigungen) in Deutschland in Impfzentren ausgegeben. Den QR-Code kann man auch mit einem Raspberry Pi validieren (von lateinisch validus „kräftig, wirksam, fest“) und den Inhalt des QR-Codes im Klartext ausgeben. Am Beispiel eines Raspberry Pi Zero W sind folgende 6 Schritte nötig.
1. Wir brauchen das Impfzertifikat, also den QR-Code als PNG oder JPG-Bild in einer Datei z.B. max-mustermann.png.
Wie z.B.:

Aber nur den QR-Code, nicht die ganze Seite des Impfzertifikats. … „Impfzertifikat validierung mit dem Raspberry Pi und Python und das zu „Don’t Shut Me Down““ weiterlesen
In der neuen Quarkus Version 2.4.1.Final gib es nun eine schöne Gui für die Bearbeitung der applications.properties. Man kann dort gut Parameter suchen und die Funktionen werden dort auch beschrieben.
Wenn der Quarkus Server im dev Modus gestartet wird (via mvn quarkus:dev), kann über diese URL der Service erreicht werden http://localhost:8080/q/dev/, dann auf Config Editor

und schon ist diese Seite Online. Hier am Beispiel der CO2-Ampel mit MQTT und REST-Service… „Quarkus UI für die einfache Bearbeitung der applications.properties“ weiterlesen
Vor zwei Stunden wurde eine neue ArchUnit 0.0.22 veröffentlicht. Dann mal gleich ein Quicktest. Memory leak ist nun gefixt. Und es können Unterstriche durch Leerzeichen in Testnamen ersetzt werden:
|
1 2 3 |
@AnalyzeClasses(packages = "de.wenzlaff.package") @DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class) public class SomeTestClass { ... } |
Warum wird in JUnit 5-Test kein public mehr verwendet? „Less is more“ sagt das JUnit-5 Team und die Testklassen liegen ja eh meistens im gleichen (Test) Package. Auch ist so eine besser Kapselung möglich.

Das Twitter Intelligence Tool (TWINT) mit Web-Scraping-Technologie kann auch auf einem Raspberry Pi installiert werden.

Mit dem Web Scraper für Twitter, mit dem man Tweets von Usern des Kurznachrichtendienstes einholen kann, ohne dabei vom Twitter API eingeschränkt zu werden läuft unter der MIT-Lizenz (Anleitung Twitter-Intelligence-Tool.pdf). TWINT wurde in Python geschrieben, ist am April 2020 in Version 2.1.20 erschienen. Alle Funktionen gehen aber nicht mehr, weil sich die Twitter API geändert hat. Z.b. wirft ein twint -u programmierung –following diesen Fehler:
CRITICAL:root:twint.feed:Follow:IndexError
Aber einiges geht doch noch. Also mal installieren mit:
pip3 install twint
wenn dann nicht alles geht, hat bei mir geholfen:
|
1 2 |
sudo apt-get install libatlas-base-dev pip3 install --upgrade -e git+https://github.com/twintproject/twint.git@origin/master#egg=twint |
So ein erster Test, alle Befehle ausgeben mit twint -h …: „Twitter Intelligence Tool (TWINT) mit Web-Scraping-Technologie auf dem Raspberry Pi Zero nicht Pi Zero 2 W mit ARM-SoC Broadcom BCM2837 vier ARM Cortex-A53 und 64-Bit-taugliche ARMv8-Kerne“ weiterlesen
Am 11. November letzten Jahres fürte der Ausfall von Infura dazu, dass viele zentrale Börsen die Abhebung von ETH und ERC20-Token gestoppt hatten. Zudem ließen sich Metamask, Uniswap und auch andere Anwendungen auf Ethereum nicht mehr nutzen. Infura scheint ein beliebter Dienstleister für Ethereum Nodes zu sein, auf den sich nicht nur kleinere Unternehmen und Projekte verlassen, sondern auch milliardenschwere Börsen wie Binance.
Für dieses Projekt soll dennoch mal die Infura-API verwendet werden, um den Kontostand einer ETH-Adresse zu ermitteln. Mit dem web3j Framework ist das auch in Java realisierbar. Hier der Architektur Aufbau:
Wir starten (wie immer) mit einem JUnit 5 Test: „ETH-Kontostand via Web3j und Infura mit Java in 5 Schritten abfragen“ weiterlesen
SSH Brute-Force mit Java. Gar nicht so schwierig wie hier beschrieben.

Die neue Version läuft jetzt nur noch mit Java 11. „SSH Brute-Force mit Java, picocli und TWHackSSH jetzt auf Java 11 umgestellt“ weiterlesen

Es muss ja nicht immer remix sein, um ein Smart-Contract zu compilieren. Es geht auch wie oben dargestellt mit einem Maven-Plugin (oder Gradle) um mit Ethereum-Netzwerk zu interagieren. Also wie können Solidity Smart Contracts kompiliert und dafür eine Java-Wrapper-Klassen dafür generiert werden?
Wir nehmen als Beispiel mein bekannter Smart-Contract Gehirn.sol der den IQ auf der Blockchain festhalten kann und mit Solidity programmiert ist und speichern in in dem src/main/resources Verzeichnis.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
// SPDX-License-Identifier: MIT pragma solidity ^0.6.0; /** * @title Gehirn von Thomas Wenzlaff * @dev Mein Smart Contract mit solidity zum Speichern von IQ auf der Blockchain */ contract Gehirn { uint256 iq; constructor() public { // Mittelwert des IQ setzen iq = 100; } function setIQ(uint256 neuerIQ) public payable { iq = neuerIQ; } function getIQ() public view returns (uint256) { return iq; } function getBedeutung() public view returns (string memory) { if (iq <= 40) return "Keine Aussagekraft"; if (iq >= 41 && iq <= 70) return "Weit unterdurchschnittlich – Geistige Behinderung"; if (iq >= 71 && iq <= 79) return "unterdurchschnittlich"; if (iq >= 80 && iq <= 89) return "etwas unterdurchschnittlich"; if (iq >= 90 && iq <=109) return "Durchschnitt"; if (iq >= 110 && iq <=119) return "hoch"; if (iq >= 120 && iq <= 129) return "sehr hoch"; if (iq >= 130 && iq <= 159) return "hochbegabt"; if (iq > 160) return "Keine Aussagekraft"; } } |
Das Plugin wird mit mvn web3j:generate-sources gestartet und wie folgt in der pom.xml eingebunden: „Smart-Contract Wrapper für Java mit web3j-maven-plugin erstellen“ weiterlesen