"All specs are buggy"
So then you start out with a buggy implementation. This could either create vastly more work in the long run, or it could be a huge head start. It all depends on your product, the resources you have available, your sticking points, etc. But there are too many successful examples, like Digg and Squidoo, to completely write off the model entirely.
All specs are buggy - they don't spec something out fully, or they spec it and it's wrong when you put it in front of users, or they specify two features that when you try to combine them really don't work well. You can only discover these problems by trying them, because there're basically infinite ways to fail. If you rack your brains trying to think of everything that could possibly go wrong with your spec, you'll inevitably get bitten by something you didn't think of.