On Fri, 2013-05-17 at 14:44 +0200, Lars Tørnes Hansen wrote:
Hi.
Hello Lars,
I want to join the Fedora project.
I am a software developer, and have an idea about creating a program
that I think could be very useful.
Sounds great. Do you mean something on the lines of "easylife"[1]. There
are quite a few actually.
I want to create a program, which is a program that guides a user
through a complicated (from an end-user point of view) process of
doing something.
To make the program most useful, the program should make it easy to
use (rpm) packages.
This means that if a developer of a guide, marks an item as a package
type, where kind="rpm", the program knows the kind of action that are
possible to do with it, and let's the developer of a wizard choose,
which kind of actions should be possible in this wizard - the user
can always overwrite that behaveiour by switching the application to
advanced mode at runtime, where all actions are possible to do.
I think you need to look at "MimeType". Applications already know what
kind of files to handle. Check the desktop file specification.[2]
The program is a (GTK+) GUI.
It works by interpreting description files.
* Design is done with a file that uses Cascading Style Sheets syntax.
* The work flow is described with something that looks like HTML, but
it isn't a HTML document, and the work flow is done by using hyper
links.
* Things a user can interact with has event handlers, which is a link
to a function inside a python script.This is where the "doing
something" part is done. The program itself creates the GUI and
collects information, which always is accessible from the Python
script.
I don't think creating a guide can be done much easier:
* Creating HTML-like documents should be familiar for web developers
* Python is used to getting the things done. Python is not JavaScript,
but luckily Python is some of the most friendly beginner programming
languages. I think it will be OK to Python as the scripting language..
* Design with CSS (Cascading Style Sheets) syntax - not
browser-standard CSS. CSS syntax should also be familiar to web
developers. The things that are different are the properties and their
values.
BTW,
I had never seen sound or video be used in a guide program. However it
could be interesting to support the use of sound and video in a guide,
and see how they are used by the guide-program developers, and the
end-users response to sound and video.
Please note that I don't want to create a GTK+ language binding for my
own high-level web-like (without the browser headache) programming
language, but it could for sure be interesting to do that sometime in
the future.
For now, it is should be much more limited.
How about webkit in gtk? A lot of programs use it, gnome-online accounts
for example?
What do you think, good idea?
Does something like this exists now?
Like I said, various "helper" programs already exist. I'm not sure if
you're looking to develop similar software. I personally advise people
against using helper software. Here's why:
1. People never learn how the system actually works. They never learn
how to use yum, install an rpm, install flash etc., which are really
*simple*. It just needs a little patience to look for what command to
run.
2. When a helper software installs stuff, most of the time, the user
isn't aware of what exactly happened. When something breaks, they have
no idea where to look.
3. Most of the helper software I see currently is aimed at installing
non free software. While it's a user's choice to use non FOSS software,
he/she should be aware of the fact. Clicking "install flash" is not the
same as reading the Fedora wiki page on Flash[3] and understanding why
we don't ship it.
A lot of users are not interested in knowing what's actually happening.
They just want it "to work". They're free to use these programs. As a
fedora community member, I'd prefer teaching them, rather than providing
short cuts :)
[1]
http://easylifeproject.org/
[2]
http://standards.freedesktop.org/desktop-entry-spec/latest/
[3]
http://fedoraproject.org/wiki/Flash
--
Thanks,
Warm regards,
Ankur: "FranciscoD"
Please only print if necessary.
Looking to contribute to Fedora? Look here:
https://fedoraproject.org/wiki/Fedora_Join_SIG
http://fedoraproject.org/wiki/User:Ankursinha
http://ankursinha.in/blog