the worst part is that the jokes are already tired. well alright, not the WORST part.


Researchers do not know how the virus is jumping relatively easily from person to person, or why it’s affecting what should be society’s healthiest demographic. Many of the victims who have died in Mexico have been young and otherwise healthy.

It’s too early to say if this is the mechanism (or even if a genuine trend exists making young people more susceptible), but one possible explanation is a cytokine storm, in which the body’s immune system reacts so violently that it causes damage. There’s an interesting discussion of all this over at ScienceBlogs. Luckily for me, my immune system kinda sucks.

Artomatic update

I stayed up way too late last night working on my piece for Artomatic. Playing with electronics can frequently be frustrating — everything goes wrong, then keeps going wrong, and at the end of the night you’re left with nothing besides a pile of wasted components and a vague worry about how much lead you’ve just ingested. Other times, though, everything seems to go right, and that’s how it went last night. There’s still much more work to be done, but I’m making definite progress.

The piece in question involves a set of reception bells that can be rung through electronic means, and the manual ringing of which can be similarly detected. The first part is done, in a proof-of-conceptish way — I have 12V solenoids installed that can push the clapper into the bell with satisfying vigor — but isn’t completely wired up yet, largely because if you run a solenoid incorrectly it’ll, er, melt.

The other major task is the detection of a manual ring. I initially thought I’d manage this by electrically isolating the clapper from the dome of the bell, then checking for a completed circuit between them. Ah, the naivete of youth. It turns out that this is a lousy way to make a circuit; worse, it’s hard to solder wires onto an anodized bell; worse still, it’s really hard to solder to a bell without changing its tone to something unpleasant.

Instead I decided to detect when the clapper breaks an infrared beam. These things seemed promising due to their physically decoupled nature, but there’s no filter to prevent visible light from affecting the photodiode. This might’ve worked fine inside the darkness of the bell, but it made prototyping a pain.

These work much better, although the gap between the emitter and detector is juuuust too small to work with the bell’s clappers. Bravely ignoring the package’s admonishments to avoid breaking open devices made of gallium arsenide, I sawed ‘em in half and mounted them with hot glue, and they’ve been working great ever since.

(Incidentally, I don’t think I poisoned myself — the GaAs is only used for the actual semiconducting materials, not the mounting armature, and the package allowed me to see that I would only be cutting plastic if I separated the two halves.)

Here are the fruits of my labor: a creepy video of yours truly showing off an LED blinking in time to the dings of the bell. I still have a minor issue to resolve related to one clapper’s tendency to bounce (mechanically, not electrically), but I think I can account for that behavior in software.

Next I’ll be prototyping the full bell-strike-detection solution; doing the same for the solenoid; soldering those working circuits onto the breakout/power board; adding active cooling to the case; getting two way serial communication working between the Fonera and Arduino; writing the final software; and then doing the boring, non-electronic stuff: staining, sanding, installation. I’ve got about a month to get it all done, and right now I’m feeling pretty good about it. But there are certainly still a lot of loose ends.

Speaking of which! Anybody got a pair of bar stools or similarly-sized tables that I can borrow for the month of June?


With apologies to my MBA-possessing friends: the case against MBAs.

Not that the degree’s really worthless, of course. As the above-linked transcript acknowledges, it’s an admission ticket to certain spheres of money and power. And the introduction to financial and economic concepts that the associated coursework provides is something I frequently wish I had. But while I won’t say that I outright dismissed any resumes because of it — that wouldn’t be very responsible of me — seeing the degree on a programmer’s resume has definitely prompted me to record a mental strike against them.

In that case it’s because I was specifically looking looking for focused technicians. But speaking more broadly, I think the folks quoted in the above-linked transcript are right when they discuss how the brand of generalism afforded by a business education — as distinct from the type produced by a liberal arts education — can be pretty grating to the rest of us, particularly when it’s wielded by someone unaware of its limitations. Fortunately, nearly all of the MBAs I know are quick to acknowledge those limits; most of them do have an education in something substantial; and none of them, so far as I know, willingly read management books.

Anti-business sentiment is obviously at its high water mark right now; other than our normal societal baseline of simmering anti-authoritarianism, we shouldn’t expect it to last. But for anyone who’s worked under a hapless b-school acolyte, the last few months have been something of a golden age. That they’re producing radio programs embodying this resentment (rather than just NBC sitcoms) seems noteworthy.

the impression of competence is easier to attain and nearly as good

I have not been having good bicycle luck. Since Friday I’ve ruptured five innertubes and had two tire levers snap. The flats have forced me to walk through the cold, then the rain, then the cold again; I’ve had to skip appointments and be late to work and walk in bad shoes until my feet ache. My fingers are suffused with brake dust; my hands look like they belong to a Pompeiian mummy.

And yet! I am now so much faster at changing tires, and this feeling of accomplishment almost makes up for all of the hassle. The operation requires finesse, see, and you tend to accidentally hurt yourself and waste time and materials when you’re still getting the hang of it. But now I have the hang of it! I don’t do those things anymore! It’s great!

Well, alright, I’m still wasting materials at a phenomenal clip. But there’s a reliable and thoroughly pleasant honeymoon period of about forty minutes before the newly-installed innertube explodes, and that’s enough for basking. Tomorrow the offending rim goes back to the bike shop and people who objectively know what they’re doing; for now, for me, the subjective experience is going to have to be sufficient.

intermediate work product! woo!

I’ve committed myself to getting something ready in time for Artomatic, and that probably means that my GTFS explorations will be delayed for a bit. It’s probably for the best, given the timing of the iPhone 3 SDK.

On the other hand, the folks who run the Chinatown bus frown on the use of soldering irons while in transit, so I did spend a little time writing scripts to chew through the dataset. At this point I have 85,921 CSV files delineating exactly where each bus or train is supposed to be on a second-by-second basis during a typical weekday. Well, alright, not exactly: when a unit is between two stops I just interpolate its position linearly — “as the crow flies”, in other words. Still, sort of neat. Fun fact: under the current schedule, the last trip of weekday Metro service concludes on exactly the 100,000th second of the day (which is actually part of the next day, but the trip started before midnight).

Anyway, by counting the lines in each file, I was able to generate the following graph. It shows pretty much what you’d expect: there are a hell of a lot of active trips during rush hour. Still, it feels good to have wrangled with a dataset of this size and produced an actual image from it. Also: there must be well over a thousand Metro and Metrobus operators out there! It explains a few things: given those numbers, you can see how it’s essentially a statistical certainty that on any given day one of them will punch someone in a mascot costume.

Active Weekday WMATA Trips by Time

it’s been a bad week for pirates

It looks like some of the folks behind The Pirate Bay are heading to jail. I’m only a little surprised, and certainly not outraged. The people running TPB have always seemed imprudently defiant, and even though I was glad to see them take technical and political steps to hasten the inevitable (let’s get on with it already!), their tendency to argue from positions of transparently bad faith never sat well with me. In the past I’d always shrugged and said that things sure were different in Sweden. Well, not that different, I guess.

The aftermath is proving to be pretty pathetic. Just look at the quotes from those found guilty (“It’s so bizarre that we were convicted”); look at the site’s “press conference” page (“So, the dice courts judgement is here. It was lol to read and hear, crazy verdict.”). I couldn’t bear to watch much of the video, in which some apparent TPB associates natter about Twitter vs. Jaiku and then begin whining about the length of legal documents and how something couldn’t possibly be a criminal conspiracy if the participants barely even IM that much.

The gravity of the situation seems to have not yet struck the people involved — either that or Swedish prisons are awfully cushy. The first thing that comes to mind is that hipster government video that Jeff found a while back. The second is the quick transition from defiance to silence on the blog created in the wake of the arrest of the operator of the Oink Bittorrent tracker. These guys are not yet the martyrs they think they are. But I have a feeling they’re going to be.

Of course, the IP industry has been unable to pass up this opportunity to make itself look even more pathetic and ridiculous than the young men who are headed to jail:

Speaking to the BBC, the chairman of industry body the International Federation of the Phonographic Industry (IFPI) John Kennedy said the verdict sent out a clear message. [...] “There has been a perception that piracy is OK and that the music industry should just have to accept it. This verdict will change that,” he said.

Right. Good luck with that, fellas. The site isn’t even down.

UPDATE: Matt IMs to point out that actually, yes, Swedish prisons are incredibly cushy. He sends two links to prove it, and they’re awfully convincing. It seems as though the approach is closer to a halfway house than to a prison as we conceive of it in the US. So hey, maybe the TPB folks do understand the situation. On the other hand, the convicted are also facing a multi-million-dollar penalty. On the other other hand, they’ve got genuine political support. I still suspect that the TPB operators are going to have a worse time of it than their current behavior implies that they expect, but it doesn’t sound like this will ruin anyone’s life, and I doubt that the site will go down.

ALSO: You should probably check out Matt’s own post on the matter.

talk like a pirate day is insufferable, but for entirely different reasons

Rob Pegoraro, the Post’s technology columnist, is looking for alternative names for software theft that aren’t associated with, ahem, maritime terrorism:

The NYT’s always-interesting Freakonomics blog raised that question yesterday. Stephen J. Dubner wrote that “as real-life pirate attacks have gained in intensity, violence, and geopolitical meaning, talking about digital thieves as pirates has come to seem clever to a fault, and inaccurate too.”

The Business Software Alliance, a trade group devoted to stopping people from using commercial software without paying for it first, does not agree. Also yesterday, the CNet tech-news site reported that a BSA publicist sent an e-mail explicitly comparing thugs hijacking supertankers to software thieves: “Piracy takes many forms, some more violent than others.”

(Writer Gordon Haff called that e-mail “one of the most tone-deaf and cynically opportunistic PR pitches I’ve seen for quite some time.”)


Blogger John Gruber suggests the term “bootlegging,” but I’m not sure about that noun either. To me (a one-time concert reviewer for the Post), it evokes homemade recordings from concerts, an activity that demands individual initiative and, when done right, creativity. Installing a copy of a program on two computers doesn’t require much of those qualities.

“Software theft” itself suffers the problem that theft, by definition, involves the victims losing the stolen property [...] That doesn’t happen with digital media, where somebody installing a not-paid-for copy of Office doesn’t stop your copy, mine or Steve Ballmer’s from working. Rather, the key concept here is that somebody has short-circuited a normal business transaction through deceit or trickery. And for that, the most apt definition appears to be “fraud”

Fraud is not a good term for this, as the software consumer is not misrepresenting his or herself, and in fact generally has no interaction at all with the software vendor. “Fraud” implies that the victimized party has been manipulated into surrendering something of value under false pretenses. That doesn’t really apply to these cases.

Gruber’s suggestion of “bootleggers” is better than “fraud”, but it’s unfortunately normative in that most people now consider Prohibition (which is what most people think of when they hear “bootlegging”) to have been an unreasonable imposition by the government — as a result, in this case the terminology would imply that software appropriation is legitimate.

A better description would be “freeloaders”, as users of unlicensed proprietary software are extracting value from a system without supporting it themselves. It also has a pun in it, since they’re “loading” the software on their machines! Obviously this should count as a major strike against it.

Even though I couldn’t resist leaving in an irrelevant quote beating up on them, in the end I have to side with the BSA. Not because “piracy” is a great term for software theft — it’s manipulative and inaccurate — but because that’s what we have been and will continue to call it.

I don’t mean to just rail against the evolution of language in a reflexive, let’s-bitch-about-political-correctness sort of way. But the fact that some people are suddenly feeling guilty for previously having a whimsical attitude toward all things piratical strikes me as pretty silly. Surprise: there are a lot of idioms with horrific literal meanings that we regularly deploy lightheartedly — “highway robbery”, “scared to death”, “thrown under the bus” — these would all be unpleasant things to experience! Tragedy + time = comedy and all that. Enjoying the amusing caricature of piracy that we’ve developed over the last several decades is not the same thing as dismissing the horrors of real-life piracy.

Now: who wants to play some Halo 3 tonight? I promise to feel at least little bad when I use the sniper rifle.

the growing phonegap gap

Since the release of WMATA’s GTFS dataset I’ve been reading up on iPhone application development, and in particular the PhoneGap development framework. Traditional iPhone development requires a lot of specialized knowledge and the use of Objective C, a language that’s used for Apple development and not much else. It takes a significant investment of time to get up to speed.

PhoneGap helps developers sidestep this hassle by providing a ready-to-build iPhone project that moves development tasks into the more popular world of the web. The iPhone app that results is basically a chromeless browser plus some Javascript bindings to iPhone capabilities that a normal webapp couldn’t reach — things like GPS, the accelerometer and data storage. Any hack Javascript jockey (hi!) can get an app running using his or her existing skills. The result probably won’t be as silky-smooth as a wholly-native app, but it’ll be a lot better than a page pulled across the network and into Mobile Safari. And, crucially, it can be listed in the App Store.

Unfortunately, it looks like Apple doesn’t like this idea. More and more often the phonegap email list includes cited messages like this:

Upon review of your application, [APPLICATION NAME] cannot be posted to the App Store due to the usage of private API. Usage of such non-public API, as outlined in the iPhone SDK Agreement section 3.3.2 is prohibited:

“An Application may not itself install or launch other executable code by any means, including without limitation through use of a plug-in architecture, calling other frameworks, other APIs or otherwise. No interpreted code may be downloaded and used in an Application except for code that is interpreted and run by Apple’s Published APIs and built-in interpreter(s).”

The PhoneGap API implemented in your application is an external framework.

So far the other folks on the mailing list suggest doing a search & replace for the word “phonegap” and then resubmitting the app in the hope that the next reviewer will be less of a stickler.

But these rejections may very well reflect a deliberate policy on Apple’s part rather than a mere bureaucratic screw-up. The company consistently introduces roadblocks to development, from their stringent interface guidelines to their nasty habit of charging developers for the privilege of popularizing the company’s platforms. Right now, for instance, code and documentation that lets devs experiment with the 3.0 iPhone software — which, among other things, puts Google Maps capabilities in the hands of developers — requires a $99 membership in the Apple Developer program. Worse, that membership often takes an unpredictably long time to be processed — sometimes months.

The intent seems to be to raise the bar on development such that only high-quality software from dedicated, skilled individuals makes its way onto Apple products. It’s a a coherent strategy, and certainly in keeping with Apple’s position as a premium brand. But it’s also a serious drag for developers, diminishes the variety and inflates the pricing of the Apple software universe, and generally imposes yet another cost on Apple users in order to maintain the company’s elite reputation.


Becks is right: this FML phenomenon is intolerable. I don’t really agree with her complaint about its negativity being the problem, though. The problem is that it isn’t negative enough. The people participating in this meme are doing it wrong.

The phrase “fuck my life” is a setup for comedy about hopelessness, but it’s being adopted by people who don’t understand either of those things. Most of the entries on FML are about minor inconveniences or embarrassments. #whoops! would be a more apt hashtag.

There are occasional outliers that begin to get at the point of the exercise (this is on the right track, though the execution is clunky). But it’s clear that most of the entries are from fresh-faced twenty year-olds who rarely, if ever, find themselves using the phrase “alone in an uncaring universe”. For these jokes to work their implications need to stretch further into the future than next week. Otherwise the natural response is, “That’s too bad, but I’m sure things will pick up soon.”

UPDATE: I was remiss in not linking to Jake‘s effort to highlight the worst FMLs. And it reminds me to mention my other objection to this whole business: how transparently fake most of the entries are. Really, some slight effort toward plausibility is not too much to ask.

harlem shakes us

Like Amanda said, the Harlem Shakes show is unfortunately cancelled. That’s too bad; I sent the band an email saying I hoped to have a chance to see them soon, and a note to DC9 saying I hoped to see my money again, ever. To date, both remain unanswered.

I think this tips the karmic scales in favor of sharing an MP3, don’t you? So here, have a listen to “Strictly Game”. This may not be the best track for hooking people — “Sunlight” is pretty clearly the catchiest, danciest thing on the record — but it’s the track I’m currently most enamored with. But hey, they’re all pretty good — the title track’s the only one I’m lukewarm on.

Harlem Shakes – Strictly Game

And don’t miss Amanda’s concert-grief-counseling strategy — that Pomegranates track she posted is awfully good, even if naming your band after the world’s most overhyped fruit is practically begging for dismissive reviews.