Un hackathon per sviluppatori, designer e progettisti, con un tema forte: l’auto al tempo dell’IoT. Si chiama Hack ‘n’ Roll la sfida promossa da Couchbase, Microsoft e Spindox che si svolgerà dal 28 al 29 maggio presso il Politecnico di Torino.
Un evento collocato nella cornice di Supernova, la grande manifestazione torinese di Talent Garden sull’innovazione e il digitale. Sei un giovane pieno di idee? Sai progettare o sviluppare applicazioni software? Ti muovi con disinvoltura fra HTML5, JavaScript e CSS3? Conosci Node JS, Angular e Raspberry Pi? Hack ‘n’ Roll è la sfida per te. Per il progetto più meritevole c’è un riconoscimento di 5000 euro.
Al centro dell’hackathon abbiamo messo alcuni dei problemi che l’industria automobilistica dovrà affrontare per garantire affidabilità e sicurezza nel contesto della vettura connessa. Una vettura, cioè, in grado di elaborare informazioni sul proprio comportamento e sul conducente, per poi trasmetterle via GSM – in caso di necessità – a un terminale remoto: per esempio un centro di pronto soccorso o un servizio di assistenza tecnica. Ai partecipanti a Hack ‘n’ Roll proporremo un caso d’uso concreto e chiederemo di studiare un’applicazione in grado di risolvere in modo tutti i problemi che ne derivano.
Sullo sfondo il contesto di business della cosiddetta infomobility. Uno scenario che si articola intorno a tre categorie di informazioni: dati sul funzionamento della vettura, infotainment (news, meteo, Facebook check-in ecc.), notizie sul traffico e informazioni location based. Ma soprattutto le spinte del regolatore europeo: dall’aprile 2018 tutte le vetture vendute in Europa dovranno avere a bordo un apparato elettronico con GPS, accelerometro e SIM per permettere di comunicare a un centro servizi eventuali situazioni di emergenza.
Cominciano inoltre a essere diffuse “telematic box” vendute da banche e assicurazioni che offrono questo servizio, per consentire ai clienti di usufruire di bonus sulla polizza della RCA.
Infine esistono numerosi servizi, proposti sotto forma di app, da utilizzare in caso di criticità o emergenza vera mentre si guida: donna sola in situazione di pericolo, figlio che si allontana con l’auto del papà o casi simili.
Tanta carne sul fuoco, insomma. Ma la vera sfida è come gestire tutti questi servizi in modo affidabile, ossia garantendoli sempre (anche quando ci sono problemi di connettività) e in condizioni di sicurezza. Per questo abbiamo organizzato Hack ‘n’ Roll: vogliamo mettere a punto soluzioni che siano non solo valide dal punto di vista squisitamente tecnico ma anche e soprattutto coerenti con il contesto d’uso futuro. In più vogliamo dimostrare che tutto ciò può essere realizzato in un’infrastruttura cloud. Non a caso abbiamo deciso di lanciare l’hackathon insieme a Microsoft, che metterà a disposizione di tutti i partecipanti l’infrastruttura Microsoft Azure.
Lo scenario tecnologico che abbiamo studiato per l’hackathon risponde a due esigenze. Da un lato si basa su stack universalmente riconosciuti e quindi dovrebbe risultare abbastanza familiare a tutti i partecipanti.
Dall’altro lato è aperto a una grande quantità di declinazioni, sia per quanto riguarda i linguaggi di programmazione sia con riferimento ai servizi di comunicazione con piattaforme esterne.
Le tre dimensioni dell’architettura messa a disposizione dei partecipanti sono: ambiente cloud, dispositivo IoT e dispositivo mobile.
Per quanto riguarda l’ambiente cloud, la tecnologia di riferimento è Azure. Qui i partecipanti all’hackathon troveranno sia l’infrastruttura di hosting, con un ambiente di sviluppo pre-configurato, sia un set di servizi che Azure offre a catalogo. Per esempio è possibile utilizzare l’Azure IoT Protocol Gateway, che supporta MQTT v3.1.1. Naturalmente è consentito integrarsi con qualsiasi altro tipo di servizio o SaaS. Le squadre avranno a disposizione un credito di 100 dollari, più che sufficiente per sfruttare tutte le risorse presenti su Azure.
Con riferimento al dispositivo IoT, anche in questo caso abbiamo scelto di offrire uno standard molto diffuso, noto a tutti coloro che sviluppano applicazioni in questo ambito: Raspberry Pi 3. I partecipanti avranno dunque a disposizione un computer di questo tipo, collegabile da un lato al laptop che porteranno con sé (in questo caso vige la regola del BYOD), dall’altro a una serie di sensori che pure metteremo a disposizione dei partecipanti.
Su Raspberry Pi supporteremo ufficialmente due ambienti di sviluppo di riferimento per il mondo IoT: Microsoft .NET su Windows 10 IoT ARM e Node JS. Per il resto, massima libertà di scelta. Lato server si potrà sviluppare in .NET, VB.NET, C#.Net, PHP, Ruby ecc. Abbiamo previsto anche uno stack per quanto riguarda il DBMS. Si tratta di Couchbase, tecnologia NoSQL sempre più utilizzata per sviluppare applicazioni web, mobile e IoT.
Il terzo modulo su cui si potrà lavorare è costituito dal dispositivo mobile, immaginando possibili integrazioni fra l’applicazione IoT della vettura e lo smartphone del conducente. Ovviamente l’eventuale applicazione dovrà funzionare con qualsiasi sistema operativo (Android, iOS ecc.). Per questo consigliamo di sposare la filosofia della web app, lavorando con tecnologie come Angular, React, Cordova o simili.