9 min

When Should You Write Tests?

Summary

Testing is non-negotiable for professional software — but when to write them, what kind, and how many is very much context-dependent.

Key Points

  • TDD provides design feedback, not just a safety net
  • 100% code coverage is not the same as good tests
  • Integration tests often give more bang for the buck than unit tests on trivial code
  • Legacy code needs tests before refactoring, not after

8 min

Should You Use Microservices?

Summary

One of the most debated architectural decisions in software development: should you break your application into microservices? The answer, of course, is: it depends.

Key Points

  • Microservices add operational complexity that many teams underestimate
  • Monoliths are easier to develop, test, and deploy — especially early on
  • Team size and organization structure matters (Conway’s Law)
  • When you have genuine scaling or deployment independence needs, microservices shine

6 min

Tabs vs. Spaces: Does It Actually Matter?

Summary

The tabs vs. spaces debate is a classic, but we dig deeper: why does it matter, what do modern tools say, and how should teams make this decision?

Key Points

  • Consistency within a codebase is what matters most
  • EditorConfig and language formatters largely solve the problem automatically
  • The real lesson is: automate formatting decisions and eliminate the debate entirely
  • If you’re still arguing about this, your team needs a formatter