tl;dr version:

1 - I think data should be collected before we make assumptions about our user base.

2 - I think categorizing is a better solution than hiding, as users with lots of kernels/OSs are more likely to be switching more often, vs users with just a few.  The value of reducing clutter is minimized is clutter consists of 3-5 items, and hiding things makes it harder to do what you want to do.

3 - I think removing clutter is a good goal, provided it meets our users needs (see comment #1)


Kirk




On 06/20/2012 12:39 PM, Martin Sourada wrote:

IMHO not a bad idea. I have a few notes though:
 * Fedora 16 and Fedora 17 should be considered separate operating
   systems (*if* they use different root).
Over my technical head, sorry
 * Boot loader should behave look like boot-loader not like an already
   running operating system (the "Welcome to Fedora 17" text is
   misleading)
I thought that since Fedora 17 is managing the bootloader it could draw it however it liked.  Virtual shrug here though as I have no strong feelings either way.
 * Why have Fedora stylistically higher priority than other operating
   systems?
Same reason above.  I'm Fedora-centric :)

IMHO, there are multiple different types of users, who use fedora,
let's divide them into few different groups.
Keeping in mind this is all best guess or has research been done with the user base to pull these personas together?  If not, might be interesting to do a quick survey to find out how many people fall into these categories, or if other categories exist like a single-booter, or would they just fall under the virtualization one?  Are there bootloader needs related to virtual machines (don't know)?  Could we just label them as single OS booters and forget the whole virtualization thing?

I've tried to pull out a primary need from your description for each category for further discussion.

1. Dual booters -- Fedora and Windows (or Mac)
==============================================
These people probably just want to boot the latest version unless
something is broken. They might or might not know what the kernel
versions mean. It might be better to "hide" older kernels in submenu
(or if grub2 allows some better css-like way, why not?)
Primary need: boot latest version of multiple OSs
Frequency of booting non-default option: only when switching OSs (i.e. rarely boot old versions of an OS)

2. *nix enthusiasts/developers -- multi-booters
==============================================
These people will probably have multiple operating systems installed,
maybe even various versions of fedora. Let's say they have (for example)
Fedora Rawhide, Fedora 17, Debian 6.0, FreeBSD 9 and Arch Linux. They
know very well what kernel is, but if all installed kernels are listed
there, the list gets rather large and it gets hard to quickly find the
latest kernel. Especially for the two Fedoras that you can tell apart
only by the fc18 vs. fc17 in kernel release number... While it would
make selecting *older* kernel versions slower, I think it would be
better to *hide* the older kernels in submenu, thus making the main
menu easier to navigate. IMHO the gain of quicker selection of most
recent kernel for each release would outweigh the less frequent slow
down introduced by submenus.
Primary need: boot latest version of multiple OSs
Frequency of booting non-default option: when switching OSs and also when choosing old versions (medium frequency)

3. Massive virtualization
=========================
These people have only one host operating system, the rest is in
virtual machines. IMHO they are the only group that would *not* benefit
from switch to sub-menus.
Primary need: boot latest version of OS
Frequency of booting non-default option: when latest version fails

IMHO, the gains to the first two groups outweigh the loss of the third
group, but well, others might disagree. That's why we discuss things,
right?
So looking at it this way, how does hiding old versions help with any of these people in their primary need?  I think it is a mechanism to make it easier to find the latest OS versions.  Is it the only mechanism?  No - we could also group things as I suggested.

Hiding
Pros: Less visual clutter for persona 1 and 3 (2 may not see it as clutter), emphasizes primary task
Cons: Harder for persona 2 to launch old versions, makes it harder to persona 3 to know what to do when latest version fails (i.e. they have to explore the interface to find the options)

Grouping and labelling
Pros: All options are immediately visible and findable, emphasizes primary task
Cons: Persona 2 will have a lot of visual clutter (though they may not see it as clutter)


So in my mind this comes down to a question of hiding the visible clutter or not.  I'd suggest that some data here would help.  I will also suggest that personas 1 and 3 will not have a lot of visual clutter to see, as how many versions of OSs would they typically have?  1?  3?  5?

So we're hiding this minimal clutter and in the process making it harder for persona 2 to work with their system.

I'm leaning towards grouping/categorizing.  Though again this is all without any data on our user base.  I'm all for streamlining and making things look elegant, but it seems like at least for the personas above the best solution would be grouping.

Kirk