I would like to expand my knowledge in C++, so the first thing I'm taking on is network programming.
I want to make an IRC bot (which hopefully will teach me about socket programming and networking topics), but I have no idea where to start. If anyone could explain to me how IRC bots work and how to make them, and direct me to some learning resources, that would be really great. Simple snippets as well would be awesome...
edit:
forgot to mention that I use ubuntu, so the windows way is not an option
To understand sockets and use them right, you need The Sockets Bible:
W. Richard Stevens, Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition)
You absolutely must have this book before you sit down to write a line of sockets code. Don't leave home without it. Really. Starting around $35 used at Amazon.
EDIT: The OP asked about other volumes. Here are two others:
W. Richard Stevens,
UNIX Network Programming, Volume 2:
Interprocess Communications (2nd
Edition)
W. Richard Stevens,
TCP/IP Illustrated, Vol. 1: The
Protocols
They are of Stevens's usual and expected superb quality. I don't know what his plans were for integrating all these books,