Every newsgroup has it's own emotional tone and rules of operation. Several rules of behavior, though, are common to all newsgroups. Here is a small selection:
And please don't post test messages, either. There is a newsgroup, alt.test, set aside for just that purpose. This is especially useful when you go to test code that posts messages automatically. In alt.test, no one will mind.
Check the links here: http://dir.yahoo.com/Computers_and_Internet/Internet/Beginner_s_Guides/
A very common problem is for novices to pick the wrong newsgroup, often through not understanding the problem clearly. One example is asking how to access hardware directly in comp.lang.c. This is off-topic, even though you are using C, because the fact that you are using C in incidental; the critical factor is the operating system you are using, since there is no C language feature for accessing hardware; it is always operating-system-specific.
In general, use these tips to determine the right technical newsgroup:
*the exception on specific compilers relates to ANSI/ISO standards. It is acceptable in most language-specific newsgroups to ask if your specific compiler is handling a (portable, ANSI/ISO standard) code fragment according to ANSI/ISO standards.
By this I do not mean 'I want to directly access hardware', 'I want to lookup the user password', or 'I want to hack the kernel32.dll', I mean what are you trying to do this for? Why are you trying to do this?
Many times people asking questions are confused about something; that's why they need help. For a large number of posters, the answer to their post sounds like the old joke: 'Doctor, it hurts when I do this' 'Then don't do that!'.
For these posters, the answers are "you don't", "you can't", or "you shouldn't". Not because we don't want to help, but because the answer involves asking a different question.
The answer's fine; the question is wrong.
It often takes three or four posts to find out what the poster really wanted to do, and answer his real question.
Several times a week, someone posts a message that some basic standard function doesn't work.
A lot of these posters just say 'it doesn't work!', in a huge panic. Well, it does work! It has for a long time! It just isn't working in your code. Post the code that doesn't work; in the case of a function that takes a string containing a file path or key name, include that (sometimes the parameter is wrong).
Post the line of code that fails, along with enough code before and after to show what you're doing. Include brief definitions of uncommon structures and macros (in a VC++ newsgroup, for example, we know what an LPCTSTR is, and what a SECURITY_DESCRIPTOR is, but what's a MY_COOL_STRUCT?).
Don't post HTML, bitmaps/jpegs of screen captures, or executable code.
Usenet is worldwide, and while cable and DSL are becoming common in the U.S., for much of the world (including some of the most developed Western European nations), low-speed connections that charge for connect time by the minute are the best thing available. Screenshots, executables, and HTML can cost a fortune.
Some newsreaders can't handle html. In addition, a lot of intelligent people who might be able to help you won't bother reading an html message, even if the newsreader can handle it *, or will delete unread any posts containing attachments (there are a lot of people posting viruses out there).
This is your brain on plain text
<html><body><p><font face="Script"><big><big>This is </big></big></font><font face="ZapfEllipt BT"><font color="#FF0000">your </font><big> </font><font face="Staccato222 BT" color="#FF00FF"><big> brain</big></font><font face="ZapfEllipt BT" color="#FF00FF"> </big>on <font color="#00FF00">HTML</font></font></p></body></html>
(This is your brain on HTML)
Just say no to HTML usenet posts.
It doesn't work could mean:
We have no idea which of these occurred unless you tell us. Include error numbers and descriptions, as well as any other relevant information.
Many people ignore posts where the poster is 'writing a proggy', has a large ASCII character signature that looks like Barney or the DOOM logo, or has the following hacker wannabe spellings in the subject line: d00d, warez, luser, windoze, dead rat linux, etc. ad infinitum. Many people who could answer your question immediately add you to their kill file, reducing your chances of getting an answer by 25-75 percent, depending on the newsgroup.
In addition to checking your appropriate manual, make sure you are using a reasonably up-to-date and accurate book. For most questions involving, 'Why doesn't this code from Joe Schmoe's book from 1985 work?', the answer is Joe Schmoe's book is wrong. The example isn't supposed to work, because it's more than a decade and a half out of date. Throw the book away and get a new one. The same applies to almost any compiler-specific or language-specific book more than a few years old. Get a new one, and make sure it's a decent one. Ask before buying.
Most questions posted to the newsgroups are answered in the FAQs, and many times someone else just answered the same question from someone else. These are much faster than waiting for a response. Also, many people (myself included) will answer the first three or so questions on one topic during a given week, then ignore further posts asking the same question. The reasoning is that, if they had checked the subjects of other posts first, they would already have their answer.
Locations of FAQs and samples:
* Note: Microsoft and several other corporations decided to place newsgroups pertaining to their products in a non-standard hierarchy. The ftp link given for FAQs does not list FAQs for these alternate hierarchies. Those that are listed are often outdated. FAQs for these groups can usually be found by using a search engine, or checking the corporation's web site. The newsgroups are carried by many servers, and most corporations provide freely accessible news servers anyone can read from and post to.
Here is a beautiful example, from the vc.language newsgroup. This is the text of a series of messages posted by 'one may', in the same subject heading.
Post 1 - How do I allocate 64 bytes of memory using VC6 and WINNT?
Post 2 - I am going to store integers only in this allocated memory, if that is of any consequence.
Post 3 - I want to hold 512 integers.
Post 4 - In addition, how would I access this allocated memory that should hold 512 integers?
Post 5 - So i guess i need quite a bit more than 64 bytes.
Post 6 - I'm sorry. I've been very unclear. I need to store an integer that is 512 digits long?
Post 7 - Oh yea, the 512-digit integer is actually in hexadecimal. Again, sorry for being so unclear.
response from Paul Lutus - www.arachnoid.com
Here is how to avoid such a funny thread:
1. First, state the problem you want to solve.
2. Then ask for help solving the problem.
3. Don't propose your own solutions until you have stated the problem.
This will greatly increase the efficiency of your postings.