Wow, so that is how memes happen – #songsincode
Update: I did not start the songsincode meme, I just inspired and was a catalyst of it. The guys in Frogtrade started the craziness and the full story is available here
I am quite amazed just how much the #songsincode thing is mushrooming right now on twitter. Some months ago I had posted this one:
{
'name':'Lola',
'occupation':'showgirl',
'fashion':['music','passion'],
'location':[-22.970834, -43.191665]
}
To me this retweet by Adam Hepton kicked the thing off but other people have disputed that. It would be interesting to see if mine was really the first and if Adam was the first to use the hashtag (full story is now available here).
In any case, this is more geeky fun than I had ever imagined and it is interesting to see just how many people are utterly confused by it. It is also sad to see how spammers work Twitter hard.
If you don’t get it: songsincode tries to display either a title of a song or part of its lyrics (as some songs are more known by the refrain than their title – for example there is no such thing as “all the lonely people” by The Beatles) in code. This could be PHP, JavaScript or any other language. For this, sad geeksclever people use code constructs like if statements and loops to describe conditions and repetition. If you don’t get it, don’t feel left behind, it is hard core geek.
Here are some more #songsincode from me:
Bob Marley: I shot the sheriff:
var i = {shot:{sheriff:true,deputy:false}}
The Ramones: Sheena is a punk rocker
while(Sheena.type=='punk rocker'){Riff.repeat();}
Reel2Reel: I like to move it
x=0;while(x<100){it.style.left=x+'px';x++};i.likeTo=true;
Procol Harum: A whiter shade of Pale
for(i in dance){if(i=='light fandango'){continue;}};cartwheels.turn({floor);me.feeling='seasick';crowd.call('more');
Queen: Bohemian Rhapsody
if(man.silhouetto.size=='small'){scaramouche.do(fandango);if(thunderbolt&&lightning){me.frightened=true}}
Sisters of Mercy: If you don’t see me
if(!u.see('me')||u.loc!=me.loc){me.exist=false;you.makeBelieve=1;}if(eye.see==0){heart.break=0};if(you.leave){me.disappear()}
Blood Hound Gang: The bad touch
do{if(!(you+me) >= mammals){ doit('like they do on the discovery channel') }while(theTouch == 'bad')}
Leonard Cohen: Everybody Knows
{'everybodyKnows':true,'facts':{'boat':'sinking','captain':'lied'},'co':'hen'}
Simon and Garfunkel: Sound of Silence
oldfriend='#000';talk++;while(vision<100){vision++;};sleep.seed();brain.vision=vision;r.mains='still;volume=0; #songsincode
And of course the rick roll:
if(we!=strangersToLove){u.knowRules=1;i.knowRules=1;me.think{committment:'full'};otherGuy:{type:'any',delivery:'false'};}
Keep them coming!


August 21st, 2009 at 10:20 am
What a waste of time.. pathetic.
August 21st, 2009 at 10:23 am
I used the hashtag first, but only after a couple of my colleagues had already posted a few that morning (without a hashtag) – for reference, the tweet I first used the hashtag in was: http://twitter.com/proxymoron/status/3424623779. Before the retweet of yours, the tag was used by us in the dev team at Frog, and some of our followers (and their followers) etc., but it is definitely true that once you posted to your much greater follower reach the thing spiralled off to trending topic #3 :)
August 21st, 2009 at 10:23 am
I particularly enjoyed Queen’s Bohemian Rhapsody – I’ve had a go and written one for Bon Jovi’s “You give love a bad name”, with a genius use of a foreach loop, might I add :)
foreach ($heart as $shot) {
blame($you);
$you->give_love();
throw new BadNameException;
}
August 21st, 2009 at 10:25 am
Not a classic, but matches well I guess :)
try //so hard
{
this.fall(); // throws an exception
}
catch
{
//far
me.loose(LooseFlags.All);
}
finally
{
//doesn’t really matter
}
V gevrq fb uneq, naq tbg fb sne.
Ohg va gur raq, vg qbrfa’g ernyyl znggre.
V unq gb snyy, gb ybbfr vg nyy.
Ohg va gur raq, vg qbrfa’g ernyyl znggre-
Yvaxva Cnex – Va Gur Raq
August 21st, 2009 at 10:50 am
@codepo8 on yesterday’s #songsincode meme: [link to post] <- we really like the sad geeks/clever people correction.
– Posted using Chat Catcher
August 21st, 2009 at 11:32 am
what the #songsincode thing is about: [link to post] (via @codepo8) Ok, Christian, this is ubergeeky, but will do one :P
– Posted using Chat Catcher
August 21st, 2009 at 11:33 am
Retweeting @codepo8: Quick info and my personal examples about what the #songsincode thing is about: [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 11:34 am
@codepo8 for (i=0;i<3;i++) {“Nazi Punks”} ;f.off(); #songsincode
– Posted using Chat Catcher
August 21st, 2009 at 11:35 am
@codepo8 working on something similar going right back to the humble beginnings: http://is.gd/2rytt
– Posted using Chat Catcher
August 21st, 2009 at 11:47 am
My favourite meme so far! :D
August 21st, 2009 at 11:55 am
RT @matpolster RT @codepo8: Quick info and my personal examples about what the #songsincode thing is about: [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 1:03 pm
http://twitter.com/bitrocker/status/3448344987
August 21st, 2009 at 1:10 pm
http://twitter.com/bitrocker/status/3448437702
August 21st, 2009 at 3:00 pm
if (kid.getParent() != this) {
billieJean = {
lover: false,
gender: “F”,
claim: {
i: 1
}
};
}
August 21st, 2009 at 3:34 pm
OK, full story on the origins here for those interested:
http://yy.vc/songsincode
~A
August 21st, 2009 at 3:56 pm
var i = {shot:{sheriff:true,deputy:false}} #songsincode *definitivamente el mejor [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 3:59 pm
@richtextformat var i = {shot:{sheriff:true,deputy:false}} #songsincode [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 4:35 pm
<tree xml:lang=’nn-NO’ /> <!– another Beatles gem (with damn escaping) –>
August 21st, 2009 at 5:34 pm
@markmadison explanation of #songsincode [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 5:39 pm
RT @strottrot explanation of #songsincode [link to post] [it's still so satisfyingly entertaining!]
– Posted using Chat Catcher
August 21st, 2009 at 5:42 pm
RT @strottrot: explanation of #songsincode [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 6:07 pm
Reminds me of Venn That Tune, but more extreme.
while (bStrawberryFields = TRUE);
August 21st, 2009 at 6:25 pm
public Rapper GetInstance(RapperState rs) {
if ((rs.Repping.Still ForTheGanstasAllAcrossTheWord)
&& (rs.Rapper.Still Hitting.TheCornersInTheLo_LosGirl)
&& (rs.TimeTaken >= Time.ToPerfectTheBeat)
&& (rs.LoveForTheStreet == True))
{
return Rapper.ItsThe.D.R.E;
}
}
August 21st, 2009 at 6:30 pm
start:
XOR R1 R1 R1
WRS .s1
wewill:
WRS .s2
ADDI R1 R1 1
XORI R2 R1 2
BNEZ R2 wewill
WRS .s3
JMP start
.s1 “Everybody”
.s2 “We will”
.s3 “Rock you!”
August 21st, 2009 at 7:33 pm
More at:
[link to post]
– Posted using Chat Catcher
August 21st, 2009 at 7:43 pm
JAY- Z classic in SQL
select * from problem
(99 results returned)
select * from problem where type = “bitch”
(0 results returned)
August 21st, 2009 at 8:00 pm
@mbklein Credit due: [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 8:01 pm
@ScriptoriumTech Credit due: [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 8:02 pm
RT @scottfinn: @mbklein Credit due: [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 8:12 pm
Just had to mention — Wikipedia places Lola at -73.971891, 40.764602.
August 21st, 2009 at 8:29 pm
les #songsincode sont un meme de geeks développeurs. Brillant ou incompréhensible, c’est selon. Je vote brillant. [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 8:33 pm
loves songs in code [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 8:34 pm
Using quoted strings is cheating!
I actually came up with this very same idea in 2006. I even have proof:
April 16, 2006: Pixies – “Monkey Gone to Heaven”
I’ve also done the reverse:
July 30, 2007: Tommy Tutone – 867-5309
And even provided some technical commentary:
July 14, 2008: The Band – The Weight
Yes, that’s right…I’m even sadder than you guys are. :D
August 21st, 2009 at 8:34 pm
RT @brad_bauer: loves songs in code [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 8:35 pm
@gchance Credit due: [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 8:49 pm
@scottfinn sorry, the “thx” part didn’t fit in the RT
– Posted using Chat Catcher
August 21st, 2009 at 9:00 pm
def giveUp(person):
if person == you:
raise NoDesertionException(“Attempt to give up/let down a non-desertable person”)
August 21st, 2009 at 9:35 pm
Wow, so that is how memes happen – #songsincode: [link to post]
– Posted using Chat Catcher
August 21st, 2009 at 9:42 pm
@ScriptoriumTech No prob. I had to put the link to the source in a follow-up tweet myself. Our 140 character lifestyle has its limits.
– Posted using Chat Catcher
August 21st, 2009 at 9:57 pm
This is fun…
using(lightstate = new lights(false))
{
danger–;
we.location = this.location;
while(chorus())
{
us.entertained = you.entertaining(true);
if(us.entertained 1)
{
while(User i stupid())
{
return contagion;
}
}
}
}
August 21st, 2009 at 10:18 pm
“the_tiger”5;
August 21st, 2009 at 10:19 pm
Bah, that didn’t work – the 5 is meant to be in square brackets (array index).
August 21st, 2009 at 10:33 pm
var i = {shot:{sheriff:true,deputy:false}} [link to post]
– Posted using Chat Catcher
August 22nd, 2009 at 1:26 am
Songs in code. Fantastic. [link to post]
– Posted using Chat Catcher
August 22nd, 2009 at 10:57 am
I thought this whole thing was great there were so many good ones that I laughed at and alot that I didn’t get at all. You are right though spammers realy love spoiling trending topics.
Heres my attempt using CSS3 that I tweeted the other day:
#billiejean:not([my=lover]):after {content:”She’s Just A Girl Who Claims That I Am The One”;}
I whipped up a little mashup site the other day, that pulls in the 3 latest #songsincode tweets and refreshes every 16 seconds http://labs.thecssninja.com/songsincode try it in FF3.5 or Safari 4
August 22nd, 2009 at 11:13 am
var i = {shot:{sheriff:true,deputy:false}} and other #songsincode [link to post]
– Posted using Chat Catcher
August 22nd, 2009 at 12:04 pm
Drowning Pool: Bodies
if (me.nothingWrongWith())
let hitTheFloor(bodies)
August 22nd, 2009 at 2:38 pm
int monkeyman;
n=”i”;
y=5;
for (f=0;x<2;x++)
{
for (x=0;x<3;x++)
{printf ("%s\n",n);}
}
y–;
punkin = y;
long (monkeyman);
August 23rd, 2009 at 11:41 am
Yesterday, I came across this website via a link from The Presurfer. I got some of them, and, some were way beyond my understanding. The, concept, however, I found to be both humorous and clever, and, not at all pathetic.(These are popular English-language songs, translated into another language, not unlike the Bowie songs from “The Life Aquatic…”.)
Later that night, I saw Adele sing “Chasing Pavements” on the SNL re-run and wished I was enough of a Geek to translate the chorus. Hopefully, I’ve given the idea to someone more capable, and, we’ll see it here, soon. And, then I can post again, whining about how “the origina IDEA for the Adele song was mine, mine, all mine!!” I might even sue for my share of the prize!
August 24th, 2009 at 1:51 am
I threw together http://songsincodedb.com/ because this meme made me lol.
August 24th, 2009 at 3:35 am
Have to be BASIC methinks…
For each Holly in Miami.Fla
IF Hitch-hike(USA) = TRUE then
eyebrows.plucked = true
legs.shaved = true
for x = 1 to 65
girls(coloured) = girls(colour) & “Doo “
next
end if
next
August 24th, 2009 at 8:47 am
SERIOUSLY, WTF is this about???
August 24th, 2009 at 9:30 am
breathe(Air i) {
return sum(times(all(i.need)) + love(u) * 2;
}
http://www.stlyrics.com/lyrics/thevirginsuicides/airthatibreathe.htm
I originally wrote something like it in APL (where the code makes a bit more sense) a couple of decades ago, but I don’t have the APL character set to hand at the moment ;)
August 24th, 2009 at 9:49 am
case (when) {
HOLD_EM, FOLD_EM, WALK_AWAY, RUN:
know = true;
}
Man this is too compelling. I must stop or I’ll never get any work done today.
August 24th, 2009 at 11:16 am
RT @LJRICH (lj rich) [link to post] @LordPeak showed me #songsincode & I feel obliged to share. @jasonfry Coffee then tea. Now R …
– Posted using Chat Catcher
August 24th, 2009 at 11:42 am
Procedure NewOrder.Shellshock;
begin
hold(on);
repeat
assert(not enough); // it’s never enough
until not heart.beating;
// don’t give up the game until your heart stops beating
game.giveUp;
end;
August 24th, 2009 at 11:48 am
ATTENTION MODERATOR: many comments (including mine) have lost spaces placed in each line (lines started with spaces)
August 24th, 2009 at 2:32 pm
while(!chorus) {
print 20thCenturyHistory;
}
if (!we.startTheFire()){
while (worldTurning){
fire.burn();
}
}
August 24th, 2009 at 2:53 pm
@manuel – you mean like Twitter would? :)
August 24th, 2009 at 6:05 pm
unsigned long long money = 0;
unsigned long long problems = 1;
while( + + money ) { problems + + ; }
August 24th, 2009 at 6:06 pm
Sorry for the triple post. the song does not render well on this page :-(| .
August 24th, 2009 at 9:15 pm
Or of course, the simplest of all:
public void deBurgh() {
int you;
you = lady;
you = 2 * lady;
you = 3 * lady;
i.love(you);
}
August 25th, 2009 at 9:21 am
if(!woman) cry=false;
August 25th, 2009 at 9:36 am
Kreativ RT @Duderina Awesome! “var i = {shot:{sheriff:true,deputy:false}}” o — RT @huxi @lolle23: [link to post] #songsincode
– Posted using Chat Catcher
August 25th, 2009 at 1:03 pm
if (bitesdust < 3 ) {
bitesdust++;
} else {
gone++ && gone++;
bitesdust++;
goto get_you_2;
}
}
August 25th, 2009 at 2:39 pm
if ( false ) {
touch($this)
}
August 26th, 2009 at 12:21 am
@Allix Something that’s bound to delight you if you haven’t seen it already: [link to post]
– Posted using Chat Catcher
August 26th, 2009 at 12:56 am
@codepo8 who began the #songsincode thing wrote about it & has some great ones here: [link to post] Thx to @laughingsquid for the link
– Posted using Chat Catcher
August 26th, 2009 at 9:11 am
@f7o Bien vu :). C’est effectivement du PHP et 99 Problems de Jay-Z ! Il y en a des vraiment sympa : [link to post]
– Posted using Chat Catcher
August 26th, 2009 at 9:31 am
Code rocks ! [link to post]
– Posted using Chat Catcher
August 26th, 2009 at 10:32 am
RT @magicnico Code rocks ! [link to post] <– History and explanation of #songsincode
– Posted using Chat Catcher
August 26th, 2009 at 10:35 am
@olivierjaquemet @magicnico Full origins: http://andysmith.co.uk/songsincode
– Posted using Chat Catcher
August 26th, 2009 at 10:52 am
@linuxtraveler un peu de code [link to post]
– Posted using Chat Catcher
August 26th, 2009 at 11:31 am
@asmitter Sorry! My bad. I’ll curse you then ;) I thought @codepo8 started it all. As per his post here: [link to post]
– Posted using Chat Catcher
August 26th, 2009 at 11:33 am
Reading about #songsincode [link to post] Some geeks are so crazy ;)
– Posted using Chat Catcher
August 26th, 2009 at 11:33 am
songs in code [link to post]
– Posted using Chat Catcher
August 26th, 2009 at 11:34 am
Rions un peu avec nos amis développeurs [link to post] (via @bienbienbien)
– Posted using Chat Catcher
August 26th, 2009 at 11:35 am
@carine_07 it’s crazier than that! Full story: http://yy.vc/songsincode
– Posted using Chat Catcher
August 26th, 2009 at 11:37 am
@carine_07 No idea what they R talking about. Why do they bother 2 explain? Geeks get it anyway and the others are told to f. o. Will do!
– Posted using Chat Catcher
August 26th, 2009 at 11:37 am
@ysbreker he’s a tech evangelist – he’s paid to get in the public eye. He did help a lot though!
– Posted using Chat Catcher
August 26th, 2009 at 11:38 am
@oon_fr Internet!!! Enfin un monde qui nous comprend.
– Posted using Chat Catcher
August 26th, 2009 at 12:39 pm
@asmitter Thanks for the full crazy story about #songsincode
– Posted using Chat Catcher
August 26th, 2009 at 2:33 pm
RT: @yakamo: Songs in code [link to post]
– Posted using Chat Catcher
August 26th, 2009 at 3:35 pm
Road to Nowhere by the Talking Heads
{
(We_are)/(road * 2nowhere); Side=Come_on;take(ride * 2nowhere);we’ll->take(that_ride);
}
August 26th, 2009 at 5:07 pm
int roadA; int roadB; int ambitions; bool ways = false; bool loveWillTearUsApart;
if (rountine==bites.hard && ambitions10 && emotions<1 && ways==true && roadA != roadB)
{loveWillTearUsApart = true;}
August 26th, 2009 at 5:08 pm
^^ that should read “ambition > 10″
August 27th, 2009 at 6:28 am
[link to post] http://plurk.com/p/1ppzsn
– Posted using Chat Catcher
August 28th, 2009 at 8:02 am
song this code, ou des titres musicaux en code source. [link to post]
– Posted using Chat Catcher
August 28th, 2009 at 6:52 pm
classic #songsincode: http://twitter.com/codepo8/status/3426293280 & how it started: [link to post]
– Posted using Chat Catcher
August 28th, 2009 at 7:33 pm
omg … :D [link to post] #songsincode
– Posted using Chat Catcher
September 16th, 2009 at 6:29 pm
There’s some fantastic examples here. There were also a few songs tweeted under #twitcode about four months ago. :-)
October 1st, 2009 at 10:15 pm
assertEquals(50,waysToLeaveYourLover.length);
October 4th, 2009 at 3:27 am
Late to the party! Any Crystal Pepsi left?!
if ($belief) {print “I came here to stay”;}
else {
local $you, $me, $him, @life;
$you = Oceans();
$me = Oceans();
$him = Oceans();
eval{
print parent($love);
};
if ($@){
print “ERR: Parent of $love unknown\n”;
};
push(@life, $me);
$me = pop(@life);
push(@life, $me) || exit;
}
sub Oceans {
return $person = rand();
}
October 4th, 2009 at 3:38 am
Aargh, posted old version and the formatting stinks. Trial #2:
if ($belief) {print "I came here to stay";}
else {
local $you, $me, $him, @life;
@waves = (Oceans(), Oceans(), Oceans(), Oceans());
$you = Oceans();
$me = Oceans();
$him = Oceans();
for (;;) {
if ($you && $me && $him && @waves) {last;};
}
eval{
print parent($love);
};
if ($@){
print "ERR: Parent of $love unknown\n";
};
push(@life, $me);
$me = pop(@life);
push(@life, $me); exit;
}
sub Oceans {
return $person = rand();
}