Go to content

German Velasco - Making invalid states unrepresentable in LiveView

Have you ever found a bug in your LiveView code because your app somehow had an invalid and incoherent state? * “Your total is -$500.” * “Your return flight is [date in the past].” * “The temperature is -600°F.” When programming user interfaces, it’s important that we do not display inconsistent states to our users. But how can we prevent those bugs? By making those invalid states impossible to represent! Join me as we walk through several LiveView examples that have bugs because of invalid states. As we fix them, you’ll learn to model domains in a way that makes rendering invalid states impossible. Your users and your future self will thank you.

October 12, 2021