Nordic.js 2017

Fjärde upplagan av Stockholms sötaste (sockervadd!) JavaScript-konferens – Nordic.js – gick av stapeln för drygt en vecka sedan.

Förra året huserades eventet på Münchenbryggeriet som låg centralt och hade bra faciliteter men begränsat med uppehållsytor i pauserna. I år hade de flyttat till större, aningens mindre centrala, lite sunkigare Nobelberget. Arrangörerna hade dock piffat med färg och form.

Även i år gick det även att delta på distans och se eventet via live-streaming.

Innehållet i år kändes klart bättre än 2016 då jag upplevde föredragen som svaga trots bra lineup.

The State of JavaScript

Konferensen första av fyra keynotes gav oss en liten förhandsgranskning på hur det gick i utvärderingen The State of JavaScript (som nu är stängd för i år). Mer än 20 000 utvecklare har svarat på ett antal frågor om JS-ramverk/bibliotek. Resultatet, när det släpps, kan vara användbart när man är i färd med att välja ramverk för ett projekt. React och Vue.js låg bra till vad gäller popularitet och framför allt nöjdhet hos utvecklarna, Angular not so much..

Andra intressanta föredrag var..

Best Practices for GraphQL and GraphQL Subscriptions at Scale

Det jag gillar med Facebook till skillnad från exempelvis Google (Angular) är att deras verktyg och ramverk som de släpper som open source är sådant de använder själva. Vi kan därmed vara ganska säkra på att kvalitén och prestandan håller hög klass. GraphQL är ett lager och ett query-språk för att ställa frågor mot datakällor där du bestämmer i detalj inte bara vilken datamängd du vill hämta utan även vilken struktur denna datamängd ska ha. På så vis kan varje tjänst begränsa datamängden till exakt den som behövs i varje enskilt fall. Det blir också bara en endpoint att kommunicera med istället för en explosion av endpoints som det kan bli när man använder REST. GraphQL subscriptions är ett sätt att pusha ut data till klienter över WebSockets.

Lightning Talk: Service Workers – Use them!

En bra påminnelse om att kika närmare på Service Workers som blir mer vanligt i moderna webbtjänster. Bra bl.a. för att göra tjänster tillgängliga offline genom cachning av resurser.

The Design and Evolution of Event-Driven Databases

Mark Nadal är en riktig showman och detta föredrag var oerhört underhållande, men herregud vad intensivt. Han demonstrerade i halsbrytande vansinnestempo hur man bygger en “enkel” distribuerad, synkroniserad databas över ett adhoc mesh-nätverk. När youtube-klippen dyker upp i Nordic.js-kanalen ska jag kika på föredraget igen i halva hastigheten..

Solving layout problems with CSS Grid and friends

Tabellbaserad layout. Oh, vilka härliga minnen.. Sedan fick vi floats. De bidrog till ett och annat grått hår. Men layout med hjälp av CSS har kommit en bra bit på vägen i och med Flexbox som faktiskt stöds av nästan alla webbläsare (t.o.m IE11). Flexbox är dock begränsad i en dimension – antingen horisontell eller vertikal. Grids to the rescue! Här placerar vi element fritt i två dimensioner. Rachel Andrew som deltar i W3C CSS Working Group gav oss en inblick i hur underbart livet kommer att vara framöver.

Keynote: The future of the web and the curious case of the unintended silo

Paul Kinlan från Google brinner för PWA:s och nu när prestandan i mobila enheter och dess webbläsare ökat kraftigt samt API:erna i dessa webbläsare fullkomligt exploderar så kan webbappar ge native-appar en match: Notifications API, Web Payments API, Credential Management APIWeb Bluetooth API, Web Share API, Add-To-Home-Screen etc. Guider hos Google – Learn How to Develop the Next Generation of Applications for the Web.

Beyond the bubble

  • Satsa på prestanda iterativt istället för på slutet.
  • Testa med lågpresterande enheter eller simulera dem i Chrome DevTools.
  • Håll koll på parsnings- och kompileringstiden för din JS-kod – storleken är inte allt!
  • Time-to-interactive bör vara mindre än 5 sekunder på alla enheter.

Lighthouse är ett verktyg för prestanda-analysering.

Next.js

Next.js är ett minimalistiskt ramverk bygg ovanpå React, Webpack och Babel som abstraherar bort mycket av den boilerplate som krävs för att åstadkomma saker som bl.a. serverside-rendering, code-splitting och routing. Guillermo Rauch hade nog den smidigaste live-kodnings-demon jag sett. Väl inövat och/eller ett bevis på hur enkelt Next.js faktiskt är? Intressant oavsett och definitivt något jag ska titta närmare på till nästa sidoprojekt.

:heart:

Något som arrangören till Nordic.js försöker bidra till att skapa är ett mer inkluderande community. Det märks överlag hur stämningen är på plats och i år även innehållet på schemat. De har även infört något de kallar Diversity Ticket. Tre föredrag tangerade till temat direkt eller indirekt:

  • Léonie WatsonYou’re only supposed to blow the bloody doors off! – slog ett slag för de som pga synnedsättning behöver använda screen readers. Något som jag inte kände till är att det vid sidan av DOM-trädet även finns ett accessibility-träd innehållandes det som screen readers behöver för att göra sitt jobb. Det är den struktur som blir lidande när vi återanvänder DOM-element till nya saker (knappar av <span>, selectboxar av <ul> etc). ARIA hjälper men använd rätt element från början så långt det är möjligt.
  • Karolina Szczur – Building Inclusive Communities – Inga omskrivningar här inte: “Shut up! (and listen)”. Hur får vi alla individer oavsett egenskaper att känna sig välkomna i vårt community? De flesta verkar överens om att vi bl.a. vill ha fler kvinnor i vår profession, men nästan alla undrar hur? Ledord i föredraget var introspection, reflection, understanding privilege, combat unconscious biases, enforce code of conduct.
  • Harriet Lawrence – Sociolinguistics and the Javascript community: a love story – Språket vi använder är viktigt för att undvika att stänga ute potentiella nyrekryter. Hur vi dokumenterar (“simply do this”, “it’s super easy, just..”), hur vi uttrycker oss i sociala medier och forum (välkomnande istället för nedlåtande) etc.

Leave a Reply

Your email address will not be published. Required fields are marked *