Re: GIMP.. the poster child for terrible UI..
Well, there's nothing fundamentally wrong with the UI, in the sense that it eventually lets you do what you want to do. But there are so many little irritations, inconsistencies that should be eliminated by having project-wide UI standards, and errors that should have been caught by even the most basic QA. Such as:
In the Layer menu - Stack - RReverse Layer Order. Assuming that this is not intentional, even if the developer had not spotted the obvious typo then somebody else should have.
Why are there two options for printing? Using the first is a toss up as to whether CUPS takes note of the settings and prints the image as intended. And don't get me started on the inability of Gutenprint to even remember basic settings (such as paper size) and insisting on switching back to the meaningless PPI scaling every time something else in the dialogue is changed.
Every other action that leads to a dialogue has "..." following its menu entry. So why don't Preferences and similar options in the Edit menu have them?
Speaking of dialogues, try opening a random one. See whether the OK button is highlighted as the default - in many cases it isn't (e.g. Filters - Blur - Gaussian Blur). Even if it is highlighted, then see whether pressing Return actions the dialogue - again in many cases it doesn't (e.g. Image - Scale Image). Come on, this is basic UI consistency which, even if the programnmer forgets, should be handled by the UI toolkit.
To demonstrate something that the user should never see, try Filters - Combine - Filmstrip. Click on "Font" and see the error message: Plug-in "gimp-org-film" (/usr/lib64/gimp/2.0/plug-ins/gimp-org-film/gimp-org-film) attempted to install procedure "temp-procedure-number-4" with invalid parameter name "dialog status".
I could go on all day, but these are just a few annoyances that a ten minute exploration turned up. And surely, in 25 years of development, I can't be the first one to have spotted them.