Categoria

Pagina 1 di 1

Code Quality: codice che dura e che chi arriva dopo può leggere

La qualità del codice non è un vezzo estetico: è quello che determina quanto costerà modificare il software fra due anni. Un codice chiaro si estende, un codice oscuro si riscrive, e riscrivere costa sempre più di quanto si pensi. In questa categoria la qualità è trattata per quello che è davvero: una leva economica sulla manutenibilità futura.

Il primo tema sono gli strumenti e le abitudini che tengono alta la qualità in modo ripetibile: analisi statica con PHPStan e Psalm portata ai livelli alti su codice reale, code review come pratica e non come rito, e quel set di abitudini operative che distingue un senior da chi ha solo accumulato anni. La qualità non è talento, è disciplina applicata con costanza.

Il secondo tema è la qualità nell'era del codice AI-generato, che è il fronte più insidioso di oggi. Il codice prodotto da un modello sembra pulito, passa i test ed esce in produzione, ma può nascondere un debito di comprensione che nessuno ha davvero assorbito, e classi di vulnerabilità ricorrenti che il contesto non coglie. Scrivo di come si fa una code review seria su output AI, e di come si usa l'AI stessa per alzare la qualità invece di abbassarla di nascosto.

Se vuoi alzare la qualità di una codebase o del tuo team, vedi i miei progetti PHP senior o scrivimi.

Scrivere codice che funziona è facile. Scrivere codice che un team può leggere e modificare tra due anni, quello è il lavoro vero.

Automatizzare la revisione tecnica del codice ereditato: dalla paura all'analisi sistematica

Automatizzare la revisione tecnica del codice ereditato: dalla paura all'analisi sistematica La prima settimana su un progetto legacy è sempre disorientante. Ho sviluppato un processo sistematico di audit tecnico in 5 fasi: analisi statica con PHPStan, complessità ciclomatica con PHP Metrics, mappa delle dipendenze esterne, test di copertura esistente e interviste al team. Output: un report con priorità chiare. Continua a leggere
Ultima modifica:

PHP e memory management: come evitare i memory leak nelle applicazioni di lunga esecuzione

PHP e memory management: come evitare i memory leak nelle applicazioni di lunga esecuzione I worker Laravel Horizon di un cliente consumavano 500MB di RAM dopo 6 ore di esecuzione e venivano killati automaticamente. Il memory leak non era ovvio: un event listener registrato globalmente teneva riferimenti a ogni job processato. Vi mostro il processo di diagnosi con Blackfire e le strategie di correzione. Continua a leggere
Ultima modifica:

OpenAPI e Swagger per Laravel: documentazione API generata dal codice e sempre aggiornata

OpenAPI e Swagger per Laravel: documentazione API generata dal codice e sempre aggiornata La documentazione API scritta a mano diverge dall'implementazione in settimane. Ho adottato un approccio code-first: annotation PHP sugli endpoint, generazione automatica dello spec OpenAPI in CI, validazione delle request/response contro lo spec nei test. Gli integratori hanno sempre documentazione fedele alla realtà. Continua a leggere
Ultima modifica:

Analisi statica del codice PHP con Psalm e PHPStan: integrazione in pipeline CI/CD

Analisi statica del codice PHP con Psalm e PHPStan: integrazione in pipeline CI/CD Dopo aver introdotto PHPStan a livello 9 su un progetto Laravel legacy con 80.000 righe di codice, ho trovato 340 errori di tipo - di cui 12 erano vulnerabilità di sicurezza reali, tra cui due SQL injection potenziali e una IDOR. L'analisi statica non sostituisce il pen test, ma lo rende più efficiente. Continua a leggere
Ultima modifica:

SQL injection nel 2025: perché continua a colpire le PMI e come prevenirla definitivamente

SQL injection nel 2025: perché continua a colpire le PMI e come prevenirla definitivamente Ho trovato una SQL injection in un gestionale di ordini PHP usato da un'azienda con 80 dipendenti. Il codice era del 2019, aggiornato più volte, ma la query vulnerabile era sopravvissuta a tutti i refactoring. Vi spiego perché SQLi è ancora viva, quali pattern la nascondono e come fare code review mirata. Continua a leggere
Ultima modifica:

Reverse engineering di Laravel 8 su PHP 7.4 EOL senza documentazione: come ho mappato in dodici giorni il gestionale interno di una catena di cliniche dentistiche veronesi con 23 studi e 180 utenti attivi

Reverse engineering di Laravel 8 su PHP 7.4 EOL senza documentazione: come ho mappato in dodici giorni il gestionale interno di una catena di cliniche dentistiche veronesi con 23 studi e 180 utenti attivi Un'applicazione Laravel abbandonata da due anni su PHP EOL non si affronta in emergenza: va mappata sistematicamente prima di toccarla. Il caso reale di un gestionale interno per una catena di cliniche dentistiche veronesi del 2025, il metodo in dodici giorni con cui ho prodotto documentazione viva partendo da zero, e gli strumenti di static analysis che rendono il reverse engineering effettivamente economico. Continua a leggere
Ultima modifica:

Sei abitudini di un senior developer che valgono più di dieci anni di esperienza: cosa difendo davvero in code review nelle PMI

Sei abitudini di un senior developer che valgono più di dieci anni di esperienza: cosa difendo davvero in code review nelle PMI La differenza fra senior e junior non è il numero di anni: è un set di abitudini operative misurabili. Definition of done estesa, lettura prima di scrittura nel rapporto 10:1, refactoring incrementale del 10% per PR, KISS sopra cleverness, ADR scritti come codice di prima classe, regole non negoziabili su Git e migrazioni. Sei abitudini che difendo in ogni code review PMI e che abbattono il debito tecnico in modo misurabile nei tre-quattro mesi successivi. Continua a leggere
Ultima modifica:

Strumenti utili per la qualità del codice

Tool gratuiti per audit e verifica:

Audit del composer.lock, Regex tester.