Yahoo Patents Dynamic Page Generator
Here is the abstract of their patent: United States Patent 5,983,227 (Nov. 9, 1999)
Dynamic page generator
Abstract
A custom page server is provided with user preferences organized into templates stored in compact data structures and the live data used to fill the templates stored local to the page server which is handing user requests for custom pages. One process is executed on the page server for every request. The process is provided a user template for the user making the request, where the user template is either generated from user preferences or retrieved from a cache of recently used user templates. Each user process is provided access to a large region of shared memory which contains all of the live data needed to fill any user template. Typically, the pages served are news pages, giving the user a custom selection of stock quotes, news headlines, sports scores, weather, and the like. With the live data stored in a local, shared memory, any custom page can be built within the page server, eliminating the need to make requests from other servers for portions of the live data. While the shared memory might include RAM (random access memory) and disk storage, in many computer systems, it is faster to store all the live data in RAM.
This is a subject coming up more and more frequently on slashdot. I think it's time that we contacted somebody at the patent office for the weekly interview. You never know, it might make a difference. At the very least, they might tell us how we can make a difference.
-Dom
It is much much worse than a claim on use of shared memory. The real killer broad claim is #2, which is an attempt to claim ALL pre-compiled user-specific template pages.
Use of shared memory (#4), server-farms (#5), and cacheing (#6) are additional claims over and beyond the basic claim #2. Claim 2 applies whether these other claims are implemented or not.
The nitty-gritty of claim #1 is just a fallback position, which protects Yahoo's detailed process in the event that Yahoo's other claims are ruled too abstract. Claim #1 does not apply unless you specifically generate lists of relevant sports teams and weather reports from user postcodes. The real horror is claim #2.
Claim 2
Claim 4
The term "template program" would appear to cover any per-user pre-generated page which includes ASP or PHP or Javascript to fill in the blanks. Bespoke formats in which the user template contains just field names instead of script fragments might also be considered "programs", executable by the web-server plus appropriate module.
Very, very nasty.
IPC::Shareable can (and is) used for this technique on mod_perl sites. I've used it myself. I haven't read the patent yet, I guess I'll go check it out.
See the modperl archives for many other people using this method for caching data (templates and other stuff). I guess it could be argued that anything using a <perl> section or startup.pl in modperl is using a similar technique.
Matt. Want XML + Apache + Stylesheets? Get AxKit.
---
"'Is not a quine' is not a quine" is a quine.
"'Is not a quine' is not a quine" is a quine.
Quine "quine?
I've said it before, and I'll keep saying it, not that it would make much impact.
Any idea or expression which can be thought by more than one person by sheer coincidence should never be allowed to be protected.
Expression is not an entity to be hoarded. Implementation may have its merits in the varying methods used, but the thought processes which led to those methods are ultimately responsible, and come from varying sources of inspiration which law can neither protect, enslave, or induce.
Research which truly *is* research, could be protected, certainly, as one protects the fruit of any labour (although for moral reasons, medicine, science, etc. they often shouldn't be). But clever programming tricks, methods that are already taken for granted, or legal wording of common-place procedures written and submitted for the purpose of making a buck... that's not justice, that's not even moral.
Patents fall under law, law is imposed to promote justice, and a capitalistic greedy move like this on the part of a bunch of Yahoo's does no justice to anyone.
mindslip
Suggestion /. with all the patents coming out that deal with hardware/software like this one ie shared mem, maybe it would be a good idea that when someone submits an article for a patent, they are prompted to also send the patent number, and a link to where they got this info, and all that jazz. Rather than just the abstract.
I mean really the abstract is just that 'abstract'. IT is supposed to be a 1 paragraph summary of the invention in less than 150 words.
flames > /dev/null
moderate -1Million
send flames > /dev/null
Only 'flamers' flame!
the full patent is here
As I understand it, what they're saying is that they pre-allocate a large chunk of memory per user (rather than dynamically allocate what's needed), and then fill it with whatever that user is doing.
In addition, live data is regularly polled from other servers and stuffed into shared memory, thus removing the need to access the servers at the time of request.
This would seem to give Yahoo a 2-tier caching system:
Servers --> Shared memory --> User Cache --> User
This may or may not be efficient, depending on how it's set up. It certainly means that the data from real-time data sources stops being real-time, and can be as old as the time-out on the shared memory cache.
As for being innovative, well, that is arguable. There is certainly prior art for cache heirarchies (nlanr, the makers of Squid, have an entire network of web caches, for example, and Squid is built for exactly that kind of work). Using shared memory as a caching system is a trivial derivative of traditional caching, and wouldn't pass muster on it's own.
Using a heirarchy inside a single system, to link multiple servers, is perhaps slightly more novel. I don't recall seeing that being done before.
However, the patent could be considered a non-issue. If you use a heirarchy of -dynamically allocated- cache spaces, you automatically have something that is distinct from the system described in the patent. Also, if you have an N-ary graph of caches, rather than a simple tree, you would avoid the patent by using a distinct structure.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
ASP's Session and Application objects have done this for years. I use it to cache weather, stock quotes, news items, etc. Microsoft might do something good and sue the crap out of yahoo for this...
Napster-to-go says "Fill and refill your compatible MP3 player", which is a lie. It's not MP3. It's WMA with DRM.
What I doubt though is that it will continue to grow. We will never have a reality such as in Star Trek, or some of the worlds the Sliders go to. We will never have a world with terminals in every room of every building hooked up to the internet linking the whole world.
I say this because all these internet patents are scaring off lots of people that could be developing the websites that would make such a thing feasible. Linking the world together is nothing without the content that would be needed. Think about it, there is no more one-click shopping without a royalty be paid to Amazon, so E-commerce sites will have to do things the longer, harder way. If they do not do it the hard way they will have to develop a new concept which if history shows they will run out and patent and leave the followers in the same boat.
The bottom line is for all these internet businesses is all about the Benjamins, and the world has never benefited from greed alone. These people claim to be "innovators" of the internet, as far as I'm concerned they are all just a bunch of greedy bastards holding the world back.
http://slashdot.org/search.pl?topic=ludicrous_pa tents
but what would the logo be?
This just illustrates how inappropriate patents are for software. Even if this were an original idea (and as others have pointed out, it certainly isn't), it wouldn't be worth granting a patent on it, because it would restrict competition far too much and subject developers to legal harassment. It's also merely a combination of existing ideas - filling in templates, and caching data in memory - that would be obvious to any skilled programmer.
Of course Yahoo are free to copyright the code they are using, and that makes sure that they can get a good return from their effort. But allowing companies to patent particular ideas and then sue other developers is bad news both for the software industry and for consumers.
The paper Against Software Patents is slightly old, but a good introduction to why granting patent monopolies on software techniques is a bad idea.It's not too late to stop software patents being introduced in Europe - check out freepatents.org if you live in the EU.
-- Ed Avis ed@membled.com
It is becoming rapidly apparent to me that the Patent system as we know it is in need of serious modification. I'm open to argument about what exactly is wrong (IANAL), but if something like this can actually get patented then *something* is definitely wrong
I suspect the patent office clerks (or whoever actually reviews and issues these things) lack the technical knowhow they require to properly evaluate (or, hell, even understand) these things and look for prior art. This unfairly allows those with $$ to take advantage of their ignorance and engage in the kind of frivolous litigation we so love here in the U.S.
To my understanding (and again, IANAL. do we have any lawyers here on Slashdot? any care to comment on the basics of patent law?) patents are basically a legal monopoly for a set time period to allow the inventor of a particular 'technique' to profit from his labor, at least in an intellectual sense. Generally speaking, this is a reasonable idea, imho. I seem to remember that the time period allotted is 7 years (someone correct me please?), and while this may be fine for real world (meatspace) inventions, that's simply aeons in computer time. It's like a 200 year patent in the real world. Perhaps we should consider some modifications to our patent system to account for the rapid pace of modern technology?
Has this type of practice always been common in patent litigation? A lot of it seems blatantly sleazy and deceptive. I've only noticed it recently, but then again, I've only been paying attention recently...
Anthony
^X^X
Segmentation fault (core dumped)
"I think any time you expose vulnerabilities it's a good thing." -Attorney General Janet Reno
I think we will soon hit critical mass with patents. Couple of nights ago, one of the major evening news magazines (like 60 minutes or 48 hours -- side note, why do they always use a number as the first word in the title?) was doing a story on human genome patenting. They covered the fact that several institutions cannot even screen for Alzheimers or breast cancer, because the genes were patented. The doctor made it clear that the tests were not patented, just the genes, making *any* test that screens these genes subject to the patent.
Patents like that -- where there is a direct detrimental effect on people as a result (who are unable to even get a test done!) might push the patent reform to front and center. Perhaps then, we can push the absurd software patents to the forefront and try to get some good ole fashioned reform going ("Its a good ole patent lynching, mama").
The need for reform *is* coming to the consciousness of the mainstream. Lets make sure that software patents are not forgotten when that happens.
Another possibility is that this fund could be used to pay the royalties in bulk for all GPL software. So, for example, somebody from GNU goes over to Unisys and offers to pay them a lump sum to permit royalty free use of the patent for all software released under the GPL.
This would have two effects:
1) It would provide a way for people developing free software from having to pay royalties on something that they might not make money off of in the first place.
2) It would encourage more people to use the GPL because they could write their software without having to pay various royalties that they might otherwise be committed to.
---
This sig has been temporarily disconnected or is no longer in service
You bring in a few patent attorneys and having a standing arrangement that they give a price tag for the battle and when they get that much money in the coffers, they can go out and start taking down the patent. If not enough money is collected after a given period of time, then the money would not be charged to the credit card and the patent would go on its merry way.
Thoughts?
---
This sig has been temporarily disconnected or is no longer in service