This is still a great article about making compromises in software development explicit: https://codurance.com/2015/06/17/inflection-point/