more work, as all the papers are read twice, but the second, final grading pass goes very quickly. Also, I need to be very careful to leave time in my schedule so that I can return their drafts on time. I now use this second method exclusively.
I think it is important to offer revision opportunities, but be very careful how you handle this, or your workload will become unmanageable.
There are two very good reasons to use writing in computer science: our students need to be able to write well to succeed, and writing can help them learn. I shared some of the kinds of writing assignments I have used, both formal and informal. I focused on upper-division courses, but the ideas apply to any course, including courses in other disciplines. I then discussed my approach to grading written work, and the use of peer review and revision opportunities.
It is possible, with some work, to incorporate writing in computer science courses in a way that is natural. I recall one day immediately after operating systems class, two students approached me as I was eras-ing the chalkboard. It was about two-thirds of the way through the fall semester of 1996. With a smile, one of the students said to me “I had forgotten this was a writing-intensive course.” The other student nodded her head in agreement. Writing does not have to seem like an “add on” to the course, but can be an integral and important part of it.
I consider this article a success if you are interested in using writing in your next course, and you found something useful in what I had to say.