TL;DR Presentation introducing core principles series.

It is worth clarifying what we mean by a principle.

Principle

From Merriam-Webster online; ‘a rule or code of conduct’

In this series I take a look at the following principles.

Principles  

  • Design by Subtraction
  • YAGNI (You Ain’t Gonna Need It)
  • DRY (Don’t Repeat Yourself)
  • Interface Fragility
  • Confident but Humble
  • If you don’t have a problem, you don’t have a job
  • You learn best from failure
  • The ratchet rule
  • Best practice is guidance, not commands
  • Small steps can mean big problems
  • It’s easier to criticize than to create.

Design by Subtraction

You Ain’t Gonna Need It

Author Note

Double edged sword. Sure you want to avoid writing code you may not need, but adhering to this advice compulsively can lead to poor design and ultimately a LOT of rework.

As with so much, “it depends” and this is something that separates experienced professionals from the herd.

Don’t Repeat Yourself

Author Note

Double edge sword. Over application can lead to poor coupling in your design.

Interface Fragility

Confident but Humble

If you don’t have a problem

You learn best from failure

The Ratchet Rule

Best Practice is Guidance

Small Steps, Big Problems