Class handouts for J. Dean Brock

This is an index for almost all handouts — syllabuses, homework assignments, exams — for almost all UNCA classes taught by Dean Brock at UNCA since the Fall 1990 semester. In addition a few courses I taught at UNC-Chapel Hill before Fall 1990 are also included here.

I started using the “web” for my class handouts in the Spring 1994 semester. The courses indices for earlier semesters were generated years after those courses were taught. Obviously the handouts for these early courses were not written in HTML. Handouts in my early years at UNCA were usually written in WordPerfect and have been translated into Adobe PDF files. Handouts at my later years at UNC-CH were written in TeX and have also been translated into Adobe PDF. Handouts in my earler years at UNC-CH were written using in nroff and memographed for classroom distribution. The source for these handouts is missing. Finally, a few early handouts were even written in straight text files and memographed for classroom distribution. And, of course, a few handouts have been lost. Also, course materials for some offerings for CSCI 107 a few years ago were stored in moodle and eventually lost after moodle upgrades.

I have tried to keep my links active. However, on some pages, there will be references to projects stored within students’ home pages. Some of these references will be inactive because the students have graduated or re-organized their directories. There also were times in which I “shared” course home pages with an instructor teaching another section of the same course and that instructor has removed the course pages. And finally for a few recent courses, such as CSCI 107; web materials have been kept on Moodle and, consequently, are available only through Moodle login.

Spring 1985

UNC-CH COMP 190
Programming Languages

Spring 1988

UNC-CH COMP 190
Operating Systems

Fall 1988

UNC-CH COMP 243
Distributed Systems

Spring 1989

UNC-CH COMP 190
Operating Systems

Fall 1989

UNC-CH COMP 243
Distributed Systems

Spring 1990

UNC-CH COMP 190
Operating Systems

Fall 1990

UNCA CSCI 201
Introduction to Algorithm Design
UNCA CSCI 252
Programming in C
UNCA CSCI 473
Parallel Processing

Spring 1991

UNCA CSCI 201
Introduction to Algorithm Design
UNCA CSCI 331
Operating Systems I
UNCA CSCI 473
Network Programming

Fall 1991

UNCA CSCI 201
Introduction to Algorithm Design
UNCA CSCI 243
Programming in Pascal
UNCA CSCI 373
Applications of Networking

Spring 1992

UNCA CSCI 201
Introduction to Algorithm Design
UNCA CSCI 331
Operating Systems I
UNCA CSCI 473
Network Programming

Fall 1992

UNCA CSCI 373
Data Communications and Computer Networking
UNCA CSCI 473
Computer System Administration

Spring 1993

UNCA CSCI 254
Introduction to Computer Organization
UNCA CSCI 443
Database Management Systems

Fall 1993

UNCA CSCI 254
Introduction to Computer Organization
UNCA CSCI 373
Computer Networking
UNCA CSCI 431
Programming Languages

Spring 1994

UNCA CSCI 202
Introduction to Data Structures
UNCA CSCI 254
Introduction to Computer Systems
UNCA CSCI 320
Introduction to Computer Organization

Fall 1994

UNCA CSCI 254
Introduction to Computer Systems
UNCA CSCI 273
Introduction to Unix Workstations

Spring 1995

UNCA CSCI 254
Computer Organization
UNCA CSCI 320
Computer Architecture

Fall 1995

UNCA CSCI 254
Computer Organization
UNCA CSCI 363
Computer Networks
UNCA CSCI 373
Graphical User Interfaces

Spring 1996

UNCA CSCI 320
Computer Architecture
UNCA CSCI 373
Concepts in Unix

Fall 1996

UNCA CSCI 171
Software Tools for Engineering
UNCA CSCI 173
Using the Internet

Spring 1997

UNCA CSCI 241
Applications Programming in COBOL
UNCA CSCI 274
Computer Organization with Applications

Fall 1997

UNCA CSCI 107
Using Computers and Networks
UNCA CSCI 363
Computer Networking

Spring 1998

UNCA CSCI 107
Using Computers and Networks
UNCA CSCI 107 lab
Using Computers and Networks
UNCA CSCI 343
Database Management Systems

Fall 1998

UNCA CSCI 107 / MMAS 107
Using Computers and Networks
UNCA CSCI 107 / MMAS 107
Using Computers and Networks lab
UNCA CSCI 201
Introduction to Algorithm Design lab

Spring 1999

UNCA CSCI 107 / MMAS 107
Using Computers and Networks lab
UNCA CSCI 343
Database Management Systems

Fall 1999

UNCA CSCI 363
Computer Networking
UNCA ENGR 273
UNCA Facilitator and lab instructor for NCSU ECE 218
Computer Architecture and Microprocessors

Spring 2000

UNCA CSCI 255
Computer Organization
UNCA ENGR 171
Co-instructor with Dr. Tammy Gammon
Robotics Exploration

Summer 2000

UNCA ENGR 171
Co-instructor with Dr. Tammy Gammon
Robotics Exploration I
UNCA ENGR 271
Co-instructor with Dr. Tammy Gammon
Robotics Exploration II

Fall 2000

UNCA CSCI 255 / UNCA ENGR 274 / NCSU ECE 212
Computer Organization at UNCA
Fundamentals of Logic Design at NCSU
UNCA ENGR 273
UNCA Facilitator and lab instructor for NCSU ECE 218
Computer Architecture and Microprocessors

Spring 2001

UNCA CSCI 255
Computer Organization at UNCA
UNCA ENGR 212
UNCA Facilitator and lab instructor for NCSU ECE 212
Fundamentals of Logic Design

Fall 2001

UNCA ENGR 205
Introduction to Computer Organization
UNCA facilitator and lab instructor for NCSU ECE 206
UNCA CSCI 333
Data Structures
UNCA CSCI 363
Computer Networking

Spring 2002

CSCI 255
Computer Organization
CSCI 311 / ENGR 212
Fundamentals of Logic Design as ENGR 212
Digital Logic Design as CSCI 311

Fall 2002

CSCI 201 labs
Introduction to Algorithm Design labs
CSCI 333
Data Structures
ENGR 205
Introduction to Computer Organization
UNCA facilitator and lab instructor

Spring 2003

CSCI / MMAS 107
Introduction to Computers and Multimedia
CSCI 201 labs
Introduction to Algorithm Design labs
UNCA ENGR 212 / NCSU ECE 212
Introduction to Digital Logic

Fall 2003

CSCI 333
Data Structures
CSCI 363
Computer Networking
ENGR 205
Introduction to Computer Organization
UNCA facilitator and lab instructor

Spring 2004

CSCI 201 labs
Introduction to Algorithm Design labs
UNCA CSCI 311 / UNCA ENGR 212 / NCSU ECE 212
Introduction to Digital Logic

Fall 2004

CSCI 201
Introduction to Algorithm Design
CSCI 201 labs
Introduction to Algorithm Design labs

Spring 2005

CSCI 173
Fluency with Information Technology
CSCI 201 lab
Introduction to Algorithm Design lab
CSCI 331
Operating Systems

Fall 2005

CSCI 431
Programming Languages

Spring 2006

CSCI 107
Introduction to Computers and Multimedia
CSCI 331
Operating Systems

Fall 2006

CSCI 201
Introduction to Algorithm Design
CSCI 201 lab
Introduction to Algorithm Design lab
CSCI 431
Programming Languages

Spring 2007

CSCI 201 labs
Introduction to Algorithm Design
UNCA/NCSU ECE 406
Design of Complete Digital Systems lab

Fall 2007

CSCI 201
Introduction to Algorithm Design
CSCI 201 lab
Introduction to Algorithm Design lab
UNCA/NCSU ECE 109
Introduction to Computer Systems

Spring 2008

CSCI 255
Computer Organization
UNCA/NCSU ECE 109
Introduction to Computer Systems
UNCA/NCSU ECE 209
Computer Systems Programming

Fall 2008

CSCI 201
Introduction to Algorithm Design
CSCI 201 lab
Introduction to Algorithm Design lab
UNCA/NCSU ECE 209
Computer Systems Programming

Spring 2009

CSCI 255
Computer Organization
CSCI 379
Elementary Virtual Worlds
UNCA/NCSU ECE 109
Introduction to Computer Systems

Fall 2009

CSCI 107 lab
Introduction to Computers and Multimedia
CSCI 255
Computer Organization
UNCA/NCSU ECE 209
Computer Systems Programming

Spring 2010

CSCI 201
Introduction to Algorithm Design
CSCI 273
Processing
CSCI 373
Embedded Systems

Fall 2010

CSCI 107 lab
Introduction to Computers and Multimedia
CSCI 255
Computer Organization
ECE 209 / CSCI 373
Computer Systems Programming

Spring 2011

CSCI 107 lab
Introduction to Computers and Multimedia
CSCI 373
Tangible Computer Networking
CSCI 379
Elementary Virtual Worlds

Fall 2011

CSCI 255 labs
Computer Organization
CSCI 373 / EGM 373
Robotics Design / Advanced Mechatronic Design Lab
ECE 209 / CSCI 373
Computer Systems Programming

Spring 2012

CSCI 107
Introduction to Computers and Multimedia
CSCI 202
Introduction to Data Structures
CSCI 242
Programming Visual Applications

Fall 2012

CSCI 107
Introduction to Computers and Multimedia
CSCI 255
Computer Organization
CSCI 373 / EGM 373
Robotics Design / Advanced Mechatronic Design Lab

Spring 2013

CSCI 202
Introduction to Data Structures
CSCI 331
Operating Systems

Fall 2013

CSCI 202
Introduction to Data Structures
CSCI 255
Computer Organization
CSCI 373 / EGM 373
Mechatronics Design

Spring 2014

CSCI 320
Computer Architecture
CSCI 343
Database Management Systems

Fall 2014

CSCI 255
Computer Organization

Spring 2015

CSCI 107
Introduction to Computers and Multimedia
CSCI 372
Computer System Administration
CSCI 373
Computer Networking

Fall 2015

CSCI 107
Introduction to Computers and Multimedia
CSCI 255
Computer Organization

Spring 2016

CSCI 107
Introduction to Computers and Multimedia
CSCI 320
Computer Architecture

Fall 2016

CSCI 178
MEMS to WWW: Exposing the Sensored World
CSCI 255
Computer Organization

Spring 2017

CSCI 255
Computer Organization
CSCI 373.005
System Administration

Fall 2017

CSCI 182
Introduction to Programming: Media Applications
CSCI 235
Computer Systems 1

Spring 2018

CSCI 235
Computer Systems 1
CSCI 373.001
Embedded Systems

Fall 2018

CSCI 235
Computer Systems 1
CSCI 373.001
Operating Systems

Spring 2019

CSCI 235
Computer Systems 1
CSCI 431
Principles of Programming Languages

Fall 2019

CSCI 434
Theory of Computation

Spring 2020

CSCI 182
Introduction to Programming: Media Applications

Note to instructors at other universities

You are welcome to borrow any of my original assignments. I’d apprecate your sending email to me at brock@unca.edu.