What if you could catch a bunch of bugs before your code even runs? In this article, Edvard Majakari, rocket scientist #20, shows how using the type system – especially with the help of phantom types – can prevent entire categories of errors. Bonus: there’s a dungeon crawler involved.