Reusable components: design or extract?

Are you always DRY or perhaps you follow the Rule of Three? I’m currently working at a software company that has two business models, one is the familiar contracted services dev shop, the other is publishing a public set of API’s to accelerate application development. We always try and look for opportunities to extract a […]