Da gennaio a giugno 2024 ho lavorato come Shopify developer da Making Science, a Vigonza: e-commerce B2C e B2B, temi in Liquid da personalizzare, funzionalità su misura, app di terze parti da integrare, tracciamenti da coordinare con il team marketing. Sei mesi in produzione, con clienti veri e negozi che non possono fermarsi. Queste sono le note che mi sono rimaste.
I tutorial partono da un foglio bianco. Il lavoro no
La documentazione di Shopify è buona. Il problema dei tutorial è che lavorano in un ambiente pulito: ti mostrano come creare una sezione o usare un filtro partendo da zero. Nella realtà erediti quasi sempre un tema scritto da qualcun altro, a volte anni prima, con snippet annidati e variabili usate in modi diversi da file a file.
Per questo la prima competenza di uno sviluppatore Shopify non è scrivere codice, ma leggerlo. Capire cosa sovrascrive cosa, dove sta la logica, perché un prodotto si comporta diversamente dagli altri. Solo dopo si scrive.
Come organizzo un tema perché duri
- Snippet con un solo compito, che ricevono i dati come parametri espliciti invece di pescarli dall'ambiente globale.
- Sezioni autonome, che funzionano anche se spostate in un'altra pagina. Le dipendenze nascoste tra sezioni sono la fonte di bug più difficili da trovare.
- Schema JSON curato: il blocco
schemadi una sezione è l'interfaccia che il negoziante vede nel pannello. Più è chiaro, meno richieste di supporto arrivano.
Il tracking è parte del tema
Lavorando a stretto contatto con il marketing ho capito che il tracciamento non è un dettaglio da delegare. In un negozio Shopify convivono gli eventi della piattaforma, GA4, il Pixel di Meta e qualsiasi altro strumento il cliente voglia usare. Il rischio è contare due volte lo stesso acquisto, o non contarlo affatto. La regola che mi sono dato: ogni evento si verifica a mano, con gli strumenti di rete del browser aperti, e non si dà mai per scontato che stia arrivando.
Performance: spesso il miglior codice è quello tolto
Shopify gestisce i server, quindi lo spazio di manovra è il front-end: JavaScript che blocca il caricamento, immagini troppo pesanti, CSS inutilizzato, font che rallentano il primo disegno. E le app: molte iniettano script in ogni pagina e restano lì anche quando nessuno le usa più. A volte il lavoro più utile non è scrivere codice nuovo, ma rimuovere quello che non serve.
Cosa farei fin dal primo giorno
Lavorerei sempre su un tema di anteprima, mai su quello pubblicato: un errore in produzione mentre qualcuno sta comprando costa caro. E documenterei di più, soprattutto le scelte non ovvie. Il perché di una condizione strana lo dimentichi in fretta, e chi erediterà il tema dopo di te non lo saprà mai.