As a UI guy (coding and designing user interfaces) I often find myself in the odd situation arguing about the quality of userinterfaces with programmers and other "laymen".
I find it somewhat hard to argue about things like colors, icons or layout and it doesn't seem that there is a factual right or wrong. But still - without having a convincing argument I still know (i.e. feel) that sometimes a solution is just wrong. What is your approach to this? Do you let costly usability test decide or even the customer? Do you educate yourself in usability engineering? Do you know of good books (like Joel Spolsky's "User Interface Design for Programmers") that deliver arguments? Do you avoid such discussions?