Вы находитесь на странице: 1из 5

Conventions Significant to Computer Science Writing

Ethan Meade ethanmeade@umail.ucsb.edu


Department of Computer Science
University of California
Santa Barbara, CA

Abstract
Computer science uses multiple conventions in its academic writing to facilitate the
communication of ideas and techniques. Because of the relatively new nature of the discipline and
its rapid growth, these conventions are aimed at efficiently communicating information. Computer
science conventions include a concise abstract, rigid formatting, and the use of tables, figures, and
equations to succinctly convey their ideas.

1. Introduction

As a relatively new and rapidly growing discipline, computer science has a set of goals and aims
for its papers that reflect its situation. Computer scientists are interested in producing,
communicating, and assimilating new information in a compact paper. Furthermore, articles in
computer science are primarily expository; they seek to inform, not to persuade. In this article, we
identify some of the conventions the discipline uses as tools to achieve these aims. We will also
be reproducing many of those conventions, including the concise abstract, rigid formatting, and
the use of figures and equations. Thus, the abstract is short and concise. Standardized formatting
conventions are followed, with clearly marked sections, consistent type font and size, and layout.

2. Standardized formatting

Computer science papers have a format that each article is expected to follow. This structure
begins with placing the title near the top of the first page. Immediately after the title, the names
and affiliations of each author is listed. The email address for each author is given to the right of
each author’s name.1 This provides important information about who worked on the paper; it
affords the authors credit and allows them to be contacted should the need arise.
The paper proceeds to an abstract, which is a short summary of the article. This summary can
give other researchers reviewing the articles an overview of what was discovered without reading
the entire paper. If the abstract contains something of interest to their own research, they can then
invest more time into it. In a fast-paced field like computer science, such time-saving features
have an especial importance. Having an abstract is a fundamental requirement for computer
science papers; the Journal of Machine Learning Research, 2 Association for Computing
Machinery,3 and the IEEE require it in their style guides.4 Because the abstract is meant to

1
Eli Bingham et al., “Pyro: deep universal probabilistic programming,” The Journal of Machine Learning
Research 20, no.1 (2019): 973, https://dl.acm.org/doi/abs/10.5555/3322706.3322734
2
Leslie Kaelbling and David Cohn, “Instructions for Formatting JMLR Articles,” Journal Of Machine
Learning Research, last modified March 9, 2001, http://www.jmlr.org/format/format.html.
3
Craig Rodkin, “Submitting Articles to ACM Journals,” Association for Computing Machinery, last modified
December 6, 2019, https://www.acm.org/publications/authors/submissions.
succinctly summarize the article’s findings, it is by convention short, no more than a paragraph.
Large abstracts risk invalidating their purpose and are thus frowned upon.
It is also interesting to note that many abstracts include a list of keywords used in the article.
For instance, Szymański and Kajdanowicz’s article describes a new tool for Python (a
programming language). Subsequently, their abstract terminates with “Keywords: Python, multi-
label classification, label-space clustering…” (2019) 5. These keywords help readers quickly
determine what topics that article covers. This is helpful because it allows researchers to easily
determine which paper is useful to them. Because it increases the speed researchers can find
pertinent information, it is a helpful convention for computer science’s objective.
Finally, each subsequent section in the paper is marked by a prominent heading. By
convention, the first heading after the abstract is always as follows: “1. Introduction”. This
denotes the introduction of the paper, which introduces the paper’s topic more rigorously than the
abstract. The following sections have headings that are labelled according to the subtopic they
discuss. This organization simplifies searching for a specific section, saving time and thereby
furthering the discipline’s objective of efficiently communicating ideas. It should be noted that
this paper employs the same conventions.
It is important to note that this format mirrors the scientific method. In the introduction,
computer science articles ask a question or state a hypothesis by describing the problem the paper
addresses. For instance, the article on Pyro postulates in its introduction that there are “design
principles that enable a PPL to scale to advanced research applications while retaining flexibility,
and… these principles are fully realized together in the Pyro PPL” (2019). 6 The authors make a
statement to be proven or disproven, as in the scientific method. In the next segment the authors
typically provide the experiment; the method they will use to answer their question or prove their
hypothesis. Returning to the Pyro article, the authors identify the design principles they
mentioned, which corresponds to the ‘create an experiment’ stage of the scientific method. They
have their statement to prove, and now they have a way to prove it: if Pyro is expressive, scalable,
flexible, and minimal, then their claim that Pyro meets the design principles for a good PPL is
true.7 The authors move on to providing data about Pyro: “…Pyro scales to complex, high-
dimensional models thanks to GPU-accelerated tensor math…” 8 They proceed to analyze and
draw conclusions regarding the data, as in the scientific method. This is significant because
computer science is ultimately the study of how to use computers to solve problems. Computer
scientists are therefore interested in finding improved methods of solving problems, which must
be approached scientifically; thus, a variation of the scientific method can be found in the
structure of the discipline’s papers.

3. Figures and Data Expression

Computer scientists work with data that can be difficult to explain solely with text. To solve this
problem, they employ infographic constructs such as figures, data tables, and equations. These
non-textual elements are woven into papers when appropriate to explain abstract ideas.

4
“IEEE Editorial Style Manual,” Institute of Electrical and Electronics Engineers, accessed February 17,
2019, https://journals.ieeeauthorcenter.ieee.org/your-role-in-article-production/ieee-editorial-style-
manual/.
5
Piotr Szymanski and Tomasz Kajdanowicz, “Scikit-multilearn: a scikit-based Python environment for
performing multi-label classification,” The Journal of Machine Learning Research 20, no. 1 (2019): 209,
Association for Computing Machinery Digital Library.
6
Bingham et al., “Pyro.”
7
Bingham et al., “Pyro.”
8
Bingham et al., “Pyro.”
To demonstrate and comply with the discipline’s conventions, an example of one such figure
is shown:

Figure 1: Example of a chart used to compare processing speeds. 9

This figure is a good example of complicated information being communicated through


images rather than text. The figure above is from a paper describing a new, more effective way of
processing a certain type of data.10 In the paper, the authors needed to compare their technique’s
performance to previous techniques. Making this comparison with text alone would be tedious
and confusing, so they created this figure. In doing so, they organized the data, making it easier to
parse and saving time.
Raw code is included in papers for similar reasons. For experienced computer scientists, it is
often easier to understand code by seeing it rather than having it described; furthermore,
describing the code in English can be time and space intensive. For example, the following code
describes a basic function:

int fact(int N)
{
if (N == 1 || N == 0)
return 1;
else
return N * fact(N – 1);
}

This function can be read by an experienced computer scientist easily as it is now.


Translating it into English results in difficulties, as demonstrated: ‘Let there be a function
(smaller program) called ‘fact’ that takes an integer (whole number) represented by the variable
N. The function returns an integer value. When the function runs, if N is 1 or 0, the function
should return 1. Otherwise, the function returns the value of N times the return value of the
function fact when given the value N minus 1.’ Notice that describing this relatively basic
function took several confusing sentences to describe; doing so in a paper would be destructive to
the paper’s concision and coherence.
Another reason to provide the raw code is that it allows other computer scientists to examine
it; because computer scientists are interested in improving coding techniques, it makes sense to
allow other members of the field to examine the proposed improvements.

9
Jean Kossaifi et al., “TensorLy: tensor learning in python,” The Journal of Machine Learning Research, 20,
no. 1 (2019): 928, Association for Computing Machinery Digital Library.
10
Kossaifi, “TensorLy:,” 928.
To prevent confusion and improve accessibility, equations and code is either expressed in a
different font or by using a figure. This can be seen in the code provided above. Gashler’s paper
provides another example of alternate formatting to denote code:

Figure 2: Example of alternate font used to denote code. This caption was included to conform
with the conventions of computer science.

Gashler’s paper is written in Times Roman, but it switches to the pictured font to make it
clear that the text is intended to be read as code (2011). 11 This separates the code from the
“regular” text and improves the article’s coherence. In doing so it mitigates the risk of confusion,
which is conducive to the goal of efficiently communicating ideas.
By convention, figures and tables have captions explaining the data, nature, or conclusions of
said figure.12,13,14 This is done to facilitate an understanding with readers, reducing chances of
confusion. This also furthers the aim of computer science by promoting rapid understanding of
the data in the articles.

4. Miscellaneous

Computer scientists use a tool called LaTeX when writing articles. LaTeX is a program that
automatically formats text to preset conventions; it is used to minimize time spent formatting.
Using LaTeX is standard practice in the discipline; some journals will refuse papers that have not
been enhanced with LaTeX15.
Computer science papers use both in-text citations and a reference section. The following is
an example of an in-text citation from Kossaifi et al.: “…eager execution (Abadi et al., 2015)”. 16
Note that the name of at least one author is placed in the parenthesis along with the date of
publication. This provides enough information to find the corresponding citation in the references
section without getting in the way. This allows researchers to see where the information comes
from and retrieve it for themselves. Ergo, this advances the discipline’s goal to transmit new ideas
without sacrificing speed.

5. Conclusion

The writing conventions of computer science have adapted to the discipline’s evolving nature.
For instance, it has adapted practices that promote concise, comprehensible writing. It uses a
standardized format that trivializes finding specific information. It uses figures and other
graphical aids to convey information that would be poorly expressed with words. It makes use of
tools like LaTeX and citations to make the process of writing and finding information easier. One
might wonder what new conventions it will adopt.

11
Michael Gashler, “Waffles: A Machine Learning Toolkit,” The Journal of Machine Learning Research, 12,
no. 1 (2011): 2384, Association for Computing Machinery Digital Library.
12
“IEEE”.
13
Kaelbling, “Instructions.”
14
Rodkin, “Submitting.”
15
Kaelbling, “Instructions.”
16
Kossaifi, “TensorLy:,” 927.
Perhaps the writing conventions of computer science have some inherent downsides. For
example, the brusque nature of the abstract might hinder those unfamiliar with the discipline. The
complicated figures might be more intimidating than helpful to the inexperienced. Despite these
drawbacks, the discipline of computer science writing is well adapted to its goals and objectives.

References

Bingham Eli, Chen P. Jonathan, Jankowiak Martin, Obermeyer Fritz, Pradhan Neeraj, Karaletsos
Theofanis, Singh Rohit, Szerlip Paul, Horsfall Paul, and Goodman D. Noah. “Pyro: deep
universal probabilistic programming.” The Journal of Machine
Learning Research 20, no.1 (2019): 973.
Association for Computing Machinery Digital Library.
Craig Rodkin. “Submitting Articles to ACM Journals.” Association for Computing Machinery.
Last modified December 6, 2019. https://www.acm.org/publications/authors/submissions.
Gashler, Michael. “Waffles: A Machine Learning Toolkit.” The Journal of Machine Learning
Research. 12, no. 1 (2011): 2384. Association for Computing Machinery Digital Library.
“IEEE Editorial Style Manual.” Institute of Electrical and Electronics Engineers. Accessed
February 17, 2019. https://journals.ieeeauthorcenter.ieee.org/your-role-in-article-
production/ieee-editorial-style-manual/.
Kossaifi Jean, Panagakis Yannis, Anandkumar Anima, and Pantic Maja. “TensorLy: tensor
learning in python.” The Journal of Machine Learning Research. 20, no. 1 (2019): 928.
Association for Computing Machinery Digital Library.
Leslie Kaelbling and David Cohn. “Instructions for Formatting JMLR Articles.” Journal Of
Machine Learning Research. Last modified March 9, 2001.
http://www.jmlr.org/format/format.html.
Szymanski, Piotr and Kajdanowicz Tomasz. “Scikit-multilearn: a scikit-based Python
environment for performing multi-label classification.” The Journal of Machine Learning
Research 20, no. 1 (2019): 209. Association for Computing Machinery Digital Library.

Вам также может понравиться