Dialectizer Shut Down
endisnigh writes: "Another fun, interesting and innovative online resource goes the way of corporate ignorance - due to threats of legal action, the author of the dialectizer, a Web page that dynamically translates another Web page's text into an alternate 'dialect' such as 'redneck' or 'Swedish Chef' and displays the result, has packed up his dialectizer and gone home - see the notice here."
Here's a description from Micro Star v. Formgen Inc.:
As the site argues, the dialectizer only offers another means of viewing publicly accessible web documents. It uses its own rules to redisplay a public copy. What's next, an argument that all web browsers infringe because they don't follow HTML specs and so display the pages differently from the page authors' intent?(I had these cites handy because I've been waiting to see the same misguided challenge raised against ThirdVoice or my poky annotation engine for offering web page annotation.)
-- Openlaw: Fighting for fair use and the public domain
That brings up the question...
What if the dialectizer were a program that you ran on your computer that translated the pages?
It would be perfectly okay, right? Now what's the difference between that and running the program off of someone elses computer to be sent back to you?
-- Dr. Eldarion --
It's not what it is, it's something else.
Does this mean something like Babelfish would be in violation of copyright laws? And dosen't copyright law allow for parodies of sites?
Just a thought, but wouldn't stuff like that be considered a parody, and thus fair use?
-- Dr. Eldarion --
It's not what it is, it's something else.
Our legal system has transformed from a mechanism for justice (if it ever was this way) to something that people with money use to get their way. Don't seriously tell me that these sites actually believe this is copyright infrigement. They just don't like having their pages translated into these "dialects", so they get out their wallets and have it shut down. Our legal system needs to be fixed to prevent this, but I honestly can't think of how. Maybe a loser-pays system would help. I dunno. Anybody have some decent suggestions on this?
Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
Really he says it much better than I can:
l ect= redneck&url=http%3A%2F%2Fwww.rinkworks.com%2Fdiale ct%2Fcopyr.shtml
http://www.rinkworks.com/dialect/dialectp.cgi?dia
--
blue
i browse at -1 because they're funnier than you are.
What then of Google and it's locally cached copies?
Web sites give or deny permission to cache via the facilities provided by various headers returned on HTTP requests. See RFC 2068: Hypertext Transfer Protocol -- HTTP/1.1
#!/usr/bin/perl
#
# Really simple dialectifying Perl script.
# Written by Christopher Thomas
#
# This can be transformed into a CGI very easily. Sample code for this
# has been included but commented out.
#
# This code may be freely used, distributed, and modified.
#
#
# Libraries.
#
# use whatever_cgi_library; # CGI
use strict;
#
# Translation tables.
#
# Make up a set of these tables for each dialect you want to produce.
# Remember that this is case-sensitive.
#
#
# Jar-Jar table.
#
# I've set this translation table up to mimic the "Jar-Jargonizer" that
# was featured in Quickies a while back.
# I've forgotten many of the suffix translations the original script did.
# No great loss.
#
# Translate prefixes of words.
my (%jarjar_prefix_trans);
%jarjar_prefix_trans =
(
);
# Translate suffixes of words.
my (%jarjar_suffix_trans);
%jarjar_suffix_trans =
(
"'re"=>"sa be"
);
# Translate whole words.
my (%jarjar_word_trans);
%jarjar_word_trans =
(
"me"=>"meesa",
"I"=>"meesa",
"you"=>"yousa",
"am"=>"be",
"I'm"=>"meesa be",
"are"=>"be",
"people"=>"Gungans",
"person"=>"Gungan",
"microsoft"=>"the Sith"
);
#
# Translation table hook pointers.
#
my (%jarjar_table);
%jarjar_table =
(
"prefix"=>\%jarjar_prefix_trans,
"suffix"=>\%jarjar_suffix_trans,
"word"=>\%jarjar_word_trans
);
#
# Master table indexing hook tables.
#
my (%dialect_tables);
%dialect_tables =
(
"jarjar"=>\%jarjar_table
);
#
# Utility functions.
#
#
# This function translates the specified list according to the specified
# dialect rules.
#
# Arg 1 is an array reference pointing to the text to modify.
# Arg 2 is a hash reference pointing to a dialect hook table.
#
# Returns 0 if successful and an error code if not.
sub translate
{
my ($text_p, $htable_p);
my ($prefix_p, $suffix_p, $word_p);
my ($errcode);
my ($this_line);
my ($index);
my ($key);
# Default to success.
$errcode = 0;
# Read arguments.
$text_p = $_[0];
$htable_p = $_[1];
# Sanity check.
if ((!(defined $text_p)) || (!(defined $htable_p)))
{
# Bad arguments.
$errcode = 1;
}
else
{
# Extract hook pointers.
$prefix_p = $$htable_p{prefix};
$suffix_p = $$htable_p{suffix};
$word_p = $$htable_p{word};
# Blithely assume that these hook pointers are valid.
# Translate.
for ($index = 0; defined ($this_line = $$text_p[$index]); $index++)
{
# Pad the string, to make life easier.
$this_line = " $this_line";
# Replace prefixes.
foreach $key (keys %$prefix_p)
{
# Take precautions against munching HTML tags.
$this_line =~ s/([^\w\])/$$suffix_p{$key}$1/g;
}
# Replace words.
foreach $key (keys %$word_p)
{
# Take precautions against munching HTML tags.
$this_line =~ s/([^\w\])/$1$$word_p{$key}$2/g;
}
# Remove padding.
$this_line =~ s/^.//;
# Store this line back in the array.
$$text_p[$index] = $this_line;
}
}
# Return the result.
return $errcode;
}
#
# Main program.
#
my ($target_URL);
my ($dialect_choice);
my (@page_text);
my ($hook_p);
my ($index);
# OUTPUT CONTENT-TYPE HEADER HERE # CGI
# Get arguments.
# CGI READING GOES HERE # CGI
$target_URL = $ARGV[0];
$dialect_choice = "jarjar";
# Get a table to the hook table for this dialect.
$hook_p = $dialect_tables{$dialect_choice};
# Sanity check.
if (!(defined $hook_p))
{
# No such dialect.
print "ERROR: Can't find dialect \"$dialect_choice\".\n";
}
else
{
# Try to read the specified web page.
@page_text = `lynx -source $target_URL`;
# Blithely assume that this worked.
# Translate the page.
translate(\@page_text, $hook_p);
# Dump the page contents to standard output.
for ($index = 0; defined $page_text[$index]; $index++)
{
# Don't add newlines; we've kept the old ones.
print $page_text[$index];
}
# Print a trailing newline, just in case the web source didn't have one
# and a human is viewing the output.
print "\n";
}
F*ck you!
Lawyer Translation: You are hereby ordered to cease and desist immediately under CFR 938.10 subparagraph b, which states: "No parody or other humor may take place via a purely online forum which modifies language without the consent of the people using said language". Furthermore, plaintiff hereby declares...
What does this mean for:
--
--
fat lenny's gonna lick your brain today.
I dunno about you guys, but I for one am glad to see this thing gone. Who wants "jive" speak anyway? Do you really think seeing "slap ma' fro" all the time is funny? Do you think that real people of African descent talk that way? I'm glad I wasn't raised on 70's blaxploitation films.
And what about "redneck"? Southern-Americans have it bad enough, what with the Yankess harassing them about the flag they flew in the War of Northern Aggression. I don't think making fun of the way that they say "y'all" is very proper.
And lastly, the Swedish chef. Can we really tolerate the amount of anti-Scandinavian bigotry which we are bombarded with daily in the media? Linus himself was of Swedish extraction, and it is no secret that his father was a chef. Granted, he had a tendency to throw chickens around wildly and make noises that can't quite be described as speech, but that's no reason to rub salt in old wounds.
Shame on you Slashdot, for supporting this monstrosity.
Good point. Is this really any different than babelfish?
Or the jesus translator (sorry lost the link), or the candaianizer and all the rest (there are a LOT of these things).
Bablefish is probably the best example though, it is doing the same thing that this guys was.
The bablefish doesn't do the same thing this guy was at all. Though the technological process may be similar, the transformation of the work is completely different.
The bablefish takes a peice of text and changes the language that it is written in. The content, and more importantly, the context of the message is unchanged. A political rallying call in french is still a political rallying call when translated to english. A bunch of blond joke in spanish are still blond jokes in english. (though puns would just sound dumb). A health alert in english is still a health alert in portuguese. Ad nauseum.
But the entire point of these dialect "translaters" is to change, not preserve context. Any text read through it becomes a joke. A person who writes on political topics might be perfectly happy for people to read them in other languages, but annoyed to have them turned into a swedish chef joke by someone who isn't even creative enough to do the "parody" on their own.
Again, this is not a legal argument, so save those flames for someone else. But there is a reason that this guy has been flooded with requests to not link to people's sites while bablefish likely hasn't recieved any such requests. They aren't the same thing and people who have worked hard on a site know the difference. If you don't recognize that (possibly non-legal) difference, you won't understand the context of this announcement.
-Kahuna Burger
...will work for Chick tracts...
But in all seriousness, releasing the code to the dialiectizer would allow us to enjoy it without putting rinkworks at risk of lawsuit, and without overloading rinkworks' server. Not having thoroughly examined their site, I don't know that they don't offer the code -- I just didn't see it upon casual inspection.
Alternatively, perhaps recoding it as a plug-in would be a good idea. Same benefits, plus it'd be seamless -- just click a "dialectize" button.
Christopher A. Bohn
cb
Oooh! What does this button do!?
So they're going to pay Lawyers $$$$, threaten freedom of speech, and look like complete idiots whereas they could have achieved what they wanted by just adding this line to httpd.conf:
Deny from rinkworks.com
Fucking clueless corporate bullies. Too bad stupidity is not lethal.
As everyone can see from the Swedish chef and jive posts that the dialectizer isn't actually shut down. It is still available, you can copy and paste text into it. You just can't aim it at a website. I bet half of the people here didn't read the notice and assumed that it's actually completely shut down. It does have decreased functionality, however, and I think it's a great injustice that he has to change it.
It makes sense to have a distinction between what you can do as a local user, and what you can do in a server and then retransmit to random people.
That would make all proxy servers illegal. Squid essentially does what you describe.
-John
no, we get rednecks in the uk.
Fat, balding, drunk, slobbish, stupid, ignorant, Sun reading twats...
often seen abroad, wrapped in the union jack, getting the shit kicked out of them by the police, or foreign rednecks about half their size...
much to the amusement of all who are embarrassed by these losers.
Check out the news re Copenhagen today, for example.
Cultural note (and i use the term in its loosest possible sense) - the Sun is like a newpaper for morons - sort of like National Enquirer, but without the sense of humour. Its `reading age` was about 6, last i heard.
Uses That Are Generally Fair Uses Subject to some general limitations discussed later in this article, the following types of uses are usually deemed fair uses:
Seems like fair use under the parody clause but we all know that he with the lawyer and the money wins. Call the ACLU.
Ever hear of the CBLDF, Comic Book Legal Defense Fund? It's a fund to help comic book writers targeted by ridiculous legal action, mainly independent titles.
We need one for Internet sites facing this kind of bizarre legal harassment. We need an organization of people banded together (and taking donations, lets face it, it takes money), to help people fight this blossoming ridiculous legal activity.
My guess is lawyers are now engaged in preventative-and-predatory maneuvers, first strikes against any possible percieved threat no matter how bizarre or untrue. I've seen legal departments go on automatic before, and it seems this is happening more and more often on the net.
So, it's time to band together and fight.
"The Sage treasures Unity and measures all things by it" - Lao Tzu
POLITICAL RANT = ON
I live in Austria, Europe, a small country that has recently received a fair amount of flak on an international level due to the fact that the new government is considered too right-wing. The main point of concern was and is that one of the parties in the new coalition government has a rather poor track record with respect to political correctness. Numerous outside governments (including the US) made copious amounts of well-meaning and patronizing remarks about how the free world has to watch that the standards of democracy and free speech have to be upheld in Austria now that this new administration is in charge, and so on.
All of which is, of course, total drivel because said government was democratically elected and has so far shown not the slightest intention of altering the political system for the worse.
If something like the shutting down of Dialectizer had taken place in Austria, free speech advocates would probably already be spraying swastikas on Austrian embassies in some places. But if this takes place in the USA with its sacred legal system that leans towards corporate fascism, everything is all right. How very nice >:-)
Perhaps the citizens of the US should start giving some thoughts as to whether their own political and judical systems are still up to standards that allow them to preach to the entire world how things ought to be done...
They could have done that.
;-)
But they are prolly running IIS
Now they won't be able to read websites in their native language!
It's not enough to bash in heads, you've got to bash in minds. - Captain Hammer