React Round Up
RRU 069: The State Machines in React with David Khourshid
Sponsors
Netlify
Sentry use the code “devchat” for 2 months free on Sentry’s small plan
Triplebyte offers a $1000 signing bonus
Panel
David Ceddia
Lucas Reis
Thomas Aylott
With special guest: David Khourshid
Episode Summary
David Khourshid is the author of a library called Xstate, He has been a developer for 7 years, currently works for Microsoft, his passion is frontendTalks a. In college, he actually studied piano performance, and so he talks about how he got into programming and where he started. The panel discusses his unique husky animation and how he came up with the idea for it and went about programming it.
The panel discusses what a state is in React. David defines a state as a moment in time. States can change, when they do, that’s a state transition. They talk about the utility of states and thinking about your app as a state machine. They agree that describing your code as a state machine makes it easier to communicate and connect with non developers. The panel discusses the importance of learning from other industries, such as approaching programming the same way construction workers build a house. They debate the Waterfall versus the Agile mindset.
They talk about the advantages of programming in React and focusing on the state machine, especially because it is important to be intentional about dealing with concepts separate from other concepts. They share different ways to switch to state machine thinking, one of which is to look at your event handlers and make sure they are doing anything besides dispatching events. David talks about his library called Xstate and the basics of his library and his inspiration, and who else is working in state machines. The finish by discussing industry standards.
Links
Xstate
Keyframers
Bootstrap
David’s husky animation
The Checklist Manifesto
Sion SCXML
QT
Elm
Thunk
Observable
NoFlo
Sketch Systems
State Charts
Follow DevChat on Facebook and Twitter
Picks
David Ceddia:
Atomic Habits by James Clear
Bullet Journal
Thomas Aylott:
The Checklist Manifesto
Thomas’ Youtube Channel
David Khourshid:
Constructing The User Interface with State Charts (check the library first)
Follow David @davidkpiano