At risk of taking an unpopular devils-advocate position:
I think that the principle of patents is okay. Invest time and money developing an idea, with a guarantee of exclusivity on executing on that idea in the marketplace for a period of time. It encourages a level of risk taking for "getting there first".
Software patents aren't any different in many respects because somebody has to go through the time and effort to actually come up with the idea.
The problem that software patents face is that, while many of the ideas are new and innovative to non-software people, software people tend to groan about seemingly obvious amalgamation of common software techniques into another idea. But really, most patents (non-software) are the same:
That was 60 seconds of searching the patent database of common sense ideas. Clearly obviousness is not much of a threshold in patents, software or otherwise.
Perhaps a better way to think of software patents is not "obvious ideas" but "soon to be obvious ideas". In my experience, most software patents become blindingly obvious after the fact, but if they were so obvious beforehand, somebody would have:
a) implemented it into a working system (prior art)
b) patented it themselves first
Our principle problem is that the world of software moves breathtakingly fast, and keeping soon-to-be-obvious ideas locked away for a long time can seem ridiculous. But make no mistake, even implementing some obvious ideas can be the investment of millions of dollars in R&D.
For example, a system integrator I know of had an IR&D program that spent $130 million dollars just in the R&D phase for what amounts to off-the-shelf software, installed on a few VMs, on rackmounted servers, in a large plastic shippable box with a few perl scripts and cron jobs hacked together to shuttle data between the COTS software and an Oracle database running in one of the VMs. Obvious? Perhaps. But nobody had gone through the trouble to actually do it, and spending that kind of overhead was a significant risk.
Should they own this idea for the next decade or so? Probably not, but how about the next 12-24 months? At least long enough so that they get a head start against competitors who didn't get there first.
I do think the patent system is need of serious reform w/r to getting rid of patents with prior art. Fighting a bad patent can be more expensive than getting one in the first place. And software patents are too frequently granted in cases where there is obvious prior art, common algorithms for example.
If we really want to fight software patents of obvious ideas, or permutations of obvious ideas, perhaps somebody should write a tool that simply combine every obvious idea in software into some greater system, then documents it all thus creating prior art that stops all of these so called bad patents...and then patent the "prior art permuter". In other words, if the ideas are obvious, a piece of software that does this should be buildable. I call this the "obviousness of software patents theorem".
I think that the principle of patents is okay. Invest time and money developing an idea, with a guarantee of exclusivity on executing on that idea in the marketplace for a period of time. It encourages a level of risk taking for "getting there first".
Patents are an artificial system forced upon us with the hope that they accelerate innovation. Just as you said, the hope there is that it encourages someone to take the risk of making something new with the hope of massive exclusive rewards.
The problem with that hope is that it ignores how innovation happens. There is no reclusive mad scientist working in some dank basement on the next-best-great-thing. That's childish.
Innovation happens through collaboration. You take someone else's work and you build upon it. Bit by bit, people build the next-best-thing.
The current patent system tries to take this into account by creating a lifespan of 20 years or so. But for those 20 years ... you are stifling the potential innovation that can happen by incorporating that new-best-thing into the next-best-thing.
This is even worse for software! A new paradigm arises (Internet, AJAX, Geolocation, etc.), a new set of algorithms become necessary to make things work. These paradigm shifts take years, not decades. As a consequence, innovation is limited to those who created the initial algorithms, since they're the only ones who can build on the most basic work.
Imagine Google created the algorithm/API for getting geolocation from the browser and built it into Chrome, then patented it. Nobody else would be able to do it. Obvious invention you say? Not as obvious as Amazon's one-click-to-buy button. The worst part in this example is simply that while Google may have invented it, there is an almost certain chance that Mozilla/Apple/Microsoft would have been able to make it better within weeks. We are missing out on that kind of innovation for patented software.
What if a startup spends ~2 years coming up with an idea, launches it, and gets noticed by a Big Company before the site gets big. What's to stop the Big Company from just implementing the idea themselves in a slightly different form? Would the Big Company still buy the startup/how will the startup be compensated for its work?
I'm not sure that's much different than the state of things today. The status quo version of your scenario is that startup has an idea, patents it, spends 2 years implementing it then launches. Today, even before startup launches, Big Company can see the patent, build a similar system that's just different enough to not violate the patent.
Today, Startup can sue, alleging patent violation, but most startups don't have the cash on hand for an extended patent battle anyways.
The problem with that hope is that it ignores how innovation happens. There is no reclusive mad scientist working in some dank basement on the next-best-great-thing. That's childish.
Innovation happens through collaboration. You take someone else's work and you build upon it. Bit by bit, people build the next-best-thing.
That's a very interesting point(s). Again, arguing from a devil's advocate POV. People who are generally against software patents commonly make the claim that it stifles the innovation of the single person, sitting in the their dank basement working on the next-best-great-thing (see other comments in this topic for examples, including a rather brilliant quote by Carmack).
In terms of collaboration, sure, patentable ideas/software often exist due to collaborative team efforts, just like patentable physical widgets like industrial egg fryers. But that team is generally paid for by one company and the patent is then assigned to that company.
There really appears to be a few major issues that I see with the present system:
1) Patents are transferable
2) Patents aren't researched enough against prior art before reward
3) Patent length is too long
4) Fighting bad patents is expensive and overly hard, even when armed with tons of prior art
5) Patents don't necessarily need an extant physical or implemented example to be granted.
6) Patents can be granted without the intention of implementation.
I think for real patent reform to work, these 6 points need to be addressed to keep the concept of patents (risk in exchange for exclusivity) a workable model:
1) Patents shouldn't be transferable -- this eliminates patent trolls
2) The Patent Office needs to be properly funded and given enough time to properly research patents before grant.
3) Patents (like copyright) needs to be shorter and dependent on the effort required to create the patent in the first place. For example, software patents should probably only survive 12-18 months. That gives the owner a risk/exclusivity that's long enough and if the idea proves valuable, opens it up for others to use (and improve the economy as a whole) within a reasonable time. In other words, this recognizes that risk doesn't just end at the grant of a patent. Actually doing something with the patent is important.
4) Appealing bad patents should be relatively simple and swift.
5) You should actually be able to demonstrate something that's patented.
6) If you don't use the patent in a business use-case, you lose it. A bit like Trademark.
1) Patents shouldn't be transferable -- this eliminates patent trolls
6) If you don't use the patent in a business use-case, you lose it. A bit like Trademark.
Suppose somebody invents a device but lacks the facilities to mass-produce them (building by hand is probably too expensive to make for a viable product). Rule (1) bars the inventor from selling the patent to somebody who has these facilities, so it appears necessary to arrange a licensing deal with a manufacturer (I expect selling a license to manufacture is still allowed and would count as a business use of the patent). How long does the inventor have to make such a deal before those who do have the right production facilities can simply ignore the patent and produce/sell the invention without compensating the inventor?
That's correct for patents in general - but I don't really think it's valid for software. Software is a lot more like book writing than like manufacturing. You can generally just do it once you manage to finance yourself for a while. Once you have really thought through all the details you are usually finished with the work.
if they were so obvious beforehand, somebody would have:
a) implemented it into a working system (prior art)
b) patented it themselves first
It seems to be fairly common that somebody already did (a) but chose to forgo (b).
spent $130 million dollars just in the R&D phase for what amounts to…. Obvious? Perhaps. But nobody had gone through the trouble to actually do it, and spending that kind of overhead was a significant risk.
How much of that was it actually necessary to spend just to come up with the concept? Evaluation of the available COTS components, writing the perl scripts and cron jobs, management overhead, etc. are costs a competitor would have to incur as well, which makes them not part of the cost a patent is meant to compensate for. The fact that nobody had done it before does not necessarily mean nobody was clever enough -- just that nobody who was clever enough had had the problem this product was meant to solve, and being a solution to a novel problem does not make it patentably non-obvious.
In other words, if the ideas are obvious, a piece of software that does this should be buildable.
I don't think a computer program is likely to cover everything that would count as obvious.
"A person of ordinary skill is also a person of ordinary creativity, not an automaton." - SCOTUS opinion on KSR v. Teleflex
Should they own this idea for the next decade or so? Probably not, but how about the next 12-24 months? At least long enough so that they get a head start against competitors who didn't get there first.
This is probably about as long as it would take for a competitor to write the necessary code and do the necessary testing anyway, so it seems that the reward of being first to market with good code is enough compensation for the risk involved.
If we really want to fight software patents of obvious ideas, or permutations of obvious ideas, perhaps somebody should write a tool that simply combine every obvious idea in software into some greater system, then documents it all thus creating prior art that stops all of these so called bad patents...and then patent the "prior art permuter". In other words, if the ideas are obvious, a piece of software that does this should be buildable. I call this the "obviousness of software patents theorem".
I was thinking about a similar system, wherein hardware and software components are treated like building blocks. You throw some (or all) known blocks into a bag, and randomly draw n blocks and come up with a way they can be used together. You then start applying random domains to the same building blocks (e.g. security, gaming, manufacturing, automobiles) to prove that moving an existing invention to a new domain should be obvious.
I think that the principle of patents is okay. Invest time and money developing an idea, with a guarantee of exclusivity on executing on that idea in the marketplace for a period of time. It encourages a level of risk taking for "getting there first".
Software patents aren't any different in many respects because somebody has to go through the time and effort to actually come up with the idea.
The problem that software patents face is that, while many of the ideas are new and innovative to non-software people, software people tend to groan about seemingly obvious amalgamation of common software techniques into another idea. But really, most patents (non-software) are the same:
Cooking an egg with an electric heater http://www.google.com/patents?id=RgcEAAAAEBAJ&printsec=a...
Glasses for a chicken http://www.google.com/patents?id=M5BGAAAAEBAJ&printsec=a...
Making water hot with the sun http://www.google.com/patents?id=YBwrAAAAEBAJ&printsec=a...
Resoling a shoe http://www.google.com/patents?id=895CAAAAEBAJ&printsec=a...
Keeping paper dry http://www.google.com/patents?id=7IBqAAAAEBAJ&printsec=a...
That was 60 seconds of searching the patent database of common sense ideas. Clearly obviousness is not much of a threshold in patents, software or otherwise.
Perhaps a better way to think of software patents is not "obvious ideas" but "soon to be obvious ideas". In my experience, most software patents become blindingly obvious after the fact, but if they were so obvious beforehand, somebody would have:
a) implemented it into a working system (prior art)
b) patented it themselves first
Our principle problem is that the world of software moves breathtakingly fast, and keeping soon-to-be-obvious ideas locked away for a long time can seem ridiculous. But make no mistake, even implementing some obvious ideas can be the investment of millions of dollars in R&D.
For example, a system integrator I know of had an IR&D program that spent $130 million dollars just in the R&D phase for what amounts to off-the-shelf software, installed on a few VMs, on rackmounted servers, in a large plastic shippable box with a few perl scripts and cron jobs hacked together to shuttle data between the COTS software and an Oracle database running in one of the VMs. Obvious? Perhaps. But nobody had gone through the trouble to actually do it, and spending that kind of overhead was a significant risk.
Should they own this idea for the next decade or so? Probably not, but how about the next 12-24 months? At least long enough so that they get a head start against competitors who didn't get there first.
I do think the patent system is need of serious reform w/r to getting rid of patents with prior art. Fighting a bad patent can be more expensive than getting one in the first place. And software patents are too frequently granted in cases where there is obvious prior art, common algorithms for example.
If we really want to fight software patents of obvious ideas, or permutations of obvious ideas, perhaps somebody should write a tool that simply combine every obvious idea in software into some greater system, then documents it all thus creating prior art that stops all of these so called bad patents...and then patent the "prior art permuter". In other words, if the ideas are obvious, a piece of software that does this should be buildable. I call this the "obviousness of software patents theorem".