• The tricky bit here is picking the right abstractions, there's nothing worse than the wrong abstraction that would take too much work to remove.