Becoming an effective problem solver is an important skill for our students to master. And, just as important is developing strong interpersonal skills. Our students must be able to communicate effectively with human beings as well as with their computers. They should be able to effectively communicate with technical and non-technical colleagues. As computer science teachers we stress that computer science is more than programming. Yet in some of our courses, most of the assignments are programming assignments.
Writing across the disciplines is a focus at all levels of education. How can we incorporate writing into our computer science curriculum? What are examples of good writing assignments? How do we grade a writing assignment?
I find that the most successful writing assignments are those that give very specific requirements and offer some ideas for research. I try to follow the format below.
The Assignment: State exactly what you expect as a final product.
Example: You will write a 3-page paper (double-spaced, 11-12 point font, 1 inch margins) that addresses one (or more) of the topics listed below. The paper will be graded for content and clear presentation of material. This paper must have content that is supported by references; therefore, include bibliographic references. It should be your own work based on your research. The paper should be submitted (uploaded) by day and time.
Goals: Why are you assigning this paper?
* to explore concerns about topic
* to research a bit of history and some of aspects of the potential problems of topic
* to practice your writing skills by preparing a paper expressing your opinion about this topic based on your readings and research
* to take notice of your how your environment fits into the picture of your research
Possible Questions/Topics for Paper Focus: List here a few possible start points.
* Much of the controversy about topic focuses on something here. Why is topic such an important issue now?
* Topic can be an effective tool for learning because…
* Reflecting on the intersections of real-life and topic….
* What are the pros and cons (or advantages and disadvantages) of topic
* List the impact of topic as it relates to your chosen area of interest (art, literature, medicine).
Some resources: List at least 5 resources here.
Writing assignments take longer to grade than math problems but they are no more difficult to grade than computer programs. And, most times, the logic is easier to follow! Although the following procedure might take some time, I find it works quite well.
1. Require the student to complete an almost final version of the paper. This version should follow the requirements listed in the assignment.
2. Now conduct a peer evaluation. Pair your students. Have them swap papers. The goal of this peer review is to improve the paper. You can choose to do the peer review in a variety of ways, I alternate between the two listed below.
* Require the reviewer to complete a comment sheet that you provide. See the following url for an example. http://euclid.butler.edu/~sorenson/teaching/comments.html
* Have the reviewer list three things the paper does well and then offer three suggestions for improvement.
The peer reviewer is also responsible for checking that the paper meets all the requirements set in the assignment description. You can collect the peer review with the final version of the paper or you can informally read them over before the final version of the paper is due.
3. Base your grade on:
* content and correctness (most weight here)
* grammar and mechanics
* clarity and style
Presentation, both written and oral, should be an integral part of any course, including computer science. You may follow the written assignment with an oral presentation or the oral presentation can be a separate assignment on a second topic of interest. Some guidelines for giving (and grading) an oral presentation are listed below and can be found at: http://www.dcs.gla.ac.uk/~johnson/teaching/research_skills/basics.html
The Presentation
Opening
1. Does your opening gain the group’s attention?
2. Does it establish rapport with the group?
3. Does it indicate what you intend to explain?
The Key Points
1. Are your key points clearly expressed?
2. Are your examples interesting?
3. Are your qualifications of the key points clearly expressed?
4. Is each key point summarized?
5. Are the summaries clear?
6. Are the beginnings and ends of the key points clearly indicated?
The Summary
1. Does the summary bring together the main points?
2. Are your conclusions clearly stated?
3. Do you come to an effective stop?
Presenting
1. Can the group hear and see you?
2. Do you use eye contact to involve but not threaten?
3. Do you use audio/visual techniques effectively?
4. Are you fluent verbally?
5. Is your vocabulary appropriate for the group?
6. Do you make use of pauses and silences?
7. Do you vary your intonation?
8. Is the organization of your material clear?
9. Do you avoid vagueness and ambiguities?
10. Is the presentation as interesting as you can make
Students at all these levels need to communicate effectively. They must gain experience in reading and critiquing papers, both technical and non-technical. They should learn to organize knowledge in written form and be comfortable and confident with oral presentations. Students should to be able to evaluate their own work and openly defend their own ideas and opinions. It is our duty as teachers to help them learn the communication skills necessary to accomplish these tasks.
A few of my favorite writing assignments have been:
1. Electronic Voting Machines: Based on the HBO video Hacking Democracy. This is a great assignment to give around election time.
* The video Hacking Democracyis available at http://video.google.com/videosearch? q=%22hacking+democracy%22&hl=en#q=%22hacking+democracy%22&hl=en&emb=0
or do a Google Video Search for “Hacking Democracy”
* The story is available at http://www.hbo.com/docs/programs/hackingdemocracy/synopsis.html
2. Job Outlooks:
Career overview:
http://www.careeroverview.com/job-outlook.html
http://www.bls.gov/oco/oco1002.htm
3. Second Life: I actually have my students sign up and create an avatar in Second life and then use the following outline:
Your paper should have a clear thesis and supporting discussion. You should include your own experience on Second Life. Some possible choices for topics (or choose your own area of interest):
a. Second Life can be an effective tool for learning because…
b. Artists in Second Life are making effective use of the medium by…
c. There are serious social implications of Second Life….
d. Reflecting on the intersections of real-life and “virtual” economies…
e. The virtual world of medicine has influenced….
f. Is Second Life a place for religious organizations to open virtual meeting places
g. Live music on Second Life enables….
h. Literature has taken an interest in virtual worlds and Second Life
Resources include:
Educators:
http://www.cnn.com/2006/TECH/11/13/second.life.university/index.html
Models of Learning:
http://secondlifegrid.net/slfe/education-use-virtual-world
Social Implications:
http://www.guardian.co.uk/technology/2008/nov/13/second-life-divorce
Artists: http://www.nytimes.com/2009/03/08/magazine/08flunot.html_r=4&pagewanted=1&ref=technology
Medicine:
http://scienceroll.com/2007/04/16/medicine-in-second-life-virtual-doctors-hospitals-and-of-course-sperm-donation/
Information on grading writing assignments:
http://www.virginia.edu/french/resource/teachers/admin/write.htm
Example of a peer review comment sheet:
http://euclid.butler.edu/~sorenson/teaching/comments.html
Information and tips for oral presentations:
http://www.dcs.gla.ac.uk/~johnson/teaching/research_skills/basics.html
Fran Trees
CSTA Chapter Liaison
2 thoughts on “Communication Skills for Computer Science Students”
Leave a Reply
You must be logged in to post a comment.
Since I am the Student of computer science. This post became very helpful for me. Thank you for sharing this.
How do I improve the above mentioned skills?