Hacker News new | past | comments | ask | show | jobs | submit login

What is the relative advantage of putting something into the public domain versus releasing under an Apache 2 or MIT license? The latter doesn’t restrict anyone’s use AND establishes a public record to refute what Google is trying to do. Additionally, communications by email could be via GitHub issues and open to all to see.

enedil is correct.

To expand on that: MIT and Apache2 grant a licence to copyrightable expression. But the literal code is not what is patented, the idea is. Granting a license to the code doesn't automatically prevent someone else from patenting the idea.

MIT doesn't say anything about patents. Apache2 additionally grants a licence to any patents which the author has which cover the work, and also tries to prevent someone using the work and then suing other people for patent infringement. But it does so by saying " any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed." Which is a null threat in this case, as the idea is to try to prevent there being a patent in the first place.

You could argue that the author should have patented the idea, and then freely licensed it. But since patents cost thousands each, that's a bit much to ask.

> the author should have patented the idea, then freely licensed it

This is the brutal truth of how crappy our current patent mechanisms are. The definition of what constitutes a patentable extension to practice of ideas that are well known or explicitly in the public domain is very weak. So, until something is patented and actively protected by bulldog lawyers, there is a risk of someone else trying to umbrella it in their own patent. Google's move can even be justified on defensive grounds that some other jerks could do the same. But the core problem is an arms race to the bottom of what trivial distinctions can be claimed.

Having a patent doesn’t guarantee someone else will not patent the work as part of some other patent. Patent examiners miss things sometimes.

Publicly disclosing the idea in a way that can be verified after the fact establishes prior art just like filing a patent does.

I’m not a lawyer, but I do know there are services that inexpensively publish inventions and vouch for the publication date after the fact.

Also note that the vast majority of patent litigation never makes it to trial, so whether a patent is “valid” or not is a gray area in practice.

The problem is defending that disclosure as prior art when someone bigger claims a patent that improves or puts it into practice, which is exactly what this article is about. Even if you take a few steps to make patenting harder, if you invent something valuable it's eventually a game of chicken about preventing others from claiming the space.

> This is the brutal truth of how crappy our current patent mechanisms are.

Being granted a patent by the USPTO doesn't guarantee that the patent is actually valid. It's technically possible for them to grant identical patents to two separate people by mistake, and then the courts have to determine which one is valid.

The only solution to put an end to the current patent system is to overload it. The equivalent of a DDos attack. Companies should file as many frivolous patent as they possibly can. Eventually, we'll have all the IP lawyers at 100% CPU and the world will be a much better place.

100% CPU -> 100% billable hours -> IP law is now an incredibly attractive profession -> more capacity for patents / lawsuits... and that's essentially how we got here.

Exactly. They'll scale up horizontally by adding more and more instances until supply == demand, at which case we'll be really, really sad we followed this road.

Then we all stop at the same time, the market collapses and IP lawyers go extinct.

You'll have better luck herding cats.

That sounds backwards if I'm reading you right. An idea can't be patented (well... in theory), but a new invention based on an idea can. Google apparently thinks they've got a new, non-obvious invention based on Duda's public domain work, which may itself have been patentable but wasn't.

That's one reason why companies rich enough to spam the patent office tend to do so. Company A invents X. If they don't patent it, then Company B can invent X+1, a minor improvement on X, and patent X+1 themselves. Now Invention X can't compete with X+1, so Company A invents X+2, an improvement on X+1, but now they have to pay license fees to Company B even though they invented the original thing! Solution: just try to patent every stupid thing.

No, the way to protect yourself is to disclose anything you don't want to patent, but don't want patented against yourself. IBM had a great system for several decades[0]:

[0] https://en.wikipedia.org/wiki/IBM_Technical_Disclosure_Bulle...

That establishes prior art for X, but X+2 would still potentially infringe on X+1 and they'd have no leverage for negotiating a license. Except they're still one of the biggest patent spammers, so they probably do have leverage in the portfolio somewhere.

And that is why patents should be abolished, in a nutshell.

Software patents for sure. Not sure about algorithmn ones. Say you invent this exact compression algorithmn and want to patent it but you can't and Google steals it when you wanted to license it so you can fund a company that builds better compression algorithmns or whatever. Google is going to rip out of your profits.

What distinction do you make between software and algorithm patents? And how do you separate algorithms and unpatentable math?

The European notion of technical effect seems to work quite well.

Yes, in saying an idea is patented I was technically incorrect - in theory, an idea can't be patented, an invention is only patentable if it 'teaches' how to implement it. Nevertheless, what is patentable is still a lot more abstract that an actual implementation.

So we have:

idea > teachable invention > implementation

(where '>' is 'more abstract than')

The GP seemed to by conflating the invention and implementation, in asking what difference the licence of made. That was the distinction I was trying to draw. Duda put the invention in the public domain, not an implementation - it's not clear you can apply the MIT or Apache licenses to an invention at all.

The kernel of truth is that results can't be patented, but methods can be. But here Google doesn't seem to have added anything significant, and is copying a method, not just obtaining a similar result.

So - prior art is no longer good enough?

I was at Xerox when they were fighting a patent on their ideas. At that point in time all you had to do was prove prior art on the idea. Xerox used their notes during software development plus the code to prove prior art.

Similarly I was at Apple when they fought a basic patent on color matching. Apple succeeded in fighting the patent then proactively started patenting everything.

> The America Invents Act signed on September 16, 2011, switched U.S. right to the patent from the previous "first-to-invent" system to a "first-inventor-to-file" system for patent applications filed on or after March 16, 2013.


Thought it could be challenged as unconstitutional:

> Many legal scholars have commented that such a change would require a constitutional amendment. Article I, Section 8, Clause 8 of the US Constitution gives Congress the power to “promote the Progress of ... useful Arts, by securing for limited Times to ... Inventors the exclusive Right to their respective ... Discoveries.” These scholars argue that this clause specifically prohibits a first-inventor-to-file system because the term "inventor" refers to a person who has created something that has not existed before. (Wikipedia)

I certainly hope prior art is still good enough. The GP was asking whether the licence under which you publish your prior art should make a difference - I don't think it does.

> Granting a license to the code doesn't automatically prevent someone else from patenting the idea.

But doesn't the fact that the code has already been released mean it's prior art?

Correct me if I'm wrong, but I think the US patent office doesn't check for prior art (that was one of the cut backs several years ago) so instead prior art is now something that has to be challenged in court.

Or challenged before the patent is issued. The USPTO encourages this; fees for notifying them of prior art are much lower before issuance.

Wait a fee is imposed? I get why I think but if your posting of prior art proves to be true then you should have your fee refunded.

I'd have to check but if I remember right, before issuance there's no fee for less than 20 items of prior art, and just a flat $200 fee for more. After issuance I think the fee is $35,000.

so you have to pay them $35,000 to show a patent they issued is bullshit.


You are wrong, but code repositories aren't checked because that is a needle in a haystack situation.


> That is completely wrong.

That maybe true but without any more detail your comment is still unhelpful.

All right. The patent office does search for prior art.

Fair enough. When the Apple / Samsung countersues were all happening I thought I read on one news site that the US patent office had stopped checking for prior art. Which certainly did seem to be the case at that time too. But I cannot find that original article yet now finding other sources that agree with your statement so it seems they do check.

Thank you for the correction :)

Just publishing prior art, in a way that proves when you did it, is sufficient. It can still be a problem if you're not aware your idea is being patented, so the patent office doesn't find your prior art, but that's not an issue here.

There are also services where you can register your prior art, which say the USPTO uses them when evaluating claims; I don't know how useful they are in practice.

We (USA) and are a first to patent country now.


Yes but that just means if two inventors are working on something privately, the first to file gets priority, instead of the first to invent. Public prior art still invalidates the patent.

No, recent court decisions say public isn't enough - the invention has to have become fairly well known to practitioners of the art. Mere publication is nothing now.

Can you reference that? Recently I both consulted an attorney on this stuff, and did my own research, and that's the exactly opposite of what I've found.

You can't patent ideas only specific implementation of ideas.

The MIT License requires copies of the software to give attribution to the copyright holder, as well as the licence text.

Though it is a very permissive licence, this does pose some barrier to using the software. Some companies are averse to using software they need to provide attribution for, but would not mind using software that is in the public domain.

Releasing software to the public domain ensures that as many people as possible can make maximum use of it.

That's not to say it's better to release software to the public domain over using a permissive licence. It really depends on the terms under which the developer wants people to use the software.

Licensing is not that simple. From the Creative Commons CC0 page.

"Dedicating works to the public domain is difficult if not impossible for those wanting to contribute their works for public use before applicable copyright or database protection terms expire. Few if any jurisdictions have a process for doing so easily and reliably. Laws vary from jurisdiction to jurisdiction as to what rights are automatically granted and how and when they expire or may be voluntarily relinquished. More challenging yet, many legal systems effectively prohibit any attempt by these owners to surrender rights automatically conferred by law, particularly moral rights, even when the author wishing to do so is well informed and resolute about doing so and contributing their work to the public domain."[1]

As an aside, I have no sympathy for companies that would refuse to use software licensed under MIT because they need to provide attribution.

[1] https://creativecommons.org/share-your-work/public-domain/cc...

I don't see people dropping sqlite en masse.

I'm not sure how to interpret this comment.

If you're making a reference to SQLite being in the Public Domain, there's a page on SQLite's website for organizations to purchase a Warranty of Title, which shows organizations can be skittish about anything.[1]

Are you referring to a program that is being dropped because it's not in the Public Domain? If so, I am for an example. As a potential counterexample, I am not aware of a drop of usage on, say, cURL, which is widely distributed by countless organizations and which uses the MIT license.

[1] https://www.sqlite.org/copyright.html

> Some companies are averse to using software they need to provide attribution for

why would that be? They certainly already need to put in a license page/dialog/display somewhere, so it makes so little difference adding an extra piece of text there.

Perhaps because it can be error-prone to keep attributions together with the thing requiring attribution.

This is certainly an issue with things like photos and Creative Commons. Anyone who uses CC-BY-SA photos in presentations knows very well that, as photos get reused and mixed in different presentations, it's very easy to end up dropping a credit somewhere. I know I try hard not to do so, but I'm sure I still miss things from time to time.

I explicitly put some code samples under CC0 because I want people to feel complete freedom to copy and paste the code without needing to maintain attribution or worry about licensing compatibility.

For example: https://jsfiddle.net/rectang/fwto2ejh/

The CC0 dedication is at the bottom; you have to scroll to it.

I chose to slightly modify the CC0 dedication for this to comport with the fact that you won't receive a copy of CC0 with the materials. I didn't like having to do that and wish that Creative Commons would provide an official accommodation. I'm reasonably confident that my change won't materially affect a future court case over my code though. :)

ETA: I strongly recommend that other people DO NOT change dedications. I'm reasonably educated on these topics for a layperson, but not a lawyer. I mentioned the change as a warning that my dedication should not be considered a CC-approved template.

Can you elaborate on why this is advantageous to the situation in the article?

For the purpose of establishing prior art, it is not advantageous at all in comparison. The article talks about how patent examiners have limited resources and tend to rely on searching the patent database to find prior art. Putting something on the internet with a CC0 dedication is not going to make it any more visible to them.

I'm confident that there are no patentable ideas in my code and my purpose is just to minimize the burden on downstream users of copyright licensing.

If there were patented ideas in my code that I wished to license to downstream users, CC0 would actually be a poor choice, because it explicitly excludes a patent grant. That's why CC0 is not endorsed by OSI, and there's been a lot of hand-wringing over that clause.

Note that if you do copy/paste public domain code into a non-trivial project, you still should record its origins in version control at least -- even if the license doesn't require attribution.

FWIW: Email is a crappy medium for prior art.

Most emails rarely delve into the how to actually do something, most stop at suggestions of things to try.

If i email you a problem, and you email me "you should try a hashtable", and then i reduce the problem to practice using a hashtable, i will likely still be able to patent it. It depends on the country/details, but yeah.

At best, you may or may not be named co-inventor.

(Even here, you can see that one of the arguments the examiner has to make is that it would be obvious how to implement the suggestion. This is because if it wasn't true, it would still be patentable)

Code is a better medium, but there is no way for most patent offices to understand what code does.

But i would never rely on issues and emails being a good medium for prior art.

You'd really need a design doc and reference impl if you want it to be considered for real.

Because it's algorithm and not code.

How about an “On the record” public domain dedication where dates, code, issues, wiki, etc are a matter of public record and establish legal grounds of prior art for countering patent issues like this?

I remember reading that IBM once did just that. I think they submitted something to the US Patent Office, but I cannot remember the reference. Might have been in the 360 days.

Yes - Technical Disclosure Bulletins[0]

-- [0] https://en.wikipedia.org/wiki/IBM_Technical_Disclosure_Bulle...

Yes, it's called 'defensive publishing'.

There are plenty of countries that don't have a public domain, or different patent laws, or ....

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact