1 of 36

Scientific Writing

Chapter 6: Good Style

Writing for Computer Science

Introduction

Computer Science

Information Systems

1

2 of 36

Prepared by:

  • Yusra Hafizi
  • Mastora Darwish

Writing for Computer Science

Introduction

Computer Science

Information Systems

2

3 of 36

Main topics

  • Introduction
  • Economy
  • Tone
  • Example
  • Motivation
  • Balance
  • Voice
  • The Upper Hand
  • Obfuscation
  • Analogies
  • Straw Men
  • Reference and Citation
  • Quotation and Acknowledgements
  • Grammar and Beauty

Writing for Computer Science

Introduction

Computer Science

Information Systems

3

4 of 36

Introduction

  • There are many ways of writing: can be verbose or cryptic, flowery or direct, poetic or literal
  • Style is not about correct use of grammar, but about how well you communicate with likely readers
  • Science writing must by its nature be plain and straightforward—the need for it to be accurate and clear makes poetry inappropriate
  • Readers mistrust statements with numerous spelling errors
  • Writing should be clear, unambiguous, correct, interesting, and direct; Easier to understand

Writing for Computer Science

Introduction

Computer Science

Information Systems

4

5 of 36

Introduction

  • In science writing
    • It doesn’t need to be dull
    • A lively style of writing suggests interesting ideas
    • Poor usage of style is distracting, suggests disorganized thinking

Writing for Computer Science

Introduction

Computer Science

Information Systems

5

6 of 36

Economy

  • Text should be taut.
  • The length of a paper should reflect its content—it is admirable to use only as many words as are required.
  • Every sentence should be necessary and superfluous words should be deleted in order to simplify sentence structure, and establish a logical flow.
  • Italicized text is deadwood that readers must cut away before they can get to the meaning of the text.
  • Don’t omit words that make the writing easier to understand.

Writing for Computer Science

Introduction

Computer Science

Information Systems

6

7 of 36

Economy

  • Revise frequently and critically
    • Remember you are not writing this for yourself but for the readers
  • When work is reviewed, read the comments and realize what can be done to better the work.
  • Avoid sense of showing off or being clever.

Writing for Computer Science

Introduction

Computer Science

Information Systems

7

8 of 36

Tone

  • Science writing should be objective and accurate, remember you are writing to inform not entertain.
  • The elements that give literature its strength—nuance, ambiguity, metaphor, sensuality—are inappropriate for technical work.
  • Rules of simple writing
    • Have one idea per sentence or paragraph
    • Have a simple, logical organization
    • Use short words, short sentences with simple structure
    • Avoid buzzwords, excess
    • Omit unnecessary material
    • Be specific, not vague or abstract
    • Break these rules if there is a good reason to do so

Writing for Computer Science

Introduction

Computer Science

Information Systems

8

9 of 36

Tone (continued)

  • If long word or complex sentences is best option use it
  • Common fault is overqualifying
    • Explaining a claim so much that it ruins the reader’s experience
  • Not Ok: The results show that, for the given data, less memory is likely to be required by the new structure, depending on the magnitude of the numbers to be stored and the access pattern.
  • Ok: The results show that less memory was required by the new structure. Whether this result holds for other data sets will depend on the magnitude of the numbers and the access pattern, but we expect that the new structure will usually require less memory than the old.

Writing for Computer Science

Introduction

Computer Science

Information Systems

9

10 of 36

Tone (continued)

  • You can use the first person (we or I) to make the reading more pleasant
  • Conversational writing is fine but be watchful of slang
  • Don’t dress up the idea as if to put a ‘sales’ window
  • Not Ok (Sales pitch): We have already seen, in our consideration of what is, that the usual simplified assumptions lead inexorably to a representation that is desirable, because a solution is always desirable; but repugnant, because it is false. And we have presented what should be, assumptions whose nature is not susceptible to easy analysis but are the only tenable alternative to ignorance (absence of solution) or a false model (an incorrect solution). Our choice is then Hobson’s choice, to make do with what material we have—viable assumptions—and to discover whether the intractable can be teased into a useful form.

Writing for Computer Science

Introduction

Computer Science

Information Systems

10

11 of 36

Tone continued

        • Ok: We have seen that the usual assumptions lead to a tractable model, but this model is only a poor representation of real behaviour. We therefore proposed richer assumptions, which are however difficult to analyze. Now we consider whether there is any way in which our assumptions can be usefully applied.

Writing for Computer Science

Introduction

Computer Science

Information Systems

11

12 of 36

Example

  • Use an example whenever it adds clarification. A small example often means the difference between communication and confusion.
  • When the concept is fundamental to understand. People learn it by concrete instances, and examples can give substance to abstract concepts.
  • Examples can be blocks of text with heading such as “Example 3.5” or detailed discussions of instances where a technique can be used.

Writing for Computer Science

Introduction

Computer Science

Information Systems

12

13 of 36

Motivation

  • Structure the paper to give purpose to the reader.
  • All parts of the paper should be ordered in a logical way, but this logic needs to be communicated.
  • Link text together and each section should have a clear story to tell.
  • A common error is to include definitions or theorems without indicating why the material is useful.
  • To solve this problem:
    • explain how a definition (theorem, lemma, whatever) is to be used,
    • why it is interesting,
    • or how it fits into overall plan.

Writing for Computer Science

Introduction

Computer Science

Information Systems

13

14 of 36

Motivation (continued)

  • The authors of a paper are almost always better informed than their readers.
  • You should explain everything that is not common knowledge to the paper’s reader.
  • Motivation is essential, but do motivate the right thing and don’t let the motivation take over.

Writing for Computer Science

Introduction

Computer Science

Information Systems

14

15 of 36

Balance

  • Each topic should be discussed to a similar depth.
    • If one paper merits half a page, other papers of equal relevance should not be dismissed in a line.
  • Long introduction is not appropriate.
  • Let the literature review about equally important papers be of similar length.
  • When a paper must be kept within a length limit:
    • Some compromise is required
    • Some of the discussion or proof must be omitted
    • Graphs selected more carefully

Writing for Computer Science

Introduction

Computer Science

Information Systems

15

16 of 36

Voice

  • Avoid excessive use of passive voice.
    • Not Ok: The following theorem can now be proved.
    • Ok: We can now prove the following theorem.
  • The active voice is easier to read.
  • Another unpleasant indirect style is the artificial use of verbs like “perform” or “utilize”
    • Not Ok: Tree structures can be utilized for dynamic storage of terms.
    • Ok: Terms can be stored in dynamic tree structures.
  • Change of voice sometimes changes meaning and often changes emphasis.
  • Passive voice is necessary, use it. Complete absence of active voice is unpleasant.

Writing for Computer Science

Introduction

Computer Science

Information Systems

16

17 of 36

Voice continued

  • Use “we” to distinguish between the contribution, in abstract or introduction. And in some case the use of “we” is wrong.
    • Not Ok: When we conducted the experiment it showed that our conjecture was correct.
      • Use of “we” hint that the experiment was run by someone else.
    • Ok: The experiment showed that our conjecture was correct.
  • Phrases such as “this paper shows” and “this section argues” should generally be avoided.
  • The use of “I” only when to indicate that what follows is the author’s opinion.

Writing for Computer Science

Introduction

Computer Science

Information Systems

17

18 of 36

The Upper Hand

  • Some authors seem to have a swagger behaviour—a need to prove that they know more or are smarter than their readers. For instance:
    • Implying familiarity with material that most scientists will never read.
    • Unnecessary inclusion of difficult mathematics.
    • Citation of inaccessible references.
  • Attempting to gain the upper hand over the reader, is snobbish to make statements the reader won’t understand.

Writing for Computer Science

Introduction

Computer Science

Information Systems

18

19 of 36

Obfuscation

  • Obfuscation is the making of statements in ambiguous terms, with the intention of hiding meaning, or of appearing to say much while actually saying little.
  • Obfuscation can arise:
    • Exaggeration, omission of relevant information
    • Use of short or long sentences
    • Because process is unnecessary complex or presented unnecessary detail

Writing for Computer Science

Introduction

Computer Science

Information Systems

19

20 of 36

Obfuscation (continued)

  • Not Ok: The status of the system is such that a number of components are now able to be operated.
  • Ok: Several of the system’s components are working.
  • Not Ok: In respect to the relative costs, the features of memory mean that with regard to systems today disk has greater associated expense for the elapsed time requirements of tasks involving access to stored data.
  • Ok: Memory can be accessed more quickly than disk.

Writing for Computer Science

Introduction

Computer Science

Information Systems

20

21 of 36

Analogies

  • Analogies are curious things: what seems perfectly alike or parallel to one person may seem entirely unalike to another.
  • For an analogy to be worthwhile, it should significantly reduce the work of understanding the concept being described.
  • Drawback of analogies is that (sometime) they can take you of context
    • Because two situations with similarities may nonetheless have fundamental differences that the analogy leads you to ignore.

Writing for Computer Science

Introduction

Computer Science

Information Systems

21

22 of 36

Analogies (continued)

  • Not Ok: Contrasting look-ahead graph traversal with standard approaches, look-ahead uses a bird’s-eye view of the local neighbourhood to avoid dead ends, but at significant cost: it is necessary to feed the bird and wait for it to return after each observation.
  • Analogies may be unfamiliar to the reader.
  • Ok: One-sided protocols are like signals in football.

Writing for Computer Science

Introduction

Computer Science

Information Systems

22

23 of 36

Straw Men

  • A straw man is an indefensible hypothesis that an author describes for the sole purpose of criticizing it.
  • Type of straw men are:
    • Claiming something that everyone knows to be untrue
      • Says ‘bad’ things about the authors
    • Contrasting of a new idea with some impossibly bad alternative
      • To put the new idea in a positive light
      • Contrast must be between the new and the current
      • Don’t contrast new and the fictitious
    • A more subtle form of straw man is comparison between the new and the ancient.

Writing for Computer Science

Introduction

Computer Science

Information Systems

23

24 of 36

Straw Men (continued)

  • Not Ok (contrasting): Query languages have changed over the years. For the first database systems there were no query languages and records were retrieved with programs. Before then data was kept in filing cabinets and indexes were printed on paper. Records were retrieved by getting them from the cabinets and queries were verbal, which led to many mistakes being made. Such mistakes are impossible with new query languages like QIL.
  • Not Ok (new vs ancient): Since the invention of the internet, researchers have been using the Web to publish data.
  • Not Ok (No reasoning): We did not investigate partial interpretation because it is known to be ineffective.

Writing for Computer Science

Introduction

Computer Science

Information Systems

24

25 of 36

Reference and Citation

  • Because you need to explain the relationship of your new work to existing work, the existing work is identified by reference to published theses, articles, and books.
  • A list of references in a standardized format, and citation inside the text.
  • Purposes of reference:
    • Demonstrate that work is new
    • Demonstrate your knowledge of the research area
    • They are pointers to background reading

Writing for Computer Science

Introduction

Computer Science

Information Systems

25

26 of 36

Reference and Citation (continued)

  • Rules of contact
    • Reference should be useful to reader
    • Reference reasonably accessible
    • Order of preference: Book or journal article; conference article; technical report; manuscript; thesis; personal communication (avoid)
    • Don’t cite to support common knowledge
    • Refer to your previous work but don’t overdo it
    • Whatever you write, be exact and refer to fact

Writing for Computer Science

Introduction

Computer Science

Information Systems

26

27 of 36

Reference and citation (continued)

  • Rules of contact (continued)
    • If a paper [Dawson(1981)] refer to another paper [Kelly(1959)] that is inaccessible, don’t refer to the inaccessible paper
      • Ok: According to Dawson (1981), stable graphs have been shown to be closed.
    • Describe results from other papers accurately

Writing for Computer Science

Introduction

Computer Science

Information Systems

27

28 of 36

Reference and citation (continued)

  • Rules of contact (continued)
    • Be careful of wording (says, suggests, thinks); never belittle nor overstate the contribution
    • Not Ok: Robinson’s theory suggests that a cycle of handshaking can be eliminated, but he did not perform experiments to confirm his results [22].
    • Ok: Robinson’s theory suggests that a cycle of handshaking can be eliminated [22], but did not report experimental confirmation.
    • Not Ok: “Robinson thinks that…”
    • “Robinson has shown that…” -> Means you agree with him.
    • “Robinson has argued that…” -> Specify that weather you agree with the author or not.

Writing for Computer Science

Introduction

Computer Science

Information Systems

28

29 of 36

References and citation (continued)

  • Rule of contact (continued)
    • Quotation also allows you to clearly distinguish between what you are saying and what others have said, and is far preferable to plagiarism.
    • Don’t give anonymous reference
      • Not Ok: Other work [16] has used an approach in which…
      • Ok: Marsden [16] has used an approach in which…
      • Ok: Other work (Marsden 1991) has used an approach in which…
    • Self-reference should not be anonymous
      • Not Ok: Smith et al. [10] found compressed lists to be…
      • Ok: In Smith et al. [10], we found compressed lists to be…

Writing for Computer Science

Introduction

Computer Science

Information Systems

29

30 of 36

Reference and Citation (continued)

  • Rules of contact (continued)
    • When discussing a reference with more than two authors, all but the first author’s name can be replaced by “et al.”
    • Ok: Howers, Mann, Thompson, and Wills [9] provide another example.
    • Ok: Howers et al. [9] provide another example.

Writing for Computer Science

Introduction

Computer Science

Information Systems

30

31 of 36

Reference and Citation (continued)

  • Citation styles
    • The ordinal-number style, in which entries in the reference list are numbered and are cited by their number, as in “…is discussed elsewhere [16]”.
    • The name-and-date or Harvard style—my preferred style—in which entries are cited by author name using either square or round brackets:
      • … is discussed by Whelks and Babb [1972].
      • … is discussed elsewhere (Whelks and Babb 1972).
    • The superscripted ordinal numbers style, as in “… is discussed elsewhere16”.
    • Another style is use of uppercase abbreviations, where references are denoted by strings such as “[MAR91]”. This not a good style.

Writing for Computer Science

Introduction

Computer Science

Information Systems

31

32 of 36

Reference and Citation (continued)

  • Reference style
    • Journal articles: The journal name should be given in full, and author names, paper title, year, volume, number, and pages must be provided also giving the month.
      • T. Wendell, “Completeness of open negation in quasi-inductive programs”, ICSS Journal of Deductive Languages, 34(3):217–222, November 1994.
    • Conference papers: The conference name should be complete, and authors, title, year, pages, publisher, conference location, month, and editors should also be given.
    • Books: Give title, authors, publisher, year, edition, and volume. If the reference is to a specific part of the book, give page numbers.

Writing for Computer Science

Introduction

Computer Science

Information Systems

32

33 of 36

Reference and Citation (continued)

  • Reference style (continued)
    • Technical reports. In addition to title, authors, year, and report number, you need to provide the address of the publisher. If the report is available online, give its URL.
    • Web pages: If you cite a Web page, attempt to find a durable URL that is unlikely to change.
      • You should provide sufficient details, the date on which the Web page was accessed, and a durable URL.
    • Personal communications: An email from a colleague is not a durable document, and should never be cited. If you have to mention it, use a footnote.

Writing for Computer Science

Introduction

Computer Science

Information Systems

33

34 of 36

Quotation and Acknowledgement

  • Quotations are text from another source, usually included in a paper to support an argument.
  • In the acknowledgements you should thank everyone who made a contribution, whether advice, proofreading, coding: include research students, assistants, technical support, non-technical support, and colleagues.
  • It has two forms:
    • One is to simply list the people who have helped with the paper.
    • Ok: I am grateful to Dale Washman, Kim Micale, and Dong Wen. I thank the Foundation for Science and Development for financial support.
    • The other common form is to explain each person’s contribution.

Writing for Computer Science

Introduction

Computer Science

Information Systems

34

35 of 36

Grammar and Beauty

  • Grammar, as long as clarity is maintained
    • Some readers are annoyed by too many grammar errors
    • Don’t split infinitives
      • Infinitives: to read, to go, to write
      • Split infinitive: to deligently read, to boldly go, to happily write…
    • Don’t begin a sentence with “and” or “but”

Writing for Computer Science

Introduction

Computer Science

Information Systems

35

36 of 36

Grammar and Beauty

  • Beauty
    • Authors of style guides like to apply artistic judgements to text.
    • This does not mean that scientific writing should be judged as literary prose; it’s inappropriate.
    • Text should be crystalline, transparent, and have good rhythm and cadence.
    • It shouldn’t be stuffy because well crafted text is easy to read, ill-written text can not be understood, and good rhythm in text helps us to parse.

Writing for Computer Science

Introduction

Computer Science

Information Systems

36