Storia
Host è un Hosting service Provider nato a Torino nel 2001, prima del 2016 conosciuto con i brand (joomlahost.it e dnshosting.it).
Dal 2006 ad oggi il front end del sito pubblico, ovvero il sito che mostra i prodotti e i servizi, insomma le pagine "statiche", era sviluppato "a mano" con tecnologia JavaServer Pages, di solito indicato con la sigla JSP (letto anche talvolta come Java Scripting Preprocessor), insomma, è una tecnologia di programmazione web in Java.
Avevamo utilizzato questa tecnologia perchè al tempo tutti i nostri sviluppatori erano solo Java e quindi era il linguaggio "più vicino" a loro.
Con il passare degli anni però e l'esigenza di un front-end sempre più moderno, veloce, scalabile e sopratutto che potesse essere modificato da chiunque del Team Marketing, ci siamo più volte fermati a pensare come potevamo staccarci da questo linguaggio, ma soprattutto da come potevamo staccare il front end dal nostro "monolite" del back-end.
E già, a complicare le cose non c'era solo la riscrittura del codice di front-end, che sarebbe potuta essere una passeggiata, ma il front-end era un tutt'uno con il back-end.
Insomma, riunioni e riunioni in cui tutti siamo d'accordo che bisognerebbe farlo, ma nessuno decide di farlo, perchè complesso, articolato e richiederebbe mesi di lavoro.
Addirittura ricordo riunioni in cui TUTTO il team continuava a dirmi: "è complicato, non si può fare".
Nel 2021 in Host abbiamo detto: "Certo che si può fare, facciamolo! E facciamo con Joomla 4!"
Gli scopi che ci siamo dati erano:
- diminuire il tempo con cui le modifiche alle pagine pubbliche andavano online
- diminuire il costo di sviluppo delle pagine pubbliche
- aumentare la velocità di caricamento delle pagine
- aumentare la copertura sull'indice di Google
Come perseguirli era tutto da decidere.
Come sapete, Host.it è da sempre il main sponsor della community Italiana di Joomla (joomla.it) ma non solo, uno dei nostri Manager è da anni all'interno del Board di Open Source Matters, Inc., la società statunitense che detiene il controllo sul progetto Joomla a livello globale.
Quindi, aveva senso usare un altro CMS? Sarebbe stato uno schiaffo alla coerenza.
La scelta è quindi ricaduta su Joomla, ma ovviamente non sulla versione 3! Aveva senso iniziare gli sviluppi con la versione Beta di Joomla 4 e rilasciare poi il progetto in produzione non appena la release sarebbe diventata stabile.
Le sfide
Sviluppo di un template nativamente ottimizzato
Partendo da 0, abbiamo avuto la possibilità di progettare e sviluppare un template Joomla che fosse già nativamente ottimizzato. Per farlo, ci siamo fatti aiutare da un esperto del settore, Marco Biagioni (https://storejextensions.org/) e, grazie alla sua ormai dichiarata esperienza su come migliorare la velocità di un sito Joomla, siamo riusciti a realizzare un sito che di base raggiungesse un punteggio di velocità di Google PageSpeed, superiore ai 90 punti. Il progetto ha visto anche la preziosa collaborazione di Alessandro Chessari, esperto in realizzazione di template personalizzati per Joomla.
La corsa al punteggio 100 è praticamente inutile, si può fare, ma richiederebbe di rinunciare a tante cose, codici di tracciamento, tipologie di immagini e di bottoni ecc...
Il consiglio che diamo a tutti e di non fossilizzarsi sul 100, l'importante è stare nel range 80-90 e di avere response time sotto i 200ms e un page load complessivo sotto il secondo.
Strategia di composizione delle pagine, un modulo per ogni esigenza.
Una delle tentazioni più importanti era cedere all'uso di un template framework o di un page builder che ci avrebbe consentito di realizzare in tempi brevissimi layout complessi e veramente personalizzati con pochi clic. Questo sicuramente avrebbe abbreviato il tempo di sviluppo delle pagine presenti e future, ma questa scelta avrebbe rappresentato una sorta di "vendor lock-in" ed avrebbe potuto avere delle ripercussioni anche importanti sulle performance globali del sito.
Quindi abbiamo scelto un approccio "Core-First", utilizzando uno degli elementi base di Joomla: i moduli.
Marco ed Alessandro hanno quindi progettato una serie di moduli personalizzati che rispondessero alle nostre esigenze e che ricalcassero fedelmente lo stile del nostro sito originale. Tra i moduli personalizzati abbiamo:
- Un modulo per la ricerca dei domini disponibili
- Un modulo per calcolare il prezzo di un servizio basandosi sulle opzioni/caratteristiche selezionate
- Un modulo per mostrare le ragioni per cui scegliere un determinato servizio
- Un modulo per le FAQ
- E tanti altri moduli dallo stile personalizzato
Questo approccio ci ha consentito di riprodurre esattamente il nostro sito web precedente, nonostante il cambio di tecnologia.
Inoltre, l'uso dei moduli facilita la costruzione di nuove pagine poiché è possibile riutilizzare lo stesso modulo nelle varie pagine.
Scelta dell'hosting per velocizzare Joomla
Una volta realizzato il sito, dovevamo ovviamente scegliere l'hosting per Joomla. La scelta è stata obbligata: host.it - il primo e migliore hosting per Joomla! in Italia.
Insomma, ce la siamo suonata e cantata, ma ovviamente sapevamo dove andare a parare.
Abbiamo scelto il nostro prodotto di punta: Host Cloud, che è un servizio di cloud hosting dedicato.
In pratica è un server (virtuale) completamente dedicato ad 1 solo sito web. In questo modo è possibile garantire veramente CPU, RAM e disco e poter avere un'ambiente isolato e dedicato al nostro sito web.
All'interno di Host Cloud abbiamo varie tecnologie che ci hanno permesso di velocizzare Joomla, al massimo delle sue potenzialità:
- LiteSpeed Web Server con LSCache per la cache front-end
- Redis per la cache back-end
Grazie a Litespeed e al plugin lscache, abbiamo quindi raggiunto i migliori tempi di risposta possibili in quanto tutte le pagine sono servite dalla cache in RAM come contenuti statici.
Sicurezza da attacchi hacker
Grazie alla tecnologia Cerbero abbiamo poi messo in sicurezza tutto il sito, sia da attacchi volumetrici (layer7) sia da attacchi applicativi volti a "bucare" Joomla.
Oggi la sicurezza di un sito web è fondamentale, non è possibile trascurarla o lasciarla alla fortuna.
Conclusioni
Grazie a Joomla4 abbiamo portato il front end di Host.it ad un'altro livello. Veloce, scalabile ma soprattutto estendibile per soddisfare tutte le future esigenze di integrazione.
Oggi il Team di Marketing è quindi autonomo nella gestione delle pagine pubbliche di prodotto, nella scrittura di articoli sul BLOG e quindi grazie a Joomla 4 l'intera Azienda è ora più efficiente senza dover disturbare gli Sviluppatori per ogni modifica sulle pagine.