React Finland
State Management with Michel, David, Luca, and Farzad
We collaborated with the Webbidevaus podcast (primarily Finnish) on React Finland 2019. The point was to produce podcast episodes with our speakers based on the conference sessions. We managed to capture a lot of content and I’ll be publishing it during the following weeks as the podcasts become available.
In this post, I’ll cover the state management session in which we had Michel Weststrate, Luca Matteis, David Khourshid, and Farzad Yz.
Michel Weststrate — MobX — The Journey#
Michel’s talk discussed his journey with MobX, the state management solution known for its reactive approach.
You should watch the talk especially if you want to grow your open source library to popularity. As it happens, it’s not only about the technology.
- To hear Michel’s thoughts on the topic, go to 03:41 at the podcast.
- Online slides
- pdf slides
Luca Matteis — Append-only development with React#
Luca Matteis discussed an alternative way to manage state, append-only systems. Although the approach isn’t popular, it may be closer to how people think.
There are still questions about the scalability of the approach and better tooling is required, but if you want to try something different, then this is it.
David Khourshid — Mind-Reading with Adaptive and Intelligent UIs in React#
What if you could construct the user interface your user needs as they use the application? That’s what David Khourshid explores in his talk. Prepare to learn about state machines while at it!
Farzad Yz — Abstract component modeling in React#
Farzad Yz discussed how to extract state management from your application while sharing it with different libraries or even platforms (think JavaScript/React or Elm).
- Farzad’s portion (with Luca) begins 23:23 at the podcast.
- Online slides
- pdf slides
Conclusion#
Especially developments, like state charts, seem to be the bleeding edge at the moment. It would not surprise me, though, if techniques like this became more popular during the next years as people discover the benefits.
There’s some upfront investment but at the same time you’ll get code that’s easier for other people to reason about while improving test coverage. For example, it’s possible to generate integration tests based on a state chart.
Developments, like append-only development, have potential to change the way we approach state design as it forces us to think in a different manner.
Time will tell how the ideas evolve and developers adopt them in their daily work. In some ways it’s back to the basics as I remember learning especially about state machines over a decade ago but for some reason it’s only now that they are starting to make their way to web development.