My theory is that we should scrap the current system and replace it with this:
If you have an idea that you can show would have been economically feasible to do for the past 20 years, and yet no one did it, you can own it for the next 20 years.
I think someone at one point patented selling advertising on menus, right? Or is that a legend? Anyway, pretend it's the truth.
I don't know when someone thought of this, but I'll bet that when they did it was something people could have made money off of for 20 years before that time. So, imagine you think of this idea (say it's 1900 or whatever). You don't even own a restaurant, have no particular interest in starting one. You're sitting there at a sidewalk cafe and thinking, man, I already know what I want, I'm waiting for the waiter (hmmm) to come back, and I'm bored. I'm a captive audience! Someone should sell ads on these things.
Now, the question is, what do you do next? Suggest it to the cafe owner? Will he give you free lunch there for the rest of your life with the money he makes? Probably not. Are you going to start a restaurant so you can try this out? Probably not. So what's your most likely course of action? You notice free puppies for adoption on the corner and forget about it until the next time you are bored at a restaurant.
So the idea stays in your head, and the general population doesn't get the chance to use it to make money. Maybe some quirky cafes that some people really liked but they didn't appeal to a wide enough audience go under, which could have stayed afloat if they had one more source of revenue.
And with this standard, you know that the idea is "hard" or "ingenious" or "sufficiently clever" or "hard enough to arrive at that we deem it patentable", because no one has done it, even though restaurants and menus have been around for more than 20 years.
Now, if the restaurant was something that had just come out of the labs and people were only newly getting used to the idea, you wouldn't be able to patent stuff like "free water to every guest! whoa!" or "paper napkins to save on my laundry bill!" or whatever. The stuff that's too obvious to be legitimately patentable will show up as a matter of course as people try to make their businesses more profitable.
When you hear (most) people complaining about patents, they are complaining about stuff like one-click, which any reasonably intelligent person working on a user interface would arrive at by simply trying to reduce the complexity of the process for a repeat sale. Someone with a bunch of VC backing or corporate R&D budget is getting paid to play around with new technology and they end up stumbling into this area first, and bang, it's theirs. The problem with that model is that it slows down innovation, because then the next guy has to innovate around the totally obvious "invention" that someone land-rushed to.
This system would eliminate this "stake out all the easy stuff for the big companies that can afford to just play" activity. If you want a patent on something, you had better figure out something so clever that no one has thought of it for 20 years even though it could have made money at any time during that period.
Alternatives:
Make it float--if it's only been feasible for one year, you get your lock for a year. That way you eliminate the motivation to sit on an idea if it's year 15 or whatever and you might make more money if you keep it secret a while longer.
The idea of the patent system is to get the ideas out so everyone can benefit. It wants to reward innovation, and protect both the little guys who come up with a clever idea on their own and the companies that pay a lot of money for R&D and want a return on that investment. The problem with the current system is that it's really hard to say what's innovative enough to be worthy of protection. This method computes idea difficulty with a massively parallel socio-biological machine. (Man, I should patent those!)