Azure Jane Lunatic (Azz) 🌺 (
azurelunatic) wrote2013-01-11 12:23 am
Entry tags:
The wrong kind of encouragement: a fairytale of development
Once upon a time, when Dreamwidth was still new and Dreamhacks were just the best thing since sliced bread and even more new than Dreamwidth itself, a developer* came unto the Dreamwidth IRC channel. Now, most new developers who came to the channel had similar plans of development to each other, and wanted to get started writing patches as fast as possible, so I am afraid that the denizens of the channel had started to become sloppy and make too many assumptions about the plans of all new developers, because most were so much the same.
"Can anyone help me install a local version of the Dreamwidth code onto my server?" the developer asked.
"Hail!" the IRC channel greeted.
"A new developer! Hooray! You don't have to install the code on your local server," one channel denizen, a great and honored developer with many bugs to their name, said. "We have Dreamhacks, and this is how you apply for them!"
"Thank you," the developer said, and went away. For that was not the question the developer had been asking, but the channel members were so nice and helpful.
Presently the developer came unto IRC again. "Can anyone help me install a local version of the Dreamwidth code onto my server?" the developer asked again.
"We're so glad you want to help out!" another channel denizen said (having not been there the first time, or perhaps having been away from the keyboard). This denizen was only a middling developer, but showed great promise and had already vanquished some bugs. "Installing the Dreamwidth codebase is very hard, and is very frustrating for a new developer. Here is where you can apply for a Dreamhack."
"Thank you, but --" the developer said, and then went away again. This was still not the question the developer had been asking, although the channel denizen was right: installing the code was very hard.
And a third time, the developer came unto IRC. "Can anyone help me install a local version of the Dreamwidth code onto my server?" the developer asked, greatly weary and sad.
"I don't know much about that process," a third channel denizen said. This denizen was one of the least among the developers, but had been watching the first two times the new developer came in and asked. "I saw that you were offered a Dreamhack twice before, but that was not your question."
"No, I don't want a Dreamhack," the developer said, relieved that at last someone seemed to be answering the actual question. "I was not sure how to ask, and everyone was trying to be so helpful. I am on a quest for enlightenment, and I would like the experience of installing it all for myself."
"I hope you may find the enlightenment you are looking for," said the third denizen. "I do not think I can help you myself, but if you encounter trouble, try the wiki, for it is always there, though it does not have much yet." And the third denizen named some pages.
"If you encounter trouble that the wiki cannot handle, try asking my first sister." And the third denizen named a system administrator of middling wisdom and middling availability.
"And if you encounter trouble that my first sister cannot handle, try asking my second sister. But beware, you may have to wait a long time." And the third denizen named a system administrator of great wisdom but small availability.
"Thank you!" the developer said with joy. "I had almost given up, for I feared no one would answer my question. I will try the wiki first."
And in later times, many stories were told of the brave feats of installation that the developer mastered, and then documented for developers yet to come.
* This is a fairytale based on an actual incident. I'm leaving the developer here anonymous; this developer can of course step up and say "Hi, that was me!" but I'd like to leave them the option of doing so, rather than giving them potentially unwanted attention. back
"Can anyone help me install a local version of the Dreamwidth code onto my server?" the developer asked.
"Hail!" the IRC channel greeted.
"A new developer! Hooray! You don't have to install the code on your local server," one channel denizen, a great and honored developer with many bugs to their name, said. "We have Dreamhacks, and this is how you apply for them!"
"Thank you," the developer said, and went away. For that was not the question the developer had been asking, but the channel members were so nice and helpful.
Presently the developer came unto IRC again. "Can anyone help me install a local version of the Dreamwidth code onto my server?" the developer asked again.
"We're so glad you want to help out!" another channel denizen said (having not been there the first time, or perhaps having been away from the keyboard). This denizen was only a middling developer, but showed great promise and had already vanquished some bugs. "Installing the Dreamwidth codebase is very hard, and is very frustrating for a new developer. Here is where you can apply for a Dreamhack."
"Thank you, but --" the developer said, and then went away again. This was still not the question the developer had been asking, although the channel denizen was right: installing the code was very hard.
And a third time, the developer came unto IRC. "Can anyone help me install a local version of the Dreamwidth code onto my server?" the developer asked, greatly weary and sad.
"I don't know much about that process," a third channel denizen said. This denizen was one of the least among the developers, but had been watching the first two times the new developer came in and asked. "I saw that you were offered a Dreamhack twice before, but that was not your question."
"No, I don't want a Dreamhack," the developer said, relieved that at last someone seemed to be answering the actual question. "I was not sure how to ask, and everyone was trying to be so helpful. I am on a quest for enlightenment, and I would like the experience of installing it all for myself."
"I hope you may find the enlightenment you are looking for," said the third denizen. "I do not think I can help you myself, but if you encounter trouble, try the wiki, for it is always there, though it does not have much yet." And the third denizen named some pages.
"If you encounter trouble that the wiki cannot handle, try asking my first sister." And the third denizen named a system administrator of middling wisdom and middling availability.
"And if you encounter trouble that my first sister cannot handle, try asking my second sister. But beware, you may have to wait a long time." And the third denizen named a system administrator of great wisdom but small availability.
"Thank you!" the developer said with joy. "I had almost given up, for I feared no one would answer my question. I will try the wiki first."
And in later times, many stories were told of the brave feats of installation that the developer mastered, and then documented for developers yet to come.
* This is a fairytale based on an actual incident. I'm leaving the developer here anonymous; this developer can of course step up and say "Hi, that was me!" but I'd like to leave them the option of doing so, rather than giving them potentially unwanted attention. back

no subject
Yeah, it's frustrating not to get an answer to the question you actually asked, but it's also incredibly common for people to not ask the question they think they should be asking instead of the question they actually want to know the answer to. If you have a FAQ ("how do I install the code locally") that's actually a different question ("how do I start hacking on the code") 95% of the time, and the steps to accomplish the things in the exact question and the steps to accomplish the things in the implied question are drastically different, it is more helpful and more efficient to provide the HOWTO for the implied question. Especially if the HOWTO for the question-as-asked is long, involved, complex, and miserable, while the HOWTO for the implied question is quick and easy: in that case answering the question literally as asked will send someone off down a miserable rabbithole. In that case, answering the implied question first is absolutely the right thing to do.
So when someone asks a "how do I" question, it's often helpful to ask a clarifying "what do you want to do / why do you want to do it", but if people bypass that and jump straight to the answer that's more helpful in 95% of cases, it's understandable. (And efficient.) And if you're the one asking the question and you're getting an answer that's trying to answer the question people think you're implying, I think there is a certain amount of onus on you to say "actually, I'm trying to do $foo instead, not $bar" to establish that you are in the 5% who are asking the exact question and not the implied question instead of just saying "thank you" and going away to steam that nobody's answering your question.
no subject
Possibly the new developer just went away to be quietly socially anxious in a corner somewhere. Just because they're interested in learning a different set of beginner skills that might be perceived as harder doesn't mean that they're more confident or have better social skills or less imposter syndrome than a beginner dev who takes a more traditional route into Dreamwidth hacking.
Possibly they found asking for help, at all, the most difficult part of the entire endeavour.
no subject
no subject
no subject
Actually, the right thing to do is say, "Many people who ask this question, A, are actually asking about A'. If you are actually asking A', please see the answer here."
For instance:
if people bypass that and jump straight to the answer that's more helpful in 95% of cases, it's understandable. (And efficient.)
Also, where I'm from, it's incredibly rude, subtype condescending. I'm not surprised if someone walks away after being given that sort of non-answer. It's not "steam that nobody's answering your question", it's "holy shit, did that person really just tell me not to worry my pretty little head about doing my own install?"
Alsoalso, it puts the recipient of the "advice" into the social position of having to reject the gift of time/effort they received from the answerer, and tell the answerer "actually, no, you're wrong; you've answered the wrong question." There is literally no way for the question asker to persist without rejecting the help-offering of the answerer. I'm enough of an asshole to do that; is your average DW developer? Frankly, that's pretty egregiously against most women's socialization.
(BTW, this whole topic is a sore spot right now because I'm trying to deal with a Mailman list migration, and the internet is well salted with "How do I move a list to a different server-Mailman installation" articles NONE of which is about how to move a list an all of which are about how to move THE ENTIRE SERVER.
Which brings me to the other point: how sure can you be that the question you think you're being asked is as prevalent as you think it is? In the case of Mailman, the developers are apparently all sure that the vast majority of Mailman users, like them, run whole servers. In reality, there are literal millions of customers of shared web hosting accounts with cpanel, which comes with Mailman access now. None of whom can use the whole-server migration method, since they're not root and merely share the server with other list owners. I'm pretty sure there's vastly more people who need to move individual lists than there are people who need to move whole servers, but apparently those questions never make it back to the developers. Presumably because it doesn't occur to the users to track down the developers and petition for assistance, at the same rate that sysadmins do. Holy biased sampling method, Batman!)
no subject
no subject
no subject
After this incident, the culture of helpfulness got way more tuned in to the individual nuances and trying to figure out how best to direct people rather than efficiently railroad them down a standard path, but upon reading scrollback for that day, I was cringing and facepalming, and trying to figure out how to better serve the random newcomers.
We did get better.
no subject
no subject
I idle frequently in #lisp and a great deal of questions go on there that are... shall I say... ill informed. At which point about 3/4 or so of the active members jump on the person and tell them the Right way. This is partially because the members of #lisp are experienced, partially because they are often crotchety, and partially because, well, Lisp is very socially codified in certain respects.
But the question still goes unanswered, and often, when you are doing development, you have a complex set of requirements and foolishnesses causing those that make the setup so wrong... but you need to sort it out within the foolishness, and having the guardians of Order tell you its foolishness doesn't help.
no subject
Oh god, this. I once asked a question, "How do you do this in PHP" and got back an answer, "Why are you doing that in PHP? perl would be so much nicer, blah blah blah sales job sales job sales job." To which the answer was, "BECAUSE THE CLIENT IS PAYING FOR IT TO BE IN PHP, OKAY?"
no subject
no subject
no subject
no subject
Not everyone gets that kind of training, though, and I knew I've done my share of answering the question asked, only to find it's not the question someone wants answered.
no subject
Though in non-fairytale-land, it was a more substantial conversation. And after that incident, the standard "hi, welcome, you want to help? great!" framework got a lot more sophisticated.
no subject
no subject
Also, this forcibly reminds me of "how do I do this particular Thing with this particular OS/software/hardware" questions that inevitably generate about twice as many "you need to change OS/software/hardware" "answers" as actual helpful ones (and 99% of the time, there really is a solution). The thing is, if I'd wanted to know how to spend the endless amounts of money these folks seem to think I have, I wouldn't be asking them how to spend it [sigh]. I do understand that sometimes you can't get from point A to point B with the car you have, but just tell me that if that's the case, 'kay?