CPSC 101 (CS-1)
Course overview and objectives -
This is the first course offered to incoming computing majors at Clemson University. It presumes no prior knowledge in programming. Instruction is delivered in three lecture hours and one two-hour closed lab per week. At the conclusion of the course the successful student should be able to understand and employ the following concepts.
Introductory computer organization (a machine model)
Positional number systems
Internal representation of integer, floating point and character data
Declarations in the C language
Formatted input and output
Counting, accumulating, and searching
Arithmetic, logical, and bit operations
Arrays of numeric and character data
Functions and parameter passing
Block input and output of binary data
Structured data types
Use of pointers
Course notes -
Lecture notes for the course may be found here.
Closed lab materials and assignments -
The lab assignments used in the last offering of the course may be found here.
Other assignments -
In addition to work in the closed lab, students are expected to independently complete a collection of assignments. The Codelab system from TuringsCraft is used for building basic skills in the first half of the course. In the second half of the course the students complete a major project in which a system for performing transformations on two-dimensional color images is constructed.
The assignments used in the last offering of the course may be found here. In this collection, files whose names begin cl_ are codelab assignments. Those beginning with mp are project milestones and the final project assignment is proj.f08.txt.
An important aspect of the Τέχνη approach is the use of open ended assignments. The final project consists of a collection of optional components. These components encompass a significant range of difficulty and are presented in class in order of increasing difficulty. The average student who seeks to earn a C in the course is presented a path to doing that is not unduly challenging. However, the top students competing to earn A's are challenged to the fullest.
Mirror image
Gray scale conversion
Fading a color image
Monochrome conversion
Resize
Adjust brightness
Apply convolution smoothing filter
X-Y Sobel filter on a color image
Add text caption to image in specified location
Create blended composite with blue-screen image
Transfer color scheme from one image to another
Detailed requirements for each image transformation can be found here. Some student created images from the last offering course may be found here .
Assessment -
Assessment of student work -
Components of student work are weighted according to the following grading regime:
Final Exam 15% Mid-Term exam 15% Milestones and Projects 25% Codelab 15% Daily quizzes(n) 20% Lab Grade 10%
Daily quizzes -
A short objective quiz is given at the end of every class. This quiz covers material from the previous class. Student feedback has been very positive over many years regarding the beneficial nature of this practice. Quizzes may be found here.
Assessing the effectiveness of the Τέχνη approach -
In the fall semester of 2008, a common set of exam questions were used in as an embedded assessment mechanism comparing the Τέχνη class at Clemson University with an objects-early Java based CS-1 class at Western Carolina University. The common questions may be found here. A common attitudinal survey found here was also given. Analysis of the results obtained with these instruments of these instruments is found here.