dubuntu-team team mailing list archive
-
dubuntu-team team
-
Mailing list archive
-
Message #00110
Re: GUI design principles
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
_________________________________________________________________
POP access for Hotmail is here! Click here to find out more
http://windowslive.ninemsn.com.au/article.aspx?id=802246
Follow ups
References