A poster to the Joel at Software blog raises this questions today (here the link.)
Subsequent posts ranged in opinion widely. Excerpts:
"They are both equally important. You cannot run a business without customers to consume products and services. You cannot run a business without employees to produce products and services."
"[P]utting the customer first does not mean the customer is always right. That is ridiculous. Putting the customer first means always listening and responding to customers. Seeing everything from their point of view so that your product is valuable to them."
"Obviously, there has to be balance. You have to be responsive to customers, but you really can't allow them to run your business. If customers and their transient requests are always first, then an ISV is run kind of like McDonald's. Everything is short-turnaround patch jobs and chaos. And customers will never ask for and be willing to wait for something to be "developed", because customers tend to find the concept of "projects" to be incomprehensible. So if customers are treated as the #1 priority, you never develop anything new."
"I can imagine Beethoven asking his customers, hey, what do you think that next note should be? Beethoven didn't do that? Why is it that software people think they are machines rather than creatives?"
So what do you think? Who comes first at your company - the customer or the employee? And why?