I'm working on an application whose UI is skin-based, but it looks a little bit old (its graphics were designed more than 5 yeas ago). It's not clear to me whether we should consider a redesign or get rid of the skin and go with the OS default UI (in this case, Windows XP).

I would like to know what facts/reasons/questions can be of interest in order to make a decision. Let me start with the some questions I find important:

13 Answers
13

Distributor Branding gives the final user familiar names and looks - e.g. for support we use a remote desktop access tool that is branded with our name and logo. This makes the tool better integrate with our software, and the customer knows "he's dealing with us".

It's the difference between"to get support for AceMe Works, run the AceMe Remote Support utility"
and"to get support for AceMe Works, run the Fundunga Sambaga Conneculator, and enter AceMe-5647895324 in the Provider field".

Distributor Branding is rather simple to achieve from a implementation POV:

Don't show your name everywhere

Make room for the brander's

(advanced) set defaults, and allow to hide settings

Something simple like reading the window title and a custom HTML / .png to be displayed from an .ini file is often enough. You can - and are encouraged to - stick to a OS/envirnoment standard UI. In addition, you are often expected to set defaults and limit some options - either from being changed, or being displayed at all.

Feelgood Skins - this is what usually receives techie hate. This is the realm of media players etc., often in a commodity market, where establishing an emotional, personal connection between user and product is one of the few competetive edges you can have. I'd avoid it in any other case.

Fundamental problem: it's often hard - or a lot of extra work - to provide a "OS default skin" that actually works like an OS default. Might also be considered a "toy" by a commercial customer.

The following applications don't need separate skins per se, but still a skinning framework with a fixed skin is a straightforward technical choice:

Bobify - you provide a skinnable interface, because you want to be deliberately simpler than the OS default.

There are targets even beyond the "kids & special needs" market. One thing could be a process that's normally perceived as complicated, or niche application of a complex, more powerful tool.

Fundamental problem: You are locked into Microsoft Bob mode. You create an additional barrier for your users to get used to a "full" interface.

Portability - you value consistent UI across platforms more than platform-compatible UI. I'd argue that's rarely a good idea, except maybe in combination with a simplified UI, as above, or a very loosely defined platform (such as the early www).

There isn't a single skinned application I didn't end up hating. Seriously, the skins I've seen are there purely to make the application look "richer" than a normal Windows application and ends up doing nothing more than suck up memory and CPU in order to look like a pig with lipstick on and eventually fail with paint issues.

I loathe skinned applications because all the normal UI I'm used to using has been hidden from me and it takes me longer to figure out where the menu is and which is the default button and whether I might have a pop-up menu available.

+1 Most skins are usally gaudy and distracting. They interfere with usability while ruining the carefully-balanced aesthetics that most modern OSes have in their UI. Individual skinnable apps also make it more difficult for users to customize their desktop. Now, instead of selecting/creating a single system theme that's consistently applied everywhere, they have to deal with dozens of separate skins that destroy any cohesion in the UI. Not to mention some of the slowest loading apps on my computer are Logitech and ATI's skinned driver utilities.
–
Lèse majestéNov 26 '10 at 13:28

3

The issue isn't skinning so much as it is skinning badly or for the wrong reasons. Apple has taken that approach with varying success. If it makes sense for the application, do it. If it adds value, do it. If it's just decoration, definitely skip it.
–
DA01Nov 26 '10 at 15:57

1

I agree with DA01, this question is about trying to figure out what considerations you should take into account before skinning your application... In any case, thank you for your answer!
–
David A. G.Dec 1 '10 at 17:00

The usability of an application shouldn't really be affected by the skin applied. If options are hard to find/use with the default UI skin then you've got problems with your application.

If you competitors support custom skins then having the same for your application is probably seen as important for marketing reasons. You don't want your sales hit because you don't tick a box that your competitor's do, even if it's for something that your users might not have considered in the first place.

As Lèse majesté points out trying to match your competitors feature for feature is probably not a good idea, but you may have to match some features just to make sure you can get your "foot in the door" with clients.

One advantage of just using the default OS UI is that when a new version of the OS comes out your application will just fit right in. It might not use all the latest bells and whistles (Windows Aero) but the basics will be covered in terms of button placement and size, window animations etc. This will go a long way to making your application look professional.

In terms of customisation you might want to consider just limiting it to colour schemes - if you are targeting corporations you can then just change the scheme to match their corporate colours, but the overall look and feel is the same for everyone.

In "Designing the Obvious", Hoekman argues that trying to match competitors feature-for-feature is a losing proposition. A better approach is to focus on the 20% of the features that 80% of users will use, and make that 20% very good and very intuitive. In most apps, skins/themes probably fall outside of the 20% that most people use.
–
Lèse majestéNov 26 '10 at 13:18

1

@Lèse majesté - I did say it was for "marketing reasons". I'll clarify the answer.
–
ChrisFNov 26 '10 at 13:20

Thank you for your answer, there's a lot of insight in it.
–
David A. G.Dec 1 '10 at 17:04

In answer to your second point, I'd suggest that usability can undoubtably be improved by the design. The use of colour, typographical hierarchy and call to action design provides the user with a visual language that will help them 'learn' the application.

This is less about fashion, more about establishing rules and patterns that are an improvement on what is there already. However, if you don't feel you can improve on the OS design, then it might be worth spending your time implementing this carefully, rather than designing everything from the ground up, and causing more problems for you and your intended audience.

Security could get a boost from skinning. Some applications (like AV programs) really should force users to skin the application so when it pops up you know it is really the application and not a fake version of it.

Hey, I'm starting a new project that is doing just that. First to answer your questions:

No, other products in our space don't support theming.

Not necessarily.

Our reasons fit into some of peterchen's answer, but I'll go a little deeper. My company is in a large, but still niche market. Our user interfaces have traditionally fit in the line of business category, which means feature/functionality over attractiveness and usability. In the last decade more competitors have appeared building newer user interfaces that are closer to consumer applications. So, why a themed UI:

Appearance sells. I've seen even technical managers be excited about animations and other non-functional features.

Customers like demos when their logos or color schemes are shown.

Partner branding - Partners, resellers and VARs like their name stamped over as many parts of their solution as possible.

We have a multiple products that address multiple markets. Being able to change look and feel gives us the ability to make the bits and pieces fit into existing markets without looking like a horrible bolt-on. In sales speak terms, easier cross selling opportunities.

The product can appear to iterate/improve faster through cosmetic changes

As for usability, in every rewrite you get a chance at doing it better. Ignoring the items above, most of our day to day users need to go from novice to expert in a few months. Once they achieve that, they need to navigate quickly to find what they need. Old-style green screen or dos interfaces that work quickly and provide rich sets in many cases, might actually be a more usable project. But, few want that including the users themselves.
We've been sold on a sexy graphics style world where usability is a term thrown around to explain it, but where usability isn't the focus. I'm not suggesting you can't make an unusable or poorly thought out product, but too many people equate cool and different with usability.

Users like skinnable user interfaces because they find them fun. At our small office (4 other people), two employees use custom skins on their Firefox browser. One is a huge Lakers fan, the other is quite an artsy person; the Firefox skins fully reflect that.

IMO, skinnable user interfaces are OK up to a point. Some apps cross the line from providing fun skinnable UIs and let users become pseudo UI designers, allowing them to move the location of buttons and various UI elements, relabeling them, and so forth. I wouldn't want to be the tech support person on the other end of the phone/email/forum line.

One advantage could be to increase interest in the application by creating a user community around UI skinning.

There are communities around skinning both WoW and Winamp, which are seen as good examples of custom/skinned user interfaces. The skinning is mainly around app specific controls and layout rather then replacing OS UI. The customization allows users to specifically target the look of the application for their use, eg: WoW UI for specific character class.

If you have a business product you will encounter requirements from customers who want to customize the "skin" according to non functional corporate guidelines. So if it costs less money to customize it that will increase the likehood that the application is choosen (one extra checkmark).

People like making things their own - The average user doesn't care about any of those things you mentioned. The fact that you think people put too much time into looking for a skin should say enough that it is a good marketing/selling point.

Marketing should never, ever have any impact on user interfaces. :) however, thanks for mentioning the fact that users don't care about it, unless I'm the user. ^^
–
rightfoldJan 3 '11 at 19:38

3

@Time Machine - I can't even begin to explain the numerous reasons that statement is incorrect. There are TONS of valid reasons that Marketing should have an impact on UI and I'm definitely not talking about "because we're marketing".
–
Charles BoyungJan 3 '11 at 19:41

I think he meant "Marketing should never, ever have arbitrary impact on user interfaces", aka don't change the interface just because marketing (or anyone, including the designer) says so, modifications should solve a problem or improve a solution.
–
wildpeaksJan 4 '11 at 12:02

One application in particular, Wordpress needs to have skinning as a first class citizen. Other than that, I have never really seen the benefits of Winamp-style skins. Something like twitter or MySpace needs customization, but binary software skins seems old fashioned now.

I am currently writing a sizable LOB application (WPF). I have chosen from the outset to make the application skinable, thus allowing the user to independantly choose their colour scheme and style. I have built this into the infrastructure now as I think it will be damn hard to retrofit. The reasons why I am adding this to a corporate application are:

I have created a boring, corporate
style but have given the users the
option of choosing a pretty,
eye-candy version. Sales is important, even in an internal system.

I have created a developers' style
which is mainly used to visualise the
screen layout.

I have the option of creating a large-font style for users
the poor eyesight.

I have the option of creating a high-contrast colour scheme
for users the poor eyesight.

I have the option of creating a
minimal style for small screen
machines

In many organisations, there are union rules about readability, disabled access, yada yada yada... I don't know if this will become an issue for my app, but at least I have options.