Dov’eravamo rimasti?
“Il ciabattino ha le scarpe rotte” si diceva una volta, ed effettivamente per unə web-designer e affini avere un sito scarno è una situazione del genere. Fare un sito proprio è diverso da uno su commissione, un po’ perché non c’è tempo, un po' perché ci sono tante idee e avere se stessə come cliente non è questa gran cosa che sembra essere di primo acchito.
E poi la tecnologia vola. Eccome! Anche troppo. Le versioni cambiano, gli strumenti proliferano, e bisogna trovarne uno non tanto giusto quanto utile, nel senso di trovare un buon equilibrio tra la curva d’apprendimento e il risultato voluto.
Tramite BitApp, agenzia con la quale ho avuto diverse collaborazioni, sono venuta a conoscenza di Hugo. Hugo è un generatore di siti statici.
E che vuol dire, sito statico?
Qui devo fare una digressione. Semplificando molto ma molto le cose, quando accedete a vuvuvùqualcosaeccetera cliccando un link o un bookmark, il vostro PC (in gergo client) si collega a un server, che altri non è che un PC dall’altro capo della vostra connessione internet. Tale server spulcia il suo archivio, trova la pagina del sito da voi richiesta e la spedisce al vostro PC-client in modo che quest’ultimo la visualizzi.
Ora, dal web 2.0 in poi (2005 o giù di lì, il Triassico in termini informatici) I siti web hanno cominciato a passare da statici a dinamici. Ovvero: nel caso di un sito dinamico non viene mandata al server la richiesta ad una singola pagina, ma una serie di parametri. Parametri che il server interpreterà per costruire al volo una pagina rispondente ad essi.
Faccio un esempio: la pagina di ricerca di un sito. Prendiamo Amazon. Non ha pagine e pagine di tutti i risultati delle ricerche possibili e immaginabili: semplicemente vengono create al volo quando voi inserite il termine della ricerca nell’apposito campo, seguendo la programmazione fatta sul server che tiene conto di svariati fattori. (Non esclusa la congiunzione astrale in atto in quel momento, almeno a giudicare da quel che mi arriva quando lo faccio io. Ma non divaghiamo.)
Altro esempio: l’autenticazione. Qualcosa che controlli l’accesso ad alcune o tutte le pagine, ad esempio in testate giornalistiche a pagamento, e/o con più persone a creare e gestire contenuti e moderare commenti.
In pratica, in un sito dinamico viene fatto un ulteriore lavoro sul server, lavoro che in un sito statico non c’è: le pagine di un sito statico sono collegate tra loro, ma fisse come le pagine di un libro di carta, e sfogliate una per una dal client.
Creare un sito dinamico è una bella mazzata di lavoro: non basta produrre le singole pagine ma ci vuole una programmazione in uno dei vari linguaggi (avrete sentito parlare di PHP ma è solo la punta dell’iceberg) ed è necessario che il server ne supporti l’esecuzione. Molti tagliano corto e si affidano a dei CMS (Content Management System) che forniscono già la parte di programmazione pronta all’uso e all’utente lascia il lavoro di scrittura e ordinamento pagine, scelta della grafica, eccetera… Per buttare lì un nome, Wordpress.
Ci sono però situazioni in cui utilizzare CMS è un po’ come andare a pescar tonni con una corazzata: se unə ha bisogno di mettere on-line un piccolo blog, per esempio. Il lavoro che ci sta dietro non comprende solo la creazione dei contenuti, ma anche un lavoro di manutenzione e aggiornamento costanti: sia per creare o adattare nuove funzionalità, ma soprattutto per gli inevitabili bug che possono compromettere la sicurezza del sito e nei casi molto gravi anche dell’intero server su cui alloggia il CMS.
Un piccolo blog di cui si occupa un’unica persona e in cui l’intera sezione dei commenti, se uno ci si vuole proprio mettere, può essere delegatain toto ad un servizio esterno tipo Disqus può essere benissimo gestito come sito statico.
Ma è comunque piuttosto complesso per scriversi tutto a manina. Gestire i link tra i tags e le varie sezioni man mano che aggiungo cose. Ci vorrebbe qualcosa che automatizza queste operazioni, ma come fare se non mi voglio smazzare un CMS? Provo un generatore di siti statici… in questo caso, Hugo.
Fine digressione!
Con Hugo il lavoro di costruzione avviene sul client, e online ci va solo l’HTML statico. Questo risolve alla radice il problema di sicurezza che può affliggere un CMS. Il rovescio della medaglia? Bisogna avere a che fare con la riga di comando (molto poco comunque) e Markdown, che a me aggrada ma non a tutti piace averci a che fare.
In tutto questo, masticare l’inglese è abbastanza obbligatorio, visto che la documentazione viene appunto questa lingua - ma questo vale più o meno per qualunque cosa abbia a che fare con sviluppo web e strumenti del genere: se non altro, essendo spesso un linguaggio tecnico, un traduttore automatico come quello di Google dovrebbe fornire dei risultati abbastanza potabili.
PS1: Sì, ho usato la schwa :P
PS2: Potrei o non potrei aver pronunciato hhugo alla Fantozzi un certo numero di volte.