Ebbene sì, per l’ennesima volta ho deciso di migrare questo blog da Ghost a WordPress. Un déjà-vu che alcuni di voi avranno già visto in passato, ma questa volta la motivazione non è legata a una ricerca di minimalismo o a una voglia di decluttering, bensì a una questione di igiene informatica e comfort tecnico.
Ghost rimane, a mio avviso, una delle migliori piattaforme di blogging disponibili: veloce, moderna, elegante e ben progettata. Peccato però che sia costruita in JavaScript e basata su Node.js. Ora, non voglio demonizzare questa tecnologia — anzi, riconosco che sia potente e versatile —, ma devo ammettere che tra me e JavaScript non scocca la scintilla. Anzi, ogni volta che provo ad approfondirlo, sono sopraffatto da una repulsione quasi incontrollabile che mi porta ad abbandonare dopo poche ore. So che è irrazionale, ma tant’è.
Proprio per questo, nonostante l’ottima documentazione e la relativa semplicità di configurazione di Ghost, mi ritrovavo spaesato quando si trattava di leggere il codice, capire come funzionasse davvero o anche solo immaginare di personalizzarlo in profondità. JavaScript, per me, è come la kryptonite: mi indebolisce e mi confonde. Riconosco tuttavia che la gestione dei template con Handlebars è più razionale rispetto al puttanaio dei temi WordPress, ma va comunque oltre la mia voglia di approfondire.
E così, ho preferito tornare a WordPress. Non perché sia più moderno o più elegante — anzi, sotto molti aspetti è il contrario —, ma perché è costruito con tecnologie che conosco e con cui mi sento a mio agio: PHP e MySQL. Pur non essendo uno sviluppatore PHP, so leggere il codice, capire la struttura di un tema o di un plugin, e ho un’idea chiara di come funziona l’architettura sottostante. Questo mi dà un senso di controllo e consapevolezza che, su Ghost, semplicemente non avevo.
Ma non è solo una questione di comfort. WordPress offre un ecosistema di plugin immenso e consolidato, che se da un lato può introdurre criticità legate a sicurezza, prestazioni e compatibilità, dall’altro permette un’estensione delle funzionalità pressoché illimitata. Certo, va usato con giudizio — installare decine di plugin senza criterio può portare in un attimo a ritrovarsi con un sito lento e insicuro —, ma con un po’ di attenzione si possono realizzare progetti molto articolati.
Inoltre, ho in mente di espandere questo sito oltre il semplice blog, e WordPress si presta meglio a sperimentazioni di questo tipo, grazie alla sua flessibilità e alla vastità di soluzioni disponibili.
Per contro, l’ambiente Node.js su cui si basa Ghost è senza dubbio più moderno e performante sotto certi aspetti, ma il suo ecosistema di moduli — seppur enorme — è anche più frammentato e soggetto al cosiddetto dependency hell. Aggiornare un modulo può rompere tutto all’improvviso, e non sempre è facile capire come o perché. Ok, questo è un aspetto che riguarda più gli sviluppatori che gli utilizzatori, ma è comunque un aspetto che mi intimorisce. Anche con WordPress ci sono problemi, ma sono più prevedibili e, almeno per me, più gestibili.
Questo significa addio definitivo a Ghost? Assolutamente no. Lo apprezzo ancora moltissimo e sono certo che tornerò a usarlo per progetti più focalizzati sul blogging puro, dove la sua eleganza e velocità brillano senza bisogno di troppe personalizzazioni.
Per ora, però, torno a casa. Con tutte le imperfezioni del caso, ma con la tranquillità di sapere dove mettere le mani.