The UNIX-HATERS Handbook

Last updated
The UNIX-HATERS Handbook
UNIX-HATERS Handbook cover ISBN 1-56884-203-1.png
Author Simson Garfinkel, Daniel Weise, Steven Strassmann
Publisher IDG
Publication date
1994
ISBN 1-56884-203-1

The UNIX-HATERS Handbook is a semi-humorous edited compilation of messages to the UNIX-HATERS mailing list. The book was edited by Simson Garfinkel, Daniel Weise and Steven Strassmann and published in 1994.

Contents

Contents

The book concerns the frustrations of users of the Unix operating system. Many users had come from systems that they felt were far more sophisticated in features and usability, and they were frustrated by the perceived "worse is better" design philosophy that they felt Unix and much of its software encapsulated.

The book is based on messages sent to the UNIX-HATERS mailing list between 1988 and 1993, and contains a foreword by the human factors guru Don Norman and an "anti-foreword" by Dennis Ritchie, one of the creators of the operating system.

Many of the book's complaints about the Unix operating system are based on design decisions and anomalies in the command-line interface.

The front-matter page's dedication says: "To Ken and Dennis, without whom this book would not have been possible.", referring to Ken Thompson and Dennis Ritchie, the creators of Unix.

Release

This book was printed as a trade paperback. Its front cover was designed to be similar to The Scream . An air sickness bag, printed with the phrase "UNIX barf bag", was inserted into the inside back cover of every copy by the publisher.

The book was made available to download for free in electronic format in 2003. [1]

Reception

Later reviewers [2] of the book have noted that some issues were resolved in the future, such as the development of the ext2 filesystem addressing the discussed lack of block storage. [3]

Further reading

Related Research Articles

<span class="mw-page-title-main">Brian Kernighan</span> Canadian computer scientist

Brian Wilson Kernighan is a Canadian computer scientist. He worked at Bell Labs and contributed to the development of Unix alongside Unix creators Ken Thompson and Dennis Ritchie. Kernighan's name became widely known through co-authorship of the first book on the C programming language with Dennis Ritchie. Kernighan affirmed that he had no part in the design of the C language.

B is a programming language developed at Bell Labs circa 1969 by Ken Thompson and Dennis Ritchie.

<span class="mw-page-title-main">Dennis Ritchie</span> American computer scientist, co-creator of the Unix operating system

Dennis MacAlistair Ritchie was an American computer scientist. He created the C programming language and, with long-time colleague Ken Thompson, the Unix operating system and B language. Ritchie and Thompson were awarded the Turing Award from the Association for Computing Machinery (ACM) in 1983, the IEEE Richard W. Hamming Medal from the Institute of Electrical and Electronics Engineers (IEEE) in 1990, and the National Medal of Technology from President Bill Clinton in 1999.

ed (software) Line-oriented text editor for Unix

ed is a line editor for Unix and Unix-like operating systems. It was one of the first parts of the Unix operating system that was developed, in August 1969. It remains part of the POSIX and Open Group standards for Unix-based operating systems, alongside the more sophisticated full-screen editor vi.

<i>A Commentary on the UNIX Operating System</i> Book

A Commentary on the Sixth Edition UNIX Operating System by John Lions is a highly influential 1976 publication containing analytical commentary on the source code of the 6th Edition Unix computer operating system "resident nucleus" software, plus copy formatted and indexed by Lions, of said source code obtained from the authors at AT&T Bell Labs.

<span class="mw-page-title-main">Acme (text editor)</span> Text editor designed by Rob Pike

Acme is a text editor and graphical shell from the Plan 9 from Bell Labs operating system, designed and implemented by Rob Pike. It can use the Sam command language. The design of the interface was influenced by Oberon. It is different from other editing environments in that it acts as a 9P server. A distinctive element of the user interface is mouse chording.

Joseph Frank Ossanna, Jr. was an American electrical engineer and computer programmer who worked as a member of the technical staff at the Bell Telephone Laboratories in Murray Hill, New Jersey. He became actively engaged in the software design of Multics, a general-purpose operating system used at Bell.

<span class="mw-page-title-main">Don Norman</span> American researcher, professor, and writer (born 1935)

Donald Arthur Norman is an American researcher, professor, and author. Norman is the director of The Design Lab at University of California, San Diego. He is best known for his books on design, especially The Design of Everyday Things. He is widely regarded for his expertise in the fields of design, usability engineering, and cognitive science, and has shaped the development of the field of cognitive systems engineering. He is a co-founder of the Nielsen Norman Group, along with Jakob Nielsen. He is also an IDEO fellow and a member of the Board of Trustees of IIT Institute of Design in Chicago. He also holds the title of Professor Emeritus of Cognitive Science at the University of California, San Diego. Norman is an active Distinguished Visiting Professor at the Korea Advanced Institute of Science and Technology (KAIST), where he spends two months a year teaching.

<span class="mw-page-title-main">Unix philosophy</span> Software development philosophy

The Unix philosophy, originated by Ken Thompson, is a set of cultural norms and philosophical approaches to minimalist, modular software development. It is based on the experience of leading developers of the Unix operating system. Early Unix developers were important in bringing the concepts of modularity and reusability into software engineering practice, spawning a "software tools" movement. Over time, the leading developers of Unix established a set of cultural norms for developing software; these norms became as important and influential as the technology of Unix itself, and have been termed the "Unix philosophy."

In computing, particularly in the context of the Unix operating system and its workalikes, fork is an operation whereby a process creates a copy of itself. It is an interface which is required for compliance with the POSIX and Single UNIX Specification standards. It is usually implemented as a C standard library wrapper to the fork, clone, or other system calls of the kernel. Fork is the primary method of process creation on Unix-like operating systems.

The Programmer's Workbench (PWB/UNIX) was an early, now discontinued, version of the Unix operating system that had been created in the Bell Labs Computer Science Research Group of AT&T. Its stated goal was to provide a time-sharing working environment for large groups of programmers, writing software for larger batch processing computers.

<span class="mw-page-title-main">History of Unix</span> Operating system

The history of Unix dates back to the mid-1960s, when the Massachusetts Institute of Technology, Bell Labs, and General Electric were jointly developing an experimental time-sharing operating system called Multics for the GE-645 mainframe. Multics introduced many innovations, but also had many problems. Bell Labs, frustrated by the size and complexity of Multics but not its aims, slowly pulled out of the project. Their last researchers to leave Multics – among them Ken Thompson, Dennis Ritchie, Doug McIlroy, and Joe Ossanna – decided to redo the work, but on a much smaller scale.

Research Unix are early versions of the Unix operating system for DEC PDP-7, PDP-11, VAX and Interdata 7/32 and 8/32 computers, developed in the Bell Labs Computing Sciences Research Center (CSRC).

A Unix architecture is a computer operating system system architecture that embodies the Unix philosophy. It may adhere to standards such as the Single UNIX Specification (SUS) or similar POSIX IEEE standard. No single published standard describes all Unix architecture computer operating systems — this is in part a legacy of the Unix wars.

<span class="mw-page-title-main">Software feature</span> Distinguishing characteristic of a program

In software, a feature is an identifiable characteristic of a computer program.

<span class="mw-page-title-main">Unix-like</span> Operating system that behaves similarly to Unix, e.g. Linux

A Unix-like operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-like application is one that behaves like the corresponding Unix command or shell. Although there are general philosophies for Unix design, there is no technical standard defining the term, and opinions can differ about the degree to which a particular operating system or application is Unix-like.

<span class="mw-page-title-main">Unix</span> Family of computer operating systems

Unix is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others.

<span class="mw-page-title-main">Ken Thompson</span> American computer scientist, co-creator of the Unix operating system

Kenneth Lane Thompson is an American pioneer of computer science. Thompson worked at Bell Labs for most of his career where he designed and implemented the original Unix operating system. He also invented the B programming language, the direct predecessor to the C language, and was one of the creators and early developers of the Plan 9 operating system. Since 2006, Thompson has worked at Google, where he co-developed the Go language.

<span class="mw-page-title-main">Unix filesystem</span> Directory structure used by a Unix-like operating system

In Unix and operating systems inspired by it, the file system is considered a central component of the operating system. It was also one of the first parts of the system to be designed and implemented by Ken Thompson in the first experimental version of Unix, dated 1969.

Cognitive engineering is a method of study using cognitive psychology and cognitive neuroscience to design and develop engineering systems to support or improve the cognitive processes of users.

References

  1. "The UNIX-HATERS Handbook". 2004-11-05. Archived from the original on 2021-05-07. Retrieved 2022-05-01.
  2. Proven, Liam. "The war of the workstations". www.theregister.com. Retrieved 2024-02-01.
  3. Kuchling, Andrew (October 1997). "Review: The Unix-Hater's Handbook". Linux Gazette (22). Retrieved 2022-05-01.
  4. Norman, Donald Arthur. "The truth about Unix: The user interface is horrid" (PDF). La Jolla, CA: University of California, San Diego. Retrieved 13 Sep 2024.
  5. Norman, Donald Arthur (November 1981). "(Snippets of) The trouble with UNIX: The user interface is horrid" (PDF). Datamation. Retrieved 13 Sep 2024.
  6. Norman, Donald Arthur (November 1981). "The trouble with UNIX: The user interface is horrid". Datamation. Vol. 27, no. 1. pp. 139–150. S2CID   56564625 . Retrieved 13 Sep 2024.