2010-10-05

Minor website changes

I've made a few minor changes to the site, including a new code distribution that contains a fix for a bug in one of the example programs. (One of the silver linings to the publishing delay is that the fix will also be in the paper copy.)

2010-10-03

Revised publication date

Enough copies in the initial print run had problems that the publisher and printer have together decised to redo the print run. The target "bound book" date is currently 19 October, and the book should be shipping a week after that. There may still be some movement on those dates; if so, I'll post here.

In the meantime, No Starch Press have sent out a press release for the book, which you can read here (also kindly reproduced by the folks at LWN.net).

2010-09-23

Almost...

It's not over until it's over...

It seems that there are some printing issues in some copies of the book. The folk at No Starch already spotted them last week, before any copies shipped and they're working with the printer to get the issues sorted out. (The one copy that I have received was pretty much fine, so I don't have first-hand knowledge of the problem.)

Practically, this means there will be some delay before the book starts shipping. When I know more about the expected time of shipping, I'll post it here.

2010-09-15

Web site changes, new chapters online

I've made a few small changes to the book web site. The most notable change is that two more sample chapters are now available:
  • Chapter 24: Process Creation
  • Chapter 52: POSIX Message Queues
Other than that, there have been a few small changes to the source code to handle feature test macro changes in the header files in glibc 2.12 and to fix one or two warnings that occurred when the code was compiled with _XOPEN_SOURCE defined as 700.

Printed!

Printing of the book was completed over the weekend. I expect to be holding a copy real soon now...

2010-09-12

I'll be at Linux Kongress with TLPI

I'll be at the upcoming Linux Kongress, 23-24 September, in Nuremberg, Germany. All going well, I'll be there with copies of The Linux Programming Interface, which I should receive in the coming week. Get in touch with me at mtk-AT-man7.org, if you'll be at the conference and would like to see a copy of the book.

2010-09-03

More web site changes

I've made a number of changes to the book web site:
  • The Source Code FAQ now contains questions that you may run into when compiling the example programs. Thanks once again to Jens Thoms Toerring for his help.
  • I've made some small changes to the distribution version of the source code
  • The bibliography of the book is now available as a downloadable PDF.
  • I've added a short about the author page.

2010-08-30

More web site revisions

I've made some more revisions to the book web site. The changes include include:

2010-08-26

Returning to normal life

Now that production of the book is done, life has started returning somewhat more to normal. For the first time in well over a year, I found time to read someone else's book: Antony Beevor's excellent D-Day: The Battle for Normandy. Another reminder that the USA once helped save Europe from itself seems timely.

2010-08-20

Source code tarball now available

I've made some more revisions to the web site of my book. The most notable change is that you can now download the source code for the sample programs. (It's also possible to browse individual program files online here.)

The source code tarball is provided in two versions:
  • Distribution version: a version of the source code that includes extra material not shown in the book. Probably, this is the version of the code that you want.
  • Book version: the source code as it appears in the book.
The web site explains why there are two versions.

I'd like to hear of any problems that you encounter building (either version of) the code on various Linux systems, especially older distributions. I'll use feedback to build out the source code FAQ.

2010-08-15

Standards and Portability in TLPI

As Linux becomes more and more prevalent, many programmers are targeting just one system: Linux. For these programmers, The Linux Programming Interface is ideal.

However, all the world is not Linux, and many of the most interesting UNIX applications need to be truly portable across systems: Linux, the BSDs, Solaris, HP-UX, AIX, and so on. For these applications, following portable programming practices and adhering to formal standards such as POSIX and the Single UNIX Specification are important.

Although I've focused on Linux in the book, I've also given close attention to formal and implementation standards, and clearly distinguished details that are Linux-specific from the features that are common across most or all UNIX implementations. This means that TLPI will be useful to programmers working on any UNIX system (but it won't provide you with too many of the nonstandard and system-specific details of those other systems). That's why we subtitled the book A Linux and UNIX System Programming Handbook.

A few statistics illustrate TLPI's emphasis on standards and portability. Of the just over half a million words in the book, here are a few word counts:

POSIX, 714
SUSv3/SUSv4, 730
standard(s)/nonstandard/standardized, 685
portable/nonportable/portability/portably, 231
UNIX, 1039
BSD, 254
System V (excluding discussion of System V IPC), 108