Problem decomposition

…there are very few inherently hard programs. If you are looking at a piece of code and it looks very hard – if you can’t understand what this thing is supposed to be doing – that’s almost always an indication that it was poorly thought through. At that point you don’t roll up your sleeves and try to fix the code; you take a step back and think it through again. When you’ve thought it through enough, you’ll find out that it’s easy“.

- Bernie Cosell

Scenario analysis: Good programmers always ask themselves - how can this break?

Naming things well

“There are only two hard things in Computer Science: cache invalidation and naming things.”

- Phil Karlton

Consistency:  Consistency across your programming practices allows you to concentrate on essential complexity & and not accidental complexity.

Continuous learning about the developments in software engineering

Full post here, 5 mins read