[yast-devel] Handle GUI and text-mode differently - yast ncurses survey
Dear brothers and sisters in YaST, (some of you already discovered the wiki page on $subject, so here is a full explanation on what is this all about) One of discussion topics on our recent workshop was whether we should handle graphical UI differently from the text-mode. However, we found out that we don't know an exact answer to the question who are the users of the text-mode UI, why do they decide to use it, and if we decide to drop it, can we find any equivalent? In order to find some answers to at least some of the above questions, I decided to carry out a small, informal in-house survey among Czech openSUSE developers. The group was rather small and well, yes, developers are not exactly the representative sample of society, but they are human beings (most of them ;-) ), they are openSUSE users, and their opinion counts as well The detailed questionare can be found here: http://en.opensuse.org/YaST_Workshop_Prague_2007_Day_1/YaST_ncurses_survey#Y... Some of the q's were multiple-choice with one open-ended "Something else, please specify..." item, the others were entirely open-ended. What does this small survey reveal? * Text-mode users do not miss eye-candy, but - surprise, surprise ;-) they _do_ miss functionality, they miss more comfortable and intuitive navigation in UI. * They use text-mode because - It is usable even without X - It provides the same functionality as GUI - It is better choice for using over the network - It is faster and has lower memory requirements - and many more, see here: http://en.opensuse.org/YaST_Workshop_Prague_2007_Day_1/YaST_ncurses_survey#W... The entire summary of this topic can be found on this page: http://en.opensuse.org/YaST_Workshop_Prague_2007_Day_1/Handle_graphical_and_... which is a joint work of Jirka Suchomel, Lukas Ocilka and me. And there are 3 possible conclusions of our workshop discussion and this survey: * We should cater for needs of different types of users. We can make one UI an eye-candy for those users that want it, while keeping the other one simplistic, because its users want it to stay so. * While improving look&feel, we should keep in mind that users do need and do appreciate functional equivalency of all UIs * Having ncurses may limit us in certain aspects (no yellow-violet-pinkish eye-candy, no icons in every single table cell, low resolution and mouseless user,...), but there are other areas in which it gives us even more freedom instead of restricting us (we're independent of functional X server, certain web-browser, fast network connection, and we still can have well-usable and functionally equivalent UI). B. -- \\\\\ Katarina Machalkova \\\\\\\__o YaST developer __\\\\\\\'/_ & hedgehog painter
Hi there, If possible, get someone from maemo.org to assiste you. Not sure if their SDK allows for it, but I know they have at least give it some thought. For the most part, you could just have two interface constructors and re-use the logic. YCP is already an appropriate language for this I would think, so just have printer-ui-main-text.ycp and -graphical.ycp, and you wrap it into a nice modular library. As you want more complex interfaces, you want compound widgets. If you want to use a Tab Pages in one interface, and List Items as pages in another, have a wrapper widget that constructs the appropriate widgets and hooks them. When processing events, you need to ping this code -- I guess you could do it behind the scenes from the interpreter or call a function directly from the YCP code. As yast-core is becoming language independent, maybe a XML factory would be in order? Cheers, Ricardo Ter, 2007-10-23 às 11:32 +0200, Katarina Machalkova escreveu:
Dear brothers and sisters in YaST,
(some of you already discovered the wiki page on $subject, so here is a full explanation on what is this all about)
One of discussion topics on our recent workshop was whether we should handle graphical UI differently from the text-mode. However, we found out that we don't know an exact answer to the question who are the users of the text-mode UI, why do they decide to use it, and if we decide to drop it, can we find any equivalent?
In order to find some answers to at least some of the above questions, I decided to carry out a small, informal in-house survey among Czech openSUSE developers. The group was rather small and well, yes, developers are not exactly the representative sample of society, but they are human beings (most of them ;-) ), they are openSUSE users, and their opinion counts as well
The detailed questionare can be found here: http://en.opensuse.org/YaST_Workshop_Prague_2007_Day_1/YaST_ncurses_survey#Y... Some of the q's were multiple-choice with one open-ended "Something else, please specify..." item, the others were entirely open-ended.
What does this small survey reveal? * Text-mode users do not miss eye-candy, but - surprise, surprise ;-) they _do_ miss functionality, they miss more comfortable and intuitive navigation in UI.
* They use text-mode because - It is usable even without X - It provides the same functionality as GUI - It is better choice for using over the network - It is faster and has lower memory requirements - and many more, see here: http://en.opensuse.org/YaST_Workshop_Prague_2007_Day_1/YaST_ncurses_survey#W...
The entire summary of this topic can be found on this page: http://en.opensuse.org/YaST_Workshop_Prague_2007_Day_1/Handle_graphical_and_... which is a joint work of Jirka Suchomel, Lukas Ocilka and me.
And there are 3 possible conclusions of our workshop discussion and this survey:
* We should cater for needs of different types of users. We can make one UI an eye-candy for those users that want it, while keeping the other one simplistic, because its users want it to stay so.
* While improving look&feel, we should keep in mind that users do need and do appreciate functional equivalency of all UIs
* Having ncurses may limit us in certain aspects (no yellow-violet-pinkish eye-candy, no icons in every single table cell, low resolution and mouseless user,...), but there are other areas in which it gives us even more freedom instead of restricting us (we're independent of functional X server, certain web-browser, fast network connection, and we still can have well-usable and functionally equivalent UI).
B.
-- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
Ahoj!
For the most part, you could just have two interface constructors and re-use the logic. YCP is already an appropriate language for this I would think, so just have printer-ui-main-text.ycp and -graphical.ycp, and you wrap it into a nice modular library.
I guess, we'd very much liked to avoid having two .ycp files describing UI for every module. Maintaining n different instances of the code doing the same job is simply PITA (as you can well see it on the example of 3 different UIs for package manager - but that does not belong to this thread :-) ) But possibly as more and more complex GUI features emerge, at some point we will be unable to provide suitable alternatives for TUI. Then we will have to decide, taking into account different needs of different users, and making maintenance as feasible for us as possible. However, does anyone have any example of some complex GUI feature users often ask for and really want to have? I might have overlooked that, or I might be just professionally deformed by maintaining text-mode UI, but I haven't seen any particular example so far. All I've seen were statements such as 'users want YaST to be more cool & sexy' which is (at least for me) very vague description of the problem frozenB. -- \\\\\ Katarina Machalkova \\\\\\\__o YaST developer __\\\\\\\'/_ & hedgehog painter
Dňa Wednesday 24 October 2007 11:33:30 Katarina Machalkova ste napísal:
Ahoj!
However, does anyone have any example of some complex GUI feature users often ask for and really want to have? I might have overlooked that, or I might be just professionally deformed by maintaining text-mode UI, but I haven't seen any particular example so far. All I've seen were statements such as 'users want YaST to be more cool & sexy' which is (at least for me) very vague description of the problem
One of the examples is a complex storage setup. Inspiration: http://www.eclipse.org/aperi/ Stano -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
Stanislav Visnovsky napsal(a):
Dňa Wednesday 24 October 2007 11:33:30 Katarina Machalkova ste napísal:
Ahoj!
However, does anyone have any example of some complex GUI feature users often ask for and really want to have? I might have overlooked that, or I might be just professionally deformed by maintaining text-mode UI, but I haven't seen any particular example so far. All I've seen were statements such as 'users want YaST to be more cool & sexy' which is (at least for me) very vague description of the problem
One of the examples is a complex storage setup. Inspiration: http://www.eclipse.org/aperi/
Good point, however, YaST Storage module (yast2 disk) doesn't need to be sexy. What it really needs is: * To be understandable be several kind of users (provide partitioning wizards, etc.) * To be useful (simple way how to change simple things - less then by twenty clicks) * To have better logic workflows (I know what I want to do, and the UI provides a menu that helps me to get straightly to the dialog I need) Anyway, having it sexy and cool might help :) but the definition what 'cool' and 'sexy' means is often very different for each user. Consider the huge amount of magazines about those themes ;) Bye Lukas
On Wednesday 24 October 2007 11:56, Lukas Ocilka wrote:
Good point, however, YaST Storage module (yast2 disk) doesn't need to be sexy.
"Sexy" is in the eye of the beholder... Look at Partition Magic. Lots of eye candy there. And it sells, for sure partly because of that. Sure, they don't deal with multiple dimensions like LVM, EVMS or RAID. But maybe we could make partitioning less scary for the average user, at least for common cases. I would not flatly exclude storage from the list of tasks that could use more eye candy. CU -- Stefan Hundhammer <sh@suse.de> Penguin by conviction. YaST2 Development SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) Nürnberg, Germany -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
Stefan Hundhammer napsal(a):
On Wednesday 24 October 2007 11:56, Lukas Ocilka wrote:
Good point, however, YaST Storage module (yast2 disk) doesn't need to be sexy.
"Sexy" is in the eye of the beholder...
Look at Partition Magic. Lots of eye candy there. And it sells, for sure partly because of that. Sure, they don't deal with multiple dimensions like LVM, EVMS or RAID.
But maybe we could make partitioning less scary for the average user, at least for common cases.
I would not flatly exclude storage from the list of tasks that could use more eye candy.
Of course, you're right. As I've already written an year ago, Partition Magic is a powerful and understandable tool for storage and I found that Ubuntu partitioner (from Ubuntu 6.06 which I was testing) took a lot 'inspiration' from it. Usability team had been focusing on YaST storage storage but I haven't seen any useful output so far. It's not a trivial task :-/ Lukas
Qua, 2007-10-24 às 11:33 +0200, Katarina Machalkova escreveu:
However, does anyone have any example of some complex GUI feature users often ask for and really want to have? I might have overlooked that, or I might be just professionally deformed by maintaining text-mode UI, but I haven't seen any particular example so far.
The layouting could become a problem as yast-gtk positions labels and widgets differently. I am also not a big fun of pressing Next, Next, Next, because every little Yast screen is so small in scope to cope with the text display size. However, I don't use Yast much. The only tool that I seldomly use and that sucks ass is the disk partitioner. In a graphic interface you could present a better view of the disk, like the simple chart Mandrake/Mandriva has been doing from ever: http://www.howtoforge.com/perfect_setup_mandrake_10_2 There are probably some issues you should address first. The help system is insulting. And the morphing of the window to wizards procedures is confusing. (surely you can't do much about that for the text interface, but in a windowing system, we could maybe use windows?) The out-of-nowhere popups need to go, as they steal focus, or at the very least the taskbar will trick the user to check the window. Dialogs make sense as a result from user's action, and they should be immediate. Cheers, Ricardo -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
The entire summary of this topic can be found on this page: http://en.opensuse.org/YaST_Workshop_Prague_2007_Day_1/Handle_graphical_and_... which is a joint work of Jirka Suchomel, Lukas Ocilka and me.
Hi, all Good to hear yall dont want to drop the ncurses interface, as I like and use it quite often. The survey is very neat. Its pretty unique feature among the linux distros (dpkg-reconfigure really doesnt count). Its well structured, and its explicit in their options (except for some obscure advanced buttons heh), opposing to command line interface (which has the features implicit), people dont know what to expect of the command, or worse, they dont know the command exist, while in yast its in a menu, its organized. I see the survey result is more complete now, heh. I saw it first in the opensuse wiki rss, so it was really a secret page leaking. It seems that having a separate treatment to ncurses and qt GUI was raised to address the concern that it would be hard to keep both with the same backend, while the Qt would a tendency to get more eye candy, while the ncurses wouldnt be able to follow. Well, I think separate is fine, people using the ncurses usually are more linux savvy, and wont care much about it being a bit more spartan than the real thing. Posting here,to let the other thread die. Hi, all Good to hear yall dont want to drop the ncurses interface, I like the ncurses interface. Its pretty unique feature among the linux distros (dpkg-reconfigure really doesnt count). Its well structured, and its explicit in their options, opposing to command line interface (which has the features implicit). The other issue I mentioned is that its easy to tell newbie admins to do this or that, or even to people that arent that familiar with linux, but are with tools of other distributions how can they get their way administering a suse server. I see the survey result is more complete now, heh. I saw it first in the opensuse wiki rss, so it was really a secret page leaking almost as soon as it was posted. It seems that having a separate treatment to ncurses and qt GUI was raised to address the concern that it would be hard to keep both with the same backend, while the Qt would a tendency to get more eye candy, while the ncurses wouldnt be able to follow. Well, I think separate is fine, people using the ncurses usually are more linux savvy, and wont care much about it being a bit more spartan than the real thing. The other thing that sometimes annoys me using it is that there are some navigation glitches. Like in sw_single ncurses you need to rpess esc twice to leave some menus, or you tab and it freezes for half a second. Im not sure what causes that. -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
The entire summary of this topic can be found on this page: http://en.opensuse.org/YaST_Workshop_Prague_2007_Day_1/Handle_graphical_and_... which is a joint work of Jirka Suchomel, Lukas Ocilka and me.
As you can tell from my last emal, I completely lost the control-c/control-v game. Its probably due to a mix of lack of sleep and trying to do 5 things at the same time. Its here now in a complete non-duplicate and non-non-linear way. Sorry. Hi, all Posting here,to let the other thread die. I see the survey result is more complete now, heh. I saw it first in the opensuse wiki rss, so it was really a secret page leaking almost as soon as it was posted. Good to hear yall dont want to drop the ncurses interface, as I like and use it quite often. The survey is very neat. Its pretty unique feature among the linux distros (dpkg-reconfigure really doesnt count). Its well structured, and its explicit in their options (except for some obscure advanced buttons heh), opposing to command line interface (which has the features implicit), people dont know what to expect of the command, or worse, they dont know the command exist, while in yast its in a menu, its organized. It seems that having a separate treatment to ncurses and qt GUI was raised to address the concern that it would be hard to keep both with the same backend, while the Qt would a tendency to get more eye candy, while the ncurses wouldnt be able to follow. Well, I think separate is fine, people using the ncurses usually are more linux savvy, and wont care much about it being a bit more spartan than the real thing. The other issue I mentioned is that its easy to tell newbie admins to do this or that, or even to people that arent that familiar with linux, but are with tools of other distributions how can they get their way administering a suse server. The other thing that sometimes annoys me using it is that there are some navigation glitches. Like in sw_single ncurses you need to rpess esc twice to leave some menus, or you tab and it freezes for half a second. Im not sure what causes that. -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
participants (6)
-
Druid
-
Katarina Machalkova
-
Lukas Ocilka
-
Ricardo Cruz
-
Stanislav Visnovsky
-
Stefan Hundhammer