MCVS
Il Progetto

SE-SITE: SE come semplice

Questo progetto è nato quando ho avuto la necessita di fare un semplice sito che contenesse la documentazione di un software, una decina di pagine. Mi serviva una struttura leggera e flessibile. Un CMS basato su file, editabili con un editor di testo, era l'ideale. Il linguaggio markdown aveva tutto ciò che mi serviva per dare un senso al testo. Ho così iniziato a scaricare vari CMS basati su markdown, ne ho trovati di veramente belli e validi ma tutti decisamente complessi. Complessi per due motivi principali.
Il primo motivo è che la maggior parte di questi sistemi include una marea di librerie js, di file css, richiama font e di nuovo js e css esterni e così un sito da 2/3 mega di contenuti (incluse le poche immagini necessarie) pesava come minimo 50 MB, senza contare cookie, privacy ecc..
Il secondo motivo è la complessità della struttura (capire a cosa serve ogni singolo pezzo del codice è difficile), i template disponibili di solito sono bellissimi ma modificarli per estendere qualche funzionalità senza fare danni richiede di diventare abbastanza esperto della piattaforma, del template e dei vari plugin. Oltre a tutta le questione di mantenere la piattaforma aggiornata.
A me serviva qualcosa di più leggero, che occupasse pochi kb, che fosse orientato al contenuto, che mi permettesse di spostare tutti i contenuti da una sezione all'altra velocemente, trascinando dei file. Una piattaforma che avesse il minimo sindacabile e che mi permettesse di poter fare semplicemente tutte le implementazioni di cui avevo bisogno. Ho deciso così di costruirmi quello che mi serviva e condividerlo con chi ha la stessa necessità.

FILOSOFIA DEL PROGETTO

Lo scopo finale è quello di produrre un CMS, o meglio un CVS (Content Visual System) perchè i contenuti non si gestiscono ma solo visualizzano, che abbia tutto quello che può servire a un sito semplice. Tutto il sistema, escludendo i contenuti, deve pesare meno di 100kb. Un peso contenuto vuol dire occupare meno risorse sia in termini fisici (spazio su disco) sia in termini energetici (meno informazioni da far transitare nella rete, meno elaborazioni da fare nel browser, meno elaborazioni da fare sul server).

Un altro aspetto, semplice a livello teorico, ma più complesso a livello pratico è rispettare un architettura di tipo MVC (Model-View-Controller) ovvero dove sono nettamente separati i dati (Model), l'aspetto grafico (View) e la programmazione (Controller) che li lega assieme. In questo progetto ci sono 3 entità, i file.txt nella directory data (i dati), il file layout1.html nella directory asset (l'aspetto grafico) e il file index.php (la programmazione) che mette assieme tutto secondo certe regole. Riuscire a rispettare al 100% questa architettura consente di intervenire su uno qualunque dei 3 aspetti del sito senza preoccuparsi degli altri 2.

Questo sito, nella sua versione originale non utilizza cookie, sistemi di tracciamento e non raccoglie nessun tipo di informazione


ALCUNE SITUAZIONI IN CUI POTREBBE ESSERE USATO
  • Manuali online
  • Siti informativi (ad esempio tutte le piste ciclabili di una zona, liste di sentieri, spiegazione dei quadri di una galleria, spiegazione passo-passo di procedure)
  • Testi di supporto a corsi
  • Raccolte di link - Directory
  • Condivisione di appunti / note
  • Presentazione di progetti

Ad esempio io mi sono creato un piccolo manuale di istruzioni della casa condiviso con i famigliari (come programmare i termostati, come sono impostati gli automatismi della domotica e come modificarli, come riavviare la caldaia se va in blocco, i codici di ricambio dei vari prodotti che abbiamo, i punti salienti delle assicurazioni e una serie di altre informazioni che tengo aggiornate nel tempo)

PER CHI NON E' ADATTO

In tutti quei casi dove la parole marketing e sito internet sono nello stesso discorso.

Se ti serve un sito che ha uno scopo pubblicitario, profilazione di utenti, analisi di statistiche, test A/B, SEO oriented, landing page, lead generator, monitoraggio delle conversioni e via dicendo questa è la piattaforma meno adatta.