A programmer who uses, but does not implement or modify, a library, class, or database. A term popularized by BruceEckel, who attributes it to ScottMeyers.
It should be understood that this does not describe a type of programmer, as it may at first seem, but a relationship between a programmer and a given tool. Unless they are writing a completely new system from the ground up, any programmer is going to be a ClientProgrammer of someone else's work on some level. Examples of this would be: