There has recently been much attention to the problem of software patents. I think Marco Arment probably best summed the prevailing wisdom: The USPTO has repeatedly shown that they do not possess the ability to issue software patents responsibly. This isn’t the agency’s fault — it’s impossible in practice.1 and the current reform is likely to only exacerbate the issue by rewarding first-filing over invention.
I used to agree with a talk Paul Graham gave at Google in 2006; the system had created a tense stalemate that didn't punish entrepreneurs too much, but patent trolls were upsetting the balance. Today, I fear, we're seeing the result of that, with large and reputable players sniping at each other in Bush-style preëmptive strikes.
So the internet is abuzz with calls to end (or restrain) software patents. But what's "software"? It seems algorithms are behind most things patented, even predating the concept of software. Is Intel's new chip-level random number generator just software expressed in circuitry? The line between software and hardware is not one we can simply entrust the USPTO with, and letting the courts decide only re-frames the problem we already have.
It may be too late to return to the cold war of the past, but maybe we should try, and disable patent trolling as an industry. Award patents only to humans (not corporate "persons") and do not allow transfer except via inheritance.