I love books. But as a developer, there are only a handful that I consider indispensible resources to the craft. Some are the obvious ones, like Brian W. Kernighan and Dennis M. Ritchie's The C Programming Language and Brian W. Kernighan and Robert Pike's The Unix Programming Environment. But for anyone who does any network programming, the true bible is W. Richard Stevens's Unix Network Programming (1990, Prentice Hall PTR, first edition, $79).
This is a somewhat older book, but it still contains a plethora of valuable information. The book begins by describing the standard OSI network model and its seven layers. Although not crucial to the task of creating network client and server implementations, a key understanding of how the layers interact gives developers a good base.
After a brief foray into the Unix model, Stevens describes the concept and role of Interprocess Communication (IPC). In this section, the book's true utility is apparent, because the information that Stevens provides is reinforced with C source code for you to read, understand, appreciate, and test.
How do you use System V semaphores to coordinate and synchronize client server interaction, or pass Unix file descriptors between processes? Stevens provides the necessary code. He moves on to discuss Berkeley sockets, the various library routines, and even complete implementation of some admittedly dated utilities like TFTP and rsh.
Although the utilities may be dated, the concepts and code that comprise them aren't. In fact, they're directly applicable to numerous network projects that developers work on every day. Much of the code and many of the concepts that power the Internet have been directly influenced by this excellent overview. Some of the shared memory aspects of Apache, for example, are pulled directly from the techniques Stevens discusses.
Unix Network Programming is an excellent resource because it provides concrete answers to many questions. Whether you like networking concepts or code, you'll find this book invaluable.
Jim ([email protected]) is best known as one of the core developers of Apache.
Our Wireless Future
In its present state, wireless is a mind-boggling array of hardware, software, network protocols, and competing standards. Trying to understand this dizzying collection of technologies is challenging for even the most technically inclined. In their book, The Intelligent Wireless Web (2001, Addison Wesley Professional, $39.99), H. Peter Alesso and Craig F. Smith sort through the multitude of current technologies, protocols, and standards, in an attempt to predict the future of wireless and how it will integrate with the Web.
In an efficient 271 pages (plus appendices), the authors use real-world examples and intersperse graphics and sidebars to make a potentially inaccessible subject understandable. Though the graphicssimple line drawingscould be more dynamic, they illustrate the authors' points sufficiently.
Alesso and Smith emphasize that we're starting a fundamental shift in which we'll move from a tethered, wired world to a wireless world built on a distributed computing model, one where our computing power will move with us and respond to our needs. Among the improvements will be efficient handheld devices; adaptive computer networks that sense problemslike too much trafficand adapt accordingly; and nomadic software that resides on larger computing systems, handles complex computing operations for the smaller, less powerful handhelds, and uses the Web as an information conduit.
The authors foresee a Web that uses intelligent applications that move data and are embedded in the Web pages themselvesrather than residing on remote servers. They use Project Oxygen at the Massachusetts Institute of Technology (oxygen.lcs.mit.edu) as the basis for much of their discussion. In that project, researchers are developing the technology necessary to build the Web that the authors envision.
Through careful research and broad industry knowledge, Alesso and Smith have built a clear interpretation of the future of the wireless Web. I highly recommend this book to anyone who needs to understand the wireless industry and where it's heading.
Ron ([email protected]) is a freelance technology journalist.


