linked list

Recursive Food

From Everything2:

A CS professor once explained recursion as follows

A child couldn’t sleep, so her mother told her a story about a little frog,
who couldn’t sleep, so the frog’s mother told her a story about a little bear,
who couldn’t sleep, so the bear’s mother told her a story about a little weasel…
who fell asleep.
…and the little bear fell asleep;
…and the little frog fell asleep;
…and the child fell asleep.

It goes on to explain fractals as:

A mathematical figure that is self-similar; that is, as you zoom into it, you will see the same pattern repeated over and over again.

I should point out to all my non-geeky readers that recursions and fractals are an important part of computer science culture. We used to sign up for programming competitions in high school / undergrad as Recursive Nightmare(where a guy has a dream in a dream in a dream in a dream… stack overflow, head explodes!), and I’ve seen text books where the index contains jokes like “Recursion……. see recursion”.

Obviously, such intriguing contexts have to be applied outside computer science, and what better place to try this out than the wonderful world of food? Here’s presenting the wild world of recursive food!

We first start with an extreme version of the Terducken. The Terducken is an extreme Thanksgiving dish, “consisting of a partially de-boned turkey stuffed with a de-boned duck, which itself is stuffed with a small de-boned chicken”. Anne Petch, of Heal Farm in Kings Nympton, UK took this a few steps further, making a mind-boggling twelve bird variant of this; “turkey on the outside, goose, chicken, pheasant, three ducks, poussin, guinea fowl, partridge, pigeon squab and quail.”

The next bite of awesomeness comes from the awesome folks at Evil Mad Scientist, who created Fractal cookies:

Our final bit of awesomeness is… The Fractal Pizza!:

The fractal pizza is made by first making a bunch of small, itty bitty sized pizzas. These are then used as the topping for a larger set of pizzas. These pizzas are then used as the topping for the final big pizza, the recursive monster pictured above.

So, what fractal food can you think up?

| |

Web 2.0 and the relational database

Yes, this is yet another rant about how people incorrectly dismiss state-of-art databases. (Famous people have done it, why shouldn’t I?) It’s amazing how much the Web 2.0 crowd abhors relational databases. Some people have declared real SQL-based databases dead, while some have proclaimed them to be as not cool any more. Amazon’s SimpleDB, Google’s BigTable and Apache’s CouchDB are trendy, bloggable ideas that to be honest, are ideal for very specific, specialized scenarios. Most of the other use cases, and that comprises 95 out of a 100 web startups can do just fine with a memcached + Postgres setup, but there seems to be a constant attitude of “nooooo if we don’t write our code like google they will never buy us…!” that just doesn’t seem to go away, spreading like a malignant cancer throughout the web development community. The constant argument is “scaling to thousands of machines”, and “machines are cheap”. What about the argument “I just spent an entire day implementing the equivalent of a join and group by using my glorified key-value-pair library”? And what about the mantra “smaller code that does more”?

Jon Holland (who shares his name with the father of genetic algorithms) performs a simple analysis which points out a probable cause: People are just too stupid to properly use declarative query languages, and hence would rather roll their own reinvention of the data management wheel, congratulating themselves on having solved the “scaling” problem because their code is ten times simpler. It’s also a hundred times less useful, but that fact is quickly shoved under the rug.

It’s not that all Web-related / Open Source code is terrible. If you look at Drupal code, you’ll notice the amount of sane coding that goes on inside the system. JOINs used where needed, caching / throttling assumed as part of core, and the schema allows for flexibility to do fun stuff. (Not to say I don’t have a bone to pick with Drupal core devs; the whole “views” and “workflow” ideas are soon going to snowball into the reinvention of Postgres’s ADTs; all written in PHP running on top of a database layer abstracted Postgres setup.)

If Drupal can do this, why can’t everyone else? Dear Web 2.0, I have a humble request. Pick up the Cow book if you have access to a library, or attend a database course in your school. I don’t care if you use an RDBMS after that, but at least you’ll reinvent the whole thing in a proper way.

The Dalai Lama visits Ann Arbor

Tenzin Gyatso, Nobel Peace Prize Winner and the 14th Dalai Lama delivered the annual Peter M. Wege Lecture on Sustainability at the Crisler Arena last Saturday. This was his second trip to Ann Arbor, the last one was in 1994.

I was woken by a phone call from Akash, informing me that he had an extra ticket to the Dalai Lama show, and wanted to know if I was interested in coming. I jumped at the offer, it is always fun to see famous people. Given that these tickets were extremely rare and were selling at absurd amounts of money on Craigslist; I’m not sure if I should be grateful to Akash or rebuke him for his choice of ticket recipient.

Walking to the Crisler Arena was fun; throngs of people dressed in their hippiest — for some reason Bob Marley t-shirts, flowing handloom skirt and jute sandals were appropriate fashion decisions for a lot of people that day. It reminded me of the Harry Potter book releases; I saw a middle aged woman with short white hair walk by me wearing the maroon and orange monk clothing that the Dalai Lama always wears. I find it quite amusing how rastafarianism, sprituality, liberalism and fantasy are seem to occupy the same space in the brain of some people, entwined into a singular non-conformist happy-thought.

In stark contrast to this crowd were the slowly growing crowds of the Chinese protesters, conspicuously dressed in “Keep Olympics 2008 out of politics” t-shirts. Considering the huge furore over Tibetan and human rights protesters sabotaging almost every Olympic Torch rally, I had expected this. Many of them had tickets and made a concerted effort to be as visible as possible during the event, the rest were outside holding signs that said STOP LYING, driving around the arena with the Chinese flag flown as a mark of solidarity. The message was clear — as a friend’s Facebook status read, “Tibet was, is and always will be a part of Mainland China”.

The arena was packed; and the event started with a group of flautists playing random “spiritual sounding” tunes; which was nice, except that if I recall correctly, one of their tracks was the background score of some Indian-esque movie I can’t put my finger on, while another was a film song depicting a rather pubescent Sunil Shetty crooning over the delicious Shilpa Shetty. But hey, whatever gets you in the mood.

We then had some words by the head of the host-department and the President of the University Mary Sue Coleman, who then invited the Dalai Lama to talk.

So, what did I think of the speech? A lot of people asked me if this was a life-changing experience for me and whether I was moved by the greatness of the man and his words. To be honest, what really impressed me was not His Holiness’s words; but, wrong or right, the solidarity shown by the Chinese people to defend their country’s image against the Free Tibet media machine.

For those interested in watching the speech, here’s the video of the event:

image credits: IShutterTothink, alexander, heathzib and MLive.

update: Old friend Anita has some interesting commentary from the other side of the planet.

being joe black

A quote from the movie Meet Joe Black:

So tell me Joe… How come a man as attractive, intelligent, well-spoken… diffident in the most seductive way, and yet… powerful… is all alone in this world?

…well what can I say, it’s a hard life!

| |

When will they ever learn...

Facebook just launched a new Google Trends-esque toy called Lexicon:

Today we’re announcing the launch of Facebook Lexicon, a tool where you can see the buzz surrounding different words and phrases on Facebook Walls. Lexicon pulls from the wealth of data on Facebook without collecting any personal information in order to respect everyone’s privacy.

Basically they look at what everyone types on their walls, and then reports popularity across time. Here’s a graph of the phrases “party tonight” vs “hangover”. This is probably the funniest phase shift I have seen in 2 dimensions.

| |

aural voyeurism

Muxtape is “a simple way to create and share mp3 mixtapes”. Reminds me of Webjay.

Mixtapes are public, and it’s interesting to look into people’s collections and stumble upon some rather wonderful pieces of music (this has a cost though; some of the japanese midi electronica was jarring).

| |

The Fuzzy Threshold Problem

this one is for all you Cake fans

| |

April Fools!

This April Fools’ day, certain perpetrators took upon the task of magically changing YY’s desk into a silvery workspace. Everything, from the LCD screen to the pens, books, and even slippers were “foiled”. Here are some before and after pics:

| |

design heads-up

I’m updating the website to a new design, sorry if the website acts strange.


August 2002 : 9 posts September 2002 : 16 posts October 2002 : 7 posts November 2002 : 21 posts December 2002 : 25 posts January 2003 : 8 posts February 2003 : 11 posts March 2003 : 7 posts April 2003 : 21 posts May 2003 : 14 posts June 2003 : 15 posts July 2003 : 4 posts August 2003 : 16 posts September 2003 : 25 posts October 2003 : 15 posts November 2003 : 24 posts December 2003 : 17 posts January 2004 : 6 posts February 2004 : 8 posts March 2004 : 6 posts April 2004 : 5 posts May 2004 : 29 posts June 2004 : 3 posts July 2004 : 17 posts August 2004 : 19 posts September 2004 : 3 posts October 2004 : 4 posts December 2004 : 1 posts February 2005 : 14 posts March 2005 : 17 posts April 2005 : 8 posts May 2005 : 27 posts June 2005 : 73 posts July 2005 : 44 posts August 2005 : 13 posts September 2005 : 3 posts October 2005 : 9 posts November 2005 : 20 posts December 2005 : 6 posts January 2006 : 25 posts February 2006 : 23 posts March 2006 : 36 posts April 2006 : 35 posts May 2006 : 7 posts June 2006 : 22 posts July 2006 : 20 posts August 2006 : 27 posts September 2006 : 15 posts October 2006 : 6 posts November 2006 : 19 posts December 2006 : 3 posts January 2007 : 4 posts February 2007 : 1 posts March 2007 : 3 posts May 2007 : 5 posts June 2007 : 2 posts July 2007 : 1 posts August 2007 : 13 posts September 2007 : 1 posts October 2007 : 21 posts November 2007 : 7 posts December 2007 : 9 posts January 2008 : 4 posts February 2008 : 13 posts March 2008 : 14 posts April 2008 : 11 posts May 2008 : 12 posts June 2008 : 12 posts July 2008 : 5 posts August 2008 : 10 posts September 2008 : 11 posts October 2008 : 10 posts November 2008 : 8 posts December 2008 : 4 posts January 2009 : 6 posts February 2009 : 13 posts March 2009 : 7 posts April 2009 : 7 posts May 2009 : 2 posts June 2009 : 3 posts July 2009 : 4 posts August 2009 : 4 posts September 2009 : 6 posts October 2009 : 4 posts November 2009 : 7 posts December 2009 : 10 posts January 2010 : 3 posts February 2010 : 2 posts April 2010 : 5 posts May 2010 : 1 posts July 2010 : 4 posts August 2010 : 3 posts September 2010 : 4 posts October 2010 : 1 posts November 2010 : 2 posts December 2010 : 3 posts June 2011 : 1 posts August 2011 : 1 posts November 2011 : 1 posts December 2011 : 1 posts February 2012 : 1 posts May 2012 : 2 posts December 2012 : 1 posts June 2013 : 1 posts August 2013 : 1 posts October 2013 : 2 posts September 2014 : 1 posts November 2014 : 1 posts November 2015 : 2 posts January 2016 : 1 posts January 2017 : 1 posts April 2017 : 2 posts