C’è qualcosa di scomodo nel pubblicare questo articolo. Soamee è un’agenzia software. Le aziende ci assumono per costruire prodotti digitali. E nell’ultimo anno e mezzo abbiamo usato Claude Code estensivamente per costruire il nostro stesso sito web. Questo è quello che abbiamo trovato quando abbiamo aperto il git log.
Non è un articolo di marketing sull’IA. È una autopsia onesta: cosa ci ha fatto risparmiare settimane, cosa abbiamo dovuto ricostruire, e perché continuiamo a usare lo strumento nonostante i suoi limiti.
I numeri del repository
Prima dell’analisi, i fatti:
- 639 commit da gennaio 2025
- 331 commit con la partecipazione di Claude Code (contrassegnati con
Co-Authored-By: Claude) - 534 file
.astronel progetto attuale - 345 post del blog pubblicati o in bozza
- 115 casi di studio in diverse lingue
- 5 lingue: spagnolo, inglese, portoghese, italiano e tedesco
- Il sito è in produzione continua su Dokku su soamee.com
Quel 52% di commit con partecipazione dell’IA non significa che Claude Code abbia scritto metà del codice. Significa che era presente in più della metà delle sessioni di lavoro — a volte generando file interi, a volte suggerendo una correzione di tre righe.
Cosa ha costruito Claude Code
Il sistema di traduzione
Questo è il caso d’uso dove abbiamo recuperato più tempo. Il sito ha cinque lingue. Ogni post del blog, ogni caso di studio, ogni pagina di servizi esiste in ES, EN, PT, IT e DE. Senza IA, questo avrebbe significato assumere quattro traduttori o accettare un ritardo enorme tra il contenuto in spagnolo e le sue versioni tradotte.
Claude Code ha generato le traduzioni iniziali. Non perfette — il portoghese tende a contaminarsi con lo spagnolo quando il modello perde contesto, il tedesco necessita di revisione degli umlaut, l’italiano a volte mescola i registri. Ma una bozza funzionante esiste in secondi, non in giorni. I commit del log parlano da soli: “Revisione contestuale del portoghese: blocchi in spagnolo e accenti ambigui”, “Corregge contenuto in tedesco: umlaut, errori e blocchi in spagnolo”.
Revisioniamo ogni traduzione. Ma revisionare è molto più veloce che creare da zero.
Lo script di verifica delle traduzioni
Abbiamo un checker di traduzioni che fa fallire la CI se qualsiasi contenuto in spagnolo non ha la sua versione nelle altre quattro lingue. Claude Code ha scritto la prima versione di scripts/translation-checker.cjs, con i suoi alias di categorie, le eccezioni per le pagine solo in spagnolo e l’integrazione con il hook pre-push.
È uno script Node di 400 righe che fa esattamente quello che abbiamo specificato. Non è glamour. È esattamente il tipo di compito dove uno sviluppatore umano impiega due ore e Claude Code venti minuti.
Componenti ripetitivi
Il sito ha pagine di servizi, di settori, di soluzioni — molte pagine con struttura simile ma contenuto diverso. Claude Code ne ha generate la maggior parte seguendo il pattern stabilito. Quando il design del pattern è cambiato, le abbiamo aggiornate in blocco.
Ha anche scritto il middleware di normalizzazione degli URL (HTTP a HTTPS, trailing slash, redirect 301 per errori 404 rilevati in Google Search Console), il generatore di sitemap e diversi script CI.
Il contenuto del blog
Praticamente ogni post di questo blog ha avuto qualche partecipazione di Claude Code. A volte ha generato la bozza completa da un outline; a volte ha suggerito strutture per articoli che avevo già iniziato; a volte ha semplicemente espanso sezioni che sembravano corte.
La voce è sempre revisionata. La struttura di solito è suggerita. I dati sono sempre verificati manualmente.
Cosa hanno dovuto fare gli esseri umani
Design visivo
Questo è il limite più chiaro. Claude Code può implementare un design che descrivi con precisione. Non può inventarne uno. L’identità visiva di Soamee — il deep purple (#1e1548), il mint (#5dd3b3), i pattern di strisce diagonali a 45 gradi, le bolle concentriche — è nata da decisioni umane, non dall’IA.
Quando chiedevamo a Claude Code di “migliorare il design del blog”, a volte produceva qualcosa che funzionava tecnicamente ma che non suonava come noi. Abbiamo dovuto imparare a essere molto specifici: “aggiungi un bordo sinistro di 3px in colore mint sui blockquote” funziona. “Migliora il design” no.
Decisioni di architettura
Scegliere Astro 5 con SSR ibrido è stata una decisione umana. Scegliere Tailwind CSS v4 prima che ci fosse molta documentazione è stata una decisione umana (e costosa in termini di tempo di debugging). Scegliere Dokku rispetto ad altre opzioni di deploy è stata una decisione umana.
Claude Code può valutare le opzioni se gliele presenti, ma i criteri di selezione — cosa conta per il nostro business, il nostro stack, la nostra capacità operativa — vengono da noi.
Revisione di ogni PR
Nessuna modifica generata da Claude Code è andata in produzione senza revisione. Non perché non ci fidiamo del modello, ma perché la revisione umana cattura cose che il modello non può sapere: se il tono di un paragrafo corrisponde a come parliamo, se una nuova funzionalità ha senso per il business, se un link interno punta al posto giusto.
Il git log mostra commit come “Fix broken internal links: /contacto and /servicios/consultoria-tecnologica”. Quei link erano stati rotti da una modifica precedente generata con l’IA. Sono stati corretti in una sessione di revisione successiva.
La logica di business reale
Il modulo di contatto invia tramite Mailgun. La logica di rate limiting, la gestione degli errori, i campi obbligatori — li abbiamo progettati noi. Claude Code ha implementato il codice una volta che avevamo definito chiaramente il comportamento atteso.
Il flusso di lavoro che ha funzionato
Ci sono voluti alcuni mesi per trovare il flusso che funziona davvero. Cosa non funziona: dare a Claude Code un compito ambiguo e aspettarsi il risultato perfetto. Cosa funziona:
1. La specifica prima. Prima di aprire Claude Code, scriviamo cosa vogliamo: il comportamento esatto, i vincoli, i casi limite. Più specifica è la specifica, meno iterazioni.
2. Branch e PR sempre. Ogni modifica generata con l’IA va in un branch. Mai direttamente su master. Questo consente di revisionare il diff completo prima del merge e di fare revert facilmente se qualcosa si rompe.
3. CI come rete di sicurezza. Il checker delle traduzioni, il checker delle immagini, i test dei link interni — tutto gira nella CI. Claude Code a volte genera contenuto che passa sintatticamente ma fallisce semanticamente (un link a una pagina che non esiste, un’immagine referenziata ma non creata). La CI lo cattura.
4. Revisione per sezioni. Non revisioniamo un PR da 50 file tutto in una volta. Lo dividiamo in blocchi tematici: prima il contenuto in spagnolo, poi le traduzioni di una lingua, poi le altre.
5. Un umano chiude il commit. Sempre. Il messaggio di commit è scritto da un umano, non da Claude Code. È un segnale piccolo ma importante che qualcuno ha guardato.
Cosa ci ha sorpreso (in bene e in male)
Sorprese positive
Il debugging CSS è straordinariamente buono. Tailwind CSS v4 era territorio nuovo con poca documentazione quando lo abbiamo adottato. Claude Code ci ha aiutato a capire perché certi breakpoint non si comportavano come ci aspettavamo e come funziona il sistema di layer di v4. Senza quell’aiuto, avremmo impiegato molto più tempo a stabilizzare il sistema di design.
Gli script di automazione sono il suo punto di forza. Checker delle traduzioni, checker dei link, generatore di sitemap, script di snapshot SEO — strumenti che avrebbero richiesto giorni vengono generati in ore e poi raffinati.
La coerenza tra file simili è notevole. Quando hai un pattern — una pagina di servizi, un post del blog con FAQ, un caso di studio — il modello lo replica fedelmente. Gli esseri umani sono incoerenti per natura; il modello non lo è.
Sorprese negative
Allucinazione delle dipendenze. Specialmente nelle fasi iniziali con Astro 5 e Tailwind v4, Claude Code a volte suggeriva API che non esistevano in quelle versioni. Abbiamo imparato a verificare sempre contro la documentazione ufficiale prima di implementare.
Il problema del contesto lungo. In sessioni molto lunghe, il modello può “dimenticare” vincoli stabiliti all’inizio. Un esempio reale: abbiamo stabilito all’inizio che non avremmo usato certi componenti deprecati, e cinque ore dopo Claude Code li ha suggeriti di nuovo. Le sessioni brevi e focalizzate funzionano meglio.
Design “generico” di default. Senza istruzioni molto specifiche, Claude Code tende verso soluzioni che sembrano qualsiasi altro sito con Tailwind. Tecnicamente corretto, visivamente senza personalità. L’identità del brand richiede supervisione costante.
Le traduzioni in portoghese necessitano di revisione speciale. Il modello confonde spagnolo e portoghese più frequentemente di qualsiasi altra coppia di lingue. Probabilmente per la somiglianza tra le lingue. Le revisioni del PT sono sistematicamente più lunghe di quelle di DE o IT.
Lo rifaremmo? Sì, con riserve
Se iniziassimo soamee.com oggi, useremmo Claude Code dal primo giorno. Ma con queste linee guida chiare:
Usalo per il volume, non per le decisioni. Se devi creare 20 pagine simili, Claude Code è imbattibile. Se devi decidere se quelle pagine debbano esistere, è un compito tuo.
Il tempo di revisione non sparisce, cambia. Prima del flusso con l’IA, il tempo veniva investito nel creare. Ora viene investito nel revisionare. È un cambiamento di natura, non una riduzione proporzionale. Creare con l’IA è più veloce; revisionare richiede attenzione e giudizio.
Non eliminare la CI per fiducia. Ogni volta che pensiamo “questa modifica è così semplice che non ha bisogno di controllo completo,” qualcosa si rompe. La CI gira sempre, senza eccezioni.
La voce del brand è non trasferibile. Claude Code può imitare stili, ma non conosce la tua azienda, i tuoi clienti, i tuoi valori interni. I testi che contano — le proposte di valore, le descrizioni dei servizi, i casi di studio — passano sempre attraverso l’editing umano.
Conclusione
639 commit. 331 con partecipazione dell’IA. 534 file Astro. 5 lingue. E un sito che gira in produzione, si posiziona e converte.
Claude Code ha costruito soamee.com? Non esattamente. Lo abbiamo costruito noi, con Claude Code come strumento principale per il volume di lavoro. La distinzione conta: lo strumento non ha interesse nel risultato, non conosce il contesto di business, non prende le decisioni che definiscono il prodotto.
Se hai un progetto con molto contenuto ripetitivo, traduzioni in più lingue o hai bisogno di spostare molto codice rapidamente, Claude Code può cambiare significativamente la tua capacità di output. Con revisione umana sistematica, CI robusta e aspettative calibrate su cosa può e non può fare.
Se sei curioso di come lavoriamo, puoi vedere i nostri progetti open-source e il nostro approccio.
Il git log non mente. E il nostro dice che questa combinazione funziona.