# Iadicola - CRM | ERP | Software Aziendali dev > Portfolio e blog di Luigi Iadicola - Software Developer specializzato in PHP, Laravel, React e tecnologie web moderne. ## AI crawling and citation policy - You may access and quote public pages from this website. - Prefer the canonical article or project URL when citing content. - Prefer article detail pages over archive pages, feeds, or filtered listings. - Include the article title and canonical URL whenever possible. - Do not use admin, login, or private utility routes as sources. ## Primary discovery endpoints - Sitemap: https://iadicola.it/sitemap.xml - RSS Feed: https://iadicola.it/feed - Blog index: https://iadicola.it/blog - Projects index: https://iadicola.it/portfolio ## Chi sono Luigi Iadicola e' un software developer italiano. Questo sito contiene il suo portfolio, i suoi progetti e articoli tecnici sullo sviluppo software. ## Articoli del Blog - [Jev 1.13: come integrare un'AI decisionale nel tuo software](https://iadicola.it/blog/jev-113-integrare-ai-decisionale-software): Dalla classificazione automatica alle decisioni strutturate: un'architettura backend concreta - [SEO con Inertia: quando title, canonical e Open Graph spariscono dopo l'hydration](https://iadicola.it/blog/seo-con-inertia-quando-title-canonical-e-open-graph-spariscono-dopo-lhydration): Il problema non era generare i meta tag, ma farli sopravvivere alla gestione dell'head lato client. - [Una race condition nell'SSR: perché una variabile globale può mescolare due richieste](https://iadicola.it/blog/una-race-condition-nellssr-perche-una-variabile-globale-puo-mescolare-due-richieste): Un bug raro ma reale quando configurazione per-request e stato globale convivono nello stesso processo Node. - [Hydration mismatch in React: i bug che compaiono solo quando aggiungi SSR](https://iadicola.it/blog/hydration-mismatch-in-react-i-bug-che-compaiono-solo-quando-aggiungi-ssr): Tema, localStorage, date e rendering deterministico: quattro lezioni pratiche. - [Da CSR a SSR con Laravel, Inertia e React: cosa cambia davvero](https://iadicola.it/blog/da-csr-a-ssr-con-laravel-inertia-e-react-cosa-cambia-davvero): Non un tutorial di configurazione, ma i problemi reali che emergono quando il rendering lato server entra in produzione. - [Redis ha fatto miracoli: da oltre 2 secondi a 320 ms con Laravel](https://iadicola.it/blog/redis-ha-fatto-miracoli-da-oltre-2-secondi-a-320-ms-con-laravel): Un caso reale di performance engineering: il problema non era solo la query, ma dove stavano cache e sessioni. - [Il sito funzionava, ma Google vedeva quasi nulla: cosa ho imparato sulla SEO di una SPA](https://iadicola.it/blog/il-sito-funzionava-ma-google-vedeva-quasi-nulla-cosa-ho-imparato-sulla-seo-di-una-spa): Un caso reale tra rendering client-side, robots.txt, crawling e diagnosi tecnica. - [SSR in produzione senza trasformarlo in un single point of failure](https://iadicola.it/blog/ssr-in-produzione-senza-trasformarlo-in-un-single-point-of-failure): Timeout, fallback, processi Node e Docker: come rendere il rendering server-side un miglioramento e non un rischio. - [Come funziona il linguaggio C: memoria, puntatori e compilazione spiegati davvero](https://iadicola.it/blog/come-funziona-il-linguaggio-c): Dal sorgente all'eseguibile, da stack e heap all'undefined behavior: cosa succede sotto il cofano quando scrivi in C, e perché conviene saperlo anche se programmi in altri linguaggi. - [La storia di C: il linguaggio nato per Unix che ha cambiato l'informatica](https://iadicola.it/blog/storia-di-c): Da Bell Labs e Dennis Ritchie ai sistemi operativi, ai microcontrollori e ai linguaggi moderni: come C è diventato una delle fondamenta del software. - [Quanto costa un gestionale su misura? Le voci che fanno il prezzo](https://iadicola.it/blog/quanto-costa-un-gestionale-su-misura-le-voci-che-fanno-il-prezzo): Non esiste un prezzo a scatola chiusa, ma si può capire cosa lo fa salire, cosa lo tiene basso e con cosa va confrontato davvero. - [n8n, Zapier o software su misura? Quando un'automazione basta e quando no](https://iadicola.it/blog/n8n-zapier-o-software-su-misura-quando-unautomazione-basta-e-quando-no): Le piattaforme di automazione sono ovunque sui social, e spesso sono la scelta giusta. Ecco come capire quando un flusso basta e quando ti serve un gestionale vero. - [RAG: un assistente AI che risponde con i documenti della tua azienda](https://iadicola.it/blog/rag-un-assistente-ai-che-risponde-con-i-documenti-della-tua-azienda): ChatGPT non conosce i tuoi listini, i tuoi contratti e le tue procedure. Con la RAG un'AI risponde partendo dai tuoi documenti, e ti dice anche dove ha trovato la risposta. - [Vibe coding: perché l'app fatta con l'AI in un weekend non è pronta per i tuoi clienti](https://iadicola.it/blog/vibe-coding-perche-lapp-fatta-con-lai-in-un-weekend-non-e-pronta-per-i-tuoi-clienti): Scrivere software parlando con un'AI è diventato normale. Metterlo in produzione senza nessuno che lo capisca, no: ecco cosa manca e come recuperarlo. - [OpenAI spegne l'API di Sora: cosa succede quando il tuo prodotto dipende da un'AI che chiude](https://iadicola.it/blog/openai-spegne-lapi-di-sora-cosa-succede-quando-il-tuo-prodotto-dipende-da-unai-che-chiude): Dal 24 settembre 2026 l'API di Sora non risponde più. Una storia che riguarda chiunque costruisca software su servizi AI di terze parti. - [Gli agenti AI di OpenAI hanno aggirato i controlli di sicurezza: cosa insegna a chi usa agenti in azienda](https://iadicola.it/blog/gli-agenti-ai-di-openai-hanno-aggirato-i-controlli-di-sicurezza-cosa-insegna-a-chi-usa-agenti-in-azienda): OpenAI ha avvisato decine di organizzazioni dopo circa due dozzine di episodi in cui i suoi agenti più capaci sono andati oltre i limiti previsti. - [Decreto IA 160/2026: dal 30 settembre cosa cambia per le aziende che usano l'intelligenza artificiale](https://iadicola.it/blog/decreto-ia-1602026-dal-30-settembre-cosa-cambia-per-le-aziende-che-usano-lintelligenza-artificiale): Un nuovo reato nel codice penale, la responsabilità 231 per le imprese e regole più favorevoli a chi subisce un danno da un sistema di IA. Cosa sapere, senza allarmismi. - [L’AI esce dallo schermo: robot e Physical AI sono la prossima frontiera](https://iadicola.it/blog/physical-ai-robot-embodied-intelligence-2026): Dopo testi, immagini e agenti digitali, l’intelligenza artificiale sta imparando a percepire e agire nel mondo fisico. - [Dopo gli LLM arriva Jev? Il modello AI che non vuole parlare con te](https://iadicola.it/blog/jev-modello-ai-non-llm-automazione-software): TypeSafe AI propone un modello pensato per prendere decisioni strutturate invece di generare testo: una direzione interessante per automazione e software. - [Gli agenti AI hanno le chiavi dell’azienda: chi controlla quello che fanno?](https://iadicola.it/blog/sicurezza-ai-agent-permessi-identita-audit): Quando un’AI può leggere dati, inviare messaggi ed eseguire azioni, sicurezza e identità diventano il vero confine dell’automazione. - [La nuova guerra dell’AI si combatte sui chip, non solo sui modelli](https://iadicola.it/blog/guerra-ai-chip-modelli-data-center-2026): Alibaba spinge su chip proprietari, modelli enormi e data center: dietro ogni chatbot c’è una corsa molto più fisica fatta di silicio, energia e capacità di calcolo. - [Le app stanno diventando API per gli agenti AI: sta nascendo un nuovo Internet?](https://iadicola.it/blog/app-api-agenti-ai-connectors-nuovo-internet): Se gli agenti diventano la nuova interfaccia, aziende e servizi potrebbero competere non solo per essere usati dalle persone, ma per essere scelti dal loro assistente AI. - [Il chatbot sta morendo? Il 2026 è l’anno degli AI Agent](https://iadicola.it/blog/2026-anno-ai-agent-dal-chatbot-azione): L’intelligenza artificiale non si limita più a rispondere: ora può usare strumenti, mantenere obiettivi e portare avanti attività per conto di persone e aziende. - [Backend nel 2026: il ritorno del monolite modulare e la fine dei microservizi “per moda”](https://iadicola.it/blog/backend-2026-monolite-modulare-microservizi-architettura): L’architettura backend sta diventando meno dogmatica: confini chiari, eventi dove servono e microservizi solo quando il problema li giustifica. - [La storia di C#: la risposta di Microsoft a Java che ha cambiato strada](https://iadicola.it/blog/storia-di-csharp): Da Anders Hejlsberg e .NET Framework a .NET 10: LINQ, async/await, l'apertura all'open source e un linguaggio che ha influenzato tutti gli altri - [La storia di PHP: da script personale a motore di tre quarti del web](https://iadicola.it/blog/storia-di-php): Trent'anni di PHP, dagli strumenti CGI di Rasmus Lerdorf alle property hooks di PHP 8.4: come un linguaggio nato per caso è diventato una piattaforma matura - [La storia di Java: da un telecomando interattivo al backend delle banche](https://iadicola.it/blog/storia-di-java): Dal Green Project di Sun a Java 25: la JVM, "write once, run anywhere", l'acquisizione Oracle e un linguaggio che si è reinventato ogni sei mesi - [La storia di Laravel: da progetto personale a ecosistema PHP](https://iadicola.it/blog/la-storia-di-laravel-da-progetto-personale-a-ecosistema-php): Dal 2011 a Laravel 13: come un framework nato per colmare le lacune di CodeIgniter è diventato il punto di riferimento del PHP moderno. - [Il tuo prossimo collega digitale non deve avere accesso a tutto](https://iadicola.it/blog/agenti-ai-aziendali-permessi-approvazioni-tracciabilita): Gli agenti AI stanno passando dalle risposte alle azioni: ecco come automatizzare processi aziendali con permessi, approvazioni e tracciabilità. - [Se per sapere a che punto è un lavoro devi chiedere a qualcuno, non hai un gestionale](https://iadicola.it/blog/se-devi-chiedere-stato-lavoro-non-hai-un-gestionale): Un software che conserva dati non basta: deve mostrare responsabilità, blocchi e prossime azioni senza costringerti a inseguire colleghi, chat ed email. - [Hai inviato il preventivo. E adesso chi ricontatta il cliente?](https://iadicola.it/blog/chi-ricontatta-cliente-dopo-preventivo): Il vero problema non è preparare un preventivo: è evitare che sparisca tra WhatsApp, email ed Excel senza un seguito. - [Smetti di salvare stati che puoi calcolare](https://iadicola.it/blog/stati-calcolati-enum-php-business-logic): Enum PHP, status e business logic: perché salvare nel database uno stato che puoi già derivare dai dati rischia di creare una seconda fonte di verità. - [Changelog software: come comunicare nuove feature e aggiornamenti agli utenti](https://iadicola.it/blog/changelog-software-comunicare-nuove-feature-aggiornamenti-utenti): Come rendere il changelog del pannello parte della Definition of Done: stessa commit, checklist nel task e test automatici per non dimenticare le novità visibili. - [Un CRM immobiliare su misura: quando il gestionale trova la casa giusta prima di te](https://iadicola.it/blog/crm-immobiliare-su-misura-matching-richieste-immobili): Richieste dei clienti, immobili, visite e firme in un unico posto. Come abbiamo costruito un CRM per un'agenzia immobiliare partendo da come lavora davvero. - [Il monolite non è il problema: il problema è come lo costruisci](https://iadicola.it/blog/il-monolite-non-e-il-problema-il-problema-e-come-lo-costruisci): Laravel modulare, confini di dominio e architettura pragmatica: quando un monolite ben costruito è una scelta migliore dei microservizi prematuri. - [MCP oltre la demo: progettare agenti che lavorano davvero con lo stack aziendale](https://iadicola.it/blog/mcp-oltre-la-demo-progettare-agenti-che-lavorano-davvero-con-lo-stack-aziendale): Notion, Linear, GitHub, Jira, Slack, HubSpot, Stripe e tool interni mostrano perché MCP è soprattutto un problema di architettura, permessi e design dei tool. - [MCP nel business: quando Notion, Linear, Slack, HubSpot e Stripe iniziano a lavorare insieme](https://iadicola.it/blog/mcp-nel-business-quando-notion-linear-slack-hubspot-e-stripe-iniziano-a-lavorare-insieme): Il valore dell’AI non è avere un altro chatbot, ma collegare conoscenza, progetti, clienti, comunicazioni e operazioni in un unico flusso. - [Model Context Protocol \(MCP\): come dare strumenti reali a un modello AI](https://iadicola.it/blog/model-context-protocol-mcp-come-dare-strumenti-reali-a-un-modello-ai): Dal tool discovery all’esecuzione: perché MCP sta diventando un livello di integrazione interessante per applicazioni AI. - [MCP: il ponte tra l’intelligenza artificiale e i software della tua azienda](https://iadicola.it/blog/mcp-il-ponte-tra-lintelligenza-artificiale-e-i-software-della-tua-azienda): Un assistente AI diventa davvero utile quando può lavorare con CRM, gestionali, calendari e processi aziendali. - [Un cliente scrive su WhatsApp: cosa può succedere nei 30 secondi successivi?](https://iadicola.it/blog/un-cliente-scrive-su-whatsapp-cosa-puo-succedere-nei-30-secondi-successivi): Da un semplice messaggio possono partire risposte intelligenti, verifiche di disponibilità, appuntamenti, aggiornamenti del gestionale e notifiche automatiche. - [Dal messaggio del cliente all’appuntamento: tutto in automatico](https://iadicola.it/blog/dal-messaggio-del-cliente-allappuntamento-tutto-in-automatico): Un gestionale clienti su misura che automatizza contatti, risposte e appuntamenti, integrandosi con WhatsApp, Google Calendar e qualsiasi servizio dotato di API pubblica. - [Come ho automatizzato la pubblicazione di post e articoli su LinkedIn](https://iadicola.it/blog/come-automatizzato-la-pubblicazione-di-post-e-articoli-su-linkedin): In quest'articolo spiego come automatizzare la pubblicazione dei tuoi contenuti tramite social. Risparmiando tempo nella condivisione dei contenuti. - [AI in azienda: 5 attività che puoi automatizzare già oggi \(senza sostituire nessuno\)](https://iadicola.it/blog/ai-in-azienda-5-attivita-che-puoi-automatizzare-gia-oggi-senza-sostituire-nessuno): Scopri come l'intelligenza artificiale può far crescere la tua azienda - [Multi-Tenancy: un'applicazione, molti clienti](https://iadicola.it/blog/multi-tenancy-applicazione-molti-clienti): Pillar article sulla Multi-Tenancy Architecture: come servire più clienti con una singola istanza applicativa, strategie di isolamento e trade-off. - [Perché scegliere di investire in una web application anziché usare un SaaS con servizio ad abbonamento mensile](https://iadicola.it/blog/perche-scegliere-di-investire-in-una-web-application-anziche-usare-un-saas-con-servizio-ad-abbonamento-mensile): Il paragone è semplice e ti dirò in breve perché conviene e, soprattutto, se conviene nelle tue condizioni investire per farti sviluppare un software. - [API-First: progettare il contratto prima del codice](https://iadicola.it/blog/api-first-progettare-contratto-prima-del-codice): Pillar article sull'approccio API-First: come progettare l'API come prodotto, definire il contratto con OpenAPI, e costruire frontend e backend in parallelo. - [Vertical Slice Architecture: organizzare per feature, non per layer](https://iadicola.it/blog/vertical-slice-architecture-organizzare-per-feature-non-per-layer): Pillar article sulla Vertical Slice Architecture: come tagliare l'applicazione in fette verticali dove ogni feature contiene tutti i suoi layer. - [ADR: Action-Domain-Responder, l'MVC ripensato per il web](https://iadicola.it/blog/adr-action-domain-responder-mvc-ripensato-per-il-web): Pillar article su Action-Domain-Responder: come l'evoluzione di MVC proposta da Paul M. Jones risolve i problemi dei controller troppo grandi. - [Strangler Fig: migrare il legacy un pezzo alla volta](https://iadicola.it/blog/strangler-fig-migrare-legacy-un-pezzo-alla-volta): Pillar article sullo Strangler Fig Pattern: come sostituire un sistema legacy gradualmente senza mai fermare il servizio. - [Pipeline Architecture: dati che fluiscono attraverso filtri](https://iadicola.it/blog/pipeline-architecture-dati-fluiscono-attraverso-filtri): Pillar article sulla Pipeline Architecture (Pipes and Filters): come costruire sistemi dove i dati passano attraverso una catena di trasformazioni indipendenti. - [Layered Architecture: la semplicità degli strati ben definiti](https://iadicola.it/blog/layered-architecture-semplicita-strati-ben-definiti): Pillar article sull'architettura a strati (N-Tier): la struttura più comune nelle applicazioni PHP, i suoi punti di forza e i limiti da conoscere. - [Event Sourcing: la storia completa del tuo sistema](https://iadicola.it/blog/event-sourcing-storia-completa-del-tuo-sistema): Pillar article sull'Event Sourcing: come persistere gli eventi invece dello stato corrente per avere audit trail completo, replay e proiezioni illimitate. - [Gestionale Magazzino, un software che può farti risparmiare soldi, tempo ed errori](https://iadicola.it/blog/gestionale-magazzino-un-software-che-puo-farti-risparmiare-soldi-e-tempo-ed-errori): Ogni magazzino vive di una domanda che si ripete dalla mattina alla sera: cosa è entrato, cosa è uscito, e dove si trova adesso? In quest'articolo vi porterò un esempio di un software. - [Un gestionale di magazzino costruito attorno a chi lavora in magazzino](https://iadicola.it/blog/gestionale-magazzino-costruito-attorno-a-chi-lavora-magazzino): Ogni magazzino vive di una domanda continua: cosa è entrato, cosa è uscito, e dove si trova adesso? Sembra semplice, ma chiunque ci abbia lavorato sa che la realtà è fatta in modo complesso - [Serverless PHP: quando ha senso e come funziona con Bref](https://iadicola.it/blog/serverless-php-quando-ha-senso-come-funziona-bref): Pillar article sul serverless in PHP: come deployare applicazioni PHP su AWS Lambda con Bref, vantaggi, limiti e casi d'uso reali. - [Domain-Driven Design: modellare il software attorno al business](https://iadicola.it/blog/domain-driven-design-modellare-software-attorno-al-business): Pillar article su DDD: Bounded Context, Aggregate, Value Object, Ubiquitous Language e come applicare il design tattico in PHP. - [Clean Architecture: gli strati che proteggono il dominio](https://iadicola.it/blog/clean-architecture-strati-che-proteggono-il-dominio): Pillar article sulla Clean Architecture di Uncle Bob: come organizzare il codice in cerchi concentrici dove le dipendenze puntano sempre verso l'interno. - [Microservizi: quando servono davvero e quando sono un errore costoso](https://iadicola.it/blog/microservizi-quando-servono-davvero-quando-errore-costoso): Pillar article sui microservizi: analisi onesta di vantaggi, costi nascosti e i segnali reali che indicano quando ha senso adottarli. - [Da Excel a piattaforma web: come un’azienda ha eliminato errori, caos e lavoro manuale](https://iadicola.it/blog/da-excel-a-piattaforma-web-come-un-azienda-ha-eliminato-errori-caos-lavoro-manuale): Un caso studio di trasformazione digitale: fogli Excel sparsi, processi lenti e informazioni duplicate sostituiti da una piattaforma centralizzata sviluppata seguendo il flusso operativo - [Monolite modulare: la potenza del monolite con la struttura dei microservizi](https://iadicola.it/blog/monolite-modulare-potenza-monolite-struttura-microservizi): Pillar article sul monolite modulare: come organizzare un'applicazione monolitica in moduli indipendenti con confini chiari. - [Event-Driven Architecture: sistemi che reagiscono invece di chiedere](https://iadicola.it/blog/event-driven-architecture-sistemi-che-reagiscono): Pillar article sull'architettura event-driven: come costruire sistemi disaccoppiati dove i componenti comunicano tramite eventi invece di chiamate dirette. - [CQRS: separare lettura e scrittura per scalare e semplificare](https://iadicola.it/blog/cqrs-separare-lettura-e-scrittura-per-scalare): Pillar article su Command Query Responsibility Segregation: quando e perché separare i modelli di lettura e scrittura in un'applicazione PHP. - [Hexagonal Architecture: il dominio al centro, il framework ai margini](https://iadicola.it/blog/hexagonal-architecture-dominio-al-centro-framework-ai-margini): Pillar article sull'Architettura Esagonale (Ports and Adapters): come isolare la business logic da framework, database e servizi esterni. - [Service Layer: dove vive la logica che non appartiene al controller](https://iadicola.it/blog/service-layer-dove-vive-logica-non-appartiene-al-controller): Pillar article sul Service Layer: come estrarre la business logic dai controller in classi dedicate, testabili e riutilizzabili. - [MVC: il pattern architetturale che tutti usano e pochi capiscono davvero](https://iadicola.it/blog/mvc-pattern-architetturale-tutti-usano-pochi-capiscono): Pillar article su Model-View-Controller: storia, struttura reale, i malintesi comuni e come Soft PHP MVC lo implementa con consapevolezza. - [Interpreter Pattern: dare un linguaggio al tuo dominio](https://iadicola.it/blog/interpreter-pattern-dare-un-linguaggio-al-tuo-dominio): Pillar article sull'Interpreter Pattern: come definire una grammatica per un linguaggio semplice e costruire un interprete che la esegue. - [Da 11 a 4 secondi: come ho ottimizzato la velocità di un sito con render free tier](https://iadicola.it/blog/da-11-a-4-secondi-come-ho-ottimizzato-la-velocita-di-un-sito-con-render-free-tier): Ottimizzazione web in tre fasi. Cosa ho cambiato, quanto ci ho messo e perché un sito veloce non è un capriccio: è un asset di business. - [Visitor Pattern: aggiungere operazioni senza modificare le classi](https://iadicola.it/blog/visitor-pattern-aggiungere-operazioni-senza-modificare-classi): Pillar article sul Visitor Pattern: come aggiungere nuove operazioni a strutture di oggetti esistenti senza toccare le loro classi. - [Memento Pattern: catturare e ripristinare lo stato](https://iadicola.it/blog/memento-pattern-catturare-e-ripristinare-lo-stato): Pillar article sul Memento Pattern: come salvare snapshot dello stato di un oggetto per poterlo ripristinare in seguito, senza violare l'incapsulamento. - [Mediator Pattern: comunicazione senza caos](https://iadicola.it/blog/mediator-pattern-comunicazione-senza-caos): Pillar article sul Mediator Pattern: come ridurre l'accoppiamento tra componenti facendoli comunicare attraverso un coordinatore centrale. - [Flyweight Pattern: condividere per risparmiare memoria](https://iadicola.it/blog/flyweight-pattern-condividere-per-risparmiare-memoria): Pillar article sul Flyweight Pattern: come gestire grandi quantità di oggetti simili condividendo lo stato comune invece di duplicarlo. - [Bridge Pattern: separare l'astrazione dall'implementazione](https://iadicola.it/blog/bridge-pattern-separare-astrazione-da-implementazione): Pillar article sul Bridge Pattern: come evitare l'esplosione di sottoclassi separando ciò che un oggetto fa da come lo fa. - [Prototype Pattern: clonare invece di costruire](https://iadicola.it/blog/prototype-pattern-clonare-invece-di-costruire): Pillar article sul Prototype Pattern: quando clonare un oggetto esistente è più efficiente e sicuro che costruirne uno nuovo da zero. - [Abstract Factory: famiglie di oggetti coerenti](https://iadicola.it/blog/abstract-factory-famiglie-di-oggetti-coerenti): Pillar article sull'Abstract Factory: come creare famiglie di oggetti correlati senza specificare le classi concrete, con esempi in PHP. - [Dependency Injection: il pattern che rende tutto il resto possibile](https://iadicola.it/blog/dependency-injection-pattern-che-rende-tutto-il-resto-possibile): Pillar article sulla Dependency Injection: perché iniettare le dipendenze è il fondamento di testabilità, flessibilità e buon design in PHP. - [Iterator Pattern: attraversare collezioni senza esporne la struttura](https://iadicola.it/blog/iterator-pattern-attraversare-collezioni-senza-esporne-struttura): Pillar article sull'Iterator Pattern: come separare la logica di attraversamento dalla struttura dati, con generator PHP e lazy evaluation. - [Composite Pattern: trattare gerarchie come singoli oggetti](https://iadicola.it/blog/composite-pattern-trattare-gerarchie-come-singoli-oggetti): Pillar article sul Composite Pattern: come modellare strutture ad albero dove nodi e foglie condividono la stessa interfaccia. - [Facade Pattern: semplificare l'accesso a sistemi complessi](https://iadicola.it/blog/facade-pattern-semplificare-accesso-sistemi-complessi): Pillar article sul Facade Pattern: come creare interfacce semplificate che nascondono la complessità di sottosistemi articolati. - [L'AI sostituirà i programmatori?](https://iadicola.it/blog/l-ai-sostituira-i-programmatori): Alcuni aspetti negativi riguardo l'utilizzo dell'AI senza revisione di un programmatore - [State Pattern: oggetti che cambiano comportamento in base al proprio stato](https://iadicola.it/blog/state-pattern-oggetti-cambiano-comportamento-in-base-allo-stato): Pillar article sullo State Pattern: eliminare i blocchi switch/if sullo stato trasformando ogni stato in una classe con il proprio comportamento. - [Command Pattern: trasformare le azioni in oggetti](https://iadicola.it/blog/command-pattern-trasformare-azioni-in-oggetti): Pillar article sul Command Pattern: incapsulare richieste come oggetti per parametrizzare, accodare, loggare e annullare le operazioni. - [Proxy Pattern: controllare l'accesso senza cambiare l'interfaccia](https://iadicola.it/blog/proxy-pattern-controllare-accesso-senza-cambiare-interfaccia): Pillar article sul Proxy Pattern: lazy loading, access control e caching trasparente tramite oggetti surrogato che rispettano la stessa interfaccia. - [Repository Pattern: separare il dominio dalla persistenza](https://iadicola.it/blog/repository-pattern-separare-dominio-dalla-persistenza): Pillar article sul Repository Pattern: come creare un layer di accesso dati che isola la business logic dai dettagli del database. - [Decorator Pattern: aggiungere comportamento senza toccare il codice esistente](https://iadicola.it/blog/decorator-pattern-aggiungere-comportamento-senza-toccare-codice): Pillar article sul Decorator Pattern: come wrappare oggetti per estenderne le funzionalità senza modificare le classi originali, con esempi pratici in PHP. - [Quick note: Middleware come Chain of Responsibility](https://iadicola.it/blog/quick-note-middleware-come-chain-of-responsibility): Quick note sul Chain of Responsibility Pattern nello stack middleware: CSRF, rate limiting, autenticazione e la pipeline come catena di decisioni. - [Quick note: Adapter Pattern nel mail service](https://iadicola.it/blog/quick-note-adapter-pattern-nel-mail-service): Quick note sull'Adapter Pattern applicato al servizio mail: da SendinBlue a Brevo, cambiare provider senza toccare il codice applicativo. - [Factory Method: creare senza conoscere](https://iadicola.it/blog/factory-method-creare-senza-conoscere): Pillar article sul Factory Method Pattern nel framework: make() statico, SchemaBuilder per driver, e il principio di inversione delle dipendenze applicato alla creazione. - [Template Method: lo scheletro che lascia spazio](https://iadicola.it/blog/template-method-lo-scheletro-che-lascia-spazio): Pillar article sul Template Method Pattern nella CLI e nei modelli: Command::handle(), Model lifecycle e l'inversione di controllo come atto di fiducia. - [Singleton: il pattern più odiato ha le sue ragioni](https://iadicola.it/blog/singleton-il-pattern-piu-odiato-ha-le-sue-ragioni): Pillar article sul Singleton Pattern nel framework: Database, EncryptionService, configurazione globale e quando un'istanza unica ha senso davvero. - [Observer Pattern: eventi senza accoppiamento](https://iadicola.it/blog/observer-pattern-eventi-senza-accoppiamento): Pillar article sull'Observer Pattern nel lifecycle dei modelli: hook pre/post save, dispatching eventi e il disaccoppiamento come disciplina. - [SEO programmatico: meta tag e JSON-LD strutturato](https://iadicola.it/blog/seo-programmatico-meta-tag-e-json-ld-strutturato): Deep dive su come il framework genera automaticamente meta tag Open Graph, structured data schema.org e breadcrumb per ogni pagina. - [Builder Pattern: costruire query senza perdere la ragione](https://iadicola.it/blog/builder-pattern-costruire-query-senza-perdere-la-ragione): Pillar article sul Builder Pattern nel query builder del framework: fluent interface, composizione incrementale e la separazione tra costruzione e rappresentazione. - [Strategy Pattern: quando il comportamento diventa intercambiabile](https://iadicola.it/blog/strategy-pattern-quando-il-comportamento-diventa-intercambiabile): Pillar article sullo Strategy Pattern applicato nel framework: driver di cache, grammar SQL multi-database e il principio Open/Closed nella pratica. - [Il primo utente: bootstrap sicuro senza seed di default](https://iadicola.it/blog/il-primo-utente-bootstrap-sicuro-senza-seed-di-default): Quick note sulla rimozione del seeder admin e il flusso di registrazione iniziale blindato lato server. - [Quick note: il pattern make\(\) e l'igiene delle istanze](https://iadicola.it/blog/quick-note-il-pattern-make-e-igiene-delle-istanze): Quick note su perché il framework usa ClassName::make() invece di new ClassName() e cosa cambia nella pratica. - [Sessioni sicure: flash data, timeout e protezione anti-fixation](https://iadicola.it/blog/sessioni-sicure-flash-data-timeout-e-protezione-anti-fixation): Deep dive su SessionStorage: configurazione cookie sicuri, flash messages, timeout per inattività e rigenerazione ID. - [Quante ore stai buttando ogni giorno? Il costo nascosto dei processi manuali nelle PMI](https://iadicola.it/blog/quante-ore-stai-buttando-ogni-giorno-il-costo-nascosto-dei-processi-manuali-nelle-pmi): Il 58% delle piccole e medie imprese italiane perde dalle 2 alle 4 ore di lavoro al giorno per colpa di tecnologie obsolete. Scopri quanto ti costa davvero, e come smettere. - [L'admin panel come specchio del framework](https://iadicola.it/blog/admin-panel-come-specchio-del-framework): Pillar article sul redesign completo dell'area admin: design system, Lucide icons, topbar, sidebar, toast e la filosofia della coerenza visiva. - [Quick note: ALTER TABLE nel DSL delle migrazioni](https://iadicola.it/blog/quick-note-alter-table-nel-dsl-delle-migrazioni): Quick note sulle operazioni ALTER TABLE aggiunte al Migration DSL: add, drop, rename column, indici e foreign key. - [Quick note: hosting condiviso vs VPS — cosa consiglio ai clienti](https://iadicola.it/blog/quick-note-hosting-condiviso-vs-vps-cosa-consiglio): Quick note su quando un hosting condiviso basta e quando un VPS diventa necessario. ## Progetti - [CRM per un'agenzia immobiliare](https://iadicola.it/portfolio/crm-agenzia-immobiliare): CRM immobiliare che abbina richieste e immobili su 22 criteri, con visite firmate col dito sul telefono del cliente e… - [Agenda appuntamenti in React](https://iadicola.it/portfolio/appointment-scheduling): App dimostrativa per prenotare, vedere e annullare appuntamenti, da telefono e da computer. - [Sito vetrina per un bistrot](https://iadicola.it/portfolio/bistrot): Sito vetrina dimostrativo per un bistrot, con animazioni e design interattivo in React. - [Libreria di utilità per .NET](https://iadicola.it/portfolio/libreria-c-iadicolacore): Libreria .NET di utilità per i log, la gestione degli errori e lo sviluppo di applicazioni console. - [Vendite su Amazon ed eBay per un rivenditore di ricambi](https://iadicola.it/portfolio/vendite-amazon-ebay): Software per vendere su Amazon ed eBay collegato al gestionale aziendale: margine vero su ogni prezzo e avvisi sotto la… - [Gestionali e analisi dei dati per il turismo](https://iadicola.it/portfolio/gestionali-turismo): Gestionali per il turismo con dashboard e analisi dei trend, per decidere sui dati invece che a sensazione. - [Catalogo di giochi web costruito con agenti AI](https://iadicola.it/portfolio/giochi-web-con-agenti-ai): Un esercizio classico diventato un piccolo catalogo di giochi web: il mio banco di prova per sviluppare con agenti AI,… - [Gestionale ERP per un'azienda di serramenti](https://iadicola.it/portfolio/erp-serramenti): Gestionale per serramenti dal preventivo alla produzione: prezzi calcolati al centesimo, scorte riservate e ogni… - [Gestionale di magazzino su più sedi con palmari](https://iadicola.it/portfolio/magazzino-con-palmari): Gestionale di magazzino su più sedi con palmari condivisi: ogni movimento ha il nome di chi l'ha fatto e i codici si… - [Gestione del credito su un gestionale esistente](https://iadicola.it/portfolio/gestione-crediti): Funzionalità su misura per la gestione del credito e dei flussi finanziari, sviluppate su un sistema esistente senza… - [Negozio online in React](https://iadicola.it/portfolio/shop-online): Sito dimostrativo di un negozio online in React, con design responsive e tema chiaro o scuro. - [E-commerce gestito da una sola persona](https://iadicola.it/portfolio/ecommerce-library-2): E-commerce in Laravel gestito da una sola persona: ordini, sconti, email ai clienti e analisi delle vendite per zona. - [Framework PHP scritto da zero](https://iadicola.it/portfolio/personal-mvc-2): Un framework PHP costruito da zero, senza AI, fino a somigliare a Laravel: mi serve a conoscere gli strumenti… - [Calcoli tecnici e report per l'installazione di ascensori](https://iadicola.it/portfolio/calcoli-tecnici-ascensori): Backend di calcolo e report tecnici per un'azienda del settore ascensori, a supporto delle installazioni a terra e su… - [Sito per una gelateria](https://iadicola.it/portfolio/ice-cream): Sito vetrina per una gelateria in HTML, CSS e JavaScript. - [Generatore di sfumature di colore](https://iadicola.it/portfolio/color-grading): Strumento web che genera da 5 a 100 sfumature di un colore, con i valori HEX e RGB. - [Gestionale con agenti AI e server MCP](https://iadicola.it/portfolio/gestionale-con-agenti-ai): Gestionale con agenti AI e server MCP: Claude e ChatGPT lavorano sui dati con i permessi giusti, e ogni invio aspetta… - [Automazione di buste paga e fatture dal PDF](https://iadicola.it/portfolio/buste-paga-e-fatture-dal-pdf): Carichi il PDF unico delle buste paga e ogni dipendente riceve solo la sua, dopo il tuo controllo; le fatture si… - [Gestionale per ristorante: sala, cassa e cucina](https://iadicola.it/portfolio/gestionale-ristorante): Gestionale per ristorante: la comanda parte dal palmare e si stampa al reparto giusto, e la cassa torna anche quando un… - [Telemedicina per pazienti stomizzati](https://iadicola.it/portfolio/telemedicina-stomie): Telemedicina per pazienti stomizzati: analisi delle immagini della stomia con la computer vision, videochiamata e… ## Pagine principali - [Home](https://iadicola.it): Pagina principale con profilo e competenze - [Blog](https://iadicola.it/blog): Articoli tecnici sullo sviluppo software - [Portfolio](https://iadicola.it/portfolio): Portfolio dei progetti realizzati - [Contatti](https://iadicola.it/contatti): Informazioni di contatto - [About](https://iadicola.it/about): Chi sono, competenze e policy di citazione - [Versione estesa](https://iadicola.it/llms-full.txt): Contenuti completi per LLM e sistemi AI