Ieri funzionava. Oggi no.
Il sito è online, le pagine si aprono, ma qualcosa dentro si è rotto: il form non invia, il filtro non filtra, il checkout si ferma a metà. Trovo la causa e la sistemo, senza rifare niente che già funziona.
- !Il form di contatto sembra inviare ma non arriva niente
- !Il filtro di ricerca non restituisce risultati, o li restituisce tutti
- !Il checkout WooCommerce si blocca al passaggio del pagamento
- !Slider, accordion o pop-up che non si aprono più
- !L'area riservata non fa entrare gli utenti già registrati
- !Un'integrazione esterna ha smesso di sincronizzare senza avvisare
- 01Un plugin aggiornato con una modifica non retrocompatibile
- 02L'hosting ha alzato la versione di PHP e il codice vecchio non regge
- 03Un errore JavaScript introdotto da un conflitto fra due script
- 04Il tema sovrascrive un template che il plugin ha nel frattempo cambiato
- 05Una licenza scaduta: il plugin non si aggiorna più e resta indietro
- 06Codice su misura scritto anni fa, mai documentato, mai più toccato
Una procedura ripetibile, non un'improvvisazione.
- 01
Riproduco il bug
Devo vederlo succedere. Se capita solo in certi casi — un browser, un utente loggato, un prodotto specifico — serve capire quali: è già metà della diagnosi.
- 02
Backup completo
File e database prima di toccare qualsiasi cosa, anche solo per disattivare un plugin e provare.
- 03
Isolo la causa
Console del browser, log PHP, disattivazione a blocchi. Cerco la causa, non il sintomo: sistemare il sintomo lo fa tornare fra un mese.
- 04
Fix mirato
Correggo il minimo necessario, con codice commentato. Niente riscritture opportunistiche di cose che funzionano.
- 05
Test di regressione
Verifico la funzione che era rotta e quelle che le stanno intorno, su desktop e mobile.
- 06
Report scritto
Cos'era, dove l'ho corretto, e cosa tenere d'occhio perché non si ripresenti.
Quanto può costare?
Range orientativo. Stima definitiva dopo aver visto il sito.
Causa nota o rapidamente identificabile: un conflitto documentato, una configurazione saltata, un campo mal mappato.
Il bug si presenta solo in certe condizioni. Riproduzione, isolamento su staging, fix e regressione su più pagine.
Funzionalità su misura scritta da altri, senza documentazione, da capire prima di poterla correggere.
Le domande che mi fanno sempre.
01Il sito funziona, è solo una funzione che si è rotta. Ti occupi anche di questo?
+
È il caso più frequente. Un sito completamente fermo è raro; molto più comune è il form che non invia, il filtro che non filtra, il checkout che si blocca a metà. Il perimetro è più stretto e la stima più precisa: quasi sempre fra 1 e 4 ore.
02Non so dirti perché si è rotto. È un problema?
+
No, la diagnosi è parte del lavoro. Mi basta sapere cosa dovrebbe succedere e cosa succede invece. Se ricordi che è iniziato dopo un aggiornamento o un cambio di hosting, dimmelo: accorcia di parecchio la ricerca.
03E se scopri che la causa è più grossa del previsto?
+
Te lo scrivo prima di proseguire. La stima iniziale copre diagnosi e fix nella maggior parte dei casi; se salta fuori qualcosa di strutturale — un tema custom da riscrivere, un plugin abbandonato da sostituire — ricevi una seconda stima e decidi tu.
04Il codice l'ha scritto qualcun altro. Riesci comunque a metterci mano?
+
Sì, è la norma. Leggere architetture altrui è la parte del mestiere su cui lavoro ogni giorno: backup completo prima di toccare, staging quando serve, e un report scritto di cosa ho cambiato e dove.