You're assuming that you can find a programmer who is very self-motivated, cares about your project, and is willing to obsess over it (and is paid accordingly).
In the real world, giving even an above average freelance coder a vapid spec will result in something undeveloped that you both hate, even with constant feedback.
In the real world, giving even an above average freelance coder a vapid spec will result in something undeveloped that you both hate, even with constant feedback.