From owner-freebsd-hackers Sat Jun 24 17:04:06 1995 Return-Path: hackers-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id RAA00841 for hackers-outgoing; Sat, 24 Jun 1995 17:04:06 -0700 Received: from whisker.internet-eireann.ie (whisker.internet-eireann.ie [194.9.34.204]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id RAA00801 ; Sat, 24 Jun 1995 17:03:48 -0700 Received: from localhost (localhost [127.0.0.1]) by whisker.internet-eireann.ie (8.6.11/8.6.9) with SMTP id BAA03337; Sun, 25 Jun 1995 01:04:09 +0100 To: obrien@Sea.Legent.com (David O'Brien) cc: install-geeks@freebsd.org, hackers@freebsd.org Subject: Re: User Interface Software In-reply-to: Your message of "Sat, 24 Jun 1995 19:12:44 EDT." <9506242312.AA14475@seaquest> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <3334.804038648.1@whisker.internet-eireann.ie> Date: Sun, 25 Jun 1995 01:04:08 +0100 Message-ID: <3335.804038648@whisker.internet-eireann.ie> From: "Jordan K. Hubbard" Sender: hackers-owner@freebsd.org Precedence: bulk > 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