At the end of the day there is 1 and only 1 and exactly 1 consideration that matters: What will make life easier for the people that use the software? Nothing else matters beyond that. Nothing. If a ribbon fits that, then so be it. If not, then that's the answer.
-Renegade
I heartily agree. Now, how can you figure out which is right for a given user base? Polling and surveys? Test groups? Guesses? Extrapolations? Assumptions? Going through the work of creating 2 versions and see which is downloaded or "liked"/+1 more?... I don't see any really good solutions.
I also thought I'd weigh-in with my Ribbon feedback. I personally don't like it, and after reading some feedback from others in this thread who feel similarly, I think I might have figured out why. At the risk of sounding like a braggart, I have always had a knack for learning software and finding things in UIs. More than an occasional "ah hah!" moment, as an IT person I have in fact had countless experiences in my life where someone who uses a piece of software daily comes to me with a question I don't know the answer to, and I am able to figure out how to do it in many cases just by a quick look at the app and menus, without further research.
Often times I think this results from just having a good sense, from seeing many app UIs, of what a developer might have named a particular function and the multiple "normal" (as well as "abnormal") places a dev might have put it. A good example is Options/Settings: first of all you have the two names right there, which both often mean the same thing; accessing options can often be done from a Tools menu, but can also be found under File, and even Edit at times, among other places. These things are not necessarily intuitive, but from a lot of experience with different apps, I've learned where to look and what to look for. Believe it or not this extends even to complicated industry-specific apps like Indesign, where I may need to look for a tool to make a shape editable, and it may be called "Convert object to spline" or something. It helps that I know what a "spline" is, for one thing, but even just the word "convert" gives me an initial tip-off that it might be close to what I want, since I know the basic idea of what the function I need should do.
Ok, I'm getting to my point, hehe. The issue I have with the ribbon is that, for me, it makes things *less* discoverable. I can see and agree with that for many basic, day-to-day uses, it's a faster and more fluid UI, perhaps more intuitive for the average user. But as currently implemented, I never get the sense that I am seeing all possible options, which is important if I'm looking for something that I don't know where to find. In general with a menu-driven app, if I look through all the menus I'll know pretty well that I have seen all the functions and if I don't find what I'm looking for, I will at least know that it's sensible to try to do more research, e.g. a web search. With a ribbon I never had that feeling that I have fully explored it, seen all the options, largely because it tries to be just a bit too "clever". Even if ribbons had a mode where you could force all options visible or something, it would be a big improvement. But I think a menu option alongside or instead of the ribbon is still valuable for advanced users or at least certain users, like myself.
As to the original question, if the only reason you're adding the ribbon is as a marketing tool, then I think you have to ask yourself whether your audience is more marketing-driven or functionality-driven. For small utility apps often the latter is the case. Also remember that you can often get a few users being very vocal and making a particular feature seem *very* important, when the reality is the vast majority of satisfied customers just don't see anything (because they're satisfied), so they are under-represented, but in fact represent a much more significant portion of your user base than the vocal minority. Something to think about. As a casual first-step into the consideration you might want to run a poll on your website or even do a mailing to your users, if you have an existing email relationship with them (e.g. regular newsletter send-out).
- Oshyan