Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Jun 1995 01:04:08 +0100
From:      "Jordan K. Hubbard" <jkh@freebsd.org>
To:        obrien@Sea.Legent.com (David O'Brien)
Cc:        install-geeks@freebsd.org, hackers@freebsd.org
Subject:   Re: User Interface Software 
Message-ID:  <3335.804038648@whisker.internet-eireann.ie>
In-Reply-To: Your message of "Sat, 24 Jun 1995 19:12:44 EDT." <9506242312.AA14475@seaquest> 

next in thread | previous in thread | raw e-mail | index | archive | help
> YUCK!!!  If I wanted to install from a pretty GUI that wrapped me in a
> stright jacket I'd install OS/2 Warp or Micro$oft-NT.

To paraphrase a common phrase from the 60's:  "3 billion Chinese can't
be wrong."

Now I just need to remember what that phrase was in reference to.. :-)

Anyway, I'm not proposing a strait-jacketed Microsoft clone for the
New Sysconfig, just something a little better than what we have now.

> Sun put so much working in the new GUI install of Solaris 2.4 with little
> to no added functionality.  In fact, I'd rather install SunOS 4.1.3 anyday.
> Sun's GUI has to many (are you sure?) prompts and gets in the way by
> popping up too many cute windows.

This is not an argument against GUIs, IMHO, just the misuse of GUIs.

> Installation programs that need mice?  JUST SAY NO.

I never suggested going that far, no.  But you're forgetting something
crucial here:	It's not just an installation tool.  It's also supposed
to be something you can use AFTER the system is installed as a general
system management tool.

Let me see if I can put the history of FreeBSD installation in some
perspective (which may be of enough general interest that I've decided
to include -hackers in this):

	1.x:	Used a shell script.  Some purists still maintain that this
		was the ultimate installation tool (terse, cryptic, dangerous)
		but I'm not inclined to agree.

	2.0:	First "menu based" installer.  Asked very few questions
		and didn't offer many hooks for going back, but it was
		something..  Code Name:  sysinstall.

	2.0.5:	Second menu based installer.  Somewhat deficient in the
		fdisk/labelling department still, but asked many more questions
		and allowed one to configure quite a few more system config
		parameters without having to know which files to edit.
		Code Name:  Son of Sysinstall.

	2.0.5-950622-SNAP:
		Slightly improved 2.0.5 installer, allows the user to
		access more of the underlying functionality directly
		AND have a more "lead me by the nose, please" installation
		option as well.  Heading more in the direction of a true
		expert/novice split as an install-time option.

	2.1:	Last release to use Son of Sysinstall.  This version will
		be fully internationalized, allow even more access to features
		as well as a "templated install" (you'll be able to tweak
		the floppy for use in academic clusters and other specialized
		situatiosn) and true "express" installation where the thing
		will attempt to install the system from start to finish
		without specifying anything.  The experts will also find all
		kinds of nifty low-level editing options for really getting
		down to the bare metal.  This will also feature a lot
		more menus for quick access to various system configuration
		parameters and generally be the FIRST in the sysinstall line
		to truly have some genuine usefulness in the system management
		area.  Suggestions for features now being cheerfully accepted!


	2.2:	First release to use "sysconfig", a totally new hybrid
		installation/configuration tool that will use text menus
		and/or SVGA graphics when run at installation time and
		X11 widgets (of some sort) when run under X11.  The clear
		goal of this effort is to fill the roll that "sysadmsh"
		does under SCO.  You'll get all the installation whizzies
		with reduced functionality when running on a VGA or serial
		line and everything in full technicolor when running later,
		under X or a proper SVGA display.

	2.3:	Sysconfig with all the bugs removed and the rough edges
		filed off.

You should take the "future goals" section of this with a grain of
salt, of course, but that's basically where we want to go.

> Personally I really like the current text based install program.  Granted
> there are places I think it could be improved, but these short commings
> would still be with with a GUI slapped on it.

Yes and no.  Being on the design side of this, I can tell you that a LOT
of things (and the network interface configuration springs immediately
to mind) would have been quite a bit better if I'd had a proper scrolling
list, more flexible "buttons" at the bottoms of menus, more rational keyboard
accellerators, etc.  There are some things that you simply hit a wall with
when you're trying to present with the crude text tools we have now, and 
I'd also rather focus on providing functionality than in spending literally
weeks fighting with the presentation of the information I'd like the user
to be able to work with.  Doing everything by hand, especially with curses,
really puts a significant burden on the interface designer and I'm not
particularly keen to go through all that again.

So, we figured that since we have to have a better set of "widgets" than
these anyway (libdialog is NOT my idea of the ideal interface paradigm)
and while still facing the reality of serial and SVGA installation, we might
as well build a toolkit that offers the _programmer_ a far nicer and
higher-level interface that also abstracts away the limitations of text
mode to the point where all the "GUI" objects will still be available,
just not quite so nice for the user to work with.  I think that's a limitation
that everyone can deal with, and once the user is up and running X (if that's
their decision) then they can get a much nicer interface to the whole
thing.

> To say the least!  Show me something written in C++ (in an OOP) way that
> didn't take up a lot of space.  For such a small program does OOP really

I'm no fan of C++, trust me, but I know that it's also not impossible to
write compact C++ code.  The failure of most C++ based GUI toolkits is
that the programmers fall too much in love with abstraction and they
bloat the whole thing out 9 ways to Sunday as they toss in feature after
gratuitious feature.  Since I'll be one of the designers of the new sysconfig
toolkit AND one of its main "customers", I'll know just what NEEDS to go
in and what doesn't.

"Trust me." :-)
					Jordan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3335.804038648>