[yast-devel] Services UI, a different approach
We have been brainstorming again (offline) about the UI for services. We discussed again about the 4 possible combinations of statuses at boot (enabled/disable) and statuses after clicking "ok" (running/stopped). We even discussed about the 16 possible transitions between all those combinations. Interesting but not extremely fruitful. So I'm thinking in an alternative popup-free interface that makes no assumption about the connection between both concepts. It's described here: https://docs.google.com/drawings/d/1cVv4FY4tWRLAnMG96Cdfvw8asTNpzhFUdKn4TEq8... If the user want to enable and start a service he needs to do both things explicitly (and the other way around). On the other hand, they will never get an unexpected result because the interface stays clearly (with a better wording than the proposed one) what the state would be after saving the changes (even if the service is going to be reloaded or not). Ladislav and myself are both unsure about the details but we both think that the approach is worth exploring. Thoughts? Cheers. PS.- Keep Ken on CC when replying. -- Ancor González Sosa YaST Team at SUSE Linux GmbH -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
Hello, On Mar 5 16:22 Ancor Gonzalez Sosa wrote (excerpt):
https://docs.google.com/drawings/d/1cVv4FY4tWRLAnMG96Cdfvw8asTNpzhFUdKn4TEq8...
If the user want to enable and start a service he needs to do both things explicitly (and the other way around).
Is this user interface meant for experienced users or also for unexperienced users? What I am thinking about is: When an unexperienced user reads in whatever documentation that he must for example "start apache", then YaST should provide a user interface, where even an unexperienced user can find something that matches his intent to "start apache" where YaST does everything so that the "apache" thingy works. Perhaps such a functionality belongs to a YaST module to set up a web server and not to the YaST module to configure individual services? In this case the YaST module to configure individual services is not meant to be used by unexperienced users. Kind Regards Johannes Meixner -- SUSE LINUX GmbH - GF: Felix Imendoerffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton - HRB 21284 (AG Nuernberg) -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
On 03/09/2015 10:42 AM, Johannes Meixner wrote:
Hello,
On Mar 5 16:22 Ancor Gonzalez Sosa wrote (excerpt):
https://docs.google.com/drawings/d/1cVv4FY4tWRLAnMG96Cdfvw8asTNpzhFUdKn4TEq8...
If the user want to enable and start a service he needs to do both things explicitly (and the other way around).
Is this user interface meant for experienced users or also for unexperienced users?
That's something I have been discussing with Ken 30 minutes ago. We cannot be everything for everybody. Maybe I'm oversimplifying but I see three big groups of users. 1) Linux newbies. They may not know the difference between enabled and started. 2) Advanced linux users including sysadmins. They know the concepts and the different services that exist. Maybe they are quite proficient managing some services but they don't know everything about every service. 3) Hardcore ultrageek sysadmins who really really really know that they are doing. Ken and me seem to agreed that, although some parts of YaST could be newbie oriented, the modules for configuring services are probably not. Most of those users will probably not even need to run a service and if they do, they would eventually need to learn about some basic concepts in the process. The third group will probably never use YaST or will never admit they do it, at least. :-) So IMHO, we should focus on users that really know the difference between started and enabled. We should come up with an interface that makes sense for the most common use cases without unexpected behaviors, but we should not assume that they lack the basic knowledge about how a service works in Unix. And I'd say (maybe just my personal feeling) that most users in group (2) would appreciate if YaST does not overdo.
What I am thinking about is: When an unexperienced user reads in whatever documentation that he must for example "start apache", then YaST should provide a user interface, where even an unexperienced user can find something that matches his intent to "start apache" where YaST does everything so that the "apache" thingy works. Perhaps such a functionality belongs to a YaST module to set up a web server and not to the YaST module to configure individual services? In this case the YaST module to configure individual services is not meant to be used by unexperienced users.
Kind Regards Johannes Meixner
-- Ancor González Sosa YaST Team at SUSE Linux GmbH -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
On 09/03/15 10:42, Johannes Meixner wrote:
Hello,
On Mar 5 16:22 Ancor Gonzalez Sosa wrote (excerpt):
https://docs.google.com/drawings/d/1cVv4FY4tWRLAnMG96Cdfvw8asTNpzhFUdKn4TEq8...
If the user want to enable and start a service he needs to do both things explicitly (and the other way around).
Is this user interface meant for experienced users or also for unexperienced users?
What I am thinking about is: When an unexperienced user reads in whatever documentation that he must for example "start apache", then YaST should provide a user interface, where even an unexperienced user can find something that matches his intent to "start apache" where YaST does everything so that the "apache" thingy works. Perhaps such a functionality belongs to a YaST module to set up a web server and not to the YaST module to configure individual services? In this case the YaST module to configure individual services is not meant to be used by unexperienced users.
In any case, an inexperienced user should, in most cases, not be starting a web server or other complex service. There is no way to make an interface for highly complex processes that is simple enough for an inexperienced user without expecting too much of them or simplifying things down, which in turn angers every other user. I think this brings up a good topic: who is YaST made for? From a SUSE perspective it is not the home/inexperienced user -- Kenneth Wimer SUSE LINUX GmbH, GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton, HRB 21284 (AG Nürnberg) Maxfeldstr. 5, D-90409 Nürnberg, Germany Phone: +49 911 740 53-669 -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
Hello, On Mar 9 12:47 Kenneth Wimer wrote (excerpt):
On 09/03/15 10:42, Johannes Meixner wrote:
What I am thinking about is: When an unexperienced user reads in whatever documentation that he must for example "start apache", then YaST should provide a user interface, where even an unexperienced user can find something that matches his intent to "start apache" where YaST does everything so that the "apache" thingy works. Perhaps such a functionality belongs to a YaST module to set up a web server and not to the YaST module to configure individual services? In this case the YaST module to configure individual services is not meant to be used by unexperienced users.
In any case, an inexperienced user should, in most cases, not be starting a web server or other complex service.
Unfortunately I used an existing service name for my example which leads to misunderstanding. I rephrase what I was thinking about: When an unexperienced user reads in whatever documentation that he must for example "start foo", then YaST should provide a user interface, where even an unexperienced user can find something that matches his intent to "start foo" where YaST does everything so that the "foo" thingy works.
There is no way to make an interface for highly complex processes that is simple enough for an inexperienced user without expecting too much of them or simplifying things down, which in turn angers every other user.
A perfect reason to get rid of the YaST printer module because printing is a highly complex process: https://features.opensuse.org/308045
I think this brings up a good topic: who is YaST made for? From a SUSE perspective it is not the home/inexperienced user
From a pure SUSE perspective there is probably no home/inexperienced user ( except they pay for SLE ;-)
What about an openSUSE perspective? Kind Regards Johannes Meixner -- SUSE LINUX GmbH - GF: Felix Imendoerffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton - HRB 21284 (AG Nuernberg) -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
On 9.3.2015 13:33, Johannes Meixner wrote:
In any case, an inexperienced user should, in most cases, not be starting a web server or other complex service.
Unfortunately I used an existing service name for my example which leads to misunderstanding.
I rephrase what I was thinking about: When an unexperienced user reads in whatever documentation that he must for example "start foo", then YaST should provide a user interface, where even an unexperienced user can find something that matches his intent to "start foo" where YaST does everything so that the "foo" thingy works.
Purpose of Yast is to make complex things simpler. Yast can't support "all features" that are supported by the underlying library / service. The famous 80/20 rule says that 20% of features do 80% of the job. Or that 80% of users will be happy with 20% of all available features. For that reason, we just have to simplify and let the other 20% of users do what they need manually.
There is no way to make an interface for highly complex processes that is simple enough for an inexperienced user without expecting too much of them or simplifying things down, which in turn angers every other user.
A perfect reason to get rid of the YaST printer module because printing is a highly complex process: https://features.opensuse.org/308045
In fact, printing is one of the simplest things, and most of the users just want to install a driver for their printer, nothing else. They want to print, not to fine-tune or even understand everything they could. Most of the people buy a car to go from A to B, they don't want to find out which engine-oil or air-filter is the best.
I think this brings up a good topic: who is YaST made for? From a SUSE perspective it is not the home/inexperienced user
From a pure SUSE perspective there is probably no home/inexperienced user ( except they pay for SLE ;-)
What about an openSUSE perspective?
In general, this is easy: as mentioned above, Yast is here to make complex things simpler. Additionally, some Yast modules are usually not useful for most of the home users (like DHCP server), so they are more focused on experienced network administrators. This IMO has to be solved case by case and written in the project README. Bye Lukas -- Lukas Ocilka, Systems Management (Yast) Team Leader SLE Department, SUSE Linux -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
Hello, On Mar 13 16:22 Lukas Ocilka wrote (excerpt):
On 9.3.2015 13:33, Johannes Meixner wrote:
In any case, an inexperienced user should, in most cases, not be starting a web server or other complex service.
Unfortunately I used an existing service name for my example which leads to misunderstanding.
I rephrase what I was thinking about: When an unexperienced user reads in whatever documentation that he must for example "start foo", then YaST should provide a user interface, where even an unexperienced user can find something that matches his intent to "start foo" where YaST does everything so that the "foo" thingy works.
Purpose of Yast is to make complex things simpler.
This is exactly what I am talking about but it contradicts what Kenneth Wimer wrote:
There is no way to make an interface for highly complex processes that is simple enough for an inexperienced user without expecting too much of them or simplifying things down, which in turn angers every other user.
I understand what Kenneth wrote as (perhaps oversimplified): There is no way to make complex things simpler.
In fact, printing is one of the simplest things
A even more perfect reason to get rid of the overcomplicated YaST printer module because printing is so simple that nobody needs the current YaST bloatware module for it. Kind Regards Johannes Meixner -- SUSE LINUX GmbH - GF: Felix Imendoerffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton - HRB 21284 (AG Nuernberg) -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
On 03/05/2015 04:22 PM, Ancor Gonzalez Sosa wrote:
Ladislav and myself are both unsure about the details but we both think that the approach is worth exploring.
Thoughts?
Since nobody seems to be strongly against, I'll start implementing (prototyping at least) this approach next week. Cheers. -- Ancor González Sosa YaST Team at SUSE Linux GmbH -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
On 13.3.2015 15:50, Ancor Gonzalez Sosa wrote:
On 03/05/2015 04:22 PM, Ancor Gonzalez Sosa wrote:
Ladislav and myself are both unsure about the details but we both think that the approach is worth exploring.
Thoughts?
Since nobody seems to be strongly against, I'll start implementing (prototyping at least) this approach next week.
If you try, you might fail, but if you don't try, you will never win. Try, maybe fail, adapt and try again, win. Sounds familiar :)? Lukas -- Lukas Ocilka, Systems Management (Yast) Team Leader SLE Department, SUSE Linux -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
participants (4)
-
Ancor Gonzalez Sosa
-
Johannes Meixner
-
Kenneth Wimer
-
Lukas Ocilka