{"id":4698,"date":"2026-06-02T23:16:45","date_gmt":"2026-06-02T22:16:45","guid":{"rendered":"https:\/\/www.fullo.net\/blog\/?p=4698"},"modified":"2026-06-02T23:16:48","modified_gmt":"2026-06-02T22:16:48","slug":"come-claude-code-lavora-nelle-grandi-codebase","status":"publish","type":"post","link":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/","title":{"rendered":"Come Claude Code lavora nelle grandi codebase"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">mmagina di assumere una persona molto in gamba e di lasciarla da sola dentro l&#8217;archivio di un&#8217;azienda enorme: stanze su stanze, faldoni ovunque, documenti di vent&#8217;anni fa accanto a quelli di stamattina. Quanto sar\u00e0 brava non dipende solo da quanto \u00e8 sveglia. Dipende soprattutto da come hai organizzato l&#8217;archivio, dai cartelli che hai appeso e dagli strumenti che le hai messo in mano.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c8 esattamente la situazione di Claude Code dentro una grande codebase. L&#8217;articolo originale raccoglie i pattern ricorrenti nelle aziende che lo usano bene su larga scala. Qui te lo racconto con parole semplici, esempi e qualche disegno.<\/p>\n\n\n\n<!--more-->\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"317\" src=\"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?resize=580%2C317&#038;ssl=1\" alt=\"\" class=\"wp-image-4699\" srcset=\"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?resize=700%2C382&amp;ssl=1 700w, https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?resize=300%2C164&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?resize=768%2C419&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?w=1024&amp;ssl=1 1024w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Come si muove dentro al codice<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Claude Code esplora il codice come farebbe uno sviluppatore in carne e ossa: apre cartelle, legge file, usa\u00a0<code>grep<\/code>\u00a0per cercare ci\u00f2 che gli serve e segue i riferimenti da un file all&#8217;altro. Questa parte, la\u00a0<strong>ricerca e la lettura dei file<\/strong>, avviene sulla tua macchina, e non c&#8217;\u00e8 alcun &#8220;indice&#8221; del codice da costruire, mantenere o caricare su un server esterno.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>? Attenzione<\/strong><br><br>Si dice spesso che Claude Code &#8220;lavora in locale&#8221;. \u00c8 una mezza verit\u00e0 da maneggiare con cura:\u00a0<strong>locale \u00e8 l&#8217;agente che cerca e legge i file<\/strong>;\u00a0<strong>remota \u00e8 l&#8217;elaborazione<\/strong>. Per ragionare sul codice, le porzioni rilevanti vengono inviate via API (<em>Application Programming Interface<\/em>, l&#8217;interfaccia con cui due programmi si parlano) ai server di Anthropic, dove gira il modello. Il codice\u00a0<em>a riposo<\/em>\u00a0resta da te; il codice\u00a0<em>nel momento del ragionamento<\/em>\u00a0viaggia.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Serve per\u00f2 chiarire un equivoco comune, perch\u00e9 sotto la sigla &#8220;RAG&#8221; finiscono cose molto diverse. RAG significa\u00a0<em>Retrieval-Augmented Generation<\/em>\u00a0e si compone di tre pezzi che possono stare ciascuno in locale o in remoto: il modello di\u00a0<strong>embedding<\/strong>\u00a0(che trasforma il codice in vettori), il\u00a0<strong>database vettoriale<\/strong>\u00a0dove quei vettori vivono, e l&#8217;<strong>LLM<\/strong>\u00a0che genera la risposta. A seconda di dove metti questi pezzi ottieni sistemi profondamente diversi.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">? <strong>Due famiglie di RAG<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un\u00a0<strong>RAG fully-local<\/strong>\u00a0(embedding, database vettoriale e un LLM open-weight tutti sulla tua macchina) fa\u00a0<em>davvero<\/em>\u00a0tutto in casa: il codice non esce mai. Un\u00a0<strong>RAG API-driven<\/strong>\u00a0usa embedding o LLM remoti: indicizza in locale, ma poi manda fuori i chunk recuperati, esponendo spesso\u00a0<em>pi\u00f9<\/em>\u00a0codice di Claude Code, perch\u00e9 ha indicizzato tutto in anticipo.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Distinguere questi due assi \u00e8 la chiave per non confondersi. Il difetto classico del RAG,\u00a0<strong>l&#8217;indice che invecchia<\/strong>, non dipende dal locale contro il remoto. Dipende dal fatto che l&#8217;indice \u00e8\u00a0<em>precalcolato<\/em>: appena committi codice nuovo, l&#8217;indice \u00e8 vecchio, che sia su un database vettoriale nella tua sala server o su un servizio in cloud. La ricerca agentica evita questo perch\u00e9 rilegge la versione viva ogni volta. Stiamo quindi rispondendo a\u00a0<strong>due domande diverse<\/strong>, che conviene tenere separate:<\/p>\n\n\n\n<figure>\n    <svg viewBox=\"0 0 720 520\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"I due assi: dove gira l'inferenza e come avviene il recupero\">\n      <rect width=\"720\" height=\"520\" fill=\"#fbf6ec\" rx=\"10\"><\/rect>\n      <text x=\"360\" y=\"38\" text-anchor=\"middle\" font-family=\"'Fraunces',serif\" font-size=\"19\" font-weight=\"900\" fill=\"#1c1814\">Due domande diverse, non una<\/text>\n \n      <!-- quadrant frame -->\n      <rect x=\"150\" y=\"80\" width=\"430\" height=\"360\" fill=\"#fff\" stroke=\"#1c1814\" stroke-width=\"2\" rx=\"6\"><\/rect>\n      <line x1=\"365\" y1=\"80\" x2=\"365\" y2=\"440\" stroke=\"#d8cbb6\" stroke-width=\"2\"><\/line>\n      <line x1=\"150\" y1=\"260\" x2=\"580\" y2=\"260\" stroke=\"#d8cbb6\" stroke-width=\"2\"><\/line>\n \n      <!-- X axis labels -->\n      <text x=\"257\" y=\"466\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#4a4138\">INFERENZA LOCALE<\/text>\n      <text x=\"472\" y=\"466\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#4a4138\">INFERENZA REMOTA<\/text>\n      <text x=\"365\" y=\"492\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-style=\"italic\" font-size=\"13\" fill=\"#8f3015\">? dove gira il modello? (il codice esce o no)<\/text>\n \n      <!-- Y axis labels -->\n      <text x=\"135\" y=\"170\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"11\" font-weight=\"600\" fill=\"#4a4138\" transform=\"rotate(-90 135 170)\">RICERCA DAL VIVO<\/text>\n      <text x=\"135\" y=\"350\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"11\" font-weight=\"600\" fill=\"#4a4138\" transform=\"rotate(-90 135 350)\">INDICE PRECALCOLATO<\/text>\n \n      <!-- TOP-LEFT: agente locale + LLM locale -->\n      <text x=\"257\" y=\"135\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"12.5\" fill=\"#4a4138\" font-style=\"italic\">agente con LLM<\/text>\n      <text x=\"257\" y=\"153\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"12.5\" fill=\"#4a4138\" font-style=\"italic\">open-weight locale<\/text>\n      <text x=\"257\" y=\"172\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"10\" fill=\"#6b6a3a\">privacy alta \u00b7 capacit\u00e0 limitata<\/text>\n \n      <!-- TOP-RIGHT: Claude Code -->\n      <rect x=\"385\" y=\"110\" width=\"178\" height=\"70\" rx=\"8\" fill=\"#bb4622\"><\/rect>\n      <text x=\"474\" y=\"138\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"13\" font-weight=\"600\" fill=\"#fff\">CLAUDE CODE<\/text>\n      <text x=\"474\" y=\"158\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"11.5\" fill=\"#ffe9df\">cerca vivo in locale,<\/text>\n      <text x=\"474\" y=\"173\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"11.5\" fill=\"#ffe9df\">ragiona in remoto<\/text>\n \n      <!-- BOTTOM-LEFT: RAG fully local -->\n      <rect x=\"172\" y=\"300\" width=\"170\" height=\"70\" rx=\"8\" fill=\"#6b6a3a\"><\/rect>\n      <text x=\"257\" y=\"328\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#fff\">RAG FULLY-LOCAL<\/text>\n      <text x=\"257\" y=\"348\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"11\" fill=\"#eef0dc\">DB vettoriale +<\/text>\n      <text x=\"257\" y=\"363\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"11\" fill=\"#eef0dc\">LLM locale \u00b7 nulla esce<\/text>\n \n      <!-- BOTTOM-RIGHT: RAG API-driven -->\n      <rect x=\"388\" y=\"300\" width=\"172\" height=\"70\" rx=\"8\" fill=\"#8f3015\"><\/rect>\n      <text x=\"474\" y=\"328\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#fff\">RAG API-DRIVEN<\/text>\n      <text x=\"474\" y=\"348\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"11\" fill=\"#f4ddd2\">embedding\/LLM remoti \u00b7<\/text>\n      <text x=\"474\" y=\"363\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"11\" fill=\"#f4ddd2\">indice che invecchia<\/text>\n    <\/svg>\n    <figcaption>L&#8217;asse orizzontale \u00e8 la <b>privacy<\/b> (il codice esce?); quello verticale \u00e8 la <b>freschezza<\/b> (l&#8217;indice invecchia?). Sono indipendenti: un RAG fully-local protegge i dati ma il suo indice invecchia comunque.<\/figcaption>\n  <\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Ne esce un quadro pi\u00f9 giusto. Se la tua priorit\u00e0 \u00e8 la\u00a0<strong>riservatezza assoluta<\/strong>, un RAG fully-local vince su Claude Code, ma paghi un prezzo: in locale non puoi far girare i modelli di frontiera, quindi rinunci a buona parte della capacit\u00e0 di ragionamento. Se la priorit\u00e0 \u00e8\u00a0<strong>freschezza e qualit\u00e0 del ragionamento<\/strong>, la ricerca agentica di Claude Code evita l&#8217;indice che invecchia e usa modelli potenti, ma il codice rilevante deve uscire. Ogni architettura \u00e8 un compromesso tra riservatezza e capacit\u00e0: la scelta giusta dipende da cosa conta di pi\u00f9 nel tuo contesto.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">E la sostenibilit\u00e0?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">C&#8217;\u00e8 un terzo asse che il dibattito locale-contro-remoto quasi sempre dimentica: l&#8217;<strong>impronta energetica e ambientale<\/strong>. E qui l&#8217;intuito inganna. &#8220;Locale&#8221; suona pi\u00f9 sobrio, &#8220;cloud&#8221; suona dispendioso, ma spesso \u00e8 il contrario.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>? Locale e remoto<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un grande datacenter ottimizzato raggiunge valori di efficienza (il\u00a0<strong>PUE<\/strong>,\u00a0<em>Power Usage Effectiveness<\/em>, cio\u00e8 il rapporto tra energia totale ed energia utile al calcolo) vicini a 1,1-1,2, sfrutta hardware condiviso ad altissimo utilizzo e pu\u00f2 attingere a energia a basse emissioni. Una GPU (<em>Graphics Processing Unit<\/em>, il processore grafico usato anche per l&#8217;AI) che gira un modello locale su una workstation tipicamente lavora a utilizzo basso, senza recupero di calore, su una rete elettrica qualsiasi: per token, pu\u00f2 emettere\u00a0<em>di pi\u00f9<\/em>.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Ma anche qui non c&#8217;\u00e8 una risposta secca, e vale la pena tenere insieme pi\u00f9 fattori prima di concludere. Conta la&nbsp;<strong>dimensione del modello<\/strong>&nbsp;(un piccolo modello locale per un compito semplice pu\u00f2 battere l&#8217;invio di tutto a un modello di frontiera enorme), l&#8217;<strong>intensit\u00e0 di carbonio della rete elettrica<\/strong>&nbsp;nel luogo e nell&#8217;ora in cui il calcolo avviene, l&#8217;<strong>energia incorporata<\/strong>&nbsp;nell&#8217;hardware che acquisti contro quella di infrastruttura condivisa, e, non ultimo, il&nbsp;<strong>numero di tentativi<\/strong>: un modello pi\u00f9 capace che azzecca la risposta al primo colpo pu\u00f2 consumare meno di uno debole che ci riprova cinque volte. La domanda utile, allora, \u00e8 un&#8217;altra:&nbsp;<em>qual \u00e8 il modello pi\u00f9 piccolo che svolge davvero il compito, alimentato dall&#8217;energia pi\u00f9 pulita disponibile, con il minor numero di ripetizioni?<\/em>&nbsp;\u00c8 lo stesso principio del &#8220;do less, better&#8221; applicato al calcolo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">C&#8217;\u00e8 per\u00f2 un compromesso onesto da dichiarare: l&#8217;approccio agentico funziona benissimo&nbsp;<strong>se Claude ha abbastanza contesto per sapere dove guardare<\/strong>. Chiedergli di trovare un pattern vago in una codebase da un miliardo di righe lo far\u00e0 sbattere contro i limiti della finestra di contesto prima ancora di iniziare. Ecco perch\u00e9 chi investe nella preparazione della codebase ottiene risultati molto migliori.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">L&#8217;imbragatura conta pi\u00f9 del motore<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L&#8217;errore pi\u00f9 comune \u00e8 pensare che le capacit\u00e0 di Claude Code dipendano solo dal modello. Si guardano i benchmark, si confrontano i punteggi nei test. Ma nella pratica conta di pi\u00f9\u00a0<strong>l&#8217;ecosistema costruito attorno al modello<\/strong>: quello che l&#8217;articolo chiama\u00a0<em>harness<\/em>, l&#8217;imbracatura.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>? Una analogia<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il modello \u00e8 il&nbsp;<strong>motore<\/strong>. L&#8217;harness \u00e8 il resto dell&#8217;<strong>automobile<\/strong>: volante, cruscotto, navigatore, freni. Un motore potentissimo senza sterzo non ti porta da nessuna parte; un motore onesto dentro una macchina ben fatta ti fa arrivare ovunque.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">L&#8217;harness si costruisce a strati, e\u00a0<strong>l&#8217;ordine conta<\/strong>: ogni strato si appoggia sul precedente. Si parte dalle basi (i file di contesto) e si sale verso le estensioni pi\u00f9 sofisticate.<\/p>\n\n\n\n<figure>\n    <svg viewBox=\"0 0 720 470\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"Gli strati dell'harness di Claude Code\">\n      <rect width=\"720\" height=\"470\" fill=\"#fbf6ec\" rx=\"10\"\/>\n      <text x=\"360\" y=\"40\" text-anchor=\"middle\" font-family=\"'Fraunces',serif\" font-size=\"20\" font-weight=\"900\" fill=\"#1c1814\">Gli strati dell&#8217;harness<\/text>\n      <text x=\"360\" y=\"62\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"11\" fill=\"#4a4138\">si costruiscono dal basso verso l&#8217;alto<\/text>\n \n      <!-- layers as a pyramid of bars -->\n      <!-- L1 -->\n      <rect x=\"120\" y=\"380\" width=\"480\" height=\"46\" rx=\"8\" fill=\"#1c1814\"\/>\n      <text x=\"148\" y=\"403\" font-family=\"'JetBrains Mono',monospace\" font-size=\"13\" font-weight=\"600\" fill=\"#f4ede1\">1 \u00b7 CLAUDE.md<\/text>\n      <text x=\"148\" y=\"418\" font-family=\"'Spectral',serif\" font-size=\"12\" fill=\"#d8cbb6\">i bigliettini di benvenuto su ogni scrivania<\/text>\n \n      <rect x=\"150\" y=\"324\" width=\"420\" height=\"46\" rx=\"8\" fill=\"#8f3015\"\/>\n      <text x=\"178\" y=\"347\" font-family=\"'JetBrains Mono',monospace\" font-size=\"13\" font-weight=\"600\" fill=\"#fff\">2 \u00b7 Hooks<\/text>\n      <text x=\"178\" y=\"362\" font-family=\"'Spectral',serif\" font-size=\"12\" fill=\"#f4ddd2\">i riflessi automatici e i controlli di qualit\u00e0<\/text>\n \n      <rect x=\"180\" y=\"268\" width=\"360\" height=\"46\" rx=\"8\" fill=\"#bb4622\"\/>\n      <text x=\"208\" y=\"291\" font-family=\"'JetBrains Mono',monospace\" font-size=\"13\" font-weight=\"600\" fill=\"#fff\">3 \u00b7 Skills<\/text>\n      <text x=\"208\" y=\"306\" font-family=\"'Spectral',serif\" font-size=\"12\" fill=\"#ffe9df\">gli specialisti chiamati solo quando servono<\/text>\n \n      <rect x=\"210\" y=\"212\" width=\"300\" height=\"46\" rx=\"8\" fill=\"#c8902a\"\/>\n      <text x=\"238\" y=\"235\" font-family=\"'JetBrains Mono',monospace\" font-size=\"13\" font-weight=\"600\" fill=\"#1c1814\">4 \u00b7 Plugins<\/text>\n      <text x=\"238\" y=\"250\" font-family=\"'Spectral',serif\" font-size=\"12\" fill=\"#3a2c10\">la cassetta degli attrezzi pronta all&#8217;uso<\/text>\n \n      <rect x=\"240\" y=\"156\" width=\"240\" height=\"46\" rx=\"8\" fill=\"#6b6a3a\"\/>\n      <text x=\"268\" y=\"179\" font-family=\"'JetBrains Mono',monospace\" font-size=\"13\" font-weight=\"600\" fill=\"#fff\">5 \u00b7 MCP server<\/text>\n      <text x=\"268\" y=\"194\" font-family=\"'Spectral',serif\" font-size=\"11.5\" fill=\"#eef0dc\">le linee telefoniche verso l&#8217;esterno<\/text>\n \n      <!-- two extra capabilities -->\n      <rect x=\"120\" y=\"92\" width=\"225\" height=\"44\" rx=\"8\" fill=\"none\" stroke=\"#1c1814\" stroke-width=\"2\" stroke-dasharray=\"5 5\"\/>\n      <text x=\"232\" y=\"112\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#1c1814\">+ LSP<\/text>\n      <text x=\"232\" y=\"127\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"11\" fill=\"#4a4138\">il navigatore con indirizzi esatti<\/text>\n \n      <rect x=\"375\" y=\"92\" width=\"225\" height=\"44\" rx=\"8\" fill=\"none\" stroke=\"#1c1814\" stroke-width=\"2\" stroke-dasharray=\"5 5\"\/>\n      <text x=\"487\" y=\"112\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#1c1814\">+ Subagent<\/text>\n      <text x=\"487\" y=\"127\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"11\" fill=\"#4a4138\">lo scout mandato in avanscoperta<\/text>\n    <\/svg>\n    <figcaption>Cinque <b>punti di estensione<\/b> pi\u00f9 due capacit\u00e0 aggiuntive (<b>LSP<\/b> e <b>subagent<\/b>) completano il quadro.<\/figcaption>\n  <\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Cosa fa ciascun pezzo, con un esempio<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>CLAUDE.md, vengono per primi.<\/strong>&nbsp;Sono file di contesto che Claude legge in automatico a ogni sessione: uno alla radice per il quadro generale, altri nelle sottocartelle per le convenzioni locali.&nbsp;<em>Esempio:<\/em>&nbsp;nel file della cartella&nbsp;<code>pagamenti\/<\/code>&nbsp;scrivi &#8220;qui i test si lanciano con&nbsp;<code>make test-payments<\/code>, non con la suite intera&#8221;. Siccome si caricano sempre, vanno tenuti snelli: solo ci\u00f2 che vale in generale e le trappole critiche.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Hooks, rendono il setup capace di migliorarsi da solo.<\/strong>&nbsp;Molti li vedono solo come &#8220;blocchi&#8221; che impediscono errori, ma il loro uso pi\u00f9 prezioso \u00e8 automatico e continuo.&nbsp;<em>Esempio:<\/em>&nbsp;un hook di fine sessione pu\u00f2 riflettere su cosa \u00e8 successo e proporre un aggiornamento al CLAUDE.md finch\u00e9 il contesto \u00e8 fresco. E per linting e formattazione, un hook applica le regole in modo deterministico, pi\u00f9 affidabile che sperare che Claude se le ricordi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Skills, competenza a richiesta senza appesantire ogni sessione.<\/strong>&nbsp;In una codebase con decine di tipi di compiti, non serve avere tutto sempre presente.&nbsp;<em>Esempio:<\/em>&nbsp;una skill di &#8220;security review&#8221; si attiva solo quando Claude valuta vulnerabilit\u00e0; una skill per la documentazione si attiva quando una modifica al codice richiede di aggiornare i documenti. Le skill si possono anche legare a percorsi specifici: il team dei pagamenti aggancia la propria skill di deploy a quella cartella, cos\u00ec non si attiva mai altrove.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Plugins, distribuiscono ci\u00f2 che funziona.<\/strong>&nbsp;Il rischio nelle grandi aziende \u00e8 che le buone configurazioni restino &#8220;tribali&#8221;, note solo a chi le ha inventate. Un plugin impacchetta skill, hook e configurazioni MCP in un unico pacchetto installabile.&nbsp;<em>Esempio:<\/em>&nbsp;un&#8217;azienda retail ha costruito una skill che collega Claude alla propria piattaforma di analytics interna e l&#8217;ha distribuita come plugin, cos\u00ec ogni nuovo collega ha le stesse capacit\u00e0 dal primo giorno.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>LSP, d\u00e0 a Claude la stessa precisione di un IDE<\/strong>&nbsp;(<em>Integrated Development Environment<\/em>, l&#8217;ambiente di sviluppo). Il Language Server Protocol \u00e8 ci\u00f2 che, nell&#8217;editor, fa funzionare &#8220;vai alla definizione&#8221; e &#8220;trova tutti i riferimenti&#8221;.&nbsp;<em>Esempio:<\/em>&nbsp;cercare una funzione con un nome comune via testo restituisce migliaia di risultati e Claude brucia contesto aprendo file a caso; con l&#8217;LSP ottiene solo i riferimenti che puntano davvero allo stesso simbolo. Per codebase multi-linguaggio (C, C++\u2026) \u00e8 uno degli investimenti a pi\u00f9 alto valore.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>MCP server, estendono tutto.<\/strong>&nbsp;MCP sta per&nbsp;<em>Model Context Protocol<\/em>: \u00e8 il modo con cui Claude si collega a strumenti interni, fonti dati e API che altrimenti non raggiungerebbe: documentazione interna, sistemi di ticketing, piattaforme di analytics. I team pi\u00f9 maturi costruiscono server MCP che espongono una ricerca strutturata come strumento chiamabile direttamente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Subagent, separano l&#8217;esplorazione dalla modifica.<\/strong>&nbsp;Un subagent \u00e8 un&#8217;istanza isolata di Claude, con la propria finestra di contesto: prende un compito, lo svolge e restituisce solo il risultato finale.&nbsp;<em>Esempio:<\/em>&nbsp;un subagent in sola lettura mappa un sottosistema e scrive le sue scoperte in un file; poi l&#8217;agente principale modifica il codice avendo gi\u00e0 il quadro completo, senza essersi intasato il contesto con l&#8217;esplorazione.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes has-small-font-size\"><table><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Componente<\/th><th class=\"has-text-align-left\" data-align=\"left\">In una frase<\/th><th class=\"has-text-align-left\" data-align=\"left\">Quando si carica<\/th><th class=\"has-text-align-left\" data-align=\"left\">Errore tipico<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-left\" data-align=\"left\">CLAUDE.md<\/td><td class=\"has-text-align-left\" data-align=\"left\">File di contesto letto in automatico<\/td><td class=\"has-text-align-left\" data-align=\"left\">Ogni sessione<\/td><td class=\"has-text-align-left\" data-align=\"left\">Usarlo per competenze riusabili (che andrebbero in una skill)<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Hooks<\/td><td class=\"has-text-align-left\" data-align=\"left\">Script che scattano a momenti chiave<\/td><td class=\"has-text-align-left\" data-align=\"left\">Su evento<\/td><td class=\"has-text-align-left\" data-align=\"left\">Usare istruzioni &#8220;a voce&#8221; per cose che dovrebbero girare da sole<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Skills<\/td><td class=\"has-text-align-left\" data-align=\"left\">Istruzioni impacchettate per tipi di compito<\/td><td class=\"has-text-align-left\" data-align=\"left\">A richiesta, quando servono<\/td><td class=\"has-text-align-left\" data-align=\"left\">Infilare tutto nel CLAUDE.md<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Plugins<\/td><td class=\"has-text-align-left\" data-align=\"left\">Skill, hook e MCP in un pacchetto<\/td><td class=\"has-text-align-left\" data-align=\"left\">Sempre, una volta configurato<\/td><td class=\"has-text-align-left\" data-align=\"left\">Lasciare che i buoni setup restino &#8220;tribali&#8221;<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">LSP<\/td><td class=\"has-text-align-left\" data-align=\"left\">Intelligenza di codice in tempo reale<\/td><td class=\"has-text-align-left\" data-align=\"left\">Sempre, una volta configurato<\/td><td class=\"has-text-align-left\" data-align=\"left\">Darlo per scontato come automatico<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">MCP server<\/td><td class=\"has-text-align-left\" data-align=\"left\">Ponti verso strumenti e dati esterni<\/td><td class=\"has-text-align-left\" data-align=\"left\">Sempre, una volta configurato<\/td><td class=\"has-text-align-left\" data-align=\"left\">Costruirli prima che funzionino le basi<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Subagent<\/td><td class=\"has-text-align-left\" data-align=\"left\">Istanze separate per compiti specifici<\/td><td class=\"has-text-align-left\" data-align=\"left\">Quando invocati<\/td><td class=\"has-text-align-left\" data-align=\"left\">Esplorare e modificare nella stessa sessione<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-pullquote is-style-default has-large-font-size\"><blockquote><p>\u00abNon \u00e8 il modello da solo a fare la differenza, ma tutto ci\u00f2 che gli costruisci intorno.\u00bb<\/p><cite>Anthropic&#8217;s blog<\/cite><\/blockquote><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Tre mosse che funzionano sempre<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Pur cambiando ogni codebase, tre pattern sono emersi con costanza nei progetti riusciti.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Rendere la codebase navigabile<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">La capacit\u00e0 di Claude \u00e8 limitata dalla sua capacit\u00e0 di trovare il contesto giusto. Troppo contesto in ogni sessione ne degrada le prestazioni; troppo poco lo lascia a navigare alla cieca. In mezzo c&#8217;\u00e8 il punto giusto:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>CLAUDE.md snelli e a strati:<\/strong>\u00a0radice per il quadro d&#8217;insieme, sottocartelle per i dettagli locali. La radice contiene solo puntatori e trappole critiche.<\/li>\n\n\n\n<li><strong>Avviare nelle sottocartelle, non alla radice:<\/strong>\u00a0Claude lavora meglio quando \u00e8 circoscritto alla parte rilevante. Risale comunque l&#8217;albero e carica ogni CLAUDE.md che trova, quindi il contesto della radice non si perde.<\/li>\n\n\n\n<li><strong>Comandi di test e lint per sottocartella:<\/strong>\u00a0lanciare l&#8217;intera suite per una modifica a un solo servizio causa timeout e spreca contesto.<\/li>\n\n\n\n<li><strong>File\u00a0<code>.ignore<\/code>\u00a0e regole versionate<\/strong>\u00a0per escludere file generati, artefatti di build e codice di terze parti, cos\u00ec tutti hanno la stessa riduzione di rumore.<\/li>\n\n\n\n<li><strong>Mappe della codebase<\/strong>\u00a0quando la struttura delle cartelle non basta: un semplice file markdown alla radice con una riga di descrizione per ogni cartella di alto livello.<\/li>\n\n\n\n<li><strong>Server LSP attivi<\/strong>\u00a0per cercare per simbolo, non per stringa.<\/li>\n<\/ul>\n\n\n\n <figure>\n    <svg viewBox=\"0 0 700 300\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"Il giusto equilibrio di contesto\">\n      <rect width=\"700\" height=\"300\" fill=\"#fbf6ec\" rx=\"10\"\/>\n      <text x=\"350\" y=\"42\" text-anchor=\"middle\" font-family=\"'Fraunces',serif\" font-size=\"19\" font-weight=\"900\" fill=\"#1c1814\">Il punto giusto di contesto<\/text>\n \n      <!-- three columns -->\n      <!-- too little -->\n      <rect x=\"56\" y=\"80\" width=\"170\" height=\"160\" rx=\"10\" fill=\"#ece2d2\" stroke=\"#8f3015\" stroke-width=\"2\"\/>\n      <text x=\"141\" y=\"112\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#8f3015\">TROPPO POCO<\/text>\n      <text x=\"141\" y=\"150\" text-anchor=\"middle\" font-size=\"34\">?<\/text>\n      <text x=\"141\" y=\"186\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"13\" fill=\"#4a4138\">naviga alla cieca,<\/text>\n      <text x=\"141\" y=\"204\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"13\" fill=\"#4a4138\">indovina<\/text>\n \n      <!-- just right -->\n      <rect x=\"265\" y=\"70\" width=\"170\" height=\"180\" rx=\"10\" fill=\"#bb4622\"\/>\n      <text x=\"350\" y=\"104\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#fff\">GIUSTO<\/text>\n      <text x=\"350\" y=\"146\" text-anchor=\"middle\" font-size=\"38\">?<\/text>\n      <text x=\"350\" y=\"184\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"13\" fill=\"#ffe9df\">snello, a strati,<\/text>\n      <text x=\"350\" y=\"202\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"13\" fill=\"#ffe9df\">circoscritto<\/text>\n \n      <!-- too much -->\n      <rect x=\"474\" y=\"80\" width=\"170\" height=\"160\" rx=\"10\" fill=\"#ece2d2\" stroke=\"#8f3015\" stroke-width=\"2\"\/>\n      <text x=\"559\" y=\"112\" text-anchor=\"middle\" font-family=\"'JetBrains Mono',monospace\" font-size=\"12\" font-weight=\"600\" fill=\"#8f3015\">TROPPO<\/text>\n      <text x=\"559\" y=\"150\" text-anchor=\"middle\" font-size=\"34\">?<\/text>\n      <text x=\"559\" y=\"186\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"13\" fill=\"#4a4138\">prestazioni<\/text>\n      <text x=\"559\" y=\"204\" text-anchor=\"middle\" font-family=\"'Spectral',serif\" font-size=\"13\" fill=\"#4a4138\">degradate<\/text>\n    <\/svg>\n    <figcaption>N\u00e9 cieco n\u00e9 sommerso: il valore sta nel <b>contesto giusto, al momento giusto<\/b>.<\/figcaption>\n  <\/figure>\n \n\n\n\n<h3 class=\"wp-block-heading\">2. Manutenere i CLAUDE.md man mano che i modelli evolvono<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Le istruzioni scritte per il modello di oggi possono lavorare\u00a0<em>contro<\/em>\u00a0quello di domani.\u00a0<em>Esempio dal pezzo:<\/em>\u00a0una regola che diceva &#8220;spezza ogni refactoring in modifiche a un solo file&#8221; aiutava un modello pi\u00f9 vecchio a non perdersi, ma impedirebbe a uno pi\u00f9 nuovo di fare le modifiche coordinate su pi\u00f9 file che ormai gestisce bene. Allo stesso modo, hook e skill nati per compensare vecchi limiti diventano peso morto quando quei limiti spariscono. Consiglio pratico: una revisione della configurazione\u00a0<strong>ogni 3\u20136 mesi<\/strong>, e comunque dopo ogni rilascio importante di modello.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Assegnare una responsabilit\u00e0 chiara<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">La configurazione tecnica da sola non basta a guidare l&#8217;adozione. I rollout pi\u00f9 rapidi avevano un investimento dedicato&nbsp;<em>prima<\/em>&nbsp;dell&#8217;accesso diffuso: un piccolo team, a volte una sola persona, che cabla gli strumenti cos\u00ec che, quando gli sviluppatori toccano Claude per la prima volta, sia gi\u00e0 integrato nel loro flusso. La prima esperienza \u00e8 produttiva invece che frustrante, e da l\u00ec l&#8217;adozione si diffonde.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sta emergendo una figura nuova, l&#8217;<strong>agent manager<\/strong>: un ibrido tra PM (<em>project manager<\/em>) e ingegnere dedicato a gestire l&#8217;ecosistema Claude Code. Ma ridurlo a &#8220;chi coordina e configura&#8221; \u00e8 limitante. La parte pi\u00f9 sottile e pi\u00f9 preziosa del ruolo \u00e8 un&#8217;altra:&nbsp;<strong>saper leggere gli output con occhio critico e fare adversarial check degli errori<\/strong>. Non basta che Claude produca una risposta plausibile e ben scritta; qualcuno deve chiedersi&nbsp;<em>\u00ab\u00e8 davvero corretta, o solo verosimile?\u00bb<\/em>&nbsp;e provare a smontarla finch\u00e9 non regge. \u00c8 esattamente la differenza tra accettare &#8220;Claude Code lavora in locale&#8221; e accorgersi che no: locale \u00e8 solo la ricerca, l&#8217;inferenza \u00e8 remota. Un agent manager senza questo istinto distribuisce in fretta configurazioni che&nbsp;<em>sembrano<\/em>&nbsp;funzionare ma propagano errori sottili a tutta l&#8217;organizzazione.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per chi non ha un team dedicato, la versione minima \u00e8 un&nbsp;<strong>DRI<\/strong>&nbsp;(<em>Directly Responsible Individual<\/em>, la persona direttamente responsabile): qualcuno con la responsabilit\u00e0 (e l&#8217;autorit\u00e0) su configurazione, permessi, marketplace dei plugin e convenzioni dei CLAUDE.md,&nbsp;<em>e<\/em>&nbsp;con il compito di verificare la qualit\u00e0 di ci\u00f2 che Claude produce prima che diventi standard. L&#8217;adozione dal basso genera entusiasmo, ma senza qualcuno che centralizzi e&nbsp;<strong>verifichi criticamente<\/strong>&nbsp;ci\u00f2 che funziona, la conoscenza resta tribale e gli errori si sedimentano silenziosamente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">C&#8217;\u00e8 un&#8217;abilit\u00e0 sotto tutto questo, ed \u00e8 la pi\u00f9 facile da trascurare: per fare bene da agent manager bisogna prima di tutto&nbsp;<strong>saper pensare bene<\/strong>. Lo strumento amplifica chi lo guida: se il pensiero \u00e8 solido, l&#8217;LLM lo potenzia; se \u00e8 pigro, lo rispecchia e lo conferma. La postura giusta \u00e8&nbsp;<em>pensare-con<\/em>&nbsp;il modello, non delegargli il pensiero: tenerlo come interlocutore da interrogare e contraddire, mai come oracolo da firmare. \u00c8 questa la differenza tra uscire da una sessione pi\u00f9 bravi e uscirne solo pi\u00f9 veloci.<\/p>\n\n\n\n<div style=\"margin:40px 0;border:2px solid #1c1814;border-radius:12px;background:linear-gradient(135deg,#1c1814 0%,#2c241c 100%);color:#f4ede1;padding:30px 32px;position:relative;overflow:hidden;font-family: Georgia,serif;\">\n    <div style=\"position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(200,144,42,.22),transparent 70%);pointer-events:none;\"><\/div>\n    <span style=\"font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#c8902a;font-weight:600;margin:0 0 14px;display:block;position:relative;\">Per approfondire<\/span>\n    <h4 style=\"font-family:'Fraunces',Georgia,serif;font-weight:900;font-size:1.55rem;line-height:1.1;margin:0 0 4px;color:#fff;letter-spacing:-.01em;position:relative;\">Pensare con gli LLM, the Right Way<\/h4>\n    <p style=\"font-family: Georgia,serif;font-style:italic;color:#d8cbb6;margin:0 0 16px;font-size:1.02rem;position:relative;\">Potenziamo il pensiero critico usando l&#8217;AI generativa senza farci usare.<\/p>\n    <p style=\"margin:14px 0;font-size:1.02rem;color:#ece2d2;position:relative;\">Non un manuale di prompt engineering, ma un metodo di governance critica: il <strong style=\"color:#fff;font-weight:600;\">Triangolo del Pensare-Con<\/strong> (Intento \/ Avversario \/ Editore), la pratica <strong style=\"color:#fff;font-weight:600;\">socratica<\/strong> e quella <strong style=\"color:#fff;font-weight:600;\">avversariale<\/strong> per interrogare e verificare gli output, e le quattro decisioni esplicite \u2014 <em style=\"color:#e8c98f;font-style:italic;\">cosa delegare, come verificare, chi \u00e8 responsabile, qual \u00e8 la soglia di rinuncia<\/em> \u2014 che sono esattamente il patto operativo di cui un agent manager ha bisogno.<\/p>\n    <p style=\"margin:14px 0;font-size:1.02rem;color:#ece2d2;position:relative;\">Chiude il cerchio con questo articolo: il libro include una skill open-source <code style=\"font-family:'JetBrains Mono',monospace;font-size:.85em;background:rgba(255,255,255,.12);color:#ffd9a0;padding:2px 6px;border-radius:4px;\">adversarial-verify<\/code> proprio per Claude Code, che cristallizza il metodo dell&#8217;adversarial check in un workflow eseguibile.<\/p>\n    <a href=\"https:\/\/leanpub.com\/pensare-con-gli-llm\" target=\"_blank\" rel=\"noopener\" style=\"display:inline-block;margin-top:8px;background:#bb4622;color:#fff;text-decoration:none;font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:600;letter-spacing:.04em;padding:11px 22px;border-radius:8px;position:relative;\">Leggi su Leanpub ?<\/a>\n    <p style=\"font-family:'JetBrains Mono',monospace;font-size:11.5px;color:#a89881;margin-top:14px;position:relative;\">di Francesco Fullone \u00b7 serie &#8220;the Right Way&#8221;<\/p>\n  <\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Da dove partire<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Claude Code \u00e8 pensato per ambienti di sviluppo convenzionali: ingegneri come contributori principali, repository su Git, struttura di cartelle standard. Setup non tradizionali (motori di gioco con grandi asset binari, controllo di versione insolito, non-ingegneri che contribuiscono) richiedono lavoro di configurazione aggiuntivo. Ecco una sequenza di partenza ragionevole:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Scrivi i primi\u00a0<strong>CLAUDE.md<\/strong>: uno alla radice (snello), poi nelle sottocartelle dove lavori davvero.<\/li>\n\n\n\n<li>Aggiungi\u00a0<strong>hook<\/strong>\u00a0per linting\/formattazione e per catturare gli apprendimenti di fine sessione.<\/li>\n\n\n\n<li>Sposta le competenze riusabili in\u00a0<strong>skill<\/strong>, agganciate ai percorsi giusti.<\/li>\n\n\n\n<li>Attiva l&#8217;<strong>LSP<\/strong>\u00a0per il tuo linguaggio: cercare per simbolo invece che per stringa.<\/li>\n\n\n\n<li>Impacchetta tutto in\u00a0<strong>plugin<\/strong>\u00a0e dai una\u00a0<strong>ownership<\/strong>\u00a0chiara (un DRI o un agent manager).<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Per le aziende grandi, soprattutto in settori regolati, le domande di governance arrivano presto: chi controlla quali skill e plugin sono disponibili? come si evita che migliaia di ingegneri ricostruiscano la stessa cosa? come si garantisce che il codice generato dall&#8217;AI passi dalla stessa revisione di quello umano? La risposta suggerita \u00e8 partire con un set definito di skill approvate, revisione del codice obbligatoria e accesso iniziale limitato, allargando man mano che cresce la fiducia.n set definito di skill approvate, revisione del codice obbligatoria e accesso iniziale limitato, allargando man mano che cresce la fiducia.<\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><strong>Nota.<\/strong>\u00a0Questo \u00e8 un articolo divulgativo in italiano, sintesi e rielaborazione con parole, esempi e diagrammi miei, basato sull&#8217;articolo Anthropic \u00ab<em>How Claude Code works in large codebases: Best practices and where to start<\/em>\u00bb (blog Claude, 14 maggio 2026).<\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">Originale: <a href=\"https:\/\/claude.com\/blog\/how-claude-code-works-in-large-codebases-best-practices-and-where-to-start\" type=\"link\" id=\"claude.com\/blog\/how-claude-code-works-in-large-codebases-best-practices-and-where-to-start\">claude.com\/blog\/how-claude-code-works-in-large-codebases-best-practices-and-where-to-start<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cosa succede quando un assistente di codice incontra un monorepo da milioni di righe, sistemi legacy di vent&#8217;anni e decine di repository, e perch\u00e9 il segreto non \u00e8 il modello, ma tutto ci\u00f2 che gli costruisci intorno.<\/p>\n","protected":false},"author":1,"featured_media":4699,"comment_status":"closed","ping_status":"open","sticky":false,"template":"templates\/template-cover.php","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[5],"tags":[2441,2413,2430,2457,2412],"class_list":["post-4698","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tecnologia","tag-agents","tag-ai","tag-claude","tag-leanpub","tag-llm"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Come Claude Code lavora nelle grandi codebase - Fullo<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Come Claude Code lavora nelle grandi codebase - Fullo\" \/>\n<meta property=\"og:description\" content=\"Cosa succede quando un assistente di codice incontra un monorepo da milioni di righe, sistemi legacy di vent&#039;anni e decine di repository, e perch\u00e9 il segreto non \u00e8 il modello, ma tutto ci\u00f2 che gli costruisci intorno.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/\" \/>\n<meta property=\"og:site_name\" content=\"Fullo\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-02T22:16:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-02T22:16:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"559\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Francesco Fullone\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@fullo\" \/>\n<meta name=\"twitter:site\" content=\"@fullo\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Francesco Fullone\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"15 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/\"},\"author\":{\"name\":\"Francesco Fullone\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\"},\"headline\":\"Come Claude Code lavora nelle grandi codebase\",\"datePublished\":\"2026-06-02T22:16:45+00:00\",\"dateModified\":\"2026-06-02T22:16:48+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/\"},\"wordCount\":2909,\"publisher\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\"},\"image\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/image.png?fit=1024%2C559&ssl=1\",\"keywords\":[\"agents\",\"ai\",\"claude\",\"leanpub\",\"llm\"],\"articleSection\":[\"tecnologia\"],\"inLanguage\":\"it-IT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/\",\"url\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/\",\"name\":\"Come Claude Code lavora nelle grandi codebase - Fullo\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/image.png?fit=1024%2C559&ssl=1\",\"datePublished\":\"2026-06-02T22:16:45+00:00\",\"dateModified\":\"2026-06-02T22:16:48+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/image.png?fit=1024%2C559&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/image.png?fit=1024%2C559&ssl=1\",\"width\":1024,\"height\":559},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2026\\\/06\\\/02\\\/come-claude-code-lavora-nelle-grandi-codebase\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Come Claude Code lavora nelle grandi codebase\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/\",\"name\":\"Fullo\",\"description\":\"nulla e&#039; impossibile per chi non lo deve fare!\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\",\"name\":\"Francesco Fullone\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1\",\"width\":622,\"height\":622,\"caption\":\"Francesco Fullone\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1\"},\"sameAs\":[\"http:\\\/\\\/www.fullo.net\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/fullo\",\"https:\\\/\\\/x.com\\\/fullo\"],\"url\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/author\\\/fullo\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Come Claude Code lavora nelle grandi codebase - Fullo","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/","og_locale":"it_IT","og_type":"article","og_title":"Come Claude Code lavora nelle grandi codebase - Fullo","og_description":"Cosa succede quando un assistente di codice incontra un monorepo da milioni di righe, sistemi legacy di vent'anni e decine di repository, e perch\u00e9 il segreto non \u00e8 il modello, ma tutto ci\u00f2 che gli costruisci intorno.","og_url":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/","og_site_name":"Fullo","article_published_time":"2026-06-02T22:16:45+00:00","article_modified_time":"2026-06-02T22:16:48+00:00","og_image":[{"width":1024,"height":559,"url":"https:\/\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png","type":"image\/png"}],"author":"Francesco Fullone","twitter_card":"summary_large_image","twitter_creator":"@fullo","twitter_site":"@fullo","twitter_misc":{"Scritto da":"Francesco Fullone","Tempo di lettura stimato":"15 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/#article","isPartOf":{"@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/"},"author":{"name":"Francesco Fullone","@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c"},"headline":"Come Claude Code lavora nelle grandi codebase","datePublished":"2026-06-02T22:16:45+00:00","dateModified":"2026-06-02T22:16:48+00:00","mainEntityOfPage":{"@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/"},"wordCount":2909,"publisher":{"@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c"},"image":{"@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?fit=1024%2C559&ssl=1","keywords":["agents","ai","claude","leanpub","llm"],"articleSection":["tecnologia"],"inLanguage":"it-IT"},{"@type":"WebPage","@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/","url":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/","name":"Come Claude Code lavora nelle grandi codebase - Fullo","isPartOf":{"@id":"https:\/\/www.fullo.net\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/#primaryimage"},"image":{"@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?fit=1024%2C559&ssl=1","datePublished":"2026-06-02T22:16:45+00:00","dateModified":"2026-06-02T22:16:48+00:00","breadcrumb":{"@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/#primaryimage","url":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?fit=1024%2C559&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?fit=1024%2C559&ssl=1","width":1024,"height":559},{"@type":"BreadcrumbList","@id":"https:\/\/www.fullo.net\/blog\/2026\/06\/02\/come-claude-code-lavora-nelle-grandi-codebase\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.fullo.net\/blog\/"},{"@type":"ListItem","position":2,"name":"Come Claude Code lavora nelle grandi codebase"}]},{"@type":"WebSite","@id":"https:\/\/www.fullo.net\/blog\/#website","url":"https:\/\/www.fullo.net\/blog\/","name":"Fullo","description":"nulla e&#039; impossibile per chi non lo deve fare!","publisher":{"@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.fullo.net\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":["Person","Organization"],"@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c","name":"Francesco Fullone","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2024\/10\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1","url":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2024\/10\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2024\/10\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1","width":622,"height":622,"caption":"Francesco Fullone"},"logo":{"@id":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2024\/10\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1"},"sameAs":["http:\/\/www.fullo.net","https:\/\/www.linkedin.com\/in\/fullo","https:\/\/x.com\/fullo"],"url":"https:\/\/www.fullo.net\/blog\/author\/fullo\/"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/06\/image.png?fit=1024%2C559&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p3OSc1-1dM","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":4660,"url":"https:\/\/www.fullo.net\/blog\/2026\/04\/21\/le-quattro-decisioni-da-prendere-esplicitamente-prima-di-integrare-lai\/","url_meta":{"origin":4698,"position":0},"title":"Le quattro decisioni da prendere esplicitamente prima di integrare l&#8217;AI","author":"Francesco Fullone","date":"21\/04\/2026","format":false,"excerpt":"Integrare l'AI in un progetto significa prendere quattro decisioni architetturali separate, che quasi nessuno prende esplicitamente: vengono collassate in una sola e di solito finiscono delegate al team tecnico. Il problema: nessuna di queste quattro decisioni \u00e8 una decisione tecnica pura, e tutte hanno un costo di reversibilit\u00e0 che cresce\u2026","rel":"","context":"In &quot;advisoring&quot;","block_context":{"text":"advisoring","link":"https:\/\/www.fullo.net\/blog\/category\/entrepreneurship\/advisoring\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/immagine.png?fit=1024%2C559&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/immagine.png?fit=1024%2C559&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/immagine.png?fit=1024%2C559&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/immagine.png?fit=1024%2C559&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":4607,"url":"https:\/\/www.fullo.net\/blog\/2026\/04\/07\/adversarial-verification-claude-skill\/","url_meta":{"origin":4698,"position":1},"title":"Adversarial verification come metodo","author":"Francesco Fullone","date":"07\/04\/2026","format":false,"excerpt":"Nell'articolo sugli agenti disfunzionali ho descritto come ho dovuto introdurre dinamiche di adversarial verification tra agenti AI per ottenere qualit\u00e0: verifica incrociata obbligatoria, challenge sistematiche, accountability sui falsi positivi. Quel metodo adesso \u00e8 una skill open-source per Claude Code. Si chiama adversarial-verify, e applica Chain-of-Verification combinata con tre tecniche di\u2026","rel":"","context":"In &quot;lifehack&quot;","block_context":{"text":"lifehack","link":"https:\/\/www.fullo.net\/blog\/category\/di-tutto-un-po\/lifehack\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_x868e1x868e1x868-scaled.png?fit=1200%2C654&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_x868e1x868e1x868-scaled.png?fit=1200%2C654&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_x868e1x868e1x868-scaled.png?fit=1200%2C654&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_x868e1x868e1x868-scaled.png?fit=1200%2C654&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2026\/04\/Gemini_Generated_Image_x868e1x868e1x868-scaled.png?fit=1200%2C654&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1218,"url":"https:\/\/www.fullo.net\/blog\/2005\/01\/18\/hw-region-code\/","url_meta":{"origin":4698,"position":2},"title":"hw region code","author":"Francesco Fullone","date":"18\/01\/2005","format":false,"excerpt":"scopro con amarezza su wikilab che alcuni produttori di cartucce per stampanti a getto (non faccio nomi: HP) hanno iniziato a produrle con la logica del region code lock dei DVD, cio\u00e8 solo le cartucce commercializzate in europa funzionano in europa e viceversa. Approfondendo la lettura sul wall street journal\u2026","rel":"","context":"In &quot;pensieri&quot;","block_context":{"text":"pensieri","link":"https:\/\/www.fullo.net\/blog\/category\/pensieri\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1415,"url":"https:\/\/www.fullo.net\/blog\/2005\/05\/26\/brevetti-confindustria-vuole-affossare-le-pmi\/","url_meta":{"origin":4698,"position":3},"title":"Brevetti, Confindustria vuole affossare le PMI","author":"Francesco Fullone","date":"26\/05\/2005","format":false,"excerpt":"Su punto-informatico di oggi c'\u00e8 un articolo che riassume il perch\u00e8 confindustria sia favorevole ai brevetti software. Tra i vari bla bla bla alcuni punti mi hanno lasciato perplesso. Per spingere le imprese ad investire in R&S occorre per\u00f2 creare incentivi. L'unico incentivo a sviluppare qualcosa per brevettarlo \u00e8 quello\u2026","rel":"","context":"In &quot;pensieri&quot;","block_context":{"text":"pensieri","link":"https:\/\/www.fullo.net\/blog\/category\/pensieri\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2773,"url":"https:\/\/www.fullo.net\/blog\/2010\/10\/04\/qr-code-bookmarklet\/","url_meta":{"origin":4698,"position":4},"title":"QR Code bookmarklet","author":"Francesco Fullone","date":"04\/10\/2010","format":false,"excerpt":"Se vi piacciono i QR Code, come quello che vedete qui a sinistra sappiate che google mette a disposizione un comodo tool per la generazione on-fly degli stessi. Per comodit\u00e0 ho creato una piccola bookmarklet che invoca il servizio e genera automaticamente l'immagine. Per usarla, copiate questo codice all'interno di\u2026","rel":"","context":"In &quot;lifehack&quot;","block_context":{"text":"lifehack","link":"https:\/\/www.fullo.net\/blog\/category\/di-tutto-un-po\/lifehack\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2102,"url":"https:\/\/www.fullo.net\/blog\/2006\/10\/31\/code-igniter-150\/","url_meta":{"origin":4698,"position":5},"title":"Code Igniter 1.5.0","author":"Francesco Fullone","date":"31\/10\/2006","format":false,"excerpt":"Da poco mi sono ufficialmente avvicinato al pattern MVC per portare avanti un piccolo progetto, siccome le esigenze non sono immense ho preferito (sotto consiglio di Ciccio) usare un framework leggero e flessibile. Oggi \u00e8 uscita la nuova release ufficiale, la 1.5.0, del framework in questione chiamato Code Igniter. Questo\u2026","rel":"","context":"In &quot;php&quot;","block_context":{"text":"php","link":"https:\/\/www.fullo.net\/blog\/category\/tecnologia\/php\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts\/4698","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/comments?post=4698"}],"version-history":[{"count":4,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts\/4698\/revisions"}],"predecessor-version":[{"id":4703,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts\/4698\/revisions\/4703"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/media\/4699"}],"wp:attachment":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/media?parent=4698"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/categories?post=4698"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/tags?post=4698"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}