Episode 20 - June 8, 2020

State Machines, XState & Vue with David Khourshid

00:00 / 00:00

This episode is sponsored by...

Special offer - $20 off

An exclusive offer for Enjoy the Vue listeners, sign up today and use promo code 'VUE2020' to receive $20 towards your new account.

Code: VUE2020


About our guest: David Khourshid

Welcome to Enjoy the Vue! Today, we have special guest, David Khourshid, who works at Microsoft doing web development. His interests are mainly with animations, front end stuff, State management, and State machines. We also have a guest panelist, Sarah Dayan, who was a past guest on our podcast, Episode 11. She is Tech Lead of the Doc Squad at Algolia. On today’s episode, we will talk about State management, State machines, Statecharts, Animations, and Compare XState to Vuex, and so much more. Download this episode now!


[00:01:28] David explains about XState and the concept of State machines.

[00:02:42] In a lot of his talks, David references a paper from 1987, so Tessa wonders how David got into State machines and Statecharts.

[00:06:01] Sarah ask David how does it feel to be at the root of this pattern rediscovery in the front-end world and how do you feel about seeing those tried and true patterns slowly emerging front end?

[00:08:44] Ari asks David to give an example of a common scenario that we probably have all dealt with where a state machine might be better than Boolean state management?

[00:14:12] Tessa wonders how does David recommend somebody goes from, I don’t know what a state machine is to oh, here’s how I can start using them today?

[00:14:28] Sarah mentions about David having a visualizer on the XState website. She wonders if he’s considered pushing it into something that could maybe be a tool and has he considered building something like that to help with collaborative work?

[00:16:44] David talks about testing, especially end to end testing, and how tedious it is.

[00:18:33] Tessa is curious if David ever tries to represent piano playing with state machine? Piano was his major in college!

[00:21:50] Sarah wonders what were David’s big turning points, the big realizations that he made as a library author, since he’s at the fourth major version in three years of XState now. She also asks him when he decided to port XState to Vue, did he encounter major challenges or different challenges that were imported into react?

[00:29:35] Ari talks about having to address this past week, an ongoing problem caused by use of a Boolean state. Sarah asks David what are some of the most creative applications that he’s seen of XState?

[00:33:30] Tessa is curious to hear more about how the state machines work with scoping of events?

[00:36:55] David talks about moving from Vuex to XState.

[00:42:46} David explains why he would like to see more examples of people using state machines in creative ways.

[00:45:27] Tessa wonders if David has any thoughts or has he seen any interesting examples on state machines, potentially opening up a lot more interesting avenues to create dynamic or intuitive or accessible user interfaces?

David's picks

Sarah's picks

Other resources mentioned


Coming soon!