[5] Netiquette when posting to comp.lang.c++
(Part of C++ FAQ Lite, Copyright © 1991-2006, Marshall Cline, cline@parashift.com)
FAQs in section [5]:
- [5.1] What does IMHO mean? (or IMO, IMNSHO, FWIW, OTOH, etc.)?
- [5.2] How do I get other people to do my homework problem for me?
- [5.3] What should I do if I see someone else posting a homework problem?
- [5.4] How can I find out about general netiquette so I don't embarrass myself?
- [5.5] What do I do if someone else posts a question that's already in the FAQ?
- [5.6] Wait a minute, does that previous FAQ say to not answer their question just because it's already answered in the FAQ?!?
- [5.7] What makes a good Subject: line?
- [5.8] How do I post a question about code that doesn't work correctly?
- [5.9] Which newsgroup should I post my questions?
- [5.10] Should I post job advertisements and/or resumés on comp.lang.c++ ?
- [5.11] What if I really need a job; should I post my resumé on comp.lang.c++ ?
- [5.12] What should I do to someone who posts something off-topic?
- [5.13] What about spam?
- [5.14] How do I get the FAQs for a particular newsgroup?
[5.1] What does IMHO mean? (or IMO, IMNSHO, FWIW, OTOH, etc.)?
Here's a partial list of acronyms in alphabetical order:
- AFAICS = As far as I can see
- BTW = By the way
- FWIW = For what it's worth
- FYI = For your information
- HAND = Have a nice day
- IMHO = In my humble opinion (egoless)
- IMAO = In my arrogant opinion (oodles of ego)
- IMNSHO = In my not-so humble opinion (a lot of ego)
- IMO = In my opinion (not much ego)
- KUTGW = Keep up the good work
- MYOB = Mind your own business
- OO = Object-oriented
- OTOH = On the other hand
- PEBCAC = Problem exists between chair and computer
- PEBCAK = Problem exists between chair and keyboard
- PMFJI = Pardon me for jumping in
- RTFM = Read the ___ manual
- SO = Significant other (as in, "My SO and I went for a walk...")
- SSO = Small String Optimization (where short strings don't use the heap)
- YHBT = You have been trolled
- YHL = You have lost
PMFJI but my SO says "FWIW IMNSHO 'KUTGW' is rare; OTOH it may be useful."
For more acronyms please see the Canonical Abbreviation/Acronym List or the Acronym Finder.
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.2] How do I get other people to do my homework problem for me?
Shame on you!
Please do not post your homework questions to comp.lang.c++. And don't send them to people via email either!
"If I did your homework for you, then you might pass your class without learning how to write a program like this. Then you might graduate and get your degree without learning how to write a program like this. You might become a professional programmer without knowing how to write a program like this. Someday you might work on a project with me without knowing how to write a program like this. Then I would have to do you serious bodily harm." [Thanks to Jack Klein]
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.3] What should I do if I see someone else posting a homework problem?
When a slackard asks comp.lang.c++ to do their homework for them, answering their question is the worst thing for them. Please don't do it! Instead you can use the following table of "frequently asked homework assignments" to give them a hint/pointer:
If someone asks... | ...then here's a brief answer: |
How do I do Equation Parsing in C++? | Use a stack of operators to convert infix to postfix, then a stack of operands to evaluate the postfix expression. |
How do I do Shortest Path in C++? | Look up Dijkstra's algorithm and backtracking. |
How do I do Sorting in C++? | Look up heapsort, quicksort, merge sort, internal and external sorting. |
How do I do Minimum Spanning Trees in C++? | Look up Kruskal and/or Prim's algorithm. |
How do I do Combinations and/or Permutations in C++? | See your algorithms book. |
How do I do <some small essay problem; obviously contrived for a school assignment; too well defined to to be from the real world> in C++? | Do it yourself. If you get stuck, ask a specific question. |
[If anyone has other suggestions that should go into this table, please let me know; thanks; (cline@parashift.com)].
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.4] How can I find out about general netiquette so I don't embarrass myself?
Guidelines:
- Do not say, "Please respond by e-mail because I don't normally read this newsgroup" . If you don't have enough time for the newsgroup, don't expect the newsgroup to have enough time for you.
- Do not post questions that are answered in the newsgroup's FAQ. That's like saying your time (to read the FAQ) is more valuable than the time of hundreds and hundreds of others (to answer your question). Tres uncool. Read the FAQ first!
- Do not cross post your question to a big pile of newsgroups. Post to the newsgroup (singular) that best fits your question . If you don't get an answer in the "right" newsgroup, post somewhere else but redirect followups back to the "right" newsgroup.
- Do not top-post. In other words, don't type your reply above the previous author's text. Even if top-posting seems "natural" or "obvious" or "better," don't do it — it's not the comp.lang.c++ "way."
- Do not post HTML or "rich text." Like it or not, comp.lang.c++ is a plain-text newsgroup.
- Do not post "attachments."
- Do not refer to "C/C++." Some people get testy about that, and will (unfortunately!) ignore everything else you say just to correct you with something like, "There is no such language." It borders on pathetic, but you'll probably be okay if you say "C or C++" instead of "C/C++." Sigh.
- Do not confuse a class with an object. E.g., don't say, "How can I allocate a class?" or "My code creates a class via new." If you say something like that, at least a few people won't even bother to answer the question you intended to ask, but will instead use their entire reply simply to correct the words you used. Sigh (x2).
Many more general netiquette questions are answered in the newsgroup news.announce.newusers. This newsgroup contains many must-read articles for new users.
BTW here's a cute joke that tells you how people feel about top-posting (with credits to "Gordon" on apihna):
Q: What is the most irritating thing on Usenet?
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.5] What do I do if someone else posts a question that's already in the FAQ?
Please don't answer a question that's already in the FAQ. Instead politely but firmly point the questioner to the FAQ using the following template:
Subject: It's in the FAQ (was: Original_Subject_Goes_Here )
> Original_Question_Goes_Here [... ]
This issue is covered in the C++ FAQ.
You can get the FAQ at:
www.parashift.com/c++-faq-lite/
Please read the FAQ.
If you're willing to help in this effort, consider yourself "deputized" to point people to the FAQ using something like the above template. With your help, hopefully we can improve the signal-to-noise ratio on comp.lang.c++ and thereby preserve it as a valuable resource.
Note #1: Please don't give them the location of the appropriate FAQ. E.g., don't say, "Look at FAQ [10.3]" or "Look in section [10]" . It's the old give-them-a-fish vs. teach-them-to-fish problem.
Note #2: Please be polite. I'm hoping we can avoid "RTFM" or "RTFFAQ" euphemisms (or worse!).
Thanks for any help you can give in this matter.
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.6] Wait a minute, does that previous FAQ say to not answer their question just because it's already answered in the FAQ?!?
Yes, that's exactly what the previous FAQ says: when someone asks a question that's already in the FAQ, please do not answer their question.
- The poster is better off if you don't answer a FAQ-question: if you really want to help people, help them become self sufficient so they're not always dependent on others to look things up for them.
- The newsgroup is better off if you don't answer a FAQ-question: if you actually answer their question, chances are your answer will elicit follow-up postings and increase the amount of "noise" on the newsgroup. This reduces the newsgroup's value to everyone.
People ought to ask others for help with questions that aren't in the FAQ. But please don't cripple people by training them to depend on others for answers to questions that are in the FAQ.
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.7] What makes a good Subject: line?
Be descriptive:
- Bad: "Subject: HELP"
- Bad: "Subject: C++ problem"
- Bad: "Subject: SEX SEX SEX"
- Good: "Subject: Problem new'ing a multi-dimensional array"
Mention your compiler/version if you think it's relevant.
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.8] How do I post a question about code that doesn't work correctly?
Key guidelines:
- Post compile'able code: avoid ellipses, such as void f() { ... }
- Post complete code: put in all necessary #include s and declarations of needed types and functions
- Post minimal code: just enough to demonstrate the problem; skip I/O and calls to libraries if possible
- Post one compilation unit: if possible, combine Foo.h into Foo.cpp
- Post the tools you used: compiler name, version number, operating system, etc
- Post the tool options you used: libraries, exact compiler and linker options, etc
- Post the exact messages you received; differentiate between compiler, linker, and runtime messages
- Make sure main() has a return type of int, not void !
As always, make sure your question isn't already in the FAQ. Use the subject index to check.
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.9] Which newsgroup should I post my questions?
Only post to comp.lang.c++ if your question is about the C++ language itself. For example, C++ code design, syntax, style, rules, bugs, etc. Ultimately this means your question must be answerable by looking into the C++ language definition as determined by the ISO/ANSI C++ Standard document, and by planned extensions and adjustments. Operating-specific questions (e.g., about Windows NT / 95 / 3.x, UNIX, etc.) should go to an operating-system-specific newsgroup (see below), not to comp.lang.c++.
Here are some other potentially relevant newsgroups:
- comp.lang.c++.moderated
- A moderated variant of comp.lang.c++
- The moderator's job is to keep the signal-to-noise ratio higher than in comp.lang.c++
- comp.object
- Mostly OO design issues, with less emphasis on OO programming
- That group's FAQ contains an excellent introduction to OO along with an overview of OO terms and concepts
- comp.std.c++
- Discussion directly related to the evolving ANSI/ISO C++ standard
- The evolving ANSI/ISO C++ standard is discussed below
- comp.os.ms-windows.programmer.tools.*
- This group is intended for discussions about the selection and use of tools for Windows software development
- comp.os.ms-windows.programmer.misc
- This group is for all other discussions about Windows software development
- There's one FAQ list for all the comp.os.ms-windows.programmer.* groups
- Sample topic: Accessing C++ classes in a DLL
- Sample topic: A dialog as an MDI child window [with OWL]
- Sample topic: Disabled menu choices become enabled [with MFC]
- Sample topic: Using STRICT with windows.h
- Sample topic: A programmer's bibliography
- microsoft.public.dotnet.languages.vc
- Covers Visual C++ .NET. If it doesn't appear in your news server use the public MS news server at msnews.microsoft.com. Please do NOT write me asking how to set up your newsreader.
- comp.os.msdos.programmer
- Much of the traffic is about language products, chiefly from Borland and Microsoft
- Note: The FAQ for this group is not available at rtfm.mit.edu; it is at oak.oakland.edu/pub/msdos/info and garbo.uwasa.fi/pc/doc-net
- Sample topic: How can I read a character without [waiting for] the Enter key?
- Sample topic: How can I read, create, change, or delete the volume label?
- Sample topic: How do I configure a COM port and use it to transmit data?
- Sample topic: How can a C program send control codes to my printer?
- Sample topic: How can I find the Microsoft mouse position and button status?
- Sample topic: How can I write a TSR (terminate-stay-resident) utility?
- Sample topic: How can I contact [Borland, Microsoft]?
- comp.os.msdos.programmer.turbovision
- Borland's character-mode framework
- comp.unix.programmer
- Sample topic: How do I use popen() to open a process for reading and writing?
- Sample topic: How do I sleep() in a C program for less than one second?
- comp.unix.solaris
- Covers SunOS 4.x and Solaris
- Sample topic: Signal Primer
- Sample topic: Waiting for Children to Exit
- gnu.g++.help
- Sample topic: Where can I find a demangler?
- Sample topic: Getting gcc/g++ binaries for Solaris 2.x
- Sample topic: What documentation exists for g++ 2.x?
- comp.sys.mac.programmer.* and comp.sys.mac.oop.*
- Macintosh issues
- gnu.g++.bug
- Bug reports for g++; see the g++ docs
- comp.lang.c
- FAQ is posted monthly, and is maintained by Steve Summit
- Sample topic: I'm confused. NULL is guaranteed to be 0, but the null pointer is not?
- Sample topic: So what is meant by the "equivalence of pointers and arrays" in C?
- Sample topic: Why doesn't printf("%d/n", i++ * i++); work?
- Sample topic: How can I write a function that takes a variable number of arguments? [stdarg.h or varargs.h]
- Sample topic: How do I declare an array of pointer-to-function returning pointer-to-function-that-returns-pointer-to-character?
- comp.graphics
- Issues revolving around graphics programming
- comp.sources.wanted
- If you want some source code for something, post your request there
- comp.programming
- General programming issues
Usenet isn't the only place that has forums to answer your questions. You might also try Techi-Warehouse, among others. Please don't email me asking to add others; I don't have time (or the interest!) to make this an exhaustive list of forums.
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.10] Should I post job advertisements and/or resumés on comp.lang.c++ ?
NO!!!
Job ads, off-topic in comp.lang.c++ , give the impression of an employer that is irresponsible and/or technically clueless — not the impression you want to make! Instead post your job ad / resumé on one of the dozens of *.jobs.* newsgroups that are designed for that purpose. [Adapted with permission from postings by David Harmon and Brian B. Rodenborn]
Note: if you see someone else posting a job ad, please check here before flaming them .
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.11] What if I really need a job; should I post my resumé on comp.lang.c++ ?
NO!!!
Resumé postings, off-topic in comp.lang.c++ , give the impression of an employee that is irresponsible and/or technically clueless — not the impression you want to make! Instead post your job ad / resumé on one of the newsgroups that are designed for that purpose. [Adapted with permission from postings by David Harmon and Brian B. Rodenborn]
Note: if you see someone else posting a resumé or job request, please check here before flaming them .
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.12] What should I do to someone who posts something off-topic?
An extended flame war against an off-topic posting is just as off-topic as the original off-topic posting. The cure can be worse than the disease.
Instead use something brief and professional such as in the previous two FAQs (which, by the way, were adapted from other sources; see the credits in those FAQs). And please don't get personal or nasty — that just prolongs the (off-topic) exchange.
Remember the 5 "B"s of correction: Be Brief Brother, Be Brief.
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.13] What about spam?
Before you throw the word "spam" around (and especially before you accuse someone else of posting "spam"), please check to see some sites that provide a clear definition of exactly when a posting is or is not "spam." One such definition is provided here.
[ Top | Bottom | Previous section | Next section | Search the FAQ ]
[5.14] How do I get the FAQs for a particular newsgroup?
Let me count the ways...
FAQs (Frequently Asked Questions lists) are available 24-hours a day via:
- The web: www.faqs.org/
- ftp: rtfm.mit.edu/pub/usenet/
- e-mail: send a message with the line "help" to mail-server@rtfm.mit.edu
- usenet: many FAQs are available in the newsgroup news.answers
Please, PLEASE do not send e-mail to me!
[ Top | Bottom | Previous section | Next section | Search the FAQ ]