Why not use SQL's DATE, TIME, DATETIME, and TIMESTAMP formats? There's already a spec (SQL '92) and any language that regularly talks to a database can already marshal them. Besides, quite a few (most?) web services are middleware on top of a database, so you might as well be consistent.
Take a look at what W3C is working on. Most of it is XML formats and other categorizing of data. A few things (e.g. PNG) may contain novel algorithms, although in the case of PNG the format was invented to avoid the patent restrictions of GIF.
It could be argued that W3C does its job best when it produces standards which are not novel, and are essentially what any person with the same mindset would produce on a good day. This is the exact opposite of the original, non-obvious nature required (though perhaps not enforced) by US patent law.
W3C is mostly about communication standards, and it's all about interoperability. Describing stuff in XML is more of a categorization skill than an invention. Good librarians are as important as good engineers-- and patents are about as useful as bicycles for ducks.
Finally, iteroperability only works if everyone can use it. XML and "semantic web" stuff is frequently going to be web services which are parsed by spiders and middleware servers (including web servers), where vendor or technology lock-in is anathema. Patents or threats of patents are at least as likely to slow adoption of standards as to speed it.
I've seen this in action. Not only did a polite, detailed letter to the FCC clear up the problem almost instantly, the responsible manager at Qwest (my local telco) sent a very polite apology explaining that the phone line was being taken care of and the rude operator was being investigated.
Was TCG formed to specify Digital Rights Management technologies?
No. The focus of TCG is on protecting user data and secrets (keys, passwords, certificates, etc.) from external software attack and theft. This greatly reduces the risk of identity and data theft. It is not TCG's intention to address DRM requirements. As a result, the specifications do not include provisions to prevent owner tampering.
From my reading of the FAQ, TCG is taking the password protection some laptop BIOSes have and extending it to encryption services for the OS and applications. This allows the user (a.k.a. programs the human runs) to verify a person's identity, the computer's identity, and the computer's boot parameters. Thus, you might have your bank account information encrypted in a way which requires your password on your computer-- hard disk thieves are locked out.
They keep saying this isn't DRM, but it's most of the building blocks you need for DRM. And most of the applications they mention are possible without hardware support via an encrypted filesystem. All you need for Palladium is an OS which refuses to boot without the right user, computer, and boot parameters.
The other thing to note is that they keep stressing RAND (Reasonable And Non-Discriminatory) licenses. Non-discriminatory means every organization pays patent licenses on the same formula. If the formula doesn't contain provisions to allow for open source software, then open source software can't use the standard.
I think he is referring to Gordon Gecko's (Michael Douglas) infamous speach to Bud Fox (Charlie Sheen) in the legendary movie "Wall Street".
Everybody mod this AC up. That is where "greed is good" comes from. It was a phrase that captured the exuberance of the time-- the idea that people like Milkin should be greedy, and that was good. Much like the later theory that anything dot-coms did was good, and anyone who didn't believe the business plan just didn't get it.
How about instead of getting a traditional large screen TV, I buy one of those ever-less-expensive LCD computer projectors (which has full A/V in/out ports)? Are any of you using a setup like this at home instead of a normal large screen TV?
My dad did this, a few years after I got a projection TV. The TV is several years behind technologically (and it was several important years) so it's much dimmer and slightly lower-res than the computer projector. In my mind they are comparable, but the one that's designed for home theater has a much wider display angle-- I get an 80 inch display, whereas an InFocus I borrowed from work did about 50 inches. If you have a large room, that's not an issue, but my living room is small. (That's one advantage of a ceiling-mounted projector: I couldn't fit any other big-screen TV!)
These days, the computer and TV projectors share a lot of parts. They all come with 2000-hour bulbs (they actually have a 2000-hour shut-down timer so they won't explode.) That's several years of viewing for how I watch. Both display DVDs well.
While I can see how this will help China discover unintentional backdoors, this won't help them against intentional backdoors.
There was an old hack which Ken Thompson used to give himself access to all Unix systems, as a proof-of-concept of why you shouldn't trust source code. He didn't modify the Unix source code. Nor did he modify the C compiler used to generate the Unix binaries. He modified the C compiler used to compile the C compiler. Full source code access wouldn't help you see the exploit.
Details are at http://www.wbglinks.net/pages/reads/hacksexplain ed/thompson.html.
China doesn't have the rights to compile the source code they get. Even if they do (and I'm sure they will, if it's of any use to them) they won't be able to verify that the code is free of intentional backdoors-- because presumably it requires M$'s compiler. Even if they get access to the compiler source code (and I don't think they do) they can't verify that it doesn't have a back door.
If I were China I'd be afraid that the US government has hidden an exploit in Windows. That may seem paranoid, but security folks are supposed to be a little paranoid. I wouldn't trust Windows, source code or not.
Come to think of it, I wouldn't trust the American-designed processor, BIOS, disk controllers, RAM, keyboard controller, chip design tools, etc.
Finally, Safari and more and more of iTunes have been written in ObjC w/ Cocoa. This would make porting slightly difficult, since they would have to be rewritten almost from the ground up (Apple would not likely use OpenSTEP to make the switch just yet).
When I was doing WebObjects development, Apple had an Objective-C layer for Windows NT which they sold as part of WebObjects. It worked great: just modify your.nib files (Cocoa UI descriptors) to follow the Windows look-and-feel, and recompile. Of course, Apple has since decomissioned the old Objective-C WebObjects in favor of a J2EE replacement. But I would be shocked if they haven't kept the Windows frameworks alive in some hidden laboratory, if only so they can write strategic cross-platform applications.
Great.... Firefly.com has a patent for this sort of thing, and now Microsoft has it (Microsoft bought them). Is this another case of something getting off the ground and then squashed because of lawyers?
I haven't looked into their patent on "this sort of thing" in particular, but I wouldn't be concerned.
First of all, collaborative filtering, a.k.a. "this sort of thing" was developed at about the same time at a few places, most notably MIT (hence Firefly) and the University of Minnesota (which lead to Amazon.com's recommendation systems, among others.) The U of M's research, which I was involved with, started out with recommendations/filtering of Usenet, but later moved into movie recommendations. They then formed Net Perceptions, Inc. which worked on Amazon, CDNow.com, and others.
I've done the occasional patent search on collaborative filtering, and all the patents cover particular methods and algorithms. The technique itself is not patented, and anyone can do it. See http://www-users.cs.umn.edu/~karypis/suggest/index.html for one implementation.
This is significantly different from what Firefly was doing. For one thing, Firefly was based on explicit ratings: you would explicitly tell it what you think of a particular item. The song recommender in this case uses implicit ratings: your behavior is used to infer a particular rating. That was pioneered at the U of M.
In any case, this sort of stuff is used by everyone from Netflix to Tivo to Amazon, without patent issues. So you can too.
Slashdot discussions on this topic always have a really muddled concept of what a "non-technical Linux user" will look like. Apparently they will be dumb as a brick, have no interest in the open source philosophy, want to use the computer as a tool and not know too much about it. And they will for some reason buy Linux as a better Windows. Or something.
We always get these reviews of Linux for non-technical end users, but within a paragraph or two the reviewer starts talking about all the other distros he's installed and uninstalled. What we need is the perspective of someone with a REASON for a good, easy-to-use desktop Linux.
Linux will never be a better Windows than Windows. Microsoft won't ever let its programs run better on Linux. The EULA for Explorer for Windows requires the user to have a Windows license, and similar requirements may show up in other software-- at the very least in terms of "supported platforms." Corporate users won't pay $500 to run a program on an unsupported platform.
I have no doubt that Linux on the desktop will be a big thing in the future. Mainly this is because the companies that target desktop Linux have a clear idea of who their users are.
Red Hat 8.0 (and similar distributions) is targeted at the semi-locked-down corporate desktop. The primary user has a support infrastructure in place. Software updates are handled by pointy-clicky Helpdesk people with root passwords, or by trusted "power users." 99% of work is done in a small number of applications (Office, web). This is not a "better Windows than Windows" so much as an office suite platform that's higer security and cheaper and easier to administer.
Lindows is targeted at home users. The company's president envisions computers too cheap to repair, which requires an equally cheap OS.
I would argue that there's another brand of potential non-techinical Linux user: the socially responsible computer user. These are people who hate global multinationals. They don't eat at McDonald's. They only use Microsoft software because they are bewildered by Linux, don't have any friends who can help them with it, and all their friends use Windows. They email me with Word files. And despite that they are incredibly adept at using email, the web, and IM-- among their Windows-using friends.
These are people who wouldn't use Red Hat for fear it would become the next Microsoft. They'd really dig Debian, if it were easy to use. Many of them would even contribute where possible-- perhaps writing documentation, supplying graphics, or managing those packages that don't involve compiling.
So if you really want grass-roots Linux to take off among the non-technical, don't go to a Linux user's group-- go to an anti-war rally. (Or better yet, an anti-globalization rally.) Grab one person and offer free technical support for as long as it takes to become a Linux convert.
My solution for web development has been to use unit tests wherever possible, and to write the UI components to be as test-friendly as possible.
That is, I try to do a strict MVC (Model-View-Controller) class separation, with the View as lightweight as possible. That is, make the UI as dumb as possible, so that if there is any room for errors they show up in the simplest UI walk-through.
This also means that you can do rapid development (usability testing, anyone?) on the nitpicky presentation details. Automated GUI testing tends to be screen-reader testing, which means the test needs to change when minor GUI components change-- which is unreasonably nasty.
As a specific example, JSP tag classes have a doStartTag() method which typically write to the web page stream. It is annoying to unit test because it needs web page context and must handle lots of data gathering and exceptions.
I write my doStartTag()s to gather data, handle exceptions, and write to the web page-- and everyting else (the real meat of the method) is done by a helper method that takes data and returns a String. The helper method is written to be easy to unit test: it throws all the interesting exceptions and can fail in all the interesting ways. The doStartTag() is simply the JSP wrapper.
Of course, a pure MVC approach has my helper method in a separate class-- which is actually my most common approach-- but in many cases that would be overkill.
This approach can be applied to any kind of GUI: treat GUI code as a minimal wrapper around easy to test code.
Long ago, Microsoft recognized that features sell software--not code size, efficiency, or even a pretty interface.
This statement is 100% wrong. Most users never touch all the 'features' that windows ships with, they just use it for 4 things- IM, email, internet, and games.
Those two statements aren't mutually exclusive. People buy based on what they hope to use, not based on what they actually use. Most people do comparison shopping (not just for computers!) based on the number of features they might use, not on which ones they will actually end up using. Only for very expensive products (e.g. a $500 cell phone/PDA) are most people likely to make comments like "sure it can surf the web, but is that easy enough to do that I'll really do it?" and "95% of what I'll be doing is making phone calls; how easy is that?"
The reason microsoft is in such a good position is that their OS has a very intuitive interface, and linux has nothing even close to what windows has.
The reason that Microsoft is in such a good position is that, even after the antitrust case, they wield enough power that major PC manufacturers aren't willing to experiment with even small quantities of alternative desktop OSes. The latest Linux versions (e.g. RH 8, Xandros) have a very good look-and-feel. What they lack is:
an integrated GUI where cut & paste works consistently across every application-- even for graphics, formatted text, and tables (it's worked right on the Mac/Lisa for 19 years!);
familiar features. One reason M$ Office is so bloated that 80 percent of users use only 20 percent of the features-- but each user has a different 20%! Only the goofiest things can get cut. And while OpenOffice is up to 90-95%, that leaves a huge number of people's favorite features.
a foot in the door. This will be the easiest to fix, though, since Linux has already found its way into many a back office. The hard part will be getting major PC vendors to support it, what with M$'s still-present powers of retribution.
Personally, though, my biggest problem with the way Linux GUIs are going is that it gets harder with every new distribution to find a way to keep the close button in the top left corner of the window where it's been for me since 1984 and where it belongs!:-)
Sorry, but "counter-programming" doesn't work
on
When Profiling Goes Wrong
·
· Score: 3, Interesting
As someone who's done work in the field (both academic research and in the private sector), these systems don't "profile" the way, say, police officers do. I can't speak to the specific algorithms used by Tivo or Amazon, but the techniques are generally the same. (Though I can make really good guesses about Amazon, since they have a patent with some specific algorithm descriptions.)
These systems (generically, recommendation systems or collaborative filtering) don't use pre-defined genres or categories. They use correlations between actions to predict future actions. So your recommendations are essentially based on the sum of your past actions. In other words, you can't make it ignore "gay" stuff by selecting "macho" stuff-- it will just sum those together and you'll get both "gay" and "macho" stuff.
Worse, if enough people try to outsmart the system, it pollutes the correlations. "Gay" and "macho" items become linked together, and requesting one makes it recommend the other. This can work both ways. If most of the people who record "The Rise and Fall of the Third Reich" are doing so to counter their watching "Queer as Folk", then someone who watches "Third Reich" will get "Queer" as their first recommendation!
In case it's not clear how this works, let me describe one generic type of recommendation system. The system forms rules like "People who like A also like B, C, and D" based on analyzing its database, with some definition of "like." This being e-commerce, it's usually "like=buy". It might be more complicated, e.g. "35% of people who buy A also buy B."
These rules can be shown raw, as Amazon does, or they can be personalized. I've bought A, C, and D, so it combines the rules for A, C and D (using set intersections, sums, averages, etc. depending on how the rules are stored.) It decides, in essence "People who like A like B; people who like C like B; you like A and C, so you probably would like B."
So if you wanted to counter your watching "Queer as Folk", what you would want to do is not train it with "anti-gay" input, rather you would want to flood it with "everything but gay" input-- BUT you would probably have to do it IN EQUAL PROPORTION to the viewing habits of the average person in their database.
The technology combines two-phase convection in micromachined silicon heat sinks (microchannels) with a novel electroosmotic pump to achieve minimal heat sink volume at the chip backside [1, 2].
Wow! Somebody finally found an advantage of Microchannel Architecture!
what do you think would happen if the feds mandated a HTML-ADA spec???
Maybe it would look a lot like the
guidelines,
checklists and
techniques
specified by the World Wide Web Consortium that Tim Berners-Lee has been
advocacting
since he invented the web? Indeed, the same level of accesibility that HTML 1.0 was designed to promote?
HTML was designed specifically to separate content from presentation, so that a wide variety of display devices could be used to access the same information. When too many people started breaking the rules to get the right look, W3C introduced style sheets to allow formatting without breaking the data. Most web pages I view look just fine in w3m in an xterm, tables and all. Add a braille viewer, and you're doing well. Or, for the unwashed masses, I've heard that a braille display with IE works too.
I heard an interview with the researcher on NPR this morning (recording of the show), and there is no known cause.
The researcher's hypothesis is that the irritation of the tape encourages immune response. One piece of anecdotal evidence supporting that is that some people claimed that other warts elsewhere on the body were also affected to some degree.
See http://www.the-dma.org/government/donotcalllists.s html for a list of states and their do-not-call lists.
Oddly, MN apparently has a new do-not-call law, starting in November (http://www.commerce.state.mn.us/pages/ConsumerTip s/ConTip-NoCall.htm) but I signed up for a do-not-call list several years ago at one of the state's booths at the MN State Fair, and haven't gotten telemarketer calls since.
Why not use SQL's DATE, TIME, DATETIME, and TIMESTAMP formats? There's already a spec (SQL '92) and any language that regularly talks to a database can already marshal them. Besides, quite a few (most?) web services are middleware on top of a database, so you might as well be consistent.
Are you CRAZY??? Do you realize how many TRILLIONS of FLOWERS would be TRAMPLED by people on their way to hug trees??!?
The article doesn't actually say that IBM has confirmed its new chip is for the Mac. This is just one pundit's opinions.
Take a look at what W3C is working on. Most of it is XML formats and other categorizing of data. A few things (e.g. PNG) may contain novel algorithms, although in the case of PNG the format was invented to avoid the patent restrictions of GIF.
It could be argued that W3C does its job best when it produces standards which are not novel, and are essentially what any person with the same mindset would produce on a good day. This is the exact opposite of the original, non-obvious nature required (though perhaps not enforced) by US patent law.
W3C is mostly about communication standards, and it's all about interoperability. Describing stuff in XML is more of a categorization skill than an invention. Good librarians are as important as good engineers-- and patents are about as useful as bicycles for ducks.
Finally, iteroperability only works if everyone can use it. XML and "semantic web" stuff is frequently going to be web services which are parsed by spiders and middleware servers (including web servers), where vendor or technology lock-in is anathema. Patents or threats of patents are at least as likely to slow adoption of standards as to speed it.
I've seen this in action. Not only did a polite, detailed letter to the FCC clear up the problem almost instantly, the responsible manager at Qwest (my local telco) sent a very polite apology explaining that the phone line was being taken care of and the rude operator was being investigated.
You mean like this?
They keep saying this isn't DRM, but it's most of the building blocks you need for DRM. And most of the applications they mention are possible without hardware support via an encrypted filesystem. All you need for Palladium is an OS which refuses to boot without the right user, computer, and boot parameters.
The other thing to note is that they keep stressing RAND (Reasonable And Non-Discriminatory) licenses. Non-discriminatory means every organization pays patent licenses on the same formula. If the formula doesn't contain provisions to allow for open source software, then open source software can't use the standard.
You know, many astronomy sites (Seti@Home for one) have stopped using the term "naked eye" because it gets them censored by pr0n filters.
These days, the computer and TV projectors share a lot of parts. They all come with 2000-hour bulbs (they actually have a 2000-hour shut-down timer so they won't explode.) That's several years of viewing for how I watch. Both display DVDs well.
While I can see how this will help China discover unintentional backdoors, this won't help them against intentional backdoors.
There was an old hack which Ken Thompson used to give himself access to all Unix systems, as a proof-of-concept of why you shouldn't trust source code. He didn't modify the Unix source code. Nor did he modify the C compiler used to generate the Unix binaries. He modified the C compiler used to compile the C compiler. Full source code access wouldn't help you see the exploit.
Details are atn ed /thompson.html.
http://www.wbglinks.net/pages/reads/hacksexplai
China doesn't have the rights to compile the source code they get. Even if they do (and I'm sure they will, if it's of any use to them) they won't be able to verify that the code is free of intentional backdoors-- because presumably it requires M$'s compiler. Even if they get access to the compiler source code (and I don't think they do) they can't verify that it doesn't have a back door.
If I were China I'd be afraid that the US government has hidden an exploit in Windows. That may seem paranoid, but security folks are supposed to be a little paranoid. I wouldn't trust Windows, source code or not.
Come to think of it, I wouldn't trust the American-designed processor, BIOS, disk controllers, RAM, keyboard controller, chip design tools, etc.
When I was doing WebObjects development, Apple had an Objective-C layer for Windows NT which they sold as part of WebObjects. It worked great: just modify your .nib files (Cocoa UI descriptors) to follow the Windows look-and-feel, and recompile. Of course, Apple has since decomissioned the old Objective-C WebObjects in favor of a J2EE replacement. But I would be shocked if they haven't kept the Windows frameworks alive in some hidden laboratory, if only so they can write strategic cross-platform applications.
I haven't looked into their patent on "this sort of thing" in particular, but I wouldn't be concerned.
First of all, collaborative filtering, a.k.a. "this sort of thing" was developed at about the same time at a few places, most notably MIT (hence Firefly) and the University of Minnesota (which lead to Amazon.com's recommendation systems, among others.) The U of M's research, which I was involved with, started out with recommendations/filtering of Usenet, but later moved into movie recommendations. They then formed Net Perceptions, Inc. which worked on Amazon, CDNow.com, and others.
I've done the occasional patent search on collaborative filtering, and all the patents cover particular methods and algorithms. The technique itself is not patented, and anyone can do it. See http://www-users.cs.umn.edu/~karypis/suggest/index .html for one implementation.
This is significantly different from what Firefly was doing. For one thing, Firefly was based on explicit ratings: you would explicitly tell it what you think of a particular item. The song recommender in this case uses implicit ratings: your behavior is used to infer a particular rating. That was pioneered at the U of M.
In any case, this sort of stuff is used by everyone from Netflix to Tivo to Amazon, without patent issues. So you can too.
David...and the data is available from many sites.
Slashdot discussions on this topic always have a really muddled concept of what a "non-technical Linux user" will look like. Apparently they will be dumb as a brick, have no interest in the open source philosophy, want to use the computer as a tool and not know too much about it. And they will for some reason buy Linux as a better Windows. Or something.
We always get these reviews of Linux for non-technical end users, but within a paragraph or two the reviewer starts talking about all the other distros he's installed and uninstalled. What we need is the perspective of someone with a REASON for a good, easy-to-use desktop Linux.
Linux will never be a better Windows than Windows. Microsoft won't ever let its programs run better on Linux. The EULA for Explorer for Windows requires the user to have a Windows license, and similar requirements may show up in other software-- at the very least in terms of "supported platforms." Corporate users won't pay $500 to run a program on an unsupported platform.
I have no doubt that Linux on the desktop will be a big thing in the future. Mainly this is because the companies that target desktop Linux have a clear idea of who their users are.
Red Hat 8.0 (and similar distributions) is targeted at the semi-locked-down corporate desktop. The primary user has a support infrastructure in place. Software updates are handled by pointy-clicky Helpdesk people with root passwords, or by trusted "power users." 99% of work is done in a small number of applications (Office, web). This is not a "better Windows than Windows" so much as an office suite platform that's higer security and cheaper and easier to administer.
Lindows is targeted at home users. The company's president envisions computers too cheap to repair, which requires an equally cheap OS.
I would argue that there's another brand of potential non-techinical Linux user: the socially responsible computer user. These are people who hate global multinationals. They don't eat at McDonald's. They only use Microsoft software because they are bewildered by Linux, don't have any friends who can help them with it, and all their friends use Windows. They email me with Word files. And despite that they are incredibly adept at using email, the web, and IM-- among their Windows-using friends.
These are people who wouldn't use Red Hat for fear it would become the next Microsoft. They'd really dig Debian, if it were easy to use. Many of them would even contribute where possible-- perhaps writing documentation, supplying graphics, or managing those packages that don't involve compiling.
So if you really want grass-roots Linux to take off among the non-technical, don't go to a Linux user's group-- go to an anti-war rally. (Or better yet, an anti-globalization rally.) Grab one person and offer free technical support for as long as it takes to become a Linux convert.
My solution for web development has been to use unit tests wherever possible, and to write the UI components to be as test-friendly as possible.
That is, I try to do a strict MVC (Model-View-Controller) class separation, with the View as lightweight as possible. That is, make the UI as dumb as possible, so that if there is any room for errors they show up in the simplest UI walk-through.
This also means that you can do rapid development (usability testing, anyone?) on the nitpicky presentation details. Automated GUI testing tends to be screen-reader testing, which means the test needs to change when minor GUI components change-- which is unreasonably nasty.
As a specific example, JSP tag classes have a doStartTag() method which typically write to the web page stream. It is annoying to unit test because it needs web page context and must handle lots of data gathering and exceptions.
I write my doStartTag()s to gather data, handle exceptions, and write to the web page-- and everyting else (the real meat of the method) is done by a helper method that takes data and returns a String. The helper method is written to be easy to unit test: it throws all the interesting exceptions and can fail in all the interesting ways. The doStartTag() is simply the JSP wrapper.
Of course, a pure MVC approach has my helper method in a separate class-- which is actually my most common approach-- but in many cases that would be overkill.
This approach can be applied to any kind of GUI: treat GUI code as a minimal wrapper around easy to test code.
familiar features. One reason M$ Office is so bloated that 80 percent of users use only 20 percent of the features-- but each user has a different 20%! Only the goofiest things can get cut. And while OpenOffice is up to 90-95%, that leaves a huge number of people's favorite features.
a foot in the door. This will be the easiest to fix, though, since Linux has already found its way into many a back office. The hard part will be getting major PC vendors to support it, what with M$'s still-present powers of retribution. Personally, though, my biggest problem with the way Linux GUIs are going is that it gets harder with every new distribution to find a way to keep the close button in the top left corner of the window where it's been for me since 1984 and where it belongs! :-)
As someone who's done work in the field (both academic research and in the private sector), these systems don't "profile" the way, say, police officers do. I can't speak to the specific algorithms used by Tivo or Amazon, but the techniques are generally the same. (Though I can make really good guesses about Amazon, since they have a patent with some specific algorithm descriptions.)
These systems (generically, recommendation systems or collaborative filtering) don't use pre-defined genres or categories. They use correlations between actions to predict future actions. So your recommendations are essentially based on the sum of your past actions. In other words, you can't make it ignore "gay" stuff by selecting "macho" stuff-- it will just sum those together and you'll get both "gay" and "macho" stuff.
Worse, if enough people try to outsmart the system, it pollutes the correlations. "Gay" and "macho" items become linked together, and requesting one makes it recommend the other. This can work both ways. If most of the people who record "The Rise and Fall of the Third Reich" are doing so to counter their watching "Queer as Folk", then someone who watches "Third Reich" will get "Queer" as their first recommendation!
In case it's not clear how this works, let me describe one generic type of recommendation system. The system forms rules like "People who like A also like B, C, and D" based on analyzing its database, with some definition of "like." This being e-commerce, it's usually "like=buy". It might be more complicated, e.g. "35% of people who buy A also buy B."
These rules can be shown raw, as Amazon does, or they can be personalized. I've bought A, C, and D, so it combines the rules for A, C and D (using set intersections, sums, averages, etc. depending on how the rules are stored.) It decides, in essence "People who like A like B; people who like C like B; you like A and C, so you probably would like B."
So if you wanted to counter your watching "Queer as Folk", what you would want to do is not train it with "anti-gay" input, rather you would want to flood it with "everything but gay" input-- BUT you would probably have to do it IN EQUAL PROPORTION to the viewing habits of the average person in their database.
Maybe it would look a lot like the guidelines, checklists and techniques specified by the World Wide Web Consortium that Tim Berners-Lee has been advocacting since he invented the web? Indeed, the same level of accesibility that HTML 1.0 was designed to promote?
HTML was designed specifically to separate content from presentation, so that a wide variety of display devices could be used to access the same information. When too many people started breaking the rules to get the right look, W3C introduced style sheets to allow formatting without breaking the data. Most web pages I view look just fine in w3m in an xterm, tables and all. Add a braille viewer, and you're doing well. Or, for the unwashed masses, I've heard that a braille display with IE works too.
I heard an interview with the researcher on NPR this morning (recording of the show), and there is no known cause.
The researcher's hypothesis is that the irritation of the tape encourages immune response. One piece of anecdotal evidence supporting that is that some people claimed that other warts elsewhere on the body were also affected to some degree.
From http://www.w3.org/People/Berners-Lee/FAQ.html:
"Robert Cailliau made the WWW icon in many colors but chose green as he had always seen W in his head as green."
is a pair of emergency pants!
That should be http://www.the-dma.org/government/donotcalllists.s html for a listing of various state do-not-call laws.
See http://www.the-dma.org/government/donotcalllists.s html for a list of states and their do-not-call lists.
p s/ConTip-NoCall.htm) but I signed up for a do-not-call list several years ago at one of the state's booths at the MN State Fair, and haven't gotten telemarketer calls since.
Oddly, MN apparently has a new do-not-call law, starting in November (http://www.commerce.state.mn.us/pages/ConsumerTi