If there were some amazingly useful reason to do it this way, it should have been clearly documented and never made it to The Daily WTF.
True, but we're only seeing a snippet of it that made it on the Daily WTF.
Clearly written, understandable code that programmers spend less time trying to understand and are less likely to introduce bugs into will almost always trump a small, unneeded optimization.
Without context, we wouldn't know if this was standard practice in the code-base, was documented elsewhere or if the person who posted it to TDWTF is just new and thought it's a WTF-moment. Context is everything.
I'm not defending the code, I was merely pointing out that it seems odd that someone who knows about loops would not know about conditionals.
Regarding clarity, the code was very easy to follow comment-less to someone who doesn't program in C++. Was the code odd? yes, obfuscated? not at all.
Hopefully he has upgraded to the "once in a while" switch replacement technique.
That struck me as weird, because as a programmer you usually start with conditionals and then move on to loops. I had a hard time believing that someone would know of "while(true)" and not "else if".
So I decided to run some tests over dinner. I'm no C++ programmer but here's how I went with this.
First I wrote a tests.cpp that looks like this:
#include int main () {
int subType, mainType = 11;
Slashdot_Filter_Sucks// Editable section
while (true) {
if (mainType == 7) {
subType = 4;
break;
}
if(mainType == 9) {
subType = 6;
break;
}
if(mainType == 11) {
subType = 9;
break;
}
break;
}
Slashdot_Filter_Sucks// End of editable
std:: cout
I compiled that and it resulted in a 8120 bytes binary that ran in 0.005ms.
I thought about other obvious and simple ways to write this code and I created four more versions that are identical except for the code between the dividers (I had pretty asterisk lines but Slashdot's junk filter made me take it off). They are:
testif.cpp (test using an if/else statement):
if (mainType == 7) subType = 4; else if (mainType == 9) subType = 6; else if (mainType == 11) subType = 9;
testifonly.cpp (no else, only ifs):
if (mainType == 7) subType = 4; if (mainType == 9) subType = 6; if (mainType == 11) subType = 9;
testswitch.cpp (using a switch statement):
switch(mainType) {
case 7: subType = 4;
case 9: subType = 6;
case 11: subType = 9; }
testp.cpp (subtract 3 from mainType since that seemed like a pattern):
subType = mainType - 3;
I compiled everything using g++ then I ran time./output. All the versions ran on average in 0.005ms, however, the binary sizes were different:
Here it seems that the subtraction and the weird while/break method have the smallest file size. Without code context, one can imagine that subType was to be left alone if mainType was not 7,9 or 11. Which would mean the subtraction code wouldn't work in that scenario.
Now, I don't know the intricacies of C++ or Assembly, but I have to wonder if this was the work of a moron or someone who knew exactly what they were doing and did so for a reason.
"Are you of bad grape" has significance in Castillian Spanish, for example. For someone who cannot carry on a conversation at a bar in Spanish, they're never going to understand that.
Never say never. If they do not live in a Spanish speaking country then they will probably not even be exposed to it.
There's nothing wrong with picking up idioms that you do not understand from stand up comedy and then using a search engine to find out what they mean. If anything, seeing the crowd react to "Are you of bad grape" will probably give the viewer a hint that there's a meaning behind the meaning.
I agree with you though that you need a certain command of the language before you can truly enjoy stand up comedy, but even at a basic level you would be able to pick up a few things here and there.
Also, nothing breaks the ice like messing up an idiom or a joke in-front of a native speaker;)
I have a real problem talking to foreigners on a social level because of my slang. I try hard to tone it down but fail every time, innit?
Don't tone it down. It's on the foreigner to understand you "be'aa", and it will help them in future encounters with people who might not be as understanding or it'll just help them be able to fit in better.
As long as you can repeat yourself for someone to catch up, it shouldn't be a problem. And foreigners should be able to tell which slang works appropriately depending on the region they're in as they develop language sophistication.
I have. And because of it I know that the Harlem Globetrotters (which sounds like the Harlem globe chowders) is an entertainment basketball performance team and not a soup, the Harlem Shake is a dance and not a drink, etc.
It's not a good place to start, but it will definitely help you understand some African American culture.
Can you give examples of English songs that someone should be listening to? If I turned on the radio, I don't think hearing Beyonce/Eminem/Green Day/Metallica/Jay-Z/BrittneySpears would help me learn english.
Sure. Norah Jones, Dido, Celine Dion (works for French too), Elton John, Duran Duran, Robbie Williams, Stevie Wonder, the list goes on.
The goal would be to find a song that you like that's catchy enough for you to repeat it. It's not the be-all end-all method of learning a language, but it will help.
I can't imagine trying to pick out Farsi with a singer who's using a voice synthesizer.
Go back to the classics and listen to older generation songs that are clearer and aren't computerized. Again, the goal is to enjoy the process and pick up the pieces as you go from as many sources as possible.
Movies are even better. When you are a novice, subtitles help you know what to listen for, and for everyone the action on the screen can act as a cue to what is being said.
Absolutely, movies with subtitles are great as they cover various things (including comedy) and will help you with certain aspects of the language.
However, finding free movies online (legally) with subtitles can be more of a challenge than finding the hottest new Vanessa Paradis song or catching the highlights from the French comedy festival for example.
I have found that two of the best free ways to learn a foreign language online is to listen to music in that language as well as watching stand up comedy in it.
The music gives you something catchy to repeat and will allow you to memorize certain words, common phrases, etc. while the comedy will give you more of an insight into the culture (and culturally applicable words) since most comedians criticize or magnify people's behavior, discuss current topics and issues and usually use good vocabulary.
Youtube can generally take care of those two.
If you can also find websites that cover a topic you're interested and have a background in (e.g. programming or math) in that language, it won't be as harsh of a transition as you'll know about the topic before hand or you'd be very interested in it which allow you to translate your knowledge in that domain, gaining you more vocabulary/grammar.
This obviously doesn't work across the board and you may need a book or some formal training for the basics to be able to distinguish between slang and proper use of the language. But if you're already on your way (and with the abundance of free online dictionaries) it can be a huge push forward.
IRC or other online chatting systems can also help validate what you have learned and help you improve your conversation skills.
The "way to a better future for the world" is birth control and education. Don't want to sound cold, but the places with the most human suffering are also the areas with the worst overpopulation vs. the least natural resources.
Dr. Hans Rosling debunked that theory a while ago. I'd highly recommend watching this (10 minutes) video. He uses his gapminder.org tool and backs the points he makes with real data.
The tl;dr version of the video:
"My students, they tell me population growth destroys the environment, so poor children may as well die... Now, the problem with that thinking, with this thought, is not that it's not moral, it's that it's wrong. And I will show you why..."
If you have more free time on your hand after watching this, I'd highly recommend looking up his TED talks, specially the one titled "Let my dataset change your mindset".
One hiccup: their ads system uses Google ads. Maybe they've implemented this in an anonymous way. I hope they have, but either way, at least with ixquick there a hope of privacy, unlike Google.
It looks like they did. The ads are not loaded with Javascript or anything from Google. They are basically links served from ixquick's server as: http://www.google.com/aclk?sa=l&ai=[Publisher/Advertiser Identifier]&adurl=[URL of the ad].
Since ixquick uses POST instead of GET, Google can't see your keywords in the referrer header, all they'll see is that you came from (http://us2.ixquick.com/do/metasearch.pl).
My only issue with these meta-search engines is that they rely on all of the other search engines to produce their results. I'm not sure if what they're doing is allowed by the engines' terms of services (e.g. I don't see Google on ixquick's list, but yet there's Scroogle), and I don't know if they're viable long term.
I'm pretty sure if they get big enough then Bing, Yahoo and others will have an issue with their traffic going ixquick's way.
I misspoke, I meant to say "any of these toolbars". I'm with you 99.999% are crap.
I used to use Web Developer too but I mainly use Firebug nowadays (I've always disabled the toolbar, so I don't really think of it as one).
The only things I still use Web Developer for are the W3C validation (Ctrl+Shift+A) and quickly disabling css (Ctrl+Shift+S) and maybe some cookies debugging every now and again.
- Invasion of privacy, the queries that fly off to Google with every key stroke - Mandatory Google-updater that stays on your system for a day even after you uninstall everything
Whats wrong with analytics?
Two perspectives:
User: Google stalking you around the web. No clear privacy policy for not combining search/google-account data with analytics.
Site-owner/Advertiser: Missing help pages (404), stats do not add up. Very unpolished experience specifically when combined with ad sense: constantly getting "beta" features when it's a paid-for service is not good.
As far as I'm concerned toolbar == spy-ware. Google jumped the shark and joined the ranks of Yahoo, MSN and Happy-smiley-spy-ware-toolbar the day they created one and started shoving it down people's throat.
No techie I know installs any toolbar in IE or Firefox. The only poor souls that seems to be stuck with them are non-techies, who usually have at least 3-4 toolbars and they "don't know how it happened".
It's also amazing to watch them browse the web, they almost never use the address bar, it's either the Google or Yahoo toolbar's search box, and they seem to mix and match them in any given session. Basically whatever box is closest to the mouse pointer.
I would be surprised if this was actually a "bug" and not a feature, sounds like a great bug to have for a data mining company. I also wonder if the assertion that it only affects "versions 6.3.911.1819 through 6.4.1311.42" is true. How can anyone confirm that since "the company intends to automatically update users' toolbars sometime today". Who has an older version to check?
Google toolbar, analytics, ad sense, double click, chrome... My love for Google is diminishing faster than the DOW in 2008.
She's clearly not a techie. Just look at the stereotypical description of the engineer writing a PHP compiler. While she does seem to basically understand what he's doing, she clearly avoids the engineers.
Not only that, but this also didn't make any sense to me:
PHP is an example of a scripted language. The computer or browser reads the program like a script, from top to bottom, and executes it in that order: anything you declare at the bottom cannot be referenced at the top. But with a compiled language, the program you write is compiled into an executable file. It doesn’t have to read the program from beginning to end in order to execute commands.
I guess I'm missing something here, because:
<?php hello(); function hello() { echo 'Hello world!'; } ?>
The web is supposed to be open, if we kowtow to patent encumbered formats just because Google says so, then I'm afraid the last 10 years we have spent trying to get up from under Microsoft and the browser wars would have been a complete waste.
We're basically going to head back to "This site is best viewed by X or Y", only with different values for X and Y.
The reason a "plug-in" solution is redundant stems from the fact that you can already serve H.264 content using plug-ins _today_. The whole point of the <video> tag was to standardize and open up the mess video has become (Flash, Quicktime, WMP, Silver light, etc.).
If you shun browser makers (and content producers) with patent encumbered formats, then you might as well call Flash a standard and be done with it.
It amazes me that the general sentiment against MS's closed-"open" office formats was highly negative (which was well deserved), but when Google basically says F-U to What-wg and does whatever it wants anyway with a patent encumbered format then Firefox is at fault for not paying for royalties.
The day YouTube moves to HTML5 and only serves H.264 content (which will not happen any time soon, thanks IE) is the last day I'll visit that site. Thanks, but no thanks, I'm not going back to the dark ages of the web to watch a dog skate-board.
Also, stop acting like anyone actully cares about the legal status of codecs. If anyone did then ffmpeg, vlc, etc would not exist.
I thought VLC, ffmepg and others are going to be in trouble if the EU legalized software patents. That leads me to believe that they (VLC, ffmpeg, et al) are based in Europe or somehow are able to use the lack of software patents there to their advantage.
Brief quote from VLC's press release:
The end draws near...
VideoLAN is seriously threatened by software patents due to the numerous patented techniques it implements and uses. Also threatened are the many libraries and projects which VLC is built upon, like FFmpeg, and the other fellow Free And Open Source software multimedia players, which include MPlayer, xine, Freevo, MythTV, gstreamer.
11-3!=9
Yup, I replied to myself with corrections over an hour ago.
If there were some amazingly useful reason to do it this way, it should have been clearly documented and never made it to The Daily WTF.
True, but we're only seeing a snippet of it that made it on the Daily WTF.
Clearly written, understandable code that programmers spend less time trying to understand and are less likely to introduce bugs into will almost always trump a small, unneeded optimization.
Without context, we wouldn't know if this was standard practice in the code-base, was documented elsewhere or if the person who posted it to TDWTF is just new and thought it's a WTF-moment. Context is everything.
I'm not defending the code, I was merely pointing out that it seems odd that someone who knows about loops would not know about conditionals.
Regarding clarity, the code was very easy to follow comment-less to someone who doesn't program in C++. Was the code odd? yes, obfuscated? not at all.
Thanks for catching that. Did I mention I had a few drinks with dinner? :)
Here's the (now bigger) switch with breaks:
8125 testswitch
8131 testswitch_fixed
8029 testswitch_o3
8035 testswitch_fixed_o3
What makes PHP nice is that it is so close to C
Which is like saying an anus is almost like a vagina...
LOL! Bravo Sir! Well done.
Grr... Second reply to my post. testp.cpp was flawed since if mainType == 11 subType should be 9 not 8 (11-3 == 8).
I modified the code to increment subType by 1 if it's 8:
subType = mainType - 3;
if (subType == 8) subType++;
which resulted in:
8094 testp_fixed
8120 tests
And with -O3 optimization:
8024 tests_o3
8030 testp_fixed_o3
tests.cpp seems to be the smallest of all with -O3 optimization.
HTML ate my code, and the Slashdot filter won't let me re-post without a lot of text. The first and last lines were:
#include <iostream>
[... snip ...]
std :: cout << subType;
return 0;
}
Hopefully he has upgraded to the "once in a while" switch replacement technique.
That struck me as weird, because as a programmer you usually start with conditionals and then move on to loops. I had a hard time believing that someone would know of "while(true)" and not "else if".
So I decided to run some tests over dinner. I'm no C++ programmer but here's how I went with this.
First I wrote a tests.cpp that looks like this:
#include
int main () {
int subType, mainType = 11;
Slashdot_Filter_Sucks // Editable section // End of editable
while (true) {
if (mainType == 7) {
subType = 4;
break;
}
if(mainType == 9) {
subType = 6;
break;
}
if(mainType == 11) {
subType = 9;
break;
}
break;
}
Slashdot_Filter_Sucks
std :: cout
I compiled that and it resulted in a 8120 bytes binary that ran in 0.005ms.
I thought about other obvious and simple ways to write this code and I created four more versions that are identical except for the code between the dividers (I had pretty asterisk lines but Slashdot's junk filter made me take it off). They are:
testif.cpp (test using an if/else statement):
if (mainType == 7) subType = 4;
else if (mainType == 9) subType = 6;
else if (mainType == 11) subType = 9;
testifonly.cpp (no else, only ifs):
if (mainType == 7) subType = 4;
if (mainType == 9) subType = 6;
if (mainType == 11) subType = 9;
testswitch.cpp (using a switch statement):
switch(mainType) {
case 7: subType = 4;
case 9: subType = 6;
case 11: subType = 9;
}
testp.cpp (subtract 3 from mainType since that seemed like a pattern):
subType = mainType - 3;
I compiled everything using g++ then I ran time ./output. All the versions ran on average in 0.005ms, however, the binary sizes were different:
#ls -l (ordered by size)
8072 testp
8109 testifonly
8120 tests
8121 testif
8125 testswitch
Ok, no case here in terms of size. So I tried compiling again with -O3, and the results were:
#ls -l (ordered by size)
8024 testp_o3
8024 tests_o3
8025 testif_o3
8029 testifonly_o3
8029 testswitch_o3
Here it seems that the subtraction and the weird while/break method have the smallest file size. Without code context, one can imagine that subType was to be left alone if mainType was not 7,9 or 11. Which would mean the subtraction code wouldn't work in that scenario.
Now, I don't know the intricacies of C++ or Assembly, but I have to wonder if this was the work of a moron or someone who knew exactly what they were doing and did so for a reason.
Again, without context, none of this matters.
"Are you of bad grape" has significance in Castillian Spanish, for example. For someone who cannot carry on a conversation at a bar in Spanish, they're never going to understand that.
Never say never. If they do not live in a Spanish speaking country then they will probably not even be exposed to it.
There's nothing wrong with picking up idioms that you do not understand from stand up comedy and then using a search engine to find out what they mean. If anything, seeing the crowd react to "Are you of bad grape" will probably give the viewer a hint that there's a meaning behind the meaning.
I agree with you though that you need a certain command of the language before you can truly enjoy stand up comedy, but even at a basic level you would be able to pick up a few things here and there.
Also, nothing breaks the ice like messing up an idiom or a joke in-front of a native speaker ;)
We talked about this two years ago. Copyright still sucks, nothing new here.
P.S.: Amazingly, that was on February, 2nd 2008. I wonder if we will be talking about Yahoo considering an alliance with Google tomorrow!
I have a real problem talking to foreigners on a social level because of my slang. I try hard to tone it down but fail every time, innit?
Don't tone it down. It's on the foreigner to understand you "be'aa", and it will help them in future encounters with people who might not be as understanding or it'll just help them be able to fit in better.
As long as you can repeat yourself for someone to catch up, it shouldn't be a problem. And foreigners should be able to tell which slang works appropriately depending on the region they're in as they develop language sophistication.
What about people that want to learn German?
Search for "Komödie" and listen to 99 loft balloons.
I guess you've never seen Def Jam?
I have. And because of it I know that the Harlem Globetrotters (which sounds like the Harlem globe chowders) is an entertainment basketball performance team and not a soup, the Harlem Shake is a dance and not a drink, etc.
It's not a good place to start, but it will definitely help you understand some African American culture.
Can you give examples of English songs that someone should be listening to? If I turned on the radio, I don't think hearing Beyonce/Eminem/Green Day/Metallica/Jay-Z/BrittneySpears would help me learn english.
Sure. Norah Jones, Dido, Celine Dion (works for French too), Elton John, Duran Duran, Robbie Williams, Stevie Wonder, the list goes on.
The goal would be to find a song that you like that's catchy enough for you to repeat it. It's not the be-all end-all method of learning a language, but it will help.
I can't imagine trying to pick out Farsi with a singer who's using a voice synthesizer.
Go back to the classics and listen to older generation songs that are clearer and aren't computerized. Again, the goal is to enjoy the process and pick up the pieces as you go from as many sources as possible.
Movies are even better. When you are a novice, subtitles help you know what to listen for, and for everyone the action on the screen can act as a cue to what is being said.
Absolutely, movies with subtitles are great as they cover various things (including comedy) and will help you with certain aspects of the language.
However, finding free movies online (legally) with subtitles can be more of a challenge than finding the hottest new Vanessa Paradis song or catching the highlights from the French comedy festival for example.
I have found that two of the best free ways to learn a foreign language online is to listen to music in that language as well as watching stand up comedy in it.
The music gives you something catchy to repeat and will allow you to memorize certain words, common phrases, etc. while the comedy will give you more of an insight into the culture (and culturally applicable words) since most comedians criticize or magnify people's behavior, discuss current topics and issues and usually use good vocabulary.
Youtube can generally take care of those two.
If you can also find websites that cover a topic you're interested and have a background in (e.g. programming or math) in that language, it won't be as harsh of a transition as you'll know about the topic before hand or you'd be very interested in it which allow you to translate your knowledge in that domain, gaining you more vocabulary/grammar.
This obviously doesn't work across the board and you may need a book or some formal training for the basics to be able to distinguish between slang and proper use of the language. But if you're already on your way (and with the abundance of free online dictionaries) it can be a huge push forward.
IRC or other online chatting systems can also help validate what you have learned and help you improve your conversation skills.
See the little "*" by his name? He's a subscriber and bestowed upon such a brotherhood is the gift of future sight.
Yes we do!
P.S.: I would call in sick Monday if I were you.
The "way to a better future for the world" is birth control and education. Don't want to sound cold, but the places with the most human suffering are also the areas with the worst overpopulation vs. the least natural resources.
Dr. Hans Rosling debunked that theory a while ago. I'd highly recommend watching this (10 minutes) video. He uses his gapminder.org tool and backs the points he makes with real data.
The tl;dr version of the video:
"My students, they tell me population growth destroys the environment, so poor children may as well die ... Now, the problem with that thinking, with this thought, is not that it's not moral, it's that it's wrong. And I will show you why..."
If you have more free time on your hand after watching this, I'd highly recommend looking up his TED talks, specially the one titled "Let my dataset change your mindset".
One hiccup: their ads system uses Google ads. Maybe they've implemented this in an anonymous way. I hope they have, but either way, at least with ixquick there a hope of privacy, unlike Google.
It looks like they did. The ads are not loaded with Javascript or anything from Google. They are basically links served from ixquick's server as:
http://www.google.com/aclk?sa=l&ai=[Publisher/Advertiser Identifier]&adurl=[URL of the ad].
Since ixquick uses POST instead of GET, Google can't see your keywords in the referrer header, all they'll see is that you came from (http://us2.ixquick.com/do/metasearch.pl).
My only issue with these meta-search engines is that they rely on all of the other search engines to produce their results. I'm not sure if what they're doing is allowed by the engines' terms of services (e.g. I don't see Google on ixquick's list, but yet there's Scroogle), and I don't know if they're viable long term.
I'm pretty sure if they get big enough then Bing, Yahoo and others will have an issue with their traffic going ixquick's way.
I misspoke, I meant to say "any of these toolbars". I'm with you 99.999% are crap.
I used to use Web Developer too but I mainly use Firebug nowadays (I've always disabled the toolbar, so I don't really think of it as one).
The only things I still use Web Developer for are the W3C validation (Ctrl+Shift+A) and quickly disabling css (Ctrl+Shift+S) and maybe some cookies debugging every now and again.
I've responded above to a similar question.
What is wrong with Chrome?
- Invasion of privacy, the queries that fly off to Google with every key stroke
- Mandatory Google-updater that stays on your system for a day even after you uninstall everything
Whats wrong with analytics?
Two perspectives:
User: Google stalking you around the web. No clear privacy policy for not combining search/google-account data with analytics.
Site-owner/Advertiser: Missing help pages (404), stats do not add up. Very unpolished experience specifically when combined with ad sense: constantly getting "beta" features when it's a paid-for service is not good.
As far as I'm concerned toolbar == spy-ware. Google jumped the shark and joined the ranks of Yahoo, MSN and Happy-smiley-spy-ware-toolbar the day they created one and started shoving it down people's throat.
No techie I know installs any toolbar in IE or Firefox. The only poor souls that seems to be stuck with them are non-techies, who usually have at least 3-4 toolbars and they "don't know how it happened".
It's also amazing to watch them browse the web, they almost never use the address bar, it's either the Google or Yahoo toolbar's search box, and they seem to mix and match them in any given session. Basically whatever box is closest to the mouse pointer.
I would be surprised if this was actually a "bug" and not a feature, sounds like a great bug to have for a data mining company. I also wonder if the assertion that it only affects "versions 6.3.911.1819 through 6.4.1311.42" is true. How can anyone confirm that since "the company intends to automatically update users' toolbars sometime today". Who has an older version to check?
Google toolbar, analytics, ad sense, double click, chrome... My love for Google is diminishing faster than the DOW in 2008.
Undoing "Overrated" mod, was going for funny! (stupid touch-pad).
She's clearly not a techie. Just look at the stereotypical description of the engineer writing a PHP compiler. While she does seem to basically understand what he's doing, she clearly avoids the engineers.
Not only that, but this also didn't make any sense to me:
PHP is an example of a scripted language. The computer or browser reads the program like a script, from top to bottom, and executes it in that order: anything you declare at the bottom cannot be referenced at the top. But with a compiled language, the program you write is compiled into an executable file. It doesn’t have to read the program from beginning to end in order to execute commands.
I guess I'm missing something here, because:
<?php
hello();
function hello() { echo 'Hello world!'; }
?>
Works. However:
#include <iostream>
int main() {
cout << hello;
string hello = "Hello World!";
return 0;
}
Will obviously not compile. So, what am I missing here?
it's the likes of YouTube and other online content providers that really have the last word, and they have chosen h.264
YouTube is not the only video site in town. DailyMotion went with Theora and others may follow that example.
The web is supposed to be open, if we kowtow to patent encumbered formats just because Google says so, then I'm afraid the last 10 years we have spent trying to get up from under Microsoft and the browser wars would have been a complete waste.
We're basically going to head back to "This site is best viewed by X or Y", only with different values for X and Y.
The reason a "plug-in" solution is redundant stems from the fact that you can already serve H.264 content using plug-ins _today_. The whole point of the <video> tag was to standardize and open up the mess video has become (Flash, Quicktime, WMP, Silver light, etc.).
If you shun browser makers (and content producers) with patent encumbered formats, then you might as well call Flash a standard and be done with it.
It amazes me that the general sentiment against MS's closed-"open" office formats was highly negative (which was well deserved), but when Google basically says F-U to What-wg and does whatever it wants anyway with a patent encumbered format then Firefox is at fault for not paying for royalties.
The day YouTube moves to HTML5 and only serves H.264 content (which will not happen any time soon, thanks IE) is the last day I'll visit that site. Thanks, but no thanks, I'm not going back to the dark ages of the web to watch a dog skate-board.
Also, stop acting like anyone actully cares about the legal status of codecs. If anyone did then ffmpeg, vlc, etc would not exist.
I thought VLC, ffmepg and others are going to be in trouble if the EU legalized software patents. That leads me to believe that they (VLC, ffmpeg, et al) are based in Europe or somehow are able to use the lack of software patents there to their advantage.
Brief quote from VLC's press release:
The end draws near...
VideoLAN is seriously threatened by software patents due to the numerous patented techniques it implements and uses. Also threatened are the many libraries and projects which VLC is built upon, like FFmpeg, and the other fellow Free And Open Source software multimedia players, which include MPlayer, xine, Freevo, MythTV, gstreamer.