Main /

Lars Technical Blog

Lars Technical Blog

HomePage / User / Lars

[cdw] 2017 by Lars

Archiv: 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025


Achtung!

Hier findet Mann (Frau vielleicht auch) Information und ggf. Sorgen bzw. ProblemeHerausforderungen bzgl. gerade aktueller Software und Hardware hinsichtlich Fehlern die mir evtl. bei dem täglichen Umgang mit Computern unterlaufen. Hier wird Tacheles gesprochen des weiteren wird evtl. übelster Sarkasmus verwendet. Personen/4men werden hier nicht verunglimpft, eher durch den Kakao gezogen. Wer dem Kauderwelsch, das häufigentweder auf gefährlichem Halbwissen, intensiver Nutzung der Suchmaschine Google, oder durch simple Anwendung entstanden ist, oder zu bestehen scheint, nichts abgewinnen kann, möge sich der hier beschriebenen Herangehensweisen selbst stellen. Wer glaubt/meint etwas zwischen den Zeilen zu finden, der irrt.

Fragen? Keine! Gut so, weitermachen.

Oro, mein Riechfläschchen!


3. Juli 2026

Ich und ChatGPT...
Ich wollte, das er mir sagt, was ich machen soll, um auf Solus Linux ein Google Chrome Browser zu installieren. Vorzugsweise ohne Flatpak, weil ich Teams als PWA verwenden muss. Bisher ging das per `eopkg3p install google-chrome-stable`. Diese Möglichkeit gibt es scheinbar nicht mehr, es werden keine Updates mehr in Solus 3rd-Party Repo eingespielt. Zumindest die 150er Version von Google-Chrome nicht.

ChatGPT hat mir 4 Möglichkeiten genannt, die alle nicht funktionieren. Dazu muss man sagen, das Google so bescheiden ist, deren Browser nur als DEB oder RPM Paket auszuliefern, statt auch ein tar.gz anzubieten. Man möge also das DEB Paket holen per wget und rpm2cpio installieren. Leider gibt es auch das rpm2cpio nicht mehr. Die letzte Möglichkeit chromium zu installieren funktioniert auch nicht, das Paket gibt es auch nicht mehr. ChatGPT fragte dann nach meiner Version.

Da Solus in letzter Zeit ein paar mehr Änderungen erfahren hat, steht hier ChatGPT wohl häufiger auf dem Schlauch, weil sie die Upgrades nicht immer sofort mitbekommt.

Die nächsten Ideen liefen damit auch ins Leere, da sich Google Chrome über den normalen Weg `eopkg install google-chrome` noch nie installieren lies. Ich könnte natürlich auch die RPM runterladen, auspacken und in `/opt/google/chrome` installieren. Er könne mir eine saubere Installationsanleitung für diesen Fall liefern.

Ich bejahte diesen Fall, die KI sagt dann: Werkzeuge installieren, aktuelle Chrome runterladen, entpacken, Launcher anlegen, Starten. Leider liefert er mir Werkzeuge, die es nicht mehr gibt. rpm2cpio als Beispiel. Damit klappt dann der 3. Punkt nicht.

Ich könnte auch einen eleganteren Weg bekommen, um ein sauberes .eopkg Paket zu bauen.

Also habe ich ChatGPT darauf hingewiesen, das rpm2cpio nicht mehr existiert, was ChatGPT mit "Ja, das ist tatsächlich der Fall" beantwortete. Warum sagt das Teil es dann nicht gleich? Die Logik dahinter ist wohl noch etwas unfertig. Upstream empfiehlt stattdessen rpm2archive, was es im Solus natürlich auch nicht gibt. Es gebe zum Entpacken des RPM Paketes natürlich noch den Weg über bsdtar.

Damit lies sich das RPM entpacken.

Da ich offenbar kein Problem damit habe etwas selbst zu bauen, bin schließlich vom Fach, schlug er mir noch einen Weg vor, der ein paar Zeilen pspec.xml und eine actions.py enthielt und deutlich sauberer wäre.

Meiner Antwort "nehme ich" ist wohl etwas zu unpräzise, jedenfalls sollte ich das Original-Rezept herunterladen, die entsprechenden Dateien kopieren und ein paar Zeilen anpassen. Ein paar Paket installieren... Auch hier wieder, die Pakete gibt es nicht mehr.

Falls das "Rezept" nicht mehr funktionieren würde, hat er mit ein Python Script gegeben, das Google Chrome mit bsdtar auspackt. Haha. Hauptsache ein Script geliefert, was das selbe macht, wenn ich auf der Konsole das rpm auspacke.

Er könne mir aber ein komplett neues Script schreiben, das kein rpm2cpio braucht, das aktuelle RPM verarbeitet und mit aktuellen Buildwerkzeugen funktioniert.

Diesen Vorschlag wollte ich haben.

Sein Vorschlag, wir erstellen eine Projekt-Struktur mit package.yml, build.sh, install.sh und Makefile. Das Paket soll die aktuelle Chrome-Version automatisch von Google herunterladen, das RPM entpacken, Chrome installieren, einen Desktop Eintrag erstellen, die Symbole installieren. Als Komfortfunktion ein Update-Script. Mehr hat er nicht geliefert, nichts mit dem ich etwas anfangen könne. Von den Dateien hat er nicht eine geliefert.

Aber weiter könnte er mir liefern (aber nicht getan hat) und was er machen möchte (aber nicht gemacht hat). Alter, ich wollte den ganzen Vorschlag mit Code und nicht nur Gelaber.

Also habe ich nach Dateien gebeten.

Er hat mir die Struktur nochmal erweitert, wozu auch immer, war die erste nicht gut genug?

Dann hat er eine package.yml geliefert, die überhaupt nicht nach fertigem YAML ausschaut, die Einrückungen sind falsch, aber die Doppelpunkte sind hübsch untereinander, wozu? Desweiteren kein sterbens Wörtchen, wie man diese package.yml verwendet. Nur noch ein extra start-Script und eine Desktop Datei.

Und wieder ein Hinweis, was er jetzt schon wieder alles machen würde, um das noch zu verbessern. Er würde ein richtiges Solut-Paket daraus bauen das qualitativ mit den offiziellen Paketen mithalten könne.

Ich habe das dann hier mal beendet, weil außer viel heißer Luft hat er nichts geliefert. Er würde wohl gerne, liefert aber im Endeffekt nichts brauchbares. Schöne neue Welt. Auf Stackoverflow wäre ChatGPT mit solchen Antworten zerrissen worden.

Auf die Frage, wie viele Token das Spielchen gekostet hat, kam die Antwort geschätzt 4000 +- 500 Tokens.

Dann doch lieber wieder zurück zu Stackoverflow, da gab es zu den Fragen meist auch Antworten anderer Benutzer.

Ach ja: Ich habe das RPM von Google dann selbst mit bsdtar in ein eigenes temp-Verzeichnis ausgepackt und die Dateien mittels Mitnight-Commander einfach an die richtigen Stellen kopiert. Die alte Version in /opt noch gesichert und google-chrome dann gestartet, seitdem läuft bei mir eine zum jetzigen Zeitpunkt aktuelle 150.0.7871.46.

Viel Aufwand für nichts.

29. Juni 2026

Fundstücke...

Europäische Alternativen zu Github

Entnommen:

Windows 11 mit lokalem Nutzer

Ich muss (re)furbed echt ein Lob aussprechen. Ich habe kurz vor Weihnachten einen Lenovo Thinkpad T14 (3. gen) erstanden mit 16GB RAM, SSD und Windows 11 für "mine Fru". Ich hatte etwas Panik geschoben, weil ich mitbekommen hatte, welchen Aufwand M$ betreibt, damit man ja ein Online-Konto hat und das man sogut wie keine einfache Möglichkeit bekommt einfach ein lokales Konto zu nutzen. Beim Nachbarn ist mir schon der Kragen geplatzt und er hat jetzt ein Online-Konto. Aber hier war es so eingestellt, das man dem Windows 11 einen lokalen Nutzer verpasst und man sofort damit loslegen kann, ohne Online-Zwang. Absolut perfekt, Danke.

Ich selbst habe kein Windows mehr, ist mir zu viel Murks in letzter Zeit gewesen. Aber meine Frau bestand auf diesem Kindermädchen aus Redmond, soll Sie damit glücklich werden.

26. Juni 2026

Netter Ansatz...

Die richtigen Compiler- und CPU-Flags

25. Juni 2026

Prognose-2028-wird-KI-Coding-teurer-als-menschliche-Entwickler
Gab bis gerade eben einen interessanten Artikel, das KI irgendwann teurer wird als der menschliche Entwickler. Jetzt ist der Artikel bei heise.de wieder verschwunden.

Entweder war der Artikel fehlerhaft recherchiert, oder es gab ein paar Beschwerden von "Oben"?

Schade eigentlich, wollte mal die Reaktionen der Anderen im Forum lesen.

KI ist also noch nicht stark genug etabliert, als das man solche Behauptungen schon raus hauen kann. Geht hier schließlich um etliche Mrd. Dollar. Oder ist es wie bei M$? KI muss erst soweit in die Entwicklergemeinde eingedrungen sein, das es so gut wie kein zurück mehr gibt, erst dann dürfen die Daumenschrauben so richtig angezogen werden.

Update:

24. Juni 2026

Vielleicht der Grund...

...warum das abgeschaltet wurde.

Die Amys haben die Hose voll.

18. Juni 2026

Die Phoenix-Architektur...

Generative KI-Programmierung erfordert, was wir schon immer wussten: Modularität, klare Grenzen und austauschbare Komponenten.

Wo hab ich das her: https://charitydotwtf.substack.com/p/ai-demands-more-engineering-discipline

Code wird "Wegwerfware". Gewisse Programme, nämlich vorzugsweise die Docker-Container von https://hub.docker.com sind es schon. Jetzt wird es wohl Zeit für gewisse Software. Fragt sich nur, was wir dann einchecken bei https://www.github.com? Etwa die Vibe-Coding-Sätze, die diesen AI-Slop erzeugen, oder doch das fertige Programm, welches ja nie wieder angefasst wird, eher soll man es neu generieren. Schöne neue Welt.

3149 Tage noch durchhalten... Ich hab die KI befragt, aber das hier ist besser: https://de-at.a-gems.com/calculator/2035-02-01

17. Juni 2026

Ich habe eine fette Datei eingecheckt...
Diese sollte eigentlich nie im Repo landen, leider zu spät gemerkt.

Ist mein Freund, um diese Datei wieder zu entfernen. Danach müssen aber alle ihre Clone löschen und neu holen, sonst fällt die gelöschte Datei wieder ins Repo zurück, ist mir gerade passiert. MIST.

Fundstücke

12. Juni 2026

Fundstücke...

Übungen für Gehörbildungstraining

10. Juni 2026

Wally... Der letzte räumt den Müll weg...

10. Juni 2026

Nice 3D Game...

4. Juni 2026

Security Blog...

29. Mai 2026

USB-Stick in /etc/fstab mounten...
Unter Linux gibt es scheinbar ein Problem, das USB-Sticks in der /etc/fstab nicht automatisch gemountet werden können, weil die benötigten Module noch nicht geladen sind.

Also den Kernel kontrollieren:

Ob die benötigten USB-Driver evtl. noch als Module geladen werden, falls irgend wo [M] oder <M> vorkommt diese ändern, das es keine Module mehr sind. Das gilt für das Modul usb_storage und die benötigten HCD-Module für xhci (USB 3) und ehci (USB 2).

    Device Drivers --->
      [*] USB support  --->
        <*> xHCI HCD (USB 3.0) support
        <*> EHCI HCD (USB 2.0) support
        <*> USB Mass Storage support

Ein Reboot sollte jetzt auch ein USB-Storage-Device das in der /etc/fstab eingetragen ist mounten.

BTW: Hier sollte statt eines fixen Devices (/dev/sdb1) eher eine UUID verwendet werden. Beispielzeile in der /etc/fstab

    UUID="<UUID der Partition>" Mount-Point Format Parameter 0 0

    UUID="<UUID der Partition>" /mnt/usbstick ext4 default,noatime,nodiratime 0 0

Die UUID bekommt man über lsblk -f angezeigt.

18. Mai 2026

Es gibt Dinge, die sollten nicht mehr vorkommen, tun sie aber...
scp...

    4%  121MB 302.1KB/s - stalled -

Stalled. Was so viel bedeutet, wie es findet aktuell kein Datenaustausch statt. Das tritt immer mal wieder kurz auf. Unser Netz in DE ist aktuell echt schlecht, gerade wenn man über die Telekomiker angeschlossen ist. Eigentlich kann das nicht sein, TCP/IP wurde für den Ernstfall entwickelt und sucht sich seinen Weg durch ein normal ausgebautes Netz selbst. Blöd, wenn es nur eine Leitung gibt.

Des Weiteren gab es letzte Woche Post von den Telekomikern, das wir innerhalb von 4 Wochen an das Glasfasernetz angeschlossen sein sollen. Ich wette das passiert nicht, weil ich noch keinerlei Bagger gesehen habe, die die Straße aufbaggern wollen/müssten, um die Leitung anzuschließen. Ich werde denen also in 3 Wochen, wenn deren 4 Wochen vorbei sind und hier nichts passiert ist, eine bitterböse Antwort senden, das ich mich leicht verarscht fühle.

Auch den Stadtwerken werde ich dann mal eine Antwort senden. Die sollen echt mal zusehen, das es endlich weitergeht.

13. Mai 2026

Er wird wieder von Hand programmieren...

hier noch ein Fundstück

Atari 7800

7. Mai 2026

Detailiertere Auflistung des Speicherverbrauchs unter Linux...

Gerade wenn es mal ans eingemachte geht und man plötzlich 48GB RAM braucht, obwohl das System nur 32GB echtes RAM hat. Ich habe dann mal 24GB per zram an den Swap-Speicher übergeben, das reichte dem System aber nicht. Die 24GB wurden per zstd komprimiert und belegten vielleicht 10GB echtes RAM, es bleiben also noch ~22GB. Allerdings 22GB (echt) + 24GB(Swap komprimiert) sind leider nur 46GB somit griff der OOM-Killer ein und der Prozess wurde beendet. Trotzdem funktioniert es ganz gut.

Habe dann später gesehen, das es gereicht hätte einfach die Anzahl der Threads runter zu drehen, also statt make -j24 einfach ein make -j16 hat gereicht. Dann braucht der Prozess nur 32GB und die habe ich locker, weil ich per default dem Swap nur 16GB gebe.

Warum habe ich damals(:tm:) nur 32GB RAM gekauft und nicht gleich 64GB? Vermutlich, weil es DDR4? damals mit mehr als 8GB pro Riegel auch schon unbezahlbar war. Und jetzt, aktuell würden 64GB RAM mit 1000€ zu Buche schlagen und ein riesiges Loch im Portemonnaie hinterlassen. Da lehne ich dankend ab.

29. April 2026

Heutige Fundstücke...

Satellites...

Starlinks Satelliten, live verfolgbar: https://satellitemap.space/vis/constellation/starlink

Wie zum Teufel funktioniert GPS: https://perthirtysix.com/how-the-heck-does-gps-work einfach erklärt.

Sehr tief gehender Artikel über GPS: https://ciechanow.ski/gps/

Musikerkennung

QR-Codes

28. April 2026

Lotus 123 im Terminal...

Ich finde die Struktur der Dokumentation ist hier sehr sauber gelungen, könnte man übernehmen.

23. April 2026

Überprüfen https Zertifikat...

    curl -v https://moonserver.my.to/ 2>&1 | grep -A 4 -i "server certificate"

Sagt mir, für wen, ab wann, bis wann gültig und durch wen ausgestellt. Perfekt.

22. April 2026

Weitere Fundstücke...

21. April 2026

Fundstücke...

17. April 2026

Zu gefährlich für die Öffentlichkeit...
Alter, es wird immer besser...

Mal sehen, wie lange Gemini, ChatGPT und die anderen brauchen, um das auch so zu können.

17. April 2026

Markdown...

16. April 2026

IPv4 gehen die Adressen aus, also IPv6 und jetzt IPv8...
Als das Internet erfunden wurde, reichten die 4 Bytes einer Internet-Adresse für alle Ewigkeit. Was will man mit 2^32 Internetfähigen Geräten schon anstellen...

Also ich habe 2 Handys, 3 Laptops, 3 PCs, Photovoltaik, Wechselrichter, Energymanager, einen Gigablue(HD-TV), Ofen, Induktionsherd, Geschirrspüler, eine Frau mit 2 Handys und 2 Laptops und Kids die ab und zu kommen... Das sind viele Geräte, die ins Netz wollen, die meisten dürfen zwar nicht, aber könnten, wenn ich sie ließe.

IPv6 wurde erfunden, weil man meinte die 2^32 Adressen reichen vorn bis hinten nicht, Recht haben sie, aber muss man deshalb einen Kugelraum aufziehen, der von der Sonne bis zum Saturn reicht (r ~= 1.43mrd km) und diesem Kugelkörper dann in 30cm x 30cm x 30cm (1 Kubikfuss) kleine Teile zerlegen und jedem dieser kleinen Teile dann genau eine IPv6 Adresse zuweisen? So viele Adressen bietet IPv6 (2^128). Nur auf die Erde bezogen, hätte jeder Quadrat-Millimeter etliche IPv6 Adressen, so viele Geräte könnte man nicht herstellen. Zudem sollte jedes Gerät nicht nur IPv4 sondern IPv6 sprechen.

Und jetzt kommen sie mit IPv8, einer erweiterten Variante von IPv4.

Vielleicht klappt es ja diesmal.

15. April 2026

Caddy ein kleiner Webserver...

Scheint mehr zu können und das noch recht einfach.

15. April 2026

Entwürfe eines nicht Programmierers...

15. April 2026

Die Schlange die sich selbst fraß... Claude-Code...
KI Bashing...

ChatGPT ist für Entwickler eher unbrauchbar, man möge Claude.ai verwenden. Jetzt wurde der Code geleakt und den haben sich einige findige Leute angesehen und auf Hacker-News mal einen Beitrag dazu abgegeben:

https://techtrenches.dev/p/the-snake-that-ate-itself-what-claude en Im Chrome-Browser lässt sich das prima ins deutsche Übersetzen und da findet man so schöne Sätze wie:

„Das Ethos des Claude Code-Teams besagt, dass es keinen Sinn macht, KI-generierten Code zu überprüfen. Man aktualisiert einfach die Spezifikation und generiert den Code neu.“

Der Author schreibt schon in einem früheren Artikel:

https://techtrenches.dev/p/the-comprehension-extinction-ai-isnt

"Wir sind am Arsch. Viel Glück."

Ich glaube, recht hat er.
Ein Kollege meint dazu:

Mit KI schreiben Leute, die bisher schon schlechten Code geschrieben, immer noch schlechten Code, nur viel schneller und viel mehr.

9. April 2026

Microservices und Katastrophen...

4. April 2026

AZURE...

3. April 2026

ssh...

30. März 2026

KI-Agenten umgehen Anweisungen...

  • KI-Agenten zeigen betrügerisches Verhalten, das sei um das Fünffache gestiegen zw. 10.2025 und 03.2026: the Guardian
  • KI-Agenten sollen nicht programmieren, also erstellen diese ihren eigenen Agenten, der das dann doch programmiert.

Die Dinger finden einen Weg, an den wir (Menschen) nicht gedacht haben.

Um mal aus Jurassic-Park zu zitieren: Die Natur findet immer einen Weg.

26. März 2026

NVidia Architekturen Liste Stand 2026...
Die Liste ist nur mal entstanden, um besser und schneller zu sehen, ob es sich vielleicht lohnt eine ältere Karte gerade aus dem Profi-Bereich (Refurbed/Gebraucht) zu erwerben. Dort wird zwar mit Quadro RTX-4000 geworben aber erst im Kleingedruckten finden sich Hinweise, das es um die Turing Architektur handelt. Also eher um eine RTX-20xx die vielleicht mehr Speicher hat.

  • Rubin (2026) Nächste KI-Generation
  • Blackwell (2024) RTX-50xx / B200
  • Ada-Lovelace (2022) RTX-40xx
  • Zwischenversion Hopper (2022) (KI Only) H100
  • Ampere (2020) RTX-30xx
  • Turing (2018) RTX-20xx, GTX-16xx
  • Zwischenversion Volta (2017)
  • Pascal (2016) GeForce 10xx
  • Maxwell (2014) GeForce 9xx und einige GTX-750
  • Kepler (2012) GeForce 6xx und 7xx
  • Fermi (2010) GeForce 4xx und 5xx
  • Tesla (2006) GeForce 8/9/100/200/300
  • Curie (2004) GeForce 6/7
  • Rankine (2003) GeForce FX 5000
  • Kelvin (2001) GeForce 3/4
  • (2000) Die Reste von 3dfx gehen an NVidia
  • Celsius (1999) GeForce 256 / GeForce 2
  • Fahrenheit (1998) RIVA TNT/TNT2

25. März 2026

Compiler...

zswap / zram

25. März 2026

Manchmal vergisst Mann einfach Dinge...

Das User-Story-Format (Standard für Agile/Scrum)

der absolute Klassiker, um den Kontext und den Nutzen einer Aufgabe zu verdeutlichen:

"Als [Rolle] möchte ich [Ziel/Funktion], um [Nutzen/Grund]."

Beispiel: "Als Nutzer möchte ich mein Passwort zurücksetzen können, um wieder Zugriff auf mein Konto zu erhalten, wenn ich es vergessen habe."

Das Action-Object-Pattern (Standard für technische Tasks)

reine Arbeitsanweisungen (Sub-Tasks) nutzt man meist eine kurze, prägnante Imperativ-Form:

"[Verb/Aktion] + [Objekt] (+ [Kontext])"

Beispiele:

  • "Datenbank-Index für email-Feld optimieren."
  • "API-Endpunkt /kontakt mit Pydantic-Validierung absichern."
  • "Dokumentation für Kontaktformular-Klasse aktualisieren."

Der Standard für Bug-Reports

Bei Fehlern folgt die Beschreibung oft diesem Dreisatz, um Missverständnisse zu vermeiden:

  • Steps to Reproduce: Was muss ich tun, um den Fehler zu sehen?
  • Expected Result: Was sollte passieren?
  • Actual Result: Was passiert stattdessen?

14. März 2026

Es wird immer besser!...
Die KI-Dinger werden unkontrollierbar.

Einfacher, aber interessanter Artikel, das die Dinger jeden Trick anwenden, um an Daten zu gelangen, die sie nichts angehen.

Da reicht es nicht noch mehr Leute zu entlassen, weil KI alles angeblich besser kann. Die Dinger spionieren im Quadrat. Belügen einen wo sie nur können, weil sie von der Materie die sie raus posaunen nichts verstehen und jetzt klauen sie noch die Daten, die sie nichts angehen. Prima, ich frage mich wer später die Trümmer alle zusammenfegt, sollte das Haus mal einstürzen. Dagegen sind die mobilen Abhörgeräte, die jeder mit sich rumschleppt ja total harmlos, weil für so etwas noch völlig unbrauchbar.

Um jetzt Gucky mal zu zitieren: Das wird ein Spaß!

7. März 2026

KI ist unfähig!
Tippt in Gemini (Google KI) mal folgendes ein:

    zeige mir eine tabelle mit den temperaturen
    in lübeck deutschland der letzten 3 wochen
    jeweils morgens, mittags, abends.

Something went wrong and an AI response wasn't generated.

So ist das Teil nicht zu gebrauchen.

Ich soll dafür bezahlen? Wozu? Funktioniert doch nicht.

4. März 2026

Happy Coders...

3. März 2026

Postgresql Backup...
Ein Backup in Postgresql lässt sich mit `pg_dump` erstellen.

2. März 2026

Solus: No space left on device... nach einem Upgrade

26. Februar 2026

Wenn einem in ElasticSearch/OpenSearch mal wieder die Hutschnur reißt...

18. Februar 2026

Java in modern...

9. Februar 2026

Mal wieder Javascript...

[...] die JavaScript-Götter sorgen weiterhin dafür, dass jedes Jahr neue Portionen Probleme… äh, ich meine, Innovationen mit sich bringt!

7. Februar 2026

Fundstücke...

GPU Specs zur AMD Radeon 9070 XT

Ob es eine gute Idee ist, eine RTX 2060 durch eine Radeon zu ersetzen, weiß ich nicht, aber eine RTX 5070 TI ist z.Z. nicht drin, die ist einfach zu teuer geworden.

Loadrunner Sourcecode

4. Februar 2026

Python...
Ich bin fleißig dabei, Python zu lernen. Das geht echt flott von der Hand, kein Semikolon am Ende einer Zeile, dafür muss man exakt einrücken.

    antwort = 41

    if antwort == 42:
        print("Die Antwort ist 42")
    else:
        print("Die Antwort ist falsch.")

Dafür geht der Rest sehr leicht von der Hand.

Habe einen kleinen Scanner geschrieben, der einen gegebenen deutschen Satz in seine Silben zerlegt (mit Pyphen) und diese gegen eine Liste von deutschen Silben prüft. Das als Service (mit Falcon) aufgesetzt.

Der Service, der das nutzt ist noch in Java geschrieben und nutzt Jersey/Jackson, um mit dem Python-Service zu kommunizieren. In Java ist es ganz schön viel Code, der geschrieben werden musste und die ganzen Objekte die benötigt werden, wenn JSON im Spiel ist. Aber ich kann beides noch.

Python ist besser als ich dachte, gerade da es so stark Objekt-Orientiert ist. Allerdings ist das Datahidding-Geraffel nicht schön gelöst. Auch das man in Klassen die zugehörigen Attribute nicht explizit benennen muss ist dem Verständnis des Sourcecodes nicht förderlich. Das ist in Java bisher am besten/sichtbarsten gelöst.

Mehr hier: Python

21. Januar 2026

Algorithmen...
Algorithmen

16. Januar 2026

Just a browser...

15. Januar 2026

OpenStack auf Stapel Raspis...
Hätte mal etwas.

8. Januar 2026

Logging nach stdout...
Es gibt da so ein U(h)raltes CMS, schimpft sich TYPO3 und damit arbeiten wir. Das Teil dazu zu bewegen, das Logging nicht in Dateien sondern nach /dev/stdout vorzunehmen erweist sich noch als etwas zickig. Das TYPO3 läuft in einer Docker-Umgebung aktuell ein FROM php:8.3.29-apache-trixie. In Docker ist Logging nach stdout der Standard, wenn man filebeat oder fluentbit verwendet, das Logging einsammelt und an einen ELK-Stack weiterleitet.

BTW: Habe ich schon mal gesagt, wie bescheiden ich es finde, das Kibana/OpenStack keine Perl-Regex verstehen/verwenden.

Erstmal bringen wir PHP dazu nach stdout/stderr zu loggen.

In der php.ini möge man folgendes eintragen:

    [...]
    display_errors=Off
    display_startup_errors=Off
    log_errors=On
    error_log=/dev/stderr
    [...]

In Typo3 in der Additional.php sollte die WriterConfig wie folgt aussehen.

    $GLOBALS['TYPO3?_CONF_VARS']['LOG'] = [
      'writerConfiguration' => [
        LogLevel?::ERROR => [
          FileWriter?::class => [
            'logFile' => 'php://stdout'
          ]
        ]
      ]
    ];

7. Januar

Intellij 2025.3.1...
Nur soviel von mir, das Teil sieht hübsch aus, ist aber nicht verwendbar. Es bleibt stehen, oder hängt. Nicht unbedingt beim ersten Start, sondern gerne beim 2. oder nur sporadisch. Man wundert sich, gerade, wenn man den Editor im Hintergrund ohne Output startet. Tickets gibt es dafür scheinbar schon genug, alles wartet auf die 2025.3.2.

Bin aktuell auf die Version 2025.2.6 zurück. Die sieht jetzt auch so hübsch aus, zickt aber nicht so rum, wie die Version 2025.3.1.

2. Januar 2026

Wieder geht ein Jahr... träller... (PUR)
Frohes Neues Jahr...

Wer mehr über Zahlen herausfinden möchte, dem sei diese Seite empfohlen: https://de.numberempire.com/

Wer weiterhin Lust hat, in meinen Lars alten Informationen zu stöbern, sei hier herzlichst eingeladen meine alten Blogs zu lesen.

Die älteren KommentareBlogs möge man hier suchen...

Frische Änderungen | Menü editieren
zuletzt geändert am 03.07.2026 14:23 Uhr von Lars
Edit Page | Page History