🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #4941

Re: Software Technology is NOT Primitive

#4941
From: Karl Kleinpaste
Date: Tue, 27 Oct 1987 13:17
67 lines
4453 bytes
crds@ncoast.UUCP writes:
   We have
   processors today which can out-run the processors of 1978 (10 years
   ago) by 20 to 1.  We have software today which can probably be
   out-run by the software of 1978, even when we use it on that
   powerful processor.  Sure, it's USER FRIENDLY, ERGONOMIC, etc., but
   does it keep pace with the advances in the industry?  Why don't I
   see ANY software advances that are even an order of magnitude above
   1978?  This would give me 200 times the power, considering the
   advances in hardware!!

In watching this discussion, it seems the only metric which people
want to apply to software is performance.  Raw performance, how many
widgets can you prefrobnicate in minimal picoseconds.  It seems to me
that this is not the right way to view software.

Aside from the fundamental problems of P?=?NP and similar questions, I
tend not to like looking at software from the sole standpoint of how
fast it goes.  Yes, speed is important - anything written by a
programmer should be designed to be fast, as fast as possible.  I
think I do much more than an adequate job of that in the code I write.
But I am not looking for pure speed in what I design; I am also
looking for new functions, new capabilities, a different way of doing
something, a different way of looking at an old problem.

Consider the case of bit-mapped window displays.  The hardware to
implement them is relatively simple.  A largish memory, an ability to
move large bit patterns fast, possibly a dedicated co-processor for
managing the whole beast.  The rest is software.  I think this is an
excellent example of a wonderful marriage between advances in hardware
and software.  Hardware provided the ability to do something in new
software.  The new software provides new capabilities and new power
for the user of the whole package.

Now consider the resulting power of that package.  I'm sitting in
front of a Sun3 using X.  The hardware provided here is exactly what
is needed to support the software concepts required.  But to me, the
resulting power of this box is really embodied in what the software is
doing.  On my screen right now, there are 10 windows.  All of them are
doing useful things.  Granted, some of them are not doing very
interesting things; I have an analog clock in one corner, and two load
meters in another.  But that still leaves 7 other windows doing real,
vital, practical work.  Even those two load meters are vital to my
work, because it's those meters that I will be watching to see if
something causes a performance spike, and that will cue me to go look
at the indicated system to see what's going wrong.  So in practical
terms, I have 9 simultaneous activities going on which are of value to
me.

That's roughly an order of magnitude improvement over the days of
1978, when I sat in front of a dumb CRT, connected to exactly one
system, doing exactly one thing.  The parallelism inherent in my brain
is being put to positive use.  I didn't even need parallel hardware to
do it.  An approximation of parallelism through timesharing is
sufficient for my mind to fill in the remaining gap.

I am not attacking or denigrating the advances in hardware in any way
whatever.  (My graduate work was in software performance increases,
after all, trying to take better advantage of existing recent hardware
improvements.)  But I think that software has come rather a long way
in the last 10 years.  It just hasn't come to us in terms of raw
performance.  It's exactly those areas of user-friendliness,
ergonomics, and expanded user capability that provide the final
improvement in the real power of the machine.
-=-
Karl
Technical Details
Message-ID: <697@tut.cis.ohio-state.edu>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!hao!oddjob!gargoyle!ihnp4!cbosgd!osu-cis!tut!tut.cis.ohio-state.edu!mumble@karl
References: <3405@ece-csc.UUCP> <638@its63b.ed.ac.uk>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!hao!oddjob!gargoyle!ihnp4!cbosgd!osu-cis!tut!tut.cis.ohio-state.edu!mumble@karl
From: karl@mumble.cis.ohio-state.edu (Karl Kleinpaste)
Newsgroups: comp.lang.misc,comp.software-eng
Subject: Re: Software Technology is NOT Primitive
Message-ID: <697@tut.cis.ohio-state.edu>
Date: Tue, 27-Oct-87 08:17:12 EST
Article-I.D.: tut.697
Posted: Tue Oct 27 08:17:12 1987
Date-Received: Sat, 31-Oct-87 05:44:34 EST
References: <3405@ece-csc.UUCP> <638@its63b.ed.ac.uk>
Sender: news@tut.cis.ohio-state.edu
Reply-To: karl@tut.cis.ohio-state.edu
Distribution: comp
Lines: 66
In-reply-to: crds@ncoast.UUCP's message of 26 Oct 87 12:19:34 GMT