No Source Code == No Patent
albertcory50.substack.com
albertcory50.substack.com
Regular patents work because they are easily** enforceable. If your competitor brings a rip-off of your machine on the market, you can buy one, take it apart, see the similarities with your own eyes, and have a case. If Meta rips off your method to apply an image filter, you better have 10 years of experience in reverse-engineering obfuscated code. Actually, don't even bother. The code runs on their servers and you will never have the opportunity to even investigate it.
The upside to all of this is that a fun, creative interpretation of this exists. Which is that if you really want software patents, obfuscation and DRM should be forbidden so that patent claims can be investigated.
**: Yeah I know that's no longer true in many cases.
this is very noticeable because the truly useful software algorithms don't get patented, they get protection via trade secrets instead (and enforce it via courts and various internal processes).
I say abolish software patents. Software copyright is good enough.
To play the devil's advocate: Is it though?
Especially recently we've seen the widespread acceptance of copyright and license laundering through large machine learning systems such as copilot and chatgpt, backed by enough microsoft laywers to prevent meaningful push back from the copyright owners. They'll output verbatim copies of what was previously copyrighted code.
If it is true that software copyright can be cleaned away in such a fashion, maybe patenting the algorithm itself actually is necessary to avoid big tech companies like microsoft from forcibly strip mining the ideas of independent creators.
Thanks!
this is the same argument that patent proponents had, because patents protects the little guy.
And yet, most copyright enforcement occurs via large corporations who have an interest in doing so to further some other goal as part of a strategy to gain monopoly. Patents as well as copyright is but a tool, and any tool can be more powerfully wielded if the wielder is more powerful!
The little guy is better off without copyright imho (but that horse has already bolted).
The system of copyright worked very well to protect smaller entities in this regard.
Not to mention tivoization which trivially bypasses GPLv2.
in reality your licence is only as strong as your ability to enforce it.
As long as the little guy's patent can improve the process without stepping on any of the countless pre-existing patents manufacturers have accumulated. Now how often is that the case?
Except in the cases where manufacturers just stall the little guy in court for most of their life.
The more difficult and expensive it is to use, the more it will be the domain of those with more resources, and the more the small will be defenseless.
The answer is not to eliminate copyright or patents, but rather to make them simple and easy to apply for, defend, and find. The current bar is so high it favors the big guys only, and gives them leverage against smaller folks who can’t afford to even show up to defend themselves usually.
Or eliminate it entirely, but you’ll not be able to do that because Disney, Microsoft, Oracle, and the like would murder/compromise/destroy anyone who might be able to do that.
Yes. Copyright already protects what a patent granted for source code would protect.
The problem you describe exists in both scenarios, and is resolved with enforcement. You can sneakily break the law, and you run the risk of getting caught for fraud.
I don't think that part is true: https://en.wikipedia.org/wiki/Clean_room_design
This is not correct. Patent protects the abstract functional design, copyright protects the reduction to practice. Two implementations of the same algorithm have independent copyrights.
You see the same thing in physical engineering too. A novel chemical process is protected by patent and each reduction to practice is protected by copyright. They are separately licensable.
The nice thing is that this works in both directions. Just as Microsoft and Co. can train on people's data, nothing stops the people from training on Microsoft's chatbot output.
As long as we don't get any lawsuits derailing this practice, we actually might end up fine, as there is nothing that'll allow anybody to get ahead in AI without automatically provide a mountain of training data for the competition.
If that means the end of copyright right as we know it, I am all for it.
Copyright and Artificial Intelligence April 19, 2023 – Literary Works, Including Software Listening Session
copyright.gov/ai/
a. Independent discovery of same algorithm is very likely before 17 years.
b. Big companies abuse such systems by patenting trivial ideas.
https://casetext.com/case/kern-river-gas-transmission-v-coas...
Your comments and creative expression are the only portions of your code that are protected by copyright. The function isn't.
If you strip the comments out, though, it's questionable.
But what if we do the opposite - abolish copyright abd keep patents?
I think this is because you have experience with software, so you see pretty much all software patents should have never been granted, but same goes for things like hardware.
I would partially blame the VC culture for this, when they state as a requirement for funding that product needs to be patented. So engineers try to patent whatever they can and as it seems these patents don't go through any scrutiny and are approved as they go.
Having said that, I despise all patents, including software patents. The head start a company has should be enough to capitalise on RnD.
The time that assembly code was readable by humans is long past, and I can't afford to pay NSA-level crackers who can reverse-engineer the 60MB of executable code in the Facebook app because I have a hunch that they're violating the image processing patent I have.
I think I fixed that for you. Patents have only caused Corporations to battle each other and bully normal people into compliance
Your company maybe won't spend a billion dollars on this research.
Maybe some govt funded research will work out, maybe a dozen other people will run into the discovery at some point.
A large majority of inventions by humans haven't been motivated by profit.
Were the large majority of drugs we use today (the topic discussed) invented outside the profit motive? I don't know the answer to that.
is the context.
You have to admit that that is, itself, out of context for the original post, which is strictly about software patents. But yeah, at that point it had morphed into something else.
We use teeny tiny variations of the drugs which are supposedly more effective but are also much more expensive.
Most other countries report significantly better healthcare outcomes with generic drugs.
In theory the government could nationalize the entire pharmaceutical industry but there is no evidence that bureaucrats are capable of reliably picking the right candidate drugs. Countries with weak IP protections do relatively little new drug development.
I'm not convinced that the govt bureaucrats would do a worse job than drug co bureaucrats. Current studies are poorly designed, implemented incorrectly, results are cherry-picked and gamed, p-hacking lives, ... This is an industry that can't even seem to accept pre-registration.
Also, as you say, most of these molecules come from publicly funded research. Why would the group funding the first set of research (and producing more molecules than industry) automatically be bad at the second?
In all, I'm not convinced that "Drug discovery is the easy part." If it was so easy, then why don't drug co's do it, and save the licensing fees?
Because licensing costs less and is risk-reduced?
People have different motivations and talents. Woz is a great computer engineer and Jobs was a great salesman. One without the other wouldn't have given us ubiquitous personal computers.
Same thing applies to organizations.
you already had to disclose the chemical formula for your drug. This paper only applies to software.
I'm not sure specifically about pharmaceutical companies, though. They may be an exception.
To me that's one of the worst things about modern pharmaceutical companies, they care more about making money than actually helping people.
Prior to RSA being patented, a lot of encryption was proprietary (and probably mostly broken), and nobody could build on top of it. Post-patent, the RSA inventors could publish details and publicize their invention, which led to the alternatives.
That's not quite correct. You won't get to look at Meta's source code, but you will be able to have people you designate look at it for you.
Here's what happens.
1. From what you can readily see of their product and from what they've said publicly about it (documentation, press releases, presentations at trade shows, etc) you suspect that they are using your patented thing.
2. You do some reverse engineering and/or experiments to get more evidence to support or refute that.
3. If you get enough evidence to convince a patent litigation firm that they could file an infringement lawsuit for you without running afoul of Rule 11(b)(3) of the Federal Rules of Civil Procedure [1] have your patent litigation firm file such a lawsuit.
4. Your attorneys ask Meta's attorneys to provide a copy of Meta's source code. Meta does so. Typically they do so by turning it over to their attorneys and their attorneys set up a place in their offices where it can be viewed.
5. Your attorneys can go to that place and view the code. You can also hire outside experts to go look at the code and write reports to be presented as evidence at the trial.
6. Your attorneys can ask Meta to provide someone knowledgeable about the code to be deposed, where they can ask your attorneys and/or outside experts have about it.
This will work both ways. Meta's attorneys and outside experts will get to see your source code too if it is relevant to their defense or counterclaims. For example they might ask for your source to your image filter using products that were released before you filed for your patent, in order to try to show that they also used your patented methods and you failed to file the patent early enough.
BTW, patent trials are usually open to the public. It can be quite interesting because a lot of internal details from both plaintiff's and defendant's products can come out. I once spectated at a patent suit where Microsoft was a defendant, concerning some technology they used in Windows.
Plaintiff was using information from Mark Russinovich's books and articles about Windows internals. Russinovich's books were basically the Bible for third parties that needed to know Windows internals. Microsoft had engineers who actually worked on those parts of Windows testify and they specifically described several errors in Russinovich's books.
This was long after I'd worked on anything that needed to use undocumented Windows internals, but back when I'd worked for a company that made Windows system utilities and was spending half my time dealing with undocumented Windows internals the kind of information at that trial would have been a goldmine.
1. Plaintiff's experts will have weeks or months to examine the code. There is a good chance they will notice it doesn't match what plaintiff figured out when they were doing their pre-lawsuit investigation to determine if there was enough evidence to support suing.
2. Plaintiff doesn't just ask for a copy of the code. They will ask for things like engineering notebooks kept during development, earlier versions, and various other things related to the development of the alleged infringing product. Facebook would probably have to fake quite a bit more than just the current product code.
They might claim they don't have any of that other stuff, but if they make/keep that kind of thing for their other products that is going to look pretty suspicious.
3. Plaintiff is going to depose individual engineers who were involved with the product, and probably also call some of them to testify in court. If they lie under oath (and depositions are under oath just like in court testimony) they could personally be charged with criminal perjury.
This is not one of those things where the employer is the one that gets punished. That falls squarely on the engineer.
An entire category of bullshit jobs would be created to write "source code" that met the regulatory requirements but had little connection to the actual code deployed in production. This code would largely be derived from the claims, and, like much patent language, be crafted to be as vague and general as possible. Most of this work could be automated by ChatGPT, as no insight is required. Another class of bullshit jobs would be created to interpret and analyze the code, as it's outside the skill set of lawyers and examiners.
Any code published as part of a patent would immediately be anti-open source, as people actually creating things would be strongly discouraged from even looking at it, as doing so would support "willful infringement." The average level of code quality would be such that nobody would want to, anyway.
There's lots that could be done to make the patent system more beneficial to society (including, in my personal opinion, dropping software patents entirely), but I don't think a code requirement would be particularly helpful.
A patent makes claims, patents should be shown to work, code is a proof of that. They are computational existence proofs. We should hold our systems to higher standards of rigor.
You are shooting something down for how it could possibly be subverted, rather than do that, how about we think of ways that it could be made less corruptible? Is this not a pro-fatalistic stance?
Not only should the patent require the code, the product should require the code to be held in escrow. And for safety critical systems, the formal checked models should be presented in a way the proves that the bits on the system were generated from the formally checked code.
Would it fix all problems? Hell no! Would it prevent some entities from innovating in the market, hell yes!
As it currently stands, you don't even have to have a working system. Corporations are effectively patenting problems, not solutions. Patents themselves are a worthless way of transferring knowledge, this is what needs to change.
But that isn't a reason to not build them, and in this case, the effort is to repair an already broken system that has been subverted. If creatively deconstructing it isn't an option, we have to add more "features" and this case the added constraint of functioning code.
We can disagree all day what functioning code means, but the goal is worthy and should be explored.
How we apply policy that meets the intended goals and isn't gamed is the problem for law makers. Good thing we have spirit as a backstop and not just letter. A certain hedge fund and a billion dollars in AI and civilization could collapse.
Right now, the inmates are running the patent system, if we value everyone's ability to participate in innovation, we need a way to reduce BS patents and make them intrinsically more valuable as a form of knowledge transfer.
For the same reasons TFA is making the argument "No Source Code == No Patent."
> If you forced every inventor to have to make their invention, it'd be a pro-industry burden that diminished the capacities of any smaller organizations or inventors.
If an inventor never made their invention, are they an inventor? IMO no, they're just an "idea guy" at that point.
"make their invention" is the law; it's the RP in ARP and CRP. You can't claim a new antibiotic without giving the formula. 112 rejections are common in patent prosecution.
I then proceeded to spend the next hour telling the lawyers that there is nothing novel in our system, that all of the connections and features would be obvious and intuitive to anyone familiar with the trade of software engineering, that all technologies in the system are common practices, and just in general refusing to let them reframe it in legalese to make it sound like something it wasn't. I could tell they were getting frustrated by the end, but it was one of the best hours I have ever spent. I'm proud I didn't let a megacorp patent standard software practices.
But I tried not to be a jerk at all. Every time they asked me about a different aspect of the system, I could just say something like, "We used standard software engineering techniques using an algorithm built in to [common language] to sort things here. It's a fairly common approach to this sort of problem." After a statement like that, the patent lawyers had very little to pull on. They'd move on to another aspect and I'd give a similar answer.
You can disagree that software concepts can be patented (I tend towards this view), but you can't have a patent that only protects a particular implementation. That would be copyright.
The idea is worth something but so is the implementation because ideas are generic and the more specific you make them, the more you actually define an implementation, in the physical world at least.
If your rocket does work, then yes being able to lock everyone else out of it for decades is the entire point.
But once those decades are over, anyone else can copy your idea, which has been documented for all of eternity. There's an almost endless list of inventions before patents that were never made public, and nobody knows how they worked.
Unfortunately, that's the idea for how patents are supposed to work. In the real world what we have is patent trolls.
Exactly, a patent can't be just for "an idea" which is intrinsically generic but rather for the actual implementation with details. Patenting ideas would probably be the very definition of an overly broad patent.
No, because the disclosure has to enable a person of ordinary skill in the art to practice the full scope of the invention. This is called the “enablement” requirement.
Is it, though? Like the lightbulb patent was for the specific way of making a lightbulb, not on "something that makes light from electricity".
In any case, a patent will be drafted to try to cover as many possible implementations of the thing or method.
>"something that makes light from electricity"
So yeah probably too abstract to be patentable. However something like "something that makes light from electricity by passing it through a filament" might be enough to make it not abstract.
No, you can't patent "drug that alleviates headaches", you can only patent a specific formulation, and a competitor is still free to create any other formulation that achieves the same result.
Edit: That is to say, I think you agree in principle, and you're finding points of disagreement in the wording that were not intended.
This kind of super-broad patent enforcement happened with 3D printing, and is still happening with e-ink technology. In both cases, the patents didn't have centuries of prior art covering what would otherwise have been entire industries, and could protect their monopolies for 20 years.
"mincing words" is a good description of law in general. That's no criticism at all.
It's been attempted. They invent and patent X as a "method to do Y", and then try to sue others who do Y via some means other than X.
My point was that the original description of patents was not precise enough and implied that you could patent Y rather than X.
Still, patent claims are never as broad as "drug to alleviate headaches" or anything similar.
No, that's not true. A patent is on an invention, not an idea.
You patent an invention, not an idea. Section 112 says you have to identify the Best Mode of making your invention. Patents are also careful to say "in one embodiment, the invention..."
> you can't have a patent that only protects a particular implementation. That would be copyright.
Yes, you can. Claims are drafted to not be limiting, but it can happen.
I was getting at you don't patent the code itself (which has copyright protection).
A patent becomes worthless when it is invalidated after you try to enforce it. The enforcement proceedings are the real legal test of a patent. The mere granting of a patent doesn't prove validty. Contrary to what lay people usually expect.
The reasons for having this sort of system are mostly diplomatic, economic, and administrative, so far as a I understand.
A) The patent system is an international patchwork B) For obvious reasons testing all inventions comprehensively is extremely time consuming. It would increase the cost to register patents. C) It's far more efficient to let the market sort it out by invalidating patents on sky castles when someone tries to enforce them.
It was probably this more than anyone else that made me realize that Patent Examiners are really, really good at their jobs and not just rubber stamps, as the software community seems to think.
that's true, but the 112 section of the statute says you have to prove that you "have" the invention, with a Written Description and an Enabling specification. Examiners do make 112 rejections all the time. This merely implements the intentions of 112.
Having gone though the Patent process several times, I have observed the following:
1. The company president was primarily focused on locking down the business IP anyway possible. This also bumped the valuation by around $300k each time.
2. People will clone low-hanging fruit, and simply ignore patent trolls in places Software Patents aren't valid. Note, going after users for dimes is a bad business model.
3. The author/programmer usually solves some key feature for a business use-case, and submits the draft to an IP legal firm. First-to-file patent systems essentially get flooded with business-intelligence cloners, and novelty can become rather illusive.
4. The lawyers and business owners try to strip any sensitive information, create the most generalized abstract interpretation of the IP, and convert English into obfuscated legalese. People want to capture a market, sue savvy cloners, and seize competitors inventory which _may_ violate IP.
5. The entire Patent is basically just describing the context of how the claims section is to be interpreted, and how the IP is related to other IP class areas. Note, generally this also means only the claims section itself at the end of the Patent is actually enforceable.
6. In a global economy, the cost to enforce IP is beyond the reach of most startup budgets. Thus, overly aggressive business owners tend to go bankrupt trying to imitate a large firms policies, and discover most funding channels will give a hard "No" to chasing Patent rights.
7. The best plans don't require secrecy, offer economic incentives encouraging competitor cooperation, and punish cloners in a tit-for-tat model.
8. While technically it was only a few thousand dollars to challenge pending Patents, as far as I can tell it is a very rare occurrence due to the volume of works.
Personally, I think once source-code is published it should fall under copyright , and invalidate current/future associated Patents. =)
What do you mean with this?
Some people think anything humorous is disrespectful.
This would also get closer to a right to repair software.
And that's not all... there is one elephant left in the room: code signing keys. Like, what is it worth when you have the source code and the build environment, but the computer running it is locked down hard by an actually capable TEE? For now, a lot of these can be bypassed by the arcane art of power glitching, but that won't be the case forever - and some console makers, like Microsoft or Sony prior to removing Linux from the PS3, took away the incentive many elite hackers had to make homebrew possible so it's a good question if there will ever be an Xbox Series X modchip.
https://sfconservancy.org/blog/2021/jul/23/tivoization-and-t... https://sfconservancy.org/blog/2021/mar/25/install-gplv2/
I really like this proposal but it lays bare the fact that the invention lies entirely within the software itself. When the patent industry has been pretending for years that the "invention" is a hardware thing that could, optionally, use software.
The Facebook patent whose diagram I showed was all filed after the Alice decision that was supposed to clear out bad software patents.
Ugh, this is so true. We (US) stopped trying to solve problems after we created one of the biggest problems with the war on drugs. That was the last time we tried to solve anything. Everything else has been the quote. A debate to raise funds or add "expertise" feather in the cap so they can charge $500/hr to discuss it.
EDIT: Down voted to suppress the truth.
A) One import aspect not hightlighted about the patent system is that it's intended to only verify the authenticity of a patent (substantially) if a conflict arises when the holder tries to enforce it. The checks to register a patent are comparatively minimal and formal.
B) If companies file an ARP sample dated to the time they filed the patent they have already proven that they 'built' the software idea which the patent covers. The point of the patent is then to describe the application is sufficient detail that it may be enforced.
If it is challenged the patent holder will have to prove his ARP meets the requirements of the patent. If it's too basic or the patent is too broad, the patent may well be invalidated.
C) I am curious why there is so much emphasis on CRP patents. Are most software patents are CRP patents?
We mentioned source code in a position paper on patent policy I helped write a number of years ago, https://www.ftc.gov/sites/default/files/documents/public_com...
--- For software, such disclosures are particularly poor, as the October 2003 FTC report on The Proper Balance of Competition and Patent Law Policy [7] notes: “Several panelists discounted the value of patent disclosures, because the disclosure of a software product’s underlying source code is not required.”
[7] http://www.ftc.gov/os/2003/10/innovationrpt.pdf ---
The best counterargument I can make is that applicants would provide obfuscated or fake source code, just like the many other ways they cheat the application process.
Still better than not requiring it. I liked the point that most counterarguments are effectively arguments that the patent absent the source doesn't constitute disclosure.
> Believe it or not, many of the examiners in software have Computer Science backgrounds and are perfectly capable of this.
I assume it's still the case that you need an appropriately shaped engineering degree, which does exclude many CS people.
But absolutely it wouldn't be to surprising to see an examiner try to run the code. Even if they're not CS people they're technical and smart and would figure it out quick enough.
I've yet to see a case against software patents that doesn't also apply to all other modern patents rather than being compared to some easily comprehensible mechanical contraptions from the 1920s.
So, your view might well be correct.
What I'm saying is that if you make an argument either way for one specific domain you should consider whether it's really an argument about that specific domain or if that's just the only one for which you thought this through.
People in tech are used to treating tech as a special case so it's worth considering whether you've really found the exception or just found out that you actually disagree with the rule. Sure, software patents seem special if you contrast them with ye olde fashioned mechanical device but that's arguing against a strawman.
Read the automatic windshield wiper patents described in Flash of Genius. They provide circuit diagrams and explanations of why the wipers move faster when there's a lot of rain.
============== There are four main sections of the U.S. statute governing patentability, and you only ever read about the first and third:
101: Patentable subject matter (what you can patent)
102: Anticipation (someone else invented or described it)
103: Obviousness (two or more references, taken together, describe it)
112: Specification (here’s the statute)
Most of what you read is about 101: is software a “thing” or is it a “mathematical formula” and thus not patentable?
Last week's article was more of an anti-software-patent screed, and ended with a vague statement about copyright. I got some feedback and realized the copyright part looked thrown in (which it was), and I took it out.
That doesn't mean that copyright isn't well worth discussing, but I haven't spent as much time on that part of the law. This week's article is more focused on a specific issue, which would make a huge difference in the patent landscape.
AMA.
On the other hand, if solo inventors do not know how to monetize their invention, they should give/sell it to someone who will know, not to milk the idea it for decades.
That's partly what patents are for. So a small inventor can sell a technology without getting reverse-engineered in the sales process. If they do get reverse-engineered, then there is a whole new set of patent customers who will buy the patents in order to sue over them.
The best-mode requirement was pretty much neutered as part of the America Invents Act, because:
1. USPTO patent examiners normally don't inquire about best mode unless there's a pretty-obvious failure; and
2. in litigation about an issued patent, "failure to disclose the best mode shall not be a basis on which any claim of a patent may be canceled or held invalid or otherwise unenforceable ...." (35 U.S.C. § 282(b)(3)(A), at https://www.uspto.gov/web/offices/pac/mpep/mpep-9015-appx-l....)
Code only becomes relevant if the "invention" amounts to an algorithm. But algorithms aren't eligible for patents are they? Well, they aren't here. So ironically, if you need to provide code to support your patent application, then you've proved you aren't eligible for a patent.
The source code provides the Written Description and Enablement requirements.
Having said that, a jurisdiction such as the US that allows software to be patented, already doesn't require source code as part of the patent application/regsitration/grant process.
Good luck trying to invalidate every active software patent existing as on date with this clause. Ain't gonna happen!
If source code is akin to a machine whose inner workings can be patented, then data is akin to a physical object. A physical object could be a machine or it could be a creation made by a machine or both. Data is similar - it can be made by software or it could be software or both.
Is this the right way to think about how the legal system views software and data?
PS I’m in the US but interested to hear how this may vary from one country to another.
Something like what would come out of a clean room reverse engineering effort should be good enough.
> This is exactly what the PTO examiner would do. Believe it or not, many of the examiners in software have Computer Science backgrounds and are perfectly capable of this. It is not black magic anymore.
No Source Code => No Patent