There are many too-strong opinions on the “right” way to do configuration but they primarily come down to these options:
Why resort to the complexities of dynamic code generation and compilation at runtime?
Yetibot is now on Docker!
Type classes provide a way of achieving ad hoc polymorphism
Clojure has a useful macro called cond-> — let's explore a Scala equivalent
The three Monad laws may seem pretty abstract at first, but they're quite practical
The freedom to do anything you wish is rarely a good thing, whether you're an experienced engineer or a 2-year-old child
It wasn't until I was well into my twenties that I learned how to really learn
Within any big tech corporation you will find many disparate teams