perl-begin / src / irc / index.html.wml

#include '../template.wml'

<latemp_subject "IRC Channels for Perl Q&amp;A" />

<h2>What is the IRC?</h2>

<p>
IRC stands for Internet Relay Chat, and it is a distributed, real-time form
of communication, that was common from relatively early in the history of
the Internet and is still very popular. IRC servers form networks of servers
- each network is separated from the other networks and the servers of each
network share the same chat-rooms, user profiles and messages. Each network
has different rules and conventions and a different culture. This allows 
chat-rooms (called channels in IRC-jargon) with the same name to exist in 
different networks.
</p>

<p>
Some popular IRC clients include the cross-platform 
<a href="http://www.mozilla.org/projects/rt-messaging/chatzilla/">Chatzilla</a> 
(which is part of <a href="http://www.mozilla.org/">the Mozilla project</a>), 
the Windows-based <a href="http://www.mirc.com/">mIRC</a> and 
<a href="http://www.xchat.org/">XChat</a>, a cross-platform IRC client for all 
UNIX  systems including Linux and Mac OS X, and with a 
<a href="http://www.silverex.org/news/">port for Windows</a>. By 
downloading one, you can log in to an IRC network and start chatting. 
</p>

<p>
IRC is a great way to get answers to questions quickly and easily. Just note 
that the channel <tt>#perl</tt> on some of the networks is not dedicated for
newbie questions, and you should use a different channel instead. Consult this
page for more details.
</p>

<define-tag irc_channel whitespace="delete">
<preserve net chan />
<set-var %attributes />
<:{
    my $net = "<get-var net />";
    my $chan = "<get-var chan />";
    my %servers =
    (
        'freenode' => "irc.freenode.net",
        'efnet' => "irc.Prison.NET",
        'oftc' => "irc.oftc.net",
        'undernet' => "us.undernet.org",
        'ircnet' => "ircnet.demon.co.uk",
    );
    if (!exists($servers{$net}))
    {
        die "Unknown network!";
    }
    print "<a href=\"irc://" . $servers{$net} . "/%23$chan\"><tt>#$chan</tt></a>";
}:>
<restore net chan />
</define-tag>

<h2><a href="http://freenode.net/">FreeNode</a></h2>

<p>
This is most probably the best network for getting help in Perl and
technical matters in general.
</p>

<p>
Check the channels <irc_channel chan="perl" net="freenode" />,
<irc_channel chan="mandrake" net="freenode" /> and
<irc_channel chan="modperl" net="freenode" />.
</p>

<h2><a href="http://www.efnet.org/">EF-Net</a></h2>

<p>
Check the channels <irc_channel chan="perlhelp" net="efnet" />
(but not <tt>#perl</tt> which is intended for advanced discussion), and
<irc_channel chan="html" net="efnet" /> (for issues related to Perl and
the web).
</p>

<h2><a href="http://www.ircnet.org/">IRCnet</a></h2>

<p>
Try the channel <irc_channel net="ircnet" chan="perl" />.
</p>

<h2><a href="http://www.oftc.net/">OFTC</a></h2>

<p>
The channel <irc_channel net="oftc" chan="perl" /> accepts beginner questions.
</p>

<h2><a href="http://www.undernet.org/">Undernet</a></h2>

<p>
Check the channels <irc_channel net="undernet" chan="perl" />
(but not for CGI questions), and <irc_channel net="undernet" chan="cgi" />.
</p>

<h2>TODO</h2>

<p>
Add DAL-net and other networks that are fit for the purpose.
</p>
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.