Advanced Programming in the Unix Environment

Stevens adds three chapters giving more concrete examples of Unix programming: he implements a database library, communicates with a PostScript printer, and with a modem.

With the increasing popularity and technical diversification of Unix derivatives, and largely compatible systems like the Linux environment, the code and coverage of Stevens's original became increasingly outdated.

Working with Stevens's unfinished notes, Stephen A. Rago completed a second edition which Addison-Wesley published in 2005.

The second edition features a foreword by Dennis Ritchie and a Unix-themed Dilbert strip by Scott Adams.

[1] OSNews describes it as "one of the best tech books ever published" in a review of the second edition.