The ability to change the look and feel of a program. Has become very popular lately, for no apparent reason at all. Often people choose themes which are nearly impossible for anyone else to use, "but they look cool!"
Themes at a low level, such as the widget library have at least some argument, in allowing the user flexibility to customize their environment to their tastes. This I can accept as a valid use, since it is generally localized to your own account, and has legimitate uses - e.g. making all fonts larger if you have a visual impairment.
What many apps do, which should cause you to tear your hair out in frustration, and use it to beat the authors senseless with, is to devote much time and effort to making themselves as "skinnable". This means that instead of following the UI guidelines for whatever platform they are targetting, they disregard it completely, and use pixmaps for every control. This means that all of your global font and colour preferences are ignored, and the program looks, feels, and behaves differently from all of your other software. Sure, you can try to integrate it, using a skin specifically aimed at your environment, but the slightest change to your setup will need a CascadeUpdate?.