
> You will never get it right first time,
Speak for yourself, lad.
Couple tricks that helped me:
* Know your business domain inside out, outside in.
* Start from a really basic minimum viable product (prototype).
* Reality-check the thing constantly as it develops / evolves.
* Be humble, accept criticism, be in control.