Scritti

Blog.

Appunti, riflessioni e approfondimenti.

Orchestrazione di Pipeline: Airflow, Prefect e Dagster a Confronto

Orchestrazione di Pipeline: Airflow, Prefect e Dagster a Confronto

Airflow, Prefect e Dagster fanno la stessa cosa in modi molto diversi. Guida pratica per scegliere l'orchestratore giusto in base a team, numero di pipeline e bisogno di lineage, evitando di partire dal tool sbagliato.

02/11/20267 min di lettura0 visualizzazionidi Marco Salmaso
Idempotenza nelle Pipeline di Dati: Rieseguire un Job Senza Rompere Nulla

Idempotenza nelle Pipeline di Dati: Rieseguire un Job Senza Rompere Nulla

Un job di dati viene quasi sempre rieseguito: per un errore, un backfill o un retry automatico. Se il secondo passaggio duplica righe o gonfia i numeri, il problema non è il retry ma il design. Ecco le strategie concrete per rendere una pipeline idempotente e come verificarlo.

01/11/20269 min di lettura0 visualizzazionidi Marco Salmaso
PostgreSQL: Transazioni, Livelli di Isolamento e Race Condition

PostgreSQL: Transazioni, Livelli di Isolamento e Race Condition

Due richieste arrivano nello stesso istante e il codice sembra corretto, ma il database non ti protegge da solo. Una guida pratica a transazioni, livelli di isolamento e race condition in PostgreSQL, con esempi di lost update, overbooking e retry su serialization failure.

31/10/202611 min di lettura0 visualizzazionidi Marco Salmaso
Test A/B nel Retail: Potenza Statistica, Durata e Trappole dei Risultati

Test A/B nel Retail: Potenza Statistica, Durata e Trappole dei Risultati

Dividere il traffico in due e confrontare i risultati sembra semplice, ma la maggior parte dei test A/B in ambito retail produce conclusioni fragili. Vediamo cosa sono potenza statistica e MDE, perché il peeking rovina gli esperimenti e come impostare un test che dica davvero qualcosa.

30/10/20268 min di lettura0 visualizzazionidi Marco Salmaso
Structured Output: Far Restituire JSON Affidabile agli LLM

Structured Output: Far Restituire JSON Affidabile agli LLM

Gli LLM scrivono testo, ma i programmi hanno bisogno di dati ordinati. Guida pratica agli structured output: schema JSON, tool calling, decoding vincolato, validazione con Pydantic e retry, più gli errori tipici da mettere in conto quando il modello è in produzione.

29/10/20268 min di lettura0 visualizzazionidi Marco Salmaso
dbt: Modellare, Testare e Documentare i Dati nel Data Warehouse

dbt: Modellare, Testare e Documentare i Dati nel Data Warehouse

dbt trasforma le query SQL sparse in un progetto versionato: modelli con dipendenze esplicite, test automatici, documentazione e lineage. Una guida pratica a cosa fa davvero, alle materializzazioni, ai test e ai limiti dello strumento.

28/10/20269 min di lettura0 visualizzazionidi Marco Salmaso
SQLite in Produzione: Quando un File Batte un Server di Database

SQLite in Produzione: Quando un File Batte un Server di Database

SQLite non è un giocattolo per prototipi: con le giuste accortezze regge molti carichi reali, anche in produzione. Vediamo quando conviene, quali sono i limiti concreti sulla concorrenza in scrittura e come configurarlo per non farsi male.

27/10/20269 min di lettura0 visualizzazionidi Marco Salmaso
PostgreSQL: Leggere i Piani di Esecuzione e Capire Quando un Indice Serve Davvero

PostgreSQL: Leggere i Piani di Esecuzione e Capire Quando un Indice Serve Davvero

EXPLAIN è lo strumento che trasforma il tuning delle query da tentativi a ragionamento. Come si legge un piano di esecuzione, cosa significano costo e righe stimate, perché un indice a volte peggiora le cose e una checklist pratica per capire cosa sta facendo il database.

26/10/20268 min di lettura2 visualizzazionidi Marco Salmaso
Valutare un RAG: Metriche, Dataset di Eval e LLM-as-a-Judge

Valutare un RAG: Metriche, Dataset di Eval e LLM-as-a-Judge

Un sistema basato su LLM non si valuta con cinque domande scelte a mano. Serve un dataset di eval, metriche separate per retrieval e generazione, e un uso consapevole dell'LLM-as-a-Judge. Ecco un flusso di lavoro ripetibile, con esempi di codice e una lista di errori da evitare.

26/10/20269 min di lettura1 visualizzazionidi Marco Salmaso
n8n Self-Hosted: Automazioni Concrete tra Database, API e LLM

n8n Self-Hosted: Automazioni Concrete tra Database, API e LLM

Zapier e Make vanno bene finché i volumi sono bassi e i dati non sono sensibili. Quando colleghi un database aziendale, un LLM locale e qualche API interna, il self-hosting di n8n cambia le regole. Vediamo come impostare workflow concreti, con esempi di nodi, codice e gestione degli errori.

26/10/20269 min di lettura1 visualizzazionidi Marco Salmaso
Change Data Capture: Sincronizzare i Dati dal Gestionale al Data Warehouse

Change Data Capture: Sincronizzare i Dati dal Gestionale al Data Warehouse

Come portare i dati dal gestionale al data warehouse senza ricaricare tutto ogni notte. Dal polling sui timestamp alla logical replication di PostgreSQL, con esempi concreti di codice e i problemi da mettere in conto.

26/10/20268 min di lettura1 visualizzazionidi Marco Salmaso
Backtest di una Strategia: Overfitting, Look-Ahead Bias e Altri Modi per Ingannarsi

Backtest di una Strategia: Overfitting, Look-Ahead Bias e Altri Modi per Ingannarsi

Un backtest sembra la prova che una strategia funziona. Spesso è solo la prova che l'abbiamo progettata guardando i dati giusti. Vediamo i bias più comuni, come misurarli e come costruire una validazione più onesta con esempi concreti.

26/10/20269 min di lettura0 visualizzazionidi Marco Salmaso
Data Warehouse su Google Cloud per il Retail: Integrare Più Gestionali in BigQuery

Data Warehouse su Google Cloud per il Retail: Integrare Più Gestionali in BigQuery

Vendite in un software, magazzino in un altro, e-commerce in un terzo: nel retail i dati sono quasi sempre sparsi. Ecco come costruire un Data Warehouse su Google Cloud Platform che li unisce in un unico punto di verità, con le lezioni imparate lavorando su un progetto reale in un'azienda con più negozi.

25/10/202610 min di lettura0 visualizzazionidi Marco Salmaso
Migrare un Gestionale Senza Perdere i Dati: Pulizia, Mappatura e Controlli

Migrare un Gestionale Senza Perdere i Dati: Pulizia, Mappatura e Controlli

Cambiare software gestionale è uno dei progetti più delicati per un'azienda: anni di anagrafiche, movimenti e storico devono passare da un sistema all'altro senza perdere nulla. Una guida pratica alle fasi di una migrazione dati, dalla pulizia iniziale ai controlli di quadratura dopo il passaggio.

25/10/20269 min di lettura0 visualizzazionidi Marco Salmaso
I KPI che Contano Davvero in Negozio: Sell-Through, Rotazione e Copertura dello Stock

I KPI che Contano Davvero in Negozio: Sell-Through, Rotazione e Copertura dello Stock

Fatturato e scontrini medi sono solo la superficie. Per gestire bene un negozio di abbigliamento servono indicatori che leghino vendite e magazzino: sell-through, indice di rotazione, copertura, margine e tasso di sconto. Cosa misurano, come si calcolano e come leggerli senza farsi ingannare.

25/10/20269 min di lettura1 visualizzazionidi Marco Salmaso
Prevedere la Domanda nel Fashion con le Serie Storiche: Stagionalità, Saldi e Limiti dei Modelli

Prevedere la Domanda nel Fashion con le Serie Storiche: Stagionalità, Saldi e Limiti dei Modelli

Prevedere quanto si venderà è il sogno di ogni buyer, ma nella moda la maggior parte dei prodotti non ha storia: ogni stagione porta articoli nuovi. Come si applicano le serie storiche in un contesto così particolare, quali modelli usare, come trattare saldi e rotture di stock, e dove i modelli smettono di funzionare.

25/10/202611 min di lettura0 visualizzazionidi Marco Salmaso
Portare l'AI in una PMI: Come Introdurre LLM, MCP e RAG in Azienda Senza Spaventare Nessuno

Portare l'AI in una PMI: Come Introdurre LLM, MCP e RAG in Azienda Senza Spaventare Nessuno

Introdurre l'intelligenza artificiale in una piccola o media impresa non è un problema tecnologico, è un problema di persone, fiducia e priorità. Un percorso pratico in cinque tappe, dalle prime prove con un chatbot fino agli assistenti collegati ai dati aziendali con MCP e RAG, con le lezioni imparate lungo la strada.

25/10/202610 min di lettura0 visualizzazionidi Marco Salmaso
Vector Database a Confronto: Qdrant, pgvector e Quando Serve Davvero un Database Dedicato

Vector Database a Confronto: Qdrant, pgvector e Quando Serve Davvero un Database Dedicato

Ogni sistema RAG ha bisogno di un posto dove salvare e cercare gli embedding. Meglio un database vettoriale dedicato come Qdrant o un'estensione come pgvector sul PostgreSQL che già usi? Come funzionano gli indici, quali sono i punti di forza di ciascuno e un criterio pratico per scegliere.

25/10/202610 min di lettura0 visualizzazionidi Marco Salmaso
Embedding Multilingue in Locale: EmbeddingGemma e i Modelli Piccoli che Girano sul Tuo PC

Embedding Multilingue in Locale: EmbeddingGemma e i Modelli Piccoli che Girano sul Tuo PC

Per costruire un sistema RAG non serve per forza un'API a pagamento: i modelli di embedding piccoli e multilingue di oggi girano su un normale computer, anche senza GPU, e funzionano bene con l'italiano. Cosa sono gli embedding, perché conviene generarli in locale e come usare EmbeddingGemma in pochi passaggi.

25/10/20268 min di lettura0 visualizzazionidi Marco Salmaso
LLM Locali con Ollama: Quando Conviene Davvero Rispetto al Cloud

LLM Locali con Ollama: Quando Conviene Davvero Rispetto al Cloud

Far girare un modello linguistico sul proprio computer non è più roba da laboratori: con Ollama bastano due comandi. Ma conviene davvero? Un confronto onesto tra LLM locali e modelli cloud su privacy, costi, qualità, hardware necessario e casi d'uso, con un criterio pratico per scegliere.

25/10/20269 min di lettura0 visualizzazionidi Marco Salmaso
Supabase e Row Level Security: Proteggere i Dati di un Progetto Personale

Supabase e Row Level Security: Proteggere i Dati di un Progetto Personale

Con Supabase il frontend parla direttamente con il database, e questo rende la Row Level Security l'unica vera barriera tra i tuoi dati e chiunque apra la console del browser. Cos'è la RLS, come scrivere policy corrette, gli errori più comuni e come metterla in pratica, partendo dall'esperienza di questo sito.

25/10/202610 min di lettura0 visualizzazionidi Marco Salmaso
Statistica per la Finanza Personale: Rendimento, Rischio e Diversificazione Spiegati con i Numeri

Statistica per la Finanza Personale: Rendimento, Rischio e Diversificazione Spiegati con i Numeri

Rendimento medio, volatilità, correlazione, drawdown: sono concetti che sembrano riservati agli addetti ai lavori, ma bastano un po' di statistica e qualche riga di Python per capirli davvero. Una guida pratica per leggere i numeri del proprio portafoglio e capire perché la diversificazione funziona.

25/10/202611 min di lettura0 visualizzazionidi Marco Salmaso
NAS nel 2025: Dal Cloud Personale all'AI Self-Hosted

NAS nel 2025: Dal Cloud Personale all'AI Self-Hosted

Scopri come i NAS si sono evoluti da semplici storage di rete a potenti server domestici capaci di ospitare modelli LLM, database vettorializzati, sistemi RAG e molto altro. Una guida completa alle possibilità dei Network Attached Storage nell'era dell'intelligenza artificiale.

21/10/20258 min di lettura6 visualizzazionidi Marco Salmaso
RAG: La Rivoluzione dei Sistemi di Retrieval Augmented Generation nelle Aziende

RAG: La Rivoluzione dei Sistemi di Retrieval Augmented Generation nelle Aziende

Scopri come i sistemi RAG stanno trasformando l'utilizzo dei Large Language Model in ambito aziendale, combinando la potenza dell'AI generativa con la precisione dei database documentali per creare assistenti intelligenti affidabili e contestualizzati.

07/10/202515 min di lettura0 visualizzazionidi Marco Salmaso
Statistica Inferenziale nel Fashion: Come i Dati Trasformano il Settore dell'Abbigliamento

Statistica Inferenziale nel Fashion: Come i Dati Trasformano il Settore dell'Abbigliamento

Scopri come la statistica inferenziale rivoluziona il settore dell'abbigliamento: dalla previsione delle taglie all'ottimizzazione degli stock, dai test A/B per le collezioni alle strategie di pricing. Un'analisi approfondita delle tecniche statistiche che permettono ai brand di moda di prendere decisioni data-driven e ridurre sprechi e invenduti.

07/10/202510 min di lettura1 visualizzazionidi Marco Salmaso
Retool e PostgreSQL: Costruire Applicazioni Interne Potenziate dagli AI Agent

Retool e PostgreSQL: Costruire Applicazioni Interne Potenziate dagli AI Agent

Scopri come Retool si integra con PostgreSQL per creare rapidamente applicazioni interne professionali, ora potenziate dagli AI Agent per automatizzare workflow complessi e analisi dati.

02/10/20255 min di lettura4 visualizzazionidi Marco Salmaso
Model Context Protocol (MCP): La Nuova Frontiera dell'Integrazione AI

Model Context Protocol (MCP): La Nuova Frontiera dell'Integrazione AI

Il Model Context Protocol (MCP) rappresenta un'innovazione fondamentale nel panorama dell'intelligenza artificiale, introducendo uno standard aperto per connettere i sistemi AI con diverse fonti di dati e strumenti. Sviluppato da Anthropic, MCP risolve uno dei problemi più critici nell'implementazione di assistenti AI: la frammentazione delle integrazioni. Questo articolo esplora come MCP stia trasformando il modo in cui gli sviluppatori costruiscono applicazioni AI, riducendo la complessità e aumentando l'interoperabilità tra sistemi diversi.

02/10/202510 min di lettura7 visualizzazionidi Marco Salmaso