Not logged in. Login

Assignment 1 — Writing an Explanation (Rough draft)

Write a single document containing three separate explanations using a total of up to six double-spaced pages. (The page count does not include any of the following: reference list, diagrams, figures, or screen shots.) Submit the document in a single pdf file with the name "first-rough.pdf" via the Course Management System by midnight (end of day) Monday, January 21st. You will also need to submit the same file to turniitin.com. The procedure for doing that will be sent in a separate email soon.

The rhetorical situation for your document:

  • The subject is any topic you select from computing science. Your goal is to inform your audience, so the subject is your primary focus.
  • Your audience is students who have taken fewer computing courses than you. They can understand technical concepts and have an interest in topics in computing, but do not know your topic. Socially, they are a peer. You may hope they like and respect you, but they have no authority to grant or deny anything you need. Persuasion is your secondary focus: You need to persuade them that your description is interesting enough that they will want to read it.
  • Assume that the context is formal—perhaps this is to be used as a tutorial for future courses. As such, you should not assume that you personally know the audience members, nor should you introduce much about yourself. You may say a few things about yourself if you think they help establish credibility for you to talk about this subject.

For the subject, choose a difficult topic from another computer science class you are taking or have taken, or an intriguing computing topic you've encountered out of class, and explain it to another computer science student who has not yet studied it. For example, you might choose “greedy algorithms” from CMPT 307 or "choosing a task for a usability test" from CMPT 363. You may assume that the reader has all the prerequisites needed to understand the topic.

You will get the most benefit from this assignment if you pick a topic that you don't feel you quite understand. Explaining an issue to someone else is an excellent way to clarify your own understanding.

If the main topic is difficult, you may want to work up to it in stages. For example, to introduce red-black trees to a student who has only taken CMPT 125, you might want to start with basic binary trees and then describe red-black trees in terms of the simpler binary tree.

Other main topics may be simple to explain but their implications may be difficult to see. In such cases, you may want to use several analogies or examples to get your point across. Consider explaining the implications of Web social networking features. The concept is simple enough, and your readers will have had direct experience with the technology. But presenting several distinct examples can show the diversity of implications, including some they may not have considered.

A third kind of explanation requires stepwise introduction of concepts. If you wanted to describe the Python Django framework, you'd need to introduce the concepts of application framework, data model, variable interpolation, admin interfaces, and other items. You might begin with only the essential concepts necessary to define the basic system, than introduce optional concepts after the basic structure has been explained.

The assignment is to write a rough draft that includes three different arguments or presentations of your subject. It is not intended to be a polished document. Make the three presentations as different from each other as you can. For example, you might try a bottom-up approach (details first, big picture last), top down (big picture then details), and stepwise development (simpler version, then full version). You could also try an approach based on a diagram or based on a central metaphor. The three approaches should be written as different versions of the explanation. Don't explain how you will structure the explanation ("In this version, I will begin by defining 'algorithm'. Then I will define 'greedy'..."), instead just explain the topic according to your chosen structure ("Greedy algorithms solve hard search problems using the simple heuristic of acquiring maximum utility first ...").

Sketch out each approach just enough to demonstrate what the stages or steps of presentation will be. What concepts will you define when? Note that at this point, you don't need to give the conceptual definitions, just put in placeholders for where they'll go.

Because your rough draft is a preliminary exploration of possibilities, it should look rough. Even though the final draft will be formal, you can be informal in the rough draft. You can write it in the first person, or the third, or mix the two. Include questions for yourself that you haven't answered yet ("Would it be better if I introduced arrays before while loops?") or notes ("Keep this section short—they'll get bored otherwise").

You do not need to include formal citations. However, you should list all of your references at the end, including all that you looked up, whether or not you used them directly in the draft. The reference list will remind you of where you found the material you needed, and can serve as a basis of your formal bibliography in the final draft.

Put your name and student number at the top of the first page so that we can identify the author. Don’t create a full title page. Put the references in any format you want. Use double spacing which is traditionally used for rough drafts to allow for revision marks on paper copies.

Updated Fri Jan. 11 2013, 08:41 by popowich.