On Wednesday 08 October 2003 03:18 am, Vedran Ljubovic wrote:
> Hello list,
>
> I wasn't much involved in Mandrake development until
> now (except translation), but I hope that that will
> change. First I must say that, as a long time Mandrake
> user, I very much appreciate the fine work done by
> Mandrake developers, especially from a technical point
> of view. However, I was slightly disappointed to find
> that "the great modifications" in RpmDrake in 9.2 RCs
> were mostly under-the-hub stuff. I'm sure that
> technical improvements were significant, but the
> interface is very much the same.
> Personally, I expected something more radical. I
> expected that the very concept of "packages" would
> finally be abandoned. In this long(ish) mail I'll try
> to explain what I mean. I hope that someone
> (preferably RpmDrake developers ;) will actually read
> this mail and perhaps even make some comments,
> suggestions and - who knows, one can only hope :) -
> maybe they will accept some of my ideas and implement
> them in the next version!
>
>
>
> On numerous occasions I've heard users complaining how
> Linux comes on 3 CDs while Windows XP is only one.
> This shows that they don't realize that these 3 CDs
> carry hundreds of exciting software titles.
>
> The reason for this oversight is, obviously, that
> program installation tools in present Linux
> distributions are intimidating and un-friendly. I
> believe that program installation is the central - and
> simultaneously, the least user-friendly part of every
> Linux distribution. When talking to many newbie
> (Mandrake) Linux users, here are the most frequent
> complaints they have:
>
>  - Packages have cryptic names
> And I don't complain about names such as Konqueror or
> XMMS - those are fine names for programs. The problem
> is that a typical package manager will show something
> like
>       kde-konqueror-3.1.3-1mdk.i586.rpm
> That's just scary. A typical Windows user would never
> install anything having a name like that.
>
>  - Descriptions are too technical
> You don't have to look too far to find examples of
> this. Take ami-1.0.11-5mdk. When you replace all the
> words that a typical user without previous Linux
> experience wouldn't understand with dots, you get
> "Korean ... using ..., support ... mode and ... mode.
> ... mode ... is available from the separate packages."
> wtf???
> Writing better descriptions is not too hard, I for one
> volunteer to do that, but even with the finest worded
> descriptions users can still be at a loss about what
> exactly does each package do. That's why most
> beginner-oriented shareware CDs feature screenshots of
> programs they carry.
So you suggest sticking a screenshot in the rpm?
Further down you say certain people have no business installing an OS. 
Well by extension of that logic they wouldn't have gotten to the installation 
point so this doesn't need to be worried about. I think you should install 
what you think you'll need the subgroups mandrake has are perfect for this, 
no screenshots necessary.
>  - When I install some package, nothing happens
> The problem here is that, when installing a certain
> package, user can perceive absolutely no change in her
> system, so she is left with a scary feeling that
> "something has happened". No desktop icons. No menu
> entries. No new directories. Nothing. Especially, the
> thing user expects is some new entries in her "start"
> menu. Some reasons why this doesn't happen include:
>  * the K menu sometimes doesn't update immediately
>  * some programs don't have menu entries (a packaging
> bug!)
>  * some programs are for console only
>  * some packages actually aren't programs but
> libraries or system components
> Other possible reasons for the feeling of confusion
> are:
>  * Linux file system will throw files around, with no
> distinct package directory
>  * services aren't shown in the systray, or anywhere
> else, apart for some obscure program (such as
> DrakServices)
>
>  - Dependencies
> Not much to be said here :)
>
>  - Program installation pops-up during OS install
> Most users aren't used to install programs together
> with the system itself. Presenting them with a long
> list of cryptic package names is one of the scariest
> parts of a Linux install. A typical user expects to
> install a plain OS, and then to download and
> (un)install programs endlessly until she finds
> something interesting and suitable. 
That's a typical windows user. mdklinux is not windows and users installing 
linux know that (at least most of them do). I don't think this is a real 
problem. If you're coming to linux you already know what to expect and have 
done some reading. This isn't a real problem. I don't think we cater to 
windows users. I think we cater to users _coming from windows_ who a looking 
for something 
1. different and
2. reliable
> I should know 
> that, I've fixed dozens of Windows computers
> completely broken by senseless installing of
> everything found on the Internet.
>
> But the most important issue is:
>
>  - "I don't want to install packages, I want to
> install programs"
> The very word "package" means nothing to the
> unexperienced user coming from a different OS.
> Therefore, they feel "package managers" as something
> alien, an inappropriate tool for what they need.
>
>
> How do distros deal with these issues?
>
> Dependency hell is solved nicely in Mandrake. However,
> other issues remain.
>
> A typical solution, accepted by Mandrake, RedHat, SuSE
> and many other distributions are "package groups". The
> concept of package groups is used at OS installation
> and later the package installer is based around it. I
> find this solution to be a lousy one and merely adding
> to the problem. 
I for one think this is a brilliant idea.
> Here are some of the reasons why: 
>
>  - It presumes that users are too stupid to understand
> the concept of a "software program"
It's brilliant because it solves the problem you noted above about cryptic 
names. Who cares what the name is if you click on the internet group and when 
you boot see that you already have browsers, mail and IM clients (in 
respective menu entries) installed. 
> Never mind the fact that the No. 1 rule of usability
> is "never treat users like idiots"; 
It's not treating users like idiots. It's making life easier. There is always 
the option to select individually.
> there are indeed 
> some users that don't care about programs but rather
> about tasks to achieve.
>    *Well, those users have no business installing an
> OS!!!*
> They should be presented with a preinstalled and
> preconfigured desktop, preferably with a task-oriented
> start menu. 
agreed 
> However there are certain people that do 
> install OSes and programs - what's more, they also do
> it for their friends and relatives. They are perfectly
> capable of comprehending that a task can be achieved
> with several (often weirdly named) programs, and that
> some programs can have overlapping functionalities.
but sometimes they just don't want to be bothered and since clicking on a 
group does the job then let's just keep that little shortcut.
> How else do you explain the enormous popularity of
> sites such as Download.com or Tucows?
because they are central repositories. "your one stop shop for all your 
software needs" we have those to, they're called mirrors :) and then of 
course, sourceforge and freshmeat for those who must have it now.
>
>  - It presumes that a user knows in advance what kind
> of tasks will the computer perform
you've got to be kidding me. you don't know if at least you'll be using 
Internet or Office or Games or Desktop when you install?
> Apart from servers, that's simply not the fact. I
> personally use my computer for everything and
> anything.
Me too so i just choose what i want, _because_ i know what i'll be using my pc 
for before hand -- everything.
>
>  - It installs groups of programs for doing similar
> tasks
> Well, no offense, but that's plain stupid. Why would I
> want both KOffice and OpenOffice.org on my computer?
to see which one you like best is the simple (and only) answer that matters. 
Linux is all about choice.
> What I want is: install KOffice, see how it goes,
> uninstall it, install OOo... and so on, until I find
that's what you want, but that's not what i want. Everybody's different but 
mdk has to find some balance to pleasing me, you and everyone else.
> something to my liking. That's why having a friendly
> program installer rather then installing everything
> with the system is crucial to a wider adoption of
> Linux.
>
>  - It hides some programs away
> Which kind of defeats it's very purpose. No wander
> that most users don't know about software titles on
> their 3 CDs when "Mandrake Choices" (the default mode
> of RpmDrake) will show only about a third of them.
That's why there is the choice to list all packages (which shouldn't ever 
become the default). it's just too intimidating. 
And what's really hidden in madrake choices? Some devel packages, compilers, 
games (ok these should be more accesible since people usually want these), 
sysadmin stuff like traceroute. The people who use these w/ the exception of 
games will have no trouble going into all packages to find them
>
>
> My proposition
>
> Based on the above observations, I believe that the
> following should be done:
>
>  - There should be a new application named "Add/Remove
> Programs"
> In no way am I suggesting that RpmDrake is to be
> replaced. It should be kept as a tool for
> professionals and sysadmins that want to have a
> complete control of their system. However, newbie
> users should be directed to this new Add/Remove
> Programs tool.
i disagree, this *is* what rpmdrake is. 
For the record is was an intergrated add remove program before and people 
(apparently a lot of people) wanted it changed and what the community wants 
...
>
>  - This application should feature _programs_, not
> _packages_
> This is not just about terminology. What I mean is:
> list only packages that are programs and hide
> everything else. A definition of a program is "a
> package that has one or more menu entries". E.g. if
> it's not in the menus, it's not a program and
> therefore shouldn't be listed.
So in essence you want there to be an "Idiot Mode"? I thought that that's what 
the "Mandrake Choices" menu was (which i use)
> "So what do we do with those other packages", you ask?
>    - libraries - should be (un)installed
> automatically, as required, transparent to the user.
NO. this should be an option (and not the default either) 
if implemented just make it an option in the right click dialog. 
> The installer should also be smart enough to remove a
> library when it's not used anymore.
like removing libnspr when mozilla is removed as well? i agree. If used in 
conjunction w/ 
>    - system components - should be dealt with by
> corresponding system configuration tools (i.e. X
> servers should be (un)installed with XFDrake, CUPS and
> PDQ with PrinterDrake, SANE with ScannerDrake etc.)
>    - plug-ins and add-ons - they should be installed
> through a pop-up window that appears when installing
> the corresponding program. For example: presently we
> have packages named licq, licq-kde, licq-console and
> licq-rms. Add/Remove Programs should list just Licq.
> However, clicking on Licq should pop-up a dialog with
> checkboxes labeled "KDE support", "Console support"
> and "Remote management service". Dependencies for
> these packages (such as "at least one of..." and "only
> one of...") should be embedded in the GUI, using
> tricks such as disabled checkboxes, one checkbox
> activating when the other one is (un)checked, radio
> buttons etc.
i hate pop ups. doing this for every package with a plugin: xmms, gaim, licq 
xchat would become highly annoying at install time
>    - console applications - this is a tough one :) I
> think the best solution here is: there should be a
> category named "Console Applications" containing _all_
> of them (so no sneaking lynx in the Browsers
> category!), with some console applications behaving
> like libraries (i.e. if user installs K3b, cdrecord
> should be installed automatically) or using mentioned
> pop-ups (i.e. Kooka now support both gocr and ocrad,
> so a pop-up should appear with two appropriately named
> checkboxes)
but who knows what the diff between gocr and ocrad is? 
I don't.
>    - development libraries and source code - similar
> solution
>    - other packages - should be dealt with by special
> purpose programs (i.e. fonts should be installed with
> FontDrake etc.)
>
>  - Programs should be listed under their real names
> Short version: just use the Summary tag instead of
> name+version
I agree with this -- finally :) 
> Long version: in most cases, this will not do. Summary
> contains a short (one sentence) description - what we
> need is a name with proper capitalization and spacing.
why the proper capitalization and spacing does anyone here except english 
professors really care? :p
> Therefore: a new RPM meta-information tag
>
>  - These programs should be categorized
> Something along the lines of "All packages, by Group"
> in RpmDrake. However, those categories are horrible.
> Why don't we just use the same categorization as used
> in menus? That would be very intuitive for the user. I
> would also volunteer to develop a new categorization.
> To get a clue, look at sites such as Download.com,
> Tucows and other. (Apps.kde.com has so many
> cross-references that it's barely usable. The point of
> categories IMO is that everything is in one and just
> one category.) The two "special" categories should be
> Console Applications and Servers&Tools.
>
>  - Much, much more meta-information
> Given the above observations, these are the least that
> should be added to present RPM meta-info:
>  * a nice name
>  * a category under "the new categorization"
>  * an icon/logo
>  * a screenshot
>  * list of plug-ins and add-ons for use in the pop-up
> (may be achieved with what-requires?)
>
>
> Apart from that, there are some observations with
> present RpmDrake that I will humbly present here :=)
>
>  - Skip the package selection during OS installation
> The rationale is given above. Mandrake should install
> a plain minimal desktop. Only a menu should be given
> to choose between desktops (KDE, GNOME, Others, No
> GUI). This can be discussed further but may I suggest
> a new thread :) This change should vastly simplify the
> installation! The first time wizard (or Galaxy?) could
> offer to run Add/Remove Programs, pointing out to
> users that their CDs contain many programs that are
> just a few clicks away.
>
>  - Combine the Install/Remove/Update tools
> The problem is that these three are presented as
> separate programs (although we know that they are just
> RpmDrake with different params), 
as i said beore we used to have this, but people cried and it got changed :(
> but have very similar 
> appearance with the same categories, buttons, etc.
> Also, in Package Removal checking a package will
> uninstall it, but in Package Installation you need to
> UNcheck a package to uninstall it!? 
eh? no you do, it's check to install and uninstall

> Confusing. I think 
> that there should be a single application with tabs
> named "Add programs", "Remove programs" and "Update
> programs". Or it could be a single list with
> checkboxes, like the SuSE Yast. "Update system" could
> be a separate icon.
>
>  - "Sources" and "Media" mess
> The term "source" was simply horrible. 
yeees, it is.
> The first time 
> I saw it, I thought it had something to do with
> .src.rpm files. "Medium" is much better, but it has
> issues. Mostly because people associate the word
> "media" to CDs, DVDs, tapes etc. but not to Internet
> repositories. The main power of urpmi IMO lies exactly
> in its Internet capabilities. Therefore I present you
> my proposal for a new (ugh! not again ;) name for
> this: "channels".
or how about just "repositories" :)
>
>  - Add more sources/media/channels automatically
> I know that Mandrake will never implement this, but
> what the hell :) one can dream.
> The biggest problem with RpmDrake is 
yah never knoooow...
> that sources are 
> still too complicated to configure. Therefore I
> propose that it connects to a site containing all the
> official and unofficial sources and mirrors and then
> offer to user to activate some of them. This should
> happen the first time RpmDrake is started with the
> Internet connection active.
>
>  - There should be a clearer distinction between
> packages coming from different sources. I.e. I should
> be able to see a package coming from Cooker and the
> one from CDs and choose one of them as I please.
>
>
> The Sample Implementation
>
> Finally, to put my money/time where my mouth is, I've
> put together a GUI proposal in Qt Designer. (This is
> kind of like an application that doesn't do anything.)
> Here are some screenshots:
>
> http://members.smartnet.ba/vedran/mdkarp/screen1.png -
> The main window, showing new categories, nice name and
> meta-info in action, with a clear separation of the
> new "channels".
>
> I can further this design and make some sketches for
> channel configuration (it's all in my head), Update
> Programs screen, the pop-up window etc. If anyone is
> interested I can send the .ui files.
>
>
> Thank you for reading this enormous mail :) I'm not
> very good at English so sometimes it takes me more
> words to articulate my point. Anyway I hope there are
> some useful ideas here.
>
>
>
>
> Regards,
> Vedran
>
> __________________________________
> Do you Yahoo!?
> The New Yahoo! Shopping - with improved product search
> http://shopping.yahoo.com

-- 
Ever wondered why you always run out of breath when you throw up?
Ah, but a man's retch should exceed his gasp, else what's a heaving for?


Reply via email to