> The software / hardware equivalence makes simple definitions impossible.
The software / hardware equivalence is overstated. You can implement everything in hardware that you can implement in software, but you can't implement everything in software that you can implement in hardware. There is no software alone that you can run on a general purpose computer to cause it to generate thrust, or convert raw steel into an automobile chassis, or help the immune system to fight cancer.
So your argument seems to be that we can't define "software patent" as "patent that software executing on a general purpose computer infringes" because that would include patents over software hard-coded into hardware. But why is that a problem? Firmware is code. Microcode is code. They're supposed to fall into the same category as "software" -- the fact that you can't disambiguate them is a result of them being the same thing. And they are all things that, like other software, can be protected by copyright.
On the other hand, the watch isn't the same thing. The formula that describes the timing of a watch mechanism is not a watch mechanism. A watch simulator is not a watch. Executing a software simulator of a watch mechanism on a general purpose computer without a clock doesn't imbue it with the ability to keep time. You can patent a physical watch without patenting its "algorithm" in much the same way as you can patent a specific nuclear reactor design without patenting E=MC^2, or patent a drug without causing a research paper describing the drug to infringe.
>- The majority of software startups are not doing anything particularly technically innovative.
>- The (vast) majority of the software industry as a whole is not doing anything particularly technically innovative.
The second is a refutation of the first. If you take Microsoft, IBM et al as not doing anything particularly technically innovative, even though they are applying for a large number of patents, "innovation" (in the sense of interesting rather than merely something you can lawyer through the patent office) is clearly not a requirement for obtaining a patent. Which means that a lack of innovation can't adequately explain why startups should be less inclined to file for patents than larger firms which are innovating even less.
>- Patents are expensive to apply for and get, something a startup can't often afford.
>- Patents don't provide enough protection for software products anyway.
It doesn't surprise me that the study found both of these. This is evidence that software patents are ineffective to promote innovation. But again, uselessness without harm is irritating but mostly benign. The real trouble is that software patents are harmful, because they entrench incumbents by creating patent thickets and facilitate the trolling of successful innovators by lawyers and failures.
> But if there's no funding, there's no startup, let alone innovation, so for many founders it's a necessary evil.
That's the point. If we get rid of software patents then VCs would need to find some other signaling mechanism to distinguish between startups, but founders would no longer need to spend scarce resources and time on patent prosecution that could better be spent somewhere more productive.
> There is no software alone that you can run on a general purpose computer to cause it to generate thrust, or convert raw steel into an automobile chassis, or help the immune system to fight cancer.
And what about the algorithms that measure and control the thrust and the robots that make the chassis and compute the folding that leads to drug design? Much more often than you'd think, that is the crucial point of novelty and competitive advantage, and what many patents cover. Software eating the world and all that.
> ... And they are all things that, like other software, can be protected by copyright.
Functional things cannot be covered by copyright. If it's the functionality itself that is novel, no amount of copyright can protect it.
> On the other hand, the watch isn't the same thing. The formula that describes the timing of a watch mechanism is not a watch mechanism. A watch simulator is not a watch.
That wasn't my point. Simulation is not what I mean. A watch mechanism is essentially a series of cascaded counters. X "ticks" of one gear = Y "ticks" of another gear. It's an algorithm: if (m++ == 60) h++; You'll find such physical implementations of algorithms all over the place if you know where to look, especially in automation, from factories to toasters.
> You can patent a physical watch without patenting its "algorithm" ...
And that applies to most "software patents" too. Most software patents don't cover the abstract algorithm, they cover the application of that algorithm. Case in point, the patent in TFA: it didn't cover comparing a bunch of numbers to find another number, it covered comparing a bunch of numbers representing preferences to find a match between business entities associated with those preferences. You could very well use the exact same algorithm to find a match between a vacationer and a list of vacation spots and not infringe the patent. I'd say the judge's analysis in rejecting was a bit off: this patent is invalid because it's non-novel, not because it's abstract.
> The second is a refutation of the first.
No, but do you mean to say that the majority of software startups are doing technically innovative work? Heck, look at the much vaunted YC companies. How many are doing something beyond some variation of CRUD?
> If you take Microsoft, IBM et al as not doing anything particularly technically innovative...
I'm sorry, I live outside the HN bubble, so I completely disagree that Microsoft and IBM don't do innovative work. (Well, OK, these days it's mostly IBM Research, in case of IBM. In case of Microsoft, both MSR and MS products introduce inventions and innovations at a pretty fast pace.) Just because you don't see them doesn't mean they aren't there.
Sadly, the vast majority of the software industry is not like Microsoft and IBM. The vast, vast majority involves translating pre-existing business logic into code. And most software startups are not much different.
I agree, though, that most patents (not just "software patents"), are not really "interesting", but historically this has always been so. And all the hand-wringing you see here is not new either.
> It doesn't surprise me that the study found both of these. This is evidence that software patents are ineffective to promote innovation.
Well, then maybe we need to make it cheaper to file "software" patents and make them more powerful so they afford some real protection? :-)
>The real trouble is that software patents areharmful, because they entrench incumbents by creating patent thickets and facilitate the trolling of successful innovators by lawyers and failures.
There is no undisputed, convincing empirical evidence that software patents are harmful on average, other than tech media fishing for rage-views. For every paper saying software patents harm entrants, there's one saying the opposite (see "Software Patents, Incumbents and Entry" as an example). There are even studies suggesting that thickets helped innovation by centralizing licensing efforts.
Also: "Innovators". You keep using that word. I do not think it means what you etc. etc.
> If we get rid of software patents then VCs would need to find some other signaling mechanism to distinguish between startups, ...
1. It's not just in software that VCs look for patents. If you read that survey or other studies, or heck, watch Shark Tank, you'll see it's common in most industries.
2. If you drop the empirically unfounded assumption that all patents are bogus, a patent is a proxy for a multitude of signals that VCs find useful.
3. Studies show that startups with patents are more likely to have a successful exit. I don't know what better signal a VC would want to find.
> And what about the algorithms that measure and control the thrust and the robots that make the chassis and compute the folding that leads to drug design?
What about them? They're software. Get a copyright or keep it as a trade secret.
> Functional things cannot be covered by copyright. If it's the functionality itself that is novel, no amount of copyright can protect it.
Which is kind of the point -- it's really the whole problem with software patents. In software there are enormously many widely differing but still sensible ways, i.e. different functions, that all accomplish the same result. Such that in order to have a valuable patent you have to try to patent the idea itself or any computation of the relevant law of mathematics or physics or the intended outcome rather than any particular way to do it, otherwise anyone competent could easily come up with a thousand other ways to do the same thing just as well. So software patents end up being either so abstract that they're abstract ideas or sufficiently specific that anyone can easily avoid them. And companies don't even attempt to get the second kind because it's a waste of money, so instead they spend all their efforts convincing the patent office to improperly issue the first kind.
Function is effectively irrelevant here, only outcome is relevant. If you have code to take input from set X and map to output from set X' then that code is fungible with any other piece of code that produces the same mapping from X to X', regardless of how it does it. The only practical consideration is whether the performance of some particular implementation is inadequate, which is clearly not a significant point of contention in the majority of software patent cases. So instead of patenting the software equivalent of "brake pad compressed against rotating disc by caliper with hydraulic actuator" they patent the software equivalent of "car slows down" and now they want to sue anybody with a vehicle capable of decelerating.
Because in a car it matters whether you have disc brakes or drum brakes because disc brakes stop better and fade slower and they cost a different amount of money and wear at different rates etc. etc., which are very important characteristics when choosing what kind of brakes to design a car with. In a computer it doesn't really matter most of the time whether you use a linked list or an array or a red black tree or a hash table. Some choices will be faster than others or use more or less memory, but that's about it, and for the most part that isn't what the patent system is concerned about. But that's the nature of function in computer science: Different functions can easily produce the same outcome, just with different efficiency. So in order to patent something others can't easily avoid, you have to patent the result rather than the function. Which isn't supposed to be allowed.
> A watch mechanism is essentially a series of cascaded counters. X "ticks" of one gear = Y "ticks" of another gear. It's an algorithm: if (m++ == 60) h++; You'll find such physical implementations of algorithms all over the place if you know where to look, especially in automation, from factories to toasters.
But you aren't patenting the algorithm, you're patenting the mechanism. This is made clear by the fact that no software or arrangement of transistors or equivalent logic gates can possibly be made that would infringe the patent claims on the watch mechanism. Because you aren't patenting the outcome ("keeps time"), you're patenting the mechanism. Every watch since the beginning of time (so to speak) has operated with the algorithm "if (m++ == 60) h++;" and yet novel watch mechanisms continue to be patented on a regular basis, because they patent something other than the algorithm.
> Most software patents don't cover the abstract algorithm, they cover the application of that algorithm.
I don't think that's right in this case. Unless by "application" you mean some artificial and irrelevant limitation like the one you're pointing out with business entities vs. vacationers. Allowing that to make something unpatentable into something patentable is how we get into this mess. It's like the classic "that thing we all know about, but on the internet" patent. It would be like allowing Jules Verne to patent "rocket for traveling to the moon" the day after Sputnik launched and proved rockets could make it into orbit, providing no additional utility or novelty other than the arbitrary limitation that it must be used to travel to the moon. How is that worthy of a patent?
What you should need for a patent is some actual implementation of the abstract idea. An "application" of "rocket for traveling to the moon" is the Lunar Module, not a claim of launching any unspecified rocket in the general direction of the moon. Which is all adding some frivolous field of use limitation to a mathematical algorithm is doing.
> No, but do you mean to say that the majority of software startups are doing technically innovative work? Heck, look at the much vaunted YC companies. How many are doing something beyond some variation of CRUD?
I think some of them are. Most of them probably aren't. The obvious problem is that VCs are throwing money around and it attracts people who are more interested in getting rich so they can retire rather than building something epic. But you can identify small companies that are doing good creative work, e.g. Whisper Systems.
> I'm sorry, I live outside the HN bubble, so I completely disagree that Microsoft and IBM don't do innovative work.
Oh sure, if you measure the amount of research they do in absolute terms then it's a lot because they're such large entities. But in terms of a percentage of their revenue? Or their ratio of engineer hours spent doing actual research vs. engineer and lawyer hours spent on patent prosecution?
> The vast, vast majority involves translating pre-existing business logic into code. And most software startups are not much different.
We get all the rage against "do X on a computer" patents, but as it turns out, even if "do X on a computer" is bleeding obvious and shouldn't be patentable, it can also be highly profitable because the pre-computer solution was "do X manually."
But I'm not sure this is much different from other industries. Drug companies regularly announce minor (but newly patented) improvements to their previous drugs just as the previous versions fall out of patent. Medical device companies spend an enormous amount of time and money to get very conservative designs approved by the FDA. The ability of Tesla to combine a Lotus with a thousand laptop batteries and produce an electric car is not nothing, but it's more a testament to the massive failure of their predecessors to do it first. And why is it that I have the same speed ethernet interface in my PC today as a 400MHz PowerMac G4 had in 2000?
> Well, then maybe we need to make it cheaper to file "software" patents and make them more powerful so they afford some real protection? :-)
You're going to make the trolling problem a lot worse then, what about that?
> For every paper saying software patents harm entrants, there's one saying the opposite
Then clearly half of them are wrong.
>There are even studies suggesting that thickets helped innovation by centralizing licensing efforts.
If there were no software patents then there would be no need or benefit in centralized licensing. Moreover, centralized licensing is very similar to a lack of patents (i.e. results in more competition than a single incumbent with a concrete patent monopoly), but notably differs by creating a wealth transfer from newcomers to incumbents, which would tend to result in less innovation by discouraging challengers and protecting incumbents, leading to less competition and consequently less competitive pressure to innovate.
> It's not just in software that VCs look for patents. [etc.]
The point is, maintaining the existence of software patents in order to retain them as a signal to VCs is the tail wagging the dog.
The software / hardware equivalence is overstated. You can implement everything in hardware that you can implement in software, but you can't implement everything in software that you can implement in hardware. There is no software alone that you can run on a general purpose computer to cause it to generate thrust, or convert raw steel into an automobile chassis, or help the immune system to fight cancer.
So your argument seems to be that we can't define "software patent" as "patent that software executing on a general purpose computer infringes" because that would include patents over software hard-coded into hardware. But why is that a problem? Firmware is code. Microcode is code. They're supposed to fall into the same category as "software" -- the fact that you can't disambiguate them is a result of them being the same thing. And they are all things that, like other software, can be protected by copyright.
On the other hand, the watch isn't the same thing. The formula that describes the timing of a watch mechanism is not a watch mechanism. A watch simulator is not a watch. Executing a software simulator of a watch mechanism on a general purpose computer without a clock doesn't imbue it with the ability to keep time. You can patent a physical watch without patenting its "algorithm" in much the same way as you can patent a specific nuclear reactor design without patenting E=MC^2, or patent a drug without causing a research paper describing the drug to infringe.
>- The majority of software startups are not doing anything particularly technically innovative.
>- The (vast) majority of the software industry as a whole is not doing anything particularly technically innovative.
The second is a refutation of the first. If you take Microsoft, IBM et al as not doing anything particularly technically innovative, even though they are applying for a large number of patents, "innovation" (in the sense of interesting rather than merely something you can lawyer through the patent office) is clearly not a requirement for obtaining a patent. Which means that a lack of innovation can't adequately explain why startups should be less inclined to file for patents than larger firms which are innovating even less.
>- Patents are expensive to apply for and get, something a startup can't often afford.
>- Patents don't provide enough protection for software products anyway.
It doesn't surprise me that the study found both of these. This is evidence that software patents are ineffective to promote innovation. But again, uselessness without harm is irritating but mostly benign. The real trouble is that software patents are harmful, because they entrench incumbents by creating patent thickets and facilitate the trolling of successful innovators by lawyers and failures.
> But if there's no funding, there's no startup, let alone innovation, so for many founders it's a necessary evil.
That's the point. If we get rid of software patents then VCs would need to find some other signaling mechanism to distinguish between startups, but founders would no longer need to spend scarce resources and time on patent prosecution that could better be spent somewhere more productive.