dubuntu-team team mailing list archive
-
dubuntu-team team
-
Mailing list archive
-
Message #00111
Re: GUI design principles
Could I add one more level to that...
In Synaptic you enter a search string and then select from the result,
in this case a list of packages.
In DevBuntu you have a predefined search criteria that you complete:
language, target environment, etc... (This is a significant improvement
since you are given guidance in what to search for)
Then you have a selection to make from the results. I don't think the
results in this case should be packages but rather... let's call it
pre-defined package groups. And then the next level would only be
packages, which the advanced user can fiddle with further.
The idea here is that if you want to install Eclipse for C++ you
actually have to install several packages! Expecting a newbie or even
an experienced guy that doesn't know the "new" tool to know what to
select is where the problem comes in.
So here's what I suggest...
Package groups are assigned to categories. So under the category "IDE"
you'll have package groups called "Elipse", "Quanta Plus", etc and under
the category "Compilers" you will have package groups "GCC", "Townsend",
etc.
All packages directly related to Eclipse (e.g. docs, plug-ins, etc) will
be assigned to the package group "Eclipse". This of course will
included the plug-ins for all the languages, JAVA, C++, Python, etc.
However, packages are filtered by the requirements. So if you stated
the requirement language=C++ you will only see the language plug-ins
that relate to C++, in this case one package called eclipse-cdt. Since
So your actual list of packages will be:
- eclipse
- eclipse-doc
- eclipse-cdt
Now we are making things easier, even for the experience guys. If the
user wants to go and for example deselect eclipse-doc, he can then do
it.
If you look at the pictures of my proposal, this is what I tried to
illustrate on the second screen with the three sections. I'm not trying
to convince you to use my screen layout, just explaining the principle.
Regards
Charl
On Fri, 2009-07-10 at 18:15 +0930, Ryan Macnish wrote:
> Wow...that was a nice speech you gave Charl. The GUI really does
> depend on the back-end to determine some of its code.
>
> What if we take the good bits from each of your proposals and put them
> together?
>
> I prefer one window over 3 or more.
> Let the user pick between an advanced mode and a basic mode. Advanced
> mode obviously having more choice and flexibility(for advanced users).
> We should give users the option to choose say, a specific compiler,
> then if they dont choose one we either dont install one or use the
> default if one is required.
>
> My example is below:
>
> I am a newbie GNOME application developer, I have no idea which IDE to
> use or which programming language to code with. I found this
> "Devbuntu", I fired it up and was presented with a simple choice,
> basic or advanced mode. I was unsure as to which mode i should pick,
> there was a note saying that if you didnt know which one to choose the
> you should use basic mode. So i picked basic mode.
>
> It then asked me which desktop environment i am developing for, i said
> GNOME. It asked me which IDE i would like to use, and if i would like
> to use an IDE at all, i didnt know so i browsed the list and read the
> information provided for each IDE, i decided to just use Gedit instead
> of an IDE. It then did the same for programming languages, i didnt
> know which one to choose so i read each of the descriptions and ended
> up choosing python. It then presented me with a summary of my choices
> and asked me if i would like change anything, i said no. It went ahead
> and installed everything i had asked for. I then started programming a
> gnome application and found that devbuntu had been very easy and
> helpful.
>
> This is how a typical newbie should deal with a GUI. It should be a
> step by step process, asking only one question at a time. Using only
> one window. It should be as informative as possible while keeping the
> information simple.
>
> This is a mixture of both Jays and your idea, what do you think?
>
> > From: charl.wentzel@xxxxxxxxxxxxxx
> > To: dubuntu-team@xxxxxxxxxxxxxxxxxxx
> > Date: Fri, 10 Jul 2009 09:47:25 +0200
> > Subject: [Dubuntu-team] GUI design principles
> >
> > Hi Guys
> >
> > Ok, so I thought long and hard about Jay's comments. And are willing
> to
> > concede on a few issues, but not completely. So instead of trying to
> > design a GUI, I thought we should rather agree on a few principles
> first
> > and let that be our guide...
> >
> > 1. Simplicity
> > On this one, your design was better. I agree that my proposal could
> be
> > overwhelming to a complete newbie. Just remember that this is a
> > two-edged sword.
> >
> > You need to consider simplicity of the back-end as well. Often when
> you
> > create a very simple frond-end you add complexity to the back-end.
> If
> > the back-end is too complex, you scare of contributors and that
> could
> > kill a project.
> >
> > Not saying that it is the case here, but we need to consider both
> sides.
> > I'll settle for a good balance between the two even if it requires a
> few
> > compromises.
> >
> > 2. Consider experienced users
> > Remember that you don't stay a newbie for long. As you grow you want
> to
> > learn more and want to get into more detail. So far your proposal
> does
> > not work for an experience user.
> >
> > An experienced guy would like to give a few basic requirements and
> then
> > look at everything that comes out. But you don't want to simply give
> > him a list of all the packages that match his criteria, then you're
> no
> > better than Synaptic. Hence my categorised display which at least
> sorts
> > the packages in logical/manageable chunks.
> >
> > So maybe an option where you can turn "categorisation" on and off.
> > Maybe be put the packages in the same tree as the categories. Then
> you
> > can choose to see just the packages in a long list or grouped in a
> tree.
> > This could in fact remove at least one window from my design!
> >
> > And of course to limit the results (like you said),
> category/application
> > type could be a search category/requirement as well. But it doesn't
> > negate the necessity of showing categorised results.
> >
> > 3. Linux is Choice
> > This is very important! Be carefull of making too many choices for a
> > newbie, this goes against one of the core philosophies of Linux.
> E.g.
> > if a newbie enters Gnome / C++, you can't simply provide him with
> > Eclipse as the answer...
> >
> > a. You'll get flamed by the Anjuta and Kdevelop guys for not giving
> them
> > a fair chance and you'll make them unwilling to contribute to this
> > project.
> >
> > b. Even a newbie will have to choose something! Of course you don't
> > want to overwhelm him, so forcing him to understand and choose
> compilers
> > and debuggers right from the start is a bit much... conceded! But he
> > needs to at least choose an IDE for himself... even if he chooses to
> > take them all!!
> >
> > c. It's our responsibility to teach them. In Linux it is best if
> you've
> > done your research before you ask a question. We want newbies to
> "grow
> > up" with this in mind, in other words: Equip him to make a choice,
> but
> > don't choose for him.
> >
> > So what we're after here is a balance, not an extreme. We'll have to
> > make it flexible so you can choose the level of detail you want.
> >
> > I don't think these principles should be too hard to agree upon.
> >
> > To be honest, I don't either one of our proposals currently match
> all of
> > these requirements... or at least not in what was explained about
> each.
> >
> > Regards
> > Charl
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~dubuntu-team
> > Post to : dubuntu-team@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~dubuntu-team
> > More help : https://help.launchpad.net/ListHelp
>
>
> ______________________________________________________________________
> Click here to find out more POP access for Hotmail is here!
Follow ups
References