On 17.11.2013 14:14, Nico Kadel-Garcia wrote:
While this has been amusing, a lot of useful detail may be lost in the
furor. There are some good philosophy questions about what GUI's
should support for replacing command line tools (the gnome

...


So step back, and let's think "how can we make this work for someone
who hasn't seen it before and doesn't know how to hand-edit config
files"?


My answer would be: With an lightweight web consoles.

Regular desktop users usually are scared by blank terminal window - They do not know what to type, also they are afraid that if they type something wrong and broke something then the severe sysadmin or the tech-y guy who was installed/supporting their system will be very angry :-)

But they are curious to try new things, especially when the new thing could bring them something cool (like e.g. simple loop to convert their incoming media).

The idea about the browser app, helping the users with command lines construction is not mine, I saw this in Cloud9 IDE (advanced browser based IDE, BTW, currently hosting user envs on OpenShift). They have command line at the bottom of IDE space, which exposes many of the IDE operations, offering code completion (visual equivalent of bash completion) for args filling + nice HTML (why not SVG) table results for (some of) the commands.

If this exposure of the command line tools looks acceptable for more wide range of users, we could:

* choose "standard" for backend/webapp communication (e.g. NullMQ/MsgPack with these and these messages)
 * choose "standard" args grammar, for describing valid command lines
* choose "standard" results grammar, for parsing the utility output streams * make a reference metadata for tool or two, which in addition to the grammars, have references to the relevant man page sections for the subcommands and thier args.

Given the e.g. above spec, the authors of current web based terminal emulators would be able to extend their projects, becoming funny and shiny command line composing (and why not simple snippets composing) tools and eventually package for Fedora.

On the other side we can offer to upstreams (or maintainers, where willing) to add this pure metadata, which should be positive for them in two ways:

* possibly their tool becomes easy to use and accessible for wider audience. * most of the projects, will benefit of any pure metadata definition of their in/out grammars and documentation cross-references, because they do not have any.

I think, the Fedora as integrator of the half of the FLOSS software in the planet, with half of the Linuxes as downstreams is a good place for drafting such kind of standards.

After the standards acceptance, the remaining part is easy - we could reuse the comps, tags, requires/provides in the packages, etc, to generate the Big Fat Fedora tools catalog (the pallete of the web console) - When the user wants to try a tool she clicks, we yum installing the thing and system is ready to be blown by this curious user :-)

Kind Regards,
Alek

--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Reply via email to