The Language of Computing
knowledge students will gain
in the course:
tion, and iteration are
building blocks of
ing is the application of
each step of an algorithm in
the order in which the statements
are given. Selection uses a Boolean
condition to determine which of
two parts of an algorithm is used.
Iteration is the repetition of part of
an algorithm until a condition is met
or for a specified number of times.
Algorithms can be combined to
make new algorithms. [1: 23]
As a communi-
ty, we therefore
is an inte-
gral part of
in practice, most
teachers succumb to prepared lesson
plans. In a rush to ensure that the embod-
iment of such concepts in a programming
language is covered, teachers are often left
with no time to stress upon students the
importance of the language of computing
that underlies the concepts. Textbooks
exacerbate the issue further by completely
ignoring it. While students may end up
designing algorithms and writing programs
that use sequencing, selection, iteration,
and functions, they are often left without
much time to reflect upon the acquisition
of this new language of computing.
In NFL Football, or any other sport for
that matter, I am reminded of play calls
coaches make in crunch game situations
only to watch it go horribly wrong leaving
the fans questioning the rationale behind
those calls, especially if their team loses.
In postgame interviews coaches are often
called upon to justify the rationale behind
their calls. Blame for the outcome is then
squarely placed on execution on the field.
While we can make the right calls on what
to teach and how to teach, our execution
in the classroom is often lacking when
it comes to teaching/learning the lan-
guage of computing. Student learning
will always vary across a wide spectrum
but I do believe that taking the time
to emphasize learning the language of
computing is as important as learning to
read, write, and analyze programs. Proper
understanding of the vocabulary, in my
mind, is critical to student outcomes, learn-
ing, and retention of core concepts well
beyond the course.
At a certain level, if we were to de-
sign our courses to limit exposure to
new concepts and vocabulary, this might
suggest going against the grain of the
current design of introductory comput-
ing courses where we are encouraged to
emphasize the importance of computing
across all disciplines and present a much
broader perspective to students. With the
effectiveness of using contexts (whether it
is graphics, media, robots, etc.) in broad-
ening participation we further add to the
cognitive load of learning additional new
concepts and vocabulary. As is, the list
of terms we need to ensure our students
understand is long—data types (integer,
floating point, character, Boolean, strings),
data representation (bits, bytes, binary,
data range, data
lists, vector, matrices),
(text, images, sound,
video, etc.), data
expressions (numeric, Boolean), declara-
tion/definition, statements, sequencing,
selection, iteration, functions, parame-
ters, recursion, algorithms, correctness,
computing time & complexity, pseudo-
code, programs, documentation, errors,
debugging, programming languages, API,
compilers, IDEs, etc. This list was mostly
culled from [ 3] and represents less than
half the vocabulary listed in the essential
knowledge from the AP CS Principles
course. Also, each of these has a specific
meaning, outside of the context of the real
world. We need to give students the time
to acquire, learn, use, and reflect upon
these in introductory courses. For it is a
good foundation of these terms that we
would like as a least take-away from an
introductory computing course.
Comprehending and building correct
cognitive models for the language of com-
puting often becomes a barrier to students
in learning computing. And, while the play
call in our course design efforts may be
correct, our execution needs to be more
deliberate and near perfect.
1. AP Computer Science Principles Course and
Exam Description, The College Board. Fall 2016.
Available at: https://secure-media.collegeboard.
Accessed 2016 November 14.
2. Bertrand, N. ‘It’s not a complicated or improvised
process’: How it’s possible to examine 650,000
emails in 8 days. Business Insider- Politics. http://
2016 November 8.
3. Kumar, D. Language Wars and False Dichotomies.
ACM Inroads Magazine. 1, 3 (2010). ACM New York.
Bryn Mawr College
Bryn Mawr, Pennsylvania 19010 USA
DOI: 10.1145/3043952 Copyright held by author.