From owner-freebsd-install Mon Nov 27 07:59:50 1995 Return-Path: owner-install Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id HAA08622 for install-outgoing; Mon, 27 Nov 1995 07:59:50 -0800 Received: from fieber-john.campusview.indiana.edu (Fieber-John.campusview.indiana.edu [149.159.1.34]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id HAA08601 ; Mon, 27 Nov 1995 07:59:32 -0800 Received: (from jfieber@localhost) by fieber-john.campusview.indiana.edu (8.6.12/8.6.12) id KAA08153; Mon, 27 Nov 1995 10:59:20 -0500 Date: Mon, 27 Nov 1995 10:59:19 -0500 (EST) From: John Fieber X-Sender: jfieber@fieber-john.campusview.indiana.edu To: "Jordan K. Hubbard" cc: hackers@FreeBSD.ORG, install@FreeBSD.ORG Subject: Re: Thoughts on the install and on Red Hat Linux. In-Reply-To: <9417.817366166@time.cdrom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-install@FreeBSD.ORG Precedence: bulk (BTW, there is a mailing list just for the discussion of installation issues. I might suggest moving this out of hackers.) On Sat, 25 Nov 1995, Jordan K. Hubbard wrote: > Hmmmmm. This sounds suspiciously like "design before implementation" > or one of those other socialist granola-eating philosophies from the > 60's at places like Berkeley & CWI. Jeeze, he'll start quoting Wirth > next if we don't stop him! :-) Er, I'm in Indiana. You know, the midwest? Not well known for radical politics. ;-) > Seriously, this sounds like a reasonable attempt to bring the techies > back down to earth. Any human interface people care to jump in at > this point and start suggesting how John's 16 step program might be > implemented? I'm good at thinking up the implementation details, but > not so good at the "story boarding" that John seems to be suggesting > for this stage. It is really not hard. To condense everything, the essential point is that sysinstall must know lots of things about its environment to work correctly. Some things can be determined automagically while other information must come from the user. It is the latter that drives the interface design. If you don't have a clear map of what information the user has to provide, it will be pure luck if you get a good installation program out of it. I think the current install is far from a disaster, but there is a lot of room for improvement. In particular, the sequence for a lot of things is wrong. Just one of many example: while the disks must be partitioned and formatted be for installing distributions, the user could make much more informed partitioning decisions if the distributions were selected first. In fact, sysinstall could even provide intelligent defaults if the it knew what distributions were being installed and how much space each required. Next to having a clear map of *what* the information the user needs to supply, we have to determine *where* they will get that information. This information drives the help screens and highlights potential problem areas. Currently we have a couple large, general help files. We could do much better with single screen, context sensitive help that *directly* answers the question of where to find the needed information. EG: selecting active versus passive ftp modes. Exactly how does one determine which is appropriate? This should be answered. The list of information the user must supply is also a list of candidates for automagic discovery. For example, what about trying bootp to determine IP numbers? It will fail in many cases, but it would be a BIG win in some settings. Only on failure would the user have to fill in the numbers. (However, it may be wise to have the results returned by bootp displayed for confirmation.) There are many others that should provide plenty of clever programming work for those not too interested in that fuzzy thing called user psychology. I'm sure people will argue "but any serious unix admin should know all about disk geometry and geometry translation in PC's". True, BUT, every serious unix admin is a novice at one point and for a lot of our users, that point is installation. The more esoteric details we can spare them, the better off they will be, and consequently, the better off FreeBSD will be. Keep in mind that for numerous practical reason, FreeBSD, NetBSD, and Linux are rapidly becoming THE training ground for budding unixheads. If the entry barriers for FreeBSD are lower than the rest, then these people will use it, stick with it, and promote it. As for storyboards and prototype dialog screen? I'll just say that doing them will save a lot of time in implementation. You don't need fancy tools. Pencil and paper works amazingly well. I'll probably be chased off the list for saying this, but Hypercard is a killer app for interface prototyping. -john == jfieber@indiana.edu =========================================== == http://fieber-john.campusview.indiana.edu/~jfieber ============