If you have been directed to read this article, there's a good chance that you may have made a post somewhere that opened you up to criticism. Not because you're a neophyte--but because you were (possibly) a lazy neophyte.
I'm not sure of the reasons--perhaps it is due to the rapidly growing popularity of Linux, but it seems that fewer and fewer newcomers make an effort before posting. Then, someone suggests that they do things slightly differently. The newcomer takes offense and we're off on a series of posts that waste time and often make the gurus feel that they might as well leave the list.
There are guidelines to posting questions all over the place. So, why another? Well, perhaps because I consider myself far less experienced than the typical writer of such guidelines, and perhaps more diplomatic as well. So, maybe someone will read this and learn from it.
Some of this is covered in the netiquette section of my Faq that is has become the list faq for several newcomer oriented mailing lists. That faq can be found at home.nyc.rr.com/computertaijutsu/linfaq.html
(As this article is directed towards the neophyte, let me add that FAQ stands for Frequently Asked Questions). Another very worthwhile read for the newcomer is written by my friend Godwin Stewart and can be found here
Some folks have found me rude because, rather than state the same thing a myriad of times, I now have a small text file that I find I often have to insert into my emails. It covers a few of my pet peeves and might as well be included here.
NOTE: Please trim replies to what is relevant. Please try to put your reply below the post that you are answering, as if it were a conversation. Please take a moment to read http://home.nyc.rr.com/computertaijutsu/linfaq.html#netiquette Also, if this note is being inserted in a post on linux@yahoogroups, redhat@yahoogroups or BWL@yahoogroups, the abovementioned faq is referenced in the welcome message and on the home page--please take a look at it
Note some of the points in it. One bad habit of newcomers is to reply to a post, and leave everything from the previous four posts in there. They also tend to put their replies above the post to which they are replying. While many of us get lazy and do that on occasion, if these newcomers go to some more elite lists, they will be told about it and far less politely than they are in my note.
My favorite example against top posting vs. inline posting (that is, posting your answer to point a below point a, answer to point b below point b) is in one of the links in the newbie faq mentioned above. It is
Yes please. Cream and sugar Would like some coffee? How would you like it?
Additionally, my little message points out that if it is inserted in an email to a few different lists, then the faq was mentioned in the list's welcome message. This means that the offending poster either didn't bother to read the welcome message, or didn't pay much attention to it.
Again, if such people go to some higher level lists, they'll be told about this, and far more harshly than they will be on any of the lists mentioned in the note. For an example of a list aimed at the advanced user see the Tokyo Linux User Group List Policy. They bluntly tell the beginner that they will help if they can, but they expect a certain amount of effort before something is posted.
On their page they reference the Eric Raymond faq How to Ask Questions the Smart Way. You should definitely take the time to read that, especially if you feel that this article, or the netiquette section of the newbie faq mentioned above is demanding that you bow and scrape in order to get an answer. I remember somone posting on one of these lists that they'd read the faq's section on netiquette, but felt it meant they had to kiss posteriors to get an answer. I had missed the original post, as it had the subject line of "Help," and I'd just deleted it. However, for those who do feel that way, it might be worth reading one paragraph from Mr. Raymond's guide.
"If you find this attitude obnoxious, condescending, or arrogant, check your assumptions. We're not asking you to genuflect to us, in fact, most of us would love nothing more than to deal with you as an equal and welcome you into our culture, if you put in the effort required to make that possible. But it's simply not efficient for us to try to help people who are not willing to help themselves. If you can't live with this sort of discrimination, we suggest you pay somebody for a commercial support contract instead of asking hackers to personally donate help to you."
(Please note that since this was first written, Mr. Raymond has redone his introduction and slightly changed the above--however, the general idea is the same.)
What really annoys the old-timers--and keep in mind, if you're a newbie, you don't want to annoy them--more on that in a minute--is, if a newbie is told such a thing, relatively politely, the newbie answers back rudely, talking about the old timer's arrogance, etc. They sometimes add, "You were a newbie too once". Yes, I was, and I probably still am. However, I don't get flamed very often by the veterans.
Firstly, here's why we don't want to annoy the old timers--they're the ones with the knowledge, knowledge that they will freely give if asked in the right way. This doesn't mean you have to brown nose them, but simply that they hold to the adage (it might have been Mark Twain, though I wouldn't swear to it) that one shouldn't try to teach a pig to sing--it wastes your time and annoys the pig.
So, why don't I get flamed very often? I remember my very first question on a Linux list--it had to do with an online Perl tutorial that I was doing--as I have fairly poor eyesight, and the fonts in the browser I was using weren't very good, I misread a command--no matter how often I looked at it, it seemed as if I were typing the command correctly--however, I was inserting a period where there was none, due to the poor quality of the browser's fonts and my eyesight. Someone pointed it out to me--they weren't terribly nice, but they weren't terribly rude either. I saw the humor in it, explained the reason for it, and after that, that person gradually became a mentor.
The main reason, however, that I didn't get flamed too often is that I showed that I was making effort--I would cite the references that I'd read--if I didn't understand them, I'd mention that too, including the parts that I didn't understand.
I've seen some of these so-called arrogant people take hours of their time to explain things clearly to a newcomer. I've also seen them tear people apart. One of my earliest mentors once saw something that I posted that he felt was asinine. He publicly ripped me to pieces.
I could have posted back how dare he use such language, etc. etc. However, I knew that he was far more knowledgeable than I was. I wrote him a few days later to say, Gee, you're right. The point is--I was eager enough to learn so that I would take some criticism on the way. Had I then closed my mind because of the way he expressed himself, I wouldn't have learned what he was teaching me.
If one studies a martial art, they realize that injuries, no matter how careful they are, will occur. They seldom blame the one who injures them. They realize that something worth doing is worth effort, and sometimes suffering.
To continue the martial arts analogy, you don't walk into a martial arts school and expect to sit there, do nothing, and become good. You realize that hard training is a part of attaining skill. The teacher, even if he's the best teacher in the world, can't simply show you a move, and make it something that you can use with no practice on your part.. You have to put forth the effort--you can of course, go to class and just go through the motions, but you're wasting your time and the teacher's.
So, what is expected of the newcomer? They're expected to show that they're making effort. Think about it. I've spent many hours polishing the faq that I refer to above, to make it so that the newcomer can read and understand it. Now, someone posts on one of these mailing lists, five questions. I give them five answers. Each answer is the same: Covered in the list faq. The next time I see a post from that person, I'll probably just delete it. I work in the IT field, and belong to several tech mailing lists--I probably get 300 emails a day from these various lists--obviously, I don't have time to read them all, I usually just look at the subject line, and take it from there.
As some of the lists to which I belong are very newbie oriented, I do my best to educate the newcomer--I might, the first time they ask questions that are covered in the list faq, direct them to the faq, and, gently (at least in my opinion) point out to them that part of becoming experienced is a willingness to look at things like long list welcome messages--they might have useful information. I can understand that the newcomer doesn't always know where to look. I can also understand that if someone posts, how do I open a bz2 file it means that they are new to *nix, and possibly don't yet know about seeking information themselves. The bunzip2 man page is heavy going for such a person--in this case, I see nothing wrong with answering their question. (However, that question is covered in my faq) :) I can even understand that such a person doesn't yet realize that welcome messages can be important, and had they thoroughly read the welcome message, they might have checked the faq and had their question answered.
There are certainly times where there is just so much information, that the newcomer doesn't know where to look. I've certainly had such problems myself--I remember searching for over three hours to find out things that took only a moment or so to do--once I knew how to do it. The documentation could have been better and easier to find. One thing veterans like to see is willingness on the part of the newcomer--for instance, posting, I've searched google for 2 hours and can't find the answers I need on this--can someone point me in the right direction? is far more likely to get a considerate answer than
Hey deWds---how do i setup a printer in linux?
So, part of educating a newcomer is teaching them such things. I will answer, and then explain to them how they might have been able to find it for themselves. Yes, sometimes, one simply can't find something, or is tired of looking--once you've shown that you're willing, people are more likely to cut you some slack. One might see, on a particular list, a veteran, who usually answers other people's questions, post something like, I've forgotten the syntax for such and such and don't feel like looking for it right now--anyone want to help a lazy man?
Such a post will probably get answers, along with friendly insults about the poster's age and failing memory. However, such a person has earned the right to be lazy on occasion.
Mailing lists are not democracies. Each list has its own personality. The point is that if a newcomer wants help from the more experienced, unless he is on a list like the appropriately named Linux-Anyway list, where part of the idea is to not flame newbies for violations of various rules of netiquette, but to (politely) educate them, they will sometimes have to put up with what they consider rudeness.
Now, when I say it's not a democracy, this also means that not everyone has equal value to the list. You may be a wonderful person, and the guru may be a horrible one who has no friends. Yet, the guru has what people join the list to obtain--information.
So, let's take an extreme example. You've done your research, and you post a question. The guru happens to be in a worse mood than usual, and posts an insulting answer. You are offended by this, especially as you feel you've done your research and angrily post something back--because you're a wonderful person, even your anger is polite and respectful.
However, the guru is in a totally rotten mood--remember, he's a horrible person. He takes offense and decides to leave the list. You might be thinking, good riddance, and anyone who read the exchange can tell that I'm a much better person than he is--he made himself look bad.
WRONG!!! You just deprived the list of one of its best resources. Yes, he was horrible, but he had the knowledge--most people aren't joining these lists for social reasons, they're joining because they want to learn something. So, no matter how noble you acted, YOU were the one who was wrong--the list could have afforded to lose you far more than it could have afforded to lose him.
This sounds harsh, but it's actually true. Lists aren't democracies--especially in the case of a technical mailing list, you're almost better off looking at it as if you were in the army. Neither you nor anyone else joined the list for a lesson in etiquette. To return to our martial arts analogy--if it turned out that the teacher was not a good person but was an excellent teacher, and your purpose for joining the school was to learn the art, you stay there and put up with whatever wrongs you see. The school will be better able to deal with you leaving than with its teacher leaving. In a case like this, though you may feel you have the moral right of it, actually you don't--by causing the guru to leave the list, you've taken a resource away from all the other people who learned from him. You're far better off deciding the list is not for you, and finding one like the linux-anyway one mentioned above, where you can make all sorts of silly mistakes and only receive gentle reprimands. Especially here in the USA, we seem to think we have a right to belong to a mailing list--that's not the case. It isn't a right, it's a privilege.
I don't consider a mailing list to be a tyranny either--instead, I would say that most lists are meritocracies. The guru may be a horrible person or may be a saint. The important thing to the list, however, is that he is a guru. He has earned his position on merit. Therefore, it is to your advantage to recognize and respect this fact.
Back to our over used martial arts analogy--in more traditional schools, beginners are taught by mid-level students, mid-level students are taught by the senior students and the teacher only bothers with the senior level students. If he takes the time to correct a beginning student, that student is happy to be noticed, not ready to criticize the teacher for not being nice.
This is a very important point--like the martial arts school, a technical mailing list is a meritocracy. The gurus became gurus due to their knowledge. The knowledge came from the extra effort that they put into learning. They expect that effort from you, as well. You might say, "Hey, you were a newbie too, once." They might answer, "Yes, but when I was, I made an effort rather than expecting everything to be handed to me." If one of the high level people says you're doing something wrong, the important point is not how it was said, but what was said. This person, even if he did it nastily, gave some of his precious free time to help educate you. Rather than resent it, appreciate it. IT professionals never have enough free time--if they've stopped what they're doing to tell you that you're being stupid or lazy--listen. The chances are very good that they're right and you're wrong. Just look at it as tough love.
Such lists are actually quite helpful--if you enter into the spirit of such a list, you won't post until you've made every effort to find out the answer yourself. This pushing of yourself will often show you that you had more capability than you'd thought. So, if you've gotten flamed, don't take it too hard. Chances are that following some of these principles, especially the one about attempting to first find out the answer by yourself, will make your life a bit easier. If you've decided to get involved in Linux, then, just as if you'd decided to take a martial art, you've taken a certain amount of responsibility upon yourself.
One one of these lists, someone recently made a rather foolish error. One of the gurus educated him. Afterwards, the newcomer posted, showing that he wanted to learn. The guru then posted
But you have set your feet upon the path to cluefulness today. More importantly, you have demonstrated the most fundamental characteristic of a true Unix User: someone told you that you messed up and how to avoid messing up in the future, and you learned from it and committed yourself to doing that. Compare that to the reactions of some (failed) would-be Linux users who come from the world of the clueless Windows user and rather than trying to learn and become clued, pretty much expect us, our culture, and probably our very operating system to instead shed clue until we have reached their level. This, of course, we refuse to do.
FWIW, MS tech lists can be just as harsh if someone shows that they haven't made an attempt to find out the answer.
As I always like man pages with examples, here is one to help clarify this page.
My network isn't working, how do I fix it?
This question, if it gets any sort of answer at all, will probably get one like RTFM (Read the Fine Manual). Not only has the person shown no effort in problem solving, he's given the reader nothing with which to work. On some moderated lists, this question would be returned to the poster.
I have one Windows and one Linux box. I see the card coming up during the boot, and ifconfig shows it has an address, but I'm unable to ping between the boxes.This person has shown a bit more effort--the fact that he mentions ifconfig indicates that he's done a bit of reading. He's still left out some information, which may be due to inexperience. Although he's still likely to be told to look at some man pages, one has the feeling that he might actually do so. He will probably also get some hints as to what else he might look at to fix his problem. He may be told somewhat sarcastically that it would help if he gave some other information, but even the sarcastic poster will probably let him know what that information is.
When I set up networking between two Windows boxes, everything was point and click and I didn't have to learn anything. Now, I'm trying to learn about Linux and set up a network between a Linux and Windows box. The Windows box is running XP Professional, the Linux box is running RedHat 7.3.This person will receive a lot of help. They've shown that they're willing to research the matter, and despite the fact that they've only asked for further resources to look at, there's a good chance that someone will put some effort into helping them solve their problem. (They've given enough information so that one can also make far better guesses as to what hasn't been done, for example, perhaps they haven't configured the gateway.)
I've read the networking howto, but I'm finding it a bit over my head. It did, however, lead me to the man page for ifconfig. I confess that I found the syntax of the man page a bit confusing, but after a bit of trial and error, it seems that I got my network card configured. However, when I try to ping the Windows box, I get no route to host. Can someone point me towards some slightly more simply written resources?
Note that all questions are the kind that the inexperienced may ask--however, the third one shows that despite the poster's inexperience, they realize that they have to try before asking for help.
My thanks to Jonathan Byrne for several helpful suggestions that greatly improved this article and Josh Glover who also took the time to review and encourage. Both of these people are quite busy, and I am grateful for their time. Thanks also to Andres Rosado for a coding suggestion that helped improve the appearance. All errors and unpopular opinions are, of course, my own