From the Editor's Desk
Dear Member,
Those of you who have been watching us closely will have
noticed that we sort of skipped a newsletter. Although we did add more than 100
new volumes in the last quarter of 1991, I could not manage to collate and
compile another full newsletter. I therefore decided not to include those
descriptions which were sent to you in a leaflet format ("Great New Software")
just before Christmas; this would be a waste of paper and resources.
But this does not mean that you are losing out - on the
contrary! This is our volume 4 number 2 issue and we have devoted a special
issue (number 3) to Windows 3.0 (just in the nick of time before 3.1 arrives!)
which you will also find enclosed. Those of you who don't have Windows (yet)
can keep it for future reference or pass it on to a friend. Your membership fee
still entitles you to 4 newsletters, so this actually means that you get much
more than "one year's" discounted fees.
Talking of fees, you will have noticed that we had to
increase our fees to cover the VAT. Not since we started out in '87 did we have
an increase (just the elimination of the option to send your own floppies).
Members will hardly notice any difference: disks are now R 10 instead of R 9,50
(also makes calculations easier) whilst membership fees remain unchanged at R38
(individual)/R120 (corporate). Non-members, however, pay R 14 instead of R 12
per disk. Handling, P & P is now R 4. More bad news: if our costs continue
to go up (printing, telephone, postage, salaries) we will no longer be able to
absorb these increases and you might face another slight increase.
Yours in productive AND fun computing = Jean-Paul Van
Belle.
Table of Contents
Shareware: a vital part of the PC industry
Inexpensive software and virus threats 2
Questions on Artificial Intelligence
A less-than-serious interview with an expert 3
Beginner's Corner: Taking Advantage of Your PC's Hard
Disk
Part III: CONFIG.SYS and the Virtual Disk 5
Reviews of 4DOS and Virus Scan 9
COBOL - A brief History 12
The Life Story of a "REAL" Programmer
The ultimate credo of the real programmer 13
Against Software Patents
A provoking stand from The League for
Programming Freedom 16
The Libray Pages
Another 150 or so new additions to the
library 26
Shareware: a vital part of the PC industry.
Inexpensive software and virus threats
by Scheier, Robert L.
(PC Week v7 n6, p.62)
When the first rumblings of
the computer virus scare began to shake computing environments, we began to
look for a magic shield that would somehow protect corporate PCs from
infection.
Among the precautions offered
by some computer security experts was a blanket injunction to avoid using
shareware -- the relatively inexpensive software most commonly associated with
mom-and-pop vendors who distribute via electronic bulletin boards.
We reported that advice and
were summarily bombarded by cries of "Foul!" from a slew of shareware
vendors. Shareware is safe, they argued -- sometimes safer than shrink-wrapped
software. What's more, the shareware vendors told us, many corporate PC users
make shareware a central part of their software libraries.
We did some checking with
corporate users, and they told us the vendors were right.
There's no reason to stay
away from shareware because of a virus threat. What's important is to get your
software from a safe source -- a well-known bulletin board such as CompuServe,
the vendor itself or even a retailer.
Stay away from shareware
that's passed hand to hand or downloaded from a little-known bulletin-board
service run out of someone's spare bedroom.
Performing a virus scan on
any software you buy and enforcing proper backup procedures doesn't hurt,
either.
Especially heartening was the
level of service users reported getting from the shareware companies, which are
significantly smaller than the giants that dominate the industry.
Not only do some shareware
firms turn out high-quality software at a reasonable price, users said, but the
shareware vendors often do a better job of listening to customers than do the
mainline software developers. In these days of multibillion- dollar mergers and
takeovers, it's good to see that mom-and-pop entrepreneurs still have something
truly worthwhile to offer corporate computer users.
It's a sign that the
grass-roots innovation and creativity that launched and spurred the growth of
this industry have not disappeared. And we're happy to set the record straight
about the safety of shareware.
Questions on Artificial Intelligence.
Source:
Unknown.
Q: What
is the goal of AI?
A: It
is, of course, a vast simplification to think of the whole of the Al movement
moving towards a single goal. There are in fact three. These are:
1) To produce a program that plays
noughts and crosses infallibly.
2) To produce a program that plays
chess infallibly.
3) To produce a working replica of
Robbie the Robot, as seen in the 1950s sci-fi film Forbidden Planet'.
Q: How
far bas it moved toward these goals?
A: The
noughts and crosses one they have more or less cracked. Chess is proving a
tougher nut. It was easy to reproduce the skill level of the average human
player gets the position of the rooks and the bishops the wrong way round,
refers to the small doorknob-shaped pieces as 'prawns') or even the talented
amateur (pretends to understand castling), but to achieve a true Grand Master
level (genuinely interested in chess puzzles printed in Sunday Papers) is many
years away yet. Sad to say, the chances of duplicating Robbie the Robot are
receding as time passes - the art of fashioning Perspex with such skill having
been lost in the early 1960s.
Q: What
is the best example of a success; JWI Al application?
A: The
only successful example of an Al application was the ELIZA program (Weizenbaum,
1957). This was able to hold a dialogue with the operator in natural English.
Q: Was
that the silly program that pretended to be a psychologist?
A: Yes,
it relied upon a system of identifying key phrases. The main disadvantage was
that, whenever asked a difficult question, it tended to change the subject.
Q: Wasn't
ELIZA a bit of a cheat, then?
A: Why
don't you ask me about AI languages?
Q: Oh,
all right; What about the Al languages?
A: They
can be distinguished thus: LISP is the one with loads of brackets, Prolog(ue)
is the European language with a US spelling and POP is the Great British Hope.
Q: And
what are the best-known Al applications of these languages?
A: The
best-known AI application of LISP is CAD, such as AutoCad. The best-known
application of Prolog is to buy a copy of Turbo Prolog in a rash moment, and
leave it on the shelf collecting dust, always meaning to take it down and have
a go. The best known application of POP is to be the subject of magazine
articles entitled: 'POP the British AI language.'
Q: No,
I meant what programs are written using them?
A: Only
one program has ever been written using these languages: the Towers of Hanoi'
game.
Q: Surely
the problem with Al languages is that they are too slow for commercial work?
A: There
are certainly no flies on you. In 1988, a Respected Industry Commentator said
that, in the next three years, hardware will speed up sufficiently to fix this.
Q: So
AI will be viable in 1991?
A: No,
in 1993. Al will always become feasible in d= years' time. This is an
application of Carrollian logic programming -'Jam tomorrow'. Remember, 95% of
AI text books contain a quote from Through the Looking Glass.
Q: Is
there anything else I should know about AI?
A: An
inference engine is a two-stroke version of a database engine. A knowledge
engineer earns tons more money than you do. Backward chaining is still illegal
in certain States of the US. Waltz's Algorithm is much less fun than its name.
Q: Verity,
thanks ya much for your valiable time.
A: Always
a pleasure for you, sweetie.
Beginner's Corner:
Taking Advantage of Your PC's Hard Disk
Part III: CONFIG.SYS and the Virtual Disk
Barry
Gordon
New
York Personal Computer, Inc.
[This series of three articles is
aimed at novice PC users and covers (1) Hard Disk File Mangement; (2) Batch
File Techniques; (3) Setting Up a Virtual Disk.]
There are some simple things
you can do to enhance the performance of your hard drive. Creating a CONFIG.SYS
file and a virtual disk can give you added power and speed in working on your
PC by reconfiguring your operating system and Random Access Memory (RAM).
The CONFIG.SYS File
Another file that is useful
in the root directory is the CONFIG.SYS file. It's a collection of miscellany
to modify the way the PC system works. You may want to try a CONFIG.SYS file
consisting of three lines:
BREAK=ON
FILES=16
BUFFERS=8
The BREAK command allows you
to interrupt the system more easily should you wish to terminate the execution
of a program.
The FILES command allows DOS
to juggle more than the default of eight active files simultaneously. This is
important, because DOS loads five files of its own, leaving you with only
three. Sixteen should give you enough to handle most any situation.
The BUFFERS command can speed
up certain kinds of disk operations. You may want to try as many as 16 or even
32 for a 20MB hard disk.
The Virtual Disk
A large internal RAM not only
allows manipulation of larger files when necessary, but gives the user access
to the speed of internal memory for processing data. Just as the hard disk
increases computing speed over the diskette drive, so internal memory, if
utilized, increases computing speed over the hard drive. To tap the speed and
power of the internal memory, you might consider setting up a virtual disk.
However, to attempt to set up a virtual disk, you should have more than 256KB
of memory in your PC, preferably, 512KB or larger.
The virtual disk is a portion
of RAM set aside to simulate a disk. The virtual disk is referred to by the
drive designation letter following that of the system's last hard disk.
Assuming a single hard disk C:, our virtual disk becomes D:. The virtual disk
is created at startup by a program such as the VDISK command that comes with
DOS 3.0., working together with a command you save in your CONFIG.SYS file.
With 512KB of RAM, a
reasonable virtual disk size to try is 64KB. If you have a 640KB system, you
may want to set up a virtual disk of 192KB. I suggest leaving about 448KB of
available, active RAM to have ample memory for DOS to do its work.
A virtual disk of even 64KB
can do wonders. It can also be effectively larger by specifying the smallest
possible sector size -- e.g., 128 bytes -- for the greatest possible data
packing density. Assuming VDISK.COM and 640KB of RAM, the virtual disk specification
in your CONFIG.SYS might look like this:
DEVICE=C:\VDISK
The entire CONFIG.SYS file
would look like this:
BREAK=ON
FILES=16
BUFFERS=8
DEVICE=C:\VDISK.SYS 192 128
64
[Ed.: MS-DOS v.5.0 uses the
RAMDRIVE.SYS driver, e.g. my rather largish virtual disk is specified as
follows:
DEVICE=\DOS\RAMDRIVE.SYS 1144 512
256 /E
i.e. Size = 1144 KB, sector size =
512 bytes, 256 directory entries, created in extended memory.]
The SETPATH.BAT and
AUTOEXEC.BAT Files Revised
What do you do with this virtual
disk D: now that it is set up? First, you can begin to take full advantage of
your virtual disk's speed by adding a statement to AUTOEXEC.BAT to transfer the
sub-directory of your most-used files to the virtual disk D:.
Your AUTOEXEC.BAT file now
contains the following:
DATE
TIME
PROMPT $P$G
COPY \anyname1\*.* D:
D:SETPATH
Note that the SETPATH command
must remain the last one in the file. Next, modify the PATH command (in
SETPATH.BAT) to PATH D:\;C:\anyname2;C:\any3;C:\any4 replacing the c:\anyname1
you formerly had in SETPATH.BAT with the root directory of your virtual drive
D:\. (Again, note that you specify complete paths, including all drive
designations, to keep the command totally independent of what the default drive
might happen to be.)
Finally, move the SETPATH.BAT
file out of the root directory and into the \anyname1 directory for automatic
transfer to D:. This allows you to execute the SETPATH command from any
directory, entering it as simply SETPATH or D:SETPATH if necessary.
The root directory on your
hard drive now contains the following files:
<IBMBIO.COM>
<IBMDOS.COM>
COMMAND.COM
AUTOEXEC.BAT
Sub-directory Names
CONFIG.SYS
VDISK.COM (or equivalent)
Tips Concerning The
Virtual Drive
Now that your PC has the
virtual disk D:, you will want to keep only your most-used files in your
C:\anyname1 directory. I would suggest you put in some DOS external command
files, plus regulars like BASIC.COM, or perhaps a few of your personal
favorites, such as PE.EXE or your word processing program. Depending on the
size of your virtual disk, you might even wish to add some non- executable, but
nonetheless frequently used, files that you would like to have accessible from
any sub-directory.
All of these would presumably
reside permanently in your C:\anyname1 directory so that they transfer
automatically to D: at system startup. The one thing you must not forget is
that your virtual disk D: actually resides in RAM and not on a real disk drive.
I suggest you do not store anything in your virtual drive that is not stored in
a file on your hard disk or on a diskette, because whenever you turn your PC
off or whenever the power fails, everything in your virtual disk is cleared.
Summary
That's it. My experience
shows that a hard disk with large internal RAM, set up more or less as
recommended here, can be a real pleasure to operate. A brief summary of what
the various files might look like is given below:
-> The Root Directory
<IBMBIO.COM>
<IBMDOS.COM>
COMMAND.COM
AUTOEXEC.BAT
Sub-directory Names
CONFIG.SYS
VDISK.SYS (or equivalent)
-> CONFIG.SYS File
BREAK=ON
FILES=16
BUFFERS=8
DEVICE=C:\VDISK.SYS 192 128
64
The numercial values in the
DEVICE command will vary depending on the size you wish your virtual disk to
be.
-> AUTOEXEC.BAT File
DATE
TIME
COPY C:\anyname 1\*.* D:
PROMPT $P$G
D:SETPATH
The D: shown above presumes
that you don't have a second hard disk attached to your PC. With two hard
disks, the virtual disk would be E:.
C:\anyname1 (Directory)
SETPATH.BAT Most Frequently
used Executable Files High Usage Reference/Data Files
-> SETPATH.BAT File
PATH
D:\;C:\any1;C:\any2\;C:any3;...
-> C:\anyname 2 et al
(Directories)
Other Executable Files by
Frequency of Use
Other Data Files Grouped by
Related Functions
REVIEWS of 4DOS and VIRUS SCAN
by
David Batterson
(from
his disk-based software reviews - library disk 2929)
4DOS - A PC-DOS/MS-DOS Command
Processor
Most PC users have opted not to purchase OS/2, due to the
expense. But many users are not satisfied with plain vanilla DOS either. So a
few software companies have introduced enhancements, generally called DOS
extenders, which add new features and commands to PC- and MS-DOS.
4DOS, a recent shareware software product, is another DOS
extender. It replaces COMMAND.COM, the command interpreter used by PC- and
MS-DOS. 4DOS has already been updated to Version 2.21 by its author, Rex Conn.
Although 4DOS is a DOS shell, it is not the same as other
DOS shells, such as Marshall Magee's Automenu. It's NOT designed to eliminate
the DOS command line, but rather to give the user superior DOS commands. In
other words, if you are seeking a menu program which gets you away from DOS,
this isn't it!
If you're worried about RAM hogging, 4DOS uses less than
5K for the resident portion; the transient portion can use EMS memory or disk
swapping.
For those who like online help, 4DOS has it: for all the
MS-DOS external commands as well as the 4DOS internal commands. Just press
<F1> at the DOS prompt.
There's command line editing too, including insert and
delete, so you don't have to rekey whole lines when you make a mistake. 4DOS
includes command history, which means you can view, search, modify and
re-execute previous commands.
You can enter file descriptions, up to 40 characters, for
any file or directory. Whenever you use the DIR or SELECT command, the
descriptions are displayed.
There are many more features in 4DOS, including flexible
file wildcards, multiple commands on a single line, environment variables,
conditional commands, more redirection options, and aliases (which let you
rename and reconfigure commands).
The DIR command in 4DOS offers many options: 1, 2 or 5
column display; sorting by name, extension, size or date; display
subdirectories; display file attributes, and display subtotals only.
With 4DOS you can RENAME directories as well as files.
SELECT uses point- and-shoot selection to perform a command on selected files.
LIST displays ASCII text files, with scrolling, search for text, and printing.
EXCEPT executes a command except on the specified files.
These brief explanations only begin to reveal all the
power and intricacies of 4DOS. This is a program for power users too, with an
enhanced batch processor that is more versatile, and faster too.
4DOS is compatible with PC- and MS-DOS 2.0 through 4.01,
DESQview, Novell Netware, 3Com 3Plus, InvisibleNet, and the Word Perfect
Library. The shareware version of 4DOS may be downloaded from CompuServe and
many BBSs, or obtained from shareware distribution companies.
The commercial version, including manual and next update
free, costs $50 ($35 with no free update). For more information, contact J.P.
Software, P.O. Box 1470, E. Arlington, MA 02174; 617-646-3975, CompuServe:
73577,243, BIX: trawson.
[Ed: Note
that MS-DOS v.5.0 incorporates most of the features mentioned above; however,
there are still a few benefits of using 4DOS. In addition, Rex is working on an
update! Library disk 2736]
VIRUSCAN Ver. 3.1V62 - Finds Elusive
Viruses!
The virus scare is partly real and partly a lack of
knowledge on the part of many new users. I think it's accurate to state that in
most cases where a PC user suspects a virus, that is NOT the problem!
However, viruses are indeed infecting PCs around the
country. From reading BBS messages from around the country, I've learned that
in many cases, the virus is not spread through shareware/BBSs, but rather
through illegal copies of commercial software.
There's a lesson to be learned here: if you are ripping
off software companies by using pirated copies, then perhaps you deserve to
have your PC infected with a virus. You'll get no sympathy from here.
OK, let's assume that's not the case, and you strongly
suspect that your PC is infected. Then you'd better get a copy of VIRUSCAN from
McAfee Associates. You may have seen it simply as SCAN.EXE on BBSs.
The number of new viruses has grown from a handful to
dozens, [Ed: hundreds] with new ones popping up overnight, like daisies in a
meadow. So VIRUSCAN is updated on a constant basis. If you have an old version
of SCAN.EXE, it just may not find a recent virus in your system.
Therefore, it's a good idea to send your registration fee
of $25 [for home use; corp. site licenses available], and get the latest
version of VIRUSCAN. It's also sure to be virus-free. [Some anti-virus programs
have been downloaded from BBSs, and found to be infected themselves!]
VIRUSCAN contains a self-test which runs at load time. If
SCAN.EXE has been modified in any way, a warning will be displayed. However, it
will still continue to check for viruses. Also packaged is the VALIDATE program
that will authenticate the integrity of SCAN.EXE and other programs.
VIRUSCAN will scans your disks or entire system, and
identify any pre- existing PC virus infection. It will indicate the specific
files or system areas that are infected and will identify the virus strain.
SCAN version 3.1V62 can identify 86 virus strains and numerous sub-varieties
for each strain. The 86 viruses include the ten most common viruses "which
account for over 95% of all reported PC infections."
Removal can then be done automatically using the SCAN /D
option. Automatic disinfectors are available for the majority of the known
viruses. Registered VIRUSCAN users can contact McAfee Associates for free
assistance in manually removing the virus or for information on disinfection
utilities.
If the infection is widespread, you can get McAfee's
CLEAN-UP VIRUS REMOVER, Ver. 3.1V62. This shareware product sells for $35 (home
use).
All known viruses infect one of the following areas: The
hard disk partition table; the DOS boot sector of hard disks or floppies; or
one or more executable files within the system. The executable files may be
operating system programs, system device drivers, .COM files, .EXE files,
overlay files or any other file which can be loaded into memory and executed.
VIRUSCAN identifies every area or file that has become
infected and indicates the name of the virus that has infected each file.
VIRUSCAN can check the entire system, an individual diskette, a sub-directory
or an individual file for an existing virus.
VIRUSCAN will require approximately 3 minutes of run time
for each 1,000 files on the designated drive. SCAN will exit with the following
exit codes:
0 - Normal termination, no
viruses found
1 - One or more viruses found
2 - Abnormal termination
(Error)
We've in a period in which treacherous viruses are
causing a great deal of heartbreak for people: HIV (the AIDS virus) and
computer viruses. Hopefully, the first will be wiped out in time. Thanks to
John McAfee and others, at least the latter will become tamed if not
eliminated.
To register VIRUSCAN shareware, or for more information,
contact McAfee Associates, 4423 Cheeney Street, Santa Clara, CA 95054;
408-988-3832, BBS: 408-988-4004.
David Batterson reviews a lot of PC hardware and
software. Contact him via virus-free MCI-Mail: DBATTERSON.
[Ed: Note that our latest version of SCAN is
currently ver.86 (although it might already be updated by the time you read
this). It comes bundled with various other anti-viral software such as CLEAN,
NETSCAN, VCOPY etc. It recognizes over 1000 varieties (strains) of more than
300 different viruses, including all those that received a lot of publicity
lately: Michelangelo, Brain, DIR etc. When we registered our copy, we did NOT
receive the latest version, but we do now have the legal (and moral) right to
use it (or its upgrades). We did receive a nice letter confirming registration
and more mail at later stages. Library disks 2565 & 2566]
COBOL - A brief History
By
J.Dean
In the 1950's the need became
apparent for a computer language that would satisfy the needs of commerce and
industry, to utilize their computer installations efficiently, for commercial
purposes. Scientific languages, such as FORTRAN ( FORmula TRANslator ) and
ALGOL ( ALGOrythmic Lannguage ) were, and still largely are, unsuitable for
commercial applications, since they are mathmatically oriented, unsuited to
large volume record handling, with obscure code requiring extensive
documentation.
Thus in 1959 interested
parties : Defence contractors, Educationalists, and Computer Manufacturers
convened to become CODASYL ( Conference On Data SYstem Languages ) and under
the leadership of Commander G. Hopper ( USN ) created COBOL ( COmmon Business
Oriented Language ). This was designed to be powerful, flexible, easily
learned, and, perhaps most importantly, hardware and operating system independent
( a novel idea at the time ). Most systems at present run 1974 ANSI COBOL
which, as the name implies, conforms to the 1974 ANSI ( American National
Standards Institute ) specifications with machine dependent additions.
In spite of new, faster, and
more powerful hardware and software COBOL remains popular because : COBOL
source code is to an extent self-documenting ( easy to understand and modify
without external explanation ); file handling and database access is well
supported as compared to previous languages ; but primarily because there is a
large investment by commerce and industry in training, programs, and
applications packages i.e. existing software.
In spite of the inherent
advantages due to its planned, structured, and standardized creation, COBOL has
a few serious shortcomings : it is a verbose language and thus requires large
amounts of secondary storage for the source code, as well as large amounts of
primary storage for manipulation during compilation. It does not utilize the
later hardware efficiently ( although a 1980's ANSI standard is due ). These
disadvantages are also the reasons why COBOL has, until recently ( with the
advent of Microsoft COBOL ), not been implemented on microcomputer systems. On
micro's, user-friendly, interactive BASIC ( Beginners All Purpose Symbolic
Instruction Code ) has long held sway, with PASCAL ( named after Blaise Pascal
) a derivative of ALGOL, and speciality languages such as FORTH ( Jupiter Ace
1981 ) available on micro's since the early '80's. Thus the advent of COBOL on
micro's for the convenience of trained COBOL programers had to await the advent
of the late '80's with ( relatively ) cheap, powerful, and plentiful
microcomputer hardware.
COBOL is a widely used
commercial, high-level language that will continue to be used and maintained in
the future due to considerable investment in training and software.
The Life Story of a "REAL"
Programmer
Real Programmers don't eat quiche. They like Coke,
junk-food, and Chinese food.
Real Programmers don't write application programs.
They program right down on the bare metal. Application programming is for feebs
who can't do systems programming.
Real Programmers don't write specs. Users should be
grateful for whatever they get, and consider themselves lucky to get anything
at all.
Real Programmers don't comment their code. If it was
hard to write, it should be just as hard to understand and even harder to
modify.
Real Programmers don't write documentation.
Documentation is for the feeble-minded who can't read listings or the object
code from the dump.
Real Programmers don't draw flowcharts. Flowcharts are
the illiterate's form of documentation. Cavemen drew flow charts - look how
much good it did for them.
Real Programmers don't read manuals. Reliance on a
reference is the hallmark of the novice and the coward.
Real Programmers don't write in RPG. RPG is for
gum-chewing dimwits who aren't smart enough to learn a REAL programming
language.
Real Programmers don't write in COBOL. COBOL is for
COmmon BOzo Laymen who can't run a business nor write a real program.
Real Programmers don't write in FORTRAN. FORTRAN is
for wimpy engineers who wear white socks and plastic pocket protectors. They
get excited over fourier transformations and finite state analysis. If God had
meant for us to use FORTRAN, he would have included pointers in the language.
Real Programmers don't write in PL/I. PL/I is for
insecure anal retentives who can't choose between COBOL and FORTRAN.
Real Programmers don't write in BASIC. Actually, no
programmers write in BASIC after reaching puberty.
Real Programmers don't write in APL unless the whole
program can be written on one line.
Real Programmers don't write in LISP. Only faggot
programs contain more parentheses than actual code.
Real Programmers don't write in PASCAL, BLISS, ADA, or
any other sissy pinko computer science languages. Strong typing is a crutch for
fools with weak minds.
Real Programmers' programs never work right the first
time. But they can always be hacked into some semblance of working order in
only a few 30-hour debugging sessions.
Real Programmers never work 9 to 5. If a REAL
PROGRAMMER is around at 9 AM, it's because he was there all night.
Real Programmers don't play tennis, or any other sport
which requires a change of clothes. Mountain climbing is OK, and Real
Programmers wear climbing boots to work in case a mountain should suddenly
spring up in the middle of the machine room.
Real Programmers disdain structured programming.
Structured programming is for compulsive neurotics who were prematurely
toilet-trained. They wear neckties and carefully line up sharp pencils in a
neat row on an otherwise uncluttered desk.
Real Programmers dislike the Team Programming concept,
unless, of course, they are the Chief Programmer.
Real Programmers never write memos or letters on
paper. They either send electronic mail, or don't send anything at all.
Real Programmers have no use for managers. Managers
are a necessary evil. They exist only to deal with personnel bozos, bean
counters, senior planners, and other mental defectives.
Real Programmers scorn floating point arithmetic. The
decimal point was invented for pansy bedwetters who are unable to "think
big".
Real Programmers don't believe in schedules. Planners
make up schedules. Managers "firm up" schedules. Frightened coders
strive to meet schedules. Real Programmers ignore schedules.
Real Programmers like vending-machine popcorn. Coders
pop it in the microwave oven. Real Programmers use the heat given
off by the CPU. They can tell which jobs are running just by listening to the
rate of popping.
Real Programmers know every nuance of every
instruction and use them all in every Real Program. Candyass architects won't
allow Execute instructions to address another Execute as the target
instruction. Real Programmers despise petty restrictions.
Real Programmers don't bring brown-bag lunches. If the
vending machine sells it, they eat it. If the vending machine doesn't sell it,
they don't eat it. Vending machines don't sell quiche.
Laws & Quotes
Dunn's Discovery:
The shortest measurable interval of time is the time
between the moment
one puts a little extra aside for a sudden emergency and
the arrival of
that emergency.
Durrell's Parameter:
The faster the plane, the narrower the seats.
Dyer's Law:
A continuing flow of paper is sufficient to continue the
flow of paper.
Economists' Laws:
1) What men learn from history is that men do not learn
from history.
2) If on an actuarial basis there is a 50-50 chance that
something will
go wrong, it will
actually go wrong nine times out of ten.
Edington's Theory:
The number of different hypotheses erected to explain a
given biological
phenomenon is inversely proportional to the available
knowledge.
Law of Editorial Correction:
Anyone nit-picking enough to write a letter of correction
to an editor
doubtless deserves the error that provoked it.
Ehrlich's Rule:
The first rule of intelligent tinkering is to save all
the parts.
Eliot's Observation:
Nothing is so good as it seems beforehand.
Ellenberg's Theory:
One good turn gets most of the blanket.
Emerson's Insight:
That which we call sin in others is experiment for us.
Old Engineer's Law:
The larger the project or job, the less time there is to
do it.
Epstein's Law:
If you think the problem is bad now, just wait until
we've solved it.
Against Software Patents
The
League for Programming Freedom
Michael
I. Bushnell, LFP, 3/15/91
Introduction
Software patents threaten to devastate America's computer
industry. Patents granted in the past decade are now being used to attack
companies such as the Lotus Development Corporation for selling programs that
they have independently developed. Soon new companies will often be barred from
the software arena---most major programs will require licenses for dozens of
patents, and this will make them infeasible. This problem has only one
solution: software patents must be eliminated.
The Patent System and
Computer Programs
The framers of the United States Constitution established
the patent system so that inventors would have an incentive to share their
inventions with the general public. In exchange for divulging an invention, the
patent grants the inventor a 17 year monopoly on the use of the invention. The
patent holder can license others to use the invention, but may also refuse to
do so. Independent reinvention of the same technique by others does not give
them the right to use it. Patents do not cover specific systems: instead, they
cover particular techniques that can be used to build systems, or particular
features that systems can offer. Once a technique or feature is patented, it
may not be used in a system without the permission of the patent- holder---even
if it is implemented in a different way. Since a computer program typically
uses many techniques and provides many features, it can infringe many patents
at once.
Until recently, patents were not used in software field.
Software developers copyrighted individual programs or made them trade secrets.
Copyright was traditionally understood to cover the implementation details of a
particular program; it did not cover the features of the program, or the
general methods used. And trade secrecy, by definition, could not prohibit any
development work by someone who did not know the secret. On this basis,
software development was extremely profitable, and received considerable
investment, without any prohibition on independent software development. But
this scheme of things is no more. A change in U.S. government policy in the
early 1980's stimulated a flood of applications. Now many have been approved,
and the rate is accelerating. Many programmers are unaware of the change and do
not appreciate the magnitude of its effects. Today the lawsuits are just
beginning.
Absurd Patents
The Patent Office and the courts have had a difficult
time with computer software. The Patent Office refused until recently to hire
Computer Science graduates as examiners, and in any case does not offer
competitive salaries for the field. Patent examiners are often ill-prepared to
evaluate software patent applications to determine if they represent techniques
that are widely known or obvious---both of which are grounds for rejection.
Their task is made more difficult because many commonly-used software
techniques do not appear in the scientific literature of computer science. Some
seemed too obvious to publish while others seemed insufficiently general; some
were open secrets.
Computer scientists know many techniques that can be
generalized to widely varying circumstances. But the Patent Office seems to
believe that each separate use of a technique is a candidate for a new patent.
For example, Apple was sued because the Hypercard program allegedly violates
patent number 4,736,308, a patent that covers displaying portions of two or
more strings together on the screen---effectively, scrolling with multiple
subwindows. Scrolling and subwindows are well-known techniques, but combining
them is now apparently illegal. The granting of a patent by the Patent Office
carries a presumption in law that the patent is valid. Patents for well-known
techniques that were in use many years before the patent application have been
upheld by federal courts.
It can be hard to prove a technique was well known at the
time in question. For example, the technique of using exclusive-or to write a
cursor onto a screen is both well known and obvious. (Its advantage is that
another identical exclusive-or operation can be used to erase the cursor
without damaging the other data on the screen.) This technique can be
implemented in a few lines of a program, and a clever high school student might
well reinvent it. But it is covered by patent number 4,197,590, which has been
upheld twice in court even though the technique was used at least five years
before the patent application. Cadtrak, the company that owns this patent,
collects millions of dollars from large computer manufacturers. English patents
covering customary graphics techniques, including airbrushing, stenciling, and
combination of two images under control of a third one, were recently upheld in
court, despite the testimony of the pioneers of the field that they had
developed these techniques years before. (The corresponding United States
patents, including 4,633,416 and 4,602,286, have not yet been tested in court,
but they probably will be soon.) All the major developers of spreadsheet
programs have been threatened on the basis of patent 4,398,249, covering
``natural order recalc''---the recalculation of all the spreadsheet entries
that are affected by the changes the user makes, rather than recalculation in a
fixed order. Currently Lotus alone is being sued, but a victory for the
plaintiff in this case would leave the other developers little hope.
The League has found prior art that may defeat this
patent, but this is not assured. Nothing protects programmers from accidentally
using a technique that is patented, and then being sued for it. Taking an
existing program and making it run faster may also make it violate half a dozen
patents that have been granted, or are about to be granted. Even if the Patent
Office learns to understand software better, the mistakes it is making now will
follow us into the next century, unless Congress or the Supreme Court
intervenes to declare these patents void. However, this is not the whole of the
problem. Computer programming is fundamentally different from the other fields
that the patent system previously covered. Even if the patent system were to
operate ``as intended'' for software, it would still obstruct the industry it
is supposed to promote.
What Is ``Obvious''?
The patent system will not grant or uphold patents that
are judged to be obvious. However, the system interprets the word ``obvious''
in a way that might surprise computer programmers. The standard of obviousness
developed in other fields is inappropriate for software. Patent examiners and
judges are accustomed to considering even small, incremental changes as
deserving new patents. For example, the famous in the number and order of
layers of chemicals in a film---differences between the technique Kodak was
using and those described by previous, expired patents. The court ruled that
these differences were unobvious. Computer scientists solve problems quickly
because the medium of programming is tractable. They are trained to generalize
solution principles from one problem to another. One such generalization is
that a procedure can be repeated or subdivided. Programmers consider this
obvious---but the Patent Office did not think that it was obvious when it
granted the patent on scrolling multiple strings, described above. Cases such
as this cannot be considered errors. The patent system is functioning as it was
designed to do-- -but with software, it produces outrageous results.
Patenting What Is Too
Obvious to Publish
Sometimes it is possible to patent a technique that is
not new precisely because it is obvious---so obvious that no one would have
published a paper about it. For example, computer companies distributing the
free X Window System developed by MIT are now being threatened with lawsuits by
AT&T over patent number 4,555,775, covering the use of ``backing store.''
This technique is used when there are overlapping windows; the contents of a
window that is partly hidden are saved in off-screen memory, so they can be put
back quickly on the screen if the obscuring window disappears (as often
happens). The technique of backing store was used in an earlier MIT project,
the Lisp Machine System, before AT&T applied for the patent. The Lisp
Machine developers published nothing about this detail at the time, considering
it too obvious. It was mentioned years later when the programmers' reference
manual explained how to turn it on and off. The Lisp Machine was the first
computer to use this technique only because it had a larger memory than earlier
machines that had window systems. Prior window system developers must have
dismissed the idea because their machines had insufficient memory space to
spare any for this purpose. Improvements in memory chips made development of
backing store inevitable. Without a publication, the use of backing store in
the Lisp Machine System may not count as prior art to defeat the patent. So the
AT&T patent may stand, and MIT may be forbidden to continue using a method
that MIT used before AT&T. The result is that the dozens of companies and
hundreds of thousands of users who accepted the software from MIT on the
understanding that it was free are now faced with possible lawsuits. (They are
also being threatened with Cadtrak's exclusive-or patent.) The X Window System
project was intended to develop a window system that all developers could use
freely. This public service goal seems to have been thwarted by patents.
Why Software Is
Different
Software systems are much easier to design than hardware
systems of the same number of components. For example, a program of 100,000
components might be 50,000 lines long and could be written by two good
programmers in a year. The equipment needed for this costs less than $10,000;
the only other cost would be the programmers' own living expenses while doing
the job. The total investment would be less than a $100,000. If done
commercially in a large company, it might cost twice that. By contrast, an
automobile typically contains under 100,000 components; it requires a large
team and costs tens of millions of dollars to design. And software is also much
cheaper to manufacture: copies can be made easily on an ordinary workstation
costing under ten thousand dollars. To produce a hardware system often requires
a factory costing tens of millions of dollars.
Why is this? A hardware system has to be designed using
real components. They have varying costs; they have limits of operation; they
may be sensitive to temperature, vibration or humidity; they may generate
noise; they drain power; they may fail either momentarily or permanently. They
must be physically assembled in their proper places, and they must be
accessible for replacement in case they fail. Moreover, each of the components
in a hardware design is likely to affect the behavior of many others. This
greatly complicates the task of determining what a hardware design will do:
mathematical modeling may prove wrong when the design is built.
By contrast, a computer program is built out of ideal
mathematical objects whose behavior is defined, not modeled approximately, by
abstract rules. When an if- statement follows a while-statement, there is no
need to study whether the if-statement will draw power from the while-statement
and thereby distort its output, nor whether it could overstress the
while-statement and make it fail. Despite being built from simple parts,
computer programs are incredibly complex. The program with 100,000 parts is as
complex as an automobile, though far easier to design. While programs cost
substantially less to write, market and sell than automobiles, the cost of
dealing with the patent system will not be less. The same number of components
will, on the average, involve the same number techniques that might be
patented.
The Danger of a Lawsuit
Under the current patent system, a software developer who
wishes to follow the law must determine which patents a program violates and
negotiate with each patent holder a license to use that patent. Licensing may
be prohibitively expensive, or even unavailable if the patent is held by a
competitor. Even ``reasonable'' license fees for several patents can add up to
make a project infeasible.
Alternatively, the developer may wish to avoid using the
patent altogether; but there may be no way around it. The worst danger of the
patent system is that a developer might find, after releasing a product, that
it infringes one or many patents. The resulting lawsuit and legal fees could
force even a medium-size company out of business. Worst of all, there is no
practical way for a software developer to avoid this danger---there is no
effective way to find out what patents a system will infringe. There is a way
to try to find out---a patent search--- but searches are unreliable and in any
case too expensive to use for software projects.
Patent Searches Are
Prohibitively Expensive
A system with a hundred thousand components can use
hundreds of techniques that might already be patented. Since each patent search
costs thousands of dollars, searching for all the possible points of danger
could easily cost over a million. This is far more than the cost of writing the
program. The costs don't stop there.
Patent applications are written by lawyers for lawyers. A
programmer reading a patent may not believe that his program violates the
patent, but a federal court may rule otherwise. It is thus now necessary to
involve patent attorneys at every phase of program development. Yet this only
reduces the risk of being sued later---it does not eliminate the risk. So it is
necessary to have a reserve of cash for the eventuality of a lawsuit.
When a company spends millions to design a hardware
system, and plans to invest tens of millions to manufacture it, an extra
million or two to pay for dealing with the patent system might be bearable.
However, for the inexpensive programming project, the same extra cost is
prohibitive. Individuals and small companies especially cannot afford these costs.
Software patents will put an end to software entrepreneurs.
Patent Searches Are
Unreliable
Even if developers could afford patent searches, these
are not a reliable method of avoiding the use of patented techniques. This is
because patent searches do not reveal pending patent applications (which are
kept confidential by the Patent Office). Since it takes several years on the
average for a software patent to be granted, this is a serious problem: a
developer could begin designing a large program after a patent has been applied
for, and release the program before the patent is approved. Only later will the
developer learn that distribution of the program is prohibited.
For example, the implementors of the widely-used public
domain data compression program COMPRESS followed an algorithm obtained from
the journal IEEE Computer. They and the user community were surprised to learn
later that patent number 4,558,302 had been issued to one of the authors of the
article. Now Unisys is demanding royalties for using this algorithm. Although
the program is still in the public domain, using it means risking a lawsuit.
The Patent Office does not have a workable scheme for classifying software
patents. Patents are most frequently classified by end results, such as ``converting
iron to steel;'' but many patents cover algorithms whose use in a program is
entirely independent of the purpose of the program. For example, a program to
analyze human speech might infringe the patent on a speedup in the Fast Fourier
Transform; so might a program to perform symbolic algebra (in multiplying large
numbers); but the category to search for such a patent would be hard to
predict.
You might think it would be easy to keep a list of the
patented software techniques, or even simply remember them. However, managing
such a list is nearly impossible. A list compiled in 1989 by lawyers
specializing in the field omitted some of the patents mentioned in this paper.
Obscure Patents
When you imagine an invention, you probably think of
something that could be described in a few words, such as ``a flying machine
with fixed, curved wings'' or ``an electrical communicator with a microphone
and a speaker''. But most patents cover complex detailed processes that have no
simple descriptions - often they are speedups or variants of well-known
processes that are themselves complex. Most of these patents are neither
obvious nor brilliant; they are obscure. A capable software designer will
``invent'' several such improvements in the course of a project. However, there
are many avenues for improving a technique, so no single project is likely to
find any given one.
For example, IBM has several patents (including patent
number 4,656,583) on workmanlike, albeit complex, speedups for well-known
computations performed by optimizing compilers, such as register coloring and
computing the available expressions. Patents are also granted on combinations
of techniques that are already widely used. One example is IBM patent
4,742,450, which covers ``shared copy-on-write segments.'' This technique
allows several programs to share the same piece of memory that represents
information in a file; if any program writes a page in the file, that page is
replaced by a copy in all of the programs, which continue to share that page with
each other but no longer share with the file. Shared segments and copy-on-write
have been used since the 1960's; this particular combination may be new as a
specific feature, but is hardly an invention.
Nevertheless, the Patent Office thought that it merited a
patent, which must now be taken into account by the developer of any new
operating system. Obscure patents are like land mines: other developers are
more likely to reinvent these techniques than to find out about the patents,
and then they will be sued. The chance of running into any one of these patents
is small, but they are so numerous that you cannot go far without hitting one.
Every basic technique has many variations, and a small
set of basic techniques can be combined in many ways. The patent office has now
granted at least 2000 software patents---no less than 700 in 1989 alone,
according to a list compiled by EDS. We can expect the pace to accelerate. In
ten years, programmers will have no choice but to march on blindly and hope
they are lucky.
Patent Licensing Has
Problems, Too
Most large software companies are trying to solve the
problem of patents by getting patents of their own. Then they hope to
cross-license with the other large companies that own most of the patents, so
they will be free to go on as before. While this approach will allow companies
like Microsoft, Apple and IBM to continue in business, it will shut new
companies out of the field. A future start-up, with no patents of its own, will
be forced to pay whatever price the giants choose to impose. That price might
be high: established companies have an interest in excluding future
competitors. The recent Lotus lawsuits against Borland and the Santa Cruz
Operation (although involving an extended idea of copyright rather than
patents) show how this can work. Even the giants cannot protect themselves with
cross- licensing from companies whose only business is to obtain exclusive
rights to patents and then threaten to sue.
For example, consider the New York-based Refac Technology
Development Corporation, representing the owner of the ``natural order recalc''
patent. Contrary to its name, Refac does not develop anything except
lawsuits---it has no business reason to join a cross- licensing compact.
Cadtrak, the owner of the exclusive-or patent, is also a litigation company.
Refac is demanding five percent of sales of all major spread-sheet programs. If
a future program infringes on twenty such patents---and this is not unlikely,
given the complexity of computer programs and the broad applicability of many
patents---the combined royalties could exceed 100% of the sales price. (In
practice, just a few patents can make a program unprofitable.)
The Fundamental
Question
According to the Constitution of the United States, the
purpose of patents is to ``promote the progress of science and the useful
arts.'' Thus, the basic question at issue is whether software patents,
supposedly a method of encouraging software progress, will truly do so, or will
retard progress instead. So far we have explained the ways in which patents
will make ordinary software development difficult.
But what of the intended benefits of patents: more
invention, and more public disclosure of inventions? To what extent will these
actually occur in the field of software? There will be little benefit to
society from software patents because invention in software was already
flourishing before software patents, and inventions were normally published in
journals for everyone to use. Invention flourished so strongly, in fact, that
the same inventions were often found again and again.
In Software,
Independent Reinvention Is Commonplace
A patent is an absolute monopoly; everyone is forbidden
to use the patented process, even those who reinvent it independently. This
policy implicitly assumes that inventions are rare and precious, since only in
those circumstances is it beneficial. The field of software is one of constant
reinvention; as some people say, programmers throw away more ``inventions''
each week than other people develop in a year.
And the comparative ease of designing large software
systems makes it easy for many people to do work in the field. A programmer
solves many problems in developing each program. These solutions are likely to
be reinvented frequently as other programmers tackle similar problems. The
prevalence of independent reinvention negates the usual purpose of patents.
Patents are intended to encourage inventions and, above
all, the disclosure of inventions. If a technique will be reinvented
frequently, there is no need to encourage more people to invent it; since some
of the developers will choose to publish it (if publication is merited), there
is no point in encouraging a particular inventor to publish it---not at the
cost of inhibiting use of the technique.
Overemphasis of
Inventions
Many analysts of American and Japanese industry have
attributed Japanese success at producing quality products to the fact that they
emphasize incremental improvements, convenient features and quality rather than
noteworthy inventions. It is especially true in software that success depends
primarily on getting the details right. And that is most of the work in
developing any useful software system. Inventions are a comparatively
unimportant part of the job. The idea of software patents is thus an example of
the mistaken American preoccupation with inventions rather than products. And
patents will encourage this mistaken focus, even as they impede the development
work that actually produces better software.
Impeding Innovation
By reducing the number of programmers engaged in software
development, software patents will actually impede innovation. Much software
innovation comes from programmers solving problems while developing software,
not from projects whose specific purpose is to make inventions and obtain
patents. In other words, these innovations are byproducts of software
development. When patents make development more difficult, and cut down on
development projects, they will also cut down on the byproducts of
development---new techniques.
Could Patents Ever Be
Beneficial?
Although software patents in general are harmful to
society as a whole, we do not claim that every single software patent is
necessarily harmful. Careful study might show that under certain specific and
narrow conditions (necessarily excluding the vast majority of cases) it is
beneficial to grant software patents. Nonetheless, the right thing to do now is
to eliminate all software patents as soon as possible, before more damage is
done. The careful study can come afterward.
Clearly software patents are not urgently needed by
anyone except patent lawyers. The pre-patent software industry had no problem
that was solved by patents; there was no shortage of invention, and no shortage
of investment. Complete elimination of software patents may not be the ideal
solution, but it is close, and is a great improvement. Its very simplicity
helps avoid a long delay while people argue about details. If it is ever shown
that software patents are beneficial in certain exceptional cases, the law can
be changed again at that time -- if it is important enough. There is no reason
to continue the present catastrophic situation until that day.
Software Patents Are
Legally Questionable
It may come as a surprise that the extension of patent
law to software is still legally questionable. It rests on an extreme
interpretation of a particular 1981 Supreme Court decision, Diamond vs.
Deihr---See ``Legally Speaking'' in Communications of the ACM, August 1990.
Traditionally, the only kinds of processes that could be patented were those
for transforming matter (such as, for transforming iron into steel). Many other
activities which we would consider processes were entirely excluded from
patents, including business methods, data analysis, and ``mental steps.'' This
was called the ``subject matter'' doctrine.
Diamond vs. Deihr has been interpreted by the Patent
Office as a reversal of this doctrine, but the court did not explicitly reject
it. The case concerned a process for curing rubber---a transformation of
matter. The issue at hand was whether the use of a computer program in the
process was enough to render it unpatentable, and the court ruled that it was
not. The Patent Office took this narrow decision as a green light for unlimited
patenting of software techniques, and even for the use of software to perform
specific well-known and customary activities. Most patent lawyers have embraced
the change, saying that the new boundaries of patents should be defined over
decades by a series of expensive court cases. Such a course of action will
certainly be good for patent lawyers, but it is unlikely to be good for
software developers and users.
One Way to Eliminate
Software Patents
We recommend the passage of a law to exclude software
from the domain of patents. That is to say that, no matter what patents might
exist, they would not cover implementations in software; only implementations
in the form of hard-to-design hardware would be covered. An advantage of this
method is that it would not be necessary to classify patent applications into
hardware and software when examining them. Many have asked how to define
software for this purpose---where the line should be drawn.
For the purpose of this legislation, software should be
defined by the characteristics that make software patents especially harmful:
-> Software is built from
ideal infallible mathematical components, whose outputs are not affected by the
components they feed into. Ideal mathematical components are defined by
abstract rules, so that failure of a component is by definition impossible. The
behavior of any system built of these components is likewise defined by the
consequences of applying the rules step by step to the components.
-> Software can be easily
and cheaply copied. Following this criterion, a program to compute prime
numbers is a piece of software. A mechanical device designed specifically to
perform the same computation is not software, since mechanical components have
friction, can interfere with each other's motion, can fail, and must be
assembled physically to form a working machine. Any piece of software needs a
hardware platform in order to run. The software operates the features of the
hardware in some combination, under a plan.
Our proposal is that combining the features in this way
can never create infringement. If the hardware alone does not infringe a
patent, then using it in a particular fashion under control of a program should
not infringe either. In effect, a program is an extension of the programmer's
mind, acting as a proxy for the programmer to control the hardware. Usually the
hardware is a general purpose computer, which implies no particular
application. Such hardware cannot infringe any patents except those covering
the construction of computers. Our proposal means that, when a user runs such a
program on a general purpose computer, no patents other than those should
apply.
The traditional distinction between hardware and software
involves a complex of characteristics that used to go hand in hand. Some newer
technologies, such as gate arrays and silicon compilers, blur the distinction
because they combine characteristics associated with hardware with others
associated with software. However, most of these technologies can be classified
unambiguously for patent purposes, either as software or as hardware, using the
criteria above. A few gray areas may remain, but these are comparatively small,
and need not be an obstacle to solving the problems patents pose for ordinary
software development. They will end up being treated as hardware, as software,
or as something in between.
What You Can Do
One way to help eliminate software patents is to join the
League for Programming Freedom. The League is a grass-roots organization of
programmers and users opposing software patents and interface copyrights. (The
League is not opposed to copyright on individual programs.) Annual dues for
individual members are $42 for employed professionals, $10.50 for students, and
$21 for others. We appreciate activists, but members who cannot contribute
their time are also welcome.
To contact the League, phone USA-(617) 243-4091, send
Internet mail to the address league@@prep.ai.mit.edu or write to: League for
Programming Freedom 1 Kendall Square #143 PO Box 9171 Cambridge, MA 02139, USA.
Fighting Patents One by
One
Until we succeed in eliminating all patenting of
software, we must try to overturn individual software patents. This is very
expensive and can solve only a small part of the problem, but that is better
than nothing. Overturning patents in court requires prior art, which may not be
easy to find. The League for Programming Freedom will try to serve as a
clearing house for this information, to assist the defendants in software
patent suits.
This depends on your help. If you know about prior art
for any software patent, please send the information to the League at the
address given above. If you work on software, you can personally help prevent
software patents by refusing to cooperate in applying for them. The details of
this may depend on the situation.
Conclusion
Exempting software from the scope of patents will protect
software developers from the insupportable cost of patent searches, the wasteful
struggle to find a way clear of known patents, and the unavoidable danger of
lawsuits. If nothing is changed, what is now an efficient creative activity
will become prohibitively expensive.
To picture the effects, imagine if each square of
pavement on the sidewalk had an owner, and pedestrians required a license to
step on it. Imagine the negotiations necessary to walk an entire block under
this system. That is what writing a program will be like if software patents
continue. The sparks of creativity and individualism that have driven the
computer revolution will be snuffed out.
[Ed.: This article is one of the many thought-provoking articles in the
"ShareDebate International" electronic magazine - volumes 2586 to
2591, each disk contains a separate (independent) issue]
Laws & Quotes
Donohue's Law:
Anything worth doing is worth doing for money.
Donsen's Law:
The specialist learns more and more about less and less
until, finally,
he knows everything about nothing; whereas the generalist
learns less
and less about more and more until, finally, he knows
nothing about
everything.
Douglas's Law of Practical
Aeronautics:
When the weight of the paperwork equals the weight of the
plane, the
plane will fly.
Principle of Displaced
Hassle:
To beat the bureaucracy, make your problem their problem.
Dow's Law:
In a hierarchical organization, the higher the level, the
greater the
confusion.
Durant's Discovery:
One of the lessons of history is that nothing is often a
good thing to
do and always a clever thing to say.
The Library Pages
**** PROGRAM UPDATES ****
2771 PKZIP 1.1
compression utility.
Update to the traditionally
most popular suite of compression programs PKZIP/PKUNZIP. This version includes
minimal overhead (2K) for self-extracting programs and much faster operation.
(updates 1364)
2772 LHARC compression
utilities.
LHARC is probably the most
efficient compression utility (although often slower in compression) and is
slowly taking over the scene. Includes the MAD front-end which shows the
content of all popular formats (ARC, PAK, ZIP, ZOO, LZS, DWC and LZH). (updates
2018)
2773 LZE: reclaim your
hard disk space
by compressing .EXE program files.
Comes with a shell to allow
on-the-fly compression of .COM files as well.
2774 & 2775 CXL
Tesseract "C" User Interface Library.
Contains over 375
multi-purpose function to add to your library of standard C routines. Includes
menu-, windows-, data entry & formatting, device, memory (EMS/XMS) and
video routines. Supports all popular commercial C compilers. (HD and commercial
C compiler)
2776 MS-KERMIT v 3.00
for mainframe communications & terminal emulation.
Implements almost complete
DEC VT-102 terminal emulation for use with most mainframes and minis. Includes
comprehensive source code and documentation. (HD)
2777 Mr LABEL v.5: a
versatile label generating program.
Includes text editor,
multi-font support, auto-increment, multiple formats and flexible design
formats.
2778 PC-BILLING v.2.2:
a simple invoicing and debtors tracking program.
PC-Billing is an easy-to-use,
no-nonsense program that prints invoices and automatically tracks information
about your customers. Consolidates receipts and reports on outstanding debts.
2779 PC-DRAFT-CAD
v.3.02.
A comprehensive CAD
2-dimensional drafting program. It stores all graphical elements (curves,
boxes, circles, ellipses etc.) as individual objects for easy manipulation.
Includes several fonts and common objects. Exports to .GEM (Venture) and .WPG
(WordPerfect) graphics formats. Updates 1657/8. (CGA, HD)
2780 PAPERS database
for scientific literature references.
This great database allows up
to 6 keywords, notes of several pages, and all elements of scientific
references. Features dBase-compatibility, ultra-fast search & sort, DOS
shell. Ideal for academics, students & librarians. (HD) Updates 2039.
**** ACCOUNTING &
ADMINISTRATION ****
2781 The FAST INVOICE
WRITER for small businesses.
An simple but powerful
program to produce invoices, statements, requisitions, orders etc. Does all the
calculations, prints multiple copies and mailing labels, and keeps date in a
customer & cashbook file. All you need!
2782 PC-BILLING
automates your invoicing and debt collection.
Prints invoices, stores
customer data, automatically prints "past-due" notices after 30 and
60 days and provides several management reports on the outstanding debt.
Menu-driven and comes with sample data.
2783 BANK STATEMENT
TAMER & BANK-BOOK for home finance & small business.
The Bank Statement Tamer is a
menu-driven program to check your bank account statements. Provides full,
step-by-step assisted statement reconciliation. BankBook is a very intuitive
checkbook manager support full statement reconciliation (incl. ATM and EFT
slips) and even prints checks. It allows you to analyze your expenses according
to specific categories, using Year-To-Date and other trend patterns.
2784 CCI HOME BUDGET.
This menu-driven home finance
program allows you to monitor and control your family income & expenses
against your budget. Supports many different expense categories, transactions,
accounts, etc.
2785 & 2786
CHEQUE-IT-OUT: Your personal financial manager.
This professional looking,
menu-driven personal finance system is intuitive to use but generates
impressive reports on your net worth, income & expenditure, cash flow,
budgets, etc. Puts you back in charge of your money. Context-sensitive help,
optional sound effects, cheque printing etc.
2787 & 2788 EXPRESS
CHECK v.3.05 Cheque account manager.
This very popular cheque
account program sports a very attractive and well-thought out user interface.
Recurring payments need only 2 keystrokes, the screens look like real cheque
books, etc. A wide variety of reports available (eg all cheques for a certain
payee, uncleared cheques, certain budget codes, ...). Prints cheques as well.
2789 HOME MANAGEMENT
II: 5 home/small business financial programs.
This package contains the
following 5 modules: BUDGET to manage your finances and cheque account,
TYPEWRITER, personal budget PLANNING, QUIK-LOAN analyzer and STOCK BROKER
portfolio tracker and performance analysis.
2790 MULTI-ASSISTANT:
your personal executive secretary.
This multi-function program
takes care of your finances (cheque account management, budget analysis, cheque
printing) and tracks your personal investments (records, valuation and regular
commitments). It also incorporates a telephone book and mailing lists as well
as a comprehensive calendar/appointment/project manager.
2791 PC-MONEY v.2.2:
loan and investment analysis tool.
PC-Money will calculate
anything about any standard type of loan. It will also analyze annuities,
mutual funds and other investments based on regular payments.
2792 PC-FLOW: your
personal cash-flow budgeting system.
This program allows you to
forecast your home or business cash flow. Enter financial transactions with
exact or estimated amounts, daily-weekly-monthly periodicity and categorize
them by expense/income category.
2793 & 2794
ACCOUNT+ PLUS integrated accounting manager.
This menu-driven package with
on-line help integrates a general ledger, inventory, checkbook, receivables and
payables module. Many reports available.
2795 ACCOUNTING 101
basic accounting package.
This no-frills, user-friendly
program performs all the basic accounting functions and hides all the
"double entry" complications. It automatically maintains deposit,
general, cheque and payables ledgers.
2796 NON-PROFIT General
Ledger.
NGL will suit the accounting
needs of small not-for-profit and service organizations. It has a fixed but suitable
account structure with multiple fund & service accounts. Includes an
interesting manual on non-profit accounting.
2797, 2798 & 2799
PAINLESS ACCOUNTING fully integrated accounting package.
A full-featured program with
general ledger, billing, accounts receivable & payable, purchasing, reports
& year-end/start modules. Features: very customizable, help, network,
multiple department/company, budgeting, window/menu, passwords, ...
2800 RAMBase
Accounting: very fast accounting package.
Runs completely in RAM,
therefore extremely fast. Switch immediately between payables, receivables
(very quick invoicing!), inventory, checkbook, point-of-sale and reports.
2801 ROSEWOOD JOURNAL:
invoice & receivables system.
Tracks sales, invoicing and
cash/account payments. Prints statements (for window-type envelopes) and
labels. Can be used with any other general ledger.
2802 & 2803 SWB:
SYSTEM for BUSINESS and the WORKPLACE.
A business management system
written for dBase III+ with the following modules: customer information system,
production system, human resources (personnel), accounting (incl A/R &
A/P), inventory management. Source code is included and can be changed to suit
your needs. (needs dBase III+)
2804 EASY INVENTORY for
small business.
Simple yet suitably powerful
inventory control and management system for the small retailer and/or
manufacturer. Tracks quantities (on-hand, minimum, to order), prices, locations
and suppliers. Monitors sales (time/location/product), prints re-orders and
backordering info etc. (HD)
2805 & 2806 THE
PRICE BOOK: item pricing/costing system.
Keeps track of the cost &
sales price of many 1000s of items. Will generate quotes, invoices, purchase
orders and order acknowledgments.
2807 COST-BIZ job
costing program.
Straightforward single-job
price estimation program. Caters for labour, materials, subcontractor and
equipment costs. Cost methods: percentage or quantity-based. Can handle very
large jobs and item cost tables.
2808 & 2809 JOB
COST: cost & budget-based project management.
A complete system for budget
and cost control/monitoring/forecasting. Handles multiple jobs, many cost
centres, partially completed jobs, job profitability, cost variance etc.
Menu-driven, on-screen help. (HD)
2810 THE BILLING
STATEMENT.
A quick and fuss-free way for
small businesses to produce standard billing statements and to track customer
accounts.
2811 PC-BILL:
time-based service billing system.
Menu-driven system for
flat-fee/hour-based billing. Sophisticated features include summary bills for
multiple account clients, ageing reports, client account error/query flagging,
customizable "late account" messages with optional late-charge
interest, automated monthly data backup. (HD)
**** MISCELLANEOUS ****
2812 ARJ: the latest
file compression system.
Claims best compression,
32-bit CRC, multi-floppy backup, string archive search, self-extraction, many
security options and full sub-directory support.
2813 DSTUFF: Archive
utils.
Display internal structure of
ZIP, ARC, dBase and ICE files. (needs CGA!)
2814 ESIE: Expert
System Inference Engine.
This oldish simple program
serves as a nice introduction to expert system. This is the old program but
with three small sample knowledge bases (animal, doctor & glass).
2815 EYESIGHT:
beginner's introduction to computer vision.
Experimental environment for
performing various image processing functions (used in computer-based
recognition) on image files. Shows how edge detection, region recognition etc.
works. Comes with sample files and tutorial on computer vision. (CGA/EGA)
2816 SCHEDULE MAGIC:
vehicle loading & scheduling.
Calculates and optimizes
commercial vehicle schedules to minimize number of vehicles needed. Uses the
concept of grid coordinates of all points to minimize distance & travel
times. Ideal for multi-branch pickup/drop-offs, (school) bus routing, delivery
of drugs/groceries/hardware/fuel... and customer location-based services
(plumbing, appliance installation/repairs, pest control,...).
2817 VEHICLE RECORD
SYSTEM vehicle management system.
Tracks fuel, maintenance,
insurance, registration, tires, loans, travel, cost and more for any number of
vehicles. Aids in cost, maintenance and service management. Suitable for home
or business. (needs Hard Disk, AT recommended)
2818 CAPTAIN VIDEO: video-cassette
management system.
For video stores, libraries
or video fanatics. Tracks & organizes cassettes. Full administration system
for customer, rental, maintenance, employee and inventory management. Prints
many reports, labels & letters.
2819 ELECTRONIC
INFORMATION SYSTEM: bulletin board.
Electronic mail and
communication system for small business & BBS with virtually unlimited
message facilities, high security, LAN support and easy installation
procedures.
2820 FREE SPEECH BBS.
High message throughput ,
multi-language, "zero-maintenance" bulletin board system. Run as
stand-alone, front-end or door.
2821 to 2825 RBBS-PC
v.17.3.
The complete, popular public
domain bulletin board system with all whistles and bells. Includes source code,
is fully modularized and supports subscriptions, many protocols, CD-ROM.
(updates 1163/5)
2826 VARI-TALE:
branching story script writer.
Vari-tale allows one or more
people to create stories with alternative chapters. Different people can add
various versions or add different twists at any stage. For stand-alone or BBS
systems.
***** BUSINESS SPECIFIC
*****
2827 & 2828
CALL-MASTER: service business management system.
Ideal for lawn care,
appliance repair/maintenance or installation, pest control and other
home-calling service contract-based businesses, this menu-driven system handles
all admin & accounting tasks: call management, accounts receivables, basic
accounting, mailing labels, call schedules, telephone listings etc. (HD).
2829 ELECTRONIC
CATALOGUE CONSTRUCTION KIT.
Replace or supplement your
traditional paper catalogue with a catalogue "on floppy". Create a
catalogue (use your own word processor if you like) with short descriptions an
prices; add standard ordering info and let the user select the items (on
his/her own PC or at your premises) after which an invoice/order is printed
automatically.
2830 & 2831 SERVICE
PLUS: service business admin system.
Maintenance and repair
businesses can use this to organize, track & control service calls, record
expenses and generate bills. Very well documented. For car/bus/taxi repair,
plumbing, appliance service/repair/rental/installation,...
2832 SOFTWARE SALES
TRACKER.
For software authors who
distribute directly to customer, it tracks all info about your users. Can track
several products simultaneously, with different versions or models. Also allows
patching of your distributed .EXE files with serial number and customer name.
(HD)
2833 THE WINNING BID:
auctioneer assistant.
Recommended for anyone who
organizes a fund-raising auction - includes 70-page DIY manual! Records
sellers/donors, merchandise, lot details (number, description and minimum bid)
etc. Many options to suit different types of auctions.
2834 SHEETCUT: sheet
material optimization system.
Displays or prints best way
to cut a given sheet of plywood, glass, plastic, metal, cloth etc to minimize
the wastage. This program pays for itself (and your PC) in days! Menu-driven,
can print final "work order". Needs CGA (or EGA/VGA).
***** CAD &
GRAPHICS DESIGN *****
(unless specified
otherwise, programs will work with any graphics card)
2835 DRAFT CHOICE fast,
powerful CAD program.
For novice and expert.
Pull-down menus offer object-element based control. Print to dot-matrix printer
or HP plotter. Slide show option.
2836, 2837 & 2838
MEGACAD: 2-D professional CAD, 2x faster than AutoCad.
German CAD program for
intermediate or professional use. Includes all basic drawing objects and
advanced options such as dimensioning, hatching, macros, layering, grouping.
Needs mouse & HD.
2839 NORTHCAD-3D: full
colour 3D design.
Create 3-dimensional colour
objects & images. Many options including scale, rotate, pan, zoom. Heavily
documented but no print drivers included (for hard copy use PrtScr). EGA/VGA (but
will work on CGA).
2840 PROFESSIONAL
CAM-CAD: for computer-designed cams.
Guides novices or engineers
through the complex calculations necessary to design cams (device to transform
rotary into oscillating or translating motion). Use or combine different cam
contour styles (harmonic, cycloidal, polynomial, CV, MCV), see the final result
and save valuable development time. (CGA)
2841 TURBODRAW:
entry-level line-drawing CAD system.
Ideal point-and-click draw
program for electrical, architectural, mechanical engineering, data/program
flow. Features pattern fill, user symbol libraries, TIF/PCX/PLT file formats,
300 dpi output.
2842 & 2843 VGA-CAD
v.2.4: popular all-purpose graphics & paint program.
Beautiful paint program with
21 different brushes (5 modes each, including airbrush) to create beautiful
pictures. Support GIF and some other graphics formats and includes CGA/EGA/VGA
conversion utilities (see also 1775/6). (needs EGA/VGA & HD) Updates 1769/70.
2844 CMPCALC3 &
QWIKMATH: powerful calculators.
CMPCALC is a RPN (HP-like)
programmable calculator for complex numbers that provides a host of
mathematical operations & functions + 50 memories.
QWIKMATH is the ultimate
programmer's calculator with instant binary, octal, decimal, hex AND
ASCII/extended scan code conversion. Features many logical and bit operations
as well as 32-, 16- and 8-bit mode.
2846 BSIM: ecological
system simulator.
This educational biology
laboratory environment allows one to experiment with various parameters of an
aquatic ecosystem as well as user-modifiable "pseudo-gnomes". Needs
graphics card.
2847 CRYSTAL build 3-D
models of crystal structures.
Many sample crystals are
provided but you can add or build your own. Also includes data file for use
with ChemView (1170).
2848 ACIS: Advanced
Church Information System.
Keep track of members,
visitors and organizations & print mailing labels, Rolodex cards etc. Easy
to use. (HD)
2849 & 2850 CMTS:
Church Membership Tracking System.
This advanced but
user-friendly, menu-driven system allows you to track members by family or
groups (choir etc), print labels or rosters, record special skills, donations
etc. Password protection. (HD)
2951 BSR, XPORT, SFC:
transfer data between 2 PCs.
These utilities allow you to
easily transfer data directly between 2 PCs - handy for laptop-desktop
communication or installing programs when you don't have 3"-5"
compatibility. Serial ports and null modem cable required for these utils.
2952 COPY-MASTER &
FORMAT-MASTER.
Copy-Master is a
comprehensive file & disk copier with a multitude of file selection
criteria (batch tagging, date criteria, ...) with features such as encryption,
multi-format (360/720/1.2/1.4) support, LIM / EMS and mouse support.
Format-Master is a similar
professional multi-faceted formatting utility with comprehensive diagnostics
and extreme flexibility. It also allows the SAFE formatting of standard 360Kb
(DSDD) diskettes to 800Kb capacity on 1.2M drives.
2853 DATA-MASTER: dBase
III & Lotus 1-2-3 file manipulator.
Create, browse, modify, query
(powerful!), add dBase III databases and 1-2-3 spreadsheet or convert between
them. Also includes calculator, DOS commands and text file access. (HD)
2854 dbCLEAN:
find/eliminate duplicate records in dBase files.
Powerful program to locate
and optionally delete dupes in dBase or compatible databases. Save disk space
and mailing costs!
2855 dLITE:
memory-resident pop-up dBase-compatible list manager.
Allows you access to your
dBase datafiles or other database lists from within other applications (eg
wordprocessor). Includes comprehensive mailing list manager and allows full
editing incl. cut/paste into spreadsheet or text file.
2856 XREF: data
dictionary documentation for dBase-compatible databases.
In-depth analysis of database
structures, index expressions and cross-references. Also works with NDX and NTX
index formats.
2857 COIN COLLECTOR
database.
Track up to 1 million coins:
type, mint place & date, condition & quality, face and market value,
country. (HD recomm.)
2858 FAST-FILE: small,
simple very fast database.
Great for laptops & PCs
without hard drive - just right for novices, home & small business. Easy to
learn with "learn-by-doing" manual. Comes with many examples: client
list, checkbook, inventory, teacher's gradebook.
2859 FFD: Free-Form
Database.
Keep track of all kinds of
data - from letters and programs to mailing lists and fully relational data
without actually defining fixed structures. Instant access to a virtually
unlimited amount of information! (HD)
2860-2863 FILE EXPRESS
v.5: extremely powerful but still easy-to-use database.
This classic shareware
database has retained its userfriendly menu-driven interface but offers
virtually unlimited power: huge capacity, context-sensitive help, network &
mouse support, macros, change database layout, query & report facilities,
precision math functions, multi-field sort, supports 280 printers, word
processing / mail merge. (HD)
2864 I FOUND IT &
MULTI-FILE XL: simple data list managers.
Keep lists of people, things
or whatever. Prints tabular lists or mailing labels. The two simplest databases
around! Each program has a slightly different approach but are equally easy to
operate.
2865 IDEALIST v 2:
attractive information manager.
Tracks notes, idea or hobby
information (stamps, coins, books, recipes) using a colourful graphical
interface. (EGA & HD)
2866 IMAGE ACCESS
graphics database.
Store records with text and
graphic images. Accepts image files in PCX, PSM or TIF formats - generated by
paint program, scanner or video digitizer. Organize clip-art, personnel files,
photographs, hobby or scientific collections, estate agents, ... (EGA & HD,
printing of graphics requires 24-pin or laser)
2867 INFORMATION
PLEASE! full-text storage & retrieval program.
Store & retrieve
full-length text information eg letters, invoices, articles, memos etc.
Features pull-down menus, associations with PCX graphics or other programs,
text import, powerful search criteria. Sample "DOS disk problems"
textbase. (CGA! & HD)
2868 & 2869 QUESTOR
VIDEO database.
Manage your big video
collection with Questor. Fully menu-driven with all the necessary video data.
Sports unique "English" query-search interpreter!
2870 & 2871 SR-INFO
v.1.4: commercial programmable relational database.
This upgrade of VP-Info can
handle from very simple to complex relational (6 file) tasks. Works with many
formats (including dBase, ASCII text and binary) but is extremely fast
(compiles programs to pseudo-C). Extensive on-line help & demo.
2872 VIDEO-CAT video
database.
This feature-filled video
collection database program is quite flexible and allows free-form text
comments.
2873 VINO-FILE Wine
Cellar Master database.
Track and analyze your wine
cellar inventory. Highly customized to include tasting notes, peak drinking
period, future purchases etc. Excellent documentation.
2874 WYNDFIELDS
general-purpose database.
Easy-to-use yet powerful
database system with advanced features eg mouse support, mail merge,
import/export, on-line help, string & math functions.
2875 RAMDESK:
networkable desktop pop-up.
This memory-resident
multi-purpose utility features alarm, standard & scientific calculator,
address/phone directory, scheduler, expense & work done log, and
mini-databases. Interfaces with Ticklex (1530) and allows E-mail when used on a
network. Minimal (7K) memory overhead.
2876 DESKTOP PAINT
create pictures for DTP programs.
This paint program allows you
to quickly create images to include in your documents with Venture, Pagemaker,
WordPerfect or any other program that handles TIFF, WPG, IMG or PCX files.
Features rotate, flip, scale, fill, 3 fonts, image fragment etc.
2877 DOS PRACTICE
increase your DOS knowledge, skill & speed.
Excellent refresher, practice
or training tool for DOS users, novice or advanced. Doesn't teach DOS commands
but requires you, in a game-like fashion, to accomplish certain tasks in the
quickest possible way.
2878 PC-LEARN on-disk
articles on essential information for PC novices.
This collection of articles
covers a wide range of subjects: DOS fundamentals, purchasing a new PC,
applications review, upgrading, display standards, communications etc.
2879 PC-GLOSSARY:
comprehensive reference for PC terminology.
Up to date lexicon & cross-reference
to 100s of acronyms, buzzwords and abbreviations. Comprehensive full-page
explanations of problematic terms for novice and expert. (HD)
2880-2883 TUTOR DOS:
the ultimate DOS tutorial.
A very thorough &
complete computer tutorial covering your PC, DOS and much more. No prior
knowledge is assumed, consists of 21 lessons & quizzes, fully interactive,
advanced answer processing. Takes you up to any level, including very advanced.
2884 COMPUTING TUTORIAL
The most popular interactive
tutorial for novices to personal computing. Takes you right through from the
history of computing, parts of a PC, keyboards layout, via basic & advanced
DOS commands right up to programming and batch files.
2886 PC-ECAP &
RESISPOP: electronic circuit analysis.
PC-Ecap analyzes AC circuits
consisting of resistors, capacitors, inductors, transistors and amplifiers. Up
to 40 nodes, unlimited components, free input format, supports all adapters
(monochrome to VGA), double precision math etc. For hobbyists, students, HAMs, engineers
or technicians. ResisPOP converts arbitrary resistance values to standard
available resistor values.
2887 PC-SCHEMATICS
electronic circuit drawing program.
Design schematics, diagrams,
circuit artwork etc. using 336 standard components (or create your own). Ample
docs. (CGA)
2888 PC-BREEZE II: PCB
design tool.
Create 1 and 2-layer Printed
Circuit Boards of up to 300 sq.inch. Support mouse (but not essential), any
graphics card and plotter/PostScript printer (or dot-matrix for prototype).
Many draw & design aids (libraries, pan/zoom), including auto-routing
facility!
2889 SURVEY LAND
YOURSELF.
A quick and easy way to
survey land, caves, plots, fields, building sites etc. yourself using a simple
compass and tape. Plain English documentation. Ideal for preliminary surveys or
interested people (land owners, prospective builders, farmers) who are happy
with 98% accuracy. (written in Basic)
2890 ANIMATED MEMORY
GAME for all ages.
Test your memory skills by
matching hidden pictures in pairs. 14 tile pattern, various levels of
difficulty, colour customization, mouse or keyboard. Needs CGA or VGA & HD.
2891 CROSSWORD CREATOR.
Designer & solve your own
puzzles. Produce professional printout on dot-matrix or HP laser. Up to 36 by
23 puzzles, lots of help, automatic diagram design option (just enter the
words!), up to 4 text lines per clue. Mouse recommended.
2892 MASTERMIND
Test your deductive powers:
try to guess the 6 or 7-digit number knowing how many of your digits are
correct but not which ones. 3 levels, supports mouse. Needs CGA!
2893 ACTAE ON:
mouse-driven graphical hard disk interface.
This innovative front-end
shields you from DOS. It features text search, editing, 43/50 line display
(EGA/VGA) and expanded memory use.
2894 MULTIBAK: file
backup utility. FINDZZ: file locator.
MultiBak allows you to keep
up to 99 different backup versions of files; useful for frequently revised
programs, documents, spreadsheets etc. FindZZ will search your hard disk for
misplaced or "lost" files.
2895 PIK: point &
shoot file selector DIR companion.
With PIK, you can select
files left behind on the screen by the "DIR" command and mark them
for deletion, copying, moving or compression.
2896 GS-TESTIT and
Passing Passages: private pilot exam preparation.
Quiz program using actual FAA
(US) questions covering the various exam subjects for private pilot's written
examination: weather, physical aircraft, navigation, ATC etc. Although
US-based, many questions may be applicable to RSA. Also includes an educational
maze game with FAA examiners at selected corners.
2897 CALORIE COUNTER.
Keeps track of daily calorie
consumption, weight and blood pressure. Has a big food database and assists
with menu planning. Graphs available.
2898 MASTER MEAL
MANAGER meal planner.
Plan meals for the coming 2
weeks, selected from up to 500 recipes, and generate a shopping list for the
ingredients you're going to need. It automatically adjusts quantities for the
number of servings. Can be used for normal family home cooking but is indispensable
when catering for resident visitors, nursery or temporarily "enlarged
families".
2900 SCREEN DESIGNER
graph and picture drawing program.
Create up to 8 different
graph types (bar, pie etc) and draw circles, curves, boxes etc. Use mouse or
keyboard. 2900=CGA; 2901=EGA; 2902=Hercules version.
2903 & 2904
GRAPHTIME-II: business & technical graphics system.
Up to 19 graph types with
text in different fonts. Menu- or command-driven. Can import data from dBase,
Lotus or text files. Supports free-form drawing. Dot-matrix or HP laser
printout. (CGA/EGA)
2905 PICTURE LABEL:
print PrintMaster/PrintShop graphics on labels.
Use the graphics libraries of
PrintMaster or PrintShop (or compatible: see disks 2718, 1350, 1349, 1254) with
your own text (or addresses) to print various types of labels for addresses or
other purposes.
2906 Z-GRAF v.5.5: easy
charting & graphing tool.
Quick-and-dirty graph and
chart building for speedy creation of attractive and convincing presentations.
Supports all common graph types (line, log, bar, pie, area) and provides fairly
sophisticated mathematical analysis (regression, integrals, etc).
2907 PC-TRACK:
satellite tracking program.
Locates current position of
earth orbiting satellites for HAMs to weather satellite users. (EGA)
2908 BETTER DIET
ANALYZER: monitors your diet.
Tracks calorie, fat,
cholesterol and sodium intake based on a nutritional database of 1000+ foods
(more can be added) and records your (or someone else's) personal consumption
for up to 9000 days. (HD)
2909 DIET & WEIGHT
CONTROL Assistant.
Contains various modules on
assisting you with your dieting program: how to achieve success, how long it
will take, calories vs. weight lost, reasons to diet, diet food shopping,
principles of dieting, meal calorie calculator.
2910 DIET AID: diet and
menu planner.
Uses your height, weight and
activity level to calculate the optimal levels of calorie, fat and protein.
Based on various food equivalency exchanges and stored recipes you can then let
it propose various menus.
2911 NURSING teacher,
assistant and administrator.
PC-NurseWorks automates some
of the routine tasks: intake & output sheets, drug dosage calculations, IV
flow calculations, unit conversions and optimal weight determination. This disk
also contains educational tutorials and quizzes on psychotropic drugs
(sedatives, antidepressants etc).
2912, 2913 & 2914
MED#1 medical office management system.
This system will improve or
easy the daily administration of medical practices, incl. patient statements,
ledgers, aged accounts and special patient recall. Note that this is a US
system and (shareware version) limited to 100 patients but may still prove
useful.
2915 & 2916 SLIMMER
computerized diet program.
Calculates your ideal weight
and appropriate caloric consumption and generates food and weekly menu lists
that fit. Also lists various forms of exercise and their calorie requirements.
(HD)
**** HOME MANAGEMENT
PROGRAMS *****
2917 CRAFTY LI'L HELPER
home (craft?) business system.
This system handles all your
admin such as inventory, billing customers (retail & wholesale),
outstanding orders & bills and where your money is going. You concentrate
on your business, this program will do the rest!
2918 & 2919 HOME
MAINTENANCE and REPAIR advisor (DIY).
This set of disks offers
step-by-step guidance and support to do-it-yourself diagnostics,
troubleshooting and repair of appliances, car, heating, plumbing, electrical
systems and air conditioning. There are both trouble shooting charts for when
something breaks down and general maintenance tutorials to prevent them from
breaking. The tool lists, illustrations etc. can save you a pack of money on
those simple jobs but lets you know when to call the professional. (CGA)
2920 HOUSEHOLD
REGISTER.
This program allows you to
maintain a comprehensive list of everything in and around the house (or small
business?). Classify by 24 locations, 24 categories and 8 different owners.
Also tracks purchase and replacement prices as well as warranty information. 7
different reports.
2921 SMART HOME
SHOPPER.
Allows you to shop more
wisely by comparing prices of up to 5 stores. Shopping lists are prepared by
category. Ideal for large households or small clubs/groups.
2922 JAPANESE HIRAGANA
Symbols tutorial.
This tutor teaches you to
recognize the 75 hiragana ("syllable") symbols with literal
conversion to the English sounds. Mouse/keyboard. (EGA)
2923 MEMBERSHIP LIST
& MAIL LABEL program.
Keep track of the members of
your organization, society, club etc. Includes info on dues payable etc. Print
on cards, labels or lists. Select only certain members (eg fees due).
2924 & 2925 THE
COMPLETE OFFICE organizer.
This integrated menu-driven
program combines all the essential functions of an office. Track personal
records (clients, employees); write letters & memos (incl.mailmerge &
label printing); time & appointment manager; inventory of cash, supplies,
... it's all there! (HD)
2926 & 2927
SUPERTRAQ expense manager.
Allows you to track expenses
by project, employee, client or expense file. Various expense categories with
date, description, tax status and cumulative totals. Wide variety of reports.
Adapts to individual routines of different employees. Works bets with
structured day organizers.
2928 HARD AT WORK
"busy-body screens"
This disk includes 8
look-alike "applications" which give your PC the appearance of
working intensively whilst you're taking a break: eg bogus system test,
database indexing, disk optimizer, virus check, spreadsheet fill etc.
2929 SOFTWARE REVIEWS
A collection of reviews of
popular software packages in text file format.