Googledocs e Mappa per eventi condivisi
Ciao amici, volevo condividere con voi un esperimento che sto portando avanti in #opendata ma può essere usato anche in formule differenti. L’idea me l’ha lanciata un cittadino e amico: Enzo Scasciamacchia.
Esigenza: avere una mappa con gli eventi di una città, cercando di farli inserire direttamente dagli addetti ai lavori e da chi li organizza. Ovvio che può anche essere una sola persona ad inserire per tutti, ma il mio progetto era una forma di partecipazione dal basso per evitare intermediazioni.
Come possiamo fare una mappa, avere un processo #opendata senza inciampare nei meandri delle regole di utilizzo magari di google o di altri gestori? (sarebbe banale fare questo in fusiontable ma poi la mappa sarebbe google e quindi per l’#opendata non va bene).
Per fare questo ho allestito un file su googledocs condiviso con gli attori interessati.
Qui trovate l’esempio sul portale #OpenData del Comune di Matera
Dunque, iniziamo con il creare un file condiviso tipo questo
Se foste abilitati alla modifica vedreste questo:
Ogni colonna alla fine ha un valore. Nel mio caso ho messo alcuni controlli nel menu a tendina obbligando a scegliere il tipo di evento tra alcuni predefiniti (mostre, concerti, feste, eventi sportivi).
Quando compilate il file dovete prestare attenzione alla colonne LAT e LON perchè quando si copiano le coordinate da un geocoder sono considerati numeri non testo e non va bene! (attenti al sito dove ricavare le coordinate..ovviamente NO googlemaps bensì openstreetmap.org o se volete potete usare questo file).
Per cui per spiegarmi meglio, il valore numerico 40.7555555 non esiste nella nostra numerazione decimale e diverrebbe 40.755.555 e non sarebbe più una coordinata. Semplice trucco: nella cella LAT (o LON) PRIMA di incollare il valore, mettere il simbolo ‘ (apice). A livello di visualizzazione vedrete sempre 40.755555 ma il sistema sa che ora il valore è un TESTO ed ora è corretto.
Bene. Finita la compilazione cliccate nel menù: file, pubblica sul web e avvia pubblicazione. Accertatevi che ci sia la spunta su ripubblica in caso di modifica così ogni 5 minuti, se modificate il file, avrete la versione pubblica aggiornata. In questa finestra avrete sotto il link (come quello che ho messo in alto) per la versione in sola lettura del file.
Prestate ora attenzione alla parte finale del link: output=html se sostituite in output=csv avrete il file sorgente da inserire per esempio….in opendata 😉 (ricordatevi ovviamente la licenza da associare, non basta un formato CSV per avere un dato in formato #opendata).
Ora potete seguire il tutorial su umap.openstreetmap che ho scritto nei giorni scorsi oppure creare una mappa magari con Leaflets.com e usando il plug-in per leggere i file CSV (seguirà tutorial ad hoc).
Il risultato in questo caso è fortemente personalizzabile. Per esempio potrete usare delle icone per ogni tipologia di evento ect (occhio dove prendete le icone..o le fate voi oppure dimenticatevi di prendere dal web senza che abbiano una licenza opendata a meno che non le acquistiate), aggiungere didascalie, fare filtri, ect..
Risultato, preso dal sito #opendata del Comune di Matera:
Guarda la mappa a tutto schermo
Se volete una base di lavoro, ho messo una versione semplificata dei sorgenti su GITHUB per tutti
PS per gli smanettoni: occhio che il plug-in leaflets vuole che il CSV abbiamo lat e lng ( e non LAT e LON) e vuole che il delimitatore sia ; e non , come nel file generato da gdocs. Nel file php che dovrete creare dovrete effettuare le sostituzioni dinamicamente..
PSS per chi si chiede perchè non usare lat e lng a monte nelle colonne GDOCS: perchè il file csv ho detto che è inserito nell’opendata del comune e la piattaforma è CKAN. Per fare un preview direttamente dal portale, CKAN vuole che il delimitatore del CSV sia , e le colonne delle coordinate LAT e LON. OK? 😉
Tutorial in licenza…non so se CC-BY-SA o AGPL chiederò a Napo 😉