[comp.sys.next] The Joke known as the NeXT Bible

jacob@gore.com (Jacob Gore) (12/23/90)

/ comp.sys.next / portnoy@athena.mit.edu (Stephen L. Peters) / Dec 18, 1990 /
> People talk about inaccuracies in the text, but I'd like to hear about
> what others felt was really inaccurate in the book.

Here is something I recently wrote up in response to a similar inquiry:

 Just picking the marked pages at random:

 P.48.  He does 'cat /etc/utmp' and analyzes it.  /etc/utmp is a binary
 file.  The "$" he finds there has nothing to do with shell variables, it's
 part of the "time on" long integer.  He'd have known that if he read the
 manual page for utmp.

 P.49, while I'm there.  'dirs' is not at all the same as 'pwd'.  Again, see
 man pages.

 P.457.  'chfn' changes user's full name registration, not the password.
 It's for users, not just system administrators (the latter can simply
 change things in /etc/passwd or Netinfo or Yellow Pages, whichever is in
 use, but the user needs the special commands).

 P.480.  'hostname' does not "display the contents of the hostname
 variable", because there is no "hostname variable".

 P.523.  'who' and 'whoami' are not versions of the same command.

 P.182.  'lpr' command works on Postscript, not only on text.  Depending on
 the setup, it can work on many other formats, TeX and troff output are
 commonly done.

 P.183.  "Nobody's ever figured out a reason for 300 dpi (other than saving
 printer toner, maybe)".  The reason for 300 dpi is to print images that
 scale to 300 dpi better than to 400 (for example, pictures scanned at 300
 dpi, or bitmap fonts generated for 300 dpi printers).

 P.123.  "The Change Disk Name is ONLY used for optical disks.  Hard disks,
 because of UNIX conventions, don't have names."  Disk name has nothing to
 do with optical or hard disks, or with root directories.  Every disk on the
 NeXT has a name, and every disk has at least one root directory (one per
 partition).  Only one partition can be mounted so that its root directory
 is the root directory of the whole file system ("/").  The rest are mounted
 as subdirectories of any partition that is already mounted.

 P.57.  "Another UNIX daemon is 'lpr', for Line PRinter".  'lpd' is the
 daemon; 'lpr' is a client of 'lpd'.

 P.50.  "Other commands must have arguments.  If you omit a needed argument,
 the shell will prompt you."  The shell in Unix has no way of knowing what
 arguments a command needs.  Very few unix commands prompt users for missing
 arguments.

 P.16.  "cat | sort somewords" kind of works, by coincidence.  The proper
 command is "cat somewords | sort" or, better, "sort < somewords" or, in the
 case of 'sort', just "sort somewords".

 P.523.  'wall' writes to all users on the machine, not on the network.

 P.300.  "Other views that you create in windows are subclasses of
 contentView."  They are SUBVIEWS of contentview.

 P.285.  "if [myCell isHighlighted]" is not valid Objective-C syntax.

 P.224.  UUCP commands have nothing to do with Internet.  They can be made
 to work over IP, but that requires administrator interference on both ends
 of the link.

 -.  "." and "@" are NOT interchangable in internet addresses.

 -.  "68xxx" is not a valid subdomain.

 There are many more.

> I can't read the
> review referenced in one of the Buzzings, because I don't have a NeXT
> (yet).

Sorry, I should have thought of that.  I'll submit a Postscript version to
the archives.

> On another note, does anyone know of _good_ descriptions of the
> Objective-C language.

Hard to say...  Brad Cox's "Object-Oriented Programming: An Evolutionary
Approach" is pretty good, but it describes an earlier version of
Objective-C than the one used on the NeXT.  An updated edition of that book
is in the works, but I don't know when it'll be available.  In the
meantime, the documentation NeXT ships may suffice for you, or you could
try ordering Stepstone's latest manuals (I haven't seen them).

Jacob
--
Jacob Gore		Jacob@Gore.Com			boulder!gore!jacob