• Take time to write automated tests instead of focusing on developing features alone. It will save you manual testing time later and avoid regressions as the code grows.
  • Take time when naming variables, classes, etc, so they are meaningful and self-explanatory. This will ensure other developers can easily grasp the contexts easily from the names.
  • Document your code as you write it. Structure it to start with a brief summary of multi-line functions, inline warnings, and explanations of tricky bits. Record intent rather than implementation.
  • Invest time to think about what you want to achieve while things are still simple. This way, you will not be thrown off track by complexity later.

Full post here, 4 mins read