7 ms·
When I read this response about bitwise NOT operator it definitely felt like an impatient and dismissive RTFM response. A patient and welcoming answer could've
by kylequest 11y ago
When I read this response about bitwise NOT operator it definitely felt like an impatient and dismissive RTFM response. A patient and welcoming answer could've been much shorter: "hey, we use ^ instead of ~ for that".
https://groups.google.com/forum/#!topic/golang-nuts/A9mCgLwyqxY https://groups.google.com/forum/#!topic/golang-nuts/A9mCgLwy...
- codemac 11y agoThere are piles of examples of Russ being curt, I'm quite surprised by the response my comment is receiving. I guess I shouldn't have presumed about Russ' reputation - but he definitely has a very negative reputation with me.
- coldtea 11y agoReading golang-nuts, he always came off as curt and "wise-ass" (of course, given his knowledge and experience, perhaps often justyfingly so, but still). And not in the over-the-top, theatrical way Linus does it which is mostly style, you feel there's real sneer.
- throwaway999666 11y ago> of course, given his knowledge and experience, perhaps often justyfingly so, but still. Always with the half-excuses for people with technical ability/track record. "Well he comes off as kind of rude, buut he kind of knows what he's doing so the arrogance is maybe warranted". Just goes to show that technical ability and dealing with people even in a technical setting are two very different things. I guess that is the reward for a technical track record? Being half-excused for lording it over other people? Disclaimer: I know nothing about Cox' online personality. I'm just addressing how people react to rude (or whatever the intent is) technical people.
- coldtea 11y ago>Always with the half-excuses for people with technical ability/track record. "Well he comes off as kind of rude, buut he kind of knows what he's doing so the arrogance is maybe warranted". Just goes to show that technical ability and dealing with people even in a technical setting are two very different things. I guess that is the reward for a technical track record? Being half-excused for lording it over other people? Well, I guess that's life. If you can do somebody else cannot do, and they need you to do it, you get to dictate the terms and be rude. Ideally we'd all like rainbows and kindness, but you know...
- throwaway999666 11y agoNo you moved the goalpost from half-justifying, to "tough shit, sometimes you just gotta deal with it". Which I agree with insofar that some things are just "the way they are", but it's a completely different argument.
- coldtea 11y agoWait, what goalpost? I wasn't making an argument initially, I was making an observation: "He's curt, maybe justifyingly so, but still...". Then I further expanded upon that, based on the comment I got, that "that's how it is, if you're good at something you often get to dictate how you treat people who want it". Wasn't meaning it to be an argument (to be met with counter arguments, to move goalposts, etc), just plain observation of how it is, as I see it, in both cases.
- rsc 11y agoLike throwaway999666, I don't believe that knowledge or experience is justification for being unkind. I try to be as kind and friendly and helpful as possible to everyone who asks for help with Go. Obviously that didn't come across in the emails you're referring to, and I apologize for that. If you're willing to point to specific examples, I'm interested to look at them so I can adjust what I write in the future. Mail to rsc@golang.org is probably best, since this is getting a bit off-topic, but a reply here is fine too. The comparison with Linus is interesting to me, since I've always interpreted Linus's rants as real venom, not just theatrical style. But I don't know Linus, so maybe I'm misreading the rants.
- dilap 11y agoThis blows my mind. As a random Go user and internet reader, rsc is amazing, & I've never seen instances of him being what I would consider unfriendly. (What is 'friendliness' and 'unfriendliness' varies lots though, culturally.)
- rsc 11y agoLike I wrote to coldtea below, I try to be as friendly and helpful as possible to everyone who posts to the mailing lists about Go. Obviously that didn't come across in the examples you're referring to, and I apologize for that. If you're willing to point out specific examples, I'd like to understand what I'm doing so I can make adjustments. Mail to rsc@golang.org is probably best, since this is getting a bit off-topic, but a reply here is fine too. Thanks.
- gohrt 11y ago> impatient and dismissive RTFM response. rsc wrote a lot of the Ms. And the answer rsc gave was charmingly funny and helpful. Did you try following rsc's advice? I won't post a spoiler here; It's awesome and way better than "hey, we use ^ instead of ~ for that". The problem so often is that people who can't keep up and don't understand how good the answers are, blame the experts for going too fast, and mistake "being too busy to handhold 1000s of people" for "being a jerk". Would you go to Yankee Stadium and stop Derek Jeter on the way into work, just to ask him "Hey, does Major League Baseball use metal bats, or wooden bats?"
- A_COMPUTER 11y agoI felt that his response was a gentle nudge to say "we expect you, as a programmer, to either read the spec or just write a test program, to get your answer." When I started out with IRC and Usenet I had to be inducted into the culture of doing due diligence and asking questions correctly, and I am better for it. I do feel that a lot of people do not respect that culture because they feel that there should be as few obstacles to new participants as possible, including very mild hurt feelings.
- kylequest 11y agoWe would have to agree to disagree here. Being passive aggressive towards newbies is not really a sign of a welcoming community. How dare they ask an obvious question... I know it's pretty standard in many online communities, but it's the opposite of what Russ says they are trying to accomplish in the Go community. A really helpful answer in this case would include the story behind why the Go creators decided to use a different operator. Linking to the entire spec (not just the relevant section on arithmetic operators) is not friendly, patient or welcoming. Rob Pike is pretty busy too, but he appears to be much friendlier in his responses (even to newbie questions).
- carussell 11y ago"RTFM" is not the suggestion proffered there. The link to the Go spec was an aside. I'll probe once more, since you totally ignored the question: did you run that test program through the compiler? The result is evidence of magnitudes more friendliness than anything that anyone could possibly write in a comment.
- mseepgood 11y agoActually the answer was more patient, elaborate and educational than a short "use ^ instead of ~". Give a man a fish and you feed him for a day; teach a man to fish and you feed him for a lifetime.
- rsc 11y agoHi. I'm sorry that seemed impatient, dismissive, and (as you say in one of the replies) passive aggressive. I certainly didn't intend it that way. As gohrt and carussell noted, the point was that if you write ~ in a Go program (perhaps because you don't realize Go is different from C here), the Go compiler goes out of its way to explain. Compiling package main func main() { println(~5) } produces main.go:4: the bitwise complement operator is ^ (http://play.golang.org/p/dFoaHVNOJw http://play.golang.org/p/dFoaHVNOJw). I am not sure why my 2010 email didn't include a direct link to the Go program on play.golang.org. I suspect that play.golang.org didn't yet support "sharing" at the time, but I don't remember. I believe the point of the link to the spec was to make clear that the compiler implementation is not the only source for answers, that the operator is also documented. Thanks for pointing this out. Both parts of the response were intended in the spirit of "let me show you how" and not "go figure it out yourself". I will try to make that clearer next time.
- kylequest 11y agoNo need to be sorry :) Personally I'm fine with those types of responses because I'm more interested in the information and not its presentation. However, with that specific question a great answer would also include "why" (why Go uses a different operator there). The intent ("let me show you how") is definitely good, but it was lost in delivery. It turned out to be like a joke without a setup. Without the missing context it just looks like a non-answer to a simple question.