From owner-freebsd-chat Thu Aug 24 13:57:47 2000 Delivered-To: freebsd-chat@freebsd.org Received: from smtp02.primenet.com (smtp02.primenet.com [206.165.6.132]) by hub.freebsd.org (Postfix) with ESMTP id 9764137B423 for ; Thu, 24 Aug 2000 13:57:43 -0700 (PDT) Received: (from daemon@localhost) by smtp02.primenet.com (8.9.3/8.9.3) id NAA09728; Thu, 24 Aug 2000 13:55:31 -0700 (MST) Received: from usr06.primenet.com(206.165.6.206) via SMTP by smtp02.primenet.com, id smtpdAAAndaiZs; Thu Aug 24 13:55:14 2000 Received: (from tlambert@localhost) by usr06.primenet.com (8.8.5/8.8.5) id NAA15423; Thu, 24 Aug 2000 13:57:24 -0700 (MST) From: Terry Lambert Message-Id: <200008242057.NAA15423@usr06.primenet.com> Subject: Re: OSS, Sun, GPL, random ramblings To: jcm@FreeBSD-uk.eu.org (j mckitrick) Date: Thu, 24 Aug 2000 20:57:23 +0000 (GMT) Cc: chat@FreeBSD.ORG In-Reply-To: <20000821140419.B13975@dogma.freebsd-uk.eu.org> from "j mckitrick" at Aug 21, 2000 02:04:20 PM X-Mailer: ELM [version 2.5 PL2] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-chat@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > i've been reading and thinking lately (uh oh :) > > Once there are OSS versions of software available, is it > likely these will grow to dominate, and squash innovation? > Sun is releasing OSS applications like staroffice and others. > what will be the motivation to write a competing one from scratch? Money. It is becoming a common tactic to define standards with a high enough complexity that OSS implementing the standard is simply so hard to write that no one ever does. Using this tactic, one can imagine all sorts of future work for which people will continue to pay money. Likewise, most OSS is poorly packaged; a lot of it uses the GNU "configure" and "autoconf" and "automake" and similar tools. These tools are provably vastly inferior to "imake" and "xmkmf", out of project Athena. The GNU tools were ncessitated by the inability to tell from one day to the next where the OSS OS's API's were going to be in Linux, and, to a leser extent, the BSD family. Customers want something that works, not something that mostly works, sort of works, or might work with some tweaking. Productization is not only about packaging. Once built from scratch, unless the full validation test suite is included, good luck getting an anser other than "well, it works for me; have you tried running it on mumblety-frotz version of Linux -- the one from last Tuesday, not the one from the day before with the broken libwhatzit?". Even with a full validation suite included, how full is such a suite, really? I have yet to see one written in TET or ETET. Crossing that barrier, we have documentation. One of the most intriguing, yet piss-poorly documented OSS projects is ZOPE. I would really have liked to use it for a project, but of course I had to go with PHP instead; much less interesting, much higher overhead (it's going to cost me ~$36,000 in extra hardware), but rather well documented (so it's possible for people to document their code well -- just don't expect it from any but the HTML geeks, who mostly write text or a close relative for their living. Then we have installation. Most OSS operating systems really suck at layered software installation. None of them has reached even the level of SVR4 of over half a decade ago, let alone Windows. I won't even try to compare them to that pinnacle of layered software installations of almost two decades ago, VMS. OK... now say you have it installed, and it's documented, and it didn't try to kill you because it was badly packaged. How do you adminstrate it? Does the administration fit into a common administrative framework across all the places you want to install it? Feel free to assume homogenous machines. The answer is "no". Unlike the products from commercial companies, on commercial OSs, each and every OSS product feels the need to invent the "perfect" adminstrative UI, convinced that everyone who came before them either "didn't get it quite right" or "didn't know what the hell they were doing". Forget for a minute that most engineers are not cognitive psychologits, and that most of them are not HCI (Human-Computer Interaction" specialist, and the aren't graphic artists, and they aren't UI designers. One would think that it was not rocket science to design a common navigation model, and then stick with it, come hell or high water. That's not to say that professionals don't screw up, either. I occasionally run Lotus Notes. Like most groupware, it's in the company because it was mandated by executive order. People really hate the hell out of groupware, but executives don't care about likes and dislikes as much as they care about the IT costs associated with stranding an IT person in the middle of a desert of differeing applications, when it comes time for them to answer the phone to support an internal user. So I run Notes, and pick up my corporate email late on Friday afternoon, whether I need to or not (this last because I'm trying to show that I'm a good corporate citizen). Notes has a lot of UI idiocy, but the worst offender of all is the "close window" icon on the "replication" window, which, if you click it, does nothing, because it should have been grayed out, but wasn't. The point of the above rant being that, every time you screw up, you throw all of the users prior training out the window. The user wants all their applciations to have the same look and feel, the same navigation model, the same location for common menus, the same left or right, top or bottom, for scroll bars, the same action of the scrollbar thum in terms of its size showing, relative to the size of the region in which it moves, how much scrollable area is being hidden, the same location for the up and down arrow buttons, the same action when you click between the thumb and the edge of the region in which it moves ... etc. etc.. In other words, users don't want to be thrown into a different random environment each time they start a different application. I won't even go on about the morons who think that CD players controls should look like CD players, or Internet telephony applications like cell phones... "Yes, but... what about my creativity?" whines the earstwhile UI ``genius'' (finger-quotes intentional). Screw it. And if you don't like that: Screw you. The program you are writing is not for you. It's for your user. And your user's company has paid, on average, $2,500 a seat training their employees how to work their desktop. They don't like paying more just so you can do something you think is creative, but which in reality is just going to be confusing to the people who have to use it, and have never seen it or anything like it before. Users want a nice, bland environment. There is a reason that all of the little tabbed dialogs in the Windows control panel look alike, no matter which one of them you run. And even if users wanted something else, the boss is not going to pay a hidden per user cost to acquire it for them. So the bottom line is that there is more to commercial software than the quality of the algorithms, or whatever else. It's a gestalt called productization. And OSS is still very far from achieving that gestalt. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-chat" in the body of the message