Template Method Pattern Revised (2018)

Optional Is the New Mandatory

And Monads for All: The State Monad

Single-Responsibility Principle done right