Dan Bricklin's Web Site: www.bricklin.com
Patents and Software
The history of intellectual property protection and software has an anomaly that brings strong reactions to software patents.
Patents and software are a controversial subject. I delivered a paper in 1995 that goes over some of the reasons software is different than other areas when it comes to patents. The reasons are not just inherent in software, such as the building piece by piece on top of old inventions, but also external in its history of having not used patents as part of the industry for so long. No matter how you feel about patents as a general matter for advancing development, you should understand why many software people find the concept so hard to deal with.
...Now that we have seen an overview of the development process, let us see how legal protection of intellectual property, especially patents, has been involved as this process was developed over the last 50 years.
For many years, when there were few computers, software was very expensive, and most "sales" were really licensing done with long contracts. During this time, tradesecret was used for protection. Later, as less expensive personal computer software became popular, trademark and copyright have moved to the fore. For example, since you knew that only a product labeled as "Lotus 1-2-3" had exactly the computer instructions of the popular product you had heard about, you purchased the product with that label. Only by breaking the copyright law, and copying the object code, could someone with another trademark be identical; and only by breaking the trademark law could they put "Lotus 1-2-3" on an inferior product.
Patents are a different story.
During most of the history of programming, when almost all of the basic techniques we use today were developed (from the 1940's to 1981) computer programs were thought, in the United States, to be uncovered by patents. Only by disguising the program as a "machine" were patents normally granted. For this reason, and others, the art, science and discipline of programming developed in a certain way. Computer languages were created that did not make the boundaries between patentable ideas apparent. History was not kept. Not only do we not have copies of early programs that used basic inventions, we also do not have working machines on which to run those computers. (There are a few films, though, showing that early practitioners were quite advanced.) Schools did not teach development methodologies appropriate to patents. There is an early part of many areas of engineering during which time the basic patents stay in a few hands. Others wait for those patents to expire and then everyone can build on a solid, public-domain base. With computer software, this early period never happened. (This early stagnation did occur in other industries that used patents, such as aircraft and radio.) Instead of a traditional patenting culture, a different culture developed, shared by almost all practitioners, of repeated independent invention mixed with building on the work of others.
Mid-course Change Penalizes Current and Previous Developers
Experienced developers remember many of the techniques and inventions used over the last 50 years. They would never think to patent such things. Newcomers, without that experience, often think that they are superior to their predecessors, and think their discoveries are new, when they often are not. Since programming consists of constantly "inventing" ways to solve problems, anybody could think they have something new. The current climate in the USA encourages them to file for patents. The lack of history of the art, coupled with the difficulty of categorizing algorithms that have multiple uses, often makes it impossible to check for real originality. This puts experienced practitioners at a disadvantage, since they must not patent what they feel is obvious or not novel. Given that there is no lack of incentive to develop software, we do not need to make changes that hurt the people who created the industry. (Quite the contrary, there is great incentive knowing that some of the richest people in a country like the United States made their money from software without the protection of patents.)
With the law interpreted one way for so long, and an entire industry structuring itself around that interpretation, allowing the patenting and enforcement of patents of pure software this late in the life of the art is an unusual hardship for a thriving industry that is crucial to the world's economy. While it may theoretically have been appropriate to have pure software patents, the opportunity has passed. Imagine if the aircraft or radio industries had gone 50 years without patents, and then suddenly patents were allowed, with little prior history kept in legal records. Chaos would come about. We do not need that in the software industry.
- Dan Bricklin, 1995
That said, I also feel that no matter how much you might feel that patents don't work for the software industry, and how much you may take up the torch to change the law, it is the law today and a fact of programming life as much as Microsoft, the instruction set of the machine we write for, the turning of the century number, and the need to pay for food. Ignoring them won't make them go away, nor protect you from those that do not have the same beliefs.
- Dan Bricklin, 1999
See also: Patenting VisiCalc.
© Copyright 1999-2010 by Daniel Bricklin
All Rights Reserved.