preface - gr · 3 77 c we attempt to give the main points of the report. d in our judgment, the...
TRANSCRIPT
9Preface
Preface
“Your obligation is that of active participation. You should not act as knowledge-absorbing
sponges, but as whetstones on which we can all sharpen our wits.” Edsger W. Dijkstra
Welcome to Computer Science! You are about to enter a fascinating, wonderful world of ideas and
practices. You will be able to realize the challenges and the possibilities of a very promising scientific
field. In fact, you will be empowered to visualize the future and to invent the means for reaching it.
Academic English for Computer Science is a versatile course book, designed to facilitate the induction
of undergraduate students to the fields of computational technology and communication. The book
comprises 10 units which provide a solid foundation in crucial areas of the discipline. The first part of
each unit presents a new topic and an introduction to the related issues. The second part of each unit
introduces significant academic skills. It is true that content knowledge along with academic mastery will
prove a powerful combination. After all, the real essence of computer science needs to be transmitted
in the best possible way, if it is to make a difference to the world.
Discussion section
Before immersing into basic theory in the field, students have the opportunity to think for themselves.
Through the use of carefully chosen prompts, freshers are encouraged to practice critical thinking and
to contribute their own perspective, which could prove valuable in the long run.
Reading
The reading passages attempt to present the essential themes of the subject. Students can build a
significant body of core terminology, and to receive a soft induction to the basic concepts and related
theories of the field. In the course of their studies, they will have the chance to greatly expand on that
primary body of knowledge.
Reading comprehension
After each reading passage, a number of exercises aim to develop the students’ skills in the relevant
terminology. Academic vocabulary and content-specific terminology are combined and practiced. The
close examination and studying of these areas will fill students with confidence to handle the challenges
of more complex issues in their science.
10 Academic English for Computer Science
Reading Strategies Skimming, scanning & intensive reading
Note-taking skills
Note-taking skills play a major role in academic practice. In this book, students are introduced to a
variety of note-taking methods, so that they can choose what is suitable for them, or adapt their style
according to the subject of study. Drawing material from content-related sources, students can sharpen
their ability to make the most of lectures and, ultimately, improve the standards of their own study and
academic work.
Writing skills
Before reaching the more advanced level of technical writing for computer science, students are taught
how to cope with essential academic writing skills, such as paraphrasing, summarizing, organizing
paragraphs, making valid arguments and discussions, providing evidence for their proposals, using
examples to clarify their points, and illustrating the causes and the effects of methodologies and systems.
Academic communication
In the age of global-scale communication, young researchers need to be prepared to express their views
in a way that promotes their best interest. Communication that is ill-practiced will greatly compromise
individuals and their work. However, researchers need not rely on rhetoric means in order to convince;
researchers use the best communicative means in order to promote the most advanced and most ethical
practices. Computer scientists look to appeal by influencing, not by exerting authority.
Listening skills
Practice makes perfect, and the more students practice their listening skills, the better they will become.
The goal is to be able to follow inspiring lectures and speeches, and to understand all these ideas that
are explicitly and implicitly passed on to people by distinguished speakers. When students can absorb
information, and at the same time conceive the underlying message intended by the speaker, the true
essence of communication has been accomplished.
11Preface
Presentation skills
You want people to think you of you, academically and professionally, in a certain way. Therefore,
presenting yourself in a certain way is crucial. The only way to get forward in your life is by getting your
ideas across, seeking consent, and practicing ethical leadership.
I wish you all the best in your future career and your life.
Noni Rizopoulou
EAP/ESP Tutor in English for Computer Science
3
Themes von Neumann model, stored-program concept, machine language, machine instruction, CPU, arithmetic/logic unit, control unit, registers, system buses, address bus, data bus, control bus, main memory, integrated circuits, the ‘chip’, RAM, ROM, cache memory, principle of locality, the machine cycle, RISC, CISC, pipelining, latency, throughput
Academic vocabulary skillsHow synonyms work
Academic note-taking skillsFinding research papers
Academic writing skillsParagraph structureTopic sentences
Academic communicationConciseness: How to sound like an expertReporting verbs
Computer Architecture
Reading Strategies Skimming, scanning & intensive reading
Academic English for Computer Science76
Discussion
Vigorous writing means concise writing. When writing longer
sentences, make sure that you do not lose the strength of the
intended message. You are advised to practice frequent revisions so
as to delete redundant words. Less is more.
Examine the following guidelines in order to reduce wordiness:
• Avoid repetitive pairs: each and every, always and forever, true
and accurate. Choose only one of the two.
• Remove unnecessary quantifiers: really, actually, basically, kind
of, sort of.
• Shrink prepositional phrases: The reason for the failure of the
team ➝ The team’s failure
• Delete words or phrases that are implied previously in the same
sentence: The definition aims to define ➝ The term means
• Replace a phrase with a word: in the event that ➝ if
• Change negatives to affirmatives: You cannot claim that this is
an illegal act ➝ This a legal act.
Note: Contractions are not appropriate for an academic style. Use
the full form.
Task 1 Revise the sentences in two ways:
A remove unnecessary words and expressions
B consider replacing the underlined sections with the
following: demonstrate, prove, distinguish, summarize,
discuss.
a In a paper published by Jones et al., experiments described the
difference between similar results.
b This research makes it apparent that the candidates were expert
writers.
Academic communication Conciseness: How to sound like an expert
Unit 3 77
c We attempt to give the main points of the report.
d In our judgment, the study actually considers the issue of data
redundancy from different points of view.
e The results, as illustrated in Table 3, provide strong evidence that
there was a breach in security.
Task 2 Match the wordy expressions with the appropriate
reporting verbs. Accuracy is crucial in the academic context.
Wordy expressions Reporting Verbs
1 discuss and point out faults a elucidate
2 explain the importance of b criticize
3 arrange into groups c justify
4 describe similarities d enumerate
5 explain and make clear e compare
6 state precisely the meaning of f evaluate
7 calculate and judge g comment on
8 give good reasons for h classify
9 attempt a suggestion
without having
complete knowledge i define
10 give a short description of
the main points j speculate
11 name and list k explain
12 make clear l illustrate
13 assess and explain m estimate
14 give examples that support
your answer n outline
Reading Strategies Skimming, scanning & intensive reading
Academic English for Computer Science78
Computer Hardware
Historically, the realization that a program must be stored in memory
along with data, is credited to Hungarian-American mathematician
John von Neumann. Modern computers are designed according to
the von Neumann model, which essentially involves the stored-
program concept. Instead of rewiring the control unit whenever
a new task had to be performed, the program would reside in
memory in the form of bit patterns, and the contents could easily be
changed to suit the requirements of different tasks. The instructions
written in a program had to be encoded as bit patterns so that
the control unit could identify and retrieve them. The collection of
encoded instructions came to be known as machine language.
An instruction expressed in machine-level language was named a
machine instruction.
A computer is made up of three broad sub-systems: the CPU,
main memory, and input/output (I/O) devices. The CPU, or central
processing unit includes the circuitry that manipulates data. It
carries out the instructions of a computer program by performing
the operations that are specified by the instructions. It consists of
three parts: the arithmetic/logic unit, which performs arithmetic
and logical operations on data, the control unit, which coordinates
the machine’s activities, and registers, which hold data temporarily.
Reading
5
Themes OSI model, ISO, physical layer, data-link layer, network layer, transport layer, session layer, presentation layer, application layer, LAN, MAN, WAN, ring topology, bus topology, CSMA/CD, star topology, hub, switch, repeater, bridge, router, gateway, ISP, TCP/IP, electronic mail, SMTP, FTP, TELNET, www, hypertext, hyperlinks, HTTP
Academic vocabulary skillsTime words
Academic note-taking skillsAdding information to sources
Academic writing skillsThe effective summary
Academic communicationBrainstorming
Networks
Reading Strategies Skimming, scanning & intensive reading
Academic English for Computer Science130
Discussion
Brainstorming is a creativity technique used in academic or corporative
contexts. Typically, a group of people meet in order to exchange
ideas and solutions on specific domains of interest. The members
of the group are encouraged to think more freely and to contribute
their ideas spontaneously. At the end of the brainstorming session,
all the ideas are gathered and evaluated.
Task 1 As a group, practice the following methods for
facilitating the generation of ideas.
• Free writing: Take a pen and some paper, and start writing
continuously for 10 minutes. In the meantime, you cannot stop
writing even if you feel you are running out of ideas. Keeping
noting down random sentences until you get back in track. The
topic for this 10-minute session is: “Do employers have the right
to monitor the communications of employees?” At the end of
the session, collect group ideas and discuss.
• Mind mapping: Choose a concept and write it in the center of
your page. Start thinking about related ideas and connect them
appropriately to that initial concept. When ideas are related, they
should belong to the same cluster. When ideas are different, you
should start new branches off the main topic. The concept for
this 10-minute session is: “Network security”. At the end of the
session, collect group ideas and discuss.
Academic communication Brainstorming
Unit 5 131
Figure 5.1 Mind mapping.
• Analogies: Take two unrelated topics and try to find connections
between them. The human brain is geared towards finding
meaning in puzzling questions. The question for this 10-minute
session is: “How is a plant like a computer?” At the end of the
session, collect group ideas and discuss.
Task 2 Read carefully the following paragraph, and attempt
to ask 4 questions. Ask 2 reasonable questions and 2 surprising
questions. For the latter, begin with: “What if…?”
One of the major contributions of computing technology on the
lives of people is the impact on communications. The need to share
information and resources among different computers has led to
the emergence of linked devices or ‘nodes’ connected via multiple
transmission media. Ultimately, telecommunications are realizing the
vision of global-scale communication, in which users and systems
alike join in a fruitful debate about the progress of humanity and the
invention of the future.
Academic communication Brainstorming
Reading Strategies Skimming, scanning & intensive reading
Academic English for Computer Science132
Networking and the Internet
As with any sophisticated technology, networks are envisioned
as comprising a number of layers so as to illustrate how they are
structured and how they operate. Each layer serves a different
communicative functionality in the network. The Open Systems
Interconnection (OSI) model is a conceptual model which was
developed by the International Standards Organization (ISO) in
order to provide a standard for the communication functions of a
telecommunication. The OSI model was originally defined through
seven layers. Theoretically, the model partitions a communication
system into abstraction layers that enable the interoperability of
diverse systems regardless of their underlying internal structure and
technology.
Reading
Figure 5.2 OSI model vs. TCP/IP model.
The physical layer is responsible for the exchange of unstructured
raw data between a device and a physical transmission medium.
Digital bits in the form of bit streams are transformed into signals,
and are able to ‘flow’ through a medium that the physical layer
has pre-defined. Layer specifications include characteristics such as
voltage levels, the timing of voltage changes, transmission distances,
signal frequency, physical connectors, and cable specifications.
OSI MODEL TCP/IP Model
Application Layer
Application LayerPresentation Layer
Session Layer
Transport Layer Transport Layer
Network Layer Internet Layer
Data Link LayerNetwork Access Layer
Physical Layer
8
Themes Software lifecycle, development phase, analysis,user needs, requirements, specifications, design phase, modules, user interface, implementation phase, bottom-up approach, top-down approach, validation testing, defect testing, glass-box testing, black-box testing, documentation, waterfall model, incremental model, prototyping, open-source, extreme programming, modularity, cohesion, coupling
Academic note-taking skillsArgument mapping
Academic writing skillsDefinitions Citations and references
Academic communicationResponse questions
Software Engineering
Reading Strategies Skimming, scanning & intensive reading
Academic English for Computer Science206
Discussion
When responding to a piece of academic reading or listening, you
can enhance your understanding by asking some general questions:
• What did you understand the source to say?
• How did it make you feel?
• What are your thoughts?
The important thing about response questions is that you are
not supposed to make evaluative comments. The emphasis is on
reaching a better level of understanding, without being judgmental
of the author’s/speaker’s views.
Task 1 Listen to the talk titled “The poetry of programming”,
by Linda Liukas. Answer the above response questions by using
the linguistic cues provided below.
https://www.youtube.com/watch?v=-jRREn6ifEQ
TYPES OF RESPONSES LINGUISTIC CUES
What I understood the source to say
While listening, I understood…
I assumed that…
I understood it to mean that…
How I felt It made me feel…
What my thoughts are
This made me think…
It made me realize…
This reminded me of…
Based on this, I can infer that…
Academic communication Response questions
Unit 8 207
Argument maps are box-and-line diagrams that provide reasoning
and evidence for or against a statement, using a visual display.
The focal question is: “Should I believe that? Why? /Why not?” By
breaking down complex arguments into simpler ideas, we are able
to grasp the logical relationships between the thoughts that are
expressed. In argument maps, each line points to a reason to believe
something, or alternatively, a reason not to believe something.
Task 2 Read the following passage on “The Cost of Quality”,
and respond to the indicative Argument Map below.Modify
the map diagram according to the content of the text you are
examining.
Figure 8.1 Argument map.
Contention:
Reason: And: Objection: Objection:
Objection:
Evidence: Source:
Evidence: Source:
Academic communication Response questions Academic note-taking skills Argument mapping
Reading Strategies Skimming, scanning & intensive reading
Academic English for Computer Science208
The Cost of Quality
In software engineering, quality is a significant factor, but it costs
us time and money. On the other hand, lack of quality is also
extremely costly, since it can have detrimental effects for end users
and organizations alike. Buggy software has high maintenance and
repair cost.
The cost of quality includes all costs related to the attainment of
quality, as well as the cost of compensating for lack of quality.
There are various ways to identify the potential costs. Organizations
commonly collect metrics that provide a baseline for the current
cost of quality. Additionally, in understanding the nature of these
costs, different methods can be employed in order to reduce related
costs. In general, the cost of quality can be divided into costs relating
to prevention, appraisal, and failure. Prevention costs include
scheduling and administrative support that aim to assure quality.
Appraisal costs refer to activities which attempt to gain insight into
product condition, and to develop appropriate technical reviews.
Finally, failure costs are only examined when errors appear.
[From: Pressman, R. S., 2010. Software Engineering: A Practitioner’s Approach.
McGraw Hill, International Edition]
Elaborate Systems and User Needs
Software engineering concerns the application of engineering
principles to the development of software products, using rigorous
scientific methods. When developing large and sophisticated systems,
the efforts of many people are combined, and an extended period
of time is required before a proposed system is completed. Problems
can arise when the initial company requirements are modified or
the personnel assigned to a certain project are changed. Therefore,
software engineering is a branch of computer science that closely
relates to business management.
Reading