Harley Hahn
Home Page


Home Page
& Overview

Summary of
Book Contents

Detailed Table
of Contents

The Unix Model
Curriculum &
Course Outlines

Unix Timeline
for Students


Errors and Corrections

Exercises and Answers
  1  2  3  4
  5  6  7  8
  9 10 11 12
 13 14 15 16
 17 18 19 20
 21 22 23 24
 25 26

PowerPoint Files

The Unix Model Curriculum

The Unix Model Curriculum is a detailed plan for teaching all the important concepts necessary for an introductory course in Unix and Linux. The goal of the Unix Model Curriculum is to help instructors decide which topics to teach and the order in which to teach them.

I developed the Unix Model Curriculum over the course of three years, while working on the textbook Harley Hahn's Guide to Unix and Linux (published by McGraw-Hill Higher Education).

The Unix Model Curriculum consists of 26 sections, each of which represents a major area of study. The philosophical basis underlying the design of the curriculum is explained in the following two short papers:

Unix as a Part of Computer Science

A Unix-Neutral Approach to Teaching

As with any well-developed area of computer science, learning Unix demands a great deal from the student. Although the details are not as technically demanding as, say, the study of algorithms or numerical analysis or complexity theory, the truth is, mastering basic Unix and Linux requires an immense amount of knowledge and a wide variety of skills. For this reason, the Unix Model Curriculum is necessarily large.

The textbook was designed so that it follows the Unix Model Curriculum more or less exactly (which is one reason the book is so large). In principle, a motivated student who wishes to master the entire curriculum can do so by reading the text from beginning to end, working with the many examples, and doing the exercises. In practice, however, you will find that Unix Model Curriculum is too large to be taught in its entirety in a single course.

For this reason, I have developed a set of course outlines suitable for teaching basic Unix/Linux as either a one-semester or one-quarter course (see below). The outlines are based on the Unix Model Curriculum and the text, and have been carefully developed to condense the material in such a way that it can be taught as a single course, either for a semester or a quarter.

Jump to the course outlines

Since the textbook covers the entire curriculum, once the course is over, a motivated student can use the book to fill in the gaps by teaching him- or herself the material that was not covered in class. In this way, the book becomes a useful reference for years to come, particularly for students who become Unix programmers or system administrators.

The Unix Model Curriculum

As mentioned above, the Unix Model Curriculum consists of 26 sections, which are listed below. Each of these sections is described by a detailed set of teaching objectives.

To display the details of the Unix Model Curriculum, use the link below. To jump directly to a particular section, click on its name.

Display the Unix Model Curriculum

Section 1   Preparing to Study Unix
Section 2   What Is Unix? What is Linux?
Section 3   The Unix Connection
Section 4   Starting to Use Unix
Section 5   GUIs (Graphical User Interfaces)
Section 6   The Unix Work Environment
Section 7   Using the Keyboard With Unix
Section 8   Programs the Student Can Use Right Away
Section 9   Documentation: Unix Manual, Info System
Section 10   Command Syntax
Section 11   The Shell
Section 12   Using the Shell: Variables and Options
Section 13   Using the Shell: Commands and Customization
Section 14   Using the Shell: Initialization Files
Section 15   Standard I/O, Redirection, Pipes
Section 16   Filters: Introduction and Basic Operations
Section 17   Filters: Comparing and Extracting
Section 18   Filters: Counting and Formatting
Section 19   Filters: Selecting, Sorting, Combining, Changing
Section 20   Regular Expressions
Section 21   Displaying Files
Section 22   The vi Text Editor
Section 23   The Unix Filesystem
Section 24   Working With Directories
Section 25   Working With Files
Section 26   Processes, Job Control
Course Outlines

As an resource for teachers, here are links to two different course outlines: one for a semester-length course, the other for a quarter-length course.

The goal of the outlines is to condense the material in the Unix Model Curriculum so as to teach most of what the student needs to know in a single course. The semester outline, of course, covers more material than the quarter outline. Still, either course should be sufficient to introduce a beginning student to Unix and Linux in such a way as to leave him with enough knowledge and skill to carry on by himself.

Outline for semester-length course

Outline for quarter-length course

Jump to top of page