Argomenti
Programmazione, cloud, database e storia dell'informatica: appunti di un informatico, scritti per essere usati.
Programmazione
Linguaggi, Git, test, debugging, algoritmi e qualità del codice spiegati con esempi veri.
Cloud e DevOps
Container, CI/CD, infrastruttura come codice, backup, osservabilità e costi del cloud.
Dati e database
SQL, modellazione, indici, transazioni, NoSQL e qualità dei dati, dal foglio di calcolo in su.
Storia dell'informatica
Macchine, persone e idee che hanno costruito l'informatica, da Pascal al Web.
Articoli in evidenza
Accoppiamento e coesione: progettare moduli facili da cambiare
Accoppiamento e coesione spiegati con esempi: perché moduli coesi e poco dipendenti rendono il software più facile da modificare, testare e capire.
Sviluppo, staging e produzione: ambienti che si somigliano davvero
Perché servono ambienti separati, come renderli simili alla produzione, configurazione tramite variabili, dati di test realistici e principi twelve-factor.
Anagrafiche duplicate: come trovarle e unirle senza perdere dati
Normalizzazione, chiavi di confronto, somiglianza tra stringhe e fusione: un metodo pratico per eliminare i clienti duplicati da un database.
Ada Lovelace e la Nota G: il primo programma della storia
Chi era Ada Lovelace, come nacquero le sue Note sulla macchina analitica e perché la Nota G sui numeri di Bernoulli è considerata un vero programma.
Debito tecnico: cos'è, come riconoscerlo e come ripagarlo
Il debito tecnico spiegato in modo concreto: origini, segnali d'allarme, come misurarlo, comunicarlo a chi decide e ripagarlo senza fermare lo sviluppo.
Cron e systemd timer: automatizzare i lavori pianificati
Come pianificare backup, pulizie e report su Linux con cron e timer di systemd: sintassi, differenze, registri, lavori sovrapposti e notifiche di errore.
Date e fusi orari nei database: come non sbagliare gli orari
UTC, ora legale, timestamp con e senza fuso: le regole pratiche per salvare date e orari in un database e mostrarli giusti agli utenti di ogni paese.
Da Boole a Shannon: come la logica è diventata circuito
L'algebra di George Boole e la tesi di Claude Shannon del 1937: come le leggi del pensiero logico sono diventate i circuiti di relè e poi di transistor.
Leggere uno stack trace Python: guida riga per riga
Come leggere un traceback Python: ordine delle chiamate, tipo di eccezione, eccezioni concatenate ed errori più comuni, con esempi riga per riga.
GitOps: usare Git come fonte di verità per i rilasci
Cos'è GitOps, differenza tra modello push e pull, come funzionano Argo CD e Flux, come gestire i segreti e quando questo approccio conviene davvero.
Indici nei database: come funzionano e quando crearli
Cos'è un indice B-tree, perché velocizza le ricerche, quanto costa in scrittura e come scegliere le colonne giuste, anche negli indici composti.
FORTRAN: John Backus e il primo linguaggio di alto livello di successo
Come nacque FORTRAN in IBM tra il 1954 e il 1957, perché il suo compilatore ottimizzante convinse gli scettici e cosa resta oggi di quel linguaggio.