A blogging framework for hackers penso sia abbastanza autoesplicativo. I framework di microblogging statici mi sono sempre sembrati strani. Agli albori di internet esistevano solo pagine statiche poi con l'introduzione di CGI, php e altri linguaggi interpretati sono nate le pagine dinamiche che hanno consentito di dar vita a servizi impossibili da realizzare utilizzando sole pagine statiche. E questo ha introdotto tanti (forse troppi) problemi di sicurezza. 😀 Ed ora nel 2013 ritorniamo alle pagine statiche.
Dopo aver provato Octopress però mi si sono schiarite le idee. Per piccoli siti e blog queste soluzioni sono veramente ottimali. In primis permettono di ottenere una sicurezza senza eguali, praticamente non offrono nessun appiglio a chi tenta di violare il sito. In secondo luogo, sempre per il fatto che l'intero sito è composto da pagine statiche, la velocità ne risente particolarmente. Ci sono svariati benchmark online tra WordPress e Octopress, e i risultati... ok sono prevedibili :D. Il primo per funzionare necessita dell'interpretazione di migliaia di righe di codice PHP e l'interrogazione di un database MySQL, l'altro invece è un insieme di pagine html, STOP.
Ovviamente ci sono anche degli aspetti negativi. Essendo appunto un sito statico senza un database nel quale salvare dati non troveremo praticamente nessuna funzione avanzata. Come ad esempio la ricerca. Non potendo interrogare il db con una chiave di ricerca questa funzionalità non può essere utilizzata se non con l'ausilio di servizio esterni. Quindi per effettuare una ricerca sul nostro dovremmo appoggiarci ad esempio a Google.
Lo stesso vale per i commenti, i visitatori per rilasciare un commento sul sito devono passare tramite servizi third-party, come Disqus.
Octopress quindi è un ottima soluzione per realizzare blog/siti minimali e sicuri, ma quando è necessario realizzare quel qualcosa in più o non vogliamo assolutamente appoggiarci su servizi di terze parti questa soluzione non va sicuramente bene.
La filosofia sul quale questo framework si basa è molto semplice. In locale abbiamo il framework e una copia del sito pubblico. I nuovi contenuti vengono aggiunti editando semplici file di testo che in seguito verranno letti dal framework Octopress che si occuperà di generale le relative pagine html. A generazione completata basterà sincronizzare la copia locale dei nostri dati con il server web. Questo può essere fatto tranquillamente tramite rsync via SSH, o manualmente tramite FTP.
Il fremowork Octopress si basa su Jekyll ed oltre ad un webserver (apache, nginx) necessita dell'interprete ruby, dato che l'intero framework è scritto in questo linguaggio. Ruby deve essere presente solo sul PC in cui si effettua la generazione del sito. Non necessita ovviamente della presenza di php. 😉
Per fare qualche prova io ho installato il tutto su una VPS Debian 7. Dato che non mi andava di installare ruby sotto Windows, lo ho installato direttamente sulla VPS e la configurazione e scrittura di nuovi articoli avviene tutta tramite SSH. Vi dirò che scrivere un post tramite nano o vi in un terminale non è il massimo. 😀
Tutto il lavoro di scrittura viene fatto adottando il linguaggio markdown, semplice e intuitivo.
All'inizio può sembrare un po' macchinoso però una volta che ci si è preso la mano diventa abbastanza facile, rimane pur sempre un framework per hackers. 😀 E cosa c'è di più nerdy di scrivere i propri post tramite editor di testo e caricarli sul server web tramite rsync?
E se la cosa vi sembra strana, provate a fare una ricerca con Google "wordpress octopress" e potrete vedere con i vostri occhi quanti blogger hanno deciso di abbandonare WordPress in favore di Octopress... Magari sarò anche io uno di questi. Lo sarò sicuramente nel caso in cui qualcuno violi il mio blog. 😀
Che dire, provatelo... 😉
UPDATE
I miei esperimenti si trovano a questa pagina. 😉