|
The
Software Swamp
by David M. Schwartz, CEO, ImaginOn,
Inc.
As published in the May 24th, 1998 Sunday edition of
the San Jose Mercury News.
Have you noticed the sheer size of new software
programs lately? They can't even fit 'em on floppy
disks. They're on CDs. Did you watch your PC's
performance degrade after you upgraded your Web browser
to the new fourth generation version? Maybe you think
programmers just don't give a hoot about using up all the
space on your hard drive, and bogging down your machine
while they're at it. Well, don't blame us programmers,
we're just as fed up as you are. Software bloat
and its computer-choking behavior are the direct consequence
of operating systems from hell. And I'm
not just blaming Bill Gates and his Windows 95 crew, Mac
OS 8 and popular versions of Unix are equally nasty. Once
upon a time, operating systems ("OS") were a joy and a blessing
for programmers. Operating systems freed us from worrying
about troublesome programming details like where to store
data on a disk, or how to put a picture on the video display.
Just ask the OS to do it, and like magic, the job was done.
Initially, operating systems were small, less than one-tenth
of a megabyte, for some. However, over the years,
operating systems have grown and grown. The soon to
be released Windows 98 and Mac OS-X will each suck up close
to 100 megabytes of your hard disk space and 16 megabytes
of main memory before you load a single word processor or
spreadsheet program. Sure, only 10% of your computer's
capability is used by the OS. But, put it in perspective.
That 10% represents more computing power than an entire
mainframe computer had in 1960.
Giant,
complex operating systems would be worth having if their
benefits outweighed the performance penalty, bulk, and pain
endured in creating software for these behemoths.
Off the record, many programmers agree the tradeoff is no
longer worthwhile. For the record, we say nice things
about Win 95, NT 4, Mac OS and Unix, because, hey, don't
bite the hand that feeds you. Lots of programmers
are seeking a way out from under the OS mudslide.
So far, the best alternative to come along is Sun Microsystem's
Java.
Write a
software program. Debug it. Ship it. Rest
assured the program will run on any computer with the capabilities
the program needs, be it PC, Mac or workstation. Programs
written in Java are like that. Java is indeed a great
step forward. In my opinion, the entire computer industry
owes Sun Microsystems a big, "Thanks, I needed that."
Using Java moves us closer to freedom from "Windows Ninety-Whatever"
and "Mac OS-WhoKnowsWhat". But why stop here?
Why not eliminate software operating systems altogether?
It is possible.
Today's
computer chips have both the room and the power to absorb
the tasks that software operating systems perform now.
Once these functions are built into the hardware, we can
do away with the software OS entirely. We will make
a few small changes in the way we create and distribute
programs. Instead of compiling a program's C or Fortran
language source code into binary code before shipping, we
will ship the source code itself. To protect the trade
secrets in the source code, it will be encrypted, then decrypted
and compiled when you want to run the program. Old
OS functions will be stored in chips, and used as needed
to support old software written for Win 95, Mac OS and Unix.
Programmers will place descriptions at the beginning of
their software that inform the computer of the language
the program is written in, the OS it was written for, if
any, and the system resources required, such as memory,
speed, input devices, and display. The computer will,
in turn, write its own descriptions on data files stored
by programs. Using this approach, software written
in any current or future programming language will be able
to run on any computer, old or new.
All we
need to make this happen, to put Win and OS Whatever behind
us, is one industry standards committee dedicated to writing
a specification that we programmers can use, and that chip
manufacturers can count on to describe our software programs.
Sure, it will take some meetings, some work, a few drafts,
some more work, but at the end of the day, everybody will
benefit. Programmers will once again spend their time
making programs as good as they can be, instead of fighting
OS dinosaurs. Computer users will enjoy faster, simpler,
more reliable machines. Our industry will be ready
for another period of unfettered growth.
About
the Author
David M. Schwartz, IEEE, AES, is the CEO of ImaginOn, Inc.,
San Carlos, CA, a software startup company in the internet
hybrid CD business. Mr. Schwartz was formerly a Vice
President of Atari Corp. and earlier, a senior member of
the technical staff at Tandy Electronics R&D.
He has been granted 7 US patents and published numerous
technical papers.
|