Skip to content

Software Engineering Practices

6 clusters, spanning half-life layers 0–2: Paradigms, Design principles, Design patterns, Code quality, Testing strategy, Ways of working.

6 clustersLayers 0–2
  • Paradigms

    Layer 0. Encapsulation, immutability and the composition-over-inheritance argument transfer to every language, including ones that claim not to…

    Layer 0none started
  • Design principles

    Permanent, and permanently misapplied. The durable content is knowing when each stops being true, which no principle states about itself.

    Layer 0none started
  • Design patterns

    The vocabulary transfers to every codebase and every review conversation. Several members are language workarounds that a functional language makes…

    Layer 1none started
  • Code quality

    Refactoring moves and review discipline transfer to every language. Formatter configs are Layer 4 and not worth an argument.

    Layer 1none started
  • Testing strategy

    What belongs at each level of the pyramid, and what a mock costs you, transfer to every language and framework. Runner APIs do not.

    Layer 1none started
  • Ways of working

    Flow, WIP limits and estimation error transfer. Ceremony specifics are organisational and local.

    Layer 2none started