Free Republic
Browse · Search
General/Chat
Topics · Post Article

To: EveningStar

From interview with Donald Knuth, Dr. Dobbs Journal April 1996

DK: The first thing I would say is that when you write a program,
think of it primarily as a work of literature. You’re
trying to write something that human beings are going to
read. Don’t think of it primarily as something a computer
is going to follow. The more effective you are at making
your program readable, the more effective it’s going to be:
You’ll understand it today, you’ll understand it next week,
and your successors who are going to maintain and modify
it will understand it.

Secondly, ideas that are mathematical in nature should be
the property of the world and not of the individual who
thinks of the theorem. I’d prefer that all but the most sophisticated algorithms be made public and that everybody
use them, and not that every time you use such-and-such a
method you should pay a nano-penny to some fund.

I wrote an open letter to the head of the U.S. Patent Commission,
published in the current printing of the CWEB
manual. I said, ‘What if lawyers were to have rights to their
precedents? What if people had patents on words of the
English language, and every author who wanted to write
a novel would have to check which words they were using
and pay royalties to the owners of those words? Can’t you
see how obvious it is that the quality of the legal system and the quality of published books would go down? Because
you’re taking away the building blocks that people need to
do their job.’

The basic building blocks that software designers need to
do their jobs are algorithms and languages and mathematics.
It’s traditionally impossible to patent a mathematical
formula, for very good reason. Anyone who would wish to
calculate the area of a circle and use r2 should have to pay
a royalty for that: It’s exact, it’s a universal thing. I think
that algorithms should be in exactly the same category. Algorithms
are mathematics.

Algorithms are the building blocks to create large, useful
systems. The service that you’re providing for people
is making those systems more accessible, packaging them
better, giving better help on the phone, but not just having
a method that other people could put into another system


34 posted on 05/10/2014 5:22:58 PM PDT by the_daug
[ Post Reply | Private Reply | To 1 | View Replies ]


To: the_daug

patenting color and background is like patenting words?


35 posted on 05/10/2014 5:27:35 PM PDT by the_daug
[ Post Reply | Private Reply | To 34 | View Replies ]

Free Republic
Browse · Search
General/Chat
Topics · Post Article


FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson