State Management with Michel, David, Luca, and Farzad

Previous postNext post

If you can’t sell the lib, sell the problem

If you can’t sell the lib, sell the problem

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#

Sketch notes by [David Leuliette](https://davidl.fr)

Sketch notes by David Leuliette

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.

Luca Matteis  —  Append-only development with React#

Sketch notes by [David Leuliette](https://davidl.fr)

Sketch notes by David Leuliette

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#

Sketch notes by [David Leuliette](https://davidl.fr)

Sketch notes by David Leuliette

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#

Sketch notes by [David Leuliette](https://davidl.fr)

Sketch notes by David Leuliette

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).

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.