> I disagree that being less precise is a flaw.
> Biological evolution shows us how far you can get with "good enough".
That are valid points when speaking about human-human interactions where we can allow ourselves for much more freedom in forming thoughts. But still, written text never will be as expressive as face to face communication when you can hear, see and feel emotions. So even for humans, a raw text is not enough. But it's good enough for biological brains.
When speaking about human-computer interactions, you are just being ignorant. Programming is engineering, and engineering is not biology. Biology allows itself for freedom and randomness, in engineering we rather avoid that kind of stuff unless it's a part of the job. Would you use a "good enough" banking system? Would you use a car with "good enough" safety features? Would you happily cross a bridge which is just "good enough"?
We invented computers to replace humans in critical jobs requiring fast and precise actions. Natural language is not sufficient to give precise instructions concisely because it was never meant to. Sure you can hammer nails with pliers, but... we have hammers.
> In such a world, I would prefer to be an expert in writing specs rather than to be an expert in implementing them in a particular programming language.
Words of a man who didn't choose his career path properly.