discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Installer UI advices


From: Jeremy Tregunna
Subject: Re: Installer UI advices
Date: Fri, 11 Mar 2005 23:39:15 -0500


On 11-Mar-05, at 10:49 PM, Jesse Ross wrote:

I'm going to blame all of this on how I was raised. :)

That's okay, we understand.

<rant>

Uh oh... =]

I know that this list has it's share of Mac users, but I don't know how many of them were Mac users before OS X. If there are any, maybe they can tell me if my memory is bad. I grew up on Macintosh. My first computer was an Apple Centris 650 and I've used "classic" Macintosh OSs (7,8,9) more years than I've used OS X. In that system, there was a System folder, which you only touched when you needed to modify the system. Everything else was up for grabs. You could organize it however you saw fit. Of course it was a bitch for standardization, but it was more about freedom of organizing _your_ space, _your_ computer. Once I started using OS X and Linux, I was abhorred by all these folders that meant nothing to me, and were taking up _my_ mindshare and field of vision when I went looking for my files. Why should I have to see any of this crap? Does it have any bearing on just getting my work done? Why can't I throw them away? Why, when I try to put things in them, does it tell me I'm not authorized? It's _my_ computer... shouldn't I be able to put things where I want and move what I want where I want?

Because Unix (and Unix-like systems) have a certain filesystem hierarchy that they're bound to. For sake of simplicity (in developing said systems) it's generally easier to go with convention, then trying to implement something completely different, that may or may not be more intuitive to the user. Millions of us have "grown up" with the way this is done, and having it done any other way would just seem silly (as you have just pointed out)... It's a matter of perspective.

This is mindset of the typical user. Put the power in their hands to do what they want with their computer, and don't make the computer invade into their lives and space.

Then you run into problems with user X having files in location /foo/bar, while user Y and Z may have them in /my/gosh/my/files/are/so/organized. However, 40 thousand other users may have 40 thousand other different places to put the same files, it makes for hell.

This invasion of the computer's world into the user's world is not exclusive to *nix. Windows is the same way, so countless people get used to having to see their workspace littered with things they shouldn't have to deal with. I don't think that's right. They should be able to manage their computer as they see fit, not how the computer sees fit. The computer should be invisible.

99% of the time, a user need not navigate outside their "home directory" (under windows, this would include my documents, my pictures, etc; under Unix systems, would be /usr/home/joe_user (or wherever you keep your home dirs). And you can organize this however you like, more power to you; but changing the where the system files are, is just silly in my opinion. Leads to more problems (with regards to upgrading programs) than its worth.

This is my biggest qualm with package managers and installers and software you have to use first to get the software you really want (Frederico, I'm not trying to down your work -- you're doing a good job and don't stop because I get into a rant about usability and user-empowerment). I don't know how many times I've done apt-get install somesoftware, and then I can't figure out where my software went to. Maybe it's in /usr/bin, maybe it's in my home folder, maybe it's in the start menu. I have no idea, it doesn't make sense to me.

Not all package managers are as abhorant as some are when installing files (but some are, and some are worse... just means we need to get rid of those package managers).

Maybe that's because I grew up on a Mac, and so I see where it was at its best (drag and drop and done) and want to use that everywhere. It's ridiculous how much _work_ I have to do just to set up a Linux machine, and how much hunting around the system I have to do. I've learned a lot about how it all works, but the point is, I shouldn't have had to, and your average, web-surfing end user isn't interested enough and won't take the time to. They will say "this is too hard" and give up.

That's perfectly fine, Unix systems aren't for everybody, and anybody who claims the contrary is full of it. (I'll continue this thought in the next section.)

There are ways to make this stuff easier on the end user. It can be done. If it means more programming, or more effort up front for the developers, but it means an easier life for end users, then it's worth it. We tend to do this for ourselves, but if we want to make something that changes how everyday people work and communicate and live and interact, then we need to think of them.

Sure it can be done, and probably more easily than some might think, but the problem doesn't end with project X. Fixing project X is one thing, but what about the 100 thousand other possible pieces of software (and more) that the user may choose to install on their system. Logistically speaking, it doesn't make much sense to try and impose this on a large scale, not unless you're willing to do this large amount of work. Personally, I got better things to do, like spend time with the family, and work on functionality, bug fixes, etc for other projects.

No, better than that. We need to think _like_ them.

I don't think there's one single developer on this list who couldn't possible comprehend what a user wants. With this statement you seem to imply that developers aren't users either, when, we are.

They HATE computers. They just want to get some work done. They don't want to think "I'm using a computer" -- they want to think about the paper they're writing, or the photos they're organizing, or the web site they're looking at. They don't want to think about compiling software so that it works for their machine, or hunting down dependencies, or adding repositories to a sources list, or finding out where that installer put their app. They want to be able to download an app, drop it on their machine, and use it and have it work.

This kind of thing is already done (80%) by almost every package manager. They don't tell you where the software is installed (at least any I've seen) unless you dig into their package list, which as you point out, no user should have to do. This is a weakness that can be solved, but it's not as easy as you may think. Might work fine for 50 applications, but then you'll run by one that it just won't work with, what do you do then? Eventually you can only adapt a system so far before it turns into an overly complex piece of crap that barely does its job well anymore, not to meantion leaves a lot to be desired when it comes to maintaining it.

These are big problems to try and solve. I'm not saying I have all or any of the answers. I just think that there is a way to make all of this easier, more invisible. Wouldn't making an open source system that is easier to use than a Mac be an amazing and worthy feat? I want to make something I could give my mom, and have her understand. She's frightened of computers, and I want to make something she can manage and not be afraid of. If I didn't think GNUstep was a great base for that "something", I wouldn't be here.

This is why God ... I mean Steve Jobs and friends spent much time working on systems that do just what you want. I doubt your Mom is going to have any need to poke around the file system much more than looking for her documents, opening up her "Applications" directory to start an app, etc... (Though admittingly, I don't know your mother, so that's only a loose assumption.)

</rant>

Had fun?

J.
--
Jeremy Tregunna
jtregunna@blurgle.ca



reply via email to

[Prev in Thread] Current Thread [Next in Thread]