Programming as writing
Christopher J. Van Wyk · ACM SIGCSE Bulletin · 1995
In I993-94, my department revised the first-year curriculum for majors in computer science to include • a o n e -s e m e s t e r course in Pascal, • a one-half-semester (6.5-week) course in C programming, and • a one-half-semester course in data structures.I taught the C programming course in spring, 1995.As I composed the syllabus, I intended to follow my usual practice in early programming courses of requiring two programs per week--one written as a laboratory exercise, the other as homework.During 1994.however, I also had attended some workshops in teaching writing across the curriculum.The idea of a "'writing portfolio" was mentioned frequently.While there are many variations [1], a common theme is to encourage students in English composition courses to submit multiple drafts of assignments, and to designate which version is "final"; the instructor returns comments on the drafts, but assigns a numerical grade only to the final version of the assignment.I wanted to include a "programming portfolio" component in the C course for several reasons:• "Writing is rewriting" is a popular slogan in English composition.Every computer scientist knows that this is highly apposite of programs: there are many reasons to revise a program, and rare indeed is the program with no room for improvement.