Kuro5hin.org: technology and culture, from the trenches
create account | help/FAQ | contact | links | search | IRC | site news
[ Everything | Diaries | Technology | Science | Culture | Politics | Media | News | Internet | Op-Ed | Fiction | Meta | MLP ]
We need your support: buy an ad | premium membership

[P]
Developing a More Usable Linux

By edibiase in Op-Ed
Thu Oct 05, 2000 at 12:04:26 AM EST
Tags: Software (all tags)
Software

I'm about to scream. This is about the third time this has happened: I've gotten sick of Linux. I know what follows. I'll "try" Windows 2000, decide that I hate it even more than Linux, and move on to BeOS, FreeBSD, OpenBSD, Darwin, NetBSD, and then, to top it all off, QNX. At the end of that OS run, I'd think to myself, "Hmm. It appears that I do like Linux the best of all the operating systems I've tried," and I'll go back to Red Hat. But, after a while, I'll think to myself, "Red Hat sucks! It's too unstable, too bleeding-edge, and things don't always work the way they're supposed to. I need something that will work right all the time, like Debian. Debian all the way! One-hundred-percent free software, baby!" So I'll enjoy Debian for a while. Then, "Debian sucks! It's too out of date! Nobody releases DEB files for packaging, anyway! I won't be able to use Linux 2.4.x with Debian until the Sun dies, and that's optimistic!" Perhaps after this I'll move on to SuSE, and then to Slackware, and eventually I'll end up at Caldera. Once I get there, I'll be thinking, "Well, Windows 'Whistler' looks pretty neat. I'll give it a shot." In truth, though, I love Linux, but find it incredibly hard to use. I'll admit it, I'm rather a perfectionist in this regard.

Can we develop a more usable Linux?


To answer these questions, let me tell you a little bit about myself. I'm sixteen years old, and have been using Linux for a little while now; I'd estimate about four or five years. I want to go in to computer science when I "grow up." My real interests are in AI and user interface design, though.

My UI interest should come as no surprise, though, because I spend so much time looking at every single interface known to man in my quest for the optimal system. GNOME, KDE, Window Maker, Enlightenment, bash, DOS, Windows 3.11, Windows 95, Windows NT, Windows 2000, BeOS. Those are just the ones I can remember off the top of my head; I don't know how many others I can't even remember!

I think I've come to the conclusion that I like Linux. It's fast. It's free. It's stable. It lets me mess around with programming, administration, and web development stuff, and it's starting to support all of my hardware (Quake III, the Matrox G400 MAX AGP, and XFree86 4.0.1 make a sweet combination). So what's the problem? I've identified several, and possibly you can add some more.

First off, there is nowhere near a useful level of consistency among distributions. Red Hat puts things in different places than Mandrake and SuSE, and doesn't even use the same package management system as Debian, Storm Linux, and Corel Linux. That's not to mention Slackware, or the other (millions?) of distributions that are around.

Not only is there no level of consistency in where distributions put things, but they use different package management programs, and there's no easy way to convert between them! Sure, there are tools like alien, but how much use are they when packages converted from one format to the other will probably only stick things in the wrong places and not interface with any kind of dependency system? The obvious problem is that I, J. Random Software Developer/Company, can't just release the J. Random Development Environment "for Linux." I have the joy of making a version for "Debian GNU/Linux," "Red Hat Linux 5.x," "Red Hat Linux 6.x," "Red Hat Linux 7.x," "Corel Linux," "Storm Linux," and "Slackware Linux." Yeah, I'm really going to want to create seven packages and manage them all. It's easier just to do it for Windows, or, as some companies have been doing of late, to release it for a particular Linux distribution only, and pretty much saying that any other platform is unsupported.

If we can get the consistency problem licked, it shouldn't be much of a jump to move to a unified packaging system, or at flock of compatable ones. Can't we come up with some kind of unified Linux packaging standard, with rules for creating, installing, and configuring packages, and work from there?

My last major point is that all the GUIs I've seen for Linux I'd classify in the "not very useful for Evan" category. I'm not saying that KDE, GNOME, and all the other Graphical User Interfaces out there for Linux are horrible (they're not), but rather that they're not what I feel comfortable using, and they're not something I feel many others would feel comfortable using. Neither GNOME nor KDE give me any real configurability as far as how I want my data to be organized, and they don't seem to have been designed to follow any sort of goal as far as user interface goes. I don't want to give the impression that I'm an expert on this, because I do not follow development of these projects at the mailing-list level, but this is what I know as an end user: it is really, really hard to justify using "mature" Free Software products like GNOME or KDE when they do not provide an intuitively designed interface nor a consistent way of working with the machine. Here's an example: I use GNOME most of the time, and it really irks me that things are so haphazard in it. Using a GUI should be easy, fast, and intuitive. We're moving toward fast (and, in many cases, are already there), but what about easy and intuitive? Let's cause a paradigm shift here: interfaces by, for, and of the users, as opposed to by, for, and of the whimsies of the arbitrary developer. Can we make an interface that nobody's ever seen before; an interface that will make Linux stand out more than it already does as a shining example of an excellent operating system?

Those are my ideas for a good Linux system. In a nutshell: consistency, good package management, and amazingly good GUIs.

But, you may say, this argues for the end of distributions! What good is a Mandrake to a Red Hat if I can just take the Mandrake packages and install them on Red Hat? To this, I say that perhaps distributions will have to do more to stand out. How is Red Hat presented? What does it include out of the box?

I know that the driving force behind any kind of evolution, be it biological or technical, is diversity. But how can we continue to justify diversification to the extent of exclusion? I don't think we can any longer. Yeah, you can go and hack your own system from the source, and only install the source. That's your choice. But let's agree that there are certain things that simply need to be standardized. I'm sick and tired of fighting Linux to get it to do what I want it to do, and I'm sure that many of you agree.

So, what do you make of my little rant? Is it too late for Linux? How much standardization is really necessary? I want to see this turn into something amazingly productive; I believe that the open source/free software concept, when harnessed properly, is the most powerful software development force yet known. Can we harness it to do something about this problem? Do we need to start a SourceForge project? Work with the Linux Standards Base and the distributions to try and standardize the important things? What are those important things? Do we need to standardize interfaces (I don't think so)? What about creating a package management format that works better than RPM and dpkg, and that will let software developers release one package for use with everyone? I look forward to hearing what people think, because we truly have the opportunity here to release Linux from something that, in my opinion, has been holding it back.

Sponsors

Voxel dot net
o Managed Hosting
o VoxCAST Content Delivery
o Raw Infrastructure

Login

Poll
What needs to be done to help make Linux more usable?
o Pretty much exactly what you suggest 31%
o More than what you suggest 35%
o Less than what you suggest 10%
o Nothing; Linux is fine as is 23%

Votes: 60
Results | Other Polls

Related Links
o Also by edibiase


Display: Sort:
Developing a More Usable Linux | 86 comments (85 topical, 1 editorial, 0 hidden)
Fixing Linux (3.12 / 8) (#2)
by pb on Wed Oct 04, 2000 at 10:29:21 PM EST

The best advice I can give you is to just find something you like, and then stick to it.

Personally, I use Red Hat; I've upgraded my system somewhat, but I can tell you right now that 6.2 with all the updates is more stable. I use RPMs, and I get them from rpmfind.net, using the rpmfind tool. If I can't get a program I want as an RPM, I get the source and build it by hand, although if I really wanted to I could build a binary RPM. Although all the window managers are nice and flashy, I just use a bare fvwm2 configuration with four virtual screens bound CTRL+[Arrow Keys]. Most of the time I'm running some xterms and a Netscape and everybuddy. Otherwise, I'm probably at a text console. I compiled the UTAH-GLX version of Mesa for my Matrox G400, and that is pretty sweet, too.

However, if you want to use another distro, and you think having all that stuff installed is just confusing, then work on paring it down to just what you're going to use. If you need something later, you can always install it. If you don't like GNOME, and you want a desktop environment, then only install KDE. If you don't like packages, then compile everything, and keep the source around as needed.

Unfortunately, 'easy' and 'intuitive' are loaded terms. Coming from my original DOS background, xterms are easy, fast, and intuitive. They get the job done quickly, and they don't bug me. Other people, for whatever reasons, might not agree. :)

Also, there is a Linux filesystem standard that says how it's supposed to be laid out. I think redhat follows that, mostly, but I'd have to check.
---
"See what the drooling, ravening, flesh-eating hordes^W^W^W^WKuro5hin.org readers have to say."
-- pwhysall
I agree (2.00 / 6) (#3)
by krogoth on Wed Oct 04, 2000 at 10:58:49 PM EST

That linux needs to be easier to use. This is the third time i try installing, and the first time i try a "real" distro (already done WinLinux and DragonLinux), and once again, i gave up. This time i got pretty far, but the sound and DSL don't work. But for usability/compatibility, although i hate microsoft as much as anyone who has to use windows until linux supports more game, they do spend lots (in the billions$, i hear) on UI research. They have done stupid things in the UI (you know, when it takes you 10 tries to open the start menu when you log in to windows), but they do have some good ideas (although linux has others). For compatibility....i think the only thing you can do if you want to develop for one platform is to pick the most popular desktop environment. I think GNOME and KDE are working on a standard, but until there is one, you can't do much else.
--
"If you've never removed your pants and climbed into a tree to swear drunkenly at stuck-up rich kids, I highly recommend it."
:wq
Re: I agree (1.00 / 1) (#30)
by deaddrunk on Thu Oct 05, 2000 at 05:48:00 AM EST

I find Mandrake the easiest to use, although their newest one has an incredibly flakey gtk that freezes X completely and requires a reboot, but hopefully that'll be solved when I upgrade to Helix Gnome 1.2 sometime soon.

[ Parent ]
More comments... (3.22 / 9) (#4)
by krogoth on Wed Oct 04, 2000 at 11:39:11 PM EST

I hope i'm not spamming...but i already tried to post this twice:

I see two main problems with linux:

1: Everything is based on need. If you need some software, you write it, and if you're lucky you find a few other people to help you. When you're done, you release it and that application is available to anyone. That means that the applications we have are the ones needed by people who had the time and knowledge to develop them.

2: AFAIK, there is little or no research on UIs and needs. Most interfaces are designed by programmers; although they can do a good job, programmers see things differently (i think it has something to do with logic: i'm good at math because i understand how it works, unlike many people in my class, and i'm also good at programming. The 2 subjects are similar, so if you're good at understanding one, you're probably good at the other. This means that programmers would think differently from "normal people"). As i just said, Microsoft spends lots of money on UI research, and IMO, it's easy to learn the basic functions of the windows interface. The best way to do UI research for linux is probably to ask random people to try to do certain things, and see what they do, and have a way for people to send in comments (that will be read) about your interface.

I want linux to replace windows too, but before the problems of applications, interface, and compatibility are solved, it probably won't happen.
--
"If you've never removed your pants and climbed into a tree to swear drunkenly at stuck-up rich kids, I highly recommend it."
:wq
There is no perfect interface. (3.33 / 9) (#5)
by matman on Thu Oct 05, 2000 at 12:18:10 AM EST

There's no such thing as a perfect interface. There's no such thing as perfect software. This is why we're interested in the first place - we like problem solving. First, remember that computers are tools... not every tool in your toolbox has the same handle, or the same purpose. Some tools look totally different, and are used differently... but they're designed for their purpose. There have been many articles that describe the problem with dumbing down an interface - you lose functionality. If you want a GUI to be flexible and suit your needs exactly, go learn c (or whatever language u wana build with) and code your own windowing system... or code down to whatever level you think needs fixing. Frankly, I like non-'intuitive' interfaces, and things that are broken - gives me something to fix. By the way, debian is not behind on the times. I'm running a 2.4 test kernel on a debian woody box, and one on a potato box. Debian is not so hard, or behind. I do think that a default package format will surface - people seem to want one. Go hack some code if you're dissatisfied...

Linux 2.4 on Debian (4.00 / 9) (#6)
by fluffy grue on Thu Oct 05, 2000 at 12:19:37 AM EST

magenta@trikuare ~> uname -a
Linux trikuare 2.4.0-test8 #1 Wed Sep 27 09:07:27 MDT 2000 i686 unknown
See, Debian provides this really neato facility called 'make-kpkg' which makes it quite simple to build your own kernel package off of custom source and whatnot. No packaging problems, you don't have to do all sorts of funky-fresh things like Redhat's equivalent (you're supposed to go through Linuxconf - everyone I know just subverts the package system)...

Oh, and Debian tends to be very up-to-date because the packages are maintained by the people who USE them, and if something's out of date anyway, it's usually possible to take over for whoever's asleep at the wheel (whereas with Redhat, if the author doesn't provide an RPM, you're basically screwed). If you don't know about 'apt', it'd be a good idea to find out about it.

Also, unlike certain other distributions, it's WM-agnostic, doesn't force all users of a system to use whatever the sysadmin set as the default (whereas in RedHat, last I checked it was Gnome OR KDE, not both, and installing both manually was a major pain, and then switching between WMs on a per-account basis was even more painful). It also makes configuring your WM relatively simple, even for more "esoteric" WMs (like fvwm2) it provides nifty configuration scripts (and also has per-user config scripts for other things, like BASH and tcsh), and also for fvwm2 specifically (and probably other WMs) it gives a nice, extensible, flexible default config - none of those crappy monolithic system-global config files; instead, you just redefine the hooks you want to change, et voila.

Oh, and on my Debian-based workstation, I have both the Gnome libs and the KDE libs installed, and various Gnome and KDE apps, and yet - get this - I run neither Gnome nor KDE! But I can use the apps for both! And it never forces me to use any stupid desktop environment just to use one program which just happens to be part of that desktop environment! I've never even TRIED gnome-panel or Kpanel on this machine - I've never NEEDED to! Ha ha!

I run Debian everywhere I can now. All of my computers at home run Debian, when my equipment funding finally comes through I'll be running Debian on my computer at university (right now I have no computer, because the NSF is being slow in disbursing funding this year), and everything stays up-to-date. Yay.

That said, right now Debian's having some major libc issues (so I haven't done an update in a while), but once the shit stops flying around (it already hit the fan), with just a single action (I use dselect, having outgrown running apt-get directly) I'll be able to upgrade all the software on my system very quickly. Even more quickly if US Worst finally gets their collective head out of their proverbial ass and tests my DSL line which I've had for weeks now so that Covad can finally deliver my fucking DSL modem. Ugh. :P
--
"Is not a quine" is not a quine.
I have a master's degree in science!

[ Hug Your Trikuare ]

Re: Linux 2.4 on Debian (2.50 / 4) (#19)
by duxup on Thu Oct 05, 2000 at 02:21:33 AM EST

I tottaly agree, but I just wanted to add:
In the spirit of the story's tittle "Developing a More Usable Linux" I'd like to toss in that compared to many of the other Linux flavors, Deb is still a bitch to install :-)

[ Parent ]
Re: Linux 2.4 on Debian (3.00 / 3) (#22)
by fluffy grue on Thu Oct 05, 2000 at 02:40:14 AM EST

Eh? I fell in love with Debian based on the 2.1 installer, and from what I've heard, 2.2's is only easier, and does a pretty good job of autodetecting stuff. A friend and fellow graduate student of mine recently decided to install Debian 2.2 on some Windows-oriented notebook, and after booting up and sequentially putting in the 3 Potato installer disks, the damn thing detected his PCMCIA devices, autoconfigured via DHCP, selected an appropriate mirror site, and installed the OS with minimal input from him (basically he just had to confirm the autodetection and select which base packagesets he wanted, which is much easier than in RedHat thanks to the nicely fine-grained and minimalistic packagesets, unlike Redhat's base install of what, 200 MB, and something like a dozen incredibly-vague and inconsistent packagesets which include far more than necessary?)
--
"Is not a quine" is not a quine.
I have a master's degree in science!

[ Hug Your Trikuare ]
[ Parent ]

Re: Linux 2.4 on Debian (4.00 / 2) (#31)
by itsbruce on Thu Oct 05, 2000 at 06:07:38 AM EST

Deb is still a bitch to install :-)
It does throw a couple of curveballs in terms of questions that are fairly unanswerable unless you are already familiar with Debian. OTOH, you could argue that the Debian install is kinder than most since it a) doesn't install the kitchen sink unless you insist, b) doesn't turn on huge amounts of risky services by default, c) lets you log in after installation and then configure (or review and reconsider) all the extras you chose and d) actually builds a custom kernel for you.

Stormix and Corel Linux show that it's possible to build a very friendly layer on top of Debian. I think the Debian project can safely leave the user-friendly interface side of things to them and concentrate on getting the fundamentals right. Debian makes the basic configuration of Linux simple and flexible and that is true user-friendliness.

--

It is impolite to tell a man who is carrying you on his shoulders that his head smells.
[ Parent ]
OK, I'll bite... (none / 0) (#49)
by simmons75 on Thu Oct 05, 2000 at 10:57:58 AM EST

/*
whereas in RedHat, last I checked it was Gnome OR KDE, not
both, and installing both manually was a major pain, and then switching between WMs on a per-account
basis was even more painful
*/

OK, that's just 100% pure genuine bullshit. Last I checked RH would install both, and it's more than possible to be WM-agnostic. I suppose you're referring to the fact that RH doesn't use XDM but instead some funky-ass login manager that gives you a drop-down list of windowmanagers. Fair enough.

Here's an exercise for you. edit you .xinitrc or .Xsession file so that you start up a GNOME session and check out the Panel. Guess what? It can display a KDE (right now, KDE1) menu. KDE isn't that forgiving, of course. But guess what else? Nothing prevents you from running KDE apps when you're "running GNOME" (another BS statement) or vice versa. On my Linux-Mandrake box, I run in runlevel 5 all the time; instead of XDM I use Login.app and instead of KDE or GNOME I use Window Maker. Nothing wrong with it; nothing preventing me from doing it. It's a simple operation, really--that some people call it difficult demonstrates the laziness of today's average Linux convert.
poot!
So there.

[ Parent ]
Re: OK, I'll bite... (none / 0) (#57)
by fluffy grue on Thu Oct 05, 2000 at 02:23:16 PM EST

Oh, so have they changed the installer process? Actually, it sounds like the current setup (specify a WM at login time) is pretty nice. I hadn't seen this though - last I used Redhat was, like, 6.1 or something, and even then I didn't use it in much detail. Sorry for not keeping up with every single revision of Redhat.
--
"Is not a quine" is not a quine.
I have a master's degree in science!

[ Hug Your Trikuare ]
[ Parent ]

Re: OK, I'll bite... (none / 0) (#84)
by Michael Leuchtenburg on Sun Oct 08, 2000 at 10:45:23 AM EST

Ever tried adding a WM to that list? I have. It's not pretty.

There's all sorts of weird configuration files, and you need to edit about 4 of them to get it anywhere near working. Maybe there's one global conf file somewhere from which those are generated, but if so, I didn't find it.

[ #k5: dyfrgi ]
[ TINK5C ]
[ Parent ]

Re: Linux 2.4 on Debian (1.00 / 1) (#61)
by edibiase on Thu Oct 05, 2000 at 04:26:55 PM EST

See, Debian provides this really neato facility called 'make-kpkg' which makes it quite simple to build your own kernel package off of custom source and whatnot. No packaging problems, you don't have to do all sorts of funky-fresh things like Redhat's equivalent (you're supposed to go through Linuxconf - everyone I know just subverts the package system)...

Yeah, I thought that the kernel-package utility stuff on Debian was really neat, and it worked really well. I was just under the impression that kernel 2.4.x needed some extra/updated versions of things in order to work in certain cases. I think this is why Red Hat based everything in their 7.0 release on the 2.4 headers; so it would be easy to drop in the 2.4 kernel once it is out. I may be wrong about this.

But that aside, I was also indicating that Debian has a rather long delay between releases, where one has to choose between a "stable" (and increasingly outdated) system and an "unstable" (but more up to date) system. What I meant was that Debian wouldn't be coming out with a release based on the 2.4.x series kernel for a while, not that you couldn't stick a 2.4 kernel nto Debian at the present moment if you really wanted to.

Oh, and Debian tends to be very up-to-date because the packages are maintained by the people who USE them, and if something's out of date anyway, it's usually possible to take over for whoever's asleep at the wheel (whereas with Redhat, if the author doesn't provide an RPM, you're basically screwed). If you don't know about 'apt', it'd be a good idea to find out about it.

Well, it depends on what you mean by "very up-to-date." Perhaps the maintainers of the packages keep their packages up-to-date, but when can I install them on my system? What if the maintainer is building the new packages for woody and I'm trying to install them on potato? I could easily imagine a situation where a package depends on a newer glibc than the current "stable" release, and, as a result, one would need to go out and upgrade several other packages just to get that glibc installed. It's happened before.

apt is ultra-nice. It would be great if, in a new standardized packaging system, there was a central repository where authors could submit all of their packages, and people could use apt to install them. That would be bliss.

Oh, and on my Debian-based workstation, I have both the Gnome libs and the KDE libs installed, and various Gnome and KDE apps, and yet - get this - I run neither Gnome nor KDE! But I can use the apps for both! And it never forces me to use any stupid desktop environment just to use one program which just happens to be part of that desktop environment! I've never even TRIED gnome-panel or Kpanel on this machine - I've never NEEDED to! Ha ha!

Well... uh... you must be very impressed with yourself. I see this kind of condescending attitude you have here, which sounds something like, "Your ideas are stupid because I am a hardcore hax0r and have set up my l33t desktop to use ObscureWM under a version of XFree86 that I personally customized to run three times faster on my hardware. So there!" Please, get off of your high horse. I'm not suggesting that GNOME and KDE aren't interoperable, or that you can't use their apps on different distributions. All I'm saying is that we need to come up with a GUI that is supremely customizable and easy to use. So, yeah, this GUI will give you an xterm and xosview, if that's all that you want. Or, if you're completely new to Linux, you get a great looking UI that's easy, fast, and efficient to use that will allow you to do everything you want to do without shielding you from things.

"More usable" does not mean "padded and cushioned for people who are inexperienced." It means "works well for almost everyone, and lets them do what they want to do how they want to do it, and lets them get it done faster."

[ Parent ]

Re: Linux 2.4 on Debian (4.00 / 1) (#71)
by fluffy grue on Fri Oct 06, 2000 at 01:18:29 AM EST

By 'very up-to-date' I mean that typically, unless you're running a production server, you run the unstable distribution. Note that 'unstable' means 'changes a lot' and not necessarily 'is buggy' - that is, I very rarely have problems with the "unstable" versions of apps under Debian, I just have to upgrade them a lot.

And my point about KDE vs Gnome vs fvwm2 wasn't about eliteness - it was that Debian doesn't force you to use a desktop environment. Last time I used RedHat, RH forced you to use Gnome (to the extent that it was VERY difficult to get other WMs working), though apparently it's changed since then. Yes, I feel that Gnome and KDE are both perfectly powerful and the like, and that people have every right to use them - I just happen to not like either environment (but I like some of the apps from both projects' respective application suites), and I hate how most "friendly" distributions (such as Caldera, Corel, and the most recent versions of RedHat which I've used) make it a major PITA to do things in a way any differently than the distributors have it configured, whereas Debian puts flexibility and configurability first (from a user's perspective).
--
"Is not a quine" is not a quine.
I have a master's degree in science!

[ Hug Your Trikuare ]
[ Parent ]

Re: Linux 2.4 on Debian (none / 0) (#73)
by edibiase on Fri Oct 06, 2000 at 09:28:54 AM EST

By 'very up-to-date' I mean that typically, unless you're running a production server, you run the unstable distribution. Note that 'unstable' means 'changes a lot' and not necessarily 'is buggy' - that is, I very rarely have problems with the "unstable" versions of apps under Debian, I just have to upgrade them a lot.

Hmm, OK. I was under the impression that unstable was just for testing, but perhaps that isn't so. Damn... I just installed RedHat 6.2, too.

Honestly, I'd have to say that Debian is my favorite distribution. It's easy to upgrade, is stable, and has a whole bunch of packages :) Maybe it's time to try it out again (albeit with unstable).

And my point about KDE vs Gnome vs fvwm2 wasn't about eliteness - it was that Debian doesn't force you to use a desktop environment. Last time I used RedHat, RH forced you to use Gnome (to the extent that it was VERY difficult to get other WMs working), though apparently it's changed since then.

Sorry for misreading you :) I agree. Forcing people into a working environment that is not for them is definitely a bad thing. That's why I think it's important to design a completely configurable desktop environment (someone had a neat post below suggesting a UI that is built around your personal specfile that you carry on a smartcard or that's downloaded from the internet).

[ Parent ]

Re: Linux 2.4 on Debian (none / 0) (#76)
by fluffy grue on Fri Oct 06, 2000 at 11:23:33 AM EST

Nah, 'unstable' exists so that you don't have to wait for new distribution releases all the time. That's why they don't release very often - the people who care about being bleeding-edge all run unstable. It's a well-known tradeoff.

FWIW, Webster agrees with me:

Un*sta"ble (?), a. [Cf. Instable.]

Not stable; not firm, fixed, or constant; subject to change or overthrow.

-- Un*sta"ble*ness, n. Chaucer.

Unstable equilibrium. See Stable equilibrium, under Stable.

Webster said absolutely nothing about "software which crashes." ;)
--
"Is not a quine" is not a quine.
I have a master's degree in science!

[ Hug Your Trikuare ]
[ Parent ]

Re: Linux 2.4 on Debian (none / 0) (#82)
by edibiase on Sat Oct 07, 2000 at 07:17:20 PM EST

Nah, 'unstable' exists so that you don't have to wait for new distribution releases all the time. That's why they don't release very often - the people who care about being bleeding-edge all run unstable. It's a well-known tradeoff.

And that's why I'm now running Debian "woody." :)

[ Parent ]

Re: Linux 2.4 on Debian (none / 0) (#83)
by Michael Leuchtenburg on Sun Oct 08, 2000 at 10:40:55 AM EST

The only problem is when that auto-upgrade breaks things, as it did for me two days ago. Sendmail stopped working. Reinstalling it, reinstalling the exact same version, fixed it, oddly enough.

Oh, and if you use dselect, try aptitude. I've used both, and I like aptitude a lot more.

[ #k5: dyfrgi ]
[ TINK5C ]
[ Parent ]

Already there....BSD (3.33 / 9) (#7)
by mr on Thu Oct 05, 2000 at 12:22:34 AM EST

>Those are my ideas for a good Linux system. In a nutshell: consistency, good package management, and amazingly good GUIs.

BSD is already there.

Consistency - Unlike Linux, there isn't 150+ seperate versions. You don't look for config files in /etc/blah, /var, /opt, /usr/local, etc.
Under BSD, the ports work to place them in /usr/local if it is an ad-on.

Good package management. You have /usr/ports and the ability to remake and upgrade the system with 5 commands.
cd /usr/src
make update
make buildworld
make installworld
reboot
It has been like that for YEARS, and only now SOME linux distros feature this.

Good GUI's. Guess what? As long as it is open sourced GUI...it will be on BSD. Although there were some issues with GNOME...they were not writing portable code for Unix...they were writing linux specific code.

Instead of running around drilling holes in others boats, and wanting the rising tide to float Linux, perhaps being more INCLUSIVE will get you support.



Re: Already there....BSD (1.50 / 2) (#27)
by greentea on Thu Oct 05, 2000 at 04:03:22 AM EST

I think what will make a more usable *nix will be different things to different people. I think bsd is doing quite well, and linux should take a couple of cues from them.
I did my time administering Linux for about a while, tried out bsd, and haven't looked back. Much of the problems addressed in the rant were my gripes with Linux as well, so I tried out openbsd on a co-workers recommendation.
The default install was pretty minimal, allowing me to use the ports tree to install anything extraneous I wanted, and the configuration files are generally in /etc/. The ports tree is awesome. I've heard things about Debian(?)'s apt-get distribution method, but have yet to try it out.
Window Managers? I like windowmaker, myself.
I honestly think a more usable linux is a bsd. But to make a *nix more usable to newbies, the primary thing that comes to mind is additional documentation (man pages are not as useful if you don't really know what you're doing in the first place). Like the Linux Documentation project or something like that. Once you learn enough to be able to help yourself, *nices become much more usable.
MFGT
[ Parent ]
Re: Already there....BSD (none / 0) (#48)
by simmons75 on Thu Oct 05, 2000 at 10:51:42 AM EST

Huh? I can (usually) run binaries that were compiled on a Red Hat machine on my Linux-Mandrake box...ditto if they're compiled on a Debian box, a Slackware box, etc. If I have problems, I just grab some libs and have at it, or better, recompile.

Can you compile an app on a FreeBSD box and run it on a Darwin box?
poot!
So there.

[ Parent ]
Re: Already there....BSD (none / 0) (#79)
by psicE on Fri Oct 06, 2000 at 07:09:41 PM EST

The point he's making (and I'm making now) is that FreeBSD is FreeBSD, end of story. There is no longer a BSD operating system, but FreeBSD is always the same. With Linux, there's distros, and there's differences between them. Because there's only one "distro" of FreeBSD or NetBSD or OpenBSD or Darwin or whatever other 4.4BSD derived OS you want, you don't need inter-distro standards, it's all built in. So even for the average user, FreeBSD (or actually, now, OS X over Darwin) is easier to use because it's consistent. That way, you don't have to relearn the OS each time you reinstall/upgrade.

[ Parent ]
Linux is not a baby's toy... (2.40 / 15) (#8)
by chewie on Thu Oct 05, 2000 at 12:31:18 AM EST

I'm afraid that I'm going to sound elitist with this comment, but alas, it is something I can live with. To reitterate, Linux is not a baby's toy. The software isn't packaged in big, bright colors and large pieces that no child could possibly choke on. It doesn't come with fire retardant clothing nor child safe lids. It does not come with a chaperone, nor even the tender hearted hermit to raise and nurture a young lost soul.

Linux is the big, bad attitude, emperor penguine. It's the 6 foot tall monster of sleek muscle. Screw with Linux, and you're likely to get your hand snapped off, and your chest caved in...

That is, unless you're a soul hungering for knowledge and power. If you're patient and persistent. If you really have the desire to be a step ahead of the pack, if you do your research, and if you're careful while feeding this hungry beast. You cannot be frivolous with this wild animal, this ever evolving species. It will hurt you, your loved ones, and anyone you care to put in its path. It's up to you to learn how to tame the beast.

Let me repeat if you didn't hear me the first time, Linux is not for the weak! For that matter, neither is FreeBSD, HURD, or any other OS designed in the Open Source, Open Community spirit! If you want to play with the best, you'd be better be ready to fight. If you want a nice interface with big squishy toys, use Windows or Macintosh and reboot your machine to your heart's content.


assert(expired(knowledge)); /* core dump */
Re: Linux is not a baby's toy... (2.66 / 3) (#10)
by dboyles on Thu Oct 05, 2000 at 01:00:11 AM EST

Linux is more difficult to use than an OS like Windows 98 because it's significantly more powerful. A Camry is easier to drive than an F1 racer. I've been using Linux for right at a year, and I've just recently gotten to the point of being pretty proficient with it (meaning I either know how to do something or know where to find out how to do it).

The explosion of Linux over the past few years has taken it from a 100% geek OS to a more technically mainstream. I'm not a CS major, I'm in mechanical engineering. It started last fall when I was running a semi-private FTP server off of this box which was running Win98. Tired of rebooting daily, I switched to Linux. There have been times when I wanted to throw the computer out the window. I'm probably going to hell for some of the things that I've said while trying to correct a problem. But it's just so much damn better than Win98. It's far from being for everybody. I have friends that I consider pretty intelligent who can barely follow basic installation instructions for a piece of software (much less edit makefiles, resolve dependencies, etc.).

What was the question again? Can we make a better Linux? Sure, there are a lot of things that I would like to improve, but I don't have the technical ability. As it is now, I think Debian is the best distro out there. I run Woody without issues, and have been running 2.4.0-test4 for about a few months without problems. I use Linux because I know when I walk in here in the morning to check my email before class the thing won't crash. I use it because it's fun to play with all sorts of configurations. I think that's what it's really about - freedom to do what you want.

--
"Complacency is a far more dangerous attitude than outrage." -Naomi Littlebear
[ Parent ]
Re: Linux is not a baby's toy... (3.42 / 7) (#12)
by costas on Thu Oct 05, 2000 at 01:04:04 AM EST

Yes, linux is not for the faint of heart, but *there is no good reasons why it should not be*. Power does NOT have to equal obfuscation. The Unix legacy is a legacy of ad hoc design, duct tape and bailing wire that is powerful because its jumbled mess of 'modularity' has been the only platform successfully use powerful hardware.

Look at Plan 9, OS X and even Windows 2K: power can be used through an elegant design, even thru a pretty GUI.



memigo is a news weblog run by a robot. It ranks and recommends stories.
[ Parent ]
Power does NOT equal Obfuscation... (3.00 / 4) (#13)
by chewie on Thu Oct 05, 2000 at 01:16:57 AM EST

Power does NOT have to equal obfuscation.

If you're hinting that Linux is a work of obfuscation, I would like to ask how? To whom? What audience feels that Linux is difficult to understand? If you're trying to hint that Linux should be as easy to use as Windows and look as eye-appealing as Macintosh, then by all means, roll up your sleeves and get coding! You can join any one of the many teams dedicated to bringing Linux to the average user's desktop. Try the Gnome development team, or perhaps the KDE development team. Perhaps you should look into working with Linuxconf.

Whatever you think the solution might be, please be more than a town gossip, be a doer. The Open Source community is built on the work of people who see a problem and tackle it, by people who aren't afraid to get their hands dirty.


assert(expired(knowledge)); /* core dump */
[ Parent ]
Re: Power does NOT equal Obfuscation... (3.33 / 3) (#25)
by Holloway on Thu Oct 05, 2000 at 02:58:17 AM EST

I'm not sure, not at all, but I read that comment as attacking the attitude that as Linux is made more user friendly it looses it's flexibility and power; a common and silly argument against Linux for the masses.

(I'm glad of the numbers. Driver petitions now have that much more weight).


== Human's wear pants, if they don't wear pants they stand out in a crowd. But if a monkey didn't wear pants it would be anonymous

[ Parent ]

Re: Power does NOT equal Obfuscation... (none / 0) (#58)
by costas on Thu Oct 05, 2000 at 02:24:46 PM EST

You're right. I *am* doing something. I am in the tech demonstrator stage now, but I hope I will be able to talk about it soon.

memigo is a news weblog run by a robot. It ranks and recommends stories.
[ Parent ]
Re: Linux is not a baby's toy... (2.50 / 2) (#36)
by pw201 on Thu Oct 05, 2000 at 08:08:30 AM EST

Yes, linux is not for the faint of heart, but *there is no good reasons why it should not be*. Power does NOT have to equal obfuscation.

That's true to an extent. But power generally does mean having to do some mental work (that is, if we take power to mean the ability for the user to do lots of things quickly). A powerful might not be suitable for people who are used to something like Windows, because Windows is about mediating your experience of the machine so you don't have to work too hard to understand it. (I'm obviously cribbing from In the Beginning was the Command Line here). Is Linux (or any other Unix) really obfuscated or does it just take time to learn because there's less mediation going on? There's an awful lot of good documentation and help available.

[ Parent ]

Re: Linux is not a baby's toy... (4.00 / 1) (#37)
by itsbruce on Thu Oct 05, 2000 at 08:18:32 AM EST

Yes, linux is not for the faint of heart, but *there is no good reasons why it should not be*. Power does NOT have to equal obfuscation. The Unix legacy is a legacy of ad hoc design, duct tape and bailing wire that is powerful because its jumbled mess of 'modularity' has been the only platform successfully use powerful hardware.
I think you overstate that. In fact, Unix has an elegant, powerful and unified API - the API of text. Every tool takes text input, gives text output and has a range of command line options - and this even extendes to many of the GUI tools. This means that any new Unix tool instantly has available to it the power of all the others - and vice versa.

--

It is impolite to tell a man who is carrying you on his shoulders that his head smells.
[ Parent ]
Re: Linux is not a baby's toy... (none / 0) (#55)
by Ruidh on Thu Oct 05, 2000 at 01:18:09 PM EST

My wife manages to use our Linux desktop with a minimum of fuss and bother. I installed Red Hat with Gnome, gave her a few extra menu items to mount and unmount floppies and CDs and she just uses it.

It took me a little while to figure out how to get my unsupported cell modem to work properly, but that's been working well for over a year. I run KDE there, but I can switch to Gnome when I use the desktop.

Once you get it installed with the software you need and want you can just use it. Our correspondent in the head story seems to spend his time installing and configuring and little time getting use out of his installation.

It can take a lot of time to figure out what software you want to use, but eventually, you have to quit fiddling and just use it. Forget trying to find the perfect system. Get something you are familiar with and stick with it. Upgrade the packages that have security implications, but don't become a slave to your system.

I use the following software regularly: mutt, Netscape, X-chat, gimp, vi. The system runs sendmail, fetchmail, dip (for the cell modem) and sshd. The desktop/server/gateway runs samba and IP chains and doubles as another desktop. It all just works.

"Laissez-faire is a French term commonly interpreted by Conservatives to mean 'lazy fairy,' which is the belief that if governments are lazy enough, the Good Fairy will come down from heaven and do all their work for them."
[ Parent ]
More usable. (4.50 / 10) (#9)
by mindstrm on Thu Oct 05, 2000 at 12:35:35 AM EST

The problem lies in your definition of 'usable'. Usable for what?

I'm not simply saying that linux is good for one thing, and windows another, and Be another... certainly any of them (especially linux) can be changed. It's not static.

But I find one very common problem among computer users is they really don't know what they want.

Do you want it all? You can't have it. IT doesn't exist. No one OS has everything right now, regardless of what is theoretically possible. MS has marketshare. Linux has openness. MacOS has ease of use. All of these things have their ups and downs for different reasons to different people.

Is it too late for linux? Too late for it to do what, exactly? Become the most common desktop OS in the world? That'll require a marketing department, because regardless of how far ahead we think it is technically, it's very openness would allow other OSs to catch up if they chose to do so. Get a marketing department with Microsoft's pull (god forbid) and it might happen. That's the only way ANY os would get the marketshare MS has right now.

What something includes out of the box still doesn't matter too much. Marketing does. That is, if we care.

I say let linux be what it will. I feel no compulsive need to make everyone use linux. I don't feel like pushing it on my parents or my friends. If they are getting into Comp. Sci or Comp. Tech, I will push it on them as a TOOL.

Linux is a tool. Windows is a tool. Let's face it, computers are just tools.


Re: More usable. (4.00 / 2) (#60)
by edibiase on Thu Oct 05, 2000 at 04:11:59 PM EST

The problem lies in your definition of 'usable'. Usable for what?

More usable for me :) And, I think, in the process of making it more usable for me, it will become more usable for a lot of other people.

Do you want it all? You can't have it. IT doesn't exist. No one OS has everything right now, regardless of what is theoretically possible. MS has marketshare. Linux has openness. MacOS has ease of use. All of these things have their ups and downs for different reasons to different people.

To be succint: yes, I do want it all. But not necessarily at the same time. And that doesn't mean that I think we can get it all. I don't see marketshare as that big of a concern; frankly. I'm interested in creating a better environment for users. As for things having ups and downs for different people -- yeah. That's true. So let's make it so that the environment is customizable enough to accomodate everyone; let's make it so users can have more ups and less downs.

I say let linux be what it will. I feel no compulsive need to make everyone use linux. I don't feel like pushing it on my parents or my friends. If they are getting into Comp. Sci or Comp. Tech, I will push it on them as a TOOL.

I agree completely. You seem to be interpreting my rant as some kind of, "We need to do these things to make Linux more marketable to people," argument, which is not how I see it. My intent in creating the rant was to provoke discussion that would help make Linux a better tool all around, so that you won't have to push it on anybody.

[ Parent ]

Evolution & packages. Diverse subject, ehh? :) (3.12 / 8) (#11)
by Louis_Wu on Thu Oct 05, 2000 at 01:00:46 AM EST

I know that the driving force behind any kind of evolution, be it biological or technical, is diversity.

But that isn't all. The primary driving force of evolution seems to be survival (of the fittest; I needed a good cliche today :), and through that comes diversity. Most species occupy a niche (unique place) in the ecosystem, where they have no direct competition (maybe predators, but no one else in that niche). There are enough niches (Nietzsche?) that there are a whole lot of species, and the niches are different enough that those species are very different. But that doesn't mean that diversity is a driving force behind evolution, it just seems to come along for the ride.

I think that the best way to get compatibility of Linux distros is to find and make known a benefit for the makers of those distrobutions. If Red Hat seems profit in making it's distros compatible with Debian, they will be more likely to do so. It the reasons to be compatible are large enough (read enough money to more than pay for the re-writes of code), they will become compatible. All we have to do is find that (those) reason(s), show that they aren't vapor-ware, and get the word out. Have it ready by Monday. ;) I don't know how to do it either. But we are here at the mighty K5, where many experienced and creative Linux users and hackers congregate, so we might be able to do something to help. (I can stroke egos more if it's needed. Just let me know. :)

BTW, I can't get /. to come up. Is anyone else having problems?



Louis_Wu
"The power to tax is the power to destroy."
John Marshal, first Chief Justice of the U.S. Supreme Court
Re: OT: /. (1.00 / 2) (#15)
by mbell on Thu Oct 05, 2000 at 01:50:57 AM EST

I can't access /. either. I don't know what the problem is.

[ Parent ]
Re: OT: /. (2.00 / 2) (#18)
by Tits McAsstits on Thu Oct 05, 2000 at 02:18:36 AM EST

signal 11 left; they don't call it 'karma' for nothing, man.

[ Parent ]
Re: Evolution & packages. Diverse subject, ehh? (1.00 / 2) (#16)
by Louis_Wu on Thu Oct 05, 2000 at 02:06:18 AM EST

Man, I can't spell. I used Preview, but only to look for HTML errors. Oops.

Louis_Wu
"The power to tax is the power to destroy."
John Marshal, first Chief Justice of the U.S. Supreme Court
[ Parent ]
(3.37 / 8) (#14)
by kubalaaa on Thu Oct 05, 2000 at 01:36:59 AM EST

I see a lot of the "sorry, Linux isn't for babies" attitude. IMHO, this is one problem with the Linux/hacker/OS community (to over-generalize). Here are the problems with usability and Linux that I see:
  • Poor documentation. Yes, I know about HOWTOs, man, LUGs, and so on and so on, but the fact is, those are mainly useful if you already know what you're doing and where you're going. What we need is the paper-clip for Linux: "It looks like you're trying to reconfigure apache, would you like assistance?" Okay, that's silly, but seriously it embodies some good ideas: context sensitivity, searchability, interaction with a user.
  • Inconsistency. Not just in packages, but in things like config files, command-line-arguments, filesystem structure. That's the price of two decades of cludge^H^H^H^H^H heritage. Nobody wants to set standards and define consistent methods of interaction, so everyone comes up with their own. Which is why it took Apple to make something like Quartz, and we're still stuck with X.
  • Lack of innovation. Yes, some great, innovative products have come out of OS, but it's taken a long time. I'm a darwinist and convinced that in the right circumstance OS can always win, but for now commercial products in some areas (drawing, design, word-processing, office... pretty much anything visual vs textual) are light-years ahead.

That said, Nautilus gives me high hopes for the future of OS UI. It's one of the first such things I've seen that actually looks like it could actually go somewhere.

Yes, there's no such thing as a perfect interface, but we can do a HELL of a lot better than what we've got now. Yes, even for the elitist hackers and their precious efficiency. (I like to point to the Blender 3D modeling program UI as a perfect example of a simple, modular, and highly efficient graphical interface with a CLI-level of efficiency and speed).

"Madness is rare in individuals, but in groups, parties, nations, and ages it is the rule." -Friedrich Nietzsche

Re: (2.66 / 3) (#21)
by fluffy grue on Thu Oct 05, 2000 at 02:25:16 AM EST

Debian does a lot to fix filesystem issues, even at the expense of compatability. In fact, recently they decided that the BIND standard configuration locations (in /var) were too inconsistent to keep going, so they put it in /etc/bind to make it consistent with the rest of Debian.

In fact, I don't know of any packages which currently break a very standardized convention:

  1. /etc - configuration
  2. /usr/share - data and binaries
  3. /usr/share/doc - documentation for sysadmin and user stuff, respectively
  4. /usr/bin - symlinks and wrapper scripts
  5. /var - temporary data (logs, caches, etc.)
  6. /lib - system libraries
  7. /usr/lib - program libraries
That's just off the top of my head, mind you. The standards are well-documented, in any case, and these days, packages which break these conventions are considered broken by Debian.
--
"Is not a quine" is not a quine.
I have a master's degree in science!

[ Hug Your Trikuare ]
[ Parent ]

Re: (3.00 / 1) (#64)
by edibiase on Thu Oct 05, 2000 at 05:28:17 PM EST

Debian does a lot to fix filesystem issues, even at the expense of compatability. In fact, recently they decided that the BIND standard configuration locations (in /var) were too inconsistent to keep going, so they put it in /etc/bind to make it consistent with the rest of Debian.

Yeah. Debian has always been excellent in creating well-thought-out standards and then sticking to them. If I recall correctly, they adhere to one of the filesystem higherarchy standards out there.

The trick in all of this is to get the distributions to agree on a common filesystem layout and packaging specification. That way, HelixCode can release, say, GAIM not in 9 different packages, but in one. Makes things a whole lot easier for both the developer and the user.

[ Parent ]

Re: (3.00 / 2) (#29)
by mikael_j on Thu Oct 05, 2000 at 04:23:44 AM EST

What we need is the paper-clip for Linux
May I suggest step-by-step guides to doing stuff, and a bit more specific how-to's (don't ya just love it when someone assumes that if you are trying to do something with the com ports then you already know everything about the com-ports except that which you are trying to do...)

Mikael Jacobson
We give a bad name to the internet in general. - Rusty
[ Parent ]
QNX (1.40 / 5) (#17)
by Hadlock on Thu Oct 05, 2000 at 02:09:24 AM EST

has anyone tried out QNX? i made an attempt to download the os (24 megs) over dialup, but the file was corrupted. To date i haven't found a single screen shot of what the QNX gui looks like. Anyone care to post a link?
i need a customer appreciation bat.
screenshots (none / 0) (#23)
by erotus on Thu Oct 05, 2000 at 02:52:47 AM EST

go to these links for screenshots
http://www.amigaflame.co.uk/amiwcker.htm
http://www.qnx.com/products/photon/index.html

go to this link for a review of beos vs. qnx
plenty of screenshots here.
http://www.benews.com/story/3463.1.html

go here to download a floppy image demo of qnx
http://www.qnx.com/iat/index.html

cheers



[ Parent ]
Re: QNX (none / 0) (#51)
by keltor on Thu Oct 05, 2000 at 11:44:12 AM EST

yeah, i burned an iso and installed it, havent had any time to use it yet. the install was as easy as freebe or this mandrake 7.1 demo disk. it boots very close to as fast as freebe (ok not that fast, but closer to be's boot speed than to any other os with a gui). the interface was much more responsive than linux

ever notice that linux isn't always right there responsive like windoze is? i figure it's because windoze is a single user environment which always gives dominance to whatever the user is attempting to do at the moment. linux (and other unixii)are multiuser mainframe environments designed to give every user an equal chance to do something, and so has this latency before it will respond to a user command (maybe linux doesnt waste cycles to pop up a busy hourglass animation-- an animation that while it slows the computer marginally, makes the wait more bearable, because you know that the box is doing something-- and sometimes the debian packages installed on this box don't do anything, you click on them to start, and nothing ever happens (not even in top), and its just some stupid game so I don't worry about it and get back to work, but...).

qnx did not have observable latency. The recommended requirements are high-- pentium, 64m ram, even though it seemed to run x faster than linux.

it is the new winner for longest amount of time before I crashed it (to the point of a hardboot), that is none of the other os's have been up this long before the first crash, qnx hasn't crashed yet-- maybe i'm just not tinkering with it enough?




A picture had better be worth a 1000 words-- it takes longer to download (this comment posted from a debian X-Box)
[ Parent ]

Consistancy> (3.00 / 4) (#20)
by IOrdy on Thu Oct 05, 2000 at 02:21:53 AM EST

<rant>

Unless there is some sort of guidelines for developers to follow or some sort of control that the windows manager can exert of the look and feel of an application we are never going to see a truly well designed interface. Now I'm not talking just about linux, though linux (all breeds) would have to be the worst, lack simple, good user interface standards.

I.e when I swap between applications they have custom mouse buttons, or some require double clicking to active stuff even though the windows manager I just started the application requiered me to click once.

Or when I'm using linux and some applications require you to CNTRL-C to copy something then other application require me to just highlight it. Then pasting it back in I have to guess if it's going to be SHIFT-INS or CNTRL-V, where is the consistancy with that?

What about when I'm sitting there looking at a range of themed application that dont have a 'default to OS' interface, which means I end up with what can only be described as a hodge podge of mismatched interfaces that look like someones just opened up (insert graphics program here) and randomly smeared poorly matching colours into little rectangles and called it user friendly.

</rant>

Nothing is ever going to change though, too many people think it's 'rad' to not be able to see where you mouse cursor is because of the near blinding neon colour scheme they have downloaded and installed this week.

I for one would like to walk up to a pc and see that all applications follow a similar usability standard. So if I make a change to the way the UI works for me it will be consistant accross all my applications. (I refer you to the two-click V's on click thing)

It's all about giving control to one spesific part of the OS and what you as the end user do there is up to you.

Re: Consistancy> (4.00 / 3) (#26)
by JML on Thu Oct 05, 2000 at 03:52:26 AM EST

I don't understand what people's hangup is about consistancy. Different applications do different things, therefore they work differently. My blender and breadmaker have different interfaces, because it would be stupid to have a timed bake function on a blender, or a puree setting on an automatic breadmaker. One is push buttons, the other is dial. So what?

Sure, I expect basic functionality to be consistant. It would be terribly confusing if the button under my right index finger didn't produce an "j" in a text field, but I am also completely fine with it meaning "move the cursor down" in other contexts.

I think this goal of consistancy has lead to all sorts of non-intuitive design. Why should "quit" be under the "File" menu in 99% of GUI applications? Mostly because it is already there in 99% of GUI applications, not because "quit" is a reasonable operation to perform on a file.

Perhaps other people have a more difficult time switching contexts than I do, but "-f" meaning force (rm, cp, ln), or spew to this file (tar, dump) both are reasonable to me. rm and cp don't produce stream output, so always reserving -f as the "use file" switch would be stupid, use it for something else.

The same applies for GUI based applications. Why force a certain menu to appear whenever there is a right click, even if that menu is inappropriate or useless (ever right click, or whatever, and get a menu that is completely grayed out?)

I say, design each application to be as internally simple and intuitive as possible. To me this means making the most common and useful features the easiest to access. Summing a column in a wordprocessor is not common, but in a spreadsheet I want it two clicks away. Maybe those same two clicks in the wordprocessor let me lookup the definition of the word under the cursor.

[ Parent ]

I love the GUI (2.66 / 3) (#28)
by toddmilburn on Thu Oct 05, 2000 at 04:07:05 AM EST

I really can't get enough of GNOME paired with enlightenment and the Aqua theme... I love virtual desktops, I love rolling my mouse over the endge of the window and watching everything fly by... whenever I have to use Windows (quite a bit, I have to use Visual C++ for class) I run my mouse over to the edge of the screen and wonder what's wrong when nothing moves... there's nothing better than letting gcc do it's thing in one world, while I'm off in another world, it's the way that I think...

The thing I love most about Linux is that they're so many freely available tools that are perfect for the job... I just shoot out to rpmfind.net and I can throw on gnat for compiling ADA code, gimp for all my photo needs, emacs (the best tool in the world for coding...) actually that brings me to my biggest complaint... gobs of libraries to keep track of... sometimes it's easy to find the dependencies and other times it takes serious fooling around to get stuff to work...

Don't hate me for this... (3.20 / 5) (#32)
by itsbruce on Thu Oct 05, 2000 at 06:43:46 AM EST

...but I think it's your age that's causing you problems, not Linux. You obviously can't settle on anything and are impossible to satisfy. This is not going to change any time soon (in my case it lasted into my late twenties).

I'm over twice your age and I've been working with PCs since before there was such a thing as Windows. For me, finding Linux was like finally coming home. The last few years have been without question the happiest I've spent in computing, especially since I got Linux onto my work computers.

Looking back over the years, DOS was bad but Windows was worse. I remember looking at one Windows program that kept it's settings in three different places, all of them working on the assumption that the PC it was installed on was single-user, non-networked and thinking "This is just wrong. It has to be better to design programs and operating systems on the assumption they will be networked. Not only would the resulting code be more manageable but it would probably perform better as well."

Then I found Linux/Unix and discovered that there was a 3-decade tradition of doing just that. Now I have more control over my computers than I ever had before and I am happy.

First off, there is nowhere near a useful level of consistency among distributions.
Beyond basic adherance to the FHS, I don't see why there should be. No one distribution can be all things to all people. Red Hat was a good distribution for me to learn on but now Debian gives me what I want the way I want it. If I want something pared down and mean to fit into a tight space, I use Slackware.
The obvious problem is that I, J. Random Software Developer/Company, can't just release the J. Random Development Environment "for Linux." I have the joy of making a version for "Debian GNU/Linux," "Red Hat Linux 5.x," "Red Hat Linux 6.x," "Red Hat Linux 7.x," "Corel Linux," "Storm Linux," and "Slackware Linux." Yeah, I'm really going to want to create seven packages and manage them all.
You don't have to. Not by yourself. The development communities of each distribution will happily help you. Even if you only want to bother producing a RH 6.2 rpm (boo) if you also provide some basic information about requirements the developers of the other distributions can provide advice to their users on how to install your package.

This incredible diversity is one of the main reasons why Linux is so popular, IMO. The various *BSDs are more technically rigorous but they are also more rigidly defined (and more elitist).

My last major point is that all the GUIs I've seen for Linux I'd classify in the "not very useful for Evan" category.
So build one of your own. Mix and match windowmanagers, file managers and other tools until you have what you want. You have this freedom. You opened by saying "Can we build a more usable Linux". The answer is that you can build anything you like with it. The tools are already there.

--

It is impolite to tell a man who is carrying you on his shoulders that his head smells.
Re: Don't hate me for this... (4.00 / 2) (#65)
by edibiase on Thu Oct 05, 2000 at 05:49:42 PM EST

...but I think it's your age that's causing you problems, not Linux. You obviously can't settle on anything and are impossible to satisfy. This is not going to change any time soon (in my case it lasted into my late twenties).

You might be right :) I honestly don't know.

Beyond basic adherance to the FHS, I don't see why there should be. No one distribution can be all things to all people. Red Hat was a good distribution for me to learn on but now Debian gives me what I want the way I want it. If I want something pared down and mean to fit into a tight space, I use Slackware.

Well, this was kind of a stepping-stone point to my next point (standard packaging specification), but it has merits on its own. Unless there's some kind of meta-filesystem description file that is installed by each distribution (which would basically indicate to the packaging system that man files go in "/cowboy/man/wholelottamanfiles/" and that binaries go to "/dev/null"), it would be really hard to have unified packages. Also, it would be helpful to have to learn the filesystem layout once and be able to use it everywhere you use a Linux system.

Futhermore, I think that distributions will definitely have a place. Sure, Red Hat can customize their packages or default install stuff to make things easier for users. Debian can still only include free software. Slackware can still be as pared down as it was before.

However, with a unified filesystem layout and package management specification (I've been very careful not to say "program" -- Debian can create whatever kind of packaging system it wants, as long as it conforms to the spec), that Red Hat user can install any program from anywhere. The Debian and Slackware users can do the same. That's the real benefit: no more worrying about getting that RPM that's built for Red Hat 6.9.5, and then finding all of its dependencies that are also built for that particular distribution/version. Just download, install, and go. At least as powerful as before, but even more powerful when you factor in the ability to have only one package.

You don't have to. Not by yourself. The development communities of each distribution will happily help you. Even if you only want to bother producing a RH 6.2 rpm (boo) if you also provide some basic information about requirements the developers of the other distributions can provide advice to their users on how to install your package.

But why should it have to be that way? What is the advantage of having a system that requires me to generate packages not only for different distributions, but for different versions of those distributions? Wouldn't it be better just to have one package per architecture?

This incredible diversity is one of the main reasons why Linux is so popular, IMO. The various *BSDs are more technically rigorous but they are also more rigidly defined (and more elitist).

Agreed, diversity is definitely important. But you can't get anywhere with diversity unless you have a solid base to build on. Some people seem to think that I'm arguing for consistency as in "one window manager," "one word processing application," and so on. That's not true. I think that the more development we see in the application and technical space, the better. But it's hard on both the developer and the user to have to create 9 different packages just to satisfy the needs of 90% of the people.

Mix and match windowmanagers, file managers and other tools until you have what you want. You have this freedom. You opened by saying "Can we build a more usable Linux". The answer is that you can build anything you like with it. The tools are already there.

Agreed :) This is probably the strongest part of Linux, and I'm surprised that I didn't hear more radical views along this line (oh, wait, this isn't Slashdot). I was expecting a lot of, "Well, asshole, if you think you're so smart, stop writing kuro5hin rants and go do some hacking!" I haven't seen too many of these. But you are right, and I think my major quest now is to start learning the fine skill of hacking so that I can get these projects up and running. The other side to that, though, is community support -- nobody's going to support Evan's Filesystem Standard or Evan's Packaging Specification unless they know about it. And I want people to help me on this, so that we can A) have a community-built project, B) get it done faster, and C) have a solution that works for the most number of people.

[ Parent ]

There's something missing from your OS cycle. (2.50 / 2) (#33)
by ralphph on Thu Oct 05, 2000 at 07:25:42 AM EST

If you're interested UI and like consistency, check out the Mac world. OS-X will give you plenty of opportunity to use your Unix knowledge, too.

You're just following the crowd (2.00 / 2) (#34)
by wir on Thu Oct 05, 2000 at 07:32:23 AM EST

This probably won't be a popular comment, but that's not the point.

I don't like any of the Linux "distributions". The last thing I installed which I didn't build from source was mcc-interim using .99pl8 or some such beast.

So, I use none. My installation is unique, consistent and personalised. The point being, I can do this with Linux or *BSD whereas with any other random Unix I have to stick with what I'm given.

It was said best in regard to C and Pascal: Pascal assumes you're stupid; C assumes you're clever. Simple is better. The distributions have long passed the point where they attempt to make Linux suitable for everybody (read: the idiots too).

Your choice - either be happy with what you're given or opt out. Moaning is not an option until you've tried to do it yourself.

you have missed the point... (2.66 / 3) (#35)
by Bloodwine on Thu Oct 05, 2000 at 07:58:44 AM EST

Linux is not Macintosh and it is not Windows.

I'm tired of hearing people complain that Linux isn't super-easy to install and have "wizards" configure everything for them.

Linux was not meant to be installed and then just ran from it's installed configuration. It's a good idea (and fun) to compile a custom kernel, set up your services, secure your machine, tweak X, etc...

Inconsistency, you say? Well.. that is a good thing (to a degree). I have used everything from SuSE to Slackware to FreeBSD. They all have their differences, but once you learn your way around a *nix system then it only takes a few days (at most) to adapt to another variant. They all follow similar contexts and guidelines. Different package managers? I assume you want something like an add/remove windows-like package management system? Use tarballs... atleast then you have complete control over how the installed files interact with other files.

The enjoyable thing about Linux/BSD is that there is always something new you stumble across and play with. Choices allow a very flexible and powerful operating system.

Re: you have missed the point... (none / 0) (#47)
by simmons75 on Thu Oct 05, 2000 at 10:47:18 AM EST

Yeah...if the original poster reads this, take this to heart. The beauty of Linux and other *NIX systems is that you have more *control*. I managed to render my Windows box both unusable and unable to get system updates by having an IE5 install get botched. It was not uninstallable, and if I tried to install it again, the installer would simply detect that it was installed already and abort. Blech. The only *good* suggestion I ever got (other than "you're a fucking idiot") was to simply re-install. I'm assuming that if I could have found some good documentation I could have gone in with regedit and fix it (now *that's* an intuitive interface for ya!)

With Linux, I have no such problems. Most configuration can be done from the command line, and most config files are in text. The only time I touch octal is when I run "chmod". Windows? Ugh. It's best to get one of those brain-dead proggys you see in software stores for the brain-dead luser base if you value your sanity--the Registry is only *slightly* better than sendmail.cf. :^P
poot!
So there.

[ Parent ]
Foolish consistency is the hobgoblin ... (3.66 / 3) (#38)
by zakalwe on Thu Oct 05, 2000 at 08:30:57 AM EST

I've seen the consistency argument for GUIs multiple times, but in reality, I don't really think inconsistency is much of a problem. My 'desktop environment' is a mix of several quite different and inconsistent applications - I use the Gnome Panel, rxvt, Konqueor as a web browser, TkDesk for my file manager, and both xemacs or Jed as editors. Yes there are some annoying consistencies ( mainly with cut and paste, and a few keybindings ) but these aren't that important compared to the basic functionality of the applications. These are simply the programs that suit my needs best, and consistency with other applications is a rather minor consideration between them. I've never really had a problem with the actual GUIs, even though I'm using a mix of toolkits.

In fact my opinions of the 'Right' way of doing things is probably different from most peoples - I'd prefer that some of my applications weren't consistant than that all of them work in the 'wrong way'.

And this is the basic problem - everyone prefers a slightly different way of operation, and even more importantly, everyone uses their computer for different things. An ideal GUI would perhaps provide a completely customisable interface for everything - defining the keybinding for 'search' across all applications which have a 'search' feature. I don't think this would be practical however. Yes, consistency would be nice - but I don't think it's really worth the effort required, and if the cost is giving up much of the diversity and freedom to create applications, then it isn't worth it.

I should probably add that all I've written really only applies to me. As I said above - people use computers for different things, and perhaps for some of these consistency is vitally important. But as other posters have said here programmers write mainly to fulfill their own needs, and I'll probably do the same - write interfaces that I, with all my weird habits, would like to use.

Re: Foolish consistency is the hobgoblin ... (none / 0) (#63)
by edibiase on Thu Oct 05, 2000 at 05:22:01 PM EST

I've seen the consistency argument for GUIs multiple times, but in reality, I don't really think inconsistency is much of a problem. My 'desktop environment' is a mix of several quite different and inconsistent applications - I use the Gnome Panel, rxvt, Konqueor as a web browser, TkDesk for my file manager, and both xemacs or Jed as editors. Yes there are some annoying consistencies ( mainly with cut and paste, and a few keybindings ) but these aren't that important compared to the basic functionality of the applications. These are simply the programs that suit my needs best, and consistency with other applications is a rather minor consideration between them. I've never really had a problem with the actual GUIs, even though I'm using a mix of toolkits.

Well... hmm. I wasn't really arguing for "consistent" user interfaces, but rather more usable ones. I think that consistency has a lot to do with how usable an interface is, but that's only one part of it.

For example, what if the "OK" button looked different in every dialog box? Would you consider that a good example of diversity in programs? I think consistency plays a big part in UI design, but it shouldn't be constraining.

And if you work best in the environment you've fashioned for yourself, that's cool. However, I think you would benefit from a common packaging format and a common filesystem layout, even if you don't want to change the way you work with the computer.

[ Parent ]

Re: Foolish consistency is the hobgoblin ... (none / 0) (#72)
by zakalwe on Fri Oct 06, 2000 at 05:45:17 AM EST

Well, I agree that more usable interfaces are a good thing, but I think that what various people consider 'usable' varies widely from person to person. Consistency plays <stron>a part in UI design, but I don't think it is that big of one. Currently my "OK" buttons do look slightly different in each dialog box - Tk, GTK and QT are all slightly different (So are the 'buttons' on virtually every webpage). It makes no difference to me. Admittedly I do expect that if I click on it the program will take an action assuming I am "OK" with whatever the dialog was about - but we already have this level of consistency in virtually every GUI.

More consistency in filesystem layout is probably a good thing - I don't think we've reached the area where cost outweighs benefit here. Again though, people are used to their system's layout - pushing a consistent layout that is different to their preferences is going to be tricky.

But as for packaging formats go, I disagree. I use Debian, and I think it's actually a good thing that they use a different packaging format rather than going with RPM. Not for any benefits/features of the package format, but because distributions are different. The packaging system is the way that the distributions enforce their (consistent) policy. Adding a RPM package to a debian system may cause problems with unforseen interactions. This is one place where I think consistency is very important.

Perhaps if distributions had completely the same layouts and libraries, this wouldn't be a problem. Currently though, it is, and I don't forsee it changing anytime soon.

[ Parent ]

Re: Foolish consistency is the hobgoblin ... (none / 0) (#74)
by edibiase on Fri Oct 06, 2000 at 09:47:48 AM EST

Well, I agree that more usable interfaces are a good thing, but I think that what various people consider 'usable' varies widely from person to person. Consistency plays a part in UI design, but I don't think it is that big of one. Currently my "OK" buttons do look slightly different in each dialog box - Tk, GTK and QT are all slightly different (So are the 'buttons' on virtually every webpage). It makes no difference to me. Admittedly I do expect that if I click on it the program will take an action assuming I am "OK" with whatever the dialog was about - but we already have this level of consistency in virtually every GUI.

I do agree with your statement that the definition of "usable" varies from person to person, which is why I think a UI that is completely customizable is in order. In fact, with luck, this could be done such that it automatically customizes around you, and then you can make changes to get things just right.

As for consistency, I also agree with you. I'm not concerned so much with the buttons looking slightly different, but with the placement and usage being pretty much the same. To give you an example from the web: I have gotten used to the standard "First Name, Last Name, Address 1, Address 2, City, State, Zip, Country" order of entry on many web registration forms. It's almost become muscle memory for me now, as I can just fire in the values rapidly if I see that the form is the way I expect it. However, there are some forms where Zip Code comes before City, and so I'll end up typing "Sewickley" into Zip Code. Needless to say, this hurts my "productivity." Similarly, in an application, I shouldn't have the OK button floating around everywhere (or any other GUI element that is used often, for that matter). I think it would be helpful to have a guideline, based not on arbitrary standards but actual usability data, that says where things should go in applications built for this combined desktop environment.

Another neat addition along these lines would be UIs that are programmed simply, so that the user can change things. For example, if you wanted to create a dialog box, you could just use the following function: create_dialog(title,text,type,actionset)

I'm simplifying that a bit; obviously one would need much more data to produce a dialog box of much use with that model. However, what it allows is A) complete conformance with the "usable," efficient interface guidelines and B) the user to change stuff. If you want all of your OK buttons to show up in the upper right-hand corner of a dialog, and your Cancel buttons to show up in the bottom left-hand corner, you can do that. The interface becomes yours.

But as for packaging formats go, I disagree. I use Debian, and I think it's actually a good thing that they use a different packaging format rather than going with RPM. Not for any benefits/features of the package format, but because distributions are different. The packaging system is the way that the distributions enforce their (consistent) policy. Adding a RPM package to a debian system may cause problems with unforseen interactions. This is one place where I think consistency is very important.

I am not suggesting that Debian go with RPM, or that Red Hat shift to dpkg. What I'm saying is I think that a specification can be developed for a unified packaging format that will let developers generate one package for every architecture. Perhaps Debian wants to create the packaging system around that spec that uses their central repository, and will only install software that's under a specific license (I know Debian has non-free and the like, but this is just hypothetical). Red Hat could create another packaging program that would do what they need to do. The point here is that distributions could still have different package management programs, but would still be able to install the same packages.

Perhaps if distributions had completely the same layouts and libraries, this wouldn't be a problem. Currently though, it is, and I don't forsee it changing anytime soon.

Well, the same layouts would probably be required, unless you wanted to have some kind of meta filesystem layout that told the package system "things that normally go in /usr according to the LSB really go in /commandercowboy/usr." As for libraries, I don't think so. If a program you have needs a newer version of a library, just install it (or perhaps your package management system will install it for you).

[ Parent ]

Re: Foolish consistency is the hobgoblin ... (none / 0) (#75)
by zakalwe on Fri Oct 06, 2000 at 10:36:04 AM EST

Another neat addition along these lines would be UIs that are programmed simply, so that the user can change things. For example, if you wanted to create a dialog box, you could just use the following function: create_dialog(title,text,type,actionset)
So all we have to do is completely determine all possible types of customisation that users would want, create a new sophisticated GUI library that's easy to program. Convince all programmers to use this library rather than their current favourate widget set, in which they have 5 years experience, and then port all the applications anyone might want to this UI. Oh, and make sure that this is the best possible GUI possible, so that no-one will release a new, incompatible system in 5 years that does something a lot better, causing programmers to switch to this new incompatible GUI. Easy!

A GUI that you describe would be a nice thing to have, and I agree the best way to tackle the problem is at the interface layer. It's not an easy problem however, and the technical problems pale into insignificance with actually convincing people to use it. More likely we would just have another GUI which behaves slightly differenly again to the others. I don't think the benefit gained would be worth the effort required. What we have now is good enough (at least for me).

What I'm saying is I think that a specification can be developed for a unified packaging format that will let developers generate one package for every architecture. Perhaps Debian wants to create the packaging system around that spec that uses their central repository, and will only install software that's under a specific license (I know Debian has non-free and the like, but this is just hypothetical). Red Hat could create another packaging program that would do what they need to do. The point here is that distributions could still have different package management programs, but would still be able to install the same packages.
I didn't really make my point terribly clearly here. What I was trying to say was that there's more to packaging than just the application. Suppose a programmer writes a program, "Foo", and creates some kind of universal package definition file. Some distributer decides to include this in their distribution, however the programmer's package specifies that his documentation goes into /usr/share/progname, while the distribution has a policy that package documentation goes into /usr/doc. Further, the distribution want's to add a few extra files (eg. debian adds programs to a distro-wide menu system) The distributers will change the package. For this reason, I think it is a bad idea to consider installing packages designed for one system on another, and don't think it should be made easy. Doing so restricts what the distributers can do. This is why I like the fact that debian has a different package system than Red Hat - no danger of confusing a Mandrake RPM with a Red Hat RPM. This is a pretty minor point - it should be trivial to check for these things anyway in the package system, it just makes this clearer.

I'm not actually against having a universal packaging program, though I see no problem beyond some duplication of work in having several. I do think different systems should use different packages. Trying for some kind of universal packaging system again seems like it would cost more ( in terms of easy customisation by the distributions ) than it's worth.

[ Parent ]

Re: Foolish consistency is the hobgoblin ... (none / 0) (#77)
by edibiase on Fri Oct 06, 2000 at 12:25:54 PM EST

So all we have to do is completely determine all possible types of customisation that users would want, create a new sophisticated GUI library that's easy to program. Convince all programmers to use this library rather than their current favourate widget set, in which they have 5 years experience, and then port all the applications anyone might want to this UI. Oh, and make sure that this is the best possible GUI possible, so that no-one will release a new, incompatible system in 5 years that does something a lot better, causing programmers to switch to this new incompatible GUI. Easy!

Well, I didn't say it would be easy ;) Honestly, though, I don't mean "overhaul everything, destroy what we have, start from scratch." We could use GTK/GNOME for this, or QT/KDE, or something that combines the two. I'm not suggesting complete anarchy; I think an evolutionary approach would be better. Yeah, in 2 years, your plain GNOME 1.0 programs will run fine, and integrate to the level that they could when they were made, but the GNOME 3.0 programs will have some of the features that I'm talking about. By GNOME 5.0, perhaps everything will be switched over.

Basically, I don't want to get stuck in a situation where everyone is saying, "Yeah, we know the way GNOME/KDE is doing it sucks, but we've got ten thousand applications that depend on things being the way that they are, and breaking them would only create a larger problem." Let's fix things in a gradual process so that applications can change along with the envioronment. That way, things will be the way we want them eventually, without breaking too many things along on the way.

What I was trying to say was that there's more to packaging than just the application. Suppose a programmer writes a program, "Foo", and creates some kind of universal package definition file. Some distributer decides to include this in their distribution, however the programmer's package specifies that his documentation goes into /usr/share/progname, while the distribution has a policy that package documentation goes into /usr/doc.

This is why I made my first argument for consistency. The programmer's package (at least in theory) would follow the easy to understand standard filesystem layout that the distributions agreed to follow. So, if /usr/doc/ was the place to stick documentation in the standard, that's where the distribution would most likely want to put it.

Further, the distribution want's to add a few extra files (eg. debian adds programs to a distro-wide menu system) The distributers will change the package. For this reason, I think it is a bad idea to consider installing packages designed for one system on another, and don't think it should be made easy. Doing so restricts what the distributers can do. This is why I like the fact that debian has a different package system than Red Hat - no danger of confusing a Mandrake RPM with a Red Hat RPM. This is a pretty minor point - it should be trivial to check for these things anyway in the package system, it just makes this clearer.

I was thinking about this very problem when I was writing my rant. What I concluded was that there could be a way to designate if a package was created to be distribution-specific and, if so, what distribution/version it was intended for. Possibly, even, files could be marked as "distribution-specific but not necessary to the functioning of this package," which would allow me to install a Debian-specific package even if I didn't have the Debian menu system installed.

Yeah, this looks like I want to fork every single package, but that isn't so. The vast majority of packages are of programs not made by the distributions, and I would assume that most developers would want to make their packages as distribution-agnostic as possible, so I could go out and grab a package from the person developing it. The distributions can make changes to the packages off of that, but they probably wouldn't be permanently forking the tree.

'm not actually against having a universal packaging program, though I see no problem beyond some duplication of work in having several. I do think different systems should use different packages. Trying for some kind of universal packaging system again seems like it would cost more ( in terms of easy customisation by the distributions ) than it's worth.

This is where I have to disagree with you. The biggest advantage of a universal packaging system is that developers have to make one package, and users don't have to worry about finding packages for their system, because there will be a huge incentive for developers to create packages for their programs (namely, most people want packages as opposed to tarballs). We can make a unified packaging system that also allows easy customization.

[ Parent ]

Re: Foolish consistency is the hobgoblin ... (none / 0) (#80)
by zakalwe on Fri Oct 06, 2000 at 07:12:44 PM EST

I think an evolutionary approach would be better. Yeah, in 2 years, your plain GNOME 1.0 programs will run fine, and integrate to the level that they could when they were made, but the GNOME 3.0 programs will have some of the features that I'm talking about. By GNOME 5.0, perhaps everything will be switched over.
Well, you've kind of convinced me here. I would like to see something like this. If GUIs are going to be standardised, they should be standardised in a completely customisable way, and really the only way to enforce this is at the library and API level. I don't think we'll reach a time when we will see a completely standard GUI, or even some common standard for this. All too often to enforce this you need either a single universal GUI, that stifles all competitors because it is standard (think Motif) or else slow, bureaucratic standards processes. On the other hand, improving the GUI can only be a good thing, maybe total uniformity isn't attainable, but it seems a worthwhile goal, at least done like this.

I suspect that even with the nicest, most convenient library, there will still be those who write using other GUIs (Human perversity will always beat any technical solution). Since as I've said above I don't really find consistency such a huge win there will inevitably be some of these that I still use, even though they don't 'fit' with all my other apps. But that's just me. In general, having most of their apps matching is a good thing for most people, and at least a minor plus for me.

This is where I have to disagree with you. The biggest advantage of a universal packaging system is that developers have to make one package, and users don't have to worry about finding packages for their system, because there will be a huge incentive for developers to create packages for their programs (namely, most people want packages as opposed to tarballs). We can make a unified packaging system that also allows easy customization.
Hmm. I think I see what you're saying here. Distributions will still make changes for their particular additions, but will do so with specific-distribution tags, so the package will be the same if installed on others. This actually seems a pretty good idea, assuming we get the sane standard filesystem layouts and so on, so distributions are fairly similar.

On the other hand, I can't see this happening. How do you get the users, programmers, distribution vendors to conform to your standard. Unlike the GUI example above, there's no way we can make a nice 'carrot' like the convenient library for them to use. The 'stick' approach is also useless for open source - perhaps the reason that we're still so fragmented is because bodys like the LSB have no teeth.

And again, for me, its not a huge win. The current state is good enough, and I usually compile from sources anyway. I'm tempted to agree with you anyway because I know a lot of people do prefer binary package installation, but I feel that the effort required to ensure everything is standard enough to use this system, and to create something that can deal with the differences far outweighs the benefits. People like what they're used to, and any outside standard on an area already so fragmented will probably be ignored.

Looking back over what I've written, perhaps I am being too pessimistic about things. Perhaps something like this will happen, and will be so beneficial that even set-in-their ways people like me will have to admit it. I hope so.

(Also looking back at what I've written, and my past posts, I'm a bit shocked at how much there is. No matter my opinions on the matter - I have to congratulate you on an excellent rant and discussion. It's certainly made me think about the topic.)

[ Parent ]

Re: Foolish consistency is the hobgoblin ... (none / 0) (#81)
by edibiase on Sat Oct 07, 2000 at 11:40:57 AM EST

Well, you've kind of convinced me here. I would like to see something like this. If GUIs are going to be standardised, they should be standardised in a completely customisable way, and really the only way to enforce this is at the library and API level. I don't think we'll reach a time when we will see a completely standard GUI, or even some common standard for this. All too often to enforce this you need either a single universal GUI, that stifles all competitors because it is standard (think Motif) or else slow, bureaucratic standards processes. On the other hand, improving the GUI can only be a good thing, maybe total uniformity isn't attainable, but it seems a worthwhile goal, at least done like this.

Yes, a system like this could definitely be beneficial. I agree that we need to work toward standardization in a customizable way -- I don't want this to turn into a situation for users or developers where the default way is the only way. What I was thinking when I wrote the part about consistent GUIs was that we need to have GUIs that are good. I guess I'd rather have a great GUI than consistency. But the best combination, in my opinion, would be where developers have an easy way to develop applications that all fit together well, integrate with the "environment," and are intuitive and easy to use. I think we're getting there, but I was really frustrated when I wrote this section and just needed to vent :)

I suspect that even with the nicest, most convenient library, there will still be those who write using other GUIs (Human perversity will always beat any technical solution). Since as I've said above I don't really find consistency such a huge win there will inevitably be some of these that I still use, even though they don't 'fit' with all my other apps. But that's just me. In general, having most of their apps matching is a good thing for most people, and at least a minor plus for me.

I definitely agree. Furthermore, I think that a GUI solution can be built wherein the environment can be easily customized to fit most users' needs. I'm not advocating taking away anyone's freedom of choice; that's something that is obviously one of the major strengths in Linux; this will be at least a "minor plus" for most people, and the people who don't want to use it will be free not to use it.

Hmm. I think I see what you're saying here. Distributions will still make changes for their particular additions, but will do so with specific-distribution tags, so the package will be the same if installed on others. This actually seems a pretty good idea, assuming we get the sane standard filesystem layouts and so on, so distributions are fairly similar.

Yep :) That's exactly what I'm saying. Furthermore, even if a distribution customizes a package in such a way that there is no way to install it without installing the distribution-specific changes, I'm hoping that the author of the program will also provide a package, allowing people from any distribution to install the plain-vanilla program.

On the other hand, I can't see this happening. How do you get the users, programmers, distribution vendors to conform to your standard. Unlike the GUI example above, there's no way we can make a nice 'carrot' like the convenient library for them to use. The 'stick' approach is also useless for open source - perhaps the reason that we're still so fragmented is because bodys like the LSB have no teeth.

Yes, this is obviously one of the major problems with my proposal. I guess the "carrot" in this case, from my (perhaps overly optimistic) view, is that developers will want to make one package that will work on most of the distributions. Users will like it because (if done correctly) they will have an easy way of installing packages without dealing with distribution specific issues like we have now (for example, let's say I want to install package "foo." I find a package that some Joe has put together, and I hope that it's going to work with my distribution (this really only applies to Red Hat, because with Debian you'd be able to apt-get things). Unfortunately, package "foo" requires "bar-1.0mdk" and "baz-6.2mdk." I have "bar-1.0" and "baz-6.2," but not the Mandrake versions. If I uninstall the Red Hat versions, I'll break 34 other packages. I'm not sure exactly what parts of baz and bar package foo depends on, so I don't know if --force'ing the RPM will work. I'm stuck). As for distributions -- well, I guess we could think of commercial distributions as mean and wanting to enforce "package lock-in." However, I'd like to imagine that the distributions would find that not having to worry about packaging so many things is a good thing. In addition, if the users and developers are both in support of a new packaging format, distributions that adhere to this format would become the most used, while distributions that don't would be left in the dust.

And again, for me, its not a huge win. The current state is good enough, and I usually compile from sources anyway. I'm tempted to agree with you anyway because I know a lot of people do prefer binary package installation, but I feel that the effort required to ensure everything is standard enough to use this system, and to create something that can deal with the differences far outweighs the benefits. People like what they're used to, and any outside standard on an area already so fragmented will probably be ignored.

Yes, I am one of those people who prefer binary packages. It would be a major hassle to standardize everything, and then to create a system for dealing with it. However, for me, the benefits do outweigh the costs, because the problem, if left "untreated," can only get worse as Linux gets more popular. I think that this is an issue that will have to be addressed somewhere down the line, and, I think, that time might as well be now.

(Also looking back at what I've written, and my past posts, I'm a bit shocked at how much there is. No matter my opinions on the matter - I have to congratulate you on an excellent rant and discussion. It's certainly made me think about the topic.)

I'm also surprised at the amount of thought we've generated. But, after all, that is what I was hoping for :) I'm glad that it turned out the way I anticipated. Thank you for your congratulations; this type of discussion benefits everyone, and I'm glad to have started it.

[ Parent ]

Re: Foolish consistency is the hobgoblin ... (none / 0) (#85)
by Michael Leuchtenburg on Sun Oct 08, 2000 at 10:55:51 AM EST

Well, for the unified packaging system, here's an idea.

The package can be used to generate packages for any given filesystem requirement, package type (rpm, deb, tgz, port), filesystem requirements (Mandrake puts some things in different places than Redhat), and so forth.

This could be easily accomplished by symbolic packaging requirements in the UP (Universal Package) description file. It'd say things like "filename: user binary" or "system binary". A "user binary" would probably go into /usr/bin, for example. Of course, we'd need various descriptions for everything. Maybe a "user binary" with priority "essential" (set for the entire package, of course) would go into /bin, so it's accessible during a recovery action.

I think this'd be a lot easier than getting all the distributions to agree on a single packaging system, though admittedly it is less elegant. These packages could also obviously be used directly by users, by simply piping it through the conversion tool.

[ #k5: dyfrgi ]
[ TINK5C ]
[ Parent ]

I can't believe this made it to the front page (1.25 / 4) (#39)
by rednecktek on Thu Oct 05, 2000 at 08:45:18 AM EST

edibiase wrote:
I'm sixteen years old

Explains it all.

You can keep your unified linux to yourself. Thank you, I'll compile the code. The day linux becomes unified, I'll find/make another OS. Then main reason you will never (hopefully) see unified development is because people have different opinions as to how things should be done. This country (the U.S., possibly others), is in a state where people are adopting new concepts of how things should be done instead of the status quo. I like change. Change breeds innovation (read: Not Microsoft).

You will learn as you "grow up" that ease of use != security/flexibilty/power.



Just remember, if the world didn't suck, we'd all fall off.
There are reasons for the "inconsistency" (2.66 / 3) (#40)
by Inoshiro on Thu Oct 05, 2000 at 09:14:08 AM EST

From Slackware's XFree86 v4 README:
This directory contains XFree86-4.0.1 binary packages for GNU libc-2 based
versions of Slackware Linux.  These have been compiled on a Slackware 7.1
system using egcs-2.91.66.  Some changes to the default filesystem layout
were made.  [history lesson follows]  In particular, the primary directory
for X11 configuration files on Slackware systems is /var/X11R6/lib, not
/usr/X11R6/lib/X11.  I made that decision a long time ago (and it was in
accordance with the Linux Filesystem Standard) since configuration files that
might be system specific or need to be edited were not supposed to go in /usr,
and it seemed like there was a whole lot of other stuff in there that didn't
really belong in /etc. So, by virtue of there not being a better plan, it went
in /var.  In my opinion, it's been a good place for that stuff, but the
prevailing scheme on many versions of Linux today is to put all the stuff that
doesn't qualify as machine specific or a config file in /usr/X11R6/lib/X11,
and then make dozens of ugly symlinks to the config files and directories in
/etc/X11.  I think having the contents of /usr/X11R6/lib/X11 split across
two places is a bad design, and increases the probability of misconfiguring
and/or miscompiling software.  That's why we don't do it.  With just a few
links, we achieve the same result -- files on Slackware can be accessed
through the pathnames any Linux application would expect (for example,
/etc/X11/xinit/xinitrc = /var/X11R6/lib/xinit/xinitrc =
/usr/X11R6/lib/X11/xinit/xinitrc) but the library directory is in one place
only, /var/X11R6/lib.  This is a much cleaner layout, and we plan to continue
to use it in future releases.

I find that there are sometimes some rought edges in various distroes because the packages are new. Gnome in Slackware, for example, is somewhat poorly setup with regards to the directories used for CORBA data requiring you to compile all new packages with --prefix=/usr for their menu entries to appear. A couple of symlinks soon fix this. Red Hat and other distributions based on it put the HTTPD data in /home/httpd or similar places, whereas OpenBSD locks the data for the httpd into a chroot of /var/www, and Slackware has it in /var/lib/apache.

Naturally there are many approaches and philosophies. I tend to agree with Patrick Volkerding's view, and so use Slackware. The Linux file system standard is an attempt at unification of this stuff, but I find the lack of a central standard somewhat annoying. At least most distributions agree on /bin, /sbin, and /etc.



--
[ イノシロ ]
Ignore the rants (1.66 / 3) (#41)
by MonkeyMagic on Thu Oct 05, 2000 at 09:18:12 AM EST

Edibiase

don't allow the self-centered self-important rants of many posters to put you off doing something about this.

If you feel that you need to introduce something to Linux - go ahead. If it doesn't catch on then you have it to yourself - if it does then everyone benefits.
Too many people have stated that you are too young to understand Linux, but that is an attitude that discounts the many offerings people of your age have given to the Open Source Community. In fact, now is the time for you to really start thinking about creating "an interface that nobody has seen before" if that is your thing.

rednecktek (as an example of many) wrote:
edibiase wrote: I'm sixteen years old Explains it all.... You will learn as you "grow up" that ease of use != security/flexibilty/power.

This was insulting and unnecessarily wrapped around a small package of his own opinion. An opinion which he is more entitled to hold than you, it seems, simply because he has a few years on you. Bullshit.
Many people forget that their best work is formulated from the ages of around 13 to 25 and that from then on you pretty much carry one without many great new ideas (there are, of course, exceptions).

mark

Linux not ready for me yet ... (1.00 / 1) (#42)
by thycotic on Thu Oct 05, 2000 at 09:25:54 AM EST

I know what you mean! I have swapped backwards and forwards between linux and windoze on my home desktop for a few years now ... my wife just laughs each time I decide to change. But I find I am far more productive in Windoze rather than Linux simply because I spend less time trying to figure out how to do something and with all the annoyances of cut&paste not always working etc ... (I use my home desktop mostly for email/browsing and Java and Perl development.)

I would love to use Linux (especially for its stability) but not until it becomes more consistent and standardises to the requirements we have come to expect from other OSes.

Cut & Paste under Linux (none / 0) (#69)
by daviddennis on Thu Oct 05, 2000 at 10:22:23 PM EST

Get a three-button mouse and all your problems are solved. I've found cut and paste pretty much rock solid in Linux with the third button devoted to paste. Without it, it's hopeless.

D

amazing.com has amazing things.
[ Parent ]
(3.40 / 5) (#43)
by flieghund on Thu Oct 05, 2000 at 10:00:14 AM EST

Grow up. Linux is fine the way it is. You don't know anything, you're only sixteen. What's wrong with {fill in your favorite distribution}, it works fine for me. No one uses a computer in the same way, so there is not perfect way to use a computer. And so on, and so on, and so on.

<RANT>

I bought a nice, big fat HDD just about a year ago and decided to partition off 8 gigs of it for alternative OS experimentation: four gigs for BeOS (a recent purchase at a tech conference in L.A.), and four gigs for linux. A trip to a local computer store yielded TurboLinux.

Gah. Never heard of TurboLinux at that point (don't take this wrong, I hadn't heard of 90% of the distributions the store was selling, but that was then and this is now). Horrible experience trying to get it to install. Even though I am extremely comfortable installing Windows (an unfortunately frequent requirement), I decided to play it safe and install TurboLinux by the book. Didn't work, and what's worse, it kept failing at the end of the very long ('cause I was customizing the hell out of it) installation process. This shot four different 90-minute sessions down the toilet.

Heated emails back and forth with tech support. Promised an answer within 48 hours. It's a year later, and I've never received a response. So to hell with 'em. (Actually decided that about a week after not getting a response.)

So, back to the store. Ooh, look, it's Debian that is "free" after rebate this week. I'll try that.

After about an hour of fiddling, I have a nice bash prompt. Whee. Nothing else really seems to work. Call my buddy in NYC (three time zones away) to see if he knows what the hell to do now. I get congratulated on my courage to install Debian as my first install, and a strong encouragement to just start tinkering.

About eight hours later, I finally get enlightenment installed -- no hardware modem available (at that point), so no way to use something like apt-get. Had to manually install all the files (trial-and-error, 'cause no documentaiton that I could find at the time). I can run E, but I can't launch any programs because it locks the computer.

Oh, while installing Debian, I finally discovered what the problem was with TurboLinux: not a single mention in either of the manuals, nor anywhere online, that you had to set the boot partition to active in the partitioner. I realize in retrospect that this is an obvious step; it was given fairly good prominence in the four-page Debian "book"; but absolutely nothing in the 200 pages of TurboLinux documentation. Debian is supposed to be a harder distro to install than TurboLinux, right? At least I got my rebate from TurboLinux...

</RANT>

I'm 23, so spare me comments about my age. edibiase has a lot of good points about linux for the average home computer user. Do you enjoy linux's role as a niche operating system? In its current state of disarray, I don't see it ever coming close to Windows in the so-called battle for the home desktop. (Servers are a whole 'nother issue, and a place where linux is extremely well suited... but that really isn't the issue here.)

Why is linux doomed to obscurity? I think edibiase mentioned the biggest reasons: inconsistency and incompatibility. Having to hack a program into its constituent pieces and rearrange it because your linux distro puts files in different places is not "compatibility." Having to memorize twelve different key command sets is not "consistency." I'm happy that you don't mind either of these situations, but for the average home user, they are 100% barriers to entry.

I know a lot of people who know how to use a mouse, type on a keyboard, and launch MS Word and IE. That's about all they can remember how to do. Even my mother, God bless her, my mother who took a six-week course on how to use DOS (around the time 6.0 was released), can only remember the most basic things about it (cd and dir, IIRC). How is she expected to remember that in Program X, copy is CTRL-C; in Program Y, copy is CTRL-INS; and in Program Z, copy is to highlight the text with your mouse?

Fine, she shouldn't be using linux. But by that same argument, neither should 90% of the people who use computers. Guess what? Linux never rises above 10% of the users base. It remains a niche operating system, a Sunday diversion when the football games suck (which seems to be more and more these days). Maybe you are happy with that. Edibiase and a great many of the people in the linux/alternative OS world are not.

Maybe I ended the rant tag early. Whatever.


Using a Macintosh is like picking your nose: everyone likes to do it, but no one will admit to it.
Re: (3.00 / 1) (#53)
by FlinkDelDinky on Thu Oct 05, 2000 at 12:40:46 PM EST

Your expierences with getting X up and running seem odd. Did you use dselect (scared the hell out me when I first saw it).

You shouldn't have had to tinker anything with getting Enlightenment or any other packaged WM up and going. Especially if you're running gnome (probably kde too).

Were you unable to install the packages? I used XF86Setup to setup X. Everything was a breeze except for printer and alsa (mostly fixed by the new installs I think).

Oh well, to bad it didn't work out for you. It's like that sometimes. Although I prefer gnome kde has a lot more of the Windows style configuration utilities. Maybe give that a shot.

I've often been frustrated by setting up various linux distros. You're not alone there. It's just that once setup it's pretty stable.

[ Parent ]

If you don't like it... (1.75 / 4) (#44)
by Paul Dunne on Thu Oct 05, 2000 at 10:40:12 AM EST

I get the distinct impression that when you ask "Can we develop a more usable Linux?", what you mean is, can *someone else* fix the stuff you don't like. Look, if you don't like Linux, don't use it; it really is as simple as that. God knows, there are enough OSes around. Why does this question come up time and time again? If you're *that* fed up with *all* the user interfaces available to you, why don't you sitt down and develop a better one? What is complaining on Kuro5hin going to achieve?
http://dunne.home.dhs.org/
Packages systems, Slackware, myself (1.50 / 2) (#45)
by Elendale on Thu Oct 05, 2000 at 10:42:54 AM EST

I am currently running Slack (in case you didn't notice) and, while its a bitch to get up and running, it does everything exactly the way i want it... except for one small detail: i have to hunt down and find all the updates/patches/new stuff/whatever i want. Sure, i messed around with RPM for a bit- but it wasn't fun when some jerk decides to drop 3 copies of a dependancy that is older than what i already have randomly spread throughout my system. Yeah, this is another packaging systems rant.

My problem with the lack of a centralized, distro-independent packaging system is slightly balanced by my lack of packaging systems in general. They put stuff where they want, when they want, with little to no reason, and when its all over i have to find what the people who put the package together didn't quite remember to include this one part. In any case, here's my ideal packaging system:

  • non package-specific (i know, i know)
  • searchable database of 'stuff' available (in case i want to find something new, not just update)
  • will download but not install the packages i choose
  • will ask about any dependancies before downloading
  • not restricted to one server (can change to different ones, but they should be based on the 'main' server)
Sounds pretty simple right? Maybe I should get to work on it...

-Elendale
---

When free speech is outlawed, only criminals will complain.


Grr... (none / 0) (#50)
by Elendale on Thu Oct 05, 2000 at 11:00:26 AM EST

Hate to reply to myself, but i don't think i was being very clear with my post.
When i say i don't want the package to install, what i mean is i don't want crap being thrown around in my system. What would be nice is a little /package directory (or something like it) where parts can be assembled by me and then moved to their correct places.
The reason i want it to ask about dependencies is because i may want to download a newer one than the package has and use that- of course, if the system is centralized the package could search the system for the latest package.

-Elendale (master of the art of self-replying)
---

When free speech is outlawed, only criminals will complain.


[ Parent ]
Re: Packages systems, Slackware, myself (none / 0) (#59)
by Mr. T on Thu Oct 05, 2000 at 03:59:11 PM EST

Umm, I suppose I could be wrong, but you've essentially described Debian's packaging system. I don't know enough details about it to know if it meets every single criterion you've mentioned, but I think it meets almost all of them. It really is a great system.

[ Parent ]
Re: Packages systems, Slackware, myself (none / 0) (#62)
by Elendale on Thu Oct 05, 2000 at 04:28:59 PM EST

Hmm... this hasn't been my experience (tho i've only used storm). I admit i haven't had much experience with debian packaging. Maybe i should be looking at that.

-Elendale (the other thing is that debian is debian centric, though its not a huge problem)
---

When free speech is outlawed, only criminals will complain.


[ Parent ]
One size fits all? (3.50 / 2) (#46)
by dragosani on Thu Oct 05, 2000 at 10:43:18 AM EST

I think the biggest dilemma I see with UI design isn't the quesiton of usability, or intuitiveness, or consistency, it's the assumption by the developers that one size fits all. For someone who is blind, or mentally handicapped, or somehow impaired so their use of the computer requires special needs, adapting a UI for their needs is usually tacked on. Or even for someone who doesn't lots of spiffy help ballons and icons and all the extra eye candy, they have to get the UI to really jump through hoops to get it to where it's usabale for them. How many Unix geeks do you see using X that usually has xterms sprinkled across the desktop more than anything else?

Something that would be really innovative would be to develop a standard protocol that allows a user to come up to any machine, whether it's a desktop, PDA, an embedded system in one's car, and be able to dynamically load their personal (and universal) preference object into the system and the UI renders itself based on this object. (This object could be a smart card, Java ring, downloaded from a central server, etc). Your desktop would be oragnized one way, whereas when you get in your car and you don't have the use of your hands very much, and the embedded system there would render a different interface for you.

I think this is really the next direction interfaces need to go.



Re: One size fits all? (none / 0) (#66)
by edibiase on Thu Oct 05, 2000 at 05:57:19 PM EST

Something that would be really innovative would be to develop a standard protocol that allows a user to come up to any machine, whether it's a desktop, PDA, an embedded system in one's car, and be able to dynamically load their personal (and universal) preference object into the system and the UI renders itself based on this object. (This object could be a smart card, Java ring, downloaded from a central server, etc). Your desktop would be oragnized one way, whereas when you get in your car and you don't have the use of your hands very much, and the embedded system there would render a different interface for you.

This is the kind of thing I was looking for; this is an incredible idea! Render the UI based on user preferences. Have a disability? The UI helps you out. Have a preferred "theme?" The UI knows about it and handles it. Prefer grey-on black with a big button on the bottom of the screen that says, "XTERM?" Can be done.

This is the kind of innovative thinking that needs to be done. I've been arguing along these lines before, basically that an interface doesn't need to be "one size fits all" but can be customizable depending on what the user wants.

Now, who wants to start hacking?

[ Parent ]

Mac OSX packaging (2.50 / 2) (#52)
by kubalaaa on Thu Oct 05, 2000 at 12:01:12 PM EST

I remember reading all about the nifty Mac OS X packaging system a while back on Ars Technica, and thinking it was cool at the time. Basically it uses "Bundles" to encapsulate shared libraries, modules, and applications, allowing: multiple versions to be contained within a single bundle, lazy linking (and loading of subsections of code), very easy to maintain, all kinds of neat things.

My understanding of the issues involved is pretty limited, though. Could someone comment on the benefits/drawbacks of this vs the various Linux ways, other than difficulty in enforcing a standard on package creators?

Re: Mac OSX packaging (5.00 / 1) (#68)
by daviddennis on Thu Oct 05, 2000 at 10:18:34 PM EST

I don't have any direct experience with the MacOS X system (even though I'm writing this on a MacOS X machine right now), but here's what I understand.

In the old DOS days, an application was defined by a directory. The directory contained all the files needed by an application. So if I wanted to copy FOXPRO 2.6 from one machine to another, I'd take all the contents of the C:\FOXPRO26 directory and yank them over to the other system.

In Unix, many applications were split rather oddly, into /bin, /lib and /var components. The idea was individual applications lived under /bin, shared libraries would go to /lib, and data files under /var. Although this was not the nightmare Windows was, with its clumsy 8-character file names and crowded \windows\system directory, it wasn't easy to separate the components of the application.

Classic MacOS had a very unique way of dealing with this: the resource fork. Each file was split into data and resources. Data was the raw program or text; resources were the objects associated with the program or data. So in a text file, formatting would be in the resource fork and text would be in the data - so if I opened a MacOS text file with a program, I'd get the data in an easy to read format (without the formatting).

The problem with this in moving to MacOS X, of course, was that the Unix foundation that was MacOS X had no knowledge of this rather odd file format, and huge amouts of work would have to be done to make them compatible. As a result, Apple decided to change to a bundling system. Each application is a quasi-hidden directory. The directory contains a structure that can be essentially whatever the developer pleases. Basically, it's a lot like the way things worked in the old DOS days.

So the bottom line is that the MacOS X package system is probably the best effort yet. You can check it out using normal programs (instead of muddling through with ResEdit), but programs are once again distinct objects that can be copied around as needed, just as they were under DOS and the old MacOS.

The main disadvantage is that I don't see much ability to share libraries with it. I notice that shared libraries seem to be honored more in the breach than the observance, and certainly with memory as cheap as it is today, saving memory is less of an imperative. (My shiny new Mac G4/450 dual processor has 512mb RAM that I scrounged by cannibalizing my previous computers).

I hope that's helped explain it for you.

D

amazing.com has amazing things.
[ Parent ]
(2.33 / 3) (#54)
by lwiggins on Thu Oct 05, 2000 at 01:11:46 PM EST

Okay, I have thought about this, decided to post, decided not to, for about an hour, but after reading all of the comments, I feel the need, so here goes. If you want consistency in UI, go with Macintosh, because every Mac I have ever seen looks the same. If you want ease of use and installation, use Windows or a WELL-KNOWN (read RedHat, Mandrake, Suse, etc) Linux distro, or Mac. If you want everything to be right where you want it, and learn what the machine is doing, use Linux, and give Linux from Scratch a try. http://www.linuxfromscratch.org I have been using Linux for about three years, and after going through the steps on this site, not only do I know what I need and why I need it, but broke off the dependancies on package management that I had. If you can't find anything you like, you basically have two options: a) Do like Linus and build your own; b) Do like the Unabomber, and give up computers/technology for a shack in Montana.

Linux Is For Some... (2.66 / 3) (#56)
by squeakyweasel on Thu Oct 05, 2000 at 01:27:50 PM EST

Linux is for some people, not all. If you don't like it, you can always try to code your own interface. I prefer GNOME with Enlightment or WindowMaker myself but there are tons of window managers out there, I'm sure there's one you'd like. Why are you using RedHat in the first place? It's one of the bloat distrobutions (same with Mandrake). For clarification, Debian can run 2.4.x kernels, I have a Debian 2.2 box running 2.4.0-test6 sitting right next to my leg and it runs it very well.

If you prefer a more Windows-like interface, go try RedmondLinux (http://www.redmondlinux.org) or KDE 1/2. Caldara is also aimed at Windows users that want to switch over to Linux but don't want all the complications so it has a very easy UI.

As far as packaging is concerned, Debian's apt-get is beautiful. If you don't like it, there's always RPM which most coders support now. Or, you can always do it the old school way and download the tar.gz file.

I don't believe that Linux was supposed to be easy to use in the first place which is what serperates us Linux users from the general Windows population in the fact that we know a bit more about "hacking" our kernels. Well, that's all I have to say.

--Weasel

edibase and I were separated at birth! (1.50 / 2) (#67)
by vmarks on Thu Oct 05, 2000 at 06:14:05 PM EST

Edibase and I were separated at birth!

I currently have at home a thinkpad with RH7.0 and BeOS, a desktop with Mandrake 7.1/win98/BeOS and am thinking about giving QNX a run for it's money.

In my office, my mail machine is NT4, and my two other boxen run Caldera OpenLinux Server2.3, TurboLinux6 server, TurboLinux6 workstation in simplified Chinese, Debian, and Suse6.4.

I just got MacOsX PBeta on cd but haven't ponied up the cash for the hardware to run it on yet (soon, soon)

I too just want a distro to do what I want it to do simply, cleanly, and rapid-fire quickly. And they don't.

RH7.0 is noticably slower than the RH6.1 I had previously installed on the same machine. and it no longer recognizes my sound card after the upgrade, and won't let me install oss to configure the sound card because it doesnt like the 2.4.0 kernel headers. (didn't used to need this, sndconfig used to work! lousy redhat)

Mandrake 7.1 hs worked reasonably well too, but KDE isn't perfect, and neither is GNOME. I have long resisted criticizing either because I can't contribute code, but as a user, they don't *quite* reach their goals. yet.

I have looked toward Eazel, hoping for answers, but I expect I'll have to wait another year for something perfected to come along.

In the meantime I just got a 5.4gb drive for my thinkpad, so it's time to take out the 2.1 RedHat 7 drive and go for a huge QNX trial.. that and/or give that BeOS a run again... the only problem I ever had with BeOS was the abiword, bezilla, and gimp devels were falling behind and losing momentum, and I hadn't paid for a full version of GobeProductive... That, and one app I really wanted was an ACDsee-like picture viewer, and they just don't have one. oh, and dealing with viewing .ps/.pdf's was annoying to do from the terminal. maybe I'll look at qnx after all....



(2.50 / 2) (#70)
by daviddennis on Thu Oct 05, 2000 at 10:32:54 PM EST

That was very well written, especially for a 16-year old. I think you have a bright future ahead of you, since it's clear you can pick up and use a wide variety of systems. I'm sure that will be a major advantage in the years ahead, so take heart: You're gaining knowledge from your seeking, and that's a very Good Thing.

That being said, I'd like to echo the comments of one other fellow - you really should take a look at MacOS "Classic" (9 or before) and MacOS X. I'm running the MacOS X beta right now.

The biggest advantage of the Mac is that it was designed to be a single, consistent whole which makes some kind of sense in this crazy world. And that's a major reason that the platform continues to thrive, despite the high prices of Macintosh hardware.

The biggest disadvantage, as already noted, is pricey hardware.

At the same time, MacOS X is by far the best example of making a computer interface beautiful I've ever seen. You should definitely see it for yourself; if nothing else, find a Mac-owning friend whose bought the beta and have him (or her) show it to you.

I think you'll be impressed - pity about the cost of the good stuff.

D

amazing.com has amazing things.
And now, for something completely different... (2.50 / 2) (#78)
by Parity on Fri Oct 06, 2000 at 03:09:44 PM EST

I'm really really tempted to post yet another, 'Hey, whaddaya mean, -my- distribution is -way- cool!'; and I -do- think that Debian is cool, and I do think that apt is an excellent package manager. However, that's not the point.

I think that this is the -wrong approach- altogether. Linux is all about -you- and what -you- want to do with your system. It doesn't really matter what distribution you use. Once you've got a kernel, a gcc-environment, and a bash-shell, you're set. Linux is all about what you want to do with it. I've been using Debian for two major revisions now, -without reinstalling-. I do not install new distributions, period. I added KDE to my apt-sources and installed it. I've downloaded things that are not packaged and make'ed them. I've written little programs and shellscripts and perlscripts to glue A to B in a way I like, and put them in ~/bin or /usr/local/bin. My modem is dialed with 'netconnect' at the command line (setuid C program to execl pppd, been using this technique for awhile, though pppd comes with a structure, documentation and examples such that I could configure so any user could dial and still only be allowed to dial the default isp; anyway, now that I've got persist on, it's not relevant). 'dofifo' creates a named pipe, /tmp/festivalpipe, and feeds everything that comes into it into an ongoing festival session. (perlscript that creates scheme code...) My emacs figures out if I'm in windows or unix, if I have a 'DISPLAY' environment, etc, and sets up my font-lock and colors and macros. tcpserver handles some of my connections and inetd others, portsentry watches my back door. I have an account 'myth2' with a password 'myth2' a shell of /bin/false and a .xsession of '/usr/local/games/myth2/myth2'. (Full-screen mode myth2 without -any- window manager overhead.) /etc/init.d/localparams runs on switch to runlevel2, sets up my ip_masq, sets my volume, plays my startup sound, etc, etc.

By now you may be wondering if I -have- a point. My point is that I've tweaked Linux to be exactly what I want it to be. You would be hard-pressed to convince me to try to separate out my tweaks from 'stock' Debian so that I could switch to, say, slackware. I like Debian because it's good about install and upgrade, it's good about not screwing with my local apps, about asking before resetting config files, etc. I'd probably be happy under slackware, too, or any of the BSDs. I'm sure corel's installer is a great front end to Debian (I'll find out soon, actually, when I install onto a new box) however, it doesn't really matter to me. I'm not going to re-install. I've put a lot of effort into customizing my system. Some of my customizations may be 'stupid' to most people. I could care less. It's -my- box. It does what -I- want.
Pick a distribution - *BSD, MacOS X, * Debian, whatever, doesn't matter as long as you think it's 'pretty good'. Learn it. Learn where it puts things. Learn 'alien' the package converter. Learn how to type ./configure, make, make install. ;) learn all the myriad ways your PATH gets set and reset by X, your shell, your wm, etc. Keep a changes.log! Not that I'm good about keeping mine up to date, but, if you look through it and see, 'changed PATH setting in /var/lib/X11R6/my/distributions/special/path/spiffyDM.conf' then next time you want to adjust it you'll know where it is and down have to try to compose a locate | grep that'll spit out the one line you need.
Don't like your window manager? Change it! Don't like your desktop environment? Change it! 99% of what -anyone- wants out of Linux (excepting having this all happen 'automatically at install time by mind-reading or a simple set of menu options') can be done by tweaking config files, installing packages (native or .tar.gz), etc. Of the remaining 1% of things... well, you'll have to learn how to code.
Learn shellscripting, learn scheme, and learn perl! Emacs-lisp is 'scheme-like', festival-lisp -is- scheme, I can't tell you how many other packages speak scheme underneath the surface.
Shellscripts and perlscripts are great for doing small tasks that don't quite want to be a full app, and for gluing together pieces that have rough edges. (ie, suppose my super-experimental-midi player insists on being run from its local directory and referring to a bunch of relative paths, and my web-browser's understanding of 'helper applications' does not include 'start in directory' - No problem...
#!/bin/sh
cd /usr/local/super-experimental-midi
./sxm
and put -that- in /usr/local/bin. I must have a dozen shellscripts that trivial floating around to glue things together, and then the more complicated ones that always start with wondering, 'what if I tested for this first and then did it differently depending....' and soon I have pages of if and for... ;) )

And, of course, learn C and C++, because sometimes what you want just -isn't there-. No amount of scripting can glue it together from existing pieces, no configuration tricks can get another app to do what you want. It's sad, but true, Linux cannot (Yet!) do everything... but honestly, this is a very -rare- situation.

Does this sound like a lot of work? Like too much work? Then consider this - there are scripts and utility programs and configuration options that I set -years- ago that are still doing their job. The way I see it is this - Windows is easy to use up front, but you can't change it to do what you want; Linux is hard to use up front, but when you change it, or fix it, it -stays- changed or fixed. (Stupid packages notwithstanding; learn to love /usr/local, or in BSD-world, /opt.) In short, knowing windows -is- largely knowing the install process and what's available with point-and-click. Knowing Linux is a never-ending process where the install hardly matters. Everything you do -after- install is what matters.

Wow. That's longer than I meant to go on. Hopefully somebody will actually read it through. ;)

--Parity Odd



Re: And now, for something completely different... (none / 0) (#86)
by bse on Sun Oct 08, 2000 at 01:04:05 PM EST

well said that man!

but seriously, that is what linux is all about. its all about hacking it together from a base into something you find useful and productive to use; unlike seeing it as a replacement to windows and expecting it to do everything for you (ala windows).. if thats all you want, then go out and buy windows 2000, that's what it's there for.

i talk to people in irc, and they're like "Oh, i'm going to install linux", just because, just because windows has crashed several times (ahem). but then they do install it, and come running to me saying "i have this tar.gz thing, what do i do?". and i duely tell them, but then they ask it again and again, instead of learning how it works and tweaking and experimenting (like i had to do, 3 years ago). i agree, that may not be the best argument, since we all have to learn how to use it; but people nowadays arent like they were 3 years ago, especially wiht the likes of GNOME and KDE "making linux more desktop friendly" - which you could simply read as, "making linux a windows replacement, doing away with the cli et al". so what can we do? well i'm going to stick with apt-get and /usr/src =)



---
"Please sir, tell me why, my life's so pitiful, but the future's so bright? When I look ahead, it burns my retinas." -- Pitchshifter - Please Sir
[ Parent ]

"Fixing" (linux|bsd|beos|etc) revisited (3.00 / 1) (#87)
by Fetch on Sun Oct 08, 2000 at 06:29:59 PM EST

Reading your story, part of me wanted to cringe, and
part of me wanted to smile.

First off, I'm an OpenBSD nut. I know its strengths,
weaknesses, limitations. I know its configuration, its
layout. To put it simply, I can use it. The same is true
with Debian (in fact, I moved from Debian to OpenBSD,
for reasons that I only remember dimly now).

If you're concerned about Debian's packages, then become
a developer. Create 2.4-test kernel packages. Find a
favorite application and package it (I can almost garauntee
that NOTHING makes you more proficient with an application,
short of actually writing it yourself).

As for a spiffy GUI, most administrators don't need it,
and to be honest you probably don't, either. A GUI is for
users, to provide visual clues for tasks they might
seldom perform, and which they don't need to remember
at a concious level what to do. You're obviously smart
enough to be an admin, pick a window manager in which
you can functionally organize whatever work you're doing
(I use blackbox). If it pains you to not have everything
perfect, then tweak the hell out of it.

I see your concern about a universal GUI for linux to
be almost secondary. Yeah, it would be nice if a distro
of linux progressed to the point where my grandmother
would feel comfortable installing it on a computer (not
that she'd feel comfortable installing windows/OS9/beos,
but thats beside the point) and that she could use out of
the box, but even if thats never done then Linux will
still be useful (and used) by people who need a powerful,
hackable server OS.

User Interface is a matter of perspective, at any rate.
I'm typing this in Lynx, in screen 3 on vt 2 of my
server/workstation. Tomorrow I'll go to work and try to
fix SCALAPACK's lutime, in blackbox through a whole mess
of rxvt terminals. I can see the benefit of having a
standardized/location of configuration files for
applications (wasn't that a Usenix or LISA competition,
to design a system registry layout for unix?), but as
long as the syntax logic is defined, its useable.

Really, at this point you should probably decide for
yourself when it comes to an operating system/distribution
choice. You've played with all of them, it sounds like,
so pick the one you like best and decide on what faults
it has at different levels. Then, decide whether you can
learn to live with and love the quirks of different OS',
or decide whether you should invest time fixing things you
see as flaws, or whether the flaws are unfixable, and
_necessitate_ a change.

I emphasize "necessitate" because it sounds like you
switch operating systems too often as it is (I'm reminded
of people who multiboot 4+ operating systems). You can't
possibly be using (not playing, using) an OS effectively
if you don't stick with it for more than 6 months.

Looking at this, its rather pointless and rambling, but
hopefully it'll provide a little more insight to the
article's author about "perfect" operating systems.

(For the Perfect OS, I'm reminded of _We_... What is the
final number? :)

Developing a More Usable Linux | 86 comments (85 topical, 1 editorial, 0 hidden)
Display: Sort:

kuro5hin.org

[XML]
All trademarks and copyrights on this page are owned by their respective companies. The Rest 2000 - Present Kuro5hin.org Inc.
See our legalese page for copyright policies. Please also read our Privacy Policy.
Kuro5hin.org is powered by Free Software, including Apache, Perl, and Linux, The Scoop Engine that runs this site is freely available, under the terms of the GPL.
Need some help? Email help@kuro5hin.org.
My heart's the long stairs.

Powered by Scoop create account | help/FAQ | mission | links | search | IRC | YOU choose the stories!