re: What’s an unpopular software opinion you have? VIEW POST

re: TDD is the only way to create code that is maintainable and extensible. Unless of course, what you are making is utterly simple. Writing code is a ...
  1. I tend to agree that TDD is a bit excessive, but I strongly believe in a BDD approach which is very common in Domain-Driven Design. Writing the failing test cases that describe how what use cases, policies and rules a system should have is much more likely to be known at the start of a project than if "computeXYCoordinates()" returns false :)

  2. Writing code is a mixture of both!

It's science!

  • Computer "SCIENCE" is theory. The way that mathematics, physics and information work together to "determine how many users this application will be able support under peak hours" is a bit of physics, math, and probability all in one!

Computer "programming/coding" is the practical application of such theory. It's also what leans more in the direction of....


  • There are 100s of ways of writing code to perform the same observable behaviour. It takes skill, practice, patience and empathy to create code that is timeless, well-designed and readable for future developers.
code of conduct - report abuse