Abonnieren

Liebes BLOG Tagebuch!

Man sagt:
Was wir wissen, ist ein Tropfen, was wir nicht wissen, ist ein Ozean.
(von Isaac Newton oder aus Dark)

Ich muss heute also noch sehr viel trinken. 😉

Diese Seite benutzt KEINE Cookies! Wozu auch?
Hier geht es NICHT um Browser-Kekse, Werbung und Spionage, SONDERN um Programmierung, Hardware, Software und was mir sonst noch so passiert ist, damit ich in 10 bis 20 Jahren eine Erinnerungshilfe an meine momentanen Erlebnisse parat habe.

Was bisher geschah:


Star Trek: Discovery Staffel 4

Mit der 4.Staffel von Star Trek: Discovery hatten mich die Macher, Netflix und Paramount schwer verärgert, denn wenige Tage vor dem Beginn des Ausstrahlung wurde verkündet, dass die Serie gar nicht im europäischen Raum verfügbar sein würde.

Doch … nach sehr viel Kritik … entschied man sich doch noch auf pluto.tv jede Woche eine Episode zu zeigen.

Und so kam ich letztlich doch in den Genuss, die neueste Star Trek Produktion (ganz ohne Tricks) mitverfolgen zu können.

» Ganzen Beitrag lesen

Abstürze abfangen

Das Schlimmste, was passieren kann, ist, wenn eine Fremdbibliothek in einem internen Aufruf eine Schutzverletzung (Segmentation Fault) produziert und den eigenen Prozess dann gleich mit in den Abgrund reißt.

Das Debugging wird dann sehr erschwert.

Doch es gibt Hoffnung: Man kann auch SegFaults abfangen und im Idealfall einen Crash verhindern.

» Ganzen Beitrag lesen

restrict

Mit der Fehlermeldung

error C2485: ‘constant’: unrecognized extended attribute

eröffnete mir der MSVC 2022 beim Kompilieren von libreSSL die Möglichkeit, wieder einmal über ein “neueres” C Schlüsselwort nachzudenken, nämlich restrict

» Ganzen Beitrag lesen

Serieller Bypass

Unterschiedliche Menschen sehen die gleichen Dinge unterschiedlich.
Manche schreiben Buchstaben, die einen von links nach rechts, die anderen umgekehrt, und wieder andere malen Logogramme von oben nach unten.

… und unterschiedliche Mainboards nummerieren COM-Port Pins unterschiedlich. Einige waagerecht, andere senkrecht.

» Ganzen Beitrag lesen

archive.org

Entgegen vieler Behauptungen nach der Art:

Das Internet vergisst nicht.

behaupte ich: Das Gegenteil ist der Fall.
Denn Websites und Software, die älter als 5 Jahre sind, verschwinden von heute auf morgen, wenn Firmen Pleite gehen oder Privatleute ihre Homepage auflösen. (Nur bescheuerte Fotos von Fresstellern und Katzen leben auf Facebook ewig weiter.)

Doch einer kämpft gegen das globale Vergessen an:
Das Internetarchiv von archive.org.

» Ganzen Beitrag lesen

Logging und Zustände

Wenn man mit Hintergrunddiensten arbeitet, die sich schwerer debuggen lassen und an keine UI oder Konsole gebunden sind, bekommt ein uraltes Schema wieder eine große Bedeutung: Nämlich leicht lesbare Logdateien.

Basierend auf den Erfahrungen mit anderen Bibliotheken wurde im GATE Framework auch ein “etwas anderes” Logging-System integriert.

» Ganzen Beitrag lesen

Lokale C++ Typen

Compiler Experimente mit älteren Varianten des GCC haben mir leider einen Workaround zerschossen, den ich als Abstraktion und Ersatz von Lambda Ausdrücken vorgesehen hatte:

Nämlich den Einsatz von lokalen Typen.
Konkret: Klassen, die innerhalb einer Funktion deklariert werden.

» Ganzen Beitrag lesen

Lupus est homo homini

Während 1000 km von mir entfernt Schusswaffen abgefeuert werden, habe ich sie heute wieder aus meiner DVD Sammlung rausgesucht: Eine der vermutlich bedeutendsten Folgen aus der Serie Star Trek Deep Space 9.

Es war die 8. Folge der 7. Staffel, in der das sonst so sterile Set von Raumschiffen durch die raue Kulisse eines Stellungskrieges ausgewechselt wurde und wo nur Waffengewalt und Zerstörung die Handlung dominierten.

» Ganzen Beitrag lesen

daemonize()

Tools wie daemonize oder start-stop-daemon starten laut ManPage einen Prozess “als Daemon” unter BSD oder Linux.
Doch die Einrichtung und der automatische Start von Diensten unter unixoiden Systemen ist am Ende dann doch noch etwas ganz anderes.

Und wieder einmal muss ich mich zuerst mal mit mir selbst einigen, wie man das daemon Konzept in C/C++ Programmen integrieren kann.

» Ganzen Beitrag lesen

HTTP Server

Mit der Entwicklung eines eigenen kleinen HTTP Servers bin ich damals vor 9 Jahren in die Embedded-Welt eingestiegen.

Auch im GATE Projekt befindet sich eine adäquate neue rein auf C aufbauende Implementierung, die mir die Verwaltung von MicroServices erleichtern soll.

» Ganzen Beitrag lesen

IP Konfiguration

Während alle Betriebssysteme vergleichbare APIs für das Dateisystem haben, ist die zweitwichtigste (manchmal auch wichtigste) Konfiguration vollkommen individuell in die Software eingeflossen: Die TCP/IP Konfiguration.

Dass Windows und Linux unterschiedliche Meinungen haben, war zu erwarten. Doch dass alle Unix Derivate unterschiedliche Wege gehen, überrascht mich immer wieder.

» Ganzen Beitrag lesen

Straßenkarten und Satellitenbilder

Als ich damals meinen PKW Führerschein machte, war die Landkarte aus Papier immer noch ein übliches Inventar in jedem Fahrzeug.
Doch spätestens 2010 hatte jeder entweder ein separates Navigationsgerät oder ein Smartphone mit einer entsprechenden App, um sich auf den Straßen orientieren zu können.

Viel interessanter ist aber, wie man solche Karten-Apps selbst schreiben kann.

» Ganzen Beitrag lesen

Webhosting 1.0

Als ich etwa im Jahr 2001 “das Internet” entdecken durfte, wollte ich auch meine eigene Webseite haben. Aber bezahlen … nein … für so etwas reichte das Taschengeld nicht.

Also begann die Suche nach gratis Webhostern.

» Ganzen Beitrag lesen

MSVC 6/7 type traits

Mit dem Visual Studio 2005 wurde der MSVC halbwegs ordentlich nutzbar. Zwar nicht alle, aber zumindest viele C++ Template-Konstruktionen wurden mit dieser Version endlich standard-konform umgesetzt und so konnten boost und andere Bibliotheken langsam in Richtung C++11 marschieren.

Doch … was war vorher?
Tatsächlich dokumentieren ältere boost Ausgaben einige faszinierende Workarounds um Template-Features wie Type-Traits auch mit älteren nicht-standard-konformen Compilern umzusetzen.

» Ganzen Beitrag lesen

Bitbucket App-Passwords

Am 1. November wurde es angekündigt und am 1. März 2022 ist es so weit:

Bitbucket sperrt User Passwörter für den Zugang zu seinen GIT Repos.

Die Alternative sind SSH Schlüssel oder “App-Passwörter”.

» Ganzen Beitrag lesen

📧 📋 🐘 | 🔗 🔔
 

Meine Dokus über:
 
Weitere externe Links zu:
Alle extern verlinkten Webseiten stehen nicht in Zusammenhang mit opengate.at.
Für deren Inhalt wird keine Haftung übernommen.



Wenn sich eine triviale Erkenntnis mit Dummheit in der Interpretation paart, dann gibt es in der Regel Kollateralschäden in der Anwendung.
frei zitiert nach A. Van der Bellen
... also dann paaren wir mal eine komplexe Erkenntnis mit Klugheit in der Interpretation!