I created this course originally to be what its name suggests, a tutorial on a rather large collection of UNIX Tools, ranging from text tools such as sed, awk, and grep, to shell scripting and a smattering of Perl, to an overview of the UNIX environment and its structure. The course was based on a similar course taught by Matthew Smosna, a dear friend who taught it at NYU as well as other universities in the New York region, who passed away in 1997. The course in its original form met its demise by about the year 2001 and was reborn, phoenix-like, as a course in systems programming in UNIX.
In its present form, it retains a short course on Perl to satisfy the cravings of students who want to learn Perl but have not taken the initiative to learn it on their own. However, it is mostly a course in applications development in UNIX, covering all of the basic parts of the kernel interface and libraries, including files, processes, terminal control, signals, and threading. It requires writing many programs, culminating in a simple game using the Ncurses library. Unlike CSci 132, this course requires that the student has had a course in operating systems and at least two semesters of C or C++ programming.