"How to Build Good Software" is the Singapore's Civil Service College's excellent white-paper on, well, how to build good software. Much of what's in here is well-stated repetition of common wisdom from the field, but there's one standout and novel section.

csc.gov.sg/articles/how-to-bui

1/

"Software Is about Developing Knowledge More than Writing Code" presents a really important perspective on software development I'd not seen before: that the complex, messy, iterative process of software development is a feature, not a bug.

Author Li Hongyi argues that getting working software out the door involves making tradeoffs, compromises, and paint-to-cover/file-to-fit style engineering. If you do that work in house, you know where the weak spots are.

2/

But if you outsource this work, the shameful secrets become the property of your contractors, who probably don't even bother to document them. So you lose out on knowledge - and even on the ability to buy that knowledge.

3/

Follow

@pluralistic Indeed you also end up with an accountability issue, who is at fault,

Build tools in house ,if the team screw up, then they answer to their employer. The boss answers to shareholders and customers.

Sign in to participate in the conversation
CleverLibre Social

CleverLibre Social is an inclusive social instance for open discussion, learning, and community.
All cultures welcome.
Hate speech and harassment strictly forbidden.