Hacker News new | ask | show | jobs
by runningdogx 4973 days ago
This makes no sense. Is Stallman so focused on software that he isn't considering the implications of continuing to apply broken software patents to hardware?

FPGAs? Is an algorithm implemented on a FPGA a software or hardware implementation?

Sufficiently popular software algorithms like mpeg4 (including avc) are often implemented in ASICs for speed. Stallman's suggestion does nothing to help in those cases.

What if Intel introduces new instructions that assist with some patented algorithm but do not carry out the complete algorithm? Software completes the algorithm using the chip instruction. Is that covered under Stallman's software patent immunity proposal?

The dichotomy between software implementations and hardware implementations is unhelpful. If you oppose software patents on principle, whether because you think they're harmful or because you think they're math and are not supposed to be patentable in the first place, why let the camel's nose into the tent by campaigning to allow hardware (ASIC?) implementation patents, but not allowing pure-software implementations?

Perhaps this is better framed as an economic argument. If cost were no object, more algorithms would be implemented in ASICs. There's a limit to the total chip area you'd want to fit into a computer, but a lot of algorithms could be implemented in a few custom ASICs. It's likely that some of those algorithms would be covered by patents. Stallman's proposal seems like discrimination against algorithms that are important enough to make faster execution worth a lot of money.

If software patents are not valid, and I don't believe they are valid, then allowing them to apply to hardware implementations is just applying a band-aid and punting on the real issue. Stallman's proposal may be pragmatic, in that it reduces risk to most start-ups and other entities worried about violating patents in software, but it sustains the confusion about what software patents are and whether they can be valid. I think there's more at stake than the money at issue in patent lawsuits every year. I think broad appreciation of the value of open culture, and recognition that algorithms should be part of that, is worth more than any extra value companies might be able to extract from hardware implementations of patented algorithms due to artificial monopolies created by patent protection.

10 comments

It's not a perfect solution, and (like most things in the patent system) it's an obvious ugly hack, but it would be a lot better than the status quo. Do you have a realistic alternative that's better?

(I just realized: you may be in the dubious position of being less pragmatic about something than Richard Stallman. It's not often someone can say that!)

This "ugly hack" is a hole you can drive a truck through, and one can be pretty sure the patent lawyers will find an aircraft carrier, load it up with trucks, and drive through it collectively.

It's silly to assume no change in behavior, any legal counsel from that point on will advise in favor of patenting the hardware implementation, and instead of patented software running on commodity hardware we'll end up with patented "appliances" and "reference hardware implementations" with broad claims extending to other types of hardware implementations.

I agree with this, mainly on a simple premise:

If you start an arguement at two extremes, and give ground where your opponents do not, you weaken your position and put the compromise between them more in their favor. And when you keep giving ground, you keep showing a willingness to concede defeat, and your opponents will just ignore you. If you stand your ground, you are a stalwart wall of opposition that needs to be confronted, rather than ignored, eventually.

In many cases (gay rights, civil liberties, patent law, equality / freedom) that stalwart position may require multiple generations. You don't get instant results when dealing with the entrenched status quo that is horribly wrong. But when you give ground you render your entire argument and stance illegitimate because your opponents can dismiss you as you keep conceding ground and giving up on your positions.

Patents, as a whole, are archaic and bad. The turnaround time for any new discovery is now a matter of days, or months, rather than the years it would take in centuries past to distribute and market goods and services. In the digital world, everything is already information, it is all number patterns in electrical terms, and we had a track record of not letting people monopolize knowledge and information in the realm of mathematics before, and the digital era should never have been any different in my opinion. Of course, it is my opinion and all. But I remain dilligent in my stance for it.

I have lost a lot of respect for Stallman because it seems in recent years his dialogue has propagated a lot of "buts" in his arguments. He concedes ground on what he believes in and that illegitimizes him more than anyone calling him cookey would in my book.

The classic name for the "Keep moving the extremes so people's opinion converge on the gradually moving middle" is called the Overton window and politicians try to employ it all the time:

http://en.wikipedia.org/wiki/Overton_window

I think you have this backwards. I can't be sued unless I implement the patented idea in hardware.

In that state of the world, if they patent the hardware solution, I don't care. I can still implement in software and I have a legal workaround to avoid infringing. I'm driving the truck through the hole.

I don't see the hole being that big. For example Apple's slide-to-unlock patent, no one would be allowed to move that functionality into a dedicated chip but that would never happen anyways.
If Stallman's modification of "implementations using special-purpose hardware" was in place and Apple was filing that application today, I could see how they would reduce the slide-to-unlock to "slide-to-unlock on a multitouch surface".
There might be holes in Stallman's plan, but this isn't one of them.

Apple might be able to patent multi touch if they hypothetically invented it, since that's a hardware thing.

But once that touch data makes it to the CPU, what is done with it afterwards would be unpatentable.

Even if Apple themselves somehow did slide to unlock in hardware, competitors could still implement a software version.

I don't think that's right. The regular meaning of special-purpose computer is an appliance like a TV or an iPod, it can't do anything that it wasn't designed to do. The opposite is a general-purpose computer which is pretty much anything that can be programmed such as a PC or a smartphone. Of course it would depend on the legal definitions to know what the exact loopholes would be.
> The dichotomy between software implementations and hardware implementations is unhelpful

Actually it's quite helpful. Something implemented in hardware has one fixed royalty per device, no matter what operating system or other customization has been performed. That implementation becomes a capability of the device, a manufacturers selling point. A software implementation is "shipped" over and over again as the software is updated, the user changes software packages, etc.

I'm pretty ambivalent on hardware patents, having grown up reading Don Lancaster, etc. But they could be a workable way to fund codec development while not encroaching on software freedom.

"What if Intel introduces new instructions that assist with some patented algorithm but do not carry out the complete algorithm? Software completes the algorithm using the chip instruction. Is that covered under Stallman's software patent immunity proposal?"

Sure, why wouldn't it be? I'm not suggesting his idea is feasible or not. But as he stated it, in this case if you were able to reverse engineer the software bits required to make the magic happen on the chip and reimplement your own version you wouldn't be on the hook for actionable patent infringement whether you were the developer or a user.

OTOH you wouldn't be able to implement the hardware side of that system under these rules.

FPGAs? Is an algorithm implemented on a FPGA a software or hardware implementation?

FPGA is pretty much general purpose metahardware. It's programmable so you could program it to be any chip, thus not covered by the effects of a patent.

Sufficiently popular software algorithms like mpeg4 (including avc) are often implemented in ASICs for speed. Stallman's suggestion does nothing to help in those cases.

If you're manufacturing or buying dedicated hardware to do one specific task well I don't see why would patents need not apply? The codec chip is clearly a "hardware machine", not a general purpose processor. It's something I imagine companies are prepared to pay license fees for. Further, nobody will accidentally use a MPEG4 hardware decoder in some device they make which is a different situation from how the accidental problems manifest in software.

You could accidentally create a patented algorithm in hardware just as easily in hardware. The trick is that you wouldn't be designing an 'MPEG4 hardware decoder', but you'd think 'oh, wavelet compression in an ASIC, how novel'. Then you'd be infringing the patent. It's not an issue of accidentally using, it's more an issue of accidentally developing in parallel.
It makes some sense. He's attempting to promote an easily understood measure to mitigate the harm caused by software patents. Putting forward suggestions which are easily understood is very useful in politics.
Stallmans suggestion is a pragmatic way to go forward and stop the current fighting between companies that is ongoing at the courts, and not through competition of products.

A clear and strong reform of patent would be preferable, and has been for long the free software foundations strategy. In the case of Bilski v. Kappos, one can read a brief made by the fsf, which rather clearly presents their view. I also strongly promote the idea to watch/read a talk by eben moglen at https://www.softwarefreedom.org/events/2009/Moglen_Cardozo/C...

Far from ideal, but at least an actionable, smooth solution that the major players can adopt.
Arguably, if you're manufacturing ASICs, you can afford to license the odd patent.
Software companies can also often afford to license the odd patent. I can also afford to pay the occasional fine. But why should any of these parties do so if the law is unfair and ridiculous?
If you want a loophole, look at the part where 'selling' software wasn't on the list of exemptions. I think that could create more than a few problems, though I think the overall idea is a good one.

As for the complaints that this might create more legal absurdities, there are plenty of those already. An imperfect solution is better than none.

It's more like the camel is already in the tent, and RMS is trying to shove its butt out.
RMS is an idealist, not a pragmatist. He must believe this is the ideal solution.

Or maybe he's had a change in opinion recently. I have to say, this is the only cogent, practical argument I've heard out of him over the last few years. I really dislike his dogma on the free software issue.

You need to provide some evidence for Stallman not being pragmatic. The existence of the LGPL is clear evidence that he is capable of pragmatism. Another example is that he does not get very excited about things like simple calculators being open and free because he does not see that as a practical concern.

He has principles that he tries to live by and advocates strongly but I have never viewed him as an idealist nor do I see much evidence for it.

RMS is certainly ideological, but he's pragmatic about pursuing that ideology.