🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #4913

Software Technology is NOT Primitive

#4913
From: Lawrence Crowl
Date: Thu, 22 Oct 1987 01:01
54 lines
3711 bytes
Software technology is not in the primitive state that people so constantly
moan about.  First, software has a much more difficult task than hardware.  We
have more expectations from software than hardware, so the perceived state of
the technology is less than the actual state.  

Consider the "great advance" in memory chip size.  Most of the impressiveness
of the advance comes from replication of design effort.  Is a software engineer
given accolades when he calls a subroutine a million times instead of a
thousand?  Hardly.  Much of hardware design is replication, but very little of
software design is replication.  

In 1950, a processor had hundreds to thousands of gates and a large program had
a hundred to a thousand lines.  Today, a processor has (say) a hundred thousand
to a million gates, while a large program has a hundred thousand to a million
lines of code.  The track well don't they?  But let's look closer.  In 1950, a
processor had a control unit, a few registers and an ALU while a program had a
simple routine to read cards, a simple routine to drive the printer, and a
simple core algorithm.  Today, a processor had a control unit, a few registers
and an ALU (note the less than radical change), while a program has a graphics
interface, a file manager, a recovery scheme and a performance monitor in
addition to the core algorithm.  There has been quite a deal of change in the
tools and _functional_ capabilities of software systems.  

"But hardware systems have improved performance by four orders of magnitude
since 1950!"  True, but for many problems, you are better off running today's
algorithms on 1950's hardware than 1950's algorithms on today's hardware.  Do
not deny software its contribution to performance.  (Although to be fair, we
have already reached the theoretical maximum performance for many algorithms.)

In article <3349@uw-june.UUCP> bnfb@uw-june.UUCP (Bjorn Freeman-Benson) writes:
>However, one must consider that current software technology is at the level of
>individual transistors and resistors, and that we could use the step up to
>"7000 series ICs".  After that, custom and semi-custom would be great.

Well, I apply different analogies.  I think you will find these better related
to the actual scale of work.

transistors == machine language
7400 series == assembly language
msi         == higher level languages
lsi         == libraries
vlsi        == utility programs (ala Unix)
custom ICs  == inheritance and generics (needs more experience to say for sure)

It looks to me like software and hardware technology have tracked fairly well.
The cause for the difference in perception is that hardware has done the same
task cheaper and faster while software has performed an ever more difficult
task.  Because hardware has simpler measures, it has more apparent progress.
The actual progress is roughly equivalent.

-- 
  Lawrence Crowl		716-275-9499	University of Rochester
		      crowl@cs.rochester.edu	Computer Science Department
...!{allegra,decvax,rutgers}!rochester!crowl	Rochester, New York,  14627
Technical Details
Message-ID: <3471@sol.ARPA>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!bbn!rochester!crowl
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!bbn!rochester!crowl
From: crowl@cs.rochester.edu (Lawrence Crowl)
Newsgroups: comp.lang.misc,comp.software-eng
Subject: Software Technology is NOT Primitive
Message-ID: <3471@sol.ARPA>
Date: Wed, 21-Oct-87 21:01:55 EDT
Article-I.D.: sol.3471
Posted: Wed Oct 21 21:01:55 1987
Date-Received: Sat, 24-Oct-87 08:20:40 EDT
References: <3405@ece-csc.UUCP> <638@its63b.ed.ac.uk>
Reply-To: crowl@cs.rochester.edu (Lawrence Crowl)
Organization: U of Rochester, CS Dept, Rochester, NY
Lines: 54