Due 5:00 pm, Sunday, April 20 (initial version
due; note: no late submission)
5:00 pm, Monday, April
28 (final version due)
File to submit: essay.doc or essay.pdf
So far, we have focused on computer science ideas and programming
techniques. However, we have not focused on how to effectively describe those ideas in
writing. Therefore, your next homework is a writing assignment. Why are
we asking you to write in a programming course?
Your assignment is to write an essay that gives advice about programming in the Java language. Your advice should be based on some programming pattern, concept, idea, or technique that we have discussed in class. There are no fixed guidelines about the format of your essay, but it should contain the following components. It should:
An example of the sort of essay that we are looking for is an
excerpt from the book Effective Java
by Joshua Bloch, "Item
9: Always
Override toString." You can think of your assignment as to
write
a section
of this book.
Submit an essay that contains at most 1,000 words (this length
works out to 3-5 pages at 250 words/page). There is no minimum length
requirement; the paper should be exactly as long as it needs to be to
make its point. Shorter is often better. The limit of 1,000 words is a
guideline of
how much detail your paper should contain, and it is not that much at
all. In fact, you may find it difficult to write only 1000 words about your topic.
To do this assignment right, you should first write a draft which may
exceed the 1,000-word limit, and then you should spend time cutting it
down. But that effort
will be worth it: Concise writing is more clear and more powerful than
wordy prose.
Your submission should either be a Microsoft word file (essay.doc)
or a pdf file (essay.pdf) created with some other word processor.
(Note that if you have Word 2007/8, you'll probably have to make sure
that you save the file in "Compatibility Mode" so that it uses the
doc format instead of docx.)
You may not plagiarize.
This means copying any piece of text directly from any other source
(such as Effective Java,
wikipedia, a Java textbook, etc...), including
ideas without attribution, or getting someone else to do the writing
for you. You will get caught, and you will have to face the Office of Student Conduct.
However, you may
research your topic, using any source other than Effective Java, and refer your al
sources in your
essay to substantiate your points and provide credit for ideas. If you
do so, your assignment must include citations for
these sources. (These citations are not included in the word count.) To
format these citations, you must use the style specified by the IEEE
Computer Society, see Section IV D "References" pages 4-5 of Information
for Authors.
You can find resources for researching these ideas at SEAS Library's "CIS120 - Information Resources in Computer Science"
Evaluation
We will grade your essays in two
stages. You will receive feedback on your initial submission during lab
the week of April 21. The writing fellows will be using this checklist to give you suggestions. After
that, you should rewrite your essay based
on that feedback and resubmit it on the last day of classes.