Tuesday, March 31, 2009

All the Tea in China

As you may know, I tend to read food labels fairly thoroughly. Recently, I've come across some highly suspicious information on some food packages. For starters, I was reading the description on a box of Trader Joe's Earl Gray tea and read the following

The earliest recorded evidence of the cultivation of tea plants comes from China in the 14th century...

This is, of course, completely wrong. Tea has been an important part of Chinese culture for millenia. According to Wikipedia, records of tea consumption in China date back to the 10th century BC. The earliest record I could find for recorded evidence of tea cultivation, not just consumption, is a work from the late 8th century called The Classic of Tea by Lu Yu, so Trader Joe's is off by at least 500 years.

Keeping with the China theme, I was standing in line at my local Chinese grocery store when I noticed some good-sized bags of whole black and white peppercorns. I knew we were running low, I grabbed one of each. At $2.50 for a 7oz bag, it's at least 4 times cheaper than pepper at the regular grocery store. When I got home and cracked into one of bags, I noticed something strange on the nutrition facts label.


According to the label, one serving of pepper contains 12.3% of your daily fat allowance! I read the label a little closer and noticed that the serving size is 3.5 oz. I know the Chinese like their food a little spicier than Americans, but 3.5 oz is more than an entire grocery store-sized spice container (the bottle of Spice Islands whole white pepper that this package replaced is 2.7 oz). As if that wasn't bad enough, the 7 oz package lists that it contains four 3.5 oz servings. Still, you can't beat those prices.

Sunday, March 29, 2009

Vegging Out

We dined at the Garden Grille [warning - audio link] for the first time on Friday. I was quite impressed with my meal, the Mixed Grille. I've had dinners that were entirely comprised of meat and I once had a dinner in Kyoto that was comprised almost entirely of tofu, but I think Friday was the first time I've ever had a dinner that was entirely comprised of vegetables. I had a plate asparagus, eggplant, sweet potato, onions, peppers, squash, and mushrooms all grilled to perfection. Highly recommended.

Wednesday, March 25, 2009

All Aboard the Dictatorship

It turns out that I was wrong, Parade Magazine did publish their annual survey of the world's worst dictators this year. This is, of course, the first worst dictators survey of the Obama administration. The whole enterprise of ranking the world's worst tyrants in a general interest newspaper insert magazine seemed to make a modicum of sense during the Bush years. I can't say that I would be surprised if it is eventually revealed that the former President used the survey when making key foreign policy decisions. We'll see if this enterprise continues as the US hopefully returns to a more nuanced approach to foreign policy.

While much has changed in Washington, not much has changed in the annual dictator rankings. Zimbabwe's Robert Mugabe rocketed up to the top spot from sixth place last year. My money was on Sudan's Omar al-Bashir capturing the top spot on the strength of his recent ICC arrest warrant, but he had to settle for second place once again. The only newcomers to the top 10 list this year were Libya's Muammar Qaddafi, who moved from 11th place to 10th, and Turkmenistan's Gurbanguly Berdymuhammedov, who debuted on the list in 9th place this year.

Parade cited Zimbabwe's hyperinflation, cholera epidemic, and ZANU-PF thuggery as the reasons for Mugabe's rise to the top of the list. With the exception of the cholera epidemic, all of those things were true last year when Mugabe was deemed only the sixth-worst dictator in the world (and I'm guessing that Zimbabwe was hardly a public health success story even before the cholera epidemic). If anything, Mugabe improved his behavior in 2008 by agreeing in principle to a power-sharing government (though, as Parade correctly points out, he has not honored either the spirit or the letter of the agreement).

The inclusion of Berdymuhammedov is another head-scratcher. You may remember that he took over power in 2006 after the death of Saparmurat Niazov, a fixture on any survey of the world's worst dictators. Berdymuhammedov has been in power for only a couple of years and while Turkmenistan has not become a beacon of peace and freedom in Central Asia, I can't imagine why he would be ranked higher than some of his neighbors, including Uzbekistan's Islam Karimov (11th place in this year's survey).

Sunday, March 22, 2009

Cover Story


Today's Providence Journal ran a story about Rhode Island's quest to grow its knowledge-based economy and included a photo of yours truly from last week's Providence Geeks meeting on the front page. This marks the second time that my picture has shown up in a geeks-related news story. So far, I've managed to avoid letting all of this fame go to my head, but I can't guarantee that I won't turn into an insufferable prima donna if this keeps up.

Wednesday, March 18, 2009

Flirting with Disaster

This is a really old story, but I heard about it for the first time at tonight's geek night and thought it was interesting. It's about how young Saudi's use bluetooth discovery on their mobile devices to flirt without running afoul of the religious police. Yet another example of how technologies get used in ways their creators never dreamed of.

Friday, March 13, 2009

Baby, You Got a Stew Goin'!

I've been doing a lot of cooking this week. I made another batch of Ming Tsai's Red Rendang so I had to use it up. One of the dishes that I used it on was a lamb stew that I did in a slow cooker. When I opened up the cooker after letting it stew, I was overwhelmed by the smell of lemongrass. The lemongrass flavor was barely noticeable in the paste and I wasn't overwhelmed by it while eating the stew, only while smelling it. Lemongrass and fish sauce, both Southeast Asian standbys, are ingredients that I find tasty but can't really stand the smell of when they get too strong. I'm told that even people who enjoy the taste of the durian feel the same way about it, so maybe it's just a characteristic of Southeast Asian food.

I've also been enjoying some Trader Joe's English Cheddar with Caramelized Onions. Some friends of ours introduced us to it recently. It's probably something I never would have picked out on my own, but the two tastes go together so well that I'm surprised all cheddar cheeses (and possibly, all cheeses) aren't alloyed with caramelized onions.

Thursday, March 12, 2009

Block Expressions

I discovered a weird Java collection initialization idiom whilst reading this post a couple days ago.


List<String> l = new ArrayList<String>() {{
add("A");
add("B");
add("C");
}};


It took me a minute to figure out what was going on. For those who haven't seen this before, the first and last curly brace define an anonymous inner class. The inner curly braces and the code therein comprise an instance initialization block for the anonymous inner class. So this code effectively create a subclass of ArrayList that adds three elements ("A", "B", and "C") to itself upon creation. It's kind of interesting, but I'm not sure how useful it is. The only place I could see using something like this would be in a class that needs a wrapped static final collection. Using this pattern would eliminate the need to build and populate a temporary collection in a static initializer and then wrap it and assign it to the static final member.

As it turns out, one of the proposals on the table for Java 7 is something called Block Expressions, which would allow you to define temporary local variables within expressions. One of the use case given for this feature is identical to the use case I outlined above.


public static final Map<Integer,Integer> primes = (
Map<Integer,Integer> t = new HashMap<Integer,Integer>();
t.put(1, 2);
t.put(2, 3);
t.put(3, 5);
t.put(4, 7);
Collections.UnmodifiableMap(t));


Block expressions have other uses beyond this so it may be a good idea to add them to the language, but I'm actually partial to the anonymous inner class with instance initializer approach in this situation.


public static final Map<Integer,Integer> primes = Collections.unmodifiableMap(
new HashMap<Integer,Integer>() {{
put(1,2);
put(2,3);
put(3,5);
put(4,7);
}});

Wednesday, March 11, 2009

The Falun Gong Show

We caught the Divine Performing Arts show when it came to Providence last week. It's billed as a celebration of Chinese cultural heritage through music and dance. What's not mentioned is the Falun Gong proselytization that pervades most of the show. While I don't support the Chinese government's suppression of Falun Gong practitioners, I also don't like how the Divine Performing Arts troupe isn't upfront about their ties to Falun Gong in their promotional materials. Of course, even if you stripped all of the Falun Gong material out of the show, I still wouldn't have enjoyed it very much. The music was bland and the sets were awful. The entire show was performed in front of a giant screen that had cheesy renderings of Chinese landscapes projected onto it. The format was incredibly tedious as well, with the emcees coming on stage between every single number and talking about the next one.

Wednesday, March 04, 2009

America's Finest Editorial Cartoons

How is it possible that I just found out about The Onion's weekly editorial cartoon today? Here are some of my favorites.