|Ned Batchelder : Blog | Code | Text | Site|
» Home : Blog
On Monday, my mother Eleanor Batchelder got married to her longtime partner Fumiko Ohno. Being a pragmatic couple, they went into it with protestions of, "it's just a formality, don't make a fuss!" But on the day, they were as happy and bubbly as any newly married couple, their 25-year history together notwithstanding.
They live in Toronto because Fumiko is not a US citizen, but came to Massachusetts to get married, because of an issue with my mother's divorce that I don't understand. I was really proud that my home state gave them the legal recognition they deserve.
Of course, we made a cake, our first with tiers:
The supports are big wrapped stick lollipops, sawn to the proper lengths. The M&M's were custom-bought so we could include violet in the rainbow. On top are two Lego minifig avatars, in white wedding dresses.
After the ceremony, we had a small party for them, and my twin sister happened to be close enough to attend with her family. Two of my mom's local friends joined us, so it was a great celebratory event.
Here are the two brides arriving, with me throwing rice (from a box) on them:
Later, Eleanor and Fumiko cut the cake:
It was only later I realized I now have (another) step-mother! I guess that doesn't matter as much when you're 50 as it did when you're 10.
My mom is a big influence on me, of course. She was a software engineer before over 40 years ago, and my first exposure to computers was through her books, before I ever touched an actual computer. Her nerdiness runs through me to my kids. In the '70s she took a career detour to open Womanbooks, a prominent feminist bookstore. Her independent spirit has helped me to find my own path, and to encourage those around me to do the same.
It was really great to see my Mom so happy about the "formality" of getting married. Official recognition of her relationship is important, and now she's got it.
Congratulations, Mom and Fumiko!
I answer questions on Stack Overflow a lot, and also in the #python IRC channel. There's a common dynamic in both environments, I'll describe it by giving aliases to three participants:
At this point, the conversation can go a few different ways, sometimes all at once. Popular next steps are:
All this came to mind again a few days ago when three questions and answers fitting this description appeared on Stack Overflow in quick succession:
There's really no excuse for giving simplisitic, bad, but technically correct answers to mis-guided questions. I understand the desire to give an answer, to be the helpful knowledgable one. And Stack Overflow in particular inadvertently rewards speed.
But answers like these only cause damage. At the very least, wrap them well with a thick layer of bubble-wrap in the form of cautions, caveats, pointers to likely better ways to solve the problem, and so on.
If the questioner really had one of the unusual circumstances that meant they needed a literal answer to their oddball question, they tend to mention it up front. In my experience, doubting questions like these pays off much more often than it turns out to have falsely accused a curious expert of being a newb, though of course that sometimes happens.
The #python IRC channel on freenode has a bit of a reputation for being full of grizzled experts who can't answer any question no matter how straightforward without grilling the questioner about their motives and needs. I myself have argued for less of this, and being more trusting of the questioner. (Actually, as I'm editing this, I just answered a question in #python in a way that other grizzleds didn't like!)
But if you do this kind of answering long enough, you will learn to recognize the misguided question, and push back on it. I don't feel at all bad about downvoting the answers and calling people on it.
A common failing among GrizzledExperts, though, is being too blunt. When a beginner asks a question, it's almost never useful for them to get this in response:
That's too short, too blunt, and is interpreted (perhaps correctly!) as, "you are wrong," setting up a conflict right from the start. More words always help:
Helping intelligent but lost beginners is not easy, it requires a healthy mix of technical know-how and interpersonal skills. The GrizzledExpert definitely has the first, but often not enough of the second.
As anyone knows who has heard me lament the time I spend on Stack Overflow, I am a sucker for silly artificial point systems. And if you know me from Boston Python, you know I am also a huge champion of local Python efforts.
So Julython is a double-whammy: you get points for making commits to your Python-project repos, and there's a location-based scoreboard to see which cities are making the most commits. Boston is currently second!
However artificial it is to count commits per-city, it has gotten me to blow the dust off a few repos and make some commits to keep the state of the world moving forward, and that was the whole point. I closed all the tickets (both!) in Cog. That forced me to finally figure out the docs for how to register a custom setup command in fixtar, though I am still fuzzy on some details there. And I am trying to get coverage.py onto a more-standard testing paradigm.
Go register your repos with Julython, especially if you live in Boston! :)