Elbows deep

Last week I replaced my six-year-old home server (which serves this website among many other functions) with a newer, faster, quieter computer. Transferring all the data and functions was a considerable effort in system administration. For the record, here are the steps I had to take.

  1. Download Fedora 12 install-CD image.
  2. Burn Fedora 12 install CD.
  3. Shut down sendmail and Apache.
  4. Dump MySQL database contents.
  5. Dump Postgresql database contents.
  6. Bring up new computer with temporary hostname.
  7. Install Fedora 12 on new computer.
  8. Create user accounts.
  9. Copy all data from old computer to new, under /old tree.
  10. Shut down old computer (permanently).
  11. Take over old computer’s hostname and IP address.
  12. Restore firewall config from /old.
  13. Restore DNS config from /old, bring up DNS.
  14. Restore sshd config from /old, bring up sshd.
  15. Restore Maildir trees from /old.
  16. Restore IMAP server config from /old, bring up IMAP server.
  17. Restore sendmail config from /old, bring up sendmail.
  18. Restore WordPress environment from /old.
  19. Bring up MySQL, restore contents from MySQL dump.
  20. Bring up Postgresql, restore contents from Postgresql dump.
  21. Restore Apache config from /old, bring up Apache.
  22. Restore Mailman environment from /old, bring up Mailman.
  23. Bring up apcupsd.
  24. Add printer.
  25. Set up network printing.
  26. Set up NFS.
  27. Resume backups.

Naturally not everything went according to plan. So in addition to the steps above I also had to solve:

  • Why all of my domains but one could be resolved;
  • Why the firewall was getting reset at startup;
  • Why inbound mail was not flowing;
  • Why the Ethernet interface had the wrong parameters at startup;
  • Why the monitor would not go into power-save mode;
  • How to get the Flash plugin running under x86_64;
  • Why the DVD-RW drive wasn’t visible some of the time.

Throughout all this, I frequently had to pause to locate and install needed software packages and Perl modules that weren’t part of the default Fedora setup. For good measure I also had to replace an external hard drive that was about to fail. (Thanks for the warning, Palimpsest!)

Happily all these things are now done, except that the monitor issue is a bona fide bug in the xorg video driver (duly filed) that someone else will have to deal with. Until then I just have to remember to switch the monitor off when I walk away.

This may all sound like deep wizardry, but it doesn’t feel like it to me. Having spent a lifetime coping and communing with these sometimes-cantankerous machines, it’s just busywork. Then I think of the number of other people in the world who could do all of this single-handedly and I become impressed with myself.

A most ingenious paradox

Here is a puzzle that I posed to Jonah last night, and then helped him to solve in fulfillment of his required ten minutes of nightly math homework:

What is the date (day, month, and year) at the beginning of The Pirates of Penzance?

Solution follows.

Continue reading “A most ingenious paradox”

Don’t dis “don’t be evil”

Dear Steve Jobs,

We have some Apple products in our household. Also, I’m an employee of Google.

“Don’t be evil” is not bullshit. I and a lot of my colleagues work there precisely because of that mantra, and many of us are prepared to pack up and leave if we ever discover Google straying meaningfully from it. Gratifyingly, opportunities arise often in which to apply “don’t be evil” to a business or engineering decision, and a culture of vigorous and principled internal debate helps to ensure we choose correctly. Not all cases are black and white, of course (though some are), and it’s possible to err, but on the whole we do pretty well, non-evil-wise, especially compared to, well, every other publicly traded technology company.

In short, I take your remark as a personal insult, not to mention a telling comment on your own sense of right and wrong and, by extension, that of your company. I would welcome a sincere retraction, failing which I will have to reconsider continuing to be an Apple patron.

Thanks,
– Bob

What brings you here 2009

Geez, post one tiny picture of a naked woman and your whole blog turns permanently into Times Square. (Er, the seedy Times Square of my youth, not the oppressively unobjectionable Times Square of today. [Or the celebratory Times Square of tonight.]) I was going to write my annual “What brings you here” post that tallies the top queries drawing readers to this site, until I discovered that Polly Walker’s nipples, which last year drew 30% of this site’s visitors, now draw nearly twice that: 58%. Almost all of the other queries disappear in the statistical noise.

It’s true that I updated this blog far fewer times in 2009 than I did in 2008, but I did add 46 new posts, which isn’t nothing, and none of that new content was prurient — in fact there’s been only one new post in the “sex” category since “When on Rome” two years ago. You’d think that the drawing power of Polly Walker would be dwindling, not growing. You’d think that a few fuzzy flesh-colored pixels would count for little next to the attempts at erudition, humor, personal reminiscence, political ranting, and heartwarming family anecdotes that make up the preponderance of the site.

Well, sex sells. Hopefully the thing it’s selling is a little intellectual uplift to the single-minded degenerates who stumble across this site!

Ibid 2009

The last I wrote about my backup tool, ibid, was three years ago (here; earlier post here), but I’ve continued making refinements to it. Then it was at version 24; now it’s at version 47 (download it here). Here are the changes since then, minus the uninteresting ones:

  1. Add –maxfiles.
  2. Don’t use Storable for the complete record structure; apparently a stringified form gets constructed in memory before it’s written to the file, which is disastrous for very large records. Use a custom streaming serialization method instead. Also, detect and reject unknown record versions.
  3. Another major rewrite. This one does away with the old runtime data structures based on big, inefficient Perl hashes, replacing them with strings containing compact “pack”ed values. This change yields enormous runtime memory savings, which matters after a few hundred sessions and many tens of thousands of files have accumulated in your fileset record. Also fixed a few documentation bugs and eliminated some dead code.
  4. Rename options for greater consistency: –limit (-l) is now –maxbytes (-b); –files (-f) is now –maxfiles (-f).
  5. Report when one or the other limit (bytes or files) is reached.
  6. Add –prune-sessions option.
  7. Add new –single-file-size-limit option; renamed –maxbytes and –maxfiles to –session-size-limit and –session-files-limit, respectively. Switched from &foo() function-calling syntax to foo().
  8. Add a new history-entry type: zero-length (“empty”) files. These are recorded in the session record but not copied to the archive, to save overhead.
  9. Include <dev:ino> in –dump output when –verbose is supplied.
  10. Support a device-map file, $HOME/.ibid/.devmap, for tracking a filesystem when its device number changes.
  11. Document the .devmap file; add –trim-report; support “xz” compression of session files; support optional callbacks in foreach_name_history().
  12. Add another level of depth to the “target” path for each new power of 10 in the session number. So session 7311 is rooted at TARGET/FILESET/7000/300/7311, and session 29582 is rooted at TARGET/FILESET/20000/9000/500/29582. Path elements that would start with a 0 are omitted; e.g., session 4006 is rooted at TARGET/FILESET/4000/4006, not at TARGET/FILESET/4000/000/4006.
  13. Document –trim-report.

There’s still no home page for ibid, but at least now all ibid-related posts on my blog are grouped under the tag ibid.

Who comes around on a special night?

Presenting this year’s entry. (Previously.)

The guy in this song hasn’t visited our house yet, but I can’t imagine it’ll be much longer.

You better have doubt
You better ask why
And think it all out
I’m telling you why:
Skepticlaus is coming to town

He hasn’t a list
That wouldn’t make sense
All the world’s kids?
That would be immense
Skepticlaus is coming to town

He sees you when you’re with him
And doesn’t when you’re not
He knows if you’ve been bad or good
If you tell him, or you’re caught

Reindeer that fly?
Or is it a hoax?
Which is more likely?
Don’t ask your folks
Skepticlaus is coming to town

(Previously.)

Today I am a man… for thirty years

Thirty-one years ago I was a very secular Jew, along with my family and a large proportion of Jewish families in New York City. We lit candles on Chanukah, we read the Haggadah at Passover, and we told each other happy new year in the middle of September, but that was about it as far as the religion went, and it suited me fine.

But then my friends started having bar mitzvahs and I got jealous. So some time in 1979 I informed my parents — who had left the decision up to me, and who thought they were getting off the hook without planning a bar mitzvah — that in fact I wanted to have one and that it had to be before the year was out. I didn’t want to be the only one of my friends whose bar mitzvah spilled over into the next decade!

To have a bar mitzvah I had to be able to read Hebrew, which meant going to Hebrew school, something that bar-mitzvah-bound kids began doing at age eight or nine; and here I was already pushing thirteen, the bar mitzvah age. Forest Hills Jewish Center, a conservative synagogue, wouldn’t take me, because I was too old. (A year later, Yoda would make the same complaint about training Luke Skywalker.) But Temple Sinai, a reform synagogue (now The Reform Temple of Forest Hills), did.

I was the biggest kid in the class but a motivated student. Within just a couple of months I was reading Hebrew fluently — which is to say, I learned the alphabet and the pronunciation, and so could make all the right sounds. Comprehension was something else altogether.

Rabbi Irvin Ungar set my bar mitzvah for the fifteenth of December — just made it! — and began my training. I started attending sabbath services each week to become familiar with the sequence of events and the liturgy. I learned how to chant my Torah portion (“Vayeshev”) and my haftarah. It was my first serious exposure to ritual and I took to it like a duck to water. Combined with Rabbi Ungar’s learned and gregarious mentoring style, and influenced by the involvement of my friend Chuck with his synagogue, I became a surprisingly observant Jew, to the delight of my parents (who, as noted above, were not themselves particularly observant).

While I was receiving religious instruction, my parents were busy planning the reception. They booked a ballroom at the Sheraton in Elmhurst and sent invitations to the extended family. I invited some of my new Hunter friends and a few from my elementary school days. A couple of months before the event, I stopped eating chocolate and fried food entirely, determined that this was the best way to ensure blemish-free skin on the big day. (And it worked!)

The party needed music, and my parents began looking into bands and DJ’s. One musician (with the memorable not-to-be-confused-with-the-auto-repair-chain name Lee Myles) offered to come to our house with a videotape of his band performing — and to bring along a videocassette player, which in 1979 almost no one had. I was beside myself with excitement at the prospect of seeing one of those contraptions in operation in my very own living room, and when he arrived, everything he said to my parents was just so much droning. It took forever before he finally stopped talking and hauled the enormous player out from its carrying case, along with its multifarious cables and adapters. That’s when I finally joined in the conversation, chattering away about the relative merits of coax connectors versus spade lugs, VHS versus Betamax, tuning via channel 2 versus channel 3, etc. In the end we got to see about thirty disappointing seconds of fuzzy video footage before all the equipment got disconnected and put away.

We didn’t hire Lee Myles.

Everything finally came together on this date thirty years ago.


That’s me in the white turtleneck. Also pictured: three future lawyers.

I conducted my parts of the Saturday-morning service so well that I was invited to become Temple Sinai’s first official “rabbi’s assistant,” a position I held for many weeks thereafter. I delivered an original speech about Judaism and becoming a man and so on that I remember not at all, but that was received (atypically for a bar mitzvah speech) attentively and with disbelief that I’d written it myself. And the reception, though mostly a blur, was memorable at least for the poster-sized cartoon wailing wall that my father drew and stood on an easel for my guests to sign (and that became a wall-art fixture at home for years); and for the moment that my friends took me aside and welcomed me to official manhood by literally showering me with foil-wrapped condoms (which were far more giggle-worthy then — and embarrassing to buy — than they are in this age of strident safe-sex awareness).

Some months later, Rabbi Ungar moved far, far away. His replacement, whatever his virtues might have been, was a zero in the motivating-young-people department. My scientific bent (and attendant religious skepticism) reasserted itself, the novelty of a Dixie cup of sweet wine each Saturday morning wore off, and my tenure as rabbi’s assistant, and my flirtation with a devout life, ended soon after.


Postscript. Helen Keller was one of my mom’s heroes, and The Miracle Worker, the story of Keller’s relationship with the blind teacher Annie Sullivan, was one of her favorite movies.

In trying to find a web link for Temple Sinai while writing this article, I ran across an article entitled, “Helen Keller: Citizen of Forest Hills.” It was the first I’d ever heard that my mom’s hero lived in the same neighborhood where (years later) she raised me; I’m not sure my mom ever knew. But more than that — the article reveals that Helen Keller’s Forest Hills house later became the very site of Temple Sinai!

Darnedest family math

Here is an exchange between me and my son Archer (age 5 1/2) this morning.

Archer: Are you Aunt Suzanne’s dad?

Me: No, you know what I am to her. I’m her what?

Archer: Her sister?

Me: No…

Archer: Her brother?

Me: Yes! Who is Aunt Suzanne’s dad?

Archer: Grandpa?

Me: Right. Who’s my dad?

Archer: Grandpa.

Me: Right! Who’s your dad?

Archer: You!

Me: Right. Who’s your brother?

Archer: Jonah.

Me: Who’s your sister?

Archer: Pamela.

Me: Who’s my brother?

Archer: [thinks hard] …Nobody?

Me: Right! It was a trick question. But I didn’t fool you, did I?

Archer: [excitedly] No. ’Cause my brain said, “I never heard Daddy say he had a brother before.” So I added that to my brain and then I took away the brother and my brain said, that’s right!

Darnedest negotiation

Yesterday Andrea and I celebrated our tenth wedding anniversary (and our twenty-first year of togetherness). To get some alone time, we packed the kids off to the house of some friends.

I asked them to get together the things they’d need for an overnight. They disappeared into their room and came back out into the living room a minute later with an armload of stuff apiece. But Jonah forgot his socks, and he was feeling lazy, so he said to Archer, “If you go get me some socks, I’ll give you…” (and here he thought for a moment) “…a hug!”

Archer said, “OK!” at once and disappeared back into their room — whereupon Jonah leaned over to me and whispered, “I’m actually going to give him a hug and a kiss!”

The richest man in town

Earlier today I sold my last shares of Amazon.com stock remaining from Amazon’s 1998 purchase (in cash, stock options, and shares) of the Internet Movie Database, a company I co-founded. This brings to a close an adventure that began as a hobby in the mid-1990’s, that turned into a job, that yielded riches, glamor, excitement, and renown (not to mention tedium, anguish, and heartache, but nothing worthwhile is easy).

At its peak during the dot-com boom, my ownership of Amazon.com was worth millions. Thanks to the dot-com crash and some bad planning, I ended up extracting only a fraction of that value, and I still haven’t entirely gotten over it. But it’s hard to feel too bad: it was a great ride, and with the proceeds we bought some cool toys and took some fun trips. It allowed me to earn practically nothing while launching another startup, where today my wife and several others earn a comfortable living. With Amazon money we had a terrific wedding, got a cozy home, and started an amazing family. Like George Bailey, I am the richest man in town.

Here’s lookin’ at you, Amazon. Thanks for everything.