In response to the birthdays I mentioned in my last post, Google has two topical logos today.
The American site, google.com, honors Sesame Street:
... while google.de remembers the fall of the Berlin Wall.
Quite the contrast.
In response to the birthdays I mentioned in my last post, Google has two topical logos today.
The American site, google.com, honors Sesame Street:
... while google.de remembers the fall of the Berlin Wall.
Quite the contrast.
This week is a good week: We've got lots of reasons to celebrate, that couldn't be more different in nature. Which ones, you ask?
Let's start with the oldest one: On November 10, Sesame Street turns 40. The show is still going strong, and I have fond memories of it when I was a child. My favorite characters were always Samson, as well as Ernie and Bert. Only much later I found out to my astonishment that Samson, the big, brown bear, is only present in the German version of the show, and not in its American counterpart. (In turn, Big Bird is missing from the German Sesamstraße). Happy Birthday, Sesame Street!
Number two on the list of this weeks "birthdays" is the reunited Federal Republic of Germany. While reunification wasn't completed until late 1990, the 9th of November, 1989, marks perhaps the most important step in the process. After several weeks of civil protests, the East German government announced that all GDR citizens could visit West Germany and West Berlin. In a slip of tongue, the announcing politician declared the unprecedented travel permit to be valid "immediately", resulting in an exodus of East Germans to the West.
Witnesses would later describe how the customs officials tried to check passports at first, and after awhile just opened the borders to let people pass, realizing it was futile to try any further checks. Due to this historic significance, the 9th of November was considered for the national holiday of Germany, but it was dropped in favor of the 3rd of October due to its unfortunate coincidence with at least two dark spots in German history. Happy birthday, reunited Germany!
Last, but certainly not least, Mozilla Firefox turns 5 on the 9th of November as well. Firefox 1.0 was released in 2004, and since then, the Web has been changing faster than ever. It has developed into an exciting platform for innovation and collaboration. That the web browser space is now a competitive environment with a number of excellent players in the market, is something Firefox had an essential influence on and it is something the Mozilla community can be proud of. Make sure to watch the video "The Story of Firefox" on the Five Years of Firefox website. Happy birthday, Firefox!
Photograph of West Germans welcoming East Germans, CC by-sa licensed by Bundesarchiv on Wikipedia.
This photo is not photoshopped:
The Mozilla Italia team projected a Firefox wordmark onto Rome's most famous landmark -- and on many other places all over the city. Make sure to check out the picture in its full glory over on flickr.
Picture CC by-sa licensed by nois3lab on flickr.
The source code for the Mozilla Add-ons project tries to follow the PEAR Coding Standards. One of these standards is to use 4 spaces per level of indentation, and no tabs.
Over time, unfortunately, some files start to contain a significant amount of mixed-up indentation (both from badly set-up IDEs and third-party contributions that came with tab indentation but went un-noticed). That's both tedious and error-prone to fix by hand.
A similar problem poses trailing whitespace. While it's just annoying in general, especially in HTML template files, it also increases page size unnecessarily by leading to more bytes transmitted on the wire, with no benefit to neither the users nor the developers.
Luckily, there are two quick fixes for these problems in both the editor vim and my IDE of choice, Komodo:
To remove tabs and replace them with spaces...
:%s/\t/ /g
(those are four spaces) -- or, as oremj points out in the comments, you could just to :retab
.And to wipe out trailing whitespace...
:%s/\s+$//g
which the regex-savvy among you have quickly decyphered as: "in the entire document, replace all one or more whitespace characters that are followed by a line ending with the empty string".Happy cleaning!
For work, I have a virtual machine serving one little purpose: To run Microsoft Internet Explorer 6, for the rare instances when I have to test a website with it. To make that a little more convenient and a little less painful, I just created a "desktop shortcut" for it, and look what it showed up as:
Haha, "Shortcut to Internet" -- this is classic.
This is just awesome: This Halloween, 638 students from Oregon State University beat the college record of the most students performing Michael Jackson's "Thriller" at Reser Stadium, Corvallis, Oregon.
Over 600 people was way more than the previous (student) record:
The previous college record was set at the College of William and Mary in Richmond, Va., where 242 people participated in the dance routine that student Kevin Dua organized. Dua's group beat the previous record of 147 people in an event at a British secondary school.
Here is the official footage of the event:
Of course, this has not been the first attempt to spectacularly perform this music video. Here's another video of a group of prisoners doing the same thing:
Finally, if you want to get a fix of the real thing, it's on youtube too.
Update: As a commenter points out, the OSU admissions blog has blogged the whole thing too, and provided some HD-quality video of the event, which I have replaced the old video with.
Spätestens nach der jüngsten Datenpanne bei SchülerVz, dem kleinen Bruder von StudiVz, war klar, dass man im Hause StudiVz seit Jahren nichts zum Thema Datenschutz gelernt hat -- allen Versprechen zum Trotz.
Es wurde also allerhöchste Zeit, meinen schon lange brach liegenden Account dort endlich zu löschen. Zwar hatte ich dort von Anfang an außer dem Allermindesten keine persönlichen Daten hinterlegt -- aber selbst diese Daten sind im Hause "Vz" offenbar nicht sicher.
In diesem Sinne, liebes StudiVz, auf nimmer Wiedersehen!
Instigated by Twitter's fail whale, more and more Web 2.0 companies feel the necessity to add a fail-pet to their "OMG" error pages.
I've been loosely collecting those before, so my friend Tobi was so nice to send this one from Facebook over:
I think it's from an app and not Facebook itself, but I may be wrong. Anyhow, apparently their hampster made a boo boo. That's more information than I needed, but at least it eases the pain of the failed application. And that's gotta count for something, right?
Da hat der niederländische Journalist Rob Savelberg die neu-und-alt-Kanzlerin Merkel aber ganz schön aus dem Konzept gebracht:
Natürlich ist das löblich, löblich, dass Merkel ihrem zukünftigen Kabinett voll und ganz vertraut. Hunderttausend deutsche Mark zu vergessen, kann schließlich jedem einmal passieren. Andererseits entbehrt es nicht einiger Ironie, dass ausgerechnet der scheinbar unter selektiver Amnesie in Finanzfragen leidende Schäuble zum Finanzminister ernannt wurde. Bleibt nur zu hoffen, dass er bei den Finanzen von 83 Millionen Deutschen nicht ab und an mal eine Milliarde vergisst. Und falls doch, müssen wir ihm eben noch ein bisschen mehr Vertrauensvorschuss gewähren -- schließlich hat sich Schäuble schon als Innenminister wichtige Vertrauenspunkte im Kampf gegen den Bürger gesichert, und mit seiner süßen Schäublone für immer einen Platz in unseren Herzen gewonnen.
PS: Cui fidem, fidem, heißt "Vertrauen, wem Vertrauen gebührt".
For work, I often develop on a remote Linux box that I SSH into. Now, as a web developer, one of the big advantages of interpreted languages is that there are no big compile steps to wait for.
One of the big disadvantages is that nothing exciting is happening when you take a break (no sword fights, for example). The screen is just sitting there. Unfortunately, OpenSSH servers in their default settings take this silence as a perfect excuse to cut the cord after 5 minutes.
If that happens a lot during the day, this can be pretty annoying! But fear not, dear reader. On a Redhat-like system, you want to edit /etc/ssh/sshd_config
and add the following line (note: only the second line is needed, read below):
TCPKeepAlive yes
ClientAliveInterval 60
Restart the SSH server, and it shall henceforth not punish you for prolonged periods of silence anymore. :)
Update: Two of my readers pointed out interesting things. First, Sancus mentioned that TCPKeepAlive
is different from ClientAliveInterval
and serves a different purpose. To avoid your connection dropping, the latter is likely to be the better option.
Jeff says, if you set this in the ~/.ssh/config
file on your client, you'll achieve the same effect without the need to modify the server settings:
Host *
ServerAliveInterval 300
This is obviously a highly charming alternative because more often than not, you are won't have (write) access to your server's sshd_config
.