Today is the kind of day that reminds me why every year I swear I will not do another OSCON. I offered to help out Vee by writing a bulk mailer. I had to extract data from the hideous ORA proposal database, then mailmerge with a letter that Vee had written. I was so proud of myself that the code I'd written a year ago to extract data from the database still worked, and I whipped up the mailmerge stuff. It's all code I've written a million times before, right?
Wrong. This time I was mailmerging with XML data, and I was using XML::Simple. Lesson of the day: know your tools. XML::Simple's default behaviour for an empty element is to create an empty hash. I had been expecting an empty string. (This reflects my mindset of "I'm using XML to delimit fields of data" and the XML mindset of "hierarchical data, baby"). So, anyway, I sent out 373 mail messages and everybody who didn't have a middle initial got a middle name of "HASH(0x37836df3)" (or similar) courtesy my bad code.
"Oh you fool! Testing would have caught this!" I hear you cry. You're right, testing against data that had no middle initial would have caught it. But I didn't think, or rather thought too quickly. My logic was "middle initials are rare, I want to test the rare cases, therefore I will test with a middle initial". So "Dutch Q Bungstopper" was my test name. Unfortunately, this logic sucked. The logic should have been "things break when data is missing, so test it with missing data". Oh well, hindsight is 20/20 and all that.
I immediately sent a "whoops, sorry for mangling your name" letter. Double spamming sucks, but I couldn't think how else to ease the impression that we were clueless. In particular, that Vee was clueless, as all these messages were faked to come from her. We're now getting a ton of mail from people, and almost everyone's laughing at it. There was surprisingly little ribbing about it, thank goodness. (Even Guido said he liked his new middle name of "HASH(...)").
These letters, by the way, were the "thanks for submitting a proposal, but we didn't choose it" letters for OSCON. The bit that makes me rethink OSCON every year is the "why didn't you choose my talk?" letters. I can take the letters that are phrased like that. It's the ones that say "you didn't choose me! you suck!" or "I deserve to be in there! You suck!" or, my favourite, "You didn't choose me, therefore you and O'Reilly are no longer the trusted friends of open source, you must be evil and are therefore to be shunned! PS, you suck!"
Tomorrow morning (my time) I'll be writing letters to those folks who politely asked why their talk wasn't selected and what they could have done to make it better. In most cases the answer is "not much"--I had a lot more great talks than I could fit in. What governed the selection of one over another was creating a balanced program--something for sysadmins, something for web designers, something for business app programmers, something for hackers. In the case of most tracks, I could have had an entire track on each of these aspects for each of the technologies, but there just wasn't room.
Well, that was me. I did the Perl, Emerging Topics, PostgreSQL, Apache, and PHP tracks, with help where needed. In the case of Python, Ruby, MySQL, Java, Apps, and XML, other people made all the decisions. But I imagine they had roughly the same goals and criteria as I did.
So, to summarize in advance of the email you'll receive, if your talk wasn't selected then I am truly sorry. But please don't take it personally. I am evil and possessed by the devil and no longer a friend of open source, but unfortunately that has nothing to do with why your talk wasn't selected.
And so ends a day in which I got absolutely none of the Perl Cookbook work done that I had to do. Pooey.
--Nat
--Nat
And then there's what they did to me at last year's YAPC. Check the listing in the back of the conference book and compare with other people who have three elements in their names. There's a case where your testing strategy would have worked. (Well, except for the fact that you apparently tested with only one name.
So one of my first impressions of my first in person contact with the Perl community was "They can't even get a script to churn out my name correctly?"
Re:You're not alone
vsergu on 2003-03-18T19:40:34
Why, oh why doesn't Perl emit a warning when converting a reference to a string? Even PHP gets that right in an equivalent situation.Re:You're not alone
petdance on 2003-03-18T19:47:24
It's a feature. I guess.Suffice to say that there has been much discussion of it on p5p over the years.
Re:More Confusion
gnat on 2003-03-18T23:17:18
I've only had a handful of "uh, what the?" mail about the apology, thank goodness. I realize now that it assumed the reader had spotted the problem. There's no way I was going to send out a third spam, though:-) I ended up writing a lot about how being a name influences the decision making, and what the decision making looks like. (Warning: it's like sausage and law). Anyway, I posted it as a journal entry instead of a comment. I hope this answers your question.
(And PHP guys are always welcome in use.perl as far as I'm concerned. Especially if you want to write a PHP book for me
:-) --Nat
Re:More Confusion
shiflett on 2003-03-19T00:49:17
That answers my question very well. Thank you.:-) Even More Confusion
chromatic on 2003-03-19T02:55:29
I *am* a presenter of Perl Testing, and I was confused!