Why Real Programmers Don't Take The USPTO Seriously: Doubly-Linked List Patented

from the oh-come-on dept

It’s pretty difficult to find software engineers who take the patent system seriously. There are a few, but it’s still pretty difficult. For the most part, they recognize that code is just a tool: you can make it do all sorts of things, given enough time and resources, but that doesn’t mean that doing any particular thing in code is an “invention” that no one else should be able to do. And then, sometimes, they discover that something pretty basic and old has suddenly been given a patent. Brad Feld discusses his discovery that doubly linked lists were apparently patented in 2006 (patent number 7,028,023):

The prior art was extremely thin, only went back to 1995, and didn’t mention that entire computer languages have been created around the list as a core data structure.  One of my first Pascal programming exercises in high school (in 1981 — on an Apple II using USDC Pascal) was to write a series of operations on lists, including both linked and doubly-linked lists (I always thought it was funny they were called “doubly-linked” instead of “double-linked” lists.)  Anyone who ever graduated from MIT and took 6.001 learned to love all varieties of the linked list, including the doubly-linked one.  That was 1984 for me by the way.

Ironically, Wikipedia had great entries — with source code no less — about both linked lists and doubly-linked lists.  The linked list history goes back to 2001, well before the patent was filed.

Another day, another reason to question why software is patentable at all — and to question who approves these kinds of patents.

Filed Under: , , ,

Rate this comment as insightful
Rate this comment as funny
You have rated this comment as insightful
You have rated this comment as funny
Flag this comment as abusive/trolling/spam
You have flagged this comment
The first word has already been claimed
The last word has already been claimed
Insightful Lightbulb icon Funny Laughing icon Abusive/trolling/spam Flag icon Insightful badge Lightbulb icon Funny badge Laughing icon Comments icon

Comments on “Why Real Programmers Don't Take The USPTO Seriously: Doubly-Linked List Patented”

Subscribe: RSS Leave a comment
116 Comments
Cheong says:

IT Court

Perheps we should have a court / patent department specially for technology related things…

The judge / officials should have satisfactory background in dealing with modern technologies. And if there are juries, briefing should be provided by specilists to explain what the case is about and what consequences it may have.

Hope that it’ll make less non-sensible judgement of the kind.

Anonymous Coward says:

To get technical

A doubly-linked list is just one that you can traverse forward and backward. This patent is for a multiply-linked list which you can traverse in any pre-defined order. The douby-linked list is one type of a multiply linked list. Nevertheless the patent is still stupid. Multiply-linked lists have been around longer than I have.

Spaceman Spiff (profile) says:

Re: To get technical

The Art of Computer Programming, Vol. 3, Searching and Sorting by Donald Knuth, Copyright 1973. Sections 6.2.2-6.2.4 have numerous examples of multiple linked lists (binary & multiway trees) and discusses them in detail. In fact, he gets into the discussion of a degenerate binary tree being in effect a doubly-linked list…

Mike C. (profile) says:

Gee... thanks....

As a programmer, I now have to dislike you because I am now aware of the patent. I guess this means that my company division with 300+ programmers can no longer use doubly-linked lists in any of our code…. greeeaaaaat.

Can someone get the EFF on this… I’ve got an idea for an app I want to start working on in 10-15 years… 🙂

/patent system is a joke

Glurbie says:

Crap!

I can’t tell you how many programs I’ve written using this incredibly advanced technology. Do I have to go back and pay royalties now? Maybe instead I should go through my old Graph Theory textbook to see if I can get a few defensive patents of my own. No one has patented arranging a linked-list as a bipartite graph yet have they?

TriZz (profile) says:

This is crap

My business partner is a web developer by day and does some innovative stuff. He was researching once how to get Flash to do something…and he couldn’t find anything. Posting on forums led him to a bunch of “you can’t do that” responses.

So, he essentially made it happen. I wouldn’t call it inventing…but it certainly hadn’t been done before. Figured it out is probably a better term.

His response was to go into that same forum and post the code for everyone.

He did this, not to be a braggart, but rather to give back to the community. He wouldn’t be the web developer that he is today if people hadn’t helped him and freely shared code when he was first starting out. And this is his way of showing his appreciation. It could spark someone else to “figure out” how to do other innovative stuff, thus progressing the field.

If only we all thought like that…

Anonymous Coward says:

You should really fix the subject

As noted above (by another AC) this is a patent on multiply-linked lists, not doubly-linked lists. (It doesn’t talk about any of the optimizations for doubly-linked lists.)

With many CS patents, the question appears to be more — who’s the first person to have a reason to do this? — but in this case, unless it was purely an abuse of the PTO, it seems fair to guess that some young programmer independently realized that there are applications for which a multiply-linked list is an appropriate data structure.

Either way, it’d be an argument against patents for software.

The wiki version prior to submission of the patent (which was Sep 26, 2002) covers only a simple explanation of linked lists — so the history for that document isn’t prior art. OTOH, the current version links to the patent and notes the techniques were in use for decades before the patent was filed.

Anonymous Coward says:

Re: Re: You should really fix the subject

I didn’t say it wasn’t obvious — just that I’d guess a young programmer (who hadn’t been taught the data structure) encountered such a situation and was happy with this after they came up with it as a solution.

Though personally, I haven’t had any applications where a multiply linked list seemed appropriate — there are other ways to store multiple paths through a list; and maintaining a multiply-linked list (additions, deletions, etc) can be expensive, depending on various factors.

angry dude says:

SOFTWARE = HARDWARE

yes, punks

write it on your little brainless foreheads, lemmings

it is impossible, legally or otherwise, to separate software from hardware implementation – they are two sides of the same coin

It’s just a lot easier to change “sofware” running on e.g. general-purpose CPU as opposed to changing e.g. ASIC design

BTW, what you call “software patents” date back to those old times when computers didnt exist …

How abot that, little idiots ?

angry dude says:

Re: Re: Re:3 SOFTWARE = HARDWARE

Clown School ?

Ha… I guess you can call it clown school

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

I still remember some pretty crazy things going on in the student dorm back then

Esp on April 1, we had a huge all campus all night discoteque followed by some wild wild stuff…

After that it was all downhill, fun-wise

Get ready for Fools’ Day, punks !

Ronald J Riley (profile) says:

Re: Re: Re: SOFTWARE = HARDWARE

“Gosh, how I hate this f@#$%^& blog”

You should pity them.

This is where all the programming drones hang out. The kind who day after day crank out repetitive unimaginative code. Because they are not capable of an original thought they think that they should be free to copy those who are. That is all they know, copy and copy some more. Think how unimaginative they are.

The problem is that 99% of the programming community is like this. They are equivalent to the poor slob who stood between a pallet of parts on a production line and loaded those parts on a conveyor all day long, day after day, week after week for 20-30 years.

Ronald J. Riley,

I am speaking only on my own behalf.
Affiliations:
President – http://www.PIAUSA.org – RJR at PIAUSA.org
Executive Director – http://www.InventorEd.org – RJR at InvEd.org
Senior Fellow – http://www.PatentPolicy.org
President – Alliance for American Innovation
Caretaker of Intellectual Property Creators on behalf of deceased founder Paul Heckel
Washington, DC
Direct (810) 597-0194 / (202) 318-1595 – 9 am to 8 pm EST.

jason says:

Re: SOFTWARE = HARDWARE

Bullshit. Software does not equal Hardware.

Within logic and set theory you can prove the concept of a general purpose machine to do computations. That is the basis for the computer. The set of all possible computer programs is the set of all programming statements that can be put together to form them. This is why they’re called computer LANGUAGES. Writing programs becomes then more like writing a book than inventing. And books (and software) are COPYRIGHTED (or copylefted 😉 but are not inventions that are patentable.

This should be clear to any honest computer scientist. The hardware can be patentable because it is a literal tangible thing, but as many hardware companies have found out (hello IBM) patenting your bus and other internal constructs make your machine design less desirable and loses you market share. Thats not to say that things like chip fabrication procedures shouldn’t be patentable, but even then that kind of thing is probably better off as a trade secret.

At the end of the day, if push came to shove, I could maybe be convinced that an entire computer language might be patentable, as it creates the context from which all programs written in it will come into being. But then, how many people would learn and use a computer language that enforced ownership over every program you would ever create.

Software patents are bad, horrendously bad.

Ronald J Riley (profile) says:

Re: Re: SOFTWARE = HARDWARE

“Bullshit. Software does not equal Hardware.”

Yes it does. You just are not knowledgeable enough to understand it.

Ronald J. Riley,

I am speaking only on my own behalf.
Affiliations:
President – http://www.PIAUSA.org – RJR at PIAUSA.org
Executive Director – http://www.InventorEd.org – RJR at InvEd.org
Senior Fellow – http://www.PatentPolicy.org
President – Alliance for American Innovation
Caretaker of Intellectual Property Creators on behalf of deceased founder Paul Heckel
Washington, DC
Direct (810) 597-0194 / (202) 318-1595 – 9 am to 8 pm EST.

Steven (profile) says:

Re: Re: Re: SOFTWARE = HARDWARE

I find it interesting that your only argument in all of the ‘software = hardware’ threads amount to, ‘everybody here is too stupid to understand’. I also find it amusing that you have replied to each response in this thread but mine.

You seem to have no valid arguments and serve only to fling insults. Once again I understand that I am just feeding a troll.

Steven (profile) says:

Re: SOFTWARE = HARDWARE

Would it be possible to turn any software into hardware? Yes. Does that mean software should be patentable? No.

Why? Because the reverse is not true. Not all hardware can be done in software. If it CAN be done in software, it should not be eligible for patent protection. If it requires specific hardware then that hardware could be considered eligible for a patent if it meets patent requirements.

Although I personally think patents are a drain on our society.

My personal solution. Make patents and copyright last one year. Wait two years. If we can say that sufficient innovation/creation is not happening increase the appropriate term by one year (wait two years, rinse, repeat). If extending by a year has no effect, or a negative effect, reduce by two years.

Anonymous Coward says:

Re: Re: SOFTWARE = HARDWARE

err, you can certainly emulate any digital computer system in software, some things are just hard… That doesn’t really change the fact that BOTH things are mathematical constructs…

Hardware is different in that although at a high level it is equivalent to software how you deal with the real world means you can make it faster/better somehow, like if you figured out how to make logic gates that switch 10x faster you could patent that. But the logic could stay the same and just be faster… the LOGIC is the part of hardware that is like software but hardware design is a lot more than just the logic.

Anonymous Coward says:

Re: SOFTWARE = HARDWARE

Software is not hardware. Everything done in software can be done with a pencil, paper, and a whole lack of social life. This is to say that without hardware doing quite a number of tasks is computationally infeasible (and impractical) but can be done. Honestly, the entire basis of Computer Science rests on this fact. Saying otherwise is being intellectually dishonest.

Ronald J Riley (profile) says:

Re: Re: SOFTWARE = HARDWARE

If you had a broader background you would understand that hardware and software solutions are traded off all the time. As computing power has increased the scope of software in lieu of hardware solutions have also increased.

Ronald J. Riley,

I am speaking only on my own behalf.
Affiliations:
President – http://www.PIAUSA.org – RJR at PIAUSA.org
Executive Director – http://www.InventorEd.org – RJR at InvEd.org
Senior Fellow – http://www.PatentPolicy.org
President – Alliance for American Innovation
Caretaker of Intellectual Property Creators on behalf of deceased founder Paul Heckel
Washington, DC
Direct (810) 597-0194 / (202) 318-1595 – 9 am to 8 pm EST.

Anonymous Coward says:

Re: Re: Re: SOFTWARE = HARDWARE

I do have a broad background, and I do understand that hardware and software solutions are traded off all the time. However, that doesn’t mean that that software is hardware.

For example the algorithm for AES (Advanced Encryption Standard) can be done in software or hardware. Further that same algorithm has been done in pencil and paper. It’s mathematics.

Lawrence D'Oliveiro says:

Re: SOFTWARE = HARDWARE

angry dude sputtered:

it is impossible, legally or otherwise, to separate software from hardware implementation – they are two sides of the same coin

If that’s true, then does that mean, if software can be patented like hardware, then hardware can be copyrighted like software, too?

If they’re the same thing, then why do they need two kinds of legal protection, both patent and copyright? Surely one is enough?

MRK says:

The problem is not patents for Software, the problem is the USPTO routinely fails to check for obviousness and searching for prior art when it comes to software.

Software patents that are overly broad should never be granted, and the sad fact is the USPTO office has been granting overly broad, vague patents in all disciplines for far too long.

If someone were to write an specific algorithm that solves a particular problem, that exact algorithm is patentable. But only that algorithm. If someone can come up with another means of solving that problem it should not violate the patent.

The argument that “All software is math, and you cannot patent math” does not apply. Simply because all sciences can be broken down into mathematical formula if you go far enough. For example Chemistry is really just applied physics and thus mathematics, but no one would seriously argue that the Pharma companies should not be able to patent their latest drugs.

If one wanted to make the argument to get rid of all patents, that perhaps society no longer needs them, I could agree with that. But there is no reason to exclude software over other types of patents simply because the USPTO isn’t doing its job properly. The problem is with how USPTO grants patents (read: far too loosely). Not software patents specifically.

Anonymous Coward says:

Re: @MRK

Could you then point out some good software patents which are examples of why we shouldn’t abolish software patents? As in — a patent which leads to useful advances.

Generally the companies doing interesting software choose to handle inventions as trade secrets.

Software patents are an unmitigated disaster: no one in the software industry uses them to find better solutions, they’re just used as a tool for litigation.

I’m not convinced that better management at the USPTO would improve matters — you’d need to reach the point where it was often faster and better to look for a patent than to solve the problem from first principles. (Assuming the goal of patents is to advance the useful arts and sciences, rather than benefiting established companies at the expense of new ones.) And given that patents don’t generally explain the problems for which they are inappropriate, you’d often wind up with a suboptimal solution (not that that’s different from the status quo).

Copyright for existing solutions (software libraries) is a different matter — there’s a lot of benefit in not having every company re-implement the same algorithms with their own new bugs — but software patents aren’t software, just a blueprint which would need to be filled in anyway.

MRK says:

Re: Re: @MRK

Compression algorithms, and the Fast inverse square root come to mind what would be “Good” software patents. Google/Wikipedia either of those turns up interesting finds. I simply don’t have the time to dig through the USPTO archives to find specific examples.

I’m not saying Software Patents have not been a total disaster. I simply assert that the problem lies in how the courts have allowed Patent Trolling to run amok. And the USPTO granting obviously stupid patents.

The system needs reform. But I think tossing software patents out would be throwing the baby out with the bath water.

angry dude says:

Re: Re: Re: @MRK

RSA patent or Karmarkar patent are the classical examples of good “software” patents (promoting progress A LOT)

Mind you, RSA patent was framed as hardware patent – you can build a specialized chip for doing this

same with speech compression patents used for cell phones

Build a custom ASIC and voila – you have a piece of harware

Lawrence D'Oliveiro says:

Re: Re: Re:2 RSA Patent

angry dude sputtered:

RSA patent or Karmarkar patent are the classical examples of good “software” patents (promoting progress A LOT)

Actually, the patent itself promoted no progress at all. The most popular applications of RSA were in Free Software on the Internet (PGP, OpenSSL etc), where royalty deals don’t work.

RSA even released the patent into the public domain earlier than they had to. If the patent really was “promoting the progress”, they would have hung onto it for the full duration. After all, more duration, more progress, right?

greg.fenton (profile) says:

Re: Re: Re: @MRK

Why on earth do you think that mathematical formulas “good patents”? Seriously?

Where do you draw the line between a “hard” algorithm vs. other hard problems such as application scalability?

Yesterday’s compression algorithm was “tough” yesterday and extremely trivial today. Did Huffman encoding deserve a patent?

If someone ever solves an NP-Complete problem, do you feel they will deserve a patent on the solution? Written up the right way, that patent would block/tax anyone solving all other NP-Complete problems.

angry dude says:

Re: Re: Re:2 @MRK

“Did Huffman encoding deserve a patent? “

You are joking, right ?

Of course it did

As well as LZW compression, LPC or CELP coding for speech, MPEG encoding for audio etc.

Those are kinds of “software” patents that promote progress and improve quality of life, including your life, little retarded fella

Anonymous Coward says:

Re: Re: Re:3 @MRK

Saying that an algorithm, piece of code or software, or mathematical formula promotes the progress and improves quality of life is far different than saying that a patent on such a thing promotes the progress and improves the quality of life. A patent on such things harms the progress and reduces the quality of life being that monopolies harm the economy and give the monopoly holder less incentive to innovate and prevents everyone else from innovating on said invention.

Anonymous Coward says:

Re: Re: Re:5 @MRK

Er, did you miss the bit where Huffman coding was NEVER patented? And some of the most important stuff in CS doesn’t even involve stuff you could patent even under the current patent system (because it’s a proof and not an algorithm).

Go look, most of the most important algorithms ever invented were never patented, so please explain why the people who created them need a patent motivation.

Huffman coding is still one of the most widely used compression algorithms, it is a part of a very large number of video and audio codecs, and all sorts of other stuff, then there’s LZMA, and bz2 both of which were based on things that were never patented (AND they are open source so not only is there a good description of the algorithm out there, the actual implementation is disclosed).

Alan Turning and Alonzo Church didn’t need patents to write some of the most important, foundational, papers in computer science. Claude Shannon didn’t patent anything when he basically created information theory (on which all compression is based at some level)

Anonymous Coward says:

Re: Re: Re:2 @MRK

err, we DO know algorithms for NP complete problems, it’s just that they tend to take an awfully long time to run… and there’s a million dollar prize if you come up with polytime algorithm for one of the problems (Most computer science people have serious doubts that such an algorithm exists, you get the prize for proving it doesn’t too)

Ronald J Riley (profile) says:

Re: Re: @MRK

“Generally the companies doing interesting software choose to handle inventions as trade secrets.”

Which means that they do not advance the art by teaching. It also means that when someone does come along and teach with a patent that the idiot who used trade secret is toast, rightfully so.

Ronald J. Riley,

I am speaking only on my own behalf.
Affiliations:
President – http://www.PIAUSA.org – RJR at PIAUSA.org
Executive Director – http://www.InventorEd.org – RJR at InvEd.org
Senior Fellow – http://www.PatentPolicy.org
President – Alliance for American Innovation
Caretaker of Intellectual Property Creators on behalf of deceased founder Paul Heckel
Washington, DC
Direct (810) 597-0194 / (202) 318-1595 – 9 am to 8 pm EST.

Steven (profile) says:

Re: Re: Re: @MRK

I know I’m just feeding a troll, but…

I challenge you to find a single ‘real’ programmer who was ever taught via patents.

“It also means that when someone does come along and teach with a patent that the idiot who used trade secret is toast”

Hmm… Is that because the one that has the patent will now sue the one that did the original innovation? Wow, that sure sounds fair, right, and just. (should I put a sarc mark here?)

greg.fenton (profile) says:

Re: Re: Re:2 @MRK

Hmm… Is that because the one that has the patent will now sue the one that did the original innovation?

Of course, it’s even worse than that when it comes to software. For the most part, the software patents we’re seeing being rewarded aren’t due to their genius, but merely for the fact that the applicant was the first to the USPTO.

Software is still a young enough field that just about every few days a new branch opens. Patents will (does) massively stiffle innovation in these fields.

Real programmers know this.

Not sure why RJR is even commenting on software patents. By his own philosophy he should not since he doesn’t have any software patents (and he isn’t a real programmer).

Anonymous Coward says:

Re: Re: Re: @MRK

“Which means that they do not advance the art by teaching. It also means that when someone does come along and teach with a patent that the idiot who used trade secret is toast, rightfully so.”

Except we have patents in place and trade secrets still exist. Microsoft has many patents yet their software is still closed source. There is little to no evidence that patents have eliminated or reduced the use of trade secrets.

McBeese says:

Re: Re:

@MRK. Disagree. I think there are at least three problems: 1) The USPTO is incompetent in the execution of their mandate, 2) software structure should not be patentable, any more than a paragraph structure or an exclamation point within a work of text is patentable, and 3) too many supposed ‘software programmers’ only work with the highest and most simple languages and tools, so concepts like linked lists, recursion, etc., are new and foreign to them.

MRK says:

Re: Re: Re:

Err. My post does not conflict with any of your three points. I clearly stated the USPTO has dropped the ball on this one. I never said software structure should be patentable. And while you can blame poor education of the current crop of computer programmers, its still the USPTO office’s job to separate out the good from the bad, which they clearly have failed at.

So we are in agreement!

JEDIDIAH says:

Re: Patent trolls are the real theives

Much too much of this stuff falls under the catgory of:

Give me a description of the device and I will have an undergraduate computer science class create an implementation for you. It really is a case of someone else stealing from me the product of my own intellect.

I can stumble upon an entire idea and implement it on my own without realizing someone else has already done it already (patented or not). This is very common in software. It’s not terribly burdensome either. It’s certainly a lesser burden than being in a minefield of patent trolls.

Spaceman Spiff (profile) says:

Re: Patentable software

I disagree with Anonymous Coward (at least one of them) that software should not be patentable. I say that because I hold one that I think is worthy of it, and to blanket agree would be at best disingenuous. In general however, most software patents are “patently” bogus! If the USPTO would subject software patent applications to the same rigor they subject hardware patents (non-obvious solution to a problem, no relevant prior art, etc), then the system would not be so FUBAR. Unfortunately, that situation does not seem to be in the stars.

In the process of getting my patent, I had a wonderful opportunity to see how screwed up the US Patent Office is. It took 4 years to get granted, during which time the examiner was citing totally unrelated patents as prior art reasons why it should not be granted. I don’t know how much legal time was wasted on the process since that was handled by the company I worked for at the time. In any case, from the examiner comments on the rejections I could tell that he/she was clueless about what we were actually trying to patent – a means to extend classes and behavior in compiled (binary code) systems by specification and not programming – a key component to truly adaptive systems.

angry dude says:

Re: Re: Patentable software

4 years to grant ?

Lucky you

How about 4 years til 1st office action ?

“If the USPTO would subject software patent applications to the same rigor they subject hardware patents (non-obvious solution to a problem, no relevant prior art, etc),”

Ua kidding right ?

Perhaps you don’t know but a simple ethernet plug has some 600 patents on it

Hardware patenting is also screwed big time

Craig B says:

Let's call the USPTO

The patent:
http://www.google.com/patents?id=Szh4AAAAEBAJ&printsec=abstract#v=onepage&q=&f=false

The primary examiner’s phone number (John Breene):
http://www.uspto.gov/web/patents/contacts/tcmgrs.htm

John Breene, 571-272-4107, Supervisory Patent Examiner of Art Unit #2162. We should all give him a call and ask what he was thinking when he allowed this to go through, in the 4 years (2002-2006) he had to examine it.

Ronald J Riley (profile) says:

Piracy & Fairness Coalition Members Sponsorship

“This post is part of the IT Innovation series, sponsored by Sun & Intel.”

REAL programmers DO take the USPTO seriously. It is the REAL programmers who actually invent something who file for patents and second and third rate ones and their corporate counterparts who while about the patent system.

Mike, this patent is on a VERY narrow linked list concept and it seems unlikely that it has much use. It most certainly does not impact the majority of linked list uses. It is a shame that you and your sponsors saw fit to leave the impression that this patent covered the broad concept.

What I found more interesting is that finally we have a public head on admission that two members of the Coalition for Patent Piracy & Fairness are sponsoring TechDIRT posts on patent issues. This is most certainly the kind of “insight” we have come to expect.

Ronald J. Riley,

I am speaking only on my own behalf.
Affiliations:
President – http://www.PIAUSA.org – RJR at PIAUSA.org
Executive Director – http://www.InventorEd.org – RJR at InvEd.org
Senior Fellow – http://www.PatentPolicy.org
President – Alliance for American Innovation
Caretaker of Intellectual Property Creators on behalf of deceased founder Paul Heckel
Washington, DC
Direct (810) 597-0194 / (202) 318-1595 – 9 am to 8 pm EST.

Steven (profile) says:

Re: Piracy & Fairness Coalition Members Sponsorship

I’m thinking you didn’t read the patent in question. FYI I am a real programmer.

I just finished reading the whole patent. Not only does it appear to cover any and all implementations of a multi linked list (except for a linked list with two or fewer items), it also appears to cover any software that makes use of such a list.

Mike Masnick (profile) says:

Re: Piracy & Fairness Coalition Members Sponsorship

What I found more interesting is that finally we have a public head on admission that two members of the Coalition for Patent Piracy & Fairness are sponsoring TechDIRT posts on patent issues. This is most certainly the kind of “insight” we have come to expect.

Ronald, no sponsors have any say in the content of these posts. I haven’t spoken to anyone at Sun or Intel about any of the content I write, and haven’t even talked to anyone at either company in months. Given what each company has said publicly about patents, neither agrees with my position.

Please, keep your conspiracy theories to being logical.

angry dude says:

Re: Re: Piracy & Fairness Coalition Members Sponsorship

“I haven’t spoken to anyone at Sun or Intel about any of the content I write, and haven’t even talked to anyone at either company in months.”

Ha

everybody and his dog knows what you’ll be writing about patents and copyrights

no need to even ask – they like your idiotic writings the way they are…

Anonymous Coward says:

Re: Piracy & Fairness Coalition Members Sponsorship

“It is the REAL programmers who actually invent something who file for patents”

The whole point of this article is that this patent filer did NOT invent something. He took a very fundamental and very old data structure from computer science and slapped his name on it.

“Mike, this patent is on a VERY narrow linked list concept and it seems unlikely that it has much use.”

What!? You’d be hard pressed to find an experienced programmer that hasn’t crossed this one at some time.

MAC says:

USPTO: Stupidity knows no bounds...

Great!

Now I can go out and patent a user interface that uses pointing devices like mice, trackballs, cursor keys, little sensors that track my eyeballs and, don’t forget, spoken commands!

With the profits I’ll startup US Robotics and develop robots whose sole purpose in existence is to inundate the USPTO with more and more troll patents and of course, find the violators!

What’s not to like?

Ronald J Riley (profile) says:

Re: USPTO: Stupidity knows no bounds...

The problem with this is that you are not bright enough to produce a real invention of enough value to draw the attention of those patent pirating companies who like to whine about mythical patent trolls.

Ronald J. Riley,

I am speaking only on my own behalf.
Affiliations:
President – http://www.PIAUSA.org – RJR at PIAUSA.org
Executive Director – http://www.InventorEd.org – RJR at InvEd.org
Senior Fellow – http://www.PatentPolicy.org
President – Alliance for American Innovation
Caretaker of Intellectual Property Creators on behalf of deceased founder Paul Heckel
Washington, DC
Direct (810) 597-0194 / (202) 318-1595 – 9 am to 8 pm EST.

staf says:

do as I say

“For the most part, they recognize that code is just a tool: you can make it do all sorts of things, given enough time and resources, but that doesn’t mean that doing any particular thing in code is an “invention” that no one else should be able to do.”

Or so Intel and Sun would like them to think. Their view is “if we didn’t create it, then neither can anyone else”.

Anonymous Coward says:

Re: re

You have limited yourself too much, and have focused only on incompetence or nefarious. Neither is likely true. Part of the problem is that the USPTO has a bunch of over-worked people who are relatively inexperienced in a variety of areas. Because of that inexperience, they are limited to what they have in their files, which, when it comes to software, is likely far less than what exists.

MAC says:

Hey Ronald McDonald...

The problem is you are too @### arrogant to realize that equating hardware to software is like equating the brain to the mind. They are not the same! The brain supports the mind but it is not the mind.
The mind is the culmination of experiences in ones life, the brain is it’s hardware that stores those experiences and the processes around them…

Lawrence D'Oliveiro says:

How To Read A Patent

Andrew Tridgell gave a nice talk at the recent linux.conf.au conference where he explains how to read a patent application, and why you should read them and forget the triple-damages issue.

He also gives an interesting suggestion as to how Free Software developers should react when threatened with a patent lawsuit: that we should pool our intellects to come up with a workaround, and then make sure everybody in the world knows about that workaround. That way, even those licensees of the patent who are developing proprietary software can make use of that workaround. So the patent owner doesn’t just lose the case against the Free Software project, they lose their existing revenue stream as well.

Basically, patent holders should learn that Free Software developers are BAMFs, and stay away from them.

angry dude says:

Re: How To Read A Patent

“Basically, patent holders should learn that Free Software developers are BAMFs, and stay away from them.”

yeah, right, I know

and I stay away from those FSF punks as long as they stay away from my patent
(which was not only published at uspto.gov but was also disclosed to eveybody at 2 major international conferences and the work was cited many many times in various publications around the world)

Anonymous Coward says:

Not doubly-linked list!

OK, I read it. This is not a patent on doubly-linked lists. Well, not quite.

It’s a patent on singly linked lists with additional chains of single links in case you need to traverse a subset of the list or the whole list in another order. Doubly-linked lists are a special case.

Yes, this is still obvious, and yes, there’s still plenty of prior art.

Pseudonym (profile) says:

Re: Not doubly-linked list!

Gah, posted before I finished.

I looked through some old source code, and I did find an example of a general subset/reordering problem from the 4.3BSD source code circa 1986. Each process belongs to two doubly-linked list:

  • The run queue or sleep queue (depending if it’s runnable or sleeping).
  • The list of all active or all zombie processes (depending if it’s active or zombie).

Linux today maintains no fewer than 14 pointers per task, and the code to do this predates 2006 by quite a while.

While that’s the oldest source code I could find, it’s not the oldest reference to the technique in the literature. The original paper on the DLX algorithm, popularised by Knuth in 2000 or so, was submitted for publication in 1978 by Hitotumatu and Noshita.

And, of course, compilers have been using multiply-linked lists for symbol table management essentially forever, since back in the day, you had to maintain both links to manage the hash table and links to manage nested namespaces. I have a book written in 1979 by Richard Bornat which describes a symbol table organisation which uses five pointers per node. The technique was considered to be well-known even then. I seem to recall, for example, the BLISS/11 monograph talking about multi-pointer lists for various tasks; that was written in 1974 about code written in 1971.

I think it’d be hard to find an earlier published reference than that for a very simple reason: Programmers don’t like wasting time stating the obvious. And this is as obvious as it gets.

Aaron (profile) says:

lists == specialized graphs

Lists are just specialized graphs and the more links you add to the list the further you tread in to general graph theory. Dijkstra, et al. already provided us with proofs for graph traversal algorithms that cover the most efficient methods of traversal. Oh, and Dijkstra was rather anti-hardware. He did almost all his work with a fountain pen and paper as he realized software was most emphatically NOT hardware, but rather a mathematical construct and often symbolized in computer hardware by the switching on and off of electrical potentials. Note I said symbolized, not the same thing as. Software can also be symbolized in the english language, or a formal mathematical specification.

Software == Math and hardware == a turing complete machine that does Math.

darryl says:

Still little understanding

Such simplistic views on patents and inventions.

First, it’s not the doubly-linked list that is patents it’s ‘A method of linking lists by some unique means’.

Just as the patent ‘on the steam engine’ is not that simplistic, it would have been worded, and diagramed very specifically.

That means if you come up with another different way of using steam to drive an engine, you can go patent that.

As for software and hardware, it’s all the same thing.
Software is an abstraction, on the real physical level it’s a specific configuration of many millions of swtiches.

Next clock cycle, it’s a new configuration, the invention is in the METHOD of achieving something, not the something itself.

You dont patent ‘the steam engine’ you patent a specific method of generating torque from stream’.

Is a switch any more or less ‘real’ or physical if it is turned ON of OFF ?? NO.

The invention is in how you turn on or off specific hardware in a specific combination to achieve a specific result. (what we call software, but can be hardware as well).
In the real physical world there is no distinction between software and hardware. As well if you want to get right down to it, electrons have mass, therefore they are physical, just as real as a transistor or a ford pickup.

darryl says:

Still little understanding

Such simplistic views on patents and inventions.

First, it’s not the doubly-linked list that is patents it’s ‘A method of linking lists by some unique means’.

Just as the patent ‘on the steam engine’ is not that simplistic, it would have been worded, and diagramed very specifically.

That means if you come up with another different way of using steam to drive an engine, you can go patent that.

As for software and hardware, it’s all the same thing.
Software is an abstraction, on the real physical level it’s a specific configuration of many millions of swtiches.

Next clock cycle, it’s a new configuration, the invention is in the METHOD of achieving something, not the something itself.

You dont patent ‘the steam engine’ you patent a specific method of generating torque from stream’.

Is a switch any more or less ‘real’ or physical if it is turned ON of OFF ?? NO.

The invention is in how you turn on or off specific hardware in a specific combination to achieve a specific result. (what we call software, but can be hardware as well).
In the real physical world there is no distinction between software and hardware. As well if you want to get right down to it, electrons have mass, therefore they are physical, just as real as a transistor or a ford pickup.

Leave a Reply to angry dude Cancel reply

Your email address will not be published. Required fields are marked *

Have a Techdirt Account? Sign in now. Want one? Register here

Comment Options:

Make this the or (get credits or sign in to see balance) what's this?

What's this?

Techdirt community members with Techdirt Credits can spotlight a comment as either the "First Word" or "Last Word" on a particular comment thread. Credits can be purchased at the Techdirt Insider Shop »

Follow Techdirt

Techdirt Daily Newsletter

Ctrl-Alt-Speech

A weekly news podcast from
Mike Masnick & Ben Whitelaw

Subscribe now to Ctrl-Alt-Speech »
Techdirt Deals
Techdirt Insider Discord
The latest chatter on the Techdirt Insider Discord channel...
Loading...
Older Stuff
09:00 Awesome Stuff: Monitor Everything (5)
09:00 Awesome Stuff: Cool Components (1)
12:42 Tech Companies Ask European Commission Not To Wreck The Internet -- And You Can Too (4)
09:00 Awesome Stuff: Play & Listen (1)
09:00 Awesome Stuff: Beyond Chiptunes (12)
09:00 Awesome Stuff: Updated Classics (3)
09:00 Awesome Stuff: Celebrating Cities (1)
09:00 Awesome Stuff: Crafts Of All Kinds (5)
09:00 Awesome Stuff: One Great Knob (13)
09:00 Awesome Stuff: Simple Geeky Toys (2)
09:00 Awesome Stuff: Gadgets For The New Year (18)
09:00 Awesome Stuff: A Post-Holiday Grab Bag (0)
13:34 How Private-Sector Innovation Can Help Those Most In Need (21)
09:00 Awesome Stuff: Towards The Future Of Drones (17)
09:00 Awesome Stuff: Artisanal Handheld Games (5)
09:00 Awesome Stuff: A New Approach To Smartphone VR (5)
09:00 Awesome Stuff: Let's Bore The Censors (37)
09:00 Awesome Stuff: Open Source For Your Brain (2)
09:00 Awesome Stuff: The Final Piece Of The VR Puzzle? (6)
09:00 Awesome Stuff: The Internet... Who Needs It? (15)
09:00 Awesome Stuff: The Light Non-Switch (18)
09:00 Awesome Stuff: 3D Printing And Way, Way More (7)
13:00 Techdirt Reading List: Learning By Doing (5)
12:43 The Stagnation Of eBooks Due To Closed Platforms And DRM (89)
09:00 Awesome Stuff: A Modular Phone For Makers (5)
09:00 Awesome Stuff: Everything On One Display (4)
09:00 Awesome Stuff: Everything Is Still A Remix (13)
09:00 Awesome Stuff: Great Desk Toy, Or Greatest Desk Toy? (6)
09:00 Awesome Stuff: Sleep Hacking (12)
09:00 Awesome Stuff: A Voice-Operated Household Assistant (19)
More arrow