Rousseau X, ecco cosa c’è dietro l’app di Rousseau

Ingegnere informatico italiano, Emanuel Mazzilli lavora in Silicon Valley dall’età di 25 anni. Per Rousseau ha coordinato la riscrittura della piattaforma. Ma non si è fermato qui. Forte della sua esperienza maturata in aziende come Twitter e Facebook, dove ha sviluppato app usate da oltre un miliardo di utenti, ha dato il suo contributo alla nuova App Open Source Rousseau X.


I cellulari e il mondo delle app sono spesso sottovalutati. Non ci rendiamo conto che ogni giorno abbiamo in tasca dei veri e propri computer con una potenza computazionale di molto superiore a quella usata per mandare l’uomo sulla luna. La nostra idea era quella di usare questo potenziale per la partecipazione civica e la democrazia diretta. Così è nata Rousseau X.

L’idea era di sviluppare una app in modo partecipativo e Open Source dal giorno zero. E così abbiamo fatto. Si tratta di un percorso complesso, più lungo e impegnativo, ma che può dare un notevole valore aggiunto a piattaforme di grande impatto come Rousseau. Qualsiasi software è composto dal codice scritto dagli sviluppatori. Nei progetti Open Source questo codice viene condiviso con la comunità.

Ci sono esempi illustri di Open Source come Linux, Firefox, Kubernetes, WordPress e molti altri che hanno rivoluzionato il mondo dell’informatica e si sono imposti come standard de facto.

I vantaggi di questo approccio sono tre:

  • Condivisione: tutti possono usare e modificare il software in questione
  • Trasparenza: tutti possono controllare cosa accade dietro le quinte
  • Partecipazione: tutti possono contribuire agli sviluppi futuri

Noi abbiamo deciso di lavorare con la comunità dall’inizio. Abbiamo coinvolto gli sviluppatori che si sono iscritti al programma Rousseau Open Engineering durante il decennale del MoVimento 5 Stelle. Appunto da questo è nato il nome Rousseau X. ‘X’ come 10 in numeri romani per i dieci anni del MoVimento, ma anche come il segno lasciato sulla scheda elettorale.

Abbiamo interagito con diverse modalità: chat di gruppo via Slack, video conferenze, codice pubblico su GitHub revisionabile ed ampliabile da tutti e la possibilità di aprire delle “Issue” sulla piattaforma di sviluppo condiviso Github.

La partecipazione è stata fondamentale, specie inizialmente, per definire il prodotto e le scelte architetturali fondamentali che hanno poi creato la base per gli sviluppi futuri.

Anche il canvas con tutti i task per la progettazione è sempre stato pubblico. In questo modo lo stato dello sviluppo ed i programmi futuri sono visibili in tempo reale. Chiunque può partecipare a discussioni tecniche e sul prodotto, ma anche proporre modifiche o segnalare problemi.

Per quanto riguarda la parte tecnica, abbiamo scelto un framework innovativo sviluppato da Google di nome Flutter. Questa tecnologia ci ha permesso di sviluppare una singola app ed adattarla, con uno sforzo minimo, ad entrambe le versioni iOS e Android. Il sistema di Login è lo stesso usato dalla piattaforma Rousseau (non serve creare un nuovo account!). Questo è stato possibile grazie alla scelta di una tecnologia di Single Sign On basata su OAuth2. Per le funzionalità chiave abbiamo usato il backend esistente scritto in Ruby on Rails. Alcune funzionalità hanno richiesto la creazione di endpoint specifici in php. Le risorse statiche sono distribuite usando una CDN (AWS Cloudfront). Questo rende l’accesso ad alcune risorse ancora più rapido. Per le notifiche ci affidiamo all’infrastruttura di Google Cloud Messaging.

L’app supporta tutti i tipi di votazione di Rousseau. Abbiamo dedicato una tab alle notizie dal blog ed una agli eventi. Attraverso quest’ultima è possibile iscriversi ad eventi online, ma anche ad eventi fisici nella propria regione. Entrambe le tab sono ottimizzate per mobile, usando lo stesso paradigma dietro gli “Instant Article” di Facebook e gli “AMP” di Google. Infatti il caricamento degli articoli del blog e degli eventi è praticamente istantaneo. Tramite l’app, sarà possibile, per i nuovi iscritti, inviare un documento d’identità per la certificazione, fotografandolo direttamente con la fotocamera del cellulare. Per essere certificati ed accedere a tutte le funzionalità di Rousseau ora servono solamente 4 “click”. Sempre con 4 “click” sarà possibile inviarci un feedback su eventuali problemi, ma anche richieste di nuove funzionalità o suggerimenti su come migliorare l’app. Per questo abbiamo creato una tab “Eletti” che non è stata ancora implementata, per poterla costruire attorno alle esigenze dei nostri utenti.

Dal 16 Ottobre abbiamo lanciato la fase beta. Migliaia di cittadini hanno già avuto la possibilità di scaricare l’app in anteprima. Abbiamo ricevuto centinaia di feedback e di richieste a cui stiamo già lavorando! Vogliamo creare un filo diretto con i nostri utenti e costruire gli sviluppi futuri attorno a loro.

La strada è ancora lunga, ma questo rappresenta un passo importante perché Rousseau per la prima volta diventa mobile e non solo web. È un passo che ci avvicina alla nostra visione di futuro. Un futuro basato sulla partecipazione e sulla condivisione.

Grazie a tutti coloro che hanno partecipato! E ai tanti cittadini che hanno scaricato l’app e che ogni giorno con il loro contributo ci aiutano a migliorarla.

 

Centro delle preferenze per la privacy

Necessari

I cookie necessari aiutano a contribuire a rendere fruibile un sito web abilitando le funzioni di base come la navigazione della pagina e l'accesso alle aree protette del sito. Il sito web non può funzionare correttamente senza questi cookie.

gdpr[*], bds_user_logged_in, wordpress_logged_in,

Statistiche

I cookie statistici aiutano i proprietari del sito web a capire come i visitatori interagiscono con i siti raccogliendo e trasmettendo informazioni in forma anonima.

_ga, _gid, _wingify_pc_uuid, _cfduid,

Marketing

I cookie per il marketing vengono utilizzati per monitorare i visitatori nei siti web. L'intento è quello di visualizzare annunci pertinenti e coinvolgenti per il singolo utente e quindi quelli di maggior valore per gli editori e gli inserzionisti terzi.

fr