Appunti tecnici su software, sistemi, strumenti e tutto ciò che trovo utile.
Scrivo di C++, Linux, Android, strumenti open source, sviluppo software, sistemi embedded e altro. I contenuti sono scritti in .org o .md e trasformati in HTML statico durante la build.
Guida pratica al protocollo CAN: segnali fisici, arbitraggio, frame, timing, DBC, diagnostica, CAN FD, CAN XL e sicurezza.
Guida pratica al BLE su ESP32: ruoli, advertising, GATT, MTU, throughput, sicurezza, privacy e parametri di configurazione.
Usare RAII per tenere il rollback vicino allo stato da proteggere.
Distinguere un puntatore obbligatorio da un valore opzionale già nella firma di una funzione.
Usare più lambda come un unico visitor per rendere std::visit più leggibile.
Applicare RAII anche agli handle che non sono puntatori.
Un'introduzione agli strong type in C++ partendo da un errore facile da commettere.
Un esempio per vedere come ranges e views di C++20 rendono più leggibili gli algoritmi sulle collezioni.
Una spiegazione dei concept di C++20: cosa sono, quando servono e come usarli senza appesantire il codice.
La mia esperienza con openSUSE Tumbleweed tra rolling release, KDE, stabilità e piccoli compromessi quotidiani.
Come uso Obtainium per aggiornare app Android open source direttamente dalle fonti ufficiali.
Dopo il passaggio a GrapheneOS ho iniziato a sostituire le app principali con alternative più rispettose della privacy.
Dopo mesi di utilizzo quotidiano, GrapheneOS è diventato il mio sistema operativo preferito per smartphone.
Come ho portato le regole di kill switch da iptables a nftables dentro una configurazione wg-quick.
Perché nftables rende più ordinata la gestione delle regole firewall rispetto a iptables e ip6tables.
Confronto tra header guards e pragma once, con vantaggi e limiti di entrambe le soluzioni.
Differenze tra git revert e git reset quando bisogna annullare l'ultimo commit.
Un modo rapido per controllare la versione di un pacchetto installato senza eseguire direttamente il binario.
Partendo dal modello signal/slot di Qt, costruisco una piccola implementazione moderna in C++.
Una struttura C++ ordinata, con librerie e applicazioni separate e una build più semplice da seguire.
Il primo appunto del sito: perché ho deciso di iniziare a scrivere pubblicamente.




















