For Grandma Flori

A few weeks ago, when we told the kids we’d be visiting New York, and that while in New York we’d be visiting the place where Grandma Flori is buried, Jonah volunteered this suggestion: “Can I make a picture for Grandma Flori and leave it at her grave?” He might just as well have asked, “Can I blow right past all normal limits of six-year-old sweetness and sensitivity?”

We were in New York all last week and visiting my mom’s grave was the first thing we did. Here’s the picture Jonah brought to her: “That’s a beach chair with Grandma Flori in it, and me and Archer standing behind her.” (By the time my kids knew her, my mom was already completely housebound. How could Jonah have known that a beach chair had theretofore been perhaps my mom’s favorite place to be?)

The best policy

[Moblogging from New York, which is why there’s been nothing new here for a while.]

Yesterday we took the kids to the American Museum of Natural History, where they were eager to find “Rexy” the T-Rex skeleton and “Dexter” the Capuchin monkey, characters in Night at the Museum. (And they did, among very much else.) We had some discipline problems, however, due in part, no doubt, to overstimulation from the bounteous exhibits and an excessively sugary cupcake at the museum’s cafeteria. So the kids lost their dinnertime dessert privileges.

As soon as we got back to my dad’s house, where we’re staying this week, Archer apprised him of their punishment. “We lost our dessert privilege because we did some bad things,” he reported cheerfully. “No dessert for us!” It’s a mark of how good the boys usually are, and therefore how seldom they’re punished, that temporarily losing a privilege can be an entertaining novelty (and maybe not as much of a deterrent as we’d like).

A little later that evening, Andrea and I went out to run an errand. The kids were in the care of my dad and his wife. My dad fixed them a snack and, having forgotten their punishment, included a few jellybeans on the plate. Jonah immediately reminded him, “We’re not supposed to have dessert tonight!” Archer repeated the reminder. Impressed, my dad withdrew the jellybeans and told them how proud he was of their honesty, which Andrea and I reinforced when we returned and heard the story. Today, as a reward: double the number of jellybeans they refused last night.

The fools!

On April 1st, 2004, I sent this message to my coworkers at Danger:

From: bobg
Subject: MMS testing

Hi everyone,

As you probably know, MMS is finally nearing a production release. We’d like to make sure it’s rock-solid for release, and the best way to achieve that is to have lots of people — people just like you — testing it.

If you haven’t used MMS: it’s a mechanism for mailing multimedia messages between phones, very much like e-mail, except that e-mail can’t go to phones.

Because MMS is like e-mail, it struck some of us that the best way to encourage lots of MMS testing is to disable the internal mail proxies for the next few days. So some time late today we’ll be turning off the [internal mail service] and I want to encourage everyone to use MMS instead.

If you find bugs, please file them in [our bug-tracking system]. Other comments (positive and negative) go to […]

Thanks for your cooperation,
– Bob

The internal mail service was and is an essential tool for the engineering team at Danger and MMS made a very poor substitute, not least because unlike e-mail, which Danger employees could read on their desktops and on their smartphones, MMS was for the phones only.

At once I received a torrent of objections in e-mail. “Are you serious?” read one. “This is going to massively piss me off, for whatever it’s worth.” Another read, “The IS department would implore you to reconsider.” Still another, from someone who first believed and then realized it was a hoax: “Holy crap, Bob, you gave me a heart attack!” Several folks who weren’t fooled sent me “attaboy” messages.

By any measure it was a hugely successful April Fools prank, causing no real harm but plenty of teeth gnashing and forehead slapping among its victims. But later that day I sent a followup message to everyone that elevated my prank to classic status, in the judgment of one Danger veteran who called it “the icing on the cake” and another who proclaimed it “the funniest message ever sent at Danger.” The subject line was, “Match that outrage!” It listed nine Danger employees in one column, and nine frantic reactions to my earlier announcement in a second column, and invited everyone to match each utterance to the hoodwinked coworker who’d made it. It’s a measure of how tightly knit the Danger team was in those days that most people were able to identify most of the speakers from such brief snippets as, “How can I use MMS when my SIM won’t work with my return address?” and “It will fuck me hard if you disable the [internal mail service].”


As April Fools Day, 2005, approached, coworkers began whispering to me, “Got something good planned?” I demurred in the blandest tones possible, but what no one knew was that I had been laying groundwork for months. Interspersed among my regular work-related edits of the Danger mail system software, I planted extremely obfuscated snippets of code like this:

sub v {
  my $p = uncompress("x\x{9c}\x{8b}\x{d2}\x{f2}\x{f3}...");
  my @u = unpack(unpack('Z*', $p), $p);
  return $u[$_[1]];
}

Even if someone had noticed these illicit insertions and could decipher them, all they’d find was an innocuous new stage of processing added to the long sequence by which the text of an e-mail message is transmitted to the user’s Hiptop (a.k.a. Sidekick, Danger’s smartphone). All the new stage did was to contact a particular computer on the network, feed the text to it, and retrieve a revised version of the text from it — a perfectly ordinary thing for a network-based service like the Danger mail system to do, where one such stage might extract hyperlinks, another might simplify formatting for smartphone display, and so on.

The particular computer, however, was my office desktop, running a “filter” that performed whimsical transformations of the incoming text. There were thirty-two different kinds of transformation, and one was chosen at random for each incoming message. One of them turned the text into Pig Latin:

Atway onceway Iway eceivedray away orrenttay ofway objectionsway inway eway-ailmay. “Areway ouyay erioussay?” eadray oneway. “Isthay isway oinggay otay assivelymay isspay emay offway, orfay ateverwhay it’s orthway.” Anotherway eadray, “Ethay ISway epartmentday ouldway imploreway ouyay otay econsiderray.” Illstay anotherway, omfray omeonesay owhay irstfay elievedbay andway enthay ealizedray itway asway away oaxhay, otewray, “Olyhay apcray, Obbay, ouyay avegay emay away earthay attackway!” Everalsay olksfay owhay weren’t ooledfay entsay emay “attaboyway” essagesmay.

Another replaced selected words with homophones (sound-alike words):

At once eye received a torrent of objections in e-mail. “Are yew serious?” red one. “This is going tu massively piss mee off, four whatever it’s wurth.” Another read, “The IS department wood implore ewe to reconsider.” Still another, frum someone hou furst believed and then realized it waas a hoax, rote, “Holy crap, Bob, yew gave mea a hardt attack!” Several folkes who weren’t fooled scent me “attaboy” messages.

One oddly annoying one broke words apart into syllables:

At once I re ceived a tor rent of ob jec tions in e-mail. “Are you se ri ous?” read one. “This is go ing to mas sive ly piss me off, for what ev er it’s worth.” An oth er read, “The IS de part ment would im plore you to re con sid er.” Still an oth er, from some one who first be lieved and then re al ized it was a hoax, wrote, “Ho ly crap, Bob, you gave me a heart at tack!” Sev er al folks who wer en’t fooled sent me “at ta boy” mes sages.

One replaced random words with “blah.”

At blah I received a torrent of blah in e-mail. “Are you serious?” read one. “This is blah to massively blah blah off, for whatever it’s blah.” Another read, “The IS department would implore blah to reconsider.” Still blah, from someone who first blah and blah blah blah blah blah blah, blah, “Holy crap, Bob, you gave me a heart blah!” Several folks blah weren’t blah sent me “blah” messages.

One inserted verbal fillers.

At once I, er, received a torrent of objections, you know, in e-mail. “Are you serious?” read one. “This is going to massively piss, ummm, me off, for whatever it’s worth.” Another read, “The IS department would implore you to reconsider.” Still, um, another, from someone who first, um, believed and then, uh, realized, uhhh, it was a hoax, wrote, “Holy crap, Bob, you gave, ummm, me a heart attack!” Several folks who weren’t fooled sent me “attaboy” messages.

One translated the text into Ubbi Dubbi. One inserted fnords into the text. One made some words “stutter.” One swapped vowels at random. One chose a single letter and replaced every occurrence of that letter with a different one.

In addition to these homegrown transformations (and more) were those contained in the venerable GNU Talk Filters package, including “Valley Girl,” “Elmer Fudd,” “Cockney,” “Redneck,” and of course “Pirate”:

At once I received a torrent o’ objections in e-mail. “Are ye serious?” read one. “This is going t’ massively piss me off, by Blackbeard’s sword, fer whatever ’tis worth.” Another read, “Th’ IS department would implore ye t’ reconsider, arrrr.” Still another, by Blackbeard’s sword, from someone who first believed and then realized it were bein’ a hoax, I’ll warrant ye, wrote, aye, “Holy crap, to be sure, Bob, ye gave me a heart attack!” Several folks who weren’t fooled sent me “attaboy” messages.

The stealth code I had planted in the mail system was set to activate automatically at midnight on April 1st and to deactivate at noon. Any e-mail messages received during those twelve hours would look decidedly odd (while safely preserved in unaltered form on our servers) — imagine the fun!


I hasten to mention that the affected version of the Danger mail system was the internal one, where odd behavior was tolerated because it was used only for testing and development by Danger’s own engineers.

…And, unfortunately, by our CEO, Hank, in a misguided attempt to be on the cutting edge of Danger technology. Also unfortunately, April 1st, 2005, was a difficult moment in Danger’s relationship with an important OEM partner. So when Hank read a short message from a junior executive at that company early that morning on his Hiptop and saw a reference to “Davey Jones’ locker,” and the final vowel dropped from words like “the” and “to,” and “you” changed to “ye,” and “arrrr” in the signoff, his first reaction was outrage at the level of disrespect being shown him. Hank escalated the matter to the junior executive’s boss, and that led to some more phone calls, and so on and so on, and I gather that quite a lot of top-level corporate officers were inconvenienced and embarrassed for a good hour or two before they figured out that the message Hank received was not the same one that the junior executive had sent. That realization caused Hank to conclude that Danger’s network had been hacked and he mobilized various Danger VP’s to discover the breach.

Now, most of the rest of the company realized at once what was happening, and that I was probably responsible for it. I was again racking up “attaboys.” When asked, I tried to feign innocence, which I did well enough in e-mail, but to those few who confronted me in person I simply could not contain my mirth.

Upper management was still in intruder-alert mode, however, and almost as soon as I sauntered nonchalantly into the office around 9 that morning, I was drafted into the effort to locate the hacker. I pretended to go off and investigate, reporting in e-mail a short time later that “there doesn’t seem to be any way for a hacker to gain access or to put a filter in front of the [internal mail service], so I’m 99% sure the prankster, whoever it is, is internal,” which was of course entirely truthful if not the entire truth. My intention was to put our senior execs at ease while still enjoying my fun. I already knew that the Operations staff, who were bearing the brunt of Hank’s call to arms, understood what was happening and were unworried. (One response to my report said, “A prankster with e-mail knowledge, hmmmm, who could that be BOB?”) Customer Service had determined easily that the production version of the service — the one with paying customers — was unaffected.

At noon the prank ended automatically. I went out and bought a selection of delicious pastries that I distributed as a peace offering to those who’d been inconvenienced. By this point I’d heard about the embarrassing fiasco that had taken place that morning between Hank and the OEM, so for him I bought a box of expensive chocolates.

It didn’t help. I’d earned Hank’s ire and never really shook it in the years since. An official reprimand was placed in my personnel file and the matter came up during my annual salary review. On the bright side, my boss and my boss’s boss both expressed their support to me — the whole thing, they agreed, was Hank’s own fault for relying unadvisedly on the internal development version of the Danger service, and he should have been a bigger sport about having been fooled. As a direct result of this episode, Danger created another internal version of the service from which non-engineers were explicitly banned.

My colleagues and I have long joked about how lucky I am that April 1st fell on the weekend in 2006 and 2007, because surely the next April Fools Day would mark the end of my career at Danger. Now April 1st is on a weekday again and it is the end of my career at Danger: today is the day I tell Danger that I resign, just in time to avoid becoming part of Microsoft. And I’m not fooling.

The You-rinator

One afternoon in 2003, during my summer as a stay-at-home dad, inspiration struck and, while infant Jonah slept, I sent this message to Andrea:

From: bobg
Subject: The best idea I’ve ever had

You know how women are always complaining that when men pee, they miss the toilet bowl?

I propose to build a male-peeing simulator for women: the “You-rinator!” Standing behind a waist-high pedestal, you’ll dial in how strong or weak the stream should be, then reach around the front to aim a fleshy nozzle at a toilet bowl. A stream of brightly colored liquid lets you see how well you do. Don’t forget to shake the drop off at the end!

It would be a huge hit at bars.

In the great tradition of geniuses being unappreciated in their lifetimes, Andrea’s response was, “Oh my god. I can’t believe how weird you are.”

Now ThinkGeek brings us Super Pii Pii Brothers, an “Amazing Virtual Pee Experience from Japan.”

Yes, it’s only an April Fools gag, but it’s the same idea, which must mean it has some merit. Maybe I was wrong to heed Andrea’s dismissive reaction. Maybe the You-rinator has a future after all. Maybe one will be coming soon to a bar near you…

Bullet time

I decided to apply a little physics to my KitchenAid mixer misadventure, in which I claim I was nearly killed by a hunk of metal propelled past my head by spinning mixer blades. When that projectile whizzed past my head, how much danger was I really in compared to, say, a bullet from a sniper’s rifle?

It comes down to a calculation of the kinetic energy of the projectile. Fortunately it’s very easy to approximate by making a few assumptions and by ignoring the effects of air resistance and the spray of cake batter.

The projectile was the mixer’s own removable endcap. As soon as it vibrated loose, fell into the bowl, and was struck by the spinning mixer blades, it was on a ballistic trajectory, arcing up, past my head, and then down behind me. Let’s assume that the highest point of the trajectory was about level with the top of my head, roughly 1.75 meters off the ground, and that this height was attained just as the projectile was passing me, meaning that once it did pass me, it had already started down.

We can decompose the motion of the projectile into a pair of vectors: the one pointing straight down to the floor and the one perpendicular to it, pointing horizontally past my head. The speed in that direction was constant until the endcap hit the floor. The speed in the floorward direction was increasing due to gravity.

Since we’ve assumed the endcap reached its apex as it passed my head, we know that its downward velocity at that moment was zero. We also know that the acceleration in that direction (due to gravity) is 9.8 meters per second per second. Finally we know from high school physics that:

distance = initial-velocity×time + acceleration×time2/2

and since we know initial-velocity is 0, we can rearrange this to say:

time = √distance/acceleration

And since we know “distance” is 1.75 meters and “acceleration” is 9.8 m/s2, we know that it took about 0.4 seconds for the endcap to fall from the height of my head, regardless of its motion in the horizontal direction.

In that 0.4 seconds I estimate (based on where I later found the endcap) that it covered a horizontal distance of 3 meters, giving it a speed of 7.5 meters per second.

I haven’t weighed the endcap but I’m going to guess it’s about 0.25 kilograms (around half a pound). Again, high school physics tells us that kinetic energy is:

mass×velocity2/2

which means the endcap, if aimed just a bit differently, would have struck me with about 7 joules of energy.

How bad would that have been, compared to a bullet? Apparently even the wimpiest guns deliver hundreds of joules to their targets, so we’re not looking at a shearing-off-the-top-of-my-head scenario here. On the other hand, I was there, and I’m not exaggerating when I say that hunk of metal could have dealt me a grievous injury at the very least. If that was what seven joules looks like, I have a whole new appreciation for the stopping power of a bullet.

How does a man find his way in a world full of grey?

In honor of yesterday’s history-making speech about race relations in the U.S. by Barack Obama, I’ll relate my own brief tale, allegorical but true.

Late one night in college I was walking home from my friends’ house along Ellsworth Avenue in Pittsburgh. As I neared Negley Avenue I apprehensively observed a small gang of young black men coming toward me from the other direction. (I’m white.) I say “gang” because the similarity of their attire was conspicuous — they all wore white pants and white windbreakers.

My apprehension was mixed with shame at the knee-jerk racism of that reaction. As they and I closed the gap, I determined to employ my New York City street smarts to avoid eye contact while showing no fear. I’d walked harmlessly by tough-looking individuals and groups thousands of times. There was no reason to think this time would be any different.

We passed each other, and without warning one of the gang lashed out with his fist, catching me in the jaw and knocking me flat on my back. For one terrifying, helpless moment I believed their fun was just beginning and that the others would get in their licks; but then they simply continued on their way.

For several long seconds I couldn’t move. I was seeing stars; the wind had been knocked out of me; I was bleeding. I could feel my jaw swelling up moment by moment. I could not believe that I had just become a victim of racial violence (for what else could it have been?).

That’s when the allegorical thing happened. A man who’d witnessed the attack hurried over to me from across Ellsworth Avenue. He helped me sit up and asked if I was OK. He stopped me from trying to stand until I’d had a moment to recover, sitting with me on the curb and waiting patiently for my head to stop spinning. Then he helped me to my feet. He asked me what had provoked the incident and expressed outrage and dismay when I told him nothing had. He offered to escort me to Shadyside Hospital, just a couple of blocks away; I politely declined. He asked if there was anything else he could do. I told him I was OK to continue on my way and thanked him profusely.

If my attackers were devils, this man was a saint. And he, too, was black.

I haven’t told this story too often compared to some of my others. Part of the reason is, who wants to tell a story about being helpless and afraid? But another part was my confusion, frankly, about how to cast the role of race in this story. I’m fairly sure that if my attackers hadn’t been black or I hadn’t been white, there would have been no attack. But like a good liberal I wanted to be politically correct, disregard our respective skin colors, and make the attackers into four generic people who were only strikingly antisocial.

But thanks to the lesson Barack Obama sought to teach us yesterday I can acknowledge that race in America is a complicated issue, and we only perpetuate the problems — I do — by ignoring them or by pretending they’re easier than they are.

Yes, it was wrong to react with apprehension to the sight of four black men; but yes, it was also naïve to ignore my intuition. Yes, the men who attacked me were pathologically maladjusted individuals, the polar opposites of the kind stranger who helped me, proving I should judge them all not “by the color of their skin but by the content of their character”; but yes, their pathology was likely to be rooted one way or another in race.

Yes, it’s all difficult and confusing; but yes, it’s time to get the difficulty and confusion into the open and air it out. Until now we’ve all pretended that acting color-blind is the way to achieve racial justice, but it isn’t. The real answer is to admit we don’t yet have an answer, but to take the first step anyway of agreeing on the goal of universal equality.

There’s no black, there’s no white
Where is wrong? Where is right?
I’m confused and unable to say
How does a man find his way in a world full of grey?
— Oscar Brown Jr.


Want what you want

For my freshman year at college, CMU‘s dorm-room allocation policy paired me with a music major named Joe.

We were not well-matched — or we were, depending on whether you thought Felix and Oscar were made for each other. I was a math/science/computer nerd who didn’t know a soul in Pittsburgh. He was a Pittsburgh native with movie-star looks, an athletic inclination, and several high-school buddies around. About the only thing we had in common other than our dorm room was that I wanted sex with lots of college girls and he had sex with lots of college girls.

We traveled in different circles and on different schedules. We saw each other only seldom, even in our room.

One day I ran into him in a student lounge on campus, playing the piano — beautifully, of course. Later, back in the dorm, I told him (not for the first time) about how envious I was of his ability, and about how long and desperately I’d been wanting to learn the piano myself.

Joe asked me whether I’d ever taken lessons. I told him I had, briefly, for just a few weeks once, and that occasionally since then I’d sit down at the keyboard and try to produce some nice sounds, but that I never seemed to get anywhere. Was there anything specifically stopping me from learning the piano? he wanted to know. Only having enough time, I answered.

Joe and I got along well. He was pleasant and easygoing. But on this occasion he uncharacteristically lost his patience with me. “You obviously didn’t want to learn piano enough,” he told me, “or you would have done more about it long before now. So either do something or admit you don’t want to learn piano as much as you say you do. Either way, stop complaining!”

I was stunned, but I grasped the rightness of his words at once.

Obviously, while I’d been busy with launching a computer dating service, having subway adventures, memorizing movie dialogue, staging a fantasy photo shoot, and generally trying in a hundred ways to have a very cosmopolitan high-school life, Joe had been somewhat more single-mindedly practicing and developing his talent. I’d made my choices and he’d made his. I’d prioritized my other activites above piano-learning; or, put another way that should have been obvious but wasn’t, I’d prioritized piano-learning below almost everything else.

I doubt Joe could have known the effect his righteous outburst would have on me. If he hadn’t spoken harshly to me — if he’d said in his laid-back way, “You really ought to do something about learning the piano” — it wouldn’t have registered at all. It took a verbal slap in the face to teach me the life-changing lesson that wanting something only enough to complain about it — and not enough to actually do anything — is the same as not wanting it.

Don’t waste time on the stuff you think you want but really don’t, and get crackin’ on the stuff you do.

Secure endcap OR DIE

Like all couples with a few extra bucks and some cooking ambition (from watching plenty of Jacques Pépin and Alton Brown), Andrea and I years ago purchased a KitchenAid Artisan Stand Mixer, the ne plus ultra of mixing appliances for the home. It is solidly built, and its sterling reputation is well-deserved.

The “head” of the mixer contains a powerful motor. For normal use, that motor drives a downward-facing shaft to which one of a few mixing blades can be attached. For some purposes, however, the output can be directed “straight ahead” instead by removing a cap at the end of the head and attaching an accessory such as the optional meat grinder. (Mmm, ground-up meat…)

One Saturday afternoon recently I was home alone with the kids while Andrea was putting in extra time at the office. We decided to bake a cake! I hauled the mixer out of its usual place on our seldom-used-appliance shelf (and I do mean hauled; as I said, it’s solidly built, and the thing is damn heavy) and set it up on the kitchen counter. The kids and I mixed up a batch of cake batter in the mixer’s bowl. They watched as I switched it on and for a few moments thereafter, then disappeared into the living room to play and await the completion of baking.

I remained, gazing into the bowl for the recipe-prescribed two minutes of high-speed mixing time, hypnotized as usual by the combination spinning and orbiting of the mixing blade (which KitchenAid calls — colorfully and rightly — “planetary” mixing) making a Spirograph pattern in the batter. What I didn’t notice until the very last second was the endcap on the head rattling loose from the vibrations of the motor. Normally the cap is secured by a screw tightened by a black knob. The kids may have fiddled with it and loosened it while the mixer sat unused on the appliance shelf. Now, as I watched helplessly, it worked itself free and dropped into the bowl.

Like every other part of this mixer, the endcap is a hefty chunk of metal. The massive steel mixing blade, all but invisible as it spun at top speed, batted it effortlessly out of the bowl and straight past my head about two inches from my right temple. I retrieved it from the far side of the room, locating it by following the thready trail of cake batter it flung up and across my shirt, over my shoulder, and along the floor and walls.

F.J. Raymond famously called “being shot at and missed” even more satisfying than an income tax refund, but there was nothing satisfying about this miss. I was seriously rattled. I counted the many ways in which I was one lucky bastard, beginning with not having brained or blinded myself or my kids and ending with not having even made a dent in the sturdy mixer blade, bowl, or endcap. I promptly gave Jonah a long-overdue lesson on how to use our cordless phone to call 911 if he should ever, you know, find Dad lying in a pool of blood on the kitchen floor, or something.