Listen to us

May 7th, 2010 by Radar

From my time helping out in the #rubyonrails channel on Freenode, I have come across some awesome people whom I probably would have never met. Being able to talk with them is the major reason why I still hang out in there. Then there’s the coming and going of the people wishing to ask questions and listen to the answers provided by the people who are willing to give them, such as myself.

I don’t mind answering question after question when I have spare time (which I don’t anymore, so I cut back). Some of the questions are nearly identical such as “Has anybody used ?” or “Can somebody help me?” or “This is broken.” This is why I made the bot for the channel so that the people helping out do not have to repeat themselves. The bot provides many things, such as the commands !used, !ask and !elaborate for the responses to the respective questions above. I think it’s a great advantage having something like that in the channel and I can see that other people do too.

Sometimes though, we have to answer the questions ourselves. The channel bot does not have the knowledge we do, and is really only helpful for answering general questions or linking to helpful things like the guides. When we answer these questions, we (read: most of us) put our heart and soul into helping you become a better person. We give free advice to those who ask for it.

Many of these people are thankful, grateful, appreciative. I want to see these people become contributing members to the Rails community, so I help them. This is how I got started, and how I need them to get started too. In helping these people, perhaps I learn something new, or perhaps I don’t. It’s those little things you pick up along the way by helping out others which I think makes me a great programmer. The feeling you get when somebody says “Thanks” when you help them is awesome. If I didn’t need to eat, sleep or drink, I could probably live off this alone.

Then you get the people who question your advice. Who state, adamantly, that your advice is wrong. Very, very, very rarely this is the case. It’s usually that they’ve come in with their own set opinion and that anybody else who says anything different is completely wrong. I do not understand these people. They come in asking what appears to be a legitimate question, but instead will argue with you for hours as to why their point is better, regardless of your experiences and issues with their point.

Listen to us. We’ve been there before. We know what’s best (99.999% of the time). If you think that you’re right, stop and think for a moment. What if the other person is right? Try to see it from their point of view. Imagine what it would be like to argue their point. Don’t come back with things like “NO THAT SUCKS”. Clearly elaborate on why it sucks in clear and concise points. Text is not limited and your time is not as precious as you think. The more valid points you have for your argument, the better it will be. Arguing with the longtimers in the channel is not the way to win friends and influence people. Admit you’re wrong if you are, and you’ll be a better person for it.

Stop assuming that your answer is the be-all-and-end-all of the topic. Why waste our time asking a question if you’re already set in your ways? Just go and implement it and then come to us later when it breaks for you and we will help you fix it for free. If 5 other people in the channel are opposing your idea and suggesting what they claim is a better solution, then they’re probably right. We only have your best interests in mind.

Please, listen to us. We want you to help you, help us, help you.

4 Responses to “Listen to us”

  1. Steven Fauconnier Says:

    Hi Radar, I’m a rails/ruby rookie and you helped me out yesterday. You told me to remove vendor/rails map and see if that fixed my website and it did, don’t know if you recall. I’m indeed appreciative that there are people like you in #RubyOnRails, and hope that one day I’ll be a contributing member myself. What the lot of you are doing is great and really helps in making the community a better place and more likely to grow. So not to sound too cheesy, but again: thank you.

  2. Radar Says:

    I recall :) Was an interesting problem to come up with.

  3. Connor Says:

    This argument is pretty arrogant. To suggest you “know what’s best” for a project you’ve never worked on and have only a question or two as reference is, to say the least, highly presumptive. Rails is an opinionated piece of software. Thankfully the degree to which those opinions are “locked in” is slowly being dismantled and the accommodation of alternatives attitudes embraced. It has often been my experience on the rails channel that people ask a question of minor implementation detail, only to have their entire architectural approach questioned and chastised because it does not readily fit a rails opinion. There is more than one way to skin a cat. There has always been. It is the embrace of alternative attitudes that gives rise to genuinely good developers. We’ve seen before how arrogance mixed with a difference of opinions can split the community. The ultimate result of that split was progress that would not otherwise have occurred had conventional rails wisdom been followed. It may feel good to tell people how they should implement things. It may make people feel like “great programmers” but in reality it wouldn’t last ten minutes outside a room filled with fanboys.

  4. Radar Says:

    Connor,

    It was more the case for when people suggest using Regular Expressions to parse HTML even though there are XML parsers (like Nokogiri) to do that for them.

    Another situation was where somebody refused to learn the routing helpers (posts_path, et. al) and wouldn’t listen to the advice that suggested that they were leaving their destroy action vulnerable. How was it vulnerable? If somebody had sent him a shortened link to the destroy action, because it’s a GET request, it would go through with it. If he was using the routing helpers and therefore made the request the the destroy action require a DELETE request, then this prevents that problem.

    To suggest I only have “one or two” questions as reference is ludicrous. There has been numerous times where people will not listen to good advice. I have been around for a long time.

    You are talking in absolutes, which is not conducive to this discussion. I would like to see a clear-cut example where somebody suggested an implementation that wasn’t “conventional” (term used loosely) which was better than an alternative offered by the helpers in the channel. I am not claiming that this situation does not exist, it very much does. It is just very rare that this happens. “What’s best” for a project is generally the conventional way.

Leave a Reply