Procrastiblog

June 14, 2009

The Last Word on Bánh Mì

Filed under: Food — Chris @ 1:43 pm

It has come to pass that bánh mì are passé—featured on the front page of the New York Times Dining section; available outside of Chinatown, in Midtown, the West Village, and Park Slope; dismissed by Tom Colicchio (who gives no evidence of having ever actually eaten one; he’s tired of hearing about them). Well, we’ve been covering bánh mì from the very beginning on this blog, since before the dawn of bánh mì history, and we think there are still a few questions that remain to be answered.

Question #1: There’s a new bánh mì shop right down the street. Do I really need to make a special trip to Lower Manhattan or Sunset Park for the “authentic experience”? A bánh mì is a practically fool-proof sandwich. With one exception (see below), I have never had a bánh mì in New York that was not at least tasty. Hanco’s in Boerum Hill and Park Slope makes a damn good sandwich, one that I’m happy to eat on a regular basis (not least because they will deliver it to my door).

That said, the best bánh mì I’ve had by a fair margin—and I’ve tried nearly all the top contenders here and here—is at Ba Xuyên in Sunset Park. The difference is in the construction and in the careful balance of ingredients: you need just the right snap and vinegar from the pickled vegetables; the tangy sweetness of the aioli; a few shadings of peppery, meaty flavors (preferably a combination of grilled, marinated meat and pâté); the crunch of the bread, with a bit of heft and chewiness; fresh hot peppers and cilantro, of course; and, finally, you need all of these components to be layered so that the reach your mouth in roughly the correct proportions in every bite.

Most bánh mì go wrong in at least one of these categories. Hanco’s has a nice combination of flavors undone by lop-sided construction, so that one’s choices are to alternate bites of vegetables and meat or to reconstruct the sandwich from first principles. Baoguette has nice ingredients (and an interesting variation on the traditional meats, presented in chopped, cubed form, rather than as slices), but falls short with bread that lacks snap and flavor. Saigon Vietnamese Sandwich inexplicably omits the aioli (or maybe I got a reject?), throwing the balance of flavors off.

Ba Xuyên gets everything right, and their sandwiches cost about half of what you’ll pay at the shop in your neighborhood (the sandwich is probably about 50% bigger too). If you have enjoyed bánh mì elsewhere, you owe it to yourself to give it a try. Take the R train to 43 Street and walk through Sunset Park. The shop is one block past the park on Eighth Ave at 43rd St. I recommend the grilled pork (#7) and a milk tea with pearls. Walk back to the park and sit on a bench while you eat, taking in a beautiful view of New York Harbor.

Question #2: Is there a “fancy” bánh mì worth eating? I first posed this question back in December, after having been disappointed (twice!) by the bánh mì simulation on offer at Sidecar Lounge. I’ve since tried the bánh mì at Momofuku Ssäm Bar and can report it is a damn fine sandwich that fails the balance test, as sketched above. It relies very heavily on the dark, peppery flavor of nicely grilled pork and generous slathering of pâté, and gives less emphasis to the fresh, vinegary bite of pickled vegetables or the chewy crunch of the bread. I wouldn’t warn anyone off it (as I would the Sidecar version), but it’s not my favorite dish on their menu (which would be pork buns, duh, or the spicy rice cakes). Nor is it my favorite bánh mì in town (not by a longshot).

Arguably, what Num Pang and An Choi are doing is also an attempt to “elevate” the bánh mì (although I suppose lumping Num Pang in with bánh mì is a bit imperialist). I haven’t tried the latter. The former are very, very good, totally worth a try, but quite expensive by bánh mì standards (the sandwiches are only $7 or 8, in general, but they’re also not quite a meal in themselves).

June 12, 2009

Top Chef Masters

Filed under: Not Tech, Top Chef — Chris @ 3:47 pm

To cover it, or not to cover it? That is the question. On the one hand, this blog has suffered from a lack of content since Top Chef: New York went off the air in February. On the other hand… Well, I like the fact that the vibe is more laid back, good natured, and collegial; that the skill and ease of the contestants genuinely earns the “masters” label; that the “critics” (not “judges”) are more respectful and attentive; that the tenor of the conversation runs towards “here’s why this dish wasn’t perfect” as opposed to “here’s why you’d have to be an utter fucking fool to think this dish could ever work at all.”

But the lack of drama is going to be a problem.

As much as I like to act all contemptuous of the Hoseas, the Leahs, the Arrianes, and so on, and pretend they have no place on Top Chef, I’m in the snark business over here. Writing a snarky blog post about Top Chef Masters is going to be like preparing an amuse bouche with ingredients from a vending machine. I don’t want to turn out the blog equivalent of a Snickers bar with a Cheeto sticking out of it.

Let’s wait and see. Hopefully, somebody douchey or arrogant or humorlessly homosexual will turn up and make a run at the finals.

This week, Hubert Keller had everybody out-classed. In the Quickfire, instead of condescending to little-girl tastes (e.g., chocolate-covered strawberries), he put out a whimsical and appealing plate of meringue swans and parfait. In the Elimination, he had the good sense to stay away from cuts of meat that would need to be to be “seared” on a hot plate (somehow Tim Love got away with this. I suppose skirt steak is more forgiving than pork chops).

Christopher Lee made the rookie mistake of trying to make a risotto (Rule #4). Tim Love got a little cute, making a “pozole” without hominy (Rule #4.2.1); that one slid by because it just happened to be delicious. (BTW, why was James Oseland so desperate to convince us that he enjoys football and tailgating and all of the manly pursuits of men?) All four contestants cheated a bit by preparing a raw first course, untouched by dorm room appliances. Overall, the quality of the dishes look pretty high. I can only imagine the parade of insipid “duos” and “trios” that would have been produced by a regular Top Chef cohort.

Next week’s contestants are Wylie Dufresne, Elizabeth Falkner, Suzanne Tracht, and Graham Elliot Bowles.

Prediction: I’m going to proceed on the assumption that the most famous chef always wins. That would be Wylie Dufresne, I think. Though he’s going to have a hard time pulling off anything molecularly gastronomical.

June 11, 2009

Sans a iPod

Filed under: Linux, Tech — Chris @ 3:42 pm

I left my iPod Nano in the back of a cab a few weeks ago (yes, I was drunk). To punish myself, and to hopefully avoid some of the problems I’ve had using iPods with Linux (see here and here), I decided to buy a Sandisk Sansa Fuze. This is basically a generic Nano: an 8GB solid state media player with a small screen and video capabilities. It’s about $50 cheaper than the Nano and about 50% crappier in every dimension: it’s bigger and thicker than the Nano and suprisingly heavy; has a first-gen iPod-style mechanical scroll wheel and a misaligned headphone jack; the screen is noticeably low resolution; and the control is counterintuitive (the main menu items swoop diagonally from lower left to upper right—I still can’t wrap my head around which way to turn the wheel). It does have several features that the Nano lacks, e.g., a built-in FM radio and a voice recorder, which I plan to use approximately never.

My expectation that the Fuze would play nicer with Linux were met in one big way: in MSC (USB Mass Storage Device Class) mode, the Fuze looks just like a USB flash drive with some special folders set up (e.g., Music, Videos, Podcasts, etc.). Copying music onto the device is easy as pie. No need to worry about a cryptographic hash. No need to recompile Rhythmbox or Amarok. It Just Works.

My expectations were frustrated in other ways.

  1. Depending on who you ask, encoding videos for the Fuze is damn difficult or impossible on Linux. I haven’t really tried to solve this, because I can live without video (I only ever used it to stare at the pasty, inert, all-over inessential faces of various Bloggingheads), but the whole situation is absurd. You wouldn’t ship a music player that can’t play MP3s. Nor should you ship a video player that can’t play MP4s. (Yes, yes, I understand that MPEG-4 is a big, unwieldy beast that makes a mockery of the term “standard.” I even understand that video podcasts may use patent-encumbered codecs. But the answer to that is most certainly not to force me to run all my videos through a proprietary Windows-only media converter.)
  2. Connecting to the player in MTP (Media Transfer Protocol) mode required backporting libmtp 0.3.7 from the Karmic repository. This is no big deal, because the one and only reason I wanted to connect via MTP was to remove the lame music and videos that came preloaded on the player. (Media loaded in MTP mode can only be removed in MTP mode. Media loaded in MSC mode can only be unloaded in MSC mode.) The Fuze crashed when I tried to eject it in MTP mode. But I rebooted it and the files were gone, so I’m happy.
  3. Podcasts have a tendency to show up with strange, undescriptive code names. This might be Gpodder’s or the podcasts feeds’ fault, for all I know.

Overall, I’m content with the purchase. The Fuze is definitely Less Cool than the Nano. But next to an iPhone, a Nano is a pretty weak status signifier, don’t you think?

June 2, 2009

The Melody Osheroff Memorial Fund

Filed under: Not Tech, Tech — Chris @ 3:53 pm

Last Wednesday night, a drunk motorcyclist hit my niece and brother-in-law as they were crossing the street.

My brother-in-law, Aaron, lost a leg and may not regain the use of the other.

My niece, Melody, was killed. She was nine years old.

A memorial fund has been set up to help support the family during this crisis. Please consider making a donation. Even a small amount can help a lot.

PayPal - The safer, easier way to pay online!

Donations can also be made in person at any Wells Fargo location or mailed to “The Osheroff Family Fund,” c/o Wells Fargo Bank, 1590 Grant Ave., Novato, CA 94945.

NOTE: The Paypal account is managed by Ben Osheroff, Aaron’s brother. All proceeds will be transferred directly to the Memorial Fund.

April 17, 2009

Becoming a gpodder

Filed under: Linux — Chris @ 5:40 pm

Amarok mysteriously started to have problems copying video to my Nano. It would copy .mp4s, but they would show up as audio files. It would straight-up refuse to copy .m4vs, saying the track was “not playable on media device.” None of the information I could find online was helpful.

For this reason, among others (e.g., 1.4 is “unmaintained” and won’t be included in Ubuntu 9.04 (aka Jaunty), but 2.0 doesn’t even have iPod support yet), I decided to try a new approach to managing my podcasts. Luckily, gtkpod and gpodder both have 4G Nano support in the Jaunty repo and are easily backported to Intrepid using prevu (or you can just run Jaunty, which will be officially released next week).

A few complaints: the gtkpod and gpodder documentation is thin. For example, it took me a while to figure out that gtkpod can’t handle podcasts even though it prominently features a Podcasts playlist on startup. It took me another little while to figure out that gpodder does both the “podcatching” and iPod synchronizing itself (I thought I needed to set up some kind of handshake between gpodder and gtkpod, probably involving the gtkpod Podcasts playlist). Then it took me another little while to get the gpodder synchronization working correctly. It turns out that gpodder wants to have total control over the Podcasts playlist and will fail silently if you try to synchronize with a playlist created by another tool (say Amarok). It’s easy enough to clear out the playlist using gtkpod (though some episodes of This American Life had to be sacrificed) after which gpodder works fine.

But all that aside (though all that is actually a lot), gpodder has a much nicer podcast management interface than Amarok (which treated podcast feeds as a special kind of playlist, a very leaky abstraction). I’m in the market for a new Linux media player. From what I’ve seen, Songbird is not it (unless you like programs that start up, never create a window, then won’t die).

March 25, 2009

BSG Predictions Wrap-Up

Filed under: Battlestar Galactica — Chris @ 8:27 pm

Now that things have ended, and ended well (set your expectations, people), let’s revisit our predictions and see how we did.

  • H and Zohar are 0-2 on the true nature of Starbuck. In fairness, I must note:
    1. They were totally spot-on about the nature and origin of the Final Five, an aspect of their elaborate theory that I chose not to discuss in my previous post.
    2. They weren’t actually wrong about Starbuck, per se, it’s just that the show did not actually provide any explanation of the true nature of Starbuck (although the strong implication is that she was an angel/ghost/other paranormal entity).
  • I was 2-2 on the existence of Daniel and his further insignificance to the plot. (Whether he will come up in Caprica remains to be seen. RDM is fronting like he won’t, but I find that hard to believe. (I’m actually really interested in how the hell the last season of BSG is going to square with Caprica, which seems to be about the invention (or re-invention) of Cylon and resurrection technologies.))
  • Over on Twitter, I predicted that Galactica would be resurrected ala Starbuck’s Viper. Completely wrong.

What all of our wrong predictions share in common is the assumption the writer’s would feel obligated to explain some significant number of lingering mysteries (e.g., the head characters, Starbuck’s resurrection, the opera house vision, “All Along the Watchtower”) in the finale. As it turned out, they referenced all of these things, but they didn’t explain any of them. Instead we got: God did it. Any prediction rooted in physical phenomena and empirical explanations was bound to fail.

I think the finale would have been better and more satisfying—even absent any additional explanation—if my resurrection prediction had come true. I was pretty convinced it would through the first hour of the finale, right up to “there’s got to be some kind of way out of here”—especially with Tori and Cavil’s deaths immediately preceding that last fateful jump. When they made the jump, they could have arrived at Earth-Veldt with Galactica and all of the major characters resurrected. Voila. That’s what happened to Starbuck: she jumped to the magical coordinates and she and her ship were resurrected. Maybe they’re all dead and Earth-Veldt is heaven. Maybe their cindered corpses are right next to Starbuck’s on Earth-Prime. Who knows? No need to explain. The rest of the episode can proceed unchanged (with the exception of the fact that you have to deal with Cavil, Boomer, and the rest of the Evil Cylons being Not Dead. Easy: they’ve been converted to goodness and light by this dramatic turn of events (if you can trust the Centaurians, you can trust them, can’t you?). This can be dispensed with in about three lines of dialogue).

Overall, I feel like I didn’t get X-Files’d, parly because the BSG crew did a pretty good job of tamping down expectations (at times with a sledgehammer) and partly because I honestly didn’t care all that much about the mythology. I only wish the last season had had more episodes like “The Oath” and “Blood on the Scales” and fewer like “A Disquiet Follows My Soul” and “No Exit”. Still, a bad episode of BSG was better than… going out on Friday night.

My life now lacks a one-hour drama (except for Mad Men). What’s good on TV?

March 18, 2009

The Golden Shield of Law

Filed under: Politics, Tech — Chris @ 12:05 am

It sound like the legal system might be the next RIAA, doomed to stand athwart history, yelling stop:

Jurors are not supposed to seek information outside of the courtroom. They are required to reach a verdict based on only the facts the judge has decided are admissible, and they are not supposed to see evidence that has been excluded as prejudicial. But now, using their cellphones, they can look up the name of a defendant on the Web or examine an intersection using Google Maps, violating the legal system’s complex rules of evidence. They can also tell their friends what is happening in the jury room, though they are supposed to keep their opinions and deliberations secret.

A juror on a lunch or bathroom break can find out many details about a case. Wikipedia can help explain the technology underlying a patent claim or medical condition, Google Maps can show how long it might take to drive from Point A to Point B, and news sites can write about a criminal defendant, his lawyers or expert witnesses.

“It’s really impossible to control it,” said Douglas L. Keene, president of the American Society of Trial Consultants.

Judges have long amended their habitual warning about seeking outside information during trials to include Internet searches. But with the Internet now as close as a juror’s pocket, the risk has grown more immediate — and instinctual. Attorneys have begun to check the blogs and Web sites of prospective jurors.

Mr. Keene said jurors might think they were helping, not hurting, by digging deeper. “There are people who feel they can’t serve justice if they don’t find the answers to certain questions,” he said.

But the rules of evidence, developed over hundreds of years of jurisprudence, are there to ensure that the facts that go before a jury have been subjected to scrutiny and challenge from both sides, said Olin Guy Wellborn III, a law professor at the University of Texas.

“That’s the beauty of the adversary system,” said Professor Wellborn, co-author of a handbook on evidence law. “You lose all that when the jurors go out on their own.”

All of the lawyers or judges quoted in this article seem to think the question is: how can we make these people STOP?

The real question is: how are we going to adapt?

Instead of reinforcing the levees, let’s tear them down and let the wetlands do the work. Instead of “nobody looks at the Internet,” how about “everybody looks at Internet”? The jurors are encouraged to independently research the case. If a juror finds something she thinks is interesting or relevant, she has to present it to the judge so the lawyers can respond. Nothing gets cited in the jury room that hasn’t first been aired in open court. If that means the jurors have to work harder to look past prejudicial evidence, so be it. (It probably means the end of the exclusionary rule, but that was all over but they crying anyway.)

You think this idea is stupid? Give me an alternative, short of sequestering all juries five miles from the nearest cell tower.

March 16, 2009

Planet Courant

Filed under: Tech — Chris @ 6:02 pm

Am I the only one who would prefer not to see unfiltered arxiv.org posts and SVN commit logs on Planet Courant?

I’m not saying my posts have been all-time greats, but we need more signal and less noise… Could we convince at least one member of each research group to blog regularly about what’s going on with their colleagues? Tutorials on cool open-source software developed at Courant? Abstracts of Courant people’s publications? Reports on conferences that Courant people have attended?

March 13, 2009

Ricky Gervais meets Elmo

Filed under: Not Tech — Chris @ 8:21 am

I’ve said it before, I’ll say it again: my only real ambition in life is to meet a Muppet.

(via Andrew Sullivan)

March 11, 2009

LD_LIBRARY_PATH and the dangers of .bash_env

Filed under: Linux — Chris @ 3:48 pm

So, I have two versions of a shared library: the stable version, which is installed under ~/builds/libfoo and a development version, which lives in the source tree ~/src/libfoo. I have just compiled a new version of the source and I want to test it, so I run make test.

Crash. Uh oh.

Let’s try the static version of the library.

OK. That works.

Maybe it’s picking up the wrong version of the shared library. I set LD_LIBRARY_PATH=~/src/libfoo and run make test.

Crash. Damn.

make test is, after a fashion, running ./bin/test. Let’s try that ourselves.

That works. Huh?!

$ export LD_LIBRARY_PATH=/home/chris/src/libfoo/lib
$ ldd ./bin/test
...
	libfoo.so.1 => /home/chris/builds/libfoo/lib/libfoo.so.1.0
...

Do you trust export?

$ LD_LIBRARY_PATH=/home/chris/src/libfoo/lib ldd ./bin/test
...
	libfoo.so.1 => /home/chris/builds/libfoo/lib/libfoo.so.1.0
...

Do you trust ldd?

$ /lib/ld-linux.so.2 --list ./bin/test
...
	libfoo.so.1 => /home/chris/src/libfoo/lib/libfoo.so.1.1
...

Damn you ldd. I knew it was you all along.

So, what happened? Some time ago, in the pursuit of a PATH-related bug, I moved all my shell path-munging preferences—including adding ~/builds/libfoo/lib to LD_LIBRARY_PATH—to .bash_env. .bash_env gets read every time that a new shell is created, including—wait for it—when running shell scripts or make. (ldd is a shell script. ld-linux.so.2 isn’t.) In other words, the line

export LD_LIBRARY_PATH=~/builds/libfoo/lib:$LD_LIBRARY_PATH

in my .bash_env was clobbering all of my attempts to set LD_LIBRARY_PATH at the command line.

The moral of the story? Munge LD_LIBRARY_PATH in your .bash_profile. And never trust ldd.

« Newer PostsOlder Posts »

Blog at WordPress.com.