Node.js is here to stay! Nordic.js 2018, Stockholm

Heel naar dat Indivirtual mij een lang weekend op pad stuurde om Nordic.js bij te wonen… 🎉
Nordic.js is een jaarlijks terugkerende conferentie op het gebied van JavaScript development in al haar facetten. Het event wordt elk jaar in Stockholm gehouden en laat die stad nu net in de top 5 van mijn bucketlist staan… Zo gezegd zo gedaan. Of, zoals de Amerikanen menen te zeggen: double whammy, stone throwing efficiency!
En hoewel m’n Airbnb host het appartement nog de dag voor vertrek cancelde, en de organisatie van Nordic.js begon te vragen naar een onbetaalde factuur, was ik gewoon aanwezig (tot laat tijdens de afterparty zelfs) en was m’n vervangende Airbnb stiekem een upgrade van de vorige. 👊

TL;DR
Gaan in 2019!

Disclaimer

Met een totaal aan 10 praatjes per dag, dus een totaal van 20 sprekers, wil ik graag de highlights eruit pikken en kort samenvatten. Die keuze heb ik gebaseerd op dat het onderwerp óf heel tof is óf het wel eens iets zou kunnen betekenen voor de toekomst van Indivirtual…
Het volledige programma vind je hier. Er was tijdens de conferentie een live stream beschikbaar die je hier terug kunt kijken.

 

Building the foundations of the Node.js community

Tierney Cyren is een belangrijke deelnemer aan het Community Committee van de Node.js Foundation, en dat hebben we geweten. Zijn praatje was zo enthousiast dat ik ‘m graag even benoem in mijn lijst van inspiratie. Zijn boodschap was duidelijk: voor wie het nog niet wist: Node.js is here to stay!

Het Community Committee van de Node.js Foundation bestaat uit een wereldwijd leger van Node developers met alle mogelijke achtergronden, vanuit alle mogelijke windstreken, waar web maar een klein onderdeel van is. Hij gaf als voorbeeld dat vooraanstaande (technische) bedrijven Node langzamerhand aan ‘t integreren zijn in hun tech-stack. Zo heeft Nasa een launch tool gebouwd en heeft Adobe de Creative Cloud gebaseerd op Node.

Het liegt er niet om. Op dit moment zijn er 780.000 npm packages beschikbaar, wat een verdubbeling is met vorig jaar, en daarvan werden er 6 biljoen gedownload in de laatste week alleen al! 😱 En dan telde hij alleen de packages binnen de npm registry!
Met deze data durfde hij te stellen dat Node.js een lange termijn toekomst heeft. En ik weet niet of het komt door z’n enthousiasme of de voorgelegde data, maar ik ben t met hem eens.

Magic Tricks with Houdini

Het is het fundament van het vak Front-ender: het overbruggen van browser incompatibiliteit. Dus dit belooft wat: JavaScript gebruiken om je CSS-engine uit te breiden of zelfs te manipuleren!

Houdini is een naam die niet zomaar gekozen is. Niet alleen refereert het naar een van de grootste Magiërs van de vorige eeuw, het is ook de naam van een jonge W3C task force die als doel heeft reguliere problemen binnen CSS op te lossen met een nieuwe set aan API’s om CSS te versterken met JavaScript. Wacht, wat? 😳Yes, it’s magic!

In het kort, het wordt je mogelijk gemaakt om bijvoorbeeld je eigen CSS polyfills te schrijven/toe te voegen, of custom element selectors te maken!
Er is wel een nadeel, het project staat in de kinderschoenen en dat betekent dat support per browser alsnog heel verschillend is.
Lees hier wat de huidige support is voor de verschillende API’s binnen Houdini.
Al met al komen er toch wat vraagtekens in mij naar boven, vooral wat de impact gaat zijn op performance van CSS en de laad- en paint-snelheid van de layout binnen browsers.
We gaan het zeker meemaken in de nabije toekomst en eerlijk gezegd kan ik niet wachten.

Look mum, no hands!

Tegenwoordig is het gebruik van touch voor apparaten niet meer weg te denken. Ook rammen we graag op knoppen van controllers en gebruiken we VR, AI en AR om onze belevingswereld te vergroten.
Maar wat als je dingen kan besturen zonder je handen te gebruiken? Of nog beter: Wat als je je gedachten zou kunnen gebruiken?

Charlie Gerard liet tijdens haar talk zien dat je door middel van een zelf geknutselde hersensensor, en een zelf geknutseld JavaScript framework, objecten op een webpagina kan aansturen. Vooral door middel van gezichtsmimiek, maar ook door hersenactiviteit, hoewel dat niet altijd even goed ging tijdens de demo. 😋

Als klap op de vuurpijl stuurde ze een drone aan, met hersenactiviteit, die tegen verwachting in ergens tussen rij 10 en 15 in het publiek crashte 🎊 tot groot vermaak van alle toeschouwers (niemand raakte gewond).
Dit is natuurlijk gewoon tof om te maken, maar in de nabije toekomst gaan we meer van dit soort toepassingen zien; vast en zeker in de online gaming industrie.
Dit project staat dan dus ook in de kinderschoenen…

Bijvoorbeeld de Bluetooth API van Chrome laat ons al zien hoe gemakkelijk we het toetsenbord, muis en touchpad kunnen inruilen voor bijvoorbeeld lightsabers! Waarom? Omdat t kan.

Powerful Automation with the Chrome DevTools Protocol

Iedere webdeveloper waardeert het gebruik van Chrome devTools omdat het ‘t leven een stuk aangenamer maakt (zeker als je nog uit de tijd stamt van vóór Firebug of devTools, zoals ik). Maar wat weinigen weten is dat de devTools binnen Chrome an sich een API is, die alle mogelijkheden en informatie ontsluit zodat je deze kan gebruiken in JavaScript. 😎

Trent Willis, QUnit Lead bij Netflix, kwam ons uitleggen hoe je met deze API, in combinatie met Puppeteer, een headless Chrome versie op basis van Node, hoogwaardige geautomatiseerde tests kan uitvoeren voor code kwaliteit en end-to-end testing. Hij heeft de slides van z’n presentatie online gegooid voor iedereen!

Zou dit een waardig alternatief kunnen betekenen voor test frameworks als Selenium of Phantomjs? Misschien… Maar het is zeker de moeite waard om in de gaten te houden. Ik kan in ieder geval niet wachten om dit toe te passen!


Connecting JavaScript to the Blockchain

Ik wil niet te diep op dit onderwerp ingaan, want dat is een HBO studie an sich, maar Blockchain is misschien wel een van de meest gehoorde buzzwords van de laatste tijd. Daarom wil ik ‘m wel even noemen.
Tijdens haar demo liet Meng Shang zien hoe je door middel van React aan de Front-end en Solidity als Back-end een simpele Blockchain app kan deployen met Node.

Solidity lijkt heel erg op JavaScript en is voornamelijk ontwikkeld voor het opzetten van zogenaamde smart contracts, een simpele vorm van contracten binnen blockchain.
Conclusie: het is makkelijker dan je denkt.
Of we dit bij Indivirtual gaan toepassen? Lijkt me (voorlopig) nog niet… 😐

Wrap up

De breedte van inzet van JavaScript lijkt onuitputtelijk en met Nordic.js is men er in geslaagd deze breedte aan scala te omvatten in één congress van twee dagen.
Desalniettemin was dit slechts het neusje van de zalm in JavaScript land. Er kan nog veel meer bij!
De sfeer, het eten en vooral de creativiteit om de planning heen was fantastisch! En Stockholm zelf is een stad waardig om te bezoeken.

Wie gaan er mee de volgende keer?

Tip van de redactie
Oh, en gebruik emoji in je presentaties, want als zelfs JavaScript Guru’s dat doen…