Friday, June 17, 2011

Patents and copyright

The issue of software patents is difficult for most people to understand. It sometimes gets confused with copyright. So let me explain the difference between them, and why you should care about patents.

A patent protects an invention.

Let's say you come up with a new kind of car engine, one that literally runs on the driver's "good feelings" instead of burning gasoline. The happier you are, the faster your car will go. (It's a silly example, but let's run with it.) You might apply for a patent on this new invention, which gives you exclusive rights to the idea, for a limited amount of time (typically 17 years.)

Maybe you build these engines and sell them, or maybe you license the idea to Ford. But in exchange, you've disclosed publicly (via your patent application) how the invention works, so at the end of the time limit, anyone else can make the same thing on their own.

The idea behind patents is to encourage innovation of inventors, while still making it possible for industry to move forward.

There are certain limits to what you can patent. Typically, a patent application must include one or more things that are new and non-obvious. So if you instead "invented" a car engine that runs on burning coal instead of regular gasoline, you couldn't get a patent on that because it's not really new.

Inventions don't need to be physical things, though. Since 1790, the US patent system allows you to patent a "business method". The first "business method" patent (issued 1799) was a method to detect counterfeit notes.

A copyright defines the "right to copy" or "right to control copying."

Whenever you create an original work, you automatically have copyright on that work (at least in the US) for a specific period of time, after which the work enters the "public domain". The time period of a copyright varies depending on several factors, but generally is the life of the creator plus 70 years. For example, say you're an author and you write a new novel - you get the copyright.

Copyright can be applied to any creative work: songs, books, maps, movies, computer programs, video games, photographs, paintings, etc. The neat thing about copyright is you don't apply for a copyright; it is automatically granted to you when you create something.

I mentioned computer programs in that list of works covered by copyright, and that's the area that has some overlap with patents.

Let's say I write a little program to help you keep track of your to-do list: do the laundry, mow the lawn, drive the kids to soccer practice, etc. As part of my program, I might show how far along you are in your to-do list. I could simply print "completed 12 of 23 to-do items", but it might be better to see a visual representation. So I draw a rectangle, and fill in the rectangle up to the 52% mark, to indicate your progress.

I can put a copyright on that program. It's my creative work, my implementation of a to-do list.

But remember that patents can also cover "business methods". In the 1990s, the US Patent and Trademark Office ruled that a practical application of a computer-related invention may be patented separately. In general, And so business methods extended into software methods, also called "software patents".

And it turns out, someone actually patented the method of displaying progress via a progress bar (5,301,348 issued 1994). That patent expired only a few months ago - but until then, if you wrote a to-do list organizer that displayed a progress bar, you'd be in violation of this patent. That means if you distributed this program to other people, the patent holder could sue you.

The idea here is that you can have copyright on a particular implementation of an idea or a method, but the method itself may be patented.

And that's why we need to change how the patent system works for "software patents". Patents were intended to support new or non-obvious inventions. But since the 1990s, if you append "on a computer" to the end of an existing method, you can patent that idea.

I mentioned the progress bar on a computer patent. There's also a patent for buy this thing on a computer and a similar purchase an upgrade on a computer. And labeling people in a photo on a computer.There's even a patent for putting together a flight plan (say, if you're a pilot) on a computer.

I could go on. But if you want more examples, please see the rest of this blog.

Ask yourself: how many of those are really new and non-obvious inventions? Just because the method was "on a computer", does that really make it new? Companies get caught on this all the time. They'll implement some real-world idea on a computer, then get sued because someone else holds the patent for doing that on a computer. Some companies now exist solely to buy up these software patents, then sue people who happen to do something similar.

How you can help

The "America Invents Act" bill tries to "fix" some things in the US patent system, but unfortunately does nothing for software patents. The AIA already passed the Senate, and is about to go for vote in the House of Representatives. Call your Representative - the AIA is held up due to a clash between two personalities (surprise, politicians are fighting with each other.) That's your window to talk to your Representative.

If they won't take action because the vote is about to happen, encourage them to talk with the USPTO for a procedural change. If the AIA gets turned into law, the USPTO will then be asked to draft new guidelines for evaluating patents. That's where a procedural change can help.

One solution is some kind of community review, where the patent examiner can pro-actively talk to industry people to see if a software patent is obvious or not.

The USPTO seems open to considering this issue, and it is inviting public comments on a proposed rule to streamline patent reexamination proceedings (although you would need to file by June 29, 2011). See Docket No. PTO-P-2011-0018. As you probably know, the patent reexamination process allows a third party or an inventor to have a patent reexamined by a patent examiner to verify that the subject matter it claims is patentable. During patent reexaminations, trial proceedings may be put on hold if a judge agrees to wait for the outcome of the reexamination.

Streamlining patent reexamination proceedings could help in software patent litigation by offering a quicker and more cost effective option for invalidating software patents awarded for obvious methods. Reexaminations have been increasing steadily in recent years, and claims in almost 75% of reexaminations have been either amended or canceled - whereas in courtrooms the majority of claims are decided in favor of the plaintiff patent holders.


  1. "I mentioned the progress bar on a computer patent. There's also a patent for buy this thing on a computer and a similar purchase an upgrade on a computer. And labeling people in a photo on a computer.There's even a patent for putting together a flight plan (say, if you're a pilot) on a computer.

    I could go on. But if you want more examples, please see the rest of this blog.

    Ask yourself: how many of those are really new and non-obvious inventions? Just because the method was "on a computer", does that really make it new?"

    ... Except that, contrary to your assertion, none of those patents actually claim "[known method] on a computer" in so many words. Nor did the USPTO allow them, saying "the method is known, but no one has ever used a computer to do it."
    Many people make the same assertion that you are, based off an incorrect understanding of both the law and the technology involved. The patent is the *claims*. It's not the title, the abstract, the drawings, the background, or random quotes from the specification. It's also not some paraphrased description, like "one-click". By definition, paraphrasing describes something in terms that are familiar to the listener, since there's not much point in trying to describe something in a *more* unfamiliar way. So, as a result, any paraphrased version of a patent will seem to be already known... Since it avoids everything that's confusing and non-obvious!

    So, with that in mind, no... No one has ever gotten a patent with a claim of "1. A method, comprising [doing completely known method] on a computer." Rather than taking Slashdot's word for what's in a patent- or even mine- go read the claims. They're at the end, titled "claims", are numbered, and start with "A method/system/etc. for ..."
    You will never find one that merely adds 'on a computer' to something already well known.

  2. What about non-obvious, truly unique and non-obvious software inventions? Shouldn't inventors be able to protect their idea and be compensated?

    To me, this is just plain common sense. Not letting individuals protect their ideas greatly limits the desire to innovate. Without innovation, we'd be centuries behind.

  3. This comment has been removed by the author.

  4. I read the clams of the progress bar patent and it is simply a description of a simple algorithm for creating the progress bar visualization. This like many of the patents I have read make me think that anything you describe as being done via a computer can be patented, regardless of its novelty. I think that is what the author's point was, not that the patents actually say "known method on a computer."

    It is not that all software patents are non-obvious, but that their may be many that are and that the patenting of so many software patents may very well hurt software creation significantly.

  5. To the user above:

    I'm not against granting patents to truly unique or non-obvious software inventions. I support modifying the patent examination to include something like "community review", where the patent examiner can proactively reach out to industry experts to help judge if a patent application is obvious.

    There's a lot of junk software patents out there, which are completely obvious to those of us in the technology industry.


    Patent 7,028,023 describes a method where a "list is provided with auxiliary pointers for traversing the list in different sequences. One or more auxiliary pointers enable a fast, sequential traversal of the list with a minimum of computational time. Such lists may be used in any application where lists may be reordered for various purposes." (This is a double-linked list.)

    Patent 5,893,120 describes "Methods and apparatus for information storage and retrieval using a hashing technique with external chaining and on-the-fly removal of expired data." (The standard way to expire old items from a "list" in computer programming, whenever the list is accessed.)

    These methods should never have been issued patents. They are obvious, they are not "new" inventions. And I'm sure a "community review" or some similar process would have caught these before they were issued patents. Catching them after the patent is issued (the current system) grants a window where the awardee can sue a bunch of people. This is unnecessarily tying up the legal system, and costing $$ millions that could otherwise be spent on actual innovation.

  6. I'll echo JH here. My own experience some years ago when I reviewed some software patents of a competitor (they had been selected based on my expertise) was that every one of them seemed perfectly obvious, to the extent that I couldn't be sure I hadn't used the technique previously in some thrown-away code.

    Unfortunately I couldn't reference prior art, just give an opinion that they were obvious.

  7. This brings up an interesting question for me: what defines non-obvious? Specifically, I'm thinking of all the times I've learned something new, smacked my forehead and said "Of course! That's so obvious! Why didn't I think of that?" The triumph is in thinking of something that is so elegant that it is incredibly obvious after the fact, but you're the only one who actually came up with the idea.

  8. "Obvious" can be difficult to pin down. It's like the old saying: "I know it when I see it."

    For example, is it "obvious" to have a program remove expired items from a list, as the program scans the list? That depends on your programming background, I suppose. But this is a standard method to remove old items from an array. And it's patented anyway.

    Or my latest favorite example: maybe you want to ask visitors to your web site if they like the changes to the site. Is it "obvious" to create up a "pop-up" window as your users leave your web site, with a survey? The USPTO did that with their web site (I got the survey last week.) Yet that's patented too.

    More recently, we're seeing patent applications for methods "on a computer" and "on a social network" that mimic processes that already exist elsewhere. Is it "obvious" to attempt these things on a computer or on a social network? I would argue that they are not.

    These are the "software" patents that should be caught by a more open review process, so they do not get awarded.

  9. * Oops. I meant to say "on a computer" and "on a social network" are obvious. At least the ones I describe on the blog.


Note: Only a member of this blog may post a comment.