Node.js: non solo uno strumento server-side. Q&A con Matteo Collina

“Once upon a time, I learned programming on my father’s lap (yes, I was young). Back then, I didn’t worry too much about architecture. I just wanted to write video games so that I could play them”.

Matteo Collina è un* software engineer* ed esperto di Internet of Things (IoT), appassionato di codice, architetture distribuite e metodologie agili. Lavora oggi per nearForm.

Qui una breve intervista con Matteo su Node.js. Buona lettura! 🙂

Avanscoperta: Ieri pirata del codice, oggi speaker internazionale, contributor del runtime Node.js, trainer…
Matteo, che cosa non sappiamo ancora di te che vale la pena conoscere?

Matteo Collina: Ho messo le mani su una tastiera per la prima volta a 4 anni, e non ricordo di “aver imparato a programmare”.
Quando ero ragazzino, ho partecipato al team che gestiva un MMORPG basato su NeverWinter Nights.

Avanscoperta: Un viaggio attraverso Node.js: da dove sei partito, quali rotte hai percorso e dove sei diretto?

Matteo Collina: Ero uno sviluppatore Java per un’azienda che si occupa di consulenza bancaria, ma volevo fare innovazione.
Ho mollato tutto e sono tornato in università per conseguire un dottorato con tesi sull’Internet of Things.
Avevo bisogno di sviluppare software velocemente perché avrei dovuto portare avanti il mio progetto da solo, e avevo bisogno di un runtime per gestire migliaia di connessioni in contemporanea: ho sposato node dalla versione 0.4.

Avanscoperta: Cos’è per te Node?

Matteo Collina: Node è una community che non ha paura di sperimentare nuovi approcci nel “fare software”.

Possiamo trovare progetti Peer To Peer, applicazioni desktop, o sistemi HW/SW.

Node.js è una community inclusiva, capace di abbracciare nuove idee e persone e di continuare a crescere.

Avanscoperta: Perché sviluppare in Node.js?

Matteo Collina: Sviluppare in Node consente di ridurre i costi di sviluppo (fino al 50%, secondo alcuni), e garantisce prestazioni eccellenti. Infine, vi sono più di 250.000 librerie Open Source disponibili su NPM, pronte da usare.
Vi consiglio di leggere questo articolo.

Avanscoperta: Il** tuo workshop **Sviluppare un’applicazione enterprise con Node.js ha generato una “domanda dal pubblico”: qual è la definizione di applicazione enterprise?

Matteo Collina: Potremmo rivolgerci a Wikipedia, ma la mia definizione è differente: se l’azienda per cui stai sviluppando software ha più di un team, allora stai sviluppando software enterprise.

Avanscoperta: Cosa mi porto a casa dal tuo workshop?
La seconda domanda dal pubblico! 😉

Matteo Collina: Con questo workshop impariamo un processo di sviluppo che scala al di là del singolo progetto.
Impariamo a sviluppare codice “in the large” e a manutenere applicazioni medio-grandi scritte in node.js (dalle 10.000 loc in su).

Avanscoperta: Utenti enterprise, aziende di grandi dimensioni: quali sono i vantaggi nell’uso di Node.js? Chi sono gli ultimi grandi early adopter?

Matteo Collina: La riduzione dei tempi di sviluppo, la** riduzione dei costi**, l’aumento delle prestazioni, la maggiore collaborazione all’interno dell’azienda.
Inoltre, all’interno del Technology Adoption Lifecycle, Node.js non è più una tecnologia per gli early adopter, ma è ormai passata nella early majority.

Avanscoperta: Qual è il futuro prossimo di Node.js e qual è il legame con l’Internet of Things?

Matteo Collina: Node.js è un progetto maturo e stabile: ha una versione LTS (ora la 4) che viene rilasciata ogni anno, e sta iniziando il processo per finalizzare la versione 6 (nuova LTS).
Il team che mantiene Node.js è ora composto da quasi 60 persone, e questo assicura continuità al progetto.
Al riguardo dell’Internet of Things, Node.js è una tecnologia che si sposa estremamente bene con applicazioni soft real-time, quali la maggior parte delle applicazioni di IoT.

Avanscoperta: Eventi da non perdere per gli interessati al tema?

Matteo Collina: Vi consiglio JsDay a Verona, e gli eventi nodeschool.io a Bologna, Milano e Cagliari.
Inoltre, a breve verrà annunciata la nuova edizione di Node JS Conf.

Avanscoperta: Grazie Matteo, ci vediamo a Bologna!

Pic credits: Artem Verbo on Unsplash.

Learn with Matteo

Matteo Collina è il trainer del Node.js Workshop.

Matteo Collina

Software Architect at nearForm, author of the Node.js MQTT Broker, Mosca, the fast logger Pino and of the LevelGraph database and speaker at several international conferences.

Alessandra Granaudo

Training and Community Manager Avanscoperta

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.