From owner-freebsd-hackers Thu Apr 11 19:24:24 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id TAA09239 for hackers-outgoing; Thu, 11 Apr 1996 19:24:24 -0700 (PDT) Received: from phaeton.artisoft.com (phaeton.Artisoft.COM [198.17.250.211]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id TAA09234 for ; Thu, 11 Apr 1996 19:24:18 -0700 (PDT) Received: (from terry@localhost) by phaeton.artisoft.com (8.6.11/8.6.9) id TAA00504; Thu, 11 Apr 1996 19:22:47 -0700 From: Terry Lambert Message-Id: <199604120222.TAA00504@phaeton.artisoft.com> Subject: Re: Lesstif (motif compatible) package. To: jkh@time.cdrom.com (Jordan K. Hubbard) Date: Thu, 11 Apr 1996 19:22:47 -0700 (MST) Cc: terry@lambert.org, alk@Think.COM, hackers@freefall.freebsd.org In-Reply-To: <8945.829268873@time.cdrom.com> from "Jordan K. Hubbard" at Apr 11, 96 05:27:53 pm X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > One thing people also frequently neglect is that Tk is a *much nicer* > environment than Motif! I can't count the number of times that I've > had my interface 98% complete and then run smack into the boundry > cases where I've got something I want to represent graphically but > none of the available objects are going to do it for me. I either end > up writing my own Motif widget, which is a real pain in the butt and > can easily take twice the time it takes me to write the code that USES > the damn thing, or I construct an inferior interface that makes a best > effort attempt with the existing stuff. Tk gives me a very nice > "canvas" widget which allows me to create very arbitrarily rendered > interface objects and bind actions to them just like the higher level > objects. Don't knock this one until you've tried it, seriously! I have tried it. The problem is that new widgets are a bad idea, in general. "Compatible with extensions" is a bad thing, and all you really succeed in doing is violating style guidelines. In theory, your users are trained to use programs that conform to the style guidelines, not particular programs by name. Yes, I know that apps developers want to make their applications "value added" so they stand out and aren't just commodity items. For a word processor (for instance), IMO, you do this by making the spell chack run faster, not by adding "cool colored shadows" or "page flipping frobs" different from the ones supported by Motif 2.x already. > I know, you're now going to come back with the argument that one can > trivially write a blah blah blah widget in Motif (probably using the > word "virtualize" at least once :-) but that's not the point - I don't > WANT to have to write custom frobs for Motif each time I want to > display a triangular button or a flipping-page widget or whatever, nor > do I want to have to reinvent the generalized canvas widget there. Wrongo. I'm going to say that using custom frobs is bad, and that if you need a triangular button, your user interface design is bad. If you succeed in creating your little triangle, where in the users previous training does the information on how to use it come from? The name of the game for a software buyer is making users productive, not getting "hackerware" with "neat frobs". A user is most productive if they do not need additional training. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.