Notes from the conference. Based on 20 hand-written pages. Strong or misleading interpretations are all on me.

TL;DR; No new framework announced, go home kiddo… Oh Wait Nope! Progressive Web Apps happens to be the new hotness.

Keynote — Progressive Web Apps

Christian Heilmann (video, slides, twitter)

Progressive Web Apps (PWA) — simply — are just websites built to be more like native apps. It’s not a new concept, but so far we were failing. Lack of native capabilities forced workarounds. Hardware and JS engines were not as fast as today. Everyone had to figure out their own definition of “Web App”.

Consider PWA as a set of principles to follow during building an app. Browsers already implement mechanisms that help to achieve them.

“Progressive” comes from progressive enhancement. Once your users have more superpowers, your app should give them more possibilities. Without forgetting rest of users. We’re talking here about network capabilities, offline mode, screen size, budget devices.

Is it possible to build?

Async Functions Awaiting You

Tomasz Ducin (slides, twitter)

Promises and generators already provide the way for representing asynchronous functions in a synchronous manner. async/await functions are introduced as the simplification of this concept.

Promises themselves have limitations like being greedy and accessing a value from the previous step only. With complex calculations, you easily fall into hell the same as callbacks.

Let the dinosaurs finally die out with a little help of a Service Work

Kacper Sokołowski (slides, demo, twitter)

How to implement PWA requirement — Network independence? Cache components necessary to run your application. Well-known options are local storage, cookies, indexedDB and now… service workers.

Service workers…

This presentation focuses on handling offline state, but very good use case are notifications and background sync.

Service worker intercepts calls to server and restores data from cache if needed

React Native — Success case study

Gabor Wnuk (slides, twitter)

A story behind Pudelek.pl app: improving legacy project on three platforms (iOS, Android, Web) without rewriting everything from scratch. How? React Native can be built on top of your existing application as a dependency.

There is no WebView. Means no HTML or CSS. Everything is compiled to native components by series of compilation steps. When you use fetch().then() API, it’s converted to appropriate HTTP Client in Java or iOS.

They encouraged native developers to write JavaScript, however that didn’t fit well. Technologically they used Flow type to keep code more familiar to Kotlin and Swift.

Business logic reused, views remain platform-specific

The success of Pudelek app is considered in following aspects:

Ending note

Native developers are still needed. Deployments, platform-specific views and things that React Native doesn’t support. Productivity is better but not like 3 times better.

Keep your skills sharp! Developer career in rapidly changing technology world

Michał Nowak (twitter)

Michał reminds about distinguishing important things in Software Developer career. He points that with a good chance, he can guess the content of CV based on birth date of an applicant.

Uncertainty of market and ourselves

10 years ago 2007, Web Developers were using flash. You know the story. Can you predict what will happen in 2027?

That being said, you can’t predict how your core life values will evolve. Having son? Not yet? Enjoy your time then.

Traps

Career Compass

The Mobile Web Second Edition: First-Class Citizen on Your Device Now

Maxim Salnikov (slides, twitter)

How to answer a question: We need a mobile app?

Maxim showed lots of statistics how mobile web is growing and overcoming desktop in lots of different measures. It is correlated with demand for mobile app developers also.

As Web developers, we had multiple tries to involve in mobile world — but failed as HTML5 apps looked crappy and were unbelievably slow

Progressive Web Apps are green octagon and meant to be “the next big thing”, I was especially interested in traits for not only users but business.

If it’s framework agnostic, how to actually implement it? Look for inspiration at HackerNews PWA — A spiritual successor to TodoMVC.

What about other popular options? I highly recommend slides. Maxim covered in great details differences between Ionic, NativeScript, React Native and PWA ideology.

RxJS all things!

Simona Cotin (twitter)

Most important async components of the web:

Why and how people learn RxJS?

Challenges

DevTools Deep Dive

Alex Lakatos(video, twitter)

I haven’t taken notes here. Alex has given a demo on how Firefox DevTools tries to catch up Chrome. Starting with simple tricks in Inspector and Network tab, configuration to more advanced performance analysis.

Although I wasn’t convinced to use Fx DevTools over Chrome’s, I strongly support Firefox in that competition.

Angular is on Fire(base)!

Shmuela Jacobs (slides, twitter)

JWT, WTF?

Phil Nash (slides, twitter)

At this point, conference ended.Give some ❤ if you like notes and help other people find it.