85
Software Copyrights Software Copyrights Software Patents Software Patents and and Free Software Free Software Robert Dewar Robert Dewar NYU/CIMS NYU/CIMS AdaCore AdaCore

Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

  • View
    231

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Software CopyrightsSoftware CopyrightsSoftware PatentsSoftware Patents

andandFree SoftwareFree Software

Robert DewarRobert DewarNYU/CIMSNYU/CIMSAdaCoreAdaCore

Page 2: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke’s SpeechRourke’s Speech

From the movie “The Fountainhead”, From the movie “The Fountainhead”, from Ayn Rand’s novel. Gary Cooper as from Ayn Rand’s novel. Gary Cooper as Rourke.Rourke.

Thousands of years ago, the first man Thousands of years ago, the first man discovered how to make fire. He was discovered how to make fire. He was probably burned at the stake he had probably burned at the stake he had taught his brothers to light, but he left taught his brothers to light, but he left them a gift they had not conceived, and them a gift they had not conceived, and he lifted darkness off the earth. he lifted darkness off the earth.

Page 3: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

Throughout the centuries, there were men who Throughout the centuries, there were men who took first steps down new roads, armed with took first steps down new roads, armed with nothing but their own vision. The great creators nothing but their own vision. The great creators -- the thinkers, the artists, the scientists, the -- the thinkers, the artists, the scientists, the inventors -- stood alone against the men of inventors -- stood alone against the men of their time. Every new thought was opposed; their time. Every new thought was opposed; every new invention was denounced. But the every new invention was denounced. But the men of unborrowed vision went ahead. They men of unborrowed vision went ahead. They fought, they suffered, and they paid. But they fought, they suffered, and they paid. But they won.won.

Page 4: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

No creator was prompted by a desire to No creator was prompted by a desire to please his brothers. His brothers hated please his brothers. His brothers hated the gift he offered. the gift he offered. His truth was his only motive. His truth was his only motive. His work was his only goal. His work was his only goal. His work -- not those who used it. His work -- not those who used it. His creation -- not the benefits others His creation -- not the benefits others derived from it -- the creation which derived from it -- the creation which gave form to his truth. gave form to his truth.

Page 5: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

He held his truth above all things and He held his truth above all things and against all men. He went ahead whether against all men. He went ahead whether others agreed with him or not, with his others agreed with him or not, with his integrity as his only banner. He served integrity as his only banner. He served nothing and no one. He lived for himself. nothing and no one. He lived for himself. And only by living for himself was he able to And only by living for himself was he able to achieve the things which are the glory of achieve the things which are the glory of mankind. Such is the nature of mankind. Such is the nature of achievement. Man cannot survive except achievement. Man cannot survive except through his mind. He comes on earth through his mind. He comes on earth unarmed. His brain is his only weapon. unarmed. His brain is his only weapon.

Page 6: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

But the mind is an attribute of the But the mind is an attribute of the individual. There is no such thing as a individual. There is no such thing as a collective brain. The man who thinks must collective brain. The man who thinks must think and act on his own. The reasoning think and act on his own. The reasoning mind cannot work under any form of mind cannot work under any form of compulsion. It cannot be subordinated to compulsion. It cannot be subordinated to the needs, opinions, or wishes of others. It the needs, opinions, or wishes of others. It is not an object of sacrifice.is not an object of sacrifice.

Page 7: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

The creator stands on his own judgment; the The creator stands on his own judgment; the parasite follows the opinions of others.parasite follows the opinions of others.

The creator thinks; the parasite copies.The creator thinks; the parasite copies.

The creator produces; the parasite loots.The creator produces; the parasite loots.

The creator's concern is the conquest of nature; The creator's concern is the conquest of nature; the parasite's concern is the conquest of men.the parasite's concern is the conquest of men.

Page 8: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

The creator requires independence. He neither The creator requires independence. He neither serves nor rules. He deals with men by free serves nor rules. He deals with men by free exchange and voluntary choice.exchange and voluntary choice.

The parasite seeks power. He wants to bind all The parasite seeks power. He wants to bind all men together in common action and common men together in common action and common slavery. He claims that man is only a tool for slavery. He claims that man is only a tool for the use of others -- that he must think as they the use of others -- that he must think as they think, act as they act, and live in selfless, think, act as they act, and live in selfless, joyless servitude to any need but his own.joyless servitude to any need but his own.

Page 9: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

Look at history: Everything we have, Look at history: Everything we have, every great achievement has come from every great achievement has come from the independent work of some the independent work of some independent mind. Every horror and independent mind. Every horror and destruction came from attempts to force destruction came from attempts to force men into a herd of brainless, soulless men into a herd of brainless, soulless robots -- without personal rights, without robots -- without personal rights, without person ambition, without will, hope, or person ambition, without will, hope, or dignity. dignity.

Page 10: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

It is an ancient conflict. It has another name: It is an ancient conflict. It has another name: "The individual against the collective." "The individual against the collective."

Our country, the noblest country in the history Our country, the noblest country in the history of men, was based on the principle of of men, was based on the principle of individualism, the principle of man's individualism, the principle of man's "inalienable rights." It was a country where a "inalienable rights." It was a country where a man was free to seek his own happiness, to man was free to seek his own happiness, to gain and produce, not to give up and gain and produce, not to give up and renounce; to prosper, not to starve; to renounce; to prosper, not to starve; to achieve, not to plunder; to hold as his highest achieve, not to plunder; to hold as his highest possession a sense of his personal value, and possession a sense of his personal value, and as his highest virtue his self-respect.as his highest virtue his self-respect.

Page 11: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

Our country, the noblest country in the Our country, the noblest country in the history of men, was based on the principle history of men, was based on the principle of individualism, the principle of man's of individualism, the principle of man's "inalienable rights." It was a country where "inalienable rights." It was a country where a man was free to seek his own happiness, a man was free to seek his own happiness, to gain and produce, not to give up and to gain and produce, not to give up and renounce; to prosper, not to starve; to renounce; to prosper, not to starve; to achieve, not to plunder; to hold as his achieve, not to plunder; to hold as his highest possession a sense of his personal highest possession a sense of his personal value, and as his highest virtue his self-value, and as his highest virtue his self-respect. respect.

Page 12: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

Look at the results. That is what the Look at the results. That is what the collectivists are now asking you to destroy, collectivists are now asking you to destroy, as much of the earth has been destroyed. as much of the earth has been destroyed.

I am an architect. I know what is to come I am an architect. I know what is to come by the principle on which it is built. We are by the principle on which it is built. We are approaching a world in which I cannot approaching a world in which I cannot permit myself to live. My ideas are my permit myself to live. My ideas are my property. They were taken from me by property. They were taken from me by force, by breach of contract. No appeal force, by breach of contract. No appeal was left to me.was left to me.

Page 13: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

It was believed that my work belonged It was believed that my work belonged to others, to do with as they pleased. to others, to do with as they pleased. They had a claim upon me without my They had a claim upon me without my consent -- that it was my duty to serve consent -- that it was my duty to serve them without choice or reward. them without choice or reward.

Now you know why a dynamited Now you know why a dynamited Courtland. I designed Courtland. I made Courtland. I designed Courtland. I made it possible. I destroyed it. it possible. I destroyed it.

Page 14: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

I agreed to design it for the purpose of it seeing I agreed to design it for the purpose of it seeing built as I wished. That was the price I set for my built as I wished. That was the price I set for my work. I was not paid. My building was disfigured work. I was not paid. My building was disfigured at the whim of others who took all the benefits at the whim of others who took all the benefits of my work and gave me nothing in return. of my work and gave me nothing in return.

I came here to say that I do not recognize I came here to say that I do not recognize anyone's right to one minute of my life, nor to anyone's right to one minute of my life, nor to any part of my energy, nor to any achievement any part of my energy, nor to any achievement of mine -- no matter who makes the claim!of mine -- no matter who makes the claim!

Page 15: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Rourke (continued)Rourke (continued)

It had to be said: The world is perishing It had to be said: The world is perishing from an orgy of self-sacrificing. I came from an orgy of self-sacrificing. I came here to be heard in the name of every here to be heard in the name of every man of independence still left in the man of independence still left in the world. I wanted to state my terms. I do world. I wanted to state my terms. I do not care to work or live on any others. not care to work or live on any others.

My terms are: A man's RIGHT to exist for My terms are: A man's RIGHT to exist for his own sake. his own sake.

Page 16: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

What do you think?What do you think?

DO AUTHORS HAVE THE RIGHT TO DO AUTHORS HAVE THE RIGHT TO BENEFIT FROM THEIR CREATIONS AND BENEFIT FROM THEIR CREATIONS AND INVENTIONS?INVENTIONS?

DOES THE UNITED STATES DOES THE UNITED STATES CONSTITUTION RECOGNIZE OR PROTECT CONSTITUTION RECOGNIZE OR PROTECT THIS RIGHT?THIS RIGHT?

Page 17: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

What Jefferson ThoughtWhat Jefferson Thought

He who receives an idea from me, receives He who receives an idea from me, receives instruction himself without lessening mine; instruction himself without lessening mine; as he who lights his taper at mine, receives as he who lights his taper at mine, receives light without darkening me. That ideas light without darkening me. That ideas should freely spread from one to another should freely spread from one to another over the globe, for the moral and mutual over the globe, for the moral and mutual instruction of man, and improvement of his instruction of man, and improvement of his condition, seems to have been peculiarly and condition, seems to have been peculiarly and benevolently designed by nature, when she benevolently designed by nature, when she made them, like fire, expansible over all made them, like fire, expansible over all space, without lessening their density in any space, without lessening their density in any point, and like the air in which we breathe, point, and like the air in which we breathe, move, and have our physical being, incapable move, and have our physical being, incapable of confinement or exclusive appropriation. of confinement or exclusive appropriation.

Page 18: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Jefferson (continued)Jefferson (continued)

Inventions then cannot, in nature, be a Inventions then cannot, in nature, be a subject of property. Society may give subject of property. Society may give an exclusive right to the profits an exclusive right to the profits arising from them, as an arising from them, as an encouragement to men to pursue encouragement to men to pursue ideas which may produce utility, but ideas which may produce utility, but this may or may not be done, this may or may not be done, according to the will and convenience according to the will and convenience of the society, without claim or of the society, without claim or complaint from anybody...complaint from anybody...

(letter to Isaac McPherson 1813 )(letter to Isaac McPherson 1813 )

Page 19: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

What the Constitution SaysWhat the Constitution Says

Section 8 (The Powers Clauses)Section 8 (The Powers Clauses)congress shall have the power tocongress shall have the power to

Clause 8: To promote the progress of Clause 8: To promote the progress of science and useful arts, by securing for science and useful arts, by securing for limited times to authors and inventors limited times to authors and inventors the exclusive right to their respective the exclusive right to their respective writings and discoveries; writings and discoveries;

Page 20: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

What the Constitution SaysWhat the Constitution Says

Section 8 (The Powers Clauses)Section 8 (The Powers Clauses)congress shall have the congress shall have the powerpower to to

Clause 8: To promote the progress of Clause 8: To promote the progress of science and useful Arts, by securing for science and useful Arts, by securing for limitedlimited times to authors and inventors times to authors and inventors the exclusive right to their respective the exclusive right to their respective writings and discoveries; writings and discoveries;

Page 21: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Who is Ada Core Technologies?Who is Ada Core Technologies?

Ada Core Technologies is a software Ada Core Technologies is a software company that remains 100% committed company that remains 100% committed to the principles of Free Software and to the principles of Free Software and Open SourceOpen Source

Why?Why?It’s invaluable to our usersIt’s invaluable to our usersIt’s profitable for our companyIt’s profitable for our company

Page 22: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

OverviewOverviewCopyright ConsiderationsCopyright ConsiderationsPublic DomainPublic DomainFree SoftwareFree SoftwareOpen Source SoftwareOpen Source SoftwareLicensing ConsiderationsLicensing ConsiderationsThe GPL and modified GPLThe GPL and modified GPLCommercial considerations Commercial considerations

Page 23: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Copyright ConsiderationsCopyright Considerations

CopyrightCopyrightIn England, a fundamental moral right In England, a fundamental moral right

belonging to authorsbelonging to authorsIn the USA, a temporary property interest In the USA, a temporary property interest

granted by congress in the public interest.granted by congress in the public interest.In practice little differenceIn practice little differenceDetails of laws do differ. This presentation Details of laws do differ. This presentation

basically presents the US practice.basically presents the US practice.

Page 24: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Who Owns the CopyrightWho Owns the CopyrightThe author automatically owns the The author automatically owns the

copyright unless one of these holdscopyright unless one of these holdsWork-made-for-hire implied by employmentWork-made-for-hire implied by employmentSpecific work-made-for-hire agreementSpecific work-made-for-hire agreementSpecific contractual assignment occursSpecific contractual assignment occurs

No specific notice is requiredNo specific notice is requiredNo official registration requiredNo official registration requiredUp to user to check copyright statusUp to user to check copyright status

Page 25: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Copyright RegistrationCopyright Registration

In the US, copyrights are registered by In the US, copyrights are registered by depositing a copy with the Library of depositing a copy with the Library of Congress.Congress.

For software, only need to deposit first For software, only need to deposit first and last section (can be just comments!)and last section (can be just comments!)

Helps to establish a presumption of Helps to establish a presumption of originality if done within five years.originality if done within five years.

Copyrights last life + 75 or 90 years Copyrights last life + 75 or 90 years (corp)(corp)

Page 26: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

What can be CopyrightedWhat can be Copyrighted

Both Source and Object of Programs can Both Source and Object of Programs can be copyrightedbe copyrighted

Subject to exceptionsSubject to exceptionsLack of originalityLack of originalityDictated by external considerationsDictated by external considerationsDictated by efficiencyDictated by efficiency

No uniform law in this areaNo uniform law in this area

Page 27: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

What Copyright ControlsWhat Copyright Controls

It allows the author to control copyingIt allows the author to control copyingLoading a program is a copyLoading a program is a copyBut certain copying is allowedBut certain copying is allowed

Fair useFair useCreating backup copiesCreating backup copies

User owns a copy of the software, not User owns a copy of the software, not the software itself.the software itself.

Page 28: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Derived WorksDerived Works

If a copyrighted work is modified by a If a copyrighted work is modified by a new party, a derived work is created.new party, a derived work is created.

Creation of derived works is controlledCreation of derived works is controlledFair use provisions applyFair use provisions apply

A derived work can only be copied with A derived work can only be copied with permission of both partiespermission of both parties

Page 29: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

De Minimus CopyingDe Minimus Copying

De minimus refers to copying that isDe minimus refers to copying that isSmall in extentSmall in extentNon-critical functionalityNon-critical functionality

Case law very vagueCase law very vagueBasically a jury decidesBasically a jury decides Is a one line patch de minimus?Is a one line patch de minimus?

No clear case lawNo clear case law

Page 30: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Fair UseFair UseNotwithstanding the provisions of sections Notwithstanding the provisions of sections

106 and 106A, the fair use of a copyrighted 106 and 106A, the fair use of a copyrighted work, including such use by reproduction in work, including such use by reproduction in copies or phonorecords or by any other copies or phonorecords or by any other means specified by that section, for means specified by that section, for purposes such as criticism, comment, news purposes such as criticism, comment, news reporting, teaching (including multiple reporting, teaching (including multiple copies for classroom use), scholarship, or copies for classroom use), scholarship, or research, is not an infringement of copyright. research, is not an infringement of copyright. In determining whether the use made of a In determining whether the use made of a work in any particular case is a fair use the work in any particular case is a fair use the factors to be considered shall include -factors to be considered shall include -

Page 31: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Fair Use (continued)Fair Use (continued)

(1) the purpose and character of the use, (1) the purpose and character of the use, including whether such use is of a including whether such use is of a commercial nature or is for nonprofit commercial nature or is for nonprofit educational purposes; (2) the nature of the educational purposes; (2) the nature of the copyrighted work;copyrighted work;

(3) the amount and substantiality of the (3) the amount and substantiality of the portion used in relation to the copyrighted portion used in relation to the copyrighted work as a whole; and work as a whole; and

(4) the effect of the use upon the potential (4) the effect of the use upon the potential market for or value of the copyrighted work. market for or value of the copyrighted work.

Page 32: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Public DomainPublic Domain

Software is in the public domain ifSoftware is in the public domain ifEnough time has elapsed (75 years!!)Enough time has elapsed (75 years!!)

But this can be extended by modificationBut this can be extended by modificationIt is explicitly placed in the public domain by It is explicitly placed in the public domain by

the holder of the copyright (and author?)the holder of the copyright (and author?) It is up to the user to properly determine It is up to the user to properly determine

if something is in the public domain.if something is in the public domain.PD software is owned by no one.PD software is owned by no one.

Page 33: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

More on Public DomainMore on Public Domain

If a PD work is modified by an author, If a PD work is modified by an author, then a derived work is created.then a derived work is created.

That derived work is wholly owned by That derived work is wholly owned by the new author.the new author.

Not much is required to claim total Not much is required to claim total ownership.ownership.

Example: Beethoven SonatasExample: Beethoven Sonatas

Page 34: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Copyright and LicensingCopyright and Licensing

A copyrighted work may not be copiedA copyrighted work may not be copiedThe copyright holder can grant a license The copyright holder can grant a license

permitting copies under specified permitting copies under specified circumstances.circumstances.

Licenses are pretty free to say anything Licenses are pretty free to say anything they like (but not quite!)they like (but not quite!)

Virtually all software is sold this wayVirtually all software is sold this way

Page 35: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The DMCAThe DMCA

Digital Millenium Copyright ActDigital Millenium Copyright ActFor the first time extends copyright For the first time extends copyright

beyond just copyingbeyond just copyingRecognizes the use of encryption (and Recognizes the use of encryption (and

other methods) to protect copyright other methods) to protect copyright “rights”.“rights”.

Criminalizes any attempt for any purpose Criminalizes any attempt for any purpose to get around any such device or methodto get around any such device or method

Page 36: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The DMCA in ActionThe DMCA in Action

Lexmark puts a chip in their printer Lexmark puts a chip in their printer cartridgescartridges

Contains trivial code (but encrypted)Contains trivial code (but encrypted)Printer checks this code is there as expectedPrinter checks this code is there as expectedWon’t work with cartridge if chip is not thereWon’t work with cartridge if chip is not thereAny attempt to get around encryption is a Any attempt to get around encryption is a

potential DMCA violationpotential DMCA violationNot resolved yet!Not resolved yet!

Page 37: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The DMCA in ActionThe DMCA in Action

Russian company breaks encryption on Russian company breaks encryption on Adobe electronic books.Adobe electronic books.

Allows disabled people to view larger Allows disabled people to view larger versionsversions

Not criminal in RussiaNot criminal in RussiaProgrammer for company visits USAProgrammer for company visits USAGets arrested for violating the DMCAGets arrested for violating the DMCA

Page 38: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

PatentsPatents

Quite different from copyrightQuite different from copyrightMuch more limited period of time (20 Much more limited period of time (20

years)years)Patent a process (but not a recipe)Patent a process (but not a recipe)Patent an invention (but not an idea)Patent an invention (but not an idea)Must disclose invention and best Must disclose invention and best

embodimentembodiment

Page 39: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

More on PatentsMore on Patents

Must not have any prior artMust not have any prior artMust not be obviousMust not be obviousCan copyright non-obvious combination Can copyright non-obvious combination

of obvious ideasof obvious ideas

Page 40: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Example of CombinationExample of Combination

Intermittent wind shield wipers, well Intermittent wind shield wipers, well knownknown

Electric timers providing regular signals Electric timers providing regular signals well known.well known.

Put them together, voila, electronically Put them together, voila, electronically timed intermittent wind shield wiperstimed intermittent wind shield wipers

Non obvious??Non obvious??Worth at least 17 million dollars Worth at least 17 million dollars

Page 41: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Software PatentsSoftware Patents

Does a program express an invention or Does a program express an invention or an idea?an idea?

If an invention, then can be patentedIf an invention, then can be patented In practice, software algorithms and In practice, software algorithms and

programs can be copyrightedprograms can be copyrighted

Page 42: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Some examplesSome examples

If on last line and press return, screen If on last line and press return, screen scrollsscrolls

Progress bar (patented in Europe)Progress bar (patented in Europe)Graph coloring for register allocationGraph coloring for register allocationFont smoothing algorithmsFont smoothing algorithmsTo exchnage little-endian/big-endian data, To exchnage little-endian/big-endian data,

use canonical (e.g. LE) encoding for use canonical (e.g. LE) encoding for transfer, swap bytes if you need the other transfer, swap bytes if you need the other encodingencoding

Page 43: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

How Patents StrikeHow Patents Strike

Apply for patentApply for patentPatent grantedPatent grantedYou find out about itYou find out about itYou are infringing from point of patent You are infringing from point of patent

being granted to when you find out being granted to when you find out about it.about it.

Patent is secret until it is grantedPatent is secret until it is granted

Page 44: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Patents in ActionPatents in Action

No good font smoothing in LinuxNo good font smoothing in LinuxNew palm pilots don’t have grafittiNew palm pilots don’t have grafittiMozilla may have to eliminate pluginsMozilla may have to eliminate pluginsBlackberry nearly closed downBlackberry nearly closed downDoes this contribute to progress?Does this contribute to progress?

Page 45: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

End of Part IEnd of Part I

Next Lecture, we will look at Free Next Lecture, we will look at Free SoftwareSoftware

Page 46: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Part 2Part 2

Free and Open Source SoftwareFree and Open Source Software

Page 47: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Copyright and LicensingCopyright and Licensing

Free Software and Open Source Free Software and Open Source Software are typically:Software are typically:CopyrightedCopyrightedWith a license allowing copyingWith a license allowing copying

Just like Microsoft!Just like Microsoft!The only difference is the licenseThe only difference is the licenseThe license allows some copyingThe license allows some copying

Page 48: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Free SoftwareFree Software

License allowsLicense allowsCopying for personal use with no restrictions Copying for personal use with no restrictions

of any kind at allof any kind at allRedistribution of original software with Redistribution of original software with

sourcessourcesRedistribution of derived works with full Redistribution of derived works with full

sourcessourcesDerived works must be Free SoftwareDerived works must be Free Software

Page 49: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The Idea of Free SoftwareThe Idea of Free SoftwareEncourage secondary distributionEncourage secondary distributionEncourage derived worksEncourage derived worksEncourage general useEncourage general useCreate notion of public ownershipCreate notion of public ownership

Unlike PD, no one can claim proprietary Unlike PD, no one can claim proprietary ownership of free software.ownership of free software.

Free Software tries to approximate what Free Software tries to approximate what people assume public domain means.people assume public domain means.

Page 50: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Free Software LicensesFree Software Licenses

The GPLThe GPLQuite restrictive for redistributionQuite restrictive for redistribution

Modified GPLModified GPLAllows redistribution more generallyAllows redistribution more generally

BSDBSDNo restrictions on redistribution at allNo restrictions on redistribution at all

Public DomainPublic Domain

Page 51: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Free Software OwnershipFree Software Ownership

Free software license allows authors to Free software license allows authors to own their own workown their own work

If you modify a Free Software program, If you modify a Free Software program, you own the copyrightyou own the copyright

It is up to you to decide about It is up to you to decide about distribution and allowing others to copy distribution and allowing others to copy your work.your work.

Page 52: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Open Source SoftwareOpen Source Software

Software distributed with sourcesSoftware distributed with sourcesModifications encouraged, but may Modifications encouraged, but may

create distribution and ownership create distribution and ownership restrictionsrestrictions

The emphasis is on qualityThe emphasis is on qualityPeer review of open codePeer review of open codeCooperative work to improve codeCooperative work to improve code

Page 53: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Open Source Software LicensesOpen Source Software Licenses

Are approved by OSI (Open Source Are approved by OSI (Open Source Initiative)Initiative)

All Free Software is Open SourceAll Free Software is Open SourceBut other licenses are allowedBut other licenses are allowed

For example, APL (Apple Community For example, APL (Apple Community License)License)Specifies that Apple owns modificationsSpecifies that Apple owns modificationsAPL is not considered Free SoftwareAPL is not considered Free Software

Page 54: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The General Public LicenseThe General Public License

A Free Software LicenseA Free Software License If you create a derived work, you can If you create a derived work, you can

freely distribute it provided thatfreely distribute it provided thatYou provide sources (at reasonable cost)You provide sources (at reasonable cost)The resulting derived work does not have The resulting derived work does not have

any additional restrictions.any additional restrictions.

Page 55: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Source Distribution Source Distribution RequirementsRequirements

To redistribute a GPL’ed program you To redistribute a GPL’ed program you must eithermust eitherDistribute the sources with the programDistribute the sources with the programOr make a written offer to provide the Or make a written offer to provide the

sources at a reasonable cost.sources at a reasonable cost.Does not apply to original authorDoes not apply to original author

Reminder: you do not have to distribute Reminder: you do not have to distribute anything to anyone.anything to anyone.

Page 56: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The “Virus” EffectThe “Virus” Effect If you have a proprietary product and you If you have a proprietary product and you

incorporate GPL components, then you can incorporate GPL components, then you can only redistribute if the result is also covered only redistribute if the result is also covered by the GPL.by the GPL.

This is simply the condition for allowing you This is simply the condition for allowing you to use the GPL component (which no one is to use the GPL component (which no one is forcing you to do)forcing you to do)

Microsoft would not allow redistribution at Microsoft would not allow redistribution at all, so this is really not onerous.all, so this is really not onerous.

Page 57: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Can you Sell GPL’ed SoftwareCan you Sell GPL’ed Software

Yes of courseYes of courseNo one ever suggested otherwiseNo one ever suggested otherwiseNo restriction on price you can chargeNo restriction on price you can chargeNo special considerations at allNo special considerations at all

Of course someone can redistribute and Of course someone can redistribute and charge whatever they want to charge.charge whatever they want to charge.

Page 58: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Redistribution RequirementsRedistribution Requirements

If you modify GPL’ed software are you If you modify GPL’ed software are you required to redistribute your required to redistribute your modifications?modifications?Of course not!Of course not!No one ever implied thisNo one ever implied thisSuch a requirement would be contrary to Such a requirement would be contrary to

the entire spirit of the GPLthe entire spirit of the GPLThe GPL never ever forces distributionThe GPL never ever forces distribution

Page 59: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

How does the GPL affect AuthorHow does the GPL affect Author

If you issue a GPL to someone how does If you issue a GPL to someone how does it restrict you, the author?it restrict you, the author?Not at allNot at allA license you grant to others cannot affect A license you grant to others cannot affect

you in anyway at all.you in anyway at all.You are free to do anything you wantYou are free to do anything you want

For example, distribute to someone else For example, distribute to someone else with a different license.with a different license.

Page 60: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Modified Versions of GPLModified Versions of GPL

If runtime of compiler was GPL’ed then a If runtime of compiler was GPL’ed then a program using runtime would be too.program using runtime would be too.

Nothing wrong with thatNothing wrong with thatBut it may not be what you wantBut it may not be what you wantModified versions of GPL allow more Modified versions of GPL allow more

freedom.freedom.

Page 61: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The Library GPLThe Library GPL

LGPL permits more general useLGPL permits more general useCan distribute object only, even Can distribute object only, even

modified versionsmodified versionsMust distribute objects to allow relinkingMust distribute objects to allow relinking

Page 62: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The Run-Time GPLThe Run-Time GPL

Allows completely general incorporation Allows completely general incorporation of object code into executablesof object code into executables

No requirement for source or object No requirement for source or object distributiondistribution

Used for the C run-time.Used for the C run-time. Ideology note: pragmatically better to Ideology note: pragmatically better to

have people using FS even for non-FS have people using FS even for non-FS than using non-FS for this purpose.than using non-FS for this purpose.

Page 63: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The GNAT Modified GPLThe GNAT Modified GPL

Similar to run-time GPLSimilar to run-time GPL Important difference specifically allows Important difference specifically allows

for generic instantiationfor generic instantiationProbably this is needed for C++ as wellProbably this is needed for C++ as well

Practical effect is to completely remove Practical effect is to completely remove restrictions on derived use in programsrestrictions on derived use in programs

But could not distribute modified library But could not distribute modified library containing GMGPL components.containing GMGPL components.

Page 64: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Example of Multiple LicensingExample of Multiple Licensing

Cygwin is a library from Cygnus Cygwin is a library from Cygnus providing Unix-like features for NTproviding Unix-like features for NT

Distributed under the GPLDistributed under the GPLCannot be used in proprietary programsCannot be used in proprietary programsBut you can also license a proprietary But you can also license a proprietary

version from Cygnus that can be used in version from Cygnus that can be used in proprietary programs.proprietary programs.

Page 65: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Example of Multiple LicensingExample of Multiple Licensing

Company S has backend for compilerCompany S has backend for compilerWants to put it together with g++ front Wants to put it together with g++ front

end to create new C++ compilerend to create new C++ compilerBackend must be under GPL for this caseBackend must be under GPL for this case

Wants to put it together with some Wants to put it together with some proprietary front end from company Qproprietary front end from company QResult here can be fully proprietaryResult here can be fully proprietary

Page 66: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Open Source vs CommercialOpen Source vs Commercial

At the NYU forum last year, an NYU At the NYU forum last year, an NYU student asked Bill Gates if he would student asked Bill Gates if he would adopt the Open Source Model for any adopt the Open Source Model for any Microsoft Software.Microsoft Software.

He answered saying that the commercial He answered saying that the commercial model worked better, since by charging model worked better, since by charging a modest (!) fee for such products as a modest (!) fee for such products as Office, resources were available to Office, resources were available to improve the product.improve the product.

Page 67: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Open Source vs CommercialOpen Source vs Commercial

This is a nonsense contrastThis is a nonsense contrastOpen Source software can be Open Source software can be

commercialcommercialAnd non-open software can be non-And non-open software can be non-

commercialcommercialThey are unrelated conceptsThey are unrelated conceptsAnd Bill Gates knows it!And Bill Gates knows it!

Page 68: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Commercial ConsiderationsCommercial Considerations

How FS and OSS fit into a commercial How FS and OSS fit into a commercial picture where goal is to maximize picture where goal is to maximize revenue.revenue.

Use GNAT and GNAT Professional as Use GNAT and GNAT Professional as examplesexamples

Page 69: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Open SourceOpen Source

Open SourceOpen SourceEmphasis is on quality and commercial useEmphasis is on quality and commercial useQuality achieved by universal reviewQuality achieved by universal reviewQuality achieved by publicationQuality achieved by publicationUsers have access to sourceUsers have access to source

Risk reductionRisk reductionSpecial requirementsSpecial requirements

Page 70: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

GNAT ProfessionalGNAT Professional

Is a product sold with supportIs a product sold with supportSupport is the primary productSupport is the primary product

But we do not break out cost of productBut we do not break out cost of productNo large up front paymentNo large up front payment

Support cost is constant year to yearSupport cost is constant year to yearOver period of time total cost is often higher Over period of time total cost is often higher

than proprietary software.than proprietary software.

Page 71: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Redistribution IssuesRedistribution IssuesGNAT Professional is distributed under GNAT Professional is distributed under

the GPL (and GMGPL as appropriate)the GPL (and GMGPL as appropriate)This allows redistributionThis allows redistributionBut we have never seen it happenBut we have never seen it happenRedistribution is NOT a focus of OSI Redistribution is NOT a focus of OSI

software, though it is permittedsoftware, though it is permittedBoeing is not interested in providing Boeing is not interested in providing

software to Lockheed!software to Lockheed!

Page 72: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

GNAT Professional Sales GNAT Professional Sales ApproachApproach

We regard the OS nature of GNAT as a We regard the OS nature of GNAT as a big selling pointbig selling point

This has nothing to do with the Free This has nothing to do with the Free Software goal of universal access and Software goal of universal access and redistribution.redistribution.

Page 73: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

““Why Open Source Is Why Open Source Is Essential”Essential”

Cannot afford to rely on one vendor for Cannot afford to rely on one vendor for support, there must be alternatives.support, there must be alternatives.

Cannot afford to have black box Cannot afford to have black box components in mission critical softwarecomponents in mission critical software

You can evaluate quality for yourselfYou can evaluate quality for yourselfNo source escrow considerationsNo source escrow considerationsYou can self maintain if necessaryYou can self maintain if necessary

Page 74: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

““What you See is What You What you See is What You Get”Get”

No Easter Eggs in OSS SoftwareNo Easter Eggs in OSS SoftwareBy definition …By definition …By custom and practiceBy custom and practice

EXCEL has a flight simulator built inEXCEL has a flight simulator built inWhat else is there?What else is there?And what does this say about QA?And what does this say about QA?

Page 75: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

““Why Open Source Works for Why Open Source Works for You”You”

ACT makes money if you renew supportACT makes money if you renew supportACT has an interest in providing really ACT has an interest in providing really

good support, since otherwise you will good support, since otherwise you will not renew.not renew.

Our commercial interests are aligned Our commercial interests are aligned with your project interests.with your project interests.

We provide “Project support”We provide “Project support”

Page 76: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

But What about Ritchie?But What about Ritchie?

Ritchie’s Open Source Trojan HorseRitchie’s Open Source Trojan HorseIncredibly complex theoretical modelIncredibly complex theoretical modelNever been done as far as anyone knowsNever been done as far as anyone knows

Does not apply to GNAT in any caseDoes not apply to GNAT in any caseSince full development history is openSince full development history is openEach version compiled with previous vsnEach version compiled with previous vsn

But in proprietary software, trivialBut in proprietary software, trivial

Page 77: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Upsides to Open Source Upsides to Open Source ApproachApproach

Many people familiar with technologyMany people familiar with technologyWe often hire people who have already We often hire people who have already

worked for us as volunteers.worked for us as volunteers.OS appeals to technical folksOS appeals to technical folks

Pride in work that is publishedPride in work that is published““Good guys”Good guys”

Support orientation extends to staffSupport orientation extends to staffAll ACT staff are involved in supportAll ACT staff are involved in support

Page 78: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Downsides to OS ApproachDownsides to OS Approach

Competition is much easier, since Competition is much easier, since sources and people are available.sources and people are available.

No captive market for supportNo captive market for supportRestriction on what can be chargedRestriction on what can be chargedLong term concerns (next slide)Long term concerns (next slide)

Page 79: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Is Model Long-Term Viable?Is Model Long-Term Viable?

What if GNAT gets so good that no What if GNAT gets so good that no support is required?support is required?

Won’t people simply use the freely Won’t people simply use the freely available public version?available public version?

In practice most of our support is not In practice most of our support is not fixing problemsfixing problems

We constantly upgrade and improveWe constantly upgrade and improve

Page 80: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Free SoftwareFree Software

Emphasis is on user rightsEmphasis is on user rightsRight of modificationRight of modificationRight of redistributionRight of redistributionA view of a free exchange of versionsA view of a free exchange of versions

This view is exactly right for the public This view is exactly right for the public version of GNATversion of GNATRedistribution and modification encouragedRedistribution and modification encouraged

Page 81: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

The Public Version of GNATThe Public Version of GNAT

Familiarizes Students with GNATFamiliarizes Students with GNATWe provide no-cost university supportWe provide no-cost university support

Allows people to evaluate GNAT easilyAllows people to evaluate GNAT easilyBut this is a double-edged swordBut this is a double-edged swordSince they do not evaluate our supportSince they do not evaluate our supportAnd tend to evaluate an old versionAnd tend to evaluate an old version

Makes GNAT universally knownMakes GNAT universally known

Page 82: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Public Version ConcernsPublic Version Concerns

This is an unsupported productThis is an unsupported productWe emphasize lack of supportWe emphasize lack of supportBut this can create concernsBut this can create concernsWe include a “nag-ware” message about We include a “nag-ware” message about

availability of commercial support.availability of commercial support.People want to spend money, they are People want to spend money, they are

suspicious of “freeware”.suspicious of “freeware”.We encourage this viewpoint!We encourage this viewpoint!

Page 83: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Public Version ReleasesPublic Version Releases

We do not have to distribute the public We do not have to distribute the public versionversion

We do not have to distribute GNAT We do not have to distribute GNAT sourcessources

We do not have to make public binary We do not have to make public binary versions of GNATversions of GNAT

We do anyway!We do anyway!

Page 84: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

How is FS/OSS Working for ACTHow is FS/OSS Working for ACT

We do see some “cheating”We do see some “cheating”But then proprietary software is not free of But then proprietary software is not free of

that problem eitherthat problem eitherOur pricing structure seems to be Our pricing structure seems to be

reasonable for this kind of marketreasonable for this kind of marketNot clear it would work in other marketsNot clear it would work in other markets

A path to success, but not wild success!A path to success, but not wild success!

Page 85: Software Copyrights Software Patents and Free Software Robert Dewar NYU/CIMS AdaCore

Can This Model Work ElsewhereCan This Model Work Elsewhere

The ingredients for successThe ingredients for successHigh level support requiredHigh level support requiredSpecialized consulting requiredSpecialized consulting requiredComplex software requiring full time teamComplex software requiring full time teamLong term projects requiring long term Long term projects requiring long term

support.support.