Archive for May, 2008

oh, NPR

You know I love you. But these two stories are really, really embarrassing:

Story A: A number of people with interests that generally or specifically oppose those of the Chinese government have received emails carrying trojan malware payloads. Some of these emails appear to be from the recipients’ trusted contacts.

Nobody involved with the story seems to realize that a lot of email trojans replicate by opening the victim’s address book and sending themselves to everyone found within. Nor is it unusual for keyloggers to be installed. As far as I can tell there is nothing linking these attacks to China — although of course there are a lot of hackers in China, and hackers frequently employ nationalist (e.g. anti-Israeli, anti-American) rhetoric when defacing websites. Again, there’s no reason to believe there’s a government link here.

If the Chinese government wanted to go after these people, they would employ more sophisticated methods. This is not a story.

Story B: NASA is running a few different outreach programs whereby internet users can submit names or messages that will be burned to DVD and shot into space. The reporter repeatedly asks affiliated officials: “What if someone includes Osama Bin Laden’s name? Or Adolf Hitler’s!!?” Someone already has, apparently. The officials correctly respond to this by shrugging.

Really, NPR: what do you think is going to happen? An alien-assisted Caliphate spurred by the inclusion of our enemies’ names? Who do you think is going to retrieve this DVD from the infinite emptiness, and know how to decode it, and then know what a bunch of proper nouns mean?

And if your critique has more to do with the inappropriate use of government resources, then let me ask you — what do you think the marginal cost of an extra dozen bytes on a DVD is? A hint: it’s less than the cost of paying someone to vet every submission. And it’s certainly less than the value of several minutes of broadcast time on public airwaves.

wow

Wow wow wow.

of course, Processing + Javascript is not a recipe for amazing performance (or uncrashed browsers). Still, exciting!

hacking your Canon point & shoot

Slashdot posted something yesterday; today I gave it a try. Apparently the CHDK project allows you to supplement your Canon camera’s firmware. The modified software allows you to override the rather constrained exposure times and ISO settings, and do other fun things like shoot in RAW, trigger exposures via USB, record longer movies and even set the camera up to take pictures whenever it detects motion. There are also a few less useful applications thrown in:

playing reversi, compliments of CHDK

Reversi! Neat.

Installation is pretty painless: after figuring out your camera’s firmware revision, you download and copy two files to the root directory of your SD card. Then boot into picture-viewing mode and go to the “update firmware” menu option. Despite what this sounds like, it’s all reversible: by default you’ll have to repeat the operation every time you turn the camera on. And even if you set it to automatically boot, you can always revert to the stock firmware by deleting the files from the memory card.

My geriatric SD400 is juuuust below the cutoff for official distributions, but a little searching turned up a beta release that seems to work fine. If your camera isn’t listed as being supported, use the wiki’s search function.

I’m afraid that my camera hasn’t got enough life left in it to really make good use of this new photographic freedom — the focus hasn’t been great ever since some sand got into it at the beach. But knowing that these capabilities exist makes me virtually certain to buy another Canon when I finally decide to replace it.

my LED monstrosity

So! Let’s talk about what I’ve been working on. I wasn’t very good about documenting my WMATA picture frame build. This time I’m aspiring to do a better job.

At the moment I’m working on getting a 10×20 array of LEDs working. I haven’t completely made up my mind about what I’m going to use it to display, but it’ll be something that can be hung on the wall, I think. At the moment there are two parts to the project.

First is the array of LEDs. I’m using a sheet of pegboard for spacing; last night I began soldering them together. As you can see, I still have a lot of work ahead of me. I installed 70 LEDs last night over the course of two or three hours (admittedly, with breaks for dinner and the expression of my very important opinions regarding American Idol). That’s 35% of the total number.

miles to go...

Each hole in the board has an LED, to which a resistor is attached. The anodes of every LED in a row are electrically unified; the cathodes in every column will be, too. This lets me avoid having to use 200 individual on/off connections. Instead I’ll rely on persistence of vision: each row will be powered up in sequence, and during that period each column will be switched on or off. One row — ten LEDs — will be illuminated at any given instant. By flipping through rows very quickly the display will appear to be continuously on. Our retinas are stupid that way.

closeup of the assembly

The advantage gained by this is that I only need 30 connections instead of 200. That’s an improvement — much less soldering! — but still more connections than the Arduino has to offer.

So, to expand the available connections (which I should really be calling pins, and will be from here on out) I’ll be using four daisy-chained five-bit shift registers. These are integrated circuits that require various connections — power, ground, and some others supporting optional functions that I’m not using — but the real action happens on the chips’ input and clock pins. You set the input pin to a desired value; you then flip the clock pin on and off. The chip then remembers the value that was on the input pin, and begins displaying it on its first output pin. If you do the same thing, the originally-remembered value is moved to the second output pin, and the new input value takes the first position. In this way you can shift bits down the line — and by connecting one chip’s final output to another’s input, you can make the line arbitrarily long. Voila: as many output pins as you need, all at the cost of a mere two Arduino output pins.

The video below is a proof-of-concept for this commonly-used idea — it’s just my effort to make sure I know what I’m doing before I start making irreversible soldered connections. The Boarduino (the thing with the blinking red light) is connected to the first shift register (the chip closest to the Boarduino), and set to send four ON signals, then four OFF signals (distinguishing the divisions between each one by flipping the clock signal, which is indicated by the flashing red LED).

In the actual device each shift register output will provide power to an entire row’s anodes — there will only be one ON bit at a time, and it will travel down the twenty outputs in sequence. This is why there are transistors in the setup, too: the shift register could provide enough current for a single LED, but ten would be pushing it. The transistor allows a very small current from the shift register to switch on a much larger current.

Electronically astute readers might be asking themselves why I’m going to the trouble of attaching 200 resistors (and for my electronically non-astute readers: the resistors are necessary to keep the LEDs from consuming too much current and burning out). After all, if only ten LEDs will actually be on at a time, why not just have ten resistors — one for each column?

There are a couple of reasons, most of them related to a lack of confidence in my ability to keep just one row enabled, particularly during the debugging process. First, in general it’s a bad idea to have LEDs sharing resistors. If one LED fails the other one may suddenly experience twice the current you had intended, and will also fail immediately. Second, the resistors are rated for a half-watt of power dissipation. Each LED consumes about 30 milliwatts; if an entire column is illuminated, that’d put me 20% over spec for the resistors. I probably could’ve gotten away with shared resistors in this case, but I’m still sufficiently unsure of what I’m doing that I didn’t want to risk it. Besides, all that additional soldering will build character.

herd shift

So where can I sign up for more timely updates from the media conspiracy? I’m imagining an email list. Or maybe a dashboard widget with Growl notifications telling me when and how to unfairly marginalize the Ron Paul campaign.

When I went to bed last night, MSNBC had begun expressing doubts about Senator Clinton’s prospects. But that was it! By this morning the floodgates had opened and suddenly everyone is willing to acknowledge what has been true for weeks: that there’s really no way for her to catch up that doesn’t involve people taking to the streets. It really is striking, bizarre, and a bit frightening to see how suddenly, uniformly and arbitrarily this change occurred. The most generous interpretation is that after one or two people risked embarrassment by acknowledging the actual situation, everyone else felt free to adopt the new storyline.

Without the fourth estate to help it play make-believe, I guess it’s unlikely that the Clinton campaign is long for this world. That’s fine by me. But I’m still a little bitter: I’d gotten pretty good at writing rote, despairing morning roundup introductions about the primary campaign’s interminability. When I woke up this morning and rescanned the headlines I had to throw away a rather clever paragraph. Sucks!

So please: a little more warning next time the media conspiracy suddenly and arbitrarily shifts direction — those of us at the distant bottom of the org chart would really appreciate it. Maybe you guys could set up a Google Calendar or something.

superhero miscellanea

Peter Suderman comes to the rescue of people like me who left the theater before Iron Man‘s credits had stopped rolling:

Exciting! I have to admit that the Avengers aren’t really a franchise I enjoy. Norse gods? Archers? It’s kind of weak, and their rogue’s gallery is even worse. The arbitrary combination of dissimilar characters ends up robbing each of their archetypal punch.

But I suppose the Ultimates titles have breathed some life into the comic world, and lord knows that the further our society moves toward exclusively serving the tastes of teenage boys the wiser and more culturally relevant I seem. So my official position is one of support.

Relatedly: I forgot to mention it when it debuted, but check it out — I’m momentarily famous:

I knew there was a reason I saved that Halloween costume (besides, of course, the frankly embarrassing amounts of time and money that went into it). I just wish someone had told me that my hood was billowing inappropriately. Anyway, many thanks to the Nabob for inviting me to be a part of the filming.

memristors

Can I tell you what they are? No. Can I tell you what they do? Not really. But they appear to be a pretty incredibly big deal for the world of electronics. When something exists theoretically for decades before it becomes possible to fabricate; when it has implications for the fundamental ways a discipline explains its workings; and when, so shortly after its announced discovery, it’s already been integrated into functioning systems: these are all reasons to be excited. It’ll be a while before we come up with metaphors that can describe what the hell these things do in a way that makes intuitive sense to you and me, but it’s not too early to recognize that, if the claims associated with memristors are true, their discovery is of immense importance.

Incidentally, it may seem as though I’m being a bit credulous about this seemingly huge upheaval in the world of fundamental electronics. Maybe I am, but I have a reason: the way we teach and understand the physics underlying electronic systems is totally screwed up.

It’s all Ben Franklin’s fault: not only was he a total jerk to John Adams (apparently), he also guessed the direction of electricity wrong. He thought it went from positive to negative, but in fact the electrons involved travel in the other direction. But by the time we had figured that out, enough progress had been made under the original explanatory framework that everyone just said “what the hell” and plunged onward. We still talk and teach and diagram as if current flows from positive to negative. And it works! But in order to make it work we’ve had to fool ourselves into thinking virtually every component in a circuit works the opposite way that it actually does. Fortunately once you reach a certain level of abstraction it becomes easy to ignore the situation, and eventually it recedes from your attention and ceases to be confusing.

But it’s still a bit appalling, which makes it easy for me to believe that the discipline has overlooked fundamental truths in the way that Prof. Chua alleges in the article. Memristors: sign me up.

chain restaurants

Okay, I agree: the New York Times treating a visit to a chain restaurant like some sort of sociological safari is a pretty irritating premise for an article. And as a child of the DC suburbs whose family very, very rarely dined out, I’m not sure what kind of claim I have to this conversation. I eat a lot of arugula (it’s good!), which I think probably at least partially disqualifies me.

But I do think we need to establish some reasonable limits on the anti-NYT populism that’s currently pouring forth from the blogosphere. Because let’s be honest: Outback Steakhouse is fucking disgusting. Admittedly, I’ve only been once. But what kind of steakhouse doesn’t ask how you want your steak cooked? I honestly can’t even tell you what kind of animal provided the steak I ate. It sure didn’t seem like beef.

Now it’s true that I’m a fan of the “big greasy fried onion thing” school of culinary thought. But others do it so much better. Add in Fosters’ claim to the worst hangover:pleasing taste ratio in the beer industry, and you can see that the entire Fauxstralian concept has little to redeem it.

But the other chain restaurants in that article are fine. Alright, I admit to having a grudge against the Cheesecake Factory, largely on the basis of their strangely mosquelike Clarendon location (and the perpetual lines outside it) serving as a constant local reminder of the American Empire’s impending collapse. And I find something a little off-putting about Olive Garden’s explicitly stated promotional campaign: “Come fill up on bread!” But Chili’s, Bertucci’s, Friday’s, P.F. Chang’s and Applebee’s are all fine (I’ve never eaten at a Red Lobster, but a recent Tivo subscription to “Deadliest Catch” is making me want to).

There’s nothing wrong with these places’ recipes, per se, other than their inability to power pretentious foodie smalltalk and their depressing implications re: our country’s per capita alfredo sauce consumption. With the cost spread over millions of diners, I believe these chains are probably willing to invest seriously in coming up with dishes that are about as good as possible given the constraints of their supply chain, price range and varying levels of kitchen talent.

But I can understand why they have a bad reputation — and it isn’t just snobbery. The difference is really just about which restaurant in the chain you visit. If you find one with a good manager, chances are you’ll get decent service and decent food. If you go to one that isn’t as well run — the Chili’s I last visited comes to mind (it was located in some airport) — every bite will make you acutely aware of how little care went into your meal between the walk-in and your plate.

The power of the brand means that a bad restaurant that belongs to a franchise can stay in business much longer than a bad restaurant that belongs to a person could; which means that if you find a bad one it’ll probably seem particularly bad. I think it’s that phenomenon — our automatic capacity for mindless brand loyalty — that makes the chains seem unappealing rather than any designed aspect of the dining experiences on offer.

AoTS ’08

It’s May, the sun is out, and it seems likely that something, somewhere, is germinating. Clearly, the time has come for Album of the Summer deliberations to begin. Naturally, this will not be the only album of the summer. But, still, a decision must be reached. When you’re in your twilight years, what album (delivered via networked cochlear implant) do you want to use to dredge up lost memories of summer ’08 from beneath a river of amyloid plaque?

As you can see, it’s a weighty decision. It needs to be something that’s widely acceptable, that’s fun and sunny, and that still sounds good when drowned out by a blender.

The album I’ve been hearing people talk about most is the new Portishead. Pitchfork called it “darker and bleaker”, “abrasive” and “jittery”. The first paragraph notwithstanding, this is not exactly what I’m looking for in a soundtrack for sunburning myself.

I have considered other candidates and found them wanting:

   Cut Copy — Too much Hot Chip disco bullshit.

   Dodos — I’m sorry, but I can no longer take seriously any acoustic guitar duos that don’t have their own HBO series.

   The Wombats — I love these guys, but as their releases inched closer to the US they’ve gotten more and more overproduced. Their latest LP incarnation is essentially unlistenable.

   the new Hold Steady — Grudgingly disqualified due to non-existence.

I do, however, have a nomination to make: Headlights, an Illinois band that released Some Racing, Some Stopping at the beginning of March (Kyle was on top of it then). The album’s first two tracks are the real standouts: Get Your Head Around It is a reverbed song about regret that slowly builds to an aching, harmony-filled crescendo. You may recall how I feel about such things.

More universally, Cherry Tulips is likely to be among the prettiest things you hear this spring, suffering only from some unfortunately lame rhymes in the chorus. It’s still awfully sweet, though.

The rest of the album is worthwhile, too. The obvious comparison is to Rilo Kiley circa Execution of All Things. But it’s better than that: the band uses dynamics less clumsily, the sequencing on the album is actually well thought-out, and they have the good sense to keep every song under four minutes.

Pitchfork gave it a pretty good review, but one which amounted to saying, “this is a good pop record, but it seems like we’ve had one of those before”. That’s the business they’re in, and it’s a correct evaluation. But for summertime music purposes, it’s a bit beside the point.