*As users learn more, they understand their needs better, and choose or craft their tools to suit their needs and preferences. This could be anything from being left-handed (raises (left) hand) to having a profoundly greater or less attention span, and can even come down to aesthetics
*Designers who believe in creating the one-best interface and making all their users use it unchanged are profoundly misguided
*Good design offers users the ability to make policy choices and interface decisions. For ultimately best policy choices, good software may offer an API (which GIMP and Photoshop both do), exposing their functions as an API and allowing users (directly or through other developers) to build glue to other software and new interfaces to capacity in their software
*Good software, as this implies, is quite complex. The user grows to learn it, and they craft the software to be more to their liking. Like a well-tailored suit, it comes to feel part of them, and they likely will keep using it for a long time, rather than replace it with the next piece of disposable software. Uncustomisable software is only acceptable to an unsophisticated user who never develops needs that go beyond what the developer decides everyone should like.
This is not a screed against designers (although in my experience, designers often have strange ideas of what makes a good application; a lot of the reason GNOME3 is terrible is reportedly due to a few bad designers with undue influence, and we at least hear about designers in Mozilla pushing to remove all the interface elements in a browser in order to give all that to page content), so long as designers recognise that configurability, interfaces, and power are part of the design of a good app.
I thought about this while considering the differences between GIMP and Photoshop. I feel that GIMP has a broadly better UI than Photoshop (Photoshop is a fine product, for something closed-source, and its tools are much better than GIMP's. I mainly object to MDI; the interface style where an application allocates a single large window to hold all the documents it is managing. I'm coming to understand why people don't mind MDI; sometimes it is because they are not technically sophisticated and tend to run only one application at a time, opening only the document(s) that are relating to a single task, and sometimes it is because the UIs in Windows and OSX are deficient, not supporting multiple desktops by default. In such an environment, duplicating the existing tools one's environment has for managing windows by providing a second set of that within an application is less bad (still not good, but..), and if one isn't likely to be doing two or more unrelated things inside the same application, it might even be organisationally convenient. For someone who keeps software open for reasonably long periods of time, who might be editing a few unrelated documents and working on a few unrelated images, all on different workspaces, MDI is a clear lose. For someone who likes arranging palettes of floating tools (GIMP's style), MDI is also a clear lose, although palettes often don't work well with multiple desktops either (as you change between documents in different desktops, you typically have to manually move them with you). Some of my objection to MDI is also conceptual; I'd rather think in document-centric than app-centric ways, and SDI apps often develop in ways that have custom menus and other customised interface suitable for the type of document being edited, while MDI apps usually must remain generic because it's less sensible for their interface to adapt when subwindows have focus.