These are some rules I try and stick to while programming. I suggest you have a think about adopting these as I feel they are great values to code by.
Later means never
Saying you will do something later usually means you will not do it.
'I will do the tests for this util later'
This to me means the tests will not get done as you will be doing something else instead.
I try and apply this to creating functions the correct, best way the first time and testing as I go