>Most software developers know when they've screwed up, and when the >client has screwed up. And sometimes when the client screws up, you >rewrite the code and don't charge, 'cause building a long-term >relationship with a cliient can be long-term profitable, even if it is >short-term less profitable. There's a saying: "The customer is always right, ESPECIALLY when they're wrong." One of the distinctions to keep in mind in this discussion is that between a contractor and a contracting business. Andy Warren runs a business. His clients, naturally, expect that business to be run in a business-like way. This is because they want Andy to be there in the long term, and they know what it takes for a business to survive. Many programmers and engineers do contract work. Their methods and procedures are often much more casual. (I'm not saying they should be, only that they are.) Forging a long-term relationship with a client is usually not the focus; finding challenging and well-paying projects usually is. ___Bob