I was very fortunate to visit Reykjavik in August this year for JSConf Iceland. Apart from relaxing trips to natural hot spas, battling vikings on rooftop bars backed by the setting sun, dramatic geysirs, gigantic waterfalls and snowmobiling on glaciers, there was also the best selection of technical talks I’ve seen at any conference.
Here are a few of my favourites.
A cartoon guide to performance in React
https://www.youtube.com/watch?v=NGxVLnJKhP8
Lin Clark’s talk was a very easy to follow explanation of React’s core algorithm (as it stands currently).
One quick takeaway was to avoid an anti-pattern I’ve seen (or possibly implemented!) where you add a `key` to a collection of elements to avoid a React console warning. If you simply add an incrementing integer, say from the index of a call like
props.collection.map((e, i) => <li key={i}>e</li>)
then React won’t be able to easily tell that a collection has been sorted. Instead, use some form of business key (for example, a product code) that is specific to the object in the collection.
Reactive animations
https://www.youtube.com/watch?v=lTCukb6Zn3g
Spinning up an electron app
https://www.youtube.com/watch?v=QkfXZ2IFIck
As someone primarily working in frontend web development for an e-commerce company I don’t have a big set of use cases for setting up a desktop application. However, this talk was great fun and it was nice to see how easy it is to make an app with integration into system menus using Javascript.
I’ve heard BB-8 sales are through the roof!
Arbitrary computation on the GPU using WebGL
https://www.youtube.com/watch?v=5lO2wDOGIWI
This was another talk where it’s difficult to imagine what the use cases could be for doing that volume of processing on the client, whilst locking up the GPU. It was still facinating to see how the GPU could be used to ‘render’ to an off screen canvas, then collect the data back by reading the image’s colour pixel by pixel.
This will Flow your mind
https://www.youtube.com/watch?v=p6rybcXZOD0
Tryggvi Gylfason’s talk was a very succint introduction to the Flow syntax and some of the benefits it has for larger teams.
If typed or functional languages that transpile to JavaScript are of interest I’d also recommend checking out recent JavaScript Air talks on Typescript & Flow and typed functional programming.
Progressive rendering – how to make your app render sooner
https://www.youtube.com/watch?v=aRaQe9n1lPk
This talk demonstrating old school techniques for piping html to the browser before you have the whole page, but with NodeJS and streams.
Pivoting to React, at scale
https://www.youtube.com/watch?v=t0s97w0GuF4
How Pinterest have migrated from their Backbone/Django architecture to React. Probably some lessons here for anyone doing a large migration between frameworks, but particularly anything related to React.
The ones I missed…
With two tracks of talks there’s always going to be one or two you’d still love to see. These are on my playlist:
Dirty little front end tricks
https://www.youtube.com/watch?v=DQk9TqO5ets
A colleague went to this one and said it was his favourite of the conference.
The New Mobile Web: Service Worker, Push and App Manifests
https://www.youtube.com/watch?v=JF-e12S2ZAY
Service workers are that feature I’d love to use but are difficult to justify the time on while certain popular mobile operating systems are holding back the web. I’ve heard there are lots of interesting ways to use service workers as progressive enhancement and this talk goes into using them to produce a native-like experience.