You’re probably already using a few tools to automatically check your software — like linters, automated tests, code formatters, or a type-checking compiler. These are all great, and we use them at Supercede too. The more checks we can run, the better. And the earlier in the development process, the better. What I’ve noticed over the years though, is that we tend to focus on more advanced, often esoteric forms of analysis. With training and practice, we can express our application’s l...