UI design (and its supersets, interaction design and experience design) are not sooper seecret, but to do a Good user interface you have to have a Good toolset and knowledge -- just like to make a good program you have to be a good programmer.
Any programmer can programmer an UI. But if it was done without regard to the best practices of UI design (reading the UI guidelines is mandatory, but by no means sufficient), it will be an ugly and/or clunky UI.
It can even be successful! What you said about QWERTY is true, because one of the tools in the UI designer's toolset is "to establish the current mental model of an user when dealing with a product or service". And one of the great problems with UI design from the point of view of a programmer is that good UI design requires a lot of user testing and friction -- you know, things the proverbial programmer is not quite fond of.