In general I am not in favor of SW patents. Copyrighting is the right way to go for SW. I develop SW and HW both, and I understand the difference well. However, I realize that my position may be considered somewhat extreme by the Supreme Court, who is struggling to find a compromise instead of doing the right thing. Here is a nice face-saving compromise for the Supreme Court: allow SW patents, but limit the royalties to a maximum of 0.1%.
I have a large number of patents and have studied patents for a long time, but the basics for getting a patent remain the same; it has to be new, and novel, and not obvious.
Not obvious. That is the key. There seems to be an awful lot of patents today that are blatantly obvious to me.
For instance, Apple's screen-swipe patent; it's centainly new, it's certainly novel, but is it obvious?
That's a subjective question. It could be obvious to some people but not to others. The patent code says it must not be obvious to someone who is skilled in the art.
Suppose for instance that Apple wanted to patent a cell phone in which the battery is glued in place. Is that patentable? Is it obvious?
Most engineers would never glue batteries in place for obvious reasons. But does that make it non-obvious? Just because no one in their right mind would ever do it, does that make it patentable?
Apple apparently feels there's some economic advantage to gluing batteries in place, but does that make it patentable. Does that make it non-obvious?
It's so subjective...
I think the question is not whether it's a software patent or not, but whether it would be obvious to someone skilled in that field of design. They need to put more weight on that aspect of the application.
I agree with this description of software patents, from 1991:
"If people had understood how patents would be granted when most of today's ideas were invented, and had taken out patents, the industry would be at a complete standstill today."
If you don't recognize the author of this quote, Google it.
My own opinion (IANAL) is that software patents should never be issued. According to the Constitution, the purpose of patents is "To promote the Progress of Science and useful Arts". Software patents do the exact opposite, by stifling creativity with the threat that every single line of code you write could read on any number of patents that you've never heard of, exposing yourself and your company to endless lawsuits.
My opinion is that we only need patents for ideas that require a lot of effort and a lot of money to develop and are trivial to copy once they've been developed. This is never the case with software: if a piece of software is difficult to create, it's also difficult to make a robust independent copy. Copyright forbids a direct copy of the original, which IMO is enough to protect the developers' effort and expense.
You only need patents if people won't expend effort and money unless there's patent protection. The rapid rise of the microcomputer revolution was before software patents, and the lack of patents did not in any way impede that rise -- au contraire. The same is IMO true today.
Software patents aren't really invention, all they do is describe what an invention does. And if it's been done before without a computer then this is doubly true, like saying I invented a yellow whatsit and then someone else says Iv'e come up with a blue whatsit that does eveything that a yellow whatsit does but it's blue so it's new and I invented it.
The counter argument to software copyright is that it is easy to copy and hide the code inside "proprietary boxes." Which is why IP patent rights are needed.
My own personal opinion is that the best way to protect software is through open source. That way if one company reverse engineered the software it would be blatantly obvious.
As for the history of patents. Thomas Jefferson reluctantly included them. The idea was to give due compensation to the inventor. The other part of the spirit of the law was to weaken the power of the trade guilds, which had the rights to destroy inferior work.
We also forget that 200 years ago, It took a lot more time to develop technology. Especially the time It takes to communicate Ideas. I think the original timeframe was something like 7 or 10 years. Most of my life it was 17 years, now it is 20. This not coincidentally is the time it takes to rase a child to adulthood.
That not withstanding; patents are now used to sustain inferior work. The same as the "common trade guild laws" of the middle ages and still have a lot of precedence int the international scheme of things. It is not the quality of the patent that matters it is the quantity that counts.
Ideally with open communications patent terms should be shorter, not longer. If a company can not develop an Idea in 18 to 36 months, then let someone else do it.
@betajet - I don't quite understand your argument; isn't software about the most trivial thing on the planet to copy? Surely a lot easier to copy than say, an IC. I don't know anybody who has his/her own IC fab, but everybody has a computer with a CD/DVD drive or two. I did hear of one young woman who baked her own chips (Jennifer somebody?), but she's an outlier.
This is not to say that I favor software patents; I just don't get your reasoning.
Jim, what I said was it's difficult to make an independent copy of a program, i.e., a program that has the same functionality but is all new source code. You cannot legally make a direct copy of the program (source or binary) if it's copyrighted unless the owner of the program gives you a license to do so. Sure, if you have a CD/DVD burner you can make an illegal copy, but this is usually a copyright violation and you could face large fines and possibly jail if you're caught.
True enough. I hadn't thought about it that way. That does appear to be a better set of criteria for granting patents: only allow patents for inventions that are non-trivial to design but trivial to copy. I don't think most utility patents would stand up to this test.
What are the engineering and design challenges in creating successful IoT devices? These devices are usually small, resource-constrained electronics designed to sense, collect, send, and/or interpret data. Some of the devices need to be smart enough to act upon data in real time, 24/7. Specifically the guests will discuss sensors, security, and lessons from IoT deployments.