Writing in Computer Science
By Dr. David Luginbuhl
- Writing is important in Computer Science no matter what type of writing you are doing.
For example, good writing is critical at all levels of software development. At the
conceptual level, you have to be able to express your ideas to your customers. You
need to be able to justify your approach and design. Also, computer users have to
be able to make use of your program, so you need to be clear in your instructions
for use and maintenance. Finally, your documentation both inside and outside your
program should be easy to understand.
- Several aspects of writing are quite important in my classes. First: Clarity and organization
are vital when you write for a technical field. When you are writing a technical report
on a system you have developed, you have to be able to explain how your system is
different (or better or otherwise important) when compared to other systems available.
You must also explain the significance of what you have accomplished, the details
of your accomplishments, and your future work. (In a field as dynamic as Computer
Science, there are always avenues for improvement.)
- Second: In software development, the ability to summarize your work so that your customer
or audience can follow your logic is important. Also, programs themselves are logically
sequenced to accomplish certain things. If you organize your program poorly, you won’t
get the desired results!
- Third: Mechanics are important as well, particularly when writing a program. For example,
while another person may have no trouble understanding you if you have subject-verb
disagreement, a compiler (which turns a program into executable code) is not so forgiving.
Proper syntax is essential to the creation of a working system.
- When I review a paper by a student, I’m blown away when he goes beyond simply following
the basic instructions of an assignment. I’m impressed when a paper flows well and
has excellent grammar, or when a student demonstrates a deeper understanding of the
material than what I’ve asked for. These students make As.
- Students who make Bs might have written papers with minor grammatical errors and small
structural flaws, but the work is solid overall.
- Students who make Cs obviously have not proofread their papers, and their works may
have moderate flow problems.
- Students who make Ds have more serious problems with their writing. Their papers are
structurally unsound, have serious grammatical and organizational problems, or reveal
a lack of understanding of the material or the assignment.
- The role of writing in my classrooms depends on the course. In more technical classes,
such as our introductory programming courses (CS 150 and 151), writing means programming
and the attendant program documentation. In a course like Logic for Computer Science
(CS 260), writing serves more as a way to reach the answer to a problem (logic proofs,
- In software development courses, I try to establish the importance of clear writing
when dealing with customers. Overall, writing helps me see that students understand
the course material, can integrate sometimes disparate concepts, are able to synthesize
information, and understand the role of precision when expressing ideas.
All careers in Computer Science require writing. The different types of writing your position
might demand is detailed above (program code, documentation, communication with customers,
etc.). You must be able to communicate effectively through writing to succeed in this