Assignment Operator Considered Harmful
Experienced programmers know that the assignment operator (=)…
TDD – Add Second Test For Generic Code
In my last article on TDD, we continued building out the Add()…
Philosophy Friday: Succeed At Failure
Over the years, I have worked at multiple organisations…
Taming The Destroyer Of Software – Part 3
Today we'll conclude our journey into Unnecessary Complexity…
Taming The Destroyer Of Software – Part 2
We've been taking a closer look into Unnecessary Complexity (UC),…
Taming The Destroyer Of Software – Part 1
Yesterday we discovered the real reason software…
Beware Of The Software Killer
What is the factor that, more than any other, determines…
Philosophy Friday: If You Only Had 10 Years Left To Live
"If you had only 10 years left to live, what would…
Separate Implementation and Diagnostic Code
The Single Responsibility Principle (SRP) states…
Fixing The Law Of Demeter – Forwarding Calls
Yesterday we examined The Law of Demeter and…
Philosophy Friday: Do You Control This?
Life is simple: Some things we control and others…
Complexity In Short Functions
One beautiful property of sub-ten line functions…
Favour Object Construction
Should we use object construction or object initialisation?…