The power of managed effects
summary
Managed effects treat side effects as data so reducers stay pure and effects move to a controllable executor; a remote calculator demo shows a race condition when increment and double resolve out of order, devtools stop time and let the executor resolve commands, a simple queueing commands fix preserves order and removes the bug. Mentions practical ecosystems: XState, effect.ts, Elm; tradeoffs are mental-model cost and an extra abstraction layer.
AI-written summary · about
chapters (18)
- 0:00Managed effects introduction
- 1:39Side effects challenges
- 4:53Reducer with commands
- 7:04Executor component
- 9:14Purity borders UI/executor
- 11:46Demo startup
- 13:33Debugging race condition
- 14:17Time manipulation control
- 16:28Command tracing observability
- 17:30Bug reporting feature
- 19:15Race condition fix queue
- 20:19Executor queued commands
- 22:05Deploying fixed app
- 22:28Composition powers
- 23:54Production readiness
- 26:47When to use managed effects
- 28:34Trade-offs and challenges
- 29:37Summary
related talks
43mAdiós, useEffect: Managing Effects More Effectively
37mAkka & Monix: Controlling Power Plants
28mThe two ways to manage state
41mRedux Saga, the Viking way to manage side effects
59mMobX and the unique symbiosis of predictability and speed
28mInvisible Code
28mReacting to change
33m2024 09 20 18 DAVID KHOURSHID - useWat
