● Codice, cloud e dati

Informaticafatta bene, spiegata meglio.

Programmazione, cloud, database e storia dell'informatica: appunti di un informatico, scritti per essere usati.

Sviluppo, staging e produzione: ambienti che si somigliano davveroDockerfile ben scritto: immagini piccole, sicure e riproducibiliOsservabilità: log, metriche e tracce per capire le applicazioniSLI, SLO ed error budget: misurare l'affidabilità che serveChiavi primarie naturali o surrogate: come scegliereIndici nei database: come funzionano e quando crearliFile CSV: i problemi più comuni e come risolverliNULL in SQL: le trappole che falsano i risultati delle queryDebugging metodico: trovare i bug con il metodo scientificoDare nomi nel codice: variabili e funzioni che si spieganoStrategie di branching Git: trunk-based, GitHub flow e Git flowArchitettura di von Neumann: l'idea del programma in memoriaENIAC: come funzionava il gigante elettronico del 1946Konrad Zuse e lo Z3: il calcolatore programmabile costruito a BerlinoSviluppo, staging e produzione: ambienti che si somigliano davveroDockerfile ben scritto: immagini piccole, sicure e riproducibiliOsservabilità: log, metriche e tracce per capire le applicazioniSLI, SLO ed error budget: misurare l'affidabilità che serveChiavi primarie naturali o surrogate: come scegliereIndici nei database: come funzionano e quando crearliFile CSV: i problemi più comuni e come risolverliNULL in SQL: le trappole che falsano i risultati delle queryDebugging metodico: trovare i bug con il metodo scientificoDare nomi nel codice: variabili e funzioni che si spieganoStrategie di branching Git: trunk-based, GitHub flow e Git flowArchitettura di von Neumann: l'idea del programma in memoriaENIAC: come funzionava il gigante elettronico del 1946Konrad Zuse e lo Z3: il calcolatore programmabile costruito a Berlino

Argomenti

Programmazione, cloud, database e storia dell'informatica: appunti di un informatico, scritti per essere usati.

Articoli in evidenza

{ } Programmazione

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.

4 min di lettura →
☁ Cloud e DevOps

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.

4 min di lettura →
▦ Dati e database

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.

4 min di lettura →
◷ Storia dell'informatica

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.

5 min di lettura →
{ } Programmazione

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.

4 min di lettura →
☁ Cloud e DevOps

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.

5 min di lettura →
▦ Dati e database

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.

5 min di lettura →
◷ Storia dell'informatica

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.

5 min di lettura →
{ } Programmazione

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.

4 min di lettura →
☁ Cloud e DevOps

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.

5 min di lettura →
▦ Dati e database

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.

4 min di lettura →
◷ Storia dell'informatica

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.

5 min di lettura →