The bloat of edge-case first libraries

How building edge-case first led to bloated, overly-granular libraries and what we can do about it