Stateful UI Engineering with Finite State Machines

MilwaukeeJS
MilwaukeeJS
Public group

MacGregor Partners

207 E Buffalo St #400 · Milwaukee, WI

How to find us

Enter the lobby from the doorway on Buffalo Street and take the elevator to the 4th floor. The MacGregor Partners office is directly across the hallway from the elevator. MilwaukeeJS signs will be posted to help you find your destination.

Location image of event venue

Details

The concept of finite state machines dates back to the 1930s. It is a pattern that enforces and enables the developer to consider the application flow in regards to state. It does this by limiting entities in an application to specific states that they can resolve into, making it impossible for unexpected behaviors that cannot be caught by unit tests.

In this talk we will shorty go over building an application in React through the conventional patterns, show the possible flaws and security risk, and apply XState - A modern library for state machines and state charts. With XState, we can map out our application flow before getting detailed in our syntactic programming expressions.

By the end of this talk we would learn how to use XState, how to build statecharts, and be more conscious about state flow in order to avoid unforeseen bugs like the recent Facetime bug.

Slides can be found here: https://app.ludus.one/b20af08b-21e3-4728-ba88-1960c4c0dd68#1

---

Joseph Rex is a creative technologist that designs and codes. After dabbling in networking and security for a few years, he moved to server-side software development, after which he transitioned into frontend engineering and design. His love for user interaction and interfaces makes it the right niche. Joseph loves making designs, animations, and building GUIs and he writes on his experiences at josephrex.me -- His website/blog/portfolio. He contributes to open source and has worked as an independent contractor for early stage startups and the other clients alike. He is however, looking for frontend engineering job openings at the moment. You can follow Joseph on twitter @josephrexme.

---

Thank you to our Sponsors!

Thank you to MacGregor Partners (http://www.macgregorpartners.com/) for hosting us!

Thank you to NVISIA (https://www.nvisia.com/) for providing food.

---

Code of Conduct (https://www.meetup.com/milwaukeejs/pages/Code_of_Conduct/)