What Might UserLinux Look Like?
Lucky writes "This story at Linuxworld talks about some of the potential features of UserLinux, as well as Bruce Peren's proposed community desktop project and its potential features. There's some exclusive commentary by Perens there, too."
If there were a problem with Linux distributions per se it wouldn't be with the Desktop, that's fine in most distributions, it would be in the diverse configuration file locations, they all seem to have differing ideals here, perhaps a more powerful and consented POSIX definition would be an advantage, rather than the current continued divergence. Apt,portage or rpm etc. working on any distribution would be my idea of UserLinux.
Linux is an OS that was and will always be for a few academites plus thousands of system administrators. The path from OS to regular users is long and hard. Just look at OS/X...and notice, people were *paid* to do all that work.
I see a lot of talk (whining/b1tching.. take your pick) about "reinventing the wheel" when it comes to new desktop environments - that make it easier for John and Jane Doe to use linux. --- This is counterproductive, it's not "reinventing the wheel" to write a new window system because you think the previous ones "suck" as far as the average user is concerned. If Motif/Lesstif were really enough, would Gnome, KDE, etc even exist? NO
The UserLinux initiative is an excellent chance for us to penetrate into the mainstream desktop market and start making software houses recognize and implement for linux - because their target audience can finally use the system.
The list posted in the article looks to be a rather [complete] connonical set of programs. --- This has been just a few, incomplete, thoughts ---
If you cannot keep politics out of your moderation remove yourself from the Mod Lottery.. NOW!
One thing the artical failed to mention was browser plugins. I still have a difficult time getting Java and Xine to work with Mozilla on some distros. Following the install procedure sometimes work, but most times it doesn't, and when it doesn't, the hack is different for every system. I know alot of this is the responsibility of the plugin creator, but a standard platform would make it easier for them LSB just doesn't seem to be the fix we hoped it would.
How about they make it not ugly?
Linux could do with a few less 37337 coders and a few more artists and graphic designers, people who have an understanding of what colors work together, and most importantly what proportions are pleasing to the eye. The thing I like least about linux is how so many little aesthetic things are off. Dialog box fonts are a little too big for the dialog box, the borders between windows are too narrow, nothing matches like it should.
What Might UserLinux Look Like?
Well, if the link's any indication, UserLink will look very rectangular. And white. Did I mention white?
And who's Bruce Peren? Nice to see a new name bursting onto the Linux scene!
The coolest voice ever.
More often than not what the (geek) community considers the most important might not be in tandem with what the masses think. So for linux to be a viable desktop for the masses, we need a little mind storming. Going with the obvious of aping MS Windows definitely should be resisted, but fresh thoughts with the masses in consideration would certainly help make postive moves.
There are two kinds of egotists: 1) Those who admit it 2) The rest of us
Typical Linux Geek thinking ease-of-use = dumbing down and that a good interface means pretty icons.
Ease of use means making the computer work the way PEOPLE think, not forcing people to work the way COMPUTERS think.
Linux geeks and other developers, who have been conditioned to think like the computer because of the work they do, have the mistaken notion that advanced computer user means a user who has learned to force the natural human way of doing things into the artificial machine way a computer does things.
Any interface that doesn't force this paradigm is "dumbed down."
The truth is, the Linux geek has simply been conditioned to do things the difficult way, not the natural way. Designing the interface to do things the natural way is not dumbing it down, it's making the Linux Geek's paradigm obsolete. Of course, the Linux Geek doesn't like this, so in a fit of human ego, he looks his nose down on anything that points out the stupidity of his position (working the way the computer demands; being the tool of the computer), and calls it "dumbing down."
Not necessarily the drivers, but printing from differnet applications all have differnet dialogs and printoing subsystems. I LOVE the KDE printer dialog, and CUPS front end. The GNOME equivelent is ok. The Print dialog in Mozilla and other non-KDE/Gnome apps is frustrating at best if you are a new user.
I have been slowly switching one of my clients over to Linux desktops, but the printing situation made the move stall. I settled for XP with Open Office, Firebird and Thunderbird as the base.
Though to give yuou an idea of the level of user I am dealing with they all still think they are using new versions of IE, Outlook and Office (they all swore they would only use MS products). The management approved of the alternatives, the users are none the wiser at this point.
When is printing going to be unified?
Answer: no installation problem because the user doesn't have to install it! Almost no one installs XP themselves.
Get a hardware partner. Sell boxes that have components selected that work optimally with Linux, pre-install and pre-configure the software, and make the desktop so beautiful (by appropriate choice of themes) that people who see the machine in stores have to have one.
What might a Linux user look like?
Y'know there is more to what you said than joke actually. A previous comment suggested computers don't work like the human brain--you are just conditioned to think like a computer.
The command line works more like a humans way of thinking than a GUI, for example:
$ mkdir my_files
which is pretty sensible, aside from the contraction of the words "make directory". A user wants something done, they TELL the computer what to do. IMHO this is more intuitive than, say,
right click on an unoccupied are of screen,
select create new folder,
enter name for new folder,
refresh screen to see new folder.
bah, I'm probably wrong.
C17H21NO4
If Bruce Perens really cared about the end-user experience of linux, why the hell didn't he make a serious push for Debian to have a graphical installer when he headed the project?
Where was Bruce? Oh where was Bruce?
If he so cared about so much about Debian not having desktop marketshare, why didn't he use his position as Debian project leader to speak out against the elitist, anti-end user attitudes that have come to define Debian as a community and a distribution?
Where was Bruce? Oh where was Bruce?
Ergonomica Auctorita Illico!
I think the free OS industry is in a perfect position to create a user interface that is no bound by having to look like anything.
Windows has to keep the same basic look from year to year, or they have a lot of confused users.
Apple is bound by the same strings. although the jump from classic to OSX was a big one, much of the same logic applied to the GUI.
*NIX GUIs are not bound by the same things. There is no "standard interface" other than a terminal.
Why hasn't someone invented a GUI yet that is designed by people with some ergonomic sence?
Optimally the GUI would be very configurable, as well as being appealing to the eyes, and efficient in every sence of the word.
Pretty Pictures!
The Linux Standards Base already deals with file locations and packaging formats. The main problem is that it isn't comprehensive enough. There's still no way you can reliably determine where the IP address for your network card lives across distros.
Something else that'd increase desktop Linux: accurate, up to date documentation. Man pages are hopelessly out of date (read man resolv.conf and find out that most machines should be running local copues of Bind, or the various setting up a SLIP PPP connector on kernel 2.0 docs on TLDP).
The problem came when I tried to go back, and use apt again. The entire apt system maintained its own list of installed packages with no awareness of what was actually on the system, so as soon as it fell out of sink, the entire apt manageer collapsed. My experience on Redhat and Mandrake were similar.
It doesn't have to be like this! It is possible to find out what's on a system. Does a package require python>=2.1? Parse python -V and get an answer you can trust. Do you need a library, get its version with /etc/ld.so.conf` /lib /usr/lib;do ls $i/ libraryName .so*;done 2>/dev/null | grep -v @ | sed 's/.*\.so\.//g' | sed 's/\*//g'
for i in `cat
There's nothing about your system that can't be tracked down by a little intelligent scriptwork. If package managers worked like that, then you'd be able to ignore them on occasion or even break small pieces and the rest wouldn't come tumbling down.
Is anybody working on this? Is anybody interested in working on this?
Sig:Why copyright isn't a fundamental human right
Bruce
Bruce Perens.
I can point a rational 10 year old at a bare box (a COMPUTER, get yer mind outta the gutter!) and hand him a windows installation and a AOL disk, and he'll (usually) be up and running.
/system/ folder" (My what?). But that brings some of the same problems inherent in Windows. Monoculture. If all boxes are set up the same, viruses and hacks become much easier.
Is that a secure box? Nope. But quite a lot of peopole are running their PC configured just like that.
Can the same be said for a Linux installation?
It must have a GUI option for just about everything. "Do you want A or B? Click here."
It must have standard install locations for programs. No "3 files for this must go in your
Linux can be easy to use, once it is set up, and if you never change/install anything.
Plug & pray mostly works on Windows. Plug the printer/camera/joystick in, and it's recognised and set up. Rarely do you have to put the accompanying CD in.
A successful neophyte GUI leads the user to the answer, instead of making him look for it.
Now...the question is, does Linux need a 'neophyte GUI'?
I think the instincts that have driven you to create a new distribution are very much correct. But let me reiterate a few things that I as a user think are important:
A community distribution that serves as an active and clear implementation of an evolving LSB that both software and hardware manufacturers can focus on.
A community distribution that honors the lofty goals that those working on Linux set out to accomplish. This means no-pear seat licensing, in fact, no onerous licensing terms of any sort. Red Hat or SUSE are to expensive for the developing world and even for small non-profits in the US, simply because they added cost of their yearly support agreements is beyond what they can pay. For the record, I am currently using Mandrake as I can freely redistribute it and the keep their security updates on a distributed network of FTP servers, the way that Linux was traditionally distributed. In summary, it is paramount to have a distribution that commits to keeping security updates for at least three years.
Bruce, don't start anew. Linux is all about standing on the shoulders of giants. So if you can adapt Anaconda or Mandrake's installer to your distribution, all the better. These are good and tested tools. The same goes for configuration tools. Borrow as much as you can. Ark Linux also looks very promising and very integrated.
Software installation is not difficult if you have the correct repositories. Preconfigure this for the user and provide a tutorial that shows them how to add new software. Adjust expectations by telling him that all software will be now available just a click away. URPMI and apt-get are great tools. Make them look pretty a la Lindows and the problem is solved.
The desktop is far more complex than it is made out to be. It's not just about email, office software and mp3 playing. It's about accounting and instant-messaging and multimedia. Let's popularize the ogg format a hell of a lot more. Let's include in the distribution's web site a list of radio sites that broadcast in ogg ( i have such a list). Let's work on getting Realplay to really open up its format as they said they would do with their Helix player. All of these things need to happen.
Finally, I think your distribution should link a lot more closely with Linux true power base: the LUGs. Work with them, talk to them, make it easy for them to promote it. Make it easy for them to be involved. A Pan-lug UserLinux forum would be a great thing. I am looking forward to the day when we can differentiate at a higher level of system design. Distribution differences, particularly on the desktop, are getting old. If you are a successful, you may lead other distributions to join forces with you. At least, I would that the smaller ones, ArkLinux, VectorLinux, Yoper and even Mandrake would.
Suerte.
Pragmatism as an ideology is not particularly pragmatic in the long term. Keep it in mind when you dismiss Free Software
I had this same argument with Steve Jobs in 1999. Today we have more people on the Linux desktop than on OS/X, and Steve stood in front of a slide saying "Open Source, We Love It!" at MacWorld.
Bruce
Bruce Perens.
bzzzt! wrong!
.NET. Could MS and Apple have tacked the new features onto their existing OS codebase? Sure, but the result would h
everyone I know that has been toying with the idea of switching to linux has wanted at least one of these things before switching:
1) Macromedia creation tools - maybe wine can do the trick, but not likely.
2) DirectX/game support - not going to happen until the userbase is there, and even then, it's iffy - when was the last time you saw a good game for PC? not terribly frequent, are they? nearly everyone's developing for Xbox now.
3) adobe products - some work, but just barely, though wine. not an option. gimp is not an option, because it doesn't compare. neither are all the other tools - they've got nowhere near the feature list (which is invalueable in something like premiere or ps).
4) easy to configure, and then to change their configuration, from the desktop, using gui tools - people don't really care what's underneath. they want to be able to add, remove, etc. their printers and everything else. sure, there's largely hardware support available - but it's difficult for the users t oset up due to lack of cohesive gui tools.
I hate to say it, but I'd blame X for these shortcomings, largely. Sure, it does what it does well, some might say. But it is bloated, buggy, leaky, and inadequately designed for the task at hand. It's trying to do the wrong thing.
If we had a pluggable gui TK framework with a single programming interface, instead of the individualistic layering we have now, then there'd only need to be one network configuraiton tool, one printer tool, one hardware setup tool. there could even be multiple instances of each functional tool set, all approaching it in the same fashion, but: all these tools could then use the same TK, depending on the desktop used, so that there's not a) extra memory overhead, b) extra dependency requirements, and c) an ugly, incongruous desktop. Additionally, TKs wouldn't have to duplicate silly things, like AA fonts, OGL support, and the like.
Likewise, dialog boxes (save document, etc.) should also be pluggable, so that anyone using any application can use the file navigation method that they want (or that the distribution packager decides). This way someone using GIMP would get the same
I'd say that doing this does indeed need an X rewrite, because the above illustrated design is not possible with the current TK-on-X arrangement. the current situation on the desktop is chaos, at least compared to the majority of other major functionality. With X, everything runs on top of X. With apache, the kernel, emacs, and various other mature projects, things are modular. You don't write a userland hardware driver. You don't use CGI to process PHP. It's modular.
People say "but linux is about choice", and i'd agree. However, X currently doesn't provide any choice: if the average user wants to use a graphical interface, it's a fairly safe bet that they'll be using X. In that case, they're stuck with everything: not GTK or QT, but both; that is, if they want any semblance of a desktop that's comparable to windows.
The perspective that most linux users seem to take is one of the old school unix user, even though most of them are not. "X works fine, that's what X is supposed to do". I'd agree, if the competition was Windows 3.1 w/ modern hardware support with OGL and other 'modern' features - because that's what it amounts to, in my mind. I'm not saying, "the GUI should be integral to the OS", but that the GUI is indeed integral to the desktop, and cohesion is necessary in that regard.
Apple recently realized that their OS and GUI infrastructure from the last millenium was inadequate for the future, integrating OGL into the core of the GUI, vector graphics for everything, and the like. MS has apparently realized this as well about their own products, what with Longhorn looming on the horizion, and is transitioning everything to
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
What's really needed IMO is consistency. Dialog boxes, for example should have the same style across applications &c. - and that doesn't just mean the font size, or even the font; it means having a similar layout (where appropriate), with buttons in a similar order, the same default focus, similar keyboard controls, similar positioning. And the same principle applies right across the GUI, from having the menus arranged in a similar fashion with common menu options in similar places, to similar behaviour of toolbars and palettes, and so on and so on.
The trouble with this is control. This sort of consistency would mean developers willingly going with someone else's design principles and UI guidelines, and too many developers seem too keen on doing their own thing to let this happen, whether from a desire to make their app stand out, thinking (rightly or wrongly) that the usual principles don't apply to their app, incompetence, or just sheer stubbornness.
Not everyone has graphical skills or UI design skills, so IMO we need a way of working where developers who want to can do so without needing those sorts of skills, but without inflicting that lack on their users. I think this is one of the fundamental problems that the free software community needs to address. GUI toolkits are a step in this direction, but clearly don't go far enough.
Maybe we should consider some fundamental reorganisation. With everything split by application, each has its own way of doing things; what if there was some other way of doing things? What if application developers yielded ultimate control of their GUI to a separate project of some kind? I've no idea how this might be done technically, and even less idea how developers could be brought on board, but IMO it's the only way to achieve the sort of consistency, predictability, and least astonishment that more centrally-controlled systems have.
Ceterum censeo subscriptionem esse delendam.
You can't accomodate them all with a single UI.
What is really needed is a virtual layer between the (G)UI and app that would allow GUI "themes", similar to the way that KDE and GNOME have themes for their WMs.
For example, say that I am using a program that displays various objects that can be moved, copied, etc.
Rather than receiving events like <KEY C with CTRL modifier> or <MB1 with mouse coord> , the program would receive events like <COPY> or <MOVE with delta/coord>
Then, the GUI theme that I was using would determine what keys/mouse movements generate what events.
Some programs already allow users to customize keyboard shortcuts and menus.
This would be like that, except that, instead of customizing per-application, it would customize across all applications.
The problem is determining the domain of events that the virtual layer would support.
Operations like copy, paste, and move are easy (and have already been done for things like text boxes); file open/save operations are semi-standard in that many apps use <CTRL+O> and <CTRL+S> (but not necessarily customizable, and certainly not globally); other, less common operations (e.g., drawing a line from point A to point B, adding to or subtracting from the current selection, etc.) could be handled using some sort of modular system (ala XML XPointers, etc).
Those who sacrifice security to condemn liberty deserve to repeat history or something. - Benjamin Santayana
I understand most (95%+) don't have constant contact with Mac OS X, much less play with the developer tools...
But what you just described is how Mac OS X's Interface Builder works! The widgets, guidelines, interface paradigms, and look and feel are encouraged and enforced by the UI; the menubar, window layout, widget placement, texturing, widget types, etc,
It's not perfect; developers can still intentionally (or unintentionally) violate the HIGuidelines, but it's a lot harder than any other IDE I've ever seen.
GPL Deconstructed