martedì 11 gennaio 2011

A simple vision for the e-governance of a city

[X-post from TheITGuys]

Governments should expose platforms. By platform, we engineers mean a set of standardized and simple to use modes of access to commonly needed information. The idea of a governance platform is very complex and this complexity cannot be underestimated: different areas can have different laws. A great analysis of what and why a Government Platform is needed is exposed in the second chapter of Open Government, published by O'Reilly.

In a very simple analysis the platform should expose more features and services than the normal city hall offices. This means that great amounts of information should be generated autonomously by different systems and by the people through crowdsourced systems.

THE CITY HALL

The city hall manages information about the citizens. This means that it can have the role of authenticator (openid) in the public services. And this means that this data can and should be available to the citizens themselves through the web. Different cities should be federated and should enable the login as “visiting citizen” using the features available on other city sites, like open311, general services, transfer services. The authentication is both username+password and smartcard (electronic ID card/SSN) based.

Beyond the role of authenticator, the city hall offers a whole set of services that form an interface between the citizen and both the central government and the different local authorities (hospitals, schools, transports) and entities (police, associations, coops, activities). In different countries this means different degrees of separation; nonetheless the idea of city hall as interface can be considered a sensed factorization.

THE BUREAUCRACY

In this analysis the most important part is the effect on the citizen. First of all it means that most bureaucratic procedures should be transformed into automatic workflows and simple forms where the user can express his requests. These forms should be offered via web and at the same time as APIs for third parties (authorized companies via oauth) to use for applications.

The city hall should offer the possibility to interact with touristic entities within the city, being both information booths (maybe with Bluetooth/wifi connectivity and broadcasting touristic/environmental/entertainment information) and historical/artistic monuments. This should be made possible through both maps and open semantically linked informations.

Ecologic metrics should be taken in real time and made available via RSS and specific formats to the citizen.

THIRD PARTIES

For sanity, the city hall should offer a set of tools easing the search for emergency pharmacies (maps, gml, kmz) and eventually a set of contacts (both through VCards and Forms)

For schools, the city hall should offer a set of tools enabling the citizen to know where the scools are (maps, gml, kmz), what kind of schools they are (opengraph), maybe integrating with the school’s authentication system (in the end even students are citizens). The city hall should be a waypoint about the general statistical data about the schools, which should be published as raw information in RSS streams.

For transportation, the city hall should offer tools easing both the usage of the public transports and the private transport. The first can be aided first of all, through the publishing of an Open311-compliant set of services for the users to send inofs about problems within the infrastructures. A second set of services should be made available enabling the users to request the nearest bus/train/taxi stop. Further, a service showing the works hindering public and private transports should be made available. Finally a service giving information on the schedule of the various trains/busses should be available. These services have to be given to the public as raw services. The usage statistics of these services will enable the emergence of new services.

For private transportation, the already discussed services on works and open311 are very important. Obviously the other services have lots less sense, while the most useful information are about traffic and parking (and eventually then the services will be the ones for public tranposrtation again). Both have a set of free standards to comply in order to be interoperable with commonly used tools like the traffic overlay of google maps for traffic and simple raw rss or numeric responses for the various parking facilities or areas.

The City Hall should be able to monitor in real time which vehicles enter the LTZ if an area of the city is under restricted access. The information should be published in real time through direct requests and at the same time an RSS with aggregate data should be made available daily.

For interactions with police, the city hall should offer the citizens a map with the stations (map, gml, kmz), the times and contacts (vcard, form, xform). If the station has peculiar services available through the web the city hall should offer a simple client working as a proxy for the police station.

The city hall should become proxy for the various associations in the city offering both a showcase and a set of info on the services offered. These services should be made available through a local proxy (if appropriate)

The city hall should promote local commerce through a completely local e-commerce site enabling disabled people the usage of the shops in the city and limiting the traffic. This local commerce should be extended even as a km0 farmers market creating a localized (but federated) shop for farmers to sell their products within the city or neighbouring cities.

THE CITIZEN

The citizen should be "tricked" into participation. This can be done in many ways:

  • Tracking statistical information on citizen usage of services can enable the emergence of new services and the implicit critics on provided services.

  • Tracking the movements of citizens in the metropolitan area can enable the mining of the areas to be better controlled by police. This information has obviously to be returned to the citizen via APIs.

  • Digg-like applications where citizens can put proposals and can be voted by other citizens

  • Twitter-like messages enabling the public interaction with the local government

  • Integration with social media can enable the city to interact with the “virtual world” without losing grip on reality.

giovedì 20 agosto 2009

Brevi notizie da fuori casa

Sono scomparso per un paio di giorni, vi scrivo da Colonia, dove ho seguito il GDC. Ma non è questa la notizia interessante, per noi amici di dell'attivismo hacker: anche il sindaco di san francisco ha deciso di rendere pubblici i flussi di dati provenienti dai vari uffici del comune. Tutti questi sono raccolti all'indirizzo www.datasf.org/. A presto per un nuovo articolo fattivo ;)

giovedì 6 agosto 2009

Notizie varie

Da oggi i post di questo blog (che forse vedete come note su facebook) vengono raccolti insieme a post di amici e fan della questione del social hacking all'indirizzo http://www.citizennerd.net/blogs. Presto sarà anche disponibile una wiki all'indirizzo http://www.citizennerd.net/wiki sulla quale si potrà lavorare alla definizione delle strutture per la creazione dei vari progetti software. L'hosting è in mano a tophost, ma se per caso il traffico risultasse essere eccessivo si potrà portare da qualche parte (più che una info è una speranza :P). Intanto vi segnalo anche l'account su twitter sul quale verranno pubblicati sia i link agli articoli che notizie varie: http://www.twitter.com/citizennerd .

Nel frattempo osservo con piacere questo progetto: http://www.london2026.com/Streetview-Wiki/ una wiki geografica basata sulla visualizzaizione offerta da Google StreetView. Ora immaginate questa unita ad un sistema intelligente per segnalare i problemi da palmari e cellulari vari. Le potenzialità sarebbero illimitate... (e gratuite)

venerdì 31 luglio 2009

Step 3: The governent as a broker

Un governo locale non può che guadagnare dall'aumento delle relazioni tra i commercianti. Questo nuovo post cerca proprio di studiare come si può andare a offrire alle aziende e ai commercianti modi nuovi per interagire e creare fatturato.
Spesso e volentieri è più facile cercare on-line se un certo servizio è a disposizione da qualche parte del mondo rispetto alla possibilità di trovarlo vicino a casa. Però un servizio, soprattutto se legato a produzioni reali, implica non solo costi di trasporto, ma anche costi ambientali per il fatto che una certa risorsa debba esser etrasportata fisicamente da A a B. Quindi uno strumento che aiuti a collegare cose vicine permetterebbe di favorire il grande ideale del km-0. Inoltre l'aumento di circolazione interna di denaro genera direttamente dei vantaggi socio-economici a livello locale che, parlando di vil pecunia, si trasformano per l'amministrazione quasi direttamente in introiti fiscali.
A questo punto quello che viene in mente è come fare un servizio del genere? Proverei a partire da un caso pratico e vedere cosa si poteva fare meglio o diversamente. Il caso è quello dihttp://www.shoppingcastelmaggiore.it/.
Partiamo dall'idea di fondo, che voleva essere un sito con almeno uno spazio per ogni negozio e link ai vari servizi offerti dai negozi. Un'idea del genere, se ben sfruttata, può diventare un vero trampolino di lancio per due tendenze: una tendenza che vede l'ente pubblico come promotore di processi positivi di sviluppo economico non legato alla fisica presenza del negozio, dall'altra l'informatizzazione almeno parziale di tante piccole realtà locali che per natura non sarebbero informatizzate ne' informatizzabili. Non voglio arrivare a dire che sarebbe possibile iniziare a pensare a collaborazioni comune-coop per dare funzionalità web2.0 al supermercato (tipo ordinazione on-line e ritiro in loco senza fila).
Quindi cosa deve offrire un sito del genere? funzionalità innanzitutto di SEO (search engine optimization) valide, in modo da favorire il reperimento di informazioni da parte di Google, Bing e gli altri motori di ricerca, funzionalità di social network, che da un lato permettono di creare rete attorno al sito (come miele con le api) e dall'altro si sfrutta l'effetto virale intrinseco delle reti sociali per sponsoizzarlo. Inoltre diventa possibile, discutendone con altri enti presenti sul territorio (CNA, ASCOM), la creazione di una infrastruttura per aiutare le piccole imprese e i negozi ad entrare in rete senza troppi costi inizali e con consulenze adatte.
Che pro, che vantaggi e che sviluppi avrebbe un'idea come questa?
Dalla parte dei negozianti una infrastruttura seria e ben costruita permette di aggiungere senza modificare nulla la possibilità di vendita on-line tramite sia siti-istituzione quali e-bay e simili che anche un negozio "specializzato" per il comune. In secondo luogo i commercianti hanno la possibilità di tracciare molte operazioni e decidere come ottimizzare i propri prodotti e le proprie vendite (una buona campagna di marketing on-line permette di migliorare le condizioni anche di un negozio fisico). Inoltre per l'ente che offra questa struttura, inziano a fluire informazioni su interessi di utenti, acquisti, modalità di pagamento e tanti altri, tutti dati che fondano un buon sistema di Business Intelligence e quindi (per terze parti) sia informazioni "di valore" che informazioni che permettano, di nuovo, di ottimizzare le varie imprese.
Per il comune questo cosa porta, invece? Innanzitutto una visibilità maggiore rispetto al normale sito comunale puramente informativo. Inoltre maggiori contatti con le imprese e i commercianti. Infine, un sistema del genere permette anche la creazione di nuovi posti di lavoro, in quanto si può iniziare a pensare a servizi di consegna a domicilio di prodotti e di raccolta della spesa. Ovviamente anche queste nuove imprese potrebbero usufruire dei servizi disponibili in un meraviglioso circolo virtuoso che permette di ottimizzarsi su aree diverse e trasformare la concorrenza "normale" in una collaborazione tra aziende diverse.
Quanto costa tutto questo? in realtà, di nuovo, pochissimo: il software open source e il solito team di hacker costano forse due hack-day (ovvero due rinfreschi e un salone), l'infrastruttura hardware, chiedendo opportune sponsorizzazioni direi quasi nulla. Nel caso in cui mancassero le sponsorizzazioni, con un migliaio di € si ha già una struttura interessante ed espandibile nel caso in cui in futuro si decidesse di continuare il progetto...
Ah, ovviamente una caratteristica interessante di tutto questo è anche che gli hacker inevitabilmente iniziano a parlare tra loro e iniziano a pensare a sfruttare economicamente le varie piattaforme, in modo da riuscire comunque a trovare vantaggi economici, che alla fine vanno comunque a migliorare gli introiti fiscali del comune e le persone (gli hacker) sono felici di fare qualcosa di nuovo, utlie e che piace. Questo, a sua volta genera una quantità abnorme di applicazioni su AppStore, Marketplace, Blackberrystore e quindi nuovi introiti. Questi fanno crescere piccole aziende di informatica e richiamano quindi nuovi cittadini dall'alta scolarizzazione, che possono contribuire in modo molto attivo alla crescita del paese, ecc...
Oppure sono io molto utopista?

lunedì 13 luglio 2009

Step 2a: anatomy of the hacker mind

Mi si conceda una digressione etico-morale, ma mi è venuto in mente sentendo recenti castronerie televisive che gli italiani non hanno mai ricevuto la definizione sensata della parola "hacker".
L'hacker non è l'essere malvagio che attacca il computer della CIA, nonostante questo sia quello che i giornali vogliono farci credere. L'hacker è il programmatore che più per passione che per consocenze o scopi reali si mette a fare programmini per se o per altri. Gli hacker sono tanti e nascosti nelle comunità (vanno dal tecnico informatico della scuola di paese all'ex ferroviere pensionato al cuoco con la passione per i videogiochi educativi). Sarebbe a vantaggio di tutti se questi hacker si mettessero in comunicazione tra loro e a loro volta con gli enti locali, poichè sarebbero un utilissimo strumento per gestire e chiedere informazioni o consentire loro di prendere parte in decisioni che possano far parte del loro ambito applicativo (come fare il sito del comune, su cosa puntare per migliorare l'efficienza comunicativa e, perchè no, creare una specie di squadra per interventi informatici rapidi e a basso costo in ambito comunale).
La cosa divertente è che non servono soldi, incentivi fiscali, cose materiali per convincere gli hacker e i nerd a collaborare e fare insieme qualcosa di interessante. Basta, come hanno capito oramai quasi ovunque, dire "gente, qui c'è dello spazio, vi offriamo del cibo e voi potete scrivere codice nei prossimi X giorni. Questo mese l'argomento è Y". E se la cosa è ben organizzata, si inizia a generare un effetto positivo che va a richiamare nuovi hacker, e si inizia a organizzare anche piccole conferenze attorno al guru di un dato argomento (ma questo processo è abbastanza naturale ed evolutivo). Non appena la cosa ha una dimensione decente, iniziano anche ad arrivare gli sponsor, dai negozi di informatica alle agenzie di software alle piccole startup della zona.
Spero sia chiaro: per comprarci ci vuole davvero poco... ;)

sabato 11 luglio 2009

Step 2: Geolocating the problems

Siamo nel nostro paese di 20.000 persone che ha applicato con successo il passo 1: gente che si iscrive in comune per condiidere la propria rete wifi, server radius che regge il carico, iniziano ad aggregarsi nel progetto comuni limitrofi, ecc. Di certo non possiamo far morire qui il progetto lasciando ai cittadini solo uno strumento per accedere alle mail da tutta la città (ok, sarebbe già un passo avanti senza precedenti). Allora come possiamo trasformare un progetto di questo tipo in un progetto che possa essere davvero sensato per il comune? Come nel post introduttivo, può avere senso a mio avviso questo caso d'uso: Un utente passeggia o è in macchina in giro per la città e nota u problema. Tramite la rete Wifi o il GPS integrato nel cellulare, netbook, palmare, iphone è possibile dare una posizione più o meno precisa (raggio 10 metri massimo) del problema, e quindi è possibile inviare l'informazione al comune.
Da un punto di vista pratico sarebbe possibile sfruttare il già esistente SeeClickFix oppure creare una soluzione nuova basata non su Google Maps ma su OpenStreetMaps, in modo da essere open-source. La cosa interessante è che non dipende da chi scrive, il comune destinatario del messaggio, ma dall'area che questo comune osserva.
Ora, SCF ha dei problemi dati dal fatto che i messaggi che vengono salvati non sono categorizzati, cosa che sarebbe molto utile per riuscire a gestire, da parte di un comune, l'ottimizzazione dei movimenti di messa a punto. Infatti supponendo una categorizzazione, si potrebbe facilemte sapere solo quali strade sono dissestate e quindi in base a dati su traffico e ottimizzazione (fatta con normali algoritmi di ricerca operativa) si può pensare a risolvere i problemi senza sprecare troppo combustibile perchè si fa il giro ottimizzato per la soluzione. Stessa cosa dicasi per l'illuminazione pubblica.
Inoltre, tramite le applicazioni distribuite, è possibile per il comune dare informazioni a cittadini che magari possono non sapere come muoversi (perchè non locali) in caso di lavori stradali. Questo proprio tramite i client sui vari dispositivi. Quindi quando un utente entra nel territorio del paese, il client rileva la sua posizione spaziale e all'utente arrivano le indicazioni di come muoversi per evitare troppi intralci o per facilitare il transito.
Come la volta scorsa, nell'ultimo pezzo parliamo di soldi. Supponendo di voler fare una soluzione totalmente propria per ottimizzare le segnalazioni e permettere comunicazioni bidirezionali fra utenti e enti (pubblici e privati) è possibile innanzitutto creare un buon business model che unisca una offerta gratuita ad enti pubblici e permetta di ottenere guadagni da enti privati che vogliano usufruire del prodtto all'interno di proprie strutture (immaginate una guida grafica che vi permetta di andare da un'aula ad un'altra ad Ingegneria a Bologna o in IBM Boston o un sistema che permetta di darvi il benvenuto quando entrate in un palazzo dove dovrete tragicamente attendere molto a lungo). Nel caso questo buon business model fosse impossibile da praticare e nessuno voglia dare anche il minimo contributo ad un'idea buona, è sempre possibile basarsi sul fatto che gli hacker sono hacker e con un minimo di sponsorizzazioni comunali che dimostrino apprezzamento per la loro attività sarebbero disposti a lavorare per il bene comune (alla fine il mondo open-source ha un senso...)
Prossimo step: Essere da traino per il commercio

mercoledì 8 luglio 2009

Step 1: Civic WiFi

Immaginate di poter usufruire all'interno della vostra città di una rete wireless per tutti i cittadini, gratuita, disponibile. Ovviamente per una cosa del genere servono soldi. Davvero? Pensando un attimo, la soluzione diventa ovvia: se tutti i cittadini dotati di ADSL la condividessero con un piccolo contributo comunale, si potrebbe facilmente arrivare ad avere una rete WIFI disponibile in ogni punto di un paese, ancor più per una città di medie dimensioni.
A questo punto occorre fare un rapido excursus sulla legge italiana riguardo al WiFi, ovvero una buffa regola che prevede che chiunque si connetta ad una rete debba essere identificabile. Questo elimina a priori una soluzione come aprire tutti la rete wireless e mettere un semplice SSID comune. Quello che quindi può essere un modo saggio per risolvere la questione può essere l'uso di uno strumento quale un server RADIUS. Questo tipo di server permette di identificare ed autorizzare ogni utente della rete. Esiste una implementazione gratuita di RADIUS, FreeRADIUS. Tramite questo server diventa possibile dare ad ogni utente le informazioni necessarie a gestire la sua connessione.
La cosa affascinante di tutto questo è che è possibile creare server RADIUS federati, in modo da avere, facendo un esempio locale, i server di Castel Maggiore, Bologna e San Giorgio che si conoscono. In questo modo un utente che può connettersi a CM può farlo anche a Bologna, San Giorgio e tutti i comuni che posseggono un server RADIUS dello stesso gruppo.
Da un punto di vista prettamente tecnico un server RADIUS non deve nemmeno essere un super-computer. Basta un computer comunemente disponibile ben configurato dal costo non superiore a 500€, se proprio non si trova uno spazio su un server già pubblico a disposizione del comune o degli enti locali.
Unico svantaggio è la questione dei router. I Router devono essere di particolari modelli che permettano di fare da punti d'accesso che vadano a chiedere al server RADIUS le credenziali. Questi sono presenti in quasi tutti i modelli recenti che supportino le reti wireless G ed N e sono riconoscibili dalla scritta WPA-Enterprise oppure 802.1X. Il prezzo è quello di un normale router wireless, ovvero tra i 30€ e i 90€, ma se si mettesse in mezzo un ente pubblico si potrebbe sfruttare il numero di router da comprare e distribuire ai cittadini disposti a fornire la propria rete wireless. E con questo, il primo passo è fatto.
Prossimo passo? sistema di notifiche da e per l'ufficio tecnico! :D