Usenet, with groups like this one, predates the World Wide Web.
There are well over 120 000 Usenet groups like comp.lang.c++, and they
have a supporting infra-structure that, unfortunately, is in disarray.
The /tone/ in technical Usenet groups used originally to be technical
and with little mercy on those who tried to treat the groups as social
arenas. Courtesy as the default was common, but it was not uncommon to
e.g. respond with just “RTFM”, which means, Read The Fucking Manual, to
an equally rude request for basic information (that's rude because it
asks others to do one's work). M.I.T., the Massachusetts Institute of
Technology, still maintains its old RFTM site,
<url:
ftp://rtfm.mit.edu/pub/>
I think that as a long as M.I.T. maintains a site called Read The
Fucking Manual, as they do, even if the contents are just archaic stale
information, all cannot be lost – there are apparently still folks with
intelligence, direction, and a sense of humor.
• • •
The common rules for behavior in groups is called netiquette.
General netiquette is dicussed in RFC 1855, available at e.g.
<url:
https://tools.ietf.org/html/rfc1855>
An RFC, a “Request For Comments”, is akin to a standard for some aspect
of the Internet. Many RFCs are treated as effectively standards, e.g.
the ones governing e-mail protocols and the like. But the intent was
that the RFCs should evolve, via comments and discussion, into formally
adopted Internet standards, ISs .
Netiquette specifically for this group, comp.lang.c++, was part of the
C++ FAQ Lite maintained by Marhshall Cline via community input, where
the community was comp.lang.c++. That FAQ has since evolved into the C++
Super FAQ maintained by Cline, Stroustrup, Alexandrescu and Sutter, at
<url:
https://isocpp.org/faq>, but that version lacks the clc++
netiquette part. The original is however still available from
<url:
http://www.dietmar-kuehl.de/mirror/c++-faq/how-to-post.html>
and from a host of mirrors, including translations to other languages.
The netiquette part has many individual FAQs (frequently asked
questions), but I reproduce here as particularly relevant, the item
about how to post a question about code that doesn't work:
<FAQ 5.8 question about code that doesn't work>
Key guidelines:
• Post compile'able code: avoid ellipses, such as void f() { ... }
• Post complete code: put in all necessary #includes 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!
</FAQ 5.8 question about code that doesn't work>
• • •
Seen through a service like Google Groups the 120 000+ Usenet groups may
appear to be hosted by Google, and may appear to be just like other
Google groups. But a Usenet group isn't hosted on any particular server.
Instead Usenet is based on a distributed model where Usenet servers,
called NNTP servers, forward new postings to each other.
This means that
• A posting does not always appear instantaneously to someone else.
It may have to be forwarded through a lot of servers. Takes time.
• Others may not always have available the preceding postings.
Please quote what's relevant (and only that) of what you respond to.
• Postings can't in practice be deleted.
There is a mechanism for deletion but deletion in a distributed
forwarding system is difficult and error-prone, unreliable.
Postings are archived by various third parties. Originally there was
only one really big archive-it-all archive, called Deja News. That was
bought by Google. Google changed it into Google Groups, which is partly
a web interface to Usenet, and partly a discussion site that includes
non-Usenet Google groups. One can't easily see whether a group is a
Google group, hosted by Google, or a Usenet group, mirrored by Google.
For the Usenet groups it's possible to request, via a message's headers,
that it should not be archived forever, but only a certain short period.
And e.g. Google Groups honors that by deleting the message after the
specified time.
Still, if others quote the message, those quoted parts will live on.
• • •
Usenet groups, but not pure Google groups, can also be accessed via a
/newsreader/ program.
On great advantage of a newsreader is that it typically supports
filtering. That is, you don't need to see, at all, the postings in a
certain thread, or the postings of a certain someone, or the postings
that include certain words; whatever.
I.e., newsreader = more comfort and higher signal/noise ratio.
You need an account at a Usenet server, those servers that propagate
Usenet messages.
Eternal September is one free such server, the one I use.
Mozilla Thunderbird is one free newsreader. The Opera web browser is
another. There is a list in Wikipedia,
<url:
https://en.wikipedia.org/wiki/List_of_Usenet_newsreaders>
• • •
Finally, comp.lang.c++ lacks a /charter/.
Other newsgroups generally did have charters.
The now defunct moderated sister group to this one,
comp.lang.c++.moderated, did have a charter, but googling it I did not
find it. As I recall that charter defined as off-topic postings about
how to use any particular API: a flood of Windows API postings in
comp.lang.c++ was a main reason that the moderated group was created.
The FAQ Lite stated that any posting in comp.lang.c++ should be
answerable with reference only to the official ISO C++ standard.
However, in 2017, with very high traffic not a problem, I think
comp.lang.c++ should be far more inclusive. That's just my personal
opinion, of course, but I state it as possibly a point of discussion.
Cheers!,
- Alf