I have no problem with any patents assuming they are truly innovative. The biggest problem with patents is that the non-obviousness step is almost ignored from my experience.
What they need is a way to determine whether an invention is an obvious extension or not. I suggest they do this probabilistically. Let's say it's a non-obvious idea if only 1/100 skilled practitioners would come up with it given the generic problem statement. Then it's easy to test. This would increase the cost of patents (a good thing imho) and dramatically decrease the number of spurious patents.
The interesting thing would be what proportion of inventions would qualify under this scheme. I have a feeling very few.
In ordinary language (though perhaps not in law), "truly innovative" is not the opposite "obvious". I believe the language involved in US patent law is "the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains." So in my non-legal opinion, the standard is two low on it's face, whether or not it's enforced. I wouldn't consider a solution obvious if it took me even an hour of brainstorming, but IMO that shouldn't typically warrant a patent.
Regarding your proposed test for patentability, I've thought about similar tests before. There would be many practical difficulties, like deciding who frames the problem. Some of the most innovative inventions are just properly identifying a poorly understood problem. But I think something along these lines is the right way to go.
Another possible variant would be to force licensing of the patent for an amount proportional to the expected cost of developing the solution from scratch, maybe weighted by the potential market.
The biggest problem with software patents is a limited solution space. For a poor example, implementing text rendering on a graphics card is something which you can very easily formulate three attempts and measure which one works best against common criteria (sharpness, speed, etc). Once the best solution is patented, it's very unlikely anyone else will be able to use this technology (particularly in situations where the patent is a small part of a larger package, say, an operating system) and they will be forced to settle into the second best-fitting solution.
You know, an even better method might be for the problem statement to be open to the public. People could then submit their solutions, and if no one came up with the same idea then it's patentable.
This way if it truly is something with a massive inventive step, then people can get the patent. If it's something as simple as what you describe, then there's no way it would be patented in the first place.
When you are granted a hardware patent, most everything a competent competitor needs to reproduce the invention is directly in the patent.
With software (algorithm) patents, that's rather less the case.
If you were to more closely parallel the hardware model and if you wanted to encourage the public good, then the grant of a software patent would escrow full source code, and (when the patent lapses) that same full source code is then available for use by others.
And yes, I'm looking straight at the One Click patent here.
So why would source code for the "One Click" patent make any difference? It would take be all of ten minutes to make a perfectly functional implementation of "one click shopping" in an open source PHP cart which I could submit with the patent (or a day to build a simple cart from scratch if the open source-part is a problem). How would that make the patent less viable?
Or are you arguing that only specific implementations could be patented? That, if we allow the premise of software patents in the first place, doesn't make any sense. Then we'd need measures to determine how much to change before it's not the same. I mean, to keep with the example of hardware patents, I'm sure a patent for a new crankshaft would also cover if it's 5% larger and made of a slightly different alloy.
Re-implementing in an other language? What if it compiles to the same VM code? Then I'm getting the the business of generating and selling unique JVM languages. A new language for implementing the core of a competing algorithm? $1500, thank you.
Because it (also) places indirect costs and additional onus onto the submitter of the patent; costs beyond the existing filing fees and legal fees.
Because it also provides (some) tangible results for the community. (Now whether the covered source code is judged "good" or "bad" is another matter; there's certainly going to be some cases and some judgement required here around what's covered code, and whether or not the code is obfuscated, etc.)
Because it means all of the patent-covered source code eventually gets exposed and licensed, which then gives an advantage to the community.
Because even if your organization doesn't produce a product (and for whatever reason), you still have to produce functional source code.
And because it means that most closed-source organizations probably won't choose to patent their software.
In your post you referred prominently to the one-click patent. I fail to see how your proposal would have even slightly curtailed that patent.
> Because it (also) places indirect costs and additional onus onto the submitter of the patent;
A developer for a day, as I demonstrated.
> Because it also provides (some) tangible results for the community.
> Because it means all of the patent-covered source code eventually gets exposed and licensed
An implementation of an obvious process isn't a tangible, or even particularly valuable, result, as any member of the community could produce it in very little time.
> Because even if your organization doesn't produce a product (and for whatever reason), you still have to produce functional source code.
No, you just have to throw a $500 project on e-lance. Or about what you pay the lawyer who's writing the patent for you every hour.
> And because it means that most closed-source organizations probably won't choose to patent their software.
No, at best it would keep the stuff that's actually patent-worthy from being patented (and thus "out there", inspiring others, which is the whole idea behind patents), while the obvious crap gets patented (what does Amazon have to lose from spending a day writing a simple PHP cart?)..
This scheme makes patents part of adding to open-source, and also uses the comparative "allergy" that many commercial entities have to open source.
The folks seeking patents will have to decide if they want the patent enough to open-source their covered source code (later). Various firms certainly won't want that. Those that do go for the patents will then serve to produce open-source code.
But if you don't think it'll work or if you have a better idea, cool. Post away...
Source code is not tainted beyond reproach after the patent expires in the existing patent system, though the source code does reverts to whatever copyright the producer might have.
Source code that's been patented under the proposed system becomes open source at the expiration of the patent; the covered source code or the escrow source code becomes open source code under the proposed system.
Pointing these details out can be quite useful; it definitely helps refine ideas or elevator pitches.
A patent for a new crankshaft might cover if it's 5% larger; it depends on how specific the claims are. There's a balance between too specific (thus useless) and too broad (thus not granted unless it's for freaking software); for machines this seems to be understandable, while for software the PTO just throws caution out the window, takes the money, and runs.
The thing is, only a court decision will determine whether a patent covers a given use or not; I see a lot of documents written from both perspectives, and the real winners in the patent industry are lawyers (and, when all goes well and the case is sufficiently international, we translators get some nice money out of it, too).
Patents are an incentive given to inventors to reveal their inventions and not keep them as trade secrets ( reason for patents from the perspective of the state).
Using this as a guiding principle, a patent should be granted only to those products that use an idea which has not been successfully replicated after some period of time.
Say if a product/service uses an idea and has been in the market for 2-3 years. If the idea adds to the greater good of the society and has not been replicated by anyone else yet; such ideas should qualify for the incentive of patents.
Make no mistake: patents are monopoly rights given to justify R&D.
The "revealing" doctrine is largely obsolete. Modern patents say virtually nothing of how a invention works that can't be found by easily in a product description - or at most cursory reverse engineering. The true secret-sause is kept behind closed doors.
However, more and more it appears the societal value of patents isn't realized, and in fact the majority actually decrease competition and research in a field.
I guess I would prefer simple rules instead of a value judgement. I would probably go with no patents on math, business processes, or software. Allow design patents on icons, UI elements, etc. this whole "patent a concept, not the specific implementation" is BS.
Amen on no math/process/software patents, but I'd have to say that the design patents alluded to in your comment are just as subjective as any used today. The legal criteria of the "casual observer" sounds just like the "I know it when I see it" use with porn.
I don't think so. Either something is one of those categories or its not. The design patent part is pretty straight forward in its application (ornamental aspects of object) and can't be used as a back door to replace a utility patent. It doesn't generate the drama of any of the above categories.
How about this: All fucking patent tro, er non-practicing entities, must die.
Or more politely, patents should require that at least some of the 90% perspiration required for discovery/innovation be done by the entity requesting the patent.
Patenting pure knowledge with no attempt at implementation, or buying such patents and suing those who try to implement them, incentivizes the lazy, and hinders the kids in the garage/lab/hackerspace building the next HP, Apple, or Google.
Here's an idea: only let people patent stuff that other people aren't likely to arrive at independently as soon as they're faced with the same problem.
Of course, since I can't put "Esq." after my name or "Congressman" in front of it, I don't expect this advice to be taken very seriously when I submit it to the USPTO.
"In short, the situation is that those who are in situation where questions might arise about their possession of an active law license ... should be careful about using "Esquire" or any other designation that might lead to confusion. For others, the problem simply does not exist. Someone who never went to law school, never practiced law, and has a career unrelated to the legal profession (such as selling ice cream), will not be mistaken for a lawyer and can call himself "esquire" to his hearts content."
What they need is a way to determine whether an invention is an obvious extension or not. I suggest they do this probabilistically. Let's say it's a non-obvious idea if only 1/100 skilled practitioners would come up with it given the generic problem statement. Then it's easy to test. This would increase the cost of patents (a good thing imho) and dramatically decrease the number of spurious patents.
The interesting thing would be what proportion of inventions would qualify under this scheme. I have a feeling very few.