The problem is that there is often&#x2F;always a disconnect between what a client says they want, what they think they want and what they actually want&#x2F;need.  What separates a great developer from a merely competent developer is being able to talk to clients and negotiate that disconnect.<p>A company that simply takes a spec sheet and implements it as written will end up with many very unhappy clients.