Robert Vogt

Digital Strategist, smartive AG

Robert Vogt

Digital Strategist, smartive AG

Robert Vogt

Tackling Software Complexity with State Machines

The mental model frontend developers have to maintain of their software becomes more complex as business rules and workflows are increasingly moved to client applications. When an app's codebase reaches a considerable size, it becomes difficult to follow architectural decisions, onboard new team members or understand how individual parts of the software interact with each other. Finite state machines can help to visualise sequential logic, web application flows and code coherence. Thanks to their deterministic nature and explicitly defined transitions it's easier to catch bugs, invariants and undesirable side effects in advance. XState is a JavaScript implementation of Finite State Machines which helps us to write and integrate them into our apps, to help us keep our user interface deterministic and our code base easier to maintain. In this talk we'll explore FSM together and see how they can improve our applications.

About

With a passion for digital products, Robert works on concepts and the implementation of complex web applications at smartive — a digital agency based in Zurich. In the last decade, he's worked for various web agencies in Switzerland in different roles. More recently he's been exploring Design Systems, Progressive Web Apps and how to deliver good, lean products fast.