<chapter id="finding-help">
<title>Finding Help</title>

<blockquote><para><quote>Help me if you can I'm feeling down. And I do
appreciate you being 'round.</quote> - The 
Beatles</para></blockquote> 

	<para>Help is out there.  You just have to know where to look.  With
	Linux there are an amazing number of places you can go.  There are 
	mailing lists, IRC channels, web pages with public forums, and many
	other resources available.  This chapter will try to help you get the
	most out of your quest for help.</para>

<sect1 id="newsgroups-mailling-lists">
<title>Newsgroups and Mailing Lists</title>
	<para>
	This guide cannot teach you everything about Linux.  There
	just isn't enough space.  It is almost inevitable that at some point
	you will find something you need to do, that isn't covered in
	this (or any other) document at the LDP.
	</para>

	<para>
	One of the nicest things about Linux is the large number of forums
	devoted to it.  There are forums relating to almost all facets of
	Linux ranging from newbie FAQs to in depth kernel development issues. 
 
	To receive the most from them, there are a few things you can do.
	</para>

<sect2 id="right-forum">
<title>Finding The Right Forum</title>
	<para>
	The first thing to do is to find an appropriate forum.  There are many
	newsgroups and mailing lists devoted to Linux, so try to find and use 
	the one which most closely matches your question.  For example, there
	isn't much point in you asking a question about sendmail in a forum
	devoted to Linux kernel development.  At best the people there will 
	think you are stupid and you will get few responses, at worst you may 
	receive lots of highly insulting replies (flames). A quick look
	through the newsgroups available finds comp.mail.sendmail, which
	looks like an appropriate place to ask a sendmail question.  Your news
	client probably has a list of the newsgroups available to you, but if
	not then a full list of newsgroups is available at <ulink
	url="http://groups.google.com/groups?group=*">
	http://groups.google.com/groups?group=*</ulink>.
	</para>
</sect2>

<sect2 id="before-you-post">
<title>Before You Post</title>
	<para>
	Now that you have found your appropriate forum, you may think you are 
	ready to post your question.  Stop. You aren't ready yet.  Have you already
	looked for the answer yourself?  There are a huge number of HOWTOs and
	FAQs available, if any of them relate to the thing you are having a
	problem with then <emphasis>read them first</emphasis>.  Even if they 
	don't contain the answer to your problem, what they will do is give you a
	better understanding of the subject area, and that understanding will 
	allow you to ask a more informed and sensible question.  There are also archives
	of newsgroups and mailing lists and it is entirely possible that your
	question has been asked and answered previously.  <ulink
	url="http://www.google.com">http://www.google.com</ulink> or a similar
	search engine should be something you try <emphasis>before</emphasis>
	posting a question.
	</para>
</sect2>

<sect2 id="writing-your-post">
<title>Writing Your Post</title>
	<para>Okay, you have found your appropriate forum, you have read the
	relevant HOWTOs and FAQs, you have searched the web, but you still 
	have not found the answer you need.  Now you can start writing your post.
	It is always a good idea to make it clear that you already have read 
	up on the subject by saying something like ``I have read the 
	Winmodem-HOWTO and the PPP FAQ, but neither contained what I was looking for,
	searching for `Winmodem Linux PPP Setup' on google didn't return 
	anything of use either''.  This shows you to be someone who is willing to make 
	an effort rather than a lazy idiot who requires spoonfeeding.  The former
	is likely to receive help if anyone knows the answer, the latter
	is likely to meet with either stony silence or outright 
	derision.</para>

	<para>Write in clear, grammatical and correctly spelt English.  This 
	is incredibly important.  It marks you as a precise and considered 
	thinker. There are no such words as ``u'' or ``b4.''  Try to make yourself look
	like an educated and intelligent person rather than an idiot.  It will
	help.  I promise.</para>

	<para>Similarly do not type in all capitals LIKE THIS.  That is
	considered shouting and looks very rude.</para>
	
	<para>Provide clear details stating what the problem is and what you 
	have already tried to do to fix it.  A question like ``My linux has stopped
	working, what can I do?'' is totally useless.  Where has it stopped
	working?  In what way has it stopped working?  You need to be as 
	precise as possible.  There are limits however.  Try not to include irrelevant
	information either.  If you are having problems with your mail client 
	it is unlikely that a dump of your kernel boot log
	(<command>dmesg</command>) would be of help.<para>
	
	<para>Don't ask for replies by private email.  The point of most Linux
	forums is that everybody can learn something from each other.  Asking
	for private replies simply removes value from the newsgroup or mailing
	list.</para>
</sect2>

<sect2 id="formatting-your-post">
<title>Formatting Your Post</title>
	<para> Do not post in HTML.  Many Linux users have mail clients which
	can't easily read HTML email.  Whilst with some effort, they
	<emphasis>can</emphasis> read HTML email, they usually don't.  If you 
	send them HTML mail it often gets deleted unread.  Send plain text
	emails, they will reach a wider audience that way.</para>
</sect2>

<sect2 id="follow-up">
<title>Follow Up</title>
	<para>After your problem has been solved, post a short followup
	explaining what the problem was and how you solved it.  People will
	appreciate this as it not only gives a sense of closure about the 
	problem but also helps the next time someone has a similar question.  When they
	look at the archives of the newsgroup or mailing list, they will see 
	you had the same problem, the discussion that followed your question and
	your final solution.</para>
</sect2>

<sect2 id="getting-help-more-info">
<title>More Information</title>
	<para>This short guide is simply a paraphrase
	and summary of  the excellent (and more detailed) document ``How To 
	Ask Questions The Smart Way'' by Eric S Raymond.  <ulink
	url="http://www.catb.org/~esr/faqs/smart-questions.html">
	http://www.catb.org/~esr/faqs/smart-questions.html</ulink>.  It is
	recommend that you read it before you post anything.  It will help 
	you formulate  your question to maximize your
	chances of getting the answer you are looking for.</para>
</sect2>
</sect1>

<sect1 id="irc">
<title>IRC</title>
	<para>IRC (Internet Relay Chat) is not covered in the Eric Raymond 
	document, but IRC can also be an excellent way of finding the answers you need.  
	However it does require some practice in asking questions in the right way.  
	Most IRC networks have busy #linux channels and if the answer to your question
	is contained in the man pages, or in the HOWTOs then expect to be told 
	to go read them.  The rule about typing in clear and grammatical English
	still applies.</para>

	<para>Most of what has been said about newsgroups and mailing lists 
	is still relevant for IRC, with a the following additions</para>

<sect2 id="colours">
<title>Colours</title>
	<para>Do not use colours, bold, underline or strange (non ASCII)
	characters.  This breaks some older terminals and is just plain ugly 
	to look at.  If you arrive in a channel and start spewing colour or bold
	then expect to be kicked out.</para>
</sect2>

<sect2 id="be-polite">
<title>Be Polite</title>
	<para>Remember you are not entitled to an answer.  If you ask the
	question in the right way then you will probably get one, but you have
	no right to get one.  The people in Linux IRC channels are all there 
	on their own time, nobody is paying them, especially not you.</para>

	<para>Be polite.  Treat others as you would like to be
	treated.  If you think people are not being polite to you then don't
	start calling them names or getting annoyed, become even politer.  
	This makes them look foolish rather than dragging you down to their level.</para>

	<para>Don't go slapping anyone with large trouts.  Would you believe 
	this has been done before once or twice?  And that we it wasn't
	funny the first time?</para>
</sect2>

<sect2 id="type-properly">
<title>Type Properly, in English</title>
	<para>Most #linux channels are English channels.  Speak English whilst
	in them.  Most of the larger IRC networks also have #linux channel in
	other languages, for example the French language channel might be
	called #linuxfr, the Spanish one might be #linuxes or #linuxlatino.  
	If you can't find the right channel then asking in the main #linux 
	channel (preferably in English) should help you find the one you are looking
	for.</para>

	<para>Do not type like a ``1337 H4X0R d00d!!!''.  Even if other people
	are.  It looks silly and thereby makes you look silly.  At best you 
	will only look like an idiot, at worst you will be derided then kicked 
	out.</para>
</sect2>

<sect2 id="port-scanning">
<title>Port scanning</title>
	<para>Never <emphasis>ever</emphasis> ask anyone to port scan you, or 
	try to ``hack'' you.  This is inviolable.  There is no way of knowing that
	you are who you say you are, or that the IP that you are connected 
	from belongs to you.  Don't put people in the position where they have to 
	say no to a request like this.</para>

	<para><emphasis>Don't ever port scan anyone</emphasis>, even if they 
	ask you to.  You have no way to tell
	that they are who they say they are or that the IP they are connected 
	from is their own IP.  In some jurisdictions port scanning may be illegal 
	and it is certainly against the Terms of Service of most ISPs.
	Most people log TCP connections, they will notice they are being
	scanned.  Most people <emphasis>will</emphasis> report you to your ISP
	for this (it is trivial to find out who that is).</para>
</sect2>

<sect2 id="keep-in-channel">
<title>Keep it in the Channel</title>
	<para>Don't /msg anyone unless they ask you to.  It diminishes the
	usefulness of the channel and some people just prefer that
	you not do it.</para>
</sect2>

<sect2><title>Stay On Topic</title>
	<para>Stay on topic.  The channel is a ``Linux'' channel, not a ``What
	Uncle Bob Got Up To Last Weekend'' channel.  Even if you see other
	people being off topic, this does not mean that you should be.  They 
	are probably channel regulars and different conventions apply to
	them.</para>
</sect2>

<sect2 id="mass-ctcp">
<title>CTCPs</title>
	<para>If you are thinking of mass CTCP pinging the channel or CTCP
	version or CTCP anything, then think again.  It is liable to get you
	kicked out very quickly.</para>

	<para>If you are not familiar with IRC, CTCP stands for Client To
	Client Protocol.  It is a method whereby you can find out things 
	about other peoples' clients.  See the documentation for your IRC 
	for more details.</para>
</sect2>

<sect2 id="hacking">
<title>Hacking, Cracking, Phreaking, Warezing</title>
	<para>Don't ask about exploits, unless you are looking for a further 
	way to be unceremoniously kicked out.</para>

	<para>Don't be in hacker/cracker/phreaker/warezer channels whilst in a
	#linux channel.  For some reason the people in charge of #linux 
	channels seem to hate people who like causing destruction to people's machines
	or who like to steal software.  Can't imagine why.</para>
</sect2>

<sect2 id="round-up">
<title>Round Up</title>
	<para>Apologies if that seems like a lot of DON'Ts, and very few DOs. 
	 The DOs were already pretty much covered in the section on newsgroups and
	mailing lists.</para>

	<para>Probably the best thing you can do is to go into a #linux 
	channel, sit there and watch, getting the feel for a half hour before
	you say anything.  This can help you to recognize the correct tone you
	should be using.</para>
</sect2>

<sect2 id="further-reading">
<title>Further Reading</title>
	<para>There are excellent FAQs about how to get the most of IRC #linux
	channels.  Most #linux channels have an FAQ and/or set or channel 
	rules. How to find this will usually be in the channel topic (which you can 
	see at any time using the <command>/topic</command> command.  Make sure 
	you read the rules if there are any and follow them.  One fairly generic 
	set of rules and advice is the ``Undernet #linux FAQ'' which can be found 
	at <ulink url="http://linuxfaq.quartz.net.nz">http://linuxfaq.quartz.net.nz
	</ulink>.</para>
</sect2>
</sect1>
</chapter>
