I mean subjective design decisions are one thing. About half or more of the Haskell projects I've been brought on were in the state: "this project is failing, we can't fix bugs or write new features" and I had to turn it around. Concrete example: A relatively modest, 60k LOC Haskell web application I rewrote started with a build time of 6 hours. Within a few weeks it went from that to 2 hours, then 1 hour, then I think I got it down to about 20-25 minutes. This was a project a previous contractor left behind. Post-rewrite it was about 25k LOC of Haskell, same feature-set. Less needlessly complicated and didn't use GHCJS any more. That isn't a mere matter of taste, a 6 hour build for a 10-20 page web app owned by a year old startup is an engineering failure and inexcusable.