Dillon's blog posts If It Compiles It Works and When It Compiles But Doesn't WorkWiringRefactoringRunning code paths to check it works vs checking assumptions at the gateDillon's talk Types Without BordersShotgun surgery - Parse, Don't Validate episodeOrder independentYou can trust your testsKeeping what you depend on to a minimum helps make things trustworthySemantics can make it harder to predict (like parser)Json.Decode.maybe is almost never what you intendScaling Elm Apps talk by Richard FeldmanGary Bernhardt's Wat videoElm Radio Opaque types episode