Venerdì 7 ottobre si è svolto il ReactJS Day organizzato dal GrUSP in collaborazione con il FEVR, e in missione per MageSpecialist c’erano Paolo e Lorenzo.

Come hanno evidenziato i ragazzi del GrUSP nell’introduzione, in Italia pare esserci una malsana abitudine del mondo aziendale a non investire nella formazione e nella divulgazione tecnica. Davvero una cattiva abitudine, motivo per cui le maggiori conferenze nel panorama nazionale sono prerogativa quasi esclusiva del GrUSP e delle altre associazioni che si dedicano a questo ambito come il FEVR. MageSpecialist è particolarmente controtendenza in questo senso, ma in generale è davvero un peccato, perché la risposta di pubblico e di entusiasmo che si ottiene in queste occasioni è sempre eccezionale: c’è veramente fame di formazione e divulgazione nell’ambito IT.

La conferenza è stata come sempre impeccabile, ricca di relatori italiani e internazionali che hanno esposto argomenti di ambiti molto diversi sull’ecosistema di ReactJS. Gli sviluppatori MageSpecialist hanno partecipato anche al workshop introduttivo del 6 ottobre che forniva una panoramica generale sull’ecosistema React, ed secondo i diretti interessati è stata la scelta giusta per rivedere e completare le proprie competenze ed affrontare con gli strumenti giusti la giornata di full immersion del giorno seguente.

Gli argomenti della giornata – Parte 1

Di seguito vi proponiamo la prima parte del resoconto degli interventi più interessanti della giornata, dalla viva voce di Paolo e Lorenzo. Nei prossimi giorni pubblicheremo anche la seconda parte (se non volete perderla iscrivetevi alla newsletter).

Johannes Stein “Individual paint for your React components”

img_20161007_095202Guarda il video
Il primo talk ha aperto subito prendendo in esame gli approcci per adottare i CSS nei componenti di React, argomento su cui si incontrano moltissime scuole di pensiero diverse e relative implementazioni. Johannes ha analizzato l’utilizzo degli stili in linea per poi passare a react-with-styles di Airbnb che utilizza il concetto di un HoC (High Order Component), a react-css-themr che combina l’approccio precedente con i CSS Module.

Kevin Mees – CSS is dead, long live CSS (but in modules, please)!

img_20161007_102213Guarda il video
Anche il secondo talk si è occupato dei CSS in React incentrandosi su cosa rende difficile lavorare con in CSS, cioè il loro scope globale. Facendo poi un parallelo con la situazione del mondo JS di qualche anno fa, risolta poi con i moduli ha poi parlato di react-css-modules, dei vantaggi e delle best practices.

Emanuele Rampichini – How to push a ReactJS application in production and sleep better

img_20161007_120237Guarda il video
“Everything fails all the time”, è la consapevolezza di chiunque si occupi di sviluppo e deploy di codice. Emanuele Rampichini però tiene al serenità del suo sonno, e per questo ha esposto i possibili approcci al test del codice di React partendo dal monitoraggio con strumenti come Sentry, New Relic e TrackJS, passando per le tecniche da adottare negli unit test, integration test, end 2 end e infine il manual test, che purtroppo è sempre imprescindibile.
Viene da osservare che l’adozione dei test nell’ecosistema di React è un’operazione estremamente agevolata, dato che la separazione tra singoli componenti, store, i reducer, thunk etc permette di intervenire facilmente inserendo dove necessario dei mock dei dati o dei componenti per il test o testando delle funzioni pure che non hanno dipendenza da altri elementi esterni.

Massimiliano Mantione – Reactive Reality

img_20161007_125013Guarda il video
Sappiamo che React è uno strumento per costruire delle UI, che siano per il browser o per terminali mobili, ma che succede se vogliamo costruire una UI da poter utilizzare in un ambiente 3D. Massimiliano Mantione ci ha lasciati a bocca aperta mostrandoci il processo e le difficoltà che ha affrontato nell’adottare la stessa business logic per delle UI condivise tra il mondo 2D e il mondo 3D costruito con WebGL all’interno di un browser.

Non perdetevi la prossima parte del resoconto nei prossimi giorni!