|
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.
|