I agree he's got the wrong words, I think he is a programmer, but the author is probably writing this from first hand experience. I think he is saying if you're getting a developer to develop a UI for you, you better make sure they're able to design, even a little.
It would be foolish to think all programmers cannot design.
"I’ve been responsible for doing at least one of these things myself over the years. Consider this post repentance for my user interface sins."
Anyway, the whole post misses the point. Choosing the exact wording of dialog boxes and creating icons are not the responsibilities of programmers working on large projects. If programmers have to take on these tasks, the either the company doesn't have a clue, or they can't afford to hire UI experts, graphic desginers, etc.
I can imagine that there would be some UI mistakes a programmer would make which a non-technical person wouldn't, but I don't think this applies to any of the items in his list.
I think he means anyone who believe that a power user will use Emacs and the command-line and so believes that things like tab order, hot-keys and time-saving in general are of no importance in a GUI.
I have seen many skilled programmers and sys admins with this kind of belief system. The programmers would gleefully produce the kind of dreck which this article describes since they basically think of the end-users as sheep to be herded and occasionally abused.
The ability of produce code and an understanding of GUI standards are two different things.
This certainly isn't a Windows-only-problem. I currently use only Ubuntu/gnome and despite the fact that I've been able to customize it heavily for my purposes, the GUI just reeks of those who don't a sh*t about the GUI user's efficiency.
Every GUI app should provide minimum path from any state of the program to any other state that uses only the keyboard, doesn't flash the screen and requires a minimal number of strokes - and ideally records the keystrokes and lets you play them back. Does this sound unrealiistic or like something a novice wouldn't care about? This exactly what a web browser allows people to do with the address bar.
Yes, I'm sure if this were an article on the symptoms of a python-programmer-designed UI it would be different. I had to learn VB.NET in school, it almost encourages bad design.