Book Review: The DOSSIER Series

Linh Pham [question-articles@closedsrc.org]

This article originally appeared in the March 2002 issue of the Dæmon News Online Magazine. This is a cleaned-up version of the article with minor style edits and made it HTML5 compliant; else, the content has not been changed.

Titles: File Systems: FreeBSD, Text Processing: Essential Tools, Python: Library Reference, PostgreSQL: Use and Administration
Editor: Rich Morin
Publisher:Prime Time Freeware

In this month's article, I will be reviewing four volumes from Prime Time Freeware's DOSSIER series of document collections: "File Systems: FreeBSD", "Text Processing: Essential Tools", "Python: Language Reference", and "PostgreSQL: Use and Administration". Since the four document collection volumes are compiled from other document sources (the content and information in each volume is identical to the original source), I will be reviewing the presentation, the formatting and the value-added features of each of the volumes.

If you would like to learn more about the DOSSIER series, you can read the first of two articles written by Rich Morin, the founder of and editor for Prime Time Freeware, here.

The first two document collection volumes listed above were originally called "File Systems: FreeBSD Manual Pages" and "Text: Manual Pages". The title changes were made to clarify the topics covered in the respective volumes and to make some of the titles less verbose.

Also, I will be following Rich Morin's model of describing the "books" as volumes.

File Systems: FreeBSD

This volume consists of manual pages provided in FreeBSD 4.4 that pertain to files, the file system, tools to maintain different file systems (like VFAT and NFS), as well as the manual pages that are useful for developers and kernel hackers. The volume starts off with a complete table of contents, listing each manual page that is covered. Right after the table of contents is a "permuted index" of the manual pages (which resembles an apropos output) that is alphabetically sorted by keywords in the manual pages' descriptions. Providing the permuted index up front, this can reduce the time to find the correct manual page based on what topic the reader is looking for. The Preface provides information about both DOSSIER and the Meta Project and how the volume is laid out.

The manual page section of the volume is broken out into logical manual page sections (in numerical order), and each section starts off with the section's intro manual page. The rest of the pages are sorted alphabetically. The only section that is not included in the volume is section 6, since there aren't any games that relate to the file system. The outer edge of each page is marked to correspond with its section, providing a fairly quick way to hunt down a particular man page when the reader already knows the section number.

Each manual page is presented in its entirety and has been formatted to fit to the page rather than left in the usual 80-column formatting. Also, each manual page is given its own page (or pages if necessary) rather than having several short manual pages squeezed into one page. The font types, styles and sizes are done so that the formatting is consistent and can be easily read in most reading light conditions.

One thing about the volume is that it does not include a normal index (where each manual page is listed in alphabetical order along with the corresponding page number) at the end of the volume. Such an index is not really needed since the volume already has a complete table of contents and the permuted index; also because each section is sorted in numerical order, and the manual pages within each section are then sorted alphabetically. Having a normal index would have been nice with its additional convenience, but it would be somewhat redundant as well as add more weight to the volume.

Overall, the volume was produced very well and without any formatting glitches or problems. The volume's size and weight is about the same as O'Reilly's DNS and BIND Fourth Edition, which is about perfect to me. I'm happy if I can carry two books and my laptop with me in my laptop bag without killing my shoulders.

Text Processing: Essential Tools

This volume is a collection of manual pages from common text processing, formatting and printing tools available for almost all Unix-based operating systems. The manual pages are pulled from primarily Red Hat Linux 7.1 and some are taken from FreeBSD 4.4, but most of the options and information provided should be useful under almost any Unix environment.

The layout and formatting of this volume is the same as the "File Systems: FreeBSD" volume, so I won't bore you with the information again. About two-thirds of the manual pages in this volume come from section 1 of the manual pages, whereas sections 2 through 4 are non-existent (since text processing isn't directly related to system calls, C libraries or devices). Since the volume only covers the manual pages for the included tools, you won't see any in-depth coverage on complex tools like awk/gawk, sed or troff. Each of those tools can and do take up an entire book/volume just to go over how to exploit the strengths of such complex tools.

I did notice one little problem in the volume, pertaining to the original source of the manual page. The problem occurs on page 261 and the manual page is printcap(5); where the original source of the manual page is stated to be "FreeBSD File Formats Manual", but the source printed in the bottom-right corner of the page states that it comes from Red Hat Linux's manual page. I didn't have the time to go through each of the manual pages to see if this problem occurred elsewhere in the volume.

Like the "File Systems: FreeBSD" volume, the "Text Processing: Essential Tools" volume does not have a normal index at the end of the volume. Other than the little problem of the two sources not quite matching up for one or more manual pages, the volume would be a nice reference point overall for those who work with formatting and printing tools. The volume is about the same size as the "File Systems: FreeBSD" volume, so there shouldn't be a problem with it breaking your back or shoulder and it doesn't eat up a lot of shelf space.

Python: Library Reference

Although Python isn't directly related to BSD - other than it can run on almost any machine running FreeBSD, NetBSD, OpenBSD, Darwin, or Mac OS X - I chose to cover the volume since it isn't a collection of manual pages; rather, it is a printed version of the Python 2.1 Library Reference (available in HTML and PDF format). The volume closely resembles the PDF version of the Library Reference, but there are some notable differences, which I cover a little later on.

The volume starts off with a simple table of contents that has only the chapters listed (none of the subsections of each chapter is listed, which may not seem as bad since the items covered are modules available in Python). Jumping ahead a little, there is a full module index and a complete keyword index in the back of the book.

Looking at the actual Library Reference portion of the volume, almost all of the formatting found in the PDF version is replicated to the volume, including the page numbers within the original document. Now there are two things that do get a little messy here: the first quirk is that there are two page numbers that are printed in the bottom corner of each page; the top page number correlates to the "original" PDF page number and the bottom page number correlates to the volume's actual page number. The second quirk is due to the fact that the PDF version of the reference was formatted for US Letter (or A4) paper size and the volume is smaller than both paper sizes. This causes the page numbers in the printed volume to get out of sync with the PDF version. Therefore, the reader may have a hard time finding a specific module or topic in the printed volume when using a page number from the PDF version. On that note, the page numbers that both indexes in the back of the book reference are the "original" page number and not the volume's actual page number.

As a Python programmer, I use the Python Library Reference quite a bit since I don't always remember which function is available in which module and the nuances particular to each module. Since I do reference the document quite a bit, I find that I am fonder of the way the HTML version works (each module and class are split into individual pages), rather than the continuous formatting that the PDF version uses. My guess is that the continuous format used in the PDF version was made to reduce the number of pages required to present the same amount of data and that it does provide a little better flow when being read in a book. It's more of a style and preference bit, so I won't hold it against the publisher.

Overall, the content is easy to read and it does keep almost all of the original PDF formatting, though the out of sync page numbers could cause some confusion at first.

PostgreSQL: Use and Administration

Like Python, PostgreSQL isn't directly related to the BSD operating systems (though it does have closer ties since the Postgres database, which PostgreSQL derived from, was developed at the University of California, Berkeley) but it is one of more powerful (and well-endowed) relational database systems available for BSD and many other Unix-based operating systems. The other reason why I chose to write about "PostgreSQL: Use and Administration" is that, like "Python: Library Reference", it is a print version of the documentation that is available in a print-friendly (PostScript) format. The volume actually consists of three documents from the PostgreSQL 7.1 Combined documentation suite: the Tutorial, the User's Guide, and the Administrator's Guide. The remaining documents in the suite are also available as separate volumes.

The volume starts off with the table of contents, which lists the chapters for all three documents, with page numbers that match the volume's main page numbers. Like "Python: Library Reference", the volume has two sets of page numbers: one that corresponds to the original document's page number and the other being the volume's page numbers. Thankfully, none of the document's page numbers get out of sync when compared to the PDF or Postscript version. All of the formatting from the original PostScript version is replicated over to the printed volume (the font size, margins and spacings are slightly adjusted, so that the content would fit into the volume without changing the pagination). Also, at the beginning of each document, a complete table of contents is provided, but no index (just like in the PDF version).

This particular volume provides the best documents from the suite for anyone who wants to learn about PostgreSQL or as a reference point for those who administer PostgreSQL databases and servers. The volume is the smallest of the four reviewed in this article, which makes it a great candidate to carry along and read out in the park or in a tiny and cramped server room.

Final Thoughts

It is really nice to see that "dead-tree" versions of some of the key documents and resources are now available for purchase and are published in really nice quality. I think printed and bounded documentation provides a great complement to the online versions, since many people would rather spend some money to save their eyes. By purchasing a book or volume, the reader is also buying the convenience of being able to quickly flip through a book or even learn something new by just opening the book/volume to a random page. Most of the nitpicks that I mentioned are fairly minor (some require a little time to get used to) and could be fixed in the next edition(s) of the respective volumes.

The four volumes (and the rest of the DOSSIER document collections) can be purchased through BSD Mall for $35.00 (USD) each.


Article copyright © 2000–2010 Linh Pham. All rights reserved. Re-production of portions of this work, or its entirety, requires permission of the copyright holder.