[ ERCB Home |
New |
Feature |
Brief |
DDJ |
Letters |
Links
]
Legal Self-Help for Software Developers
Review by Jonathan Erickson
Copyright (C) Dr. Dobb's Journal, March, 1994
Some of the thorniest problems programmers end up wrestling with don't
involve advanced algorithms, new APIs, or obfuscated code. Far too often,
the nastiest ones revolve around legal issues--copyrights, trade secrets,
software patents, employment agreements, distribution contracts, and the
like. In fact, in these days of intellectual-property confusion, the biggest
difference between a one-person code shop and a multimillion-dollar corporation
seems to be the number of lawyers on retainer. The bottom line is that software
developers--whether they're independent contractors writing software for
retail or in-house programmers creating proprietary code--need to have a
basic understanding of their legal rights and responsibilities.
In general, the programming and legal professions cross paths in two areas:
individual rights and software protection. For example, when you go to work
for a company as an employee or contractor, you take along a certain body
of knowledge--skills, algorithms, utilities, and so forth. If you write
a program using one of your homegrown tools or techniques, do you give up
rights to it? What's the best approach to protecting your software: trade
secrets, copyrights, patents, or onerous licensing agreements? Much to their
attorney's delight, many programmers are using all of the above to protect
individual pieces of software because it's unclear exactly what is the best
form of intellectual-property protection.
When you get down to it, however, the law isn't rocket science, no matter
what lawyers would have you believe. While I wouldn't advocate Mrs. Bobbitt's
defending herself before an all-male jury, you can still educate yourself
to the point where legal-babble is at least as understandable as Visual
Basic. Software Development: A Legal Guide and The Software Developer's
and Marketer's Legal Companion, both written by lawyers experienced
in software development and intellectual-property issues, do just this for
software developers. Predictably, the two books cover much of the same territory,
and both provide electronic versions (on MS-DOS disks) of ready-to-use forms,
agreements, letters, contracts, checklists, and similar boilerplates.
Software Development: A Legal Guide
Of the two books, Stephen Fishman's Software Development: A Legal Guide
generally goes into more depth, particularly on volatile topics such as
software patents. (The 60-page chapter on patents was actually written by
patent attorney Leigh Hunt.) In addition to providing a historical and legal
background on software patents, the book also discusses how to determine
if your software is patentable, how to go about getting a patent, where
to search for prior art (the locations and phone numbers of dozens of nationwide
patent-depository libraries are listed), and how to understand the patent-classification
system (not as easy as you'd expect). The discussion of software patents
was refreshingly honest, considering that it was written by an attorney--or
maybe it's just that I agree with the author when he says, "only the
powerful (or very determined) can play the patent game." Finally, the
author discusses what you can do if you're accused of patent infringement.
To my mind, trade secrets have always been a better way than patents to
protect software. However, my understanding of trade-secret law has been
largely anecdotal. Fishman's detailed analysis of the topic and his discussion
of the steps you take to identify and protect secrets filled in the gaps
for me, particularly when he compares trade secrets to both copyrights and
patents.
Interestingly, Software Development also has a timely chapter on multimedia,
a subject fraught with legal land mines. While Fishman's focus is for the
most part on how you obtain permission to use copyrighted materials (text,
photos, video, audio, and so on), he also examines public domain and the
fair-use exception to copyrighted works.
As for individual rights, Fishman devotes specific chapters to employment
agreements (from the perspective of both employer and employee), independent-contractor
agreements, agreements to develop custom software, and ownership of software
created by employees and independent contractors. Particularly useful when
dealing with the Internal Revenue Service are the guidelines Fishman provides
for software companies that use independent contractors.
The Software Developer's and Marketer's Legal Companion
Fishman's orientation in Software Development: A Legal Guide is largely
no-nonsense reference--just the facts, ma'am. Gene Landy's Legal Companion,
on the other hand, is more readable and loaded with anecdotes. (Landy's
chapter on trade secrets and confidentiality agreements starts off with
the well-documented travails of Gene Wang's jump from Borland to Symantec.)
That's not to say that because Legal Companion is more entertaining,
it's less valuable: While Landy's book overlaps with Fishman's, Legal
Companion delves into topics such as beta-test agreements and software
liability that aren't directly touched upon in Fishman's book.
It's significant that the Legal Companion is written for software
developers and marketers. To this end, Landy also examines distribution
and dealer agreements, shrink-wrap licenses and warranties, and end-user
agreements. Of special note is a chapter on international software distribution
(including export controls), in which Landy discusses how European and Japanese
intellectual-property laws differ from those in the U.S., as well as the
ins and outs of setting up distribution agreements with non-U.S. distributors.
Landy further provides guidelines for negotiating software-publishing agreements,
including license and royalty issues, sublicensing, sales auditing, warranty
and indemnification issues, and termination provisions. This is followed
by a chapter on distribution channels (including shareware), pricing, warranties,
franchise and antitrust laws, and related information.
Boilerplates
Between them, Software Development and Legal Companion also
provide hardcopy and electronic versions of nearly 40 documents, ranging
from nondisclosures and multimedia privacy releases to source-code escrow
and shrink-wrap license agreements. In most cases, the forms are explained
or annotated so that you can use them without having to consult a lawyer.
Copyright, patent, and other registration procedures are also detailed;
Legal Companion even has an official copyright-registration form
bound into the book.
Using just one of these boilerplate forms or letters will more than pay
for the cost of the book.
Conclusion
Having to worry about legal issues can be a distraction to the actual programming
process. However, in this day and age, writing software without considering
legal ramifications is akin to driving at night without lights--you can't
see where you're going, and you can't see what's coming your way.
Neither Fishman's Software Development nor Landy's Legal Companion
will solve your problems once subpoenas are being served, but either of
them may save you from getting that mired down in the first place. If nothing
else, the two books make it possible for you to carry on a meaningful dialogue
with a smooth-talking latter-day Perry Mason when (not if) you have to engage
legal counsel.
Software Development: A Legal Guide
Stephen Fishman
Nolo Press, 1993, 300 pp., $44.95
ISBN 0-87337-209-3
The Software Developer's and Marketer's Legal Companion
Gene K. Landy
Addison-Wesley, 1993, 548 pp. $34.95
ISBN 0-201-62276-9
Electronic Review of Computer Books
Created 5/1/96 / Last modified 6/4/96 / webmaster@ercb.com