[net.micro] Are any parts of UNIX in public domain?

rb@ccird1.UUCP (Rex Ballard) (05/09/86)

In article <1001@celtics.UUCP> roger@celtics.UUCP (Roger Klorese) writes:
>In article <17555@rochester.ARPA> ken@rochester.UUCP (Ipse dixit) writes:
>>>It is interesting to notice that the previously very small (and fast)
>>>shell procedure /bin/true now has a size of 747 bytes and a doubled
>>>execution time.
>>
>>Oh, good grief! Do those lawyer types worry about somebody stealing
>>a one-liner like exit 0?
>>
>You're under arrest...   :-)

Actually, if it could be proven that you executed "cp bin/true ./true"
and then edited ./true, deleted copyright notice (leaving an EMPTY
file I believe), and proceded to "publish" this work to other machines,
you could be in trouble.

However, if you simply executed "rm ./true; touch ./true" creating
the empty file, you would be all right.  Quoting from "The Rights
of Authors and Artists" (American Civil Liberties Union, Bantam Books):

	Perhaps the best summation of originality was provided by
	Judge Learned Hand, who wrote that "if by some magic a man
	who had never known it were to compose anew Keats's Ode on
	a Grecian Urn, he would be an 'author', and if he copyrighted
	it, others might not copy that poem, though they might of
	course, copy Keats's."

	(Sheldon v. Metro-Goldwyn Pictures Corp., 81 F.2d 49, 54
	(2d Cir. 1936), aff'd 309 U.S. 390 (1940).

Remember too, that only the expression of an idea, not the idea
itself is covered by the copyright.  In the case of "true", the
idea is so simple that you could easily do the same function.
However try this with yacc, or sed!

Furthermore, AT&T also has copyright over the "Collection" as
well, meaning that if you replaced "true" than tarred the works
over to another machine, your "derivative work" would still be
covered, even though your "contribution" would not.

That's the problem with copyrighting software.  Even though
the "collection" might be covered, as would be the units within
that collection, someone who looks at the same code or description
of the functionality of that code (Man pages) could use a different
form of expressing that functionality, add a few features, write
his own documentation, and publish his own product.  This is commonly
called "reverse engineering".  As long as copyrights, rather than
patents are being "reverse engineered" and as long as the entire
work is re-expressed, the "duplicate" is legal.

Fortunately, this is not the type of copyright violation that most
people are concerned about.  They are more concerned about the
works that include "pieces" of their copyrighted code.  Technically,
this article contains 1 sentence of copyrighted work, and I could
get in trouble for it.  But, since I also provided enough information
about the title, authors, and publisher, for you to order a copy,
I have in fact done the publisher a service.  If I had tried to
remember the quote, changes in phrasing, grammatical style, and
diction, would have been my own.  Still, I would probably have
tried to remember something about the original so that the
reader would get more information.

Contrary to what some people believe, copying code out of K&R or some
other textbook or magazine onto the computer does not make it public
domain.  Changing the expression after you've copied it doesn't either,
that would be a derivative work.  If however you look at their way of
expressing the idea, and see if, after closing the book, you can
express the idea in your own "style", you are creating an original
work.  If you are just learning the language, or are totally unfamiliar
with it, you may want to make a copy, but don't publish this code, it
is covered by copyright, call the publisher, see if you can work
out something.

The thing I find most suprising is the inflexability of software
publishers.  If you took the AT&T version of "printf" and included
it in your source code, you might have to restrict your publication
to UNIX liscence holders, or pay for a FULL unix distribution liscence.
In fact, Microsoft was (and probably still is) asking for $50+ for
"binary" rights to their libraries.  In fact, many software companies
don't even know how to negotiate royalties, especially on derivative
works.

If I were to include this article in a commercial publication such as
a magazine, the magazine publisher would negotiate the royalties,
deduct the advertizing space, and come up with a pennies per 1000
fee, or flat "token" fee, which it would pay to Bantom.  If Bantom
were totally unreasonable, and insisted that the magazine pay the
full $4 per copy that the book cost, then the article wouldn't be
published.

In fact, to get back to the main topic, parts of UNIX ARE public
domain, or copyrighted by authors other than AT&T.  You are, however,
barred from telling anybody which is which under the non-disclosure
agreement (so don't try :-).  AT&T could do a great service to the
industry by negotiating royalties for these other authors, serving as a
clearing house, taking an agent's commission, and making a bundle on
software.  Instead, AT&T tries to intimidate people under a "trade
secrets" clause, and claims "we own everything and you can't use any of
it without buying everything".

There are other firms, which encourage third party distribution.
OS-9, VRTX, and others often have such reasonable "volume" agreements,
that third parties don't need to squabble over pieces.  Other
companies sell "publishers packages" of their software which includes
binary liscences for the libraries, often a flat fee of as little
as $200-300.  Many BBS's have "phone-in software" which they can
charge you for downloading, and send the author royalties of say,
$.50/copy.

The software industry is too caught up in "black and white" of
"wholesale piracy of Lotus 1-2-3" versus "public domain, free
to everybody".  This is common among any new industry.  It happened
in films, television, recorded music, and photocopied articles.
Anything that could innocently go through a third party, could
end up going from "copyrighted" to "thought it was public domain"
to "copyrighted, published big time".

Software developement is too expensive to spend time and money
coming up with "yet another version of printf", simply to avoid
"piracy concerns".  What we need is some sort of standard formula
for estimating the cost of a piece of software.  Personally, I
like the idea of using number of lines, size of binaries, or
execution time as a percentage of the whole.  This could be
figured against a 6% or $1 figure, whichever is greater (for "free
software").  This would be an estimate, the actual amount would still
have to be negotiated.  This would encourage developement of smaller
versions of things which could be standardized.  In addition, larger
versions of identical functionality would have to justify their
performance in terms of speed.

Notice however, that we are talking strictly about royalties.
In other words, you get what you get, no promises of bug
fixes, enhancements, or newest versions.  Issues such as software
support, bug fixes, would between the owner and the publisher,
not the owner and the end-user.  If the author come up with
a bug fix, or someone else does, the author still has control
over "derivative works".  He could easily tell his publishers
"there is a bug in printf, want to buy the fix?" the publisher
has the option of telling his users "want the new, improved
version", sent $5 (good for consumers who are paying $5-$20/copy).
The publisher could also sell the package for $400, and say
"send in for your 'free' upgrade" (good for business customers
who like "service contracts").

This would also open the market for "subsription software".  Suppose
you could get monthly "tar tapes" or CD-ROMs of the "latest and
greatest" software, all for $10/user/month.  Not only would you
get binaries, you'd also get source, so that you could contribute
your $.02 worth to subsequent releases and get $.02/1000 copies.
Remember 6% of $10 is $.60, and you are changing 500 bytes of a
20mbyte tape/disk.  Of course, you might continue to collect that
amount for the next 12 releases.  Or maybe the service will just
pay you a set fee of $10/line if they decide to use your code.

Now imagine yourself as the customer.  For $10/user/month, you
get not only write-ups, and documentation of the latest languages,
applications, and libraries, you also get actual versions you
can USE, right here, right now.  No SA trying to get part 2 of 6
from net.sources, no "we've got version 17.52, but 17.61 is
better".  No bringing your vax to it's knees because you have
to "make" the latest berkely release tapes.

Of course, there might be some "PD" contributions, but on the
other hand, why "give it away" if you can get $200 from 
AT&T, or whoever.  Why steal it, if you can get a copy for
what in effect is $.10/user.  Why wouldn't the distributor pay
for it, if he's going to sell 2,000,000 user/copies/month.  We're
talking revenues of $240 million/year.  Anybody interested?!?

Of course, rather than just put sources and binaries on the disk,
you could also put all the latest news (right off of net.news :-)
on the media as "filler".  On top of that, since such a medium
would not be bound by arpa "no commerce" restrictions, you could
also add "advertising" such as verbose announcements, descriptions
of products, and "printed documentation" announcements.

Don't you wish this were a product announcement :-).