|< Day Day Up >|
The last 20 years have introduced us to new ways of communicating with other people. One of the most interactive new communication techniques is keyboard-based chatting, in which the text typed on the keyboard of one person is shown straightaway on the screen of another person, or a group of people, located far away, perhaps on the other side of the world.
Internet Relay Chat (IRC) is an open source distributed chat environment used widely around the Internet. There are thousands of chat programs, and there were at least hundreds of chat programs before IRC saw the first light in August 1988. What made IRC different from these other chat programs? It was and still is the possibility to network individual chat programs (IRC servers) to one another, thus forming a worldwide, distributed, and decentralized chat network.
The ability to network, without maintaining a central location of control, has been the key for success for IRC, WWW, USENET News, and many other systems. Similarly, the inability to distribute control has been the reason for failure for many occasions. Giving out control and empowering others with the power to work, learn, and develop software allows for new innovations. Keeping control to yourself is often much easier to do, but it slows down progress by making it difficult, sometimes impossible, to innovate.
IRC started as one summer trainee's programming exercise. A hack grew into a software development project that hundreds of people participated in and became a worldwide environment where tens of thousands of people now spend time with one another. I have found many of my present friends through IRC and learned a significant part of my present software engineering knowledge while using and working with IRC. That would not have been possible without learning from code examples and hacks from others.
I believe this book presents excellent tools and techniques for both IRC newcomers and old-timers. The hacks will help the readers to dig in the inner workings of IRC, learn from that, and enable them to further develop their own ideas into better software and new hacks for themselves and others.
|< Day Day Up >|