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.