So how does something like this patent on multiply-linked lists happen, if the USPTO does even the most cursory prior art search on its own? The rules say one thing, the reality says another.
That is the only solution? You can not think of any other possible solution?
Law is the code we live by. You don't fix code this broken. You rewrite it.
As Daniel_Newby said: "the patent office checks if the patent is substantially similar to previous patents".
They do a check, and a thorough one, just not in the same places you do. Remember that they are not programmers.
> Law is the code we live by. You don't fix code this broken. You rewrite it.
Oh please. A simple solution would be requiring them to hire an expert in each field to double check patents. This would cost too much which is why they don't. But it's a simple solution.
PS. In the real world no one rewrites broken code once it gets used a lot. You fix the broken parts. The only time you rewrite code is before many people use it, or in the new product (which is basically the same thing).
PS. In the real world no one rewrites broken code once it gets used a lot. You fix the broken parts. The only time you rewrite code is before many people use it, or in the new product (which is basically the same thing).
The 2.6 line of the Linux kernel provides an anecdotal counterargument to this. The kernel team managed to gradually rewrite significant portions of the kernel without ever having to enter a development-only phase. If we could find some way of applying the tools that make this possible (diff, git/DVCSes, peer review, integration tests[0], etc.) to the legal system, maybe the world would be a better place.
The closest thing I'm aware the legal world has now, and it's a far, far cry from what we have in software, is having as much as possible be specific to separate, local governments, so if an individual state comes up with a good solution to a problem, it can be applied elsewhere.
[0] Imagine if all prior court cases were automatically tested against any changes to the law, with changes in outcomes flagged for public review.
Actually I would the kernel a confirmation: The fixed the broken parts gradually without ever throwing everything away and starting over.
[0] would be cool, but probably not possible. You get a court case when the law is ambiguous, or the facts are not known. Neither of which can be automatically tested.
That is the only solution? You can not think of any other possible solution?
Law is the code we live by. You don't fix code this broken. You rewrite it.