The Computer A Very Short Introduction 0199586594 9780199586592
The Computer A Very Short Introduction 0199586594 9780199586592
The Computer A Very Short Introduction 0199586594 9780199586592
AVAILABLE SOON:
LATE ANTIQUITY • Gillian Clark
MUHAMMAD • Jonathan A. Brown
GENIUS • Andrew Robinson
NUMBERS • Peter M. Higgins
ORGANIZATIONS • Mary Jo Hatch
VERY SHORT INTRODUCTIONS
VERY SHORT INTRODUCTIONS are for anyone wanting a stimulating and
accessible way in to a new subject. They are written by experts, and have been
published in more than 25 languages worldwide.
The series began in 1995, and now represents a wide variety of topics in history,
philosophy, religion, science, and the humanities. The VSI Library now contains
over 200 volumes-a Very Short Introduction to everything from ancient Egypt
and Indian philosophy to conceptual art and cosmology-and will continue to
grow to a library of around 300 titles.
VERY SHORT INTRODUCTIONS AVAILABLE NOW
For more information visit our web site
www.oup.co.uk/general/vsi/
Darrel Ince
THE COMPUTER
A Very Short Introduction
The Computer: A Very Short Introduction
Contents
List of illustrations
Further reading
Index
List of illustrations
3 Computer memory
Introduction
One of the major characteristics of the computer is its ability to store data. It
does this by representing a character or a number by a pattern of zeros and ones.
Each collection of eight zeros and ones is known as a ‘byte’; each individual one
or zero is known as a ‘bit’ (binary digit). Computer scientists use various terms
to describe the memory in a computer. The most common are the kilobyte, the
megabyte, and the gigabyte. A kilobyte is 103 bytes, a megabyte is 106 bytes,
and a gigabyte is 109 bytes.
The first computer I used was an Elliot 803. In 1969, I took a computer-
programming course at my university which used this computer. It was situated
in a room which was about 40 foot by 40 foot, with the hardware of the
computer contained in a number of metal cabinets, each of which would fill
almost all of the en-suite bathroom I have at home. You submitted your
programs written neatly on special paper to two punch-tape operators, who then
prepared a paper-tape version of the program. Each row of the paper tape
contained a series of punched dots that represented the individual characters of
the program.
The program was then taken to the computer room, the tape read by a special-
purpose piece of hardware, and the results displayed on a device known as a Post
Office Teletype; this was effectively a typewriter that could be controlled by the
computer, and it produced results on paper that were barely of better quality than
toilet paper.
The storage capacity of computers is measured in bytes; the Elliot computer had
128 thousand bytes of storage. It used two cabinets for its memory, with data
being held on small metallic rings. Data were fed to the computer using paper
tape, and results were obtained either via paper or via a punch which produced
paper tape. It required an operator to look after it, and featured a loudspeaker
which the operator could adjust in volume to check whether the computer was
working properly. It had no connection to the outside world (the Internet had yet
to be invented), and there was no hard disk for large-scale storage. The original
price of the first wave of Elliot 803s was £29,000, equivalent to over a hundred
thousand pounds today.
While I am writing this chapter, I am listening to some Mozart on a portable
music device known as an MP3 player. It cost me around £180. It comfortably
fits in my shirt pocket and has 16 gigabytes of memory – a huge increase over
the capacity of the only computer at my old university.
I am typing the book on a computer known as a netbook. This is a cut-down
version of a laptop computer that is configured for word processing, spreadsheet
work, developing slide-based presentations, and surfing the Internet. It is about
10 inches by 6 inches. It also has 16 gigabytes of file-based memory used for
storing items such as word-processed documents, a connection to the Internet
which downloads web pages almost instantaneously, and a gigabyte of memory
that is used to store temporary data.
There is clearly a massive difference between the Elliot 803 and the computers I
use today: the amount of temporary memory, the amount of file-based memory,
the processing speed, the physical size, the communications facilities, and the
price. This increase is a testament to the skills and ingenuity of the hardware
engineers who have developed silicon-based circuits that have become smaller
and more powerful each year.
This growth in power of modern computers is embodied in a law known as
‘Moore’s law’. This was expounded by Gordon Moore, the founder of the
hardware company Intel, in 1965. It states that the density of silicon circuits used
to implement a computer’s hardware (and hence the power of a computer) will
double every two years. Up until the time of writing, this ‘law’ has held.
The computer has evolved from the physical behemoths of the 1950s and 1960s
to a technological entity that can be stored in your jacket pocket; it has evolved
from an electronic device that was originally envisaged as something only large
companies would use in order to help them with their payroll and stock control,
to the point where it has become an item of consumer electronics as well as a
vital technological tool in commercial and industrial computing. The average
house will contain as many as 30 computers, not only carrying out activities such
as constructing word-processed documents and spreadsheet tables, but also
operating ovens, controlling media devices such as televisions, and regulating
the temperature of the rooms.
Even after 70 years, the computer still surprises us. It surprised Thomas Watson,
the founder of IBM, who predicted that the world only needed about five
computers. It has surprised me: about 20 years ago, I saw the computer as a
convenient way of reading research documents and sending email, not as
something that, combined with the Internet, has created a global community that
communicates using video technology, shares photographs, shares video clips,
comments on news, and reviews books and films.
Computer hardware
One aim of this book is to describe how the computer has affected the world we
live in. In order to do this, I will describe the technologies involved and the
applications that have emerged over the last ten years – concentrating on the
applications.
First, the basic architecture of the computer; I will describe this architecture in a
little more detail in Chapter 2. This is shown in Figure 1. The schematic shown
in this figure describes both the earliest computers and the newest: the basic
architecture of the computer has not changed at all over 60 years.
At the heart of every computer is one or more hardware units known as
processors. A processor controls what the computer does. For example, it will
process what you type in on your computer’s keyboard, display results on its
screen, fetch web pages from the Internet, and carry out calculations such as
adding two numbers together. It does this by ‘executing’ a computer program
that details what the computer should do, for example reading a word-processed
document, changing some text, and storing it into a file.
Also shown in Figure 1 is storage. Data and programs are stored in two storage
areas. The first is known as main memory and has the property that whatever is
stored there can be retrieved very quickly. Main memory is used for transient
data – for example, the result of a calculation which is an intermediate result in a
much bigger calculation – and is also used to store computer programs while
they are being executed. Data in main memory is transient – it will disappear
when the computer is switched off.
Hard disk memory, also known as file storage or backing storage, contains data
that are required over a period of time. Typical entities that are stored in this
memory include files of numerical data, word-processed documents, and
spreadsheet tables. Computer programs are also stored here while they are not
being executed.
1. The architecture of a computer
There are a number of differences between main memory and hard disk memory.
The first is the retrieval time. With main memory, an item of data can be
retrieved by the processor in fractions of microseconds. With file-based memory,
the retrieval time is much greater: of the order of milliseconds. The reason for
this is that main memory is silicon-based and all that is required to read data
there is for it to be sent along an electronic circuit. As you will see later, hard
disk memory is usually mechanical and is stored on the metallic surface of a
disk, with a mechanical arm retrieving the data.
Another difference between the two types of memory is that main memory is
more expensive than file-based memory; consequently, there is usually far less
main memory in a computer than file-based memory (I have a laptop that has 3
gigabytes of main memory and the file-based memory contains 500 gigabytes of
storage).
Another set of components of a computer are input devices. These convey to the
computer what the user requires of the programs executed by the computer. The
two devices that you will have met most frequently are the keyboard and the
mouse. There are, however, a number of other devices: touch screens that you
find on iPods and satellite navigation systems and pressure monitors found as
part of the instrumentation of a nuclear power station are two further examples.
The final component of a computer is one or more hardware devices that are
used to display results. There are a variety of such devices. The most familiar to
you will be the computer monitor and the laser printer; however, it can also
include advertising displays found at events such as football matches, the
console that displays flight data on the instrumentation found in the cockpit of a
plane, the mini-printer that is used to produce a supermarket receipt, and the
screen of a satellite navigation device.
The working definition of a computer that I shall use within this book is:
A computer contains one or more processors which operate on data. The processor(s) are connected
to data storage. The intentions of a human operator are conveyed to the computer via a number of
input devices. The result of any computation carried out by the processor(s) will be shown on a
number of display devices.
You may think this statement is both pedantic and self-evident; however, I hope
that you may see as this book unfolds that it has a number of radical
interpretations.
Before leaving this section, it is worth looking at another indicator of the growth
in power of computers. In their excellent book The Spy in the Coffee Machine,
O’Hara and Shadbolt describe the progress made in computer-based chess. To be
good at chess requires you to look ahead a number of moves and evaluate what
your opponent would do for each of these moves, and then determine what move
you would make for each of these moves, and so on. Good chess players hold
lots of data in their heads and are able to carry out fast evaluations. Because of
this, the computer has always been seen as potentially a good chess player.
The chess programs that have been written effectively store lots of moves and
countermoves and evaluate them very quickly. O’Hara and Shadbolt describe
how in 1951 a computer could only think ahead two moves, in 1956 a computer
could play a very restricted game of chess on a smaller board but would take
upward of 12 minutes to make a move. However, in 1997 a computer beat the
world champion Gary Kasparov. This progress is partly due to improvements in
software techniques for game playing; the major reason though is that computers
have become faster and faster.
The Internet
Computers do not operate in isolation: most are connected to a computer
network. For most computers, this will be the huge collection of computers and
communication facilities known as the Internet; however, it could be a network
that controls or monitors some process, for example a network of computers that
keep a plane flying, or a network of computers used to monitor the traffic flow
into and out of a city.
The Internet has had a major effect on the way computers are currently being
used; so it will be worthwhile looking briefly at how it interacts with a typical
computer – say the PC that you use at home.
The Internet is a network of computers – strictly, it is a network that joins up a
number of networks. It carries out a number of functions. First, it transfers data
from one computer to another computer; to do this, it decides on the route that
the data takes: there is a myth that when you carry out some activity using the
Internet, for example downloading a web page, the connection between the
computer holding the page and your computer is direct. What actually happens is
that the Internet figures out a route that the data takes via a number of
intermediate computers and then routes it through them. So when you see a web
page displayed on your computer, that page may have been split into blocks of
data, with each block having travelled through a number of continents and
traversed a number of intermediate computers belonging to companies,
universities, charitable organizations, and government organizations.
The second function of the Internet is to enforce reliability. That is, to ensure that
when errors occur then some form of recovery process happens; for example, if
an intermediate computer fails then the software of the Internet will discover this
and resend any malfunctioning data via other computers.
A major component of the Internet is the World Wide Web; indeed, the term
‘Internet’ is often used synonymously with the term ‘World Wide Web’. The web
– as I shall refer to it from now on – uses the data-transmission facilities of the
Internet in a specific way: to store and distribute web pages. The web consists of
a number of computers known as web servers and a very large number of
computers known as clients (your home PC is a client). Web servers are usually
computers that are more powerful than the PCs that are normally found in homes
or those used as office computers. They will be maintained by some enterprise
and will contain individual web pages relevant to that enterprise; for example, an
online book store such as Amazon will maintain web pages for each item it sells.
The program that allows users to access the web is known as a browser. When
you double-click the browser icon on your desktop, it will send a message to the
web asking for your home page: this is the first page that you will see. A part of
the Internet known as the Domain Name System (usually referred to as DNS)
will figure out where the page is held and route the request to the web server
holding the page. The web server will then send the page back to your browser
which will then display it on your computer.
Whenever you want another page you would normally click on a link displayed
on that page and the process is repeated. Conceptually, what happens is simple.
However, it hides a huge amount of detail involving the web discovering where
pages are stored, the pages being located, their being sent, the browser reading
the pages and interpreting how they should be displayed, and eventually the
browser displaying the pages.
I have hidden some detail in my description. For example, I have not described
how other web resources such as video clips and sound files are processed. In a
later chapter, I will provide a little more detail. At this point, it is just worth
saying that the way that these resources are transferred over the web is not that
different to the way that web pages are transferred.
The Internet is one of the major reasons why computers have been transformed
from data-processing machines to a universal machine that can, for example, edit
music files, predict the weather, monitor the vital signs of a patient, and display
stunning works of art. However, without one particular hardware advance the
Internet would be a shadow of itself: this is broadband. This technology has
provided communication speeds that we could not have dreamed of 15 years
ago. Most users of the Internet had to rely on what was known as a dial-up
facility which transferred data at around 56 kilobits of data a second. When you
consider that the average web page size is around 400 kilobits, this means it
would take around 7 seconds for a web page to be displayed in your browser. In
the 1990s, companies used dedicated communications hardware to overcome
this lack of speed.
Unfortunately, the average user was unable to do this until broadband became
generally available.
Typical broadband speeds range from one megabit per second to 24 megabits per
second, the lower rate being about 20 times faster than dial-up rates. As you will
see later in the book, this has transformed the role of the home-based computer.
Book themes
The first theme of the book is how hardware advances have enabled the
computer to be deployed in areas which would have been unheard of a decade
ago. The circuit that a computer processor is deposited on can be easily held in
the palm of one hand rather than in a large metal cupboard. A memory stick
containing 16 gigabytes of data can easily be attached to a key-ring. Moore’s law
implies that the computational power of a computer processor doubles every two
years. You can now buy hard disk storage of 500 gigabytes for under £60. There
are a number of implications. The first is that in the past decade computers have
been able to do things few people dreamt of in the 1990s, for example British
Telecom’s Vision programme that brings television over the Internet. The second
is that the reduction in size of computer hardware has enabled them to be
physically deployed in environments which would have been impossible a few
years ago.
The second theme is how software developers have taken advantage of advances
in hardware to produce novel applications. An example of this is that of MP3
players such as the Apple iPod. The iPod, and other devices such as the Sony
Walkman, obviously rely on advances in hardware. However, they also rely on a
software-based technique which, when applied to a sound file, compresses it so
that it occupies 10% of its original size without an appreciable decline in sound
quality.
A third theme is how the Internet has enabled computers to be connected
together in such a way that they behave as if they were just one big computer.
This is embodied in an idea known as ‘cloud computing’ whereby data, rather
than being stored in a local database, are held in a number of computers
connected to the Internet and may be accessed by programs that can be
developed by Internet users who have relatively low-level programming skills.
Allied to this idea is that of the Internet as a huge resource of data which the
computer user can tap into. This includes data such as that published by the
British government’s data.gov.uk and US government’s Data.gov programs, but
also data that have been contributed directly or indirectly by users of the
Internet. For example, there are sites that enable you to home in to your town or
village and examine the broadband speeds that are being experienced by your
neighbours, the data that these sites contain having been donated by the users of
the site.
A fourth theme is how the Internet has provided creative facilities that were only
available to professionals. For example, computer hardware advances, software
advances, and advances in the technologies used to create video cameras mean
that anyone can become a film director and display their results on the Internet.
A computer user can now buy hardware and software for less than a thousand
dollars that enables them to reproduce the features of a recording studio of the
1990s.
A fifth theme is how advances in computer processor hardware have enabled
number-crunching applications which, until a few years ago, were regarded as
outside the realm of computation. Moore’s law implies that computer processors
become twice as powerful as they were in the previous year. The consequence of
this is that over the past decade, processors have become over a thousand times
more powerful and, combined with other hardware improvements such as the
increased speed of data-storage devices means that, for example, simulations
involving the natural world – for example, simulations of hurricanes – can now
be easily carried out without deploying powerful supercomputers.
A sixth theme is how the computer has become a disruptive technology in that it
has both transformed and eliminated many skills. An example here is
photography. When I visit a tourist site, I hardly ever see film cameras being
used: almost invariably, small palm-sized digital cameras are now the norm.
Moreover, the photographs that are taken can be brought home in a memory
stick, placed in a home computer, and then printed. Relatively cheap programs
such as Adobe Photoshop can now be used to improve these photographs by, for
example, adjusting the exposure.
No longer does the development of a photograph involve the dousing of a film in
chemical baths in a darkroom. This is clearly an improvement; however, there is
another side to the coin which has resulted in fewer job opportunities for
photographers. There is a web site known as Flickr. This is a photo-sharing site
where Internet users upload photographs and display them to visitors to the site.
Newspaper editors who want cheap stock photographs for an issue of their paper
(for example, a picture of a robin for a Christmas edition) can purchase such a
picture for a fraction of the amount that they would have to pay a freelance
photographer.
A seventh theme is that of the insecure computer. A computer that stands alone
with no connections to a network is perfectly safe from any technological attack;
the only threat that the owner of the computer should be aware of is that of
having it stolen. However, very few computers are in this state: most are
connected to the Internet. This means that they become prone to a large variety
of attacks, from those that create a mild nuisance effect to serious attacks which
can completely stop a computer from working. An example of this is the zombie
computer. This is a computer attached to the Internet that has been compromised
by a hacker, a computer virus, or a Trojan horse.
The most common use for a zombie computer is to act as a mail server and send
spam email; this is email that tries to sell you something you don’t need (Viagra,
cheap stocks and shares, or pornographic publications, for example) or attempts
to steal information such as your bank account identity. Most owners of such
computers are unaware that their system is being used in this way. It is because
the owner tends to be unaware that they are referred to as ‘zombies’. In May
2009, the security company McAfee estimated that there were around 12 million
new zombies attached to the Internet. This is really quite an extraordinary figure
for a computer infestation.
Some examples
Before looking at these themes in more depth, it is worth examining some
examples of the themes in action.
The Norwegian oil company StatOil uses blue mussels to monitor any leaks
around their oil rigs. When there is an oil leak, the mussels contract their shells.
Concerned with the environmental and revenue impacts of leaks during oil
drilling, StatOil sought a way to replace a manual process that involved
submersible vehicles and included deep-sea divers. What they did was to attach
RFID tags to the shells of blue mussels. These are small, silicon-based, data-
holding chips that also include a computer. When the blue mussels sense an oil
leak, they close; this makes the RFID tags emit signals that indicate this event
has occurred; these signals are picked up by a computer on the rig which then
shuts down the activity that was causing the leak. For example, if drilling were
taking place, the drilling line would be automatically stopped. This unusual
application is possible as a consequence of advances in the miniaturization of
computer circuits.
Google Inc. is the company that hosts the hugely popular search engine known
as Google. One of the things that the search engine does is to store the queries
made by the users so, for example, you can visit a Google web site and discover
which are the most popular queries. In 2008, the fastest-rising queries from the
United Kingdom were: ‘iPlayer’, ‘facebook’, ‘iphone’, ‘youtube’, ‘yahoo mail’,
‘large hadron collider’, ‘Obama’, and ‘friv’. Most of these terms are associated
with hugely popular web sites or electronic devices such as the iPhone. The last
entry, ‘friv’, is an online games site.
As you will see later, a huge amount of information can be obtained from the
queries that users submit to a search engine. It is now common practice for
police investigators to explore the use of a search engine by a suspected
murderer. In a murder where the victim’s neck was broken, they would check for
search terms such as ‘neck’, ‘snap’, ‘break’, ‘rigor mortis’, and ‘body
decomposition’ which the murderer might have submitted to the search engine.
An interesting application of the massive amount of stored data that Google
keeps of the queries that are made is in tracking influenza. Two Google
engineers tracked the incidence of queries such as ‘thermometer’, ‘flu
symptoms’, ‘muscle aches’, and ‘chest congestion’, and compared the location
of the Internet users who made the queries against the US Center for Disease
Control database and discovered a very close correlation: in effect, they
discovered that the volume of queries involving the search words was similar to
the density of flu cases. You can now access a web site managed by Google Inc.
that shows the growth of flu cases in a number of countries over a period of
time.
This is an example of a major theme of this book: that of the computer not only
having access to the data on its own hard drive, but also to the massive amount
of data stored on the computers spread around the Internet.
Another example of a use of computers beyond the limited visions of the 1970s
and 1980s concerns the way that computers are connected together in order to
work collaboratively.
Researchers in the applied sciences have for the past 20 years tried to squeeze
processing power from their computers. For example, the Human Genome
Project has mapped the gene structure of humankind and is now using this
information to detect the genetic causes for many types of illness. This work has
required the use of expensive supercomputers that contain a large number of
processors. However, a number of researchers in this area, and in other areas
such as climatology, have come up with the novel idea of asking the public to
run processor-intensive programs.
Two examples of this are: Genome@home and Folding@home. These projects
look at the structure of proteins in order to detect therapeutic regimes that can be
used for treating patients with conditions such as Alzheimer’s disease.
Researchers involved in this project have enlisted around 30,000 home
computers to spread the computational load. Volunteers use their spare processor
and memory capacity to take a small part of a computer program that carries out
protein simulation and produce results that are fed back to a master computer
that coordinates the processing.
This is not the only application of a technique known as ‘mass computing’ or
‘mass collaboration’. There are projects that attempt to analyse the radio waves
from outer space in order to discover whether there is intelligent life beyond our
universe, those that simulate atomic and sub-atomic processes, and many
projects associated with molecular biology. In the past, supercomputers
containing a large number of processors situated in a small number of research
institutes were used – and indeed are still used – however, hardware advances
and the increasing availability of the broadband Internet has meant that we can
all participate in major research projects with little effect on our home
computers.
wordia is a visual dictionary that anyone can access via their home computer. It
contains words of course, but each word is accompanied by a video of someone
telling you what the word means to them. It is one of the most delightful web
sites that I have come across and is an example of the phenomenon known as
mass collaboration in action. This is an example of an application related to a
major theme of the book: that of the computer being part of a loosely coupled
global computer.
Another example involves the construction of computer circuits. As engineers
try to squeeze more and more electronic components onto silicon chips, the
design of such chips becomes much more difficult: for example, placing two
metallic connections close to each other would cause electrical interference that
would result in the circuit malfunctioning. Given that millions of such circuits
might be manufactured and embedded in computers, a mistake would be hugely
expensive for the manufacturer. The complexity of design is such that the only
viable way to develop the architecture of a silicon-based circuit is by using the
computer itself.
The programs that are used to design computer circuits try to optimize some
design parameter; for example, one class of programs attempts to squeeze
connections on a silicon chip in such a way that the maximum number of
connections are deposited subject to a number of constraints: that connections
are not too close to each other and that the heat dissipation of the circuit does not
rise past some threshold which would affect the reliability of the circuit. There
are a number of techniques used for optimization; one recent very efficient class
of programs is based on animal and insect behaviour.
An example of this is a technique known as ‘swarm optimization’ in which a
number of computer processes collaborate with each other in order to discover
an optimal solution to a problem using the simple mathematics used to describe
how shoals of fish or flocks of birds behave. Here is an example of another
theme of this book: the ingenuity of the programmer combined with hugely
increased speeds that enable complex tasks to be carried out that even a small
number of years ago would have been impossible to even think about.
Swarm optimization is an example of the revolution in the use of computers that
has happened over the past two decades: it is represented by the progression of
the computer that just carries out mundane processing steps such as calculating a
wage bill to applications such as designing computers and controlling the
inherently unstable fighter planes that have become the norm in our armed
services.
So far, I have concentrated on computers and their uses that are visible. There
are many, many more applications where the computer is not seen. My nearest
city is Milton Keynes. When I drive to the city and then around its severely
practical road system, I pass many, many unseen applications of the computer. I
pass a speed camera controlled by a small microprocessor; a company that
fabricates electronic equipment using robots controlled by a computer; the street
lighting controlled by a very small, primitive computer; the Milton Keynes
Hospital where most of the monitoring equipment that is used could not function
without an embedded computer; and the shopping centre, where computers are
used to keep the environment within each shop strictly controlled.
Increasingly, computers are being used in hidden applications where failure –
either hardware or software failure – could be catastrophic and, indeed, has been
catastrophic. For example, the Therac-25 was a computer-based radiation
therapy machine which had a number of software problems. In the late 1980s, a
number of patients received massive overdoses of radiation because of problems
with the computer interface.
An example of a hidden application where failure can be catastrophic and which
is an example of another theme is that of the control of an oil rig. A functioning
oil rig draws extremely flammable oil or gas out of the earth, burns some of it off
and extracts unusable by-products such as hydrogen sulphide gas from the oil. In
ocean-based installations, this required a large number of human operators.
Increasingly, however, computers are being used to carry out tasks such as
controlling the flow of oil or gas, checking that there is no spillage, and
regulating the burn-off process.
There have been instances of IT staff hacking into the software systems that are,
for example, used to monitor oil rig operations, either for financial gain or
because they had become disgruntled. What is not realized is that although
computer crime such as spreading viruses is still prevalent there are whole
collections of applications of computers that are just as vulnerable to attack. The
SINTEF Group, a Norwegian think tank, has reported that offshore oil rigs are
highly vulnerable to hacking as they move to less labour-intensive, computer-
controlled operations – for example, the wireless links that are used to remotely
monitor the operation of a rig and to keep a rig in its position via satellite
navigation technology are particularly vulnerable.
This book
Each of the chapters of this book is centred about a theme that I have outlined in
this chapter.
‘The Small Computer’ will describe how a computer architecture is mapped to
silicon and the problems that the computer designer has to face when pushing
more and more electronic components onto a piece of silicon. Topics that will be
discussed include: very large-scale integration, silicon fabrication, the hardware
design process, and new techniques and technologies for design such as the use
of artificial intelligence programs to maximize or minimize some factor such as
heat dissipation.
‘The Ubiquitous Computer’ will describe how miniaturization has led to the
computer becoming embedded into a variety of electronic and mechanical
devices. Examples discussed in this section include: RFID tags, the use of
supermarket loyalty cards, computers used for the monitoring of the infirm or
elderly, wearable computers, computers used within virtual reality systems, and
the convergence that is occurring between the phone, the MP3 player (iPod), and
the computer.
‘The Global Computer’ will look at how the Internet has enabled large numbers
of computers to be connected together in such a way that they can be used to
attack wicked problems – that is, problems that are computationally very
difficult to solve. The chapter starts by looking at one particular computationally
wicked application from genome sequencing. I will then describe a concept
known as grid computing where very large numbers of computers are connected
together in such a way that their spare capacity can be used to attack such hard
problems. The chapter will conclude by looking ahead to the seventh chapter and
briefly describe how the grid concept has become commercialized into
something known as cloud computing. This involves regarding the Internet as
just one huge computer with almost infinite computing power and data-storage
facilities.
‘The Insecure Computer’ looks at some of the threats – both technological and
human – that can result in major security problems. The chapter will cover the
whole panorama of attacks including virus attacks, Trojan attacks, denial of
service attacks, spoofing attacks, and those that are caused by human error. The
chapter will look at the defences that can be employed, including firewalls,
intrusion detectors, virus checkers, and the use of security standards. A strong
point that I make is that technological defence is not enough but that it has to be
melded with conventional security controls.
‘The Disruptive Computer’ describes how the computer has had a major
disruptive effect. Most of the examples describe disruption engendered by the
combination of the computer and the communications technologies employed in
the Internet. It will examine how in media industries, for example newspapers,
have declined over the last five years and how online advertising has eaten into
the revenues of television companies. The concluding part of the chapter will
examine a number of areas where computers have de-skilled, transformed,
moved, or eliminated certain jobs.
‘The Cloud Computer’ describes how the Internet has enabled not just
developers but moderately skilled individuals to treat this network like a massive
computer. A number of companies such as Amazon provide public access to
huge product databases and programming facilities in such a way that
applications can be developed that mesh across a number of areas. This has led
to the concept of the cloud computer: huge numbers of processors and databases
connected by the Internet with software interfaces that anyone can use. The
chapter introduces the idea of software mashing: the process whereby
sophisticated applications can be constructed by integrating or ‘mashing’ large
chunks of existing software.
‘The Next Computer’ is a relatively short chapter. It looks at some of the blue-
skies work that is being carried out by researchers in an attempt to overcome the
limitations of silicon. It will focus on quantum computing and biological
computing. A quantum computer is a computer that carries out its processes
using quantum effects such as entanglement to operate on data. It is very early
days as yet, but theoretical studies and some early experiments have indicated
that huge processing speed-ups are possible with quantum computers.
The effect of such computers could be devastating. For example, much of
commercial computing depends on cryptographic techniques that rely on the
huge computational complexity of certain classic number processing algorithms.
Quantum computers may be capable of making these algorithms solvable and
hence open up the Internet to easy attack.
The chapter will also describe the principles behind the DNA computer. This is a
half-way house between current computer technology and quantum computers.
DNA computers use the genetic properties of biological strands to provide very
large parallel processing facilities. Effectively, DNA computers implement a
large number of hardware processors which cooperate with each other to solve
hard computational problems.
A major idea I hope to convey to you in Chapters 4 and 7 is that regarding the
computer as just the box that sits on your desk, or as a chunk of silicon that is
embedded within some device such as a microwave, is only a partial view. The
Internet – or rather broadband access to the Internet – has created a gigantic
computer that has unlimited access to both computer power and storage to the
point where even applications that we all thought would never migrate from the
personal computer are doing just that.
An example of this is the migration of office functions such as word processing
and spreadsheet processing – the bread and butter of many home computers.
Google Inc. has launched a set of office tools known as Google Apps. These
tools are similar to those found in Microsoft Office: a word processor, a
spreadsheet processor, and presentation package similar to PowerPoint etc. The
major difference between Google Apps and Microsoft Office is that the Google
software can only be accessed over the Internet: it does not reside on your
computer but at a remote server accessed using Internet protocols. A second
difference is that Google Apps is free while Microsoft Office, although cheaper
than a few years ago, still has to be bought.
Chapter 2
The small computer
Introduction
The last 30 years has seen an amazing improvement in the capability of
computers in terms of their processing speed, size of memory, cost, and physical
size. Processors have increased their power from around 90 kIPS in the early
1970s to many thousands of MIPS in the second decade of the 21st century. The
speed of a processor is expressed in instructions per second (IPS) where an
instruction is some action that the computer takes, for example adding two
numbers together; the prefix ‘k’ stands for a thousand, while the prefix ‘M’
stands for a million.
Memory capacity has also increased: the Elliot 803 computer that I described in
the previous chapter contained 128 k bytes of memory held in a cabinet the size
of a dozen coffins: my iPod contains 16 gigabytes of storage.
How has this increase in speed and memory capacity happened? In this chapter, I
answer this question; however, before doing so, it is worth looking briefly at
how data and computer programs are held in the computer.
6x104+9x103+1x102+2x101+6x10°
where each digit represents the result of multiplying itself by a power of ten (any
number raised to the power 1, for example 101, is always itself, in this case 10,
and any number raised to the power zero is always 1).
We say that the base of a decimal number is 10; this means that we can express
any decimal number using a digit between 0 and 9. With binary numbers, the
base is 2; this means that we can interpret a binary number such as 11011 as
1x24+1x23+0x22+1x21+1x2°
1001001110110110
might represent an instruction to add two numbers together and place them in
some memory location.
Computer hardware
A computer will consist of a number of electronic circuits. The most important is
the processor: this carries out the instructions that are contained in a computer
program. As you will remember from the preceding chapter, there are two types
of memory: main memory used to store relatively small quantities of data and
file-based memory which is used to store huge amounts of data such as word-
processor files.
There will also be a number of other electronic circuits in a computer: for
example, if you look at the back of a desktop computer, you will often see a
black rod attached to a metal strip. The rod contains the aerial that picks up
wireless signals from a device known as a modem that connects to the Internet.
Behind the strip will be a circuit that converts the signals that are picked up by
the aerial into a form that can be used by the computer so that, for example, it
can display a web page on your monitor.
There are a number of individual circuit elements that make up the computer.
Thousands of these elements are combined together to construct the computer
processor and other circuits. One basic element is known as an And gate, shown
as Figure 2. This is an electrical circuit that has two binary inputs A and B and a
single binary output X. The output will be one if both the inputs are one and zero
otherwise. This is shown in a tabular form known as a truth table; the truth table
for the And gate shown in Figure 2 is shown in Table 1.
There are a number of different circuits inside the computer – the And gate is
only one example – when some action is required, for example adding two
numbers together, they interact with each other to carry out that action. In the
case of addition, the two binary numbers are processed bit by bit to carry out the
addition.
So, how does a computer do its work? The best way to describe this is to outline
what happens when I use a word processor. When I click the MS Word icon on
my desktop, the Windows operating system senses the click and then loads the
MS Word word processor into the main memory of the computer.
The program then starts executing. Each time I carry out some action the word-
processor program senses it and part of its program code is executed. The
execution is carried out in what is known as the fetch-execute cycle. Here the
processor fetches each programming instruction and does what the instruction
tells it to do. For example, an instruction may tell the computer to store what I
have typed in a file, it may insert some text into some part of the word processed
document, or it may quit the word processor.
Whatever actions are taken by a program such as a word processor, the cycle is
the same; an instruction is read into the processor, the processor decodes the
instruction, acts on it, and then brings in the next instruction.
So, at the heart of a computer is a series of circuits and storage elements that
fetch and execute instructions and store data and programs. Over the last 70
years, a variety of technologies have been used for constructing a computer. The
very first computers were based on electrical relays; these were mechanical
switches which would have two states: binary one would be represented by the
relay being closed, while zero would be represented by a relay being open.
When you hear a computer programmer talking about a ‘bug’ in their program,
the term comes from the use of relay computers. In 1946, Grace Hopper, one of
the pioneers of computer programming, joined the Computation Laboratory at
Harvard University where she worked on early relay computers. She described
how they traced a program error to a moth trapped in a relay, coining the term
‘bug’ for a software error.
The first real generation of computers used electronic circuits based around
devices known as valves. These looked a bit like small light bulbs and could be
switched electronically from a zero (off) to a one (on) state via a signal to the
valve. Programmers communicated with these computers using paper tape or
punched cards which either held data to be processed or the programs that
carried out the processing.
The main memory that was used in early computers employed circular pieces of
magnetic material known as cores. These stored binary one or binary zero
depending on their magnetized state.
First-generation computers were succeeded by second-generation computers that
used transistors. A transistor was a lump of silicon that could be switched on and
off; the Elliot computer I described in the previous chapter relied on such a
technology.
During the late 1960s and early 1970s, physicists, materials scientists, and
electronic engineers managed to deposit the circuits that were implemented by
transistors in second-generation computers onto silicon chips. This is a process
known as Very Large Scale Integration (VLSI). These third-generation
computers are the ones we use today. It is VLSI that has been the technology that
has provided the incredible miniaturization, speed, and capacity of today’s
computers. Miniaturization, exemplified by the width between components, has
decreased from around 1.00 μm in the early 1990s to 40 nm in the early part of
the 21st century. The symbol μm stands for a millionth of a metre, and the
symbol nm stands for a nanometre – one thousandth of one millionth of a metre.
Computer circuits
Modern computer hardware relies on silicon. There are a number of
manufacturing steps that are carried out to transform a block of silicon into a
processor or an interface circuit such as the one used to drive the monitor of a
computer.
The first step is the growing of a single crystal of silicon as a cylinder. When the
growth of the cylinder has been completed, circular slices known as ‘wafers’ are
cut from the cylinder in the same way that you would cut slices from a cylinder
of luncheon meat, the only difference being that the slices are usually a fair bit
thinner than the meat. After the slices have been cut, they are polished.
The next step is to embed a design on each silicon wafer for the circuit that is to
be implemented. This is done via a device known as a photo-mask. This is a grid
that lays out the pattern of the circuit on the wafer together with the components
of the circuit. Ultraviolet light is shone through the grid onto a portion of the
wafer and this forms the guidelines for the circuit to be deposited on it. Normally
a number of similar circuit plans are etched onto the silicon wafer.
In detail, the fabrication process proceeds as follows. First, the silicon wafer is
baked in an oven filled with oxygen. This forms a thin layer of silicon dioxide on
the surface. The wafer is then coated with another thin layer of an organic
material known as a resist. So we now have a silicon base, often known as a
substrate, a silicon dioxide layer, and a resist layer at the top.
Ultraviolet light is then shone through the mask onto a portion of the wafer. The
structure of the resist is broken up by the light but the remaining layers are
unaffected. The process is very similar to the way that a black and white
photograph is developed. Once a portion of the wafer has had the light shone on
it the mask is moved and the next part of the wafer has the pattern etched.
The next stage is for the wafer to be fabricated. This involves placing it along
with many other wafers in a bath of solvent which dissolves those parts of the
resist that have received the ultraviolet light.
The silicon wafer will now have a layer of silicon, a layer of silicon dioxide, and
the part of the resist layer that has been unaffected by the ultraviolet light. The
part of the wafer that has been removed by the solvent will have exposed areas
of silicon dioxide. These are then removed by applying another solvent which
will expose the underlying silicon.
The silicon wafer will now contain a layer of silicon parts which are exposed, a
silicon dioxide layer which will have sections cut out of it exposing the silicon,
and the resist which will have the same sections cut as the silicon dioxide.
The next step is to remove the resist by using a solvent that dissolves it. The
wafer now contains a base layer of silicon with the circuit pattern etched in it.
The exposed part of the silicon layer is then treated in order to make it capable of
conducting electrical signals. The wafer now has treated silicon which represents
the circuit and new silicon dioxide that acts as an insulator which ensures that
signals that pass though one part of the silicon do not affect other signal paths.
Further layers are then deposited to complete the circuit with the last layer being
one of silicon dioxide. This is etched with holes that enable connections to be
made with the underlying circuits.
The process of packaging the circuits now starts. There are a variety of
packaging techniques. I shall describe the simplest. First, square metallic
connections known as pads are deposited around the edge of each circuit.
Another layer of silicon dioxide is then placed on the wafer with holes etched in
the layer to enable connections to be made to the pads.
Each circuit is then tested by a special purpose piece of electronic equipment
which will engage with the pads and send signals to some of the pads and
monitor the effect of the signals on other pads. Any circuit that fails the test is
marked with a dye and eventually rejected. If the circuits pass the test, another
layer of silicon dioxide or silicon nitride is placed over the circuit and
connection holes made in the layer to the pads. This final layer acts as physical
protection.
The final step is to cut each circuit from the silicon wafer. This is achieved by a
mechanical cutter; this is similar in concept to the way that a glazier will cut a
shape out of glass. The wafer has now become a collection of identical chips.
The final step is for each chip to be mounted in some sort of frame in order that
it can be fitted into a computer. There are a variety of techniques for this. A
simple one involves attaching the chip on a lead frame using an adhesive that
helps conduct heat away from the chip and then placing signal wires on the chip
that connect with the pads. Once the wires are added, the chip is covered in some
plastic-based material as a final protection.
If you are interested in more details, the excellent book BeBOP to the Boolean
Boogie: An Unconventional Guide to Electronics by Clive Maxfield is a great
introduction to computer electronics (see Further reading).
Computer memory
There are two sorts of memory devices: read-only memory (ROM) devices and
read-write memory (RWM) devices. The former hold data that cannot be altered;
the latter can be erased and data rewritten.
Computer memory is implemented as silicon and is fabricated in the same way
that hardware processors and other circuits are fabricated. The only difference
between a computer memory and, say, the circuit that communicates with the
Internet or the processor is that the former has a regular structure.
Figure 3 shows the typical layout of memory. It consists of an array of cells that
are implemented as transistors. Each cell can hold either a zero or a one. Each
horizontal collection of cells is known as a word and the depth of the array is,
not unsurprisingly, known as the depth.
A circuit known as an address bus is connected to the array. Each word in the
array has a unique identity known as its address. When data from memory or a
program instruction are required by the processor of the computer, a signal is
sent along the bus; this instructs the memory unit to decode the address and
make the data or program instruction available at the specified location available
to the processor.
There are a variety of memory devices available. Mask-programmed ROMs
have their data or programs placed in them when they are fabricated and cannot
be changed. Programmable Read Only Memories, commonly known as PROMs,
are fabricated in such a way that they are blank and can then be programmed
using an electronic device. However, since they are read-only this can only
happen once – they cannot be reprogrammed.
3. Computer memory
Erasable Programmable Read-Only Memory, more commonly known as
EPROM, goes one step further than PROMs in that it can be erased and then
reprogrammed. There is confusion about EPROMs: since they can be
reprogrammed, there is the impression that their contents can be changed by
overwriting when they are in the computer. Overwriting can only be achieved by
a special-purpose piece of equipment in which the EPROM device is inserted.
A major step forward that bridged the worlds of read-only memory and writable
memory was the development of Electrically Erasable Programmable Read Only
Memory, often known as EEPROM. This is a form of EPROM that can be
erased while it forms part of a computer. A technology known as flash memory
has been developed using the ideas and technologies associated with EEPROM.
Flash technology is employed in applications where a large amount of non-
erasable memory is required. For example, it is used in the USB memory sticks
that are used to transfer data from one computer to another, or as backup storage
in case a computer fails. Other applications that use flash technology include
personal digital assistants, laptop computers, digital audio players, digital
cameras, and mobile phones. A new-generation small laptop computer known as
a netbook employs flash memory for the storage of programs and files of data.
File-storage technology
The technologies that I have described so far are normally used for relatively
small amounts of data (it is a remarkable consequence of the advances in
miniaturization and fabrication that I can refer to 8 Gb as ‘relatively small’). For
larger quantities of data and programs, a different, much slower technology is
employed. It is known as hard disk technology.
In essence, a hard disk unit consists of one or more circular metallic disks which
can be magnetized. Each disk has a very large number of magnetizable areas
which can either represent zero or one depending on the magnetization. The
disks are rotated at speed. The unit also contains an arm or a number of arms that
can move laterally and which can sense the magnetic patterns on the disk. The
inside of a hard disk unit is shown in Figure 4; here, the arm is clearly visible
close to the edge of the disk.
When a processor requires some data that is stored on a hard disk, say a word
processor file, then it issues an instruction to find the file. The operating system
– the software that controls the computer – will know where the file starts and
ends and will send a message to the hard disk to read the data. The arm will
move laterally until it is over the start position of the file and when the revolving
disk passes under the arm the magnetic pattern that represents the data held in
the file is read by it.
Accessing data on a hard disk is a mechanical process and usually takes a small
number of milliseconds to carry out. Compared with the electronic speeds of the
computer itself – normally measured in fractions of a microsecond – this is
incredibly slow.
Because disk access is slow, systems designers try to minimize the amount of
access required to files. One technique that has been particularly effective is
known as caching. It is, for example, used in web servers. Such servers store
pages that are sent to browsers for display. If you look at the pattern of access to
the web pages associated with a web site, you will find that some pages are
retrieved very frequently – for example the home page – and some pages
accessed very little. Caching involves placing the frequently accessed pages in
some fast storage medium such as flash memory and keeping the remainder on a
hard disk.
Another way of overcoming the slow access times to hard disks is to replace
them completely with electronic storage media such as flash memory. Currently,
such technologies do not approach the storage capacity and cost of hard disk
units: typically flash memory can be bought up to 64 Gbytes and for the same
price you can buy a hard disk of 500 Gbytes. However, for some types of
computer which have modest storage requirements electronic memory for the
bulk storage of files is now feasible. For example, some netbooks feature 16
Gbytes or 32 Gbytes bulk storage rather than a hard disk. Such computers
contain low power processors and the use of this memory compensates for this.
Future technologies
The last 30 years have seen amazing progress in miniaturization. There are,
however, some performance and size plateaus which will be reached
comparatively soon. For example, as you pack more and more components onto
a silicon chip, they become more error-prone due to random signals being
generated; another problem is that a phenomenon known as sub-atomic erosion
kicks in, destroying the structures in the silicon. There are also design problems
that occur with highly miniaturized circuits.
In the final chapter, I shall look at two radical ideas that will, if successful,
transform computing. These are the use of biological materials for circuits and
the deployment of quantum physics ideas in the development of processors;
these require very long-term research. There are, however, other low-level
technologies and materials that are currently being researched and developed for
computer circuits. They include the use of optical lithography to produce
components that are faster, the use of optical connections between components,
the replacement of silicon by carbon, and the use of superconducting materials
for the circuits within a computer.
Chapter 3
The ubiquitous computer
Computer ubiquity
There are a number of trends which have liberated the computer from the PC.
The first is the increasing miniaturization of electrical components – not just
hardware processors and memory, but also communication circuits and circuits
used for signal monitoring. The second is the growth of technologies that enable
wireless communication between computers. The third, and one that is often
overlooked, is the increase in the ruggedness of electronic circuits: I have
dropped my mobile phone so many times and yet it still functions.
Ruggedness means that computers can be attached virtually anywhere and still
function, even in the most extreme conditions; for example, climate change
researchers have attached computer-based measuring instruments to cargo ships
and oil tankers in order to measure the temperature of the ocean as they carry out
their journeys – such computers are battered by waves, have to undergo major
variations of temperature, and suffer from engine vibrations, but still function.
Computers are everywhere: in iPods, mobile phones, security systems, car
navigation devices, ATMs, automotive-electronic circuits, and so on. This has
three major implications. The first implication is that it gives rise to a new
discipline of ambient informatics in which data are available anywhere and at
any time.
The second implication is that since these data are generated by our normal
interactions in the world, for example by visiting a shop which senses a
computer-based device that we may be carrying or a device embedded in, say, a
pair of spectacles, or by driving to some destination using an intelligent satellite
navigation system, there are major implications in terms of privacy and security.
The third implication concerns the mode of interaction. I interact with my PC in
an artificial way in which I am always aware that there is a form of interaction
going on. Ubiquitous computing involves an interaction that, in a sense, is
natural because it is unobtrusive. Here’s an example. One of the first applications
of ubiquitous computing was associated with physical security and involved a
computer being embedded within an identity badge known as an ‘active badge’.
The computer emits signals which are picked up by monitoring points in a
building and provides information to staff about where colleagues or visitors are.
Wearing an active badge is unobtrusive: you don’t feel the wireless signals being
emitted. It is less obtrusive than your heartbeat which, very occasionally, you are
aware of.
In order to examine some of these implications, it is worth focusing on an
ambient technology that is mature and cheap, and for which there are a number
of working applications.
How would you like it if, for instance, one day you realized your underwear was reporting on your
whereabouts?
Clearly, an RFID tag attached to the packaging of an item of food poses few
privacy concerns: when the item is eaten the wrapping is normally disposed of.
However, tags attached to devices such as mobile phones and MP3 players and
to other items such as clothes, in conjunction with wireless readers situated in
shopping malls, toll roads and other public places, provide the technological
infrastructure for a surveillance society.
However, such tags could be very useful when an item is taken into a repair
shop. One suggestion that addresses this and privacy concerns is to have a tag
that has a section that can be ripped off when the item is bought and which
contains the wireless transmitter part of the tag, leaving basic data that could
only be read by a hand-held reader that would only be effective a few
centimetres away.
Privacy concerns have also been expressed over the potential use of RFID tags
that can be inserted into the human body. Already a company known as Verichip
has developed an RFID tag that can be surgically implanted into a human. The
chip has even been approved by the American Food and Drug Administration.
Clearly, there are some applications of this type of tag, for example carrying out
continual monitoring of vital functions such as blood pressure; however, its
wide-scale use raises major issues about privacy.
RFID represents the most advanced deployment of ubiquitous computing ideas.
However, there are many others which are almost as advanced or over the
horizon; it is worth looking at some of them.
Health
One of the major trends in this century has been the increasing amount of
integration that has occurred, with the computer carrying out the role of a data
processor and synchronizer between the hardware components. The best
example of this is the iPhone, which functions as a mobile phone, personal
organizer, MP3 player, and Internet access device.
In an article in the New York Times (5 November 2009), the columnist David
Pogue describes how he was asked to speak at the TED Med conference for 18
minutes on medical applications for the iPhone. TED conferences are organized
by a non-profit-making organization which has as its main aim the spreading of
ideas (their web site, http://www.ted.com/, is fantastic and contains videos of
most of the presentations).
Pogue was worried that he would not find many applications to talk about and he
would not fill the 18 minutes. The problem that he did encounter was that he
found far too many: over 7,000 applications – just for the iPhone. For the normal
user, these included Uhear, an application which enabled the iPhone to test
someone’s hearing; ProLoQuo2Go, a speech synthesizer for people with speech
difficulties that enables the user to touch phrases, icons, and words on the screen
of the iPhone and then speaks the text that they have identified; and Retina, an
application that allows a colour-blind user to point their iPhone at some coloured
item which would then identify the colour.
Pogue also discovered applications for medical staff. These included Anatomy
Lab, a virtual cadaver targeted at medical students that allows the user to explore
human anatomy; Epocrates, an electronic encyclopaedia which, for example,
would warn a doctor about the side effects that two prescribed drugs might have;
and AirStrip OB, which, for example, enables an obstetrician to monitor a
pregnant mother’s vital signs remotely.
Ubiquitous computing also has major applications in the care of the elderly. At
an international conference on the use of ubiquitous technology for assistive
care, four researchers from the computer science department at the University of
Texas, described the design of a simple and cheap wireless network that could be
deployed in care homes or the homes of the elderly. This is similar to the use of
the iPot detailed earlier that monitors the state of elderly Japanese in their
homes.
The network they described would support the sort of monitoring that could
easily implement a wide variety of applications, ranging from detecting
movement and issuing a message to a remote monitoring station when no
movement was detected after a certain time period, to the monitoring of vital
signs such as heart rate using RFID technologies. One of the major expansion
areas in consumer electronics over the next decade will be that of wireless-based
home entertainment where all the wired connections would be replaced by
wireless connections. The sort of network described by the researchers could be
easily piggybacked on top of these local networks.
Introduction
In this section, I hope I will convince you that to think of the computer as the
box that resides on a desk or as a lump of silicon that is used in control and
monitoring applications such as those found in avionics applications and
chemical plant monitoring is restrictive. I hope that I can convince you that by
connecting computers – their processors and their memory – together we can, in
fact, create larger computers; the ultimate instantiation of this being the Internet.
The key to the development of the global computer is its processor: an electronic
circuit that reads, decodes, and executes the instructions in a computer program
and carries out the intentions of the programmer. The speed of computers has
increased by orders of magnitude over the last 50 years. As soon as computer
technology advances in terms of performance (processor speed, size of memory,
and memory-access speed), new applications come along which require even
more speed, larger memory, or faster access to the memory, or there is a demand
for an improvement in a current application such as weather forecasting, where
hardware advances have made predictions more accurate and enabled the
forecasters to reach out further into the future.
Wicked problems
Before looking at how we create more and more powerful computers, it is worth
looking at some of the major problems they have to solve – so called ‘wicked
problems’ that require huge computational resources for their solution. The
world is full of problems that are wicked; they require huge amounts of
computer resource and human ingenuity to solve. One of these is the Human
Genome Project. This project discovered genetic sequences. If the sequences
obtained were to be stored in books, then approximately 3,300 large books
would be needed to store the complete information. The computational resources
required to search the gene database to look for genes that predispose someone
to a particular disease or condition are massive and require supercomputers.
The follow-on projects are progressing slowly since the computational demands
are huge and can only be satisfied by the supercomputers that I describe later in
this chapter, but it is progressing. There are, however, a class of problems that
are incapable of being solved exactly by the computer. They are known as ‘NP-
hard problems’.
One of the surprising features of many of these problems is that they are simple
to describe. Here’s an example known as the set partition problem. It involves
deciding whether partitioning a set of numbers into two subsets such that the
sum of the numbers in each set are equal to each other can be achieved. For
example, the set
and
(4, 17, 6, 1, 3, 11)
each of which adds up to 42. This looks easy, and it is – for small sets.
However, for much larger sets, for example sets containing tens of thousands of
numbers, the time taken to carry out the processing required to discover whether
the sets can be split is prohibitive; it rapidly reaches the point where, with even
the most powerful computers that have been constructed, the time would exceed
the known life of the universe.
Such problems are not academic: they often arise from practical applications; for
example, NP-hard problems arise in the design of VLSI circuits, the analysis of
genetic sequences, and in avionics design. One of the most famous NP-hard
problems is known as the travelling salesman problem and arose from a task
associated with the design of computer hardware. Here the aim is, given a series
of cities and the distances between them, to develop a route for someone (the
travelling salesman) that takes them to each city at the same time as minimizing
the route and hence the amount of petrol used.
In practice, the vast majority of NP-hard problems do not require an exact
solution – a solution close to the exact solution would do. For example, there is
an NP-hard problem known as the bin-packing problem where the computer is
given a number of containers and a series of boxes and the aim is to minimize
the amount of slack space in the containers. For this problem, it is possible to get
within 99.5% of an optimal solution.
Because of this, a large amount of research connected with NP-hardness
concerns what are known as approximate algorithms. These, as the name
suggests, are descriptions of computer programs that produce approximate but
good enough solutions.
Supercomputers
The first computers had a single hardware processor that executed individual
instructions. It was not too long before researchers started thinking about
computers that had more than one processor. The simple theory here was that if a
computer had n processors then it would be n times faster. Before looking at the
topic of supercomputers, it is worth debunking this notion.
If you look at many classes of problems for which you feel supercomputers
could have been used, you see that a strictly linear increase in performance is not
achieved. If a problem that is solved by a single computer is solved in 20
minutes, then you will find a dual processor computer solving it in perhaps 11
minutes. A 3-processor computer may solve it in 9 minutes, and a 4-processor
computer in 8 minutes. There is a law of diminishing returns; often, there comes
a point when adding a processor slows down the computation. What happens is
that each processor needs to communicate with the others, for example passing
on the result of a computation; this communicational overhead becomes bigger
and bigger as you add processors to the point when it dominates the amount of
useful work that is done.
The sort of problems where they are effective is where a problem can be split up
into sub-problems that can be solved almost independently by each processor
with little communication.
The history of supercomputing can be split into two phases: the 1970s and the
1980s and the years after these two decades. Before looking at the history, it will
be instructive to see how speeds of supercomputers have increased over the last
70 years.
The first real supercomputers were developed by two companies, CDC and Cray.
The most successful designs were based on a vector architecture. This is based
on a processor that is capable of carrying out a number of instructions on data
simultaneously, for example adding a thousand numbers together at the same
time. The computers made by the Cray Corporation were the iconic
supercomputers. Figure 5 shows a CRAY XM-P48, an example of which was
situated at the Organisation Européenne pour la Recherche Nucléaire (CERN). It
resembles the sort of furniture designed for the waiting room of a 1980s
advertising company. However, when it was delivered to research labs around
the world it was the fastest computer in existence: in 1982 it was a state of the
art computer it had a theoretical top speed of 800 MFLOPS from both its
processors (an MFLOP is a million instructions that carry out some arithmetic
operation such as adding two numbers together).
Supercomputers were delivered to a variety of customers including CERN, the
Los Alamos National Laboratory in the USA, the Boeing Corporation, the
British Meteorological Office, the National Aerospace Laboratory in Japan, the
US National Nuclear Security Administration, and the US Department of Energy
Laboratory at Oak Ridge.
The customers for such behemoths betray the sort of applications they were used
for: nuclear experiment simulations, weather forecasting, simulating the day-to-
day processes that occur in a nuclear reactor, and the aerodynamic design of
large planes. The key similarities between each of these applications are the
volume of computation that needs to be carried out and the fact that most of the
computations involve number crunching.
‘Vector architecture computers’ dominated supercomputing until the 1990s when
mass-produced processors started becoming so cheap that it became feasible to
connect them together rather than design special-purpose chips. One of the
fastest computers in the world is the eCray XT5 Jaguar system which has been
installed at the National Center for Computational Sciences in the USA. It has
around 19,000 computers and 224,000 processing elements, based on standard
hardware processors rather than bespoke designed processors.
Even small-scale research establishments can now get in on the act, often by
developing their own version of a supercomputer out of commercial hardware
processors. These computers are known as Beowulf clusters. Such computers are
based on readily available processors such as the ones you find in your home
PC, the LINUX operating system – a free operating system often used by
researchers for scientific computation – and other open-source software.
The power of Beowulf computers is huge and they are cheap to make: the
Microwulf cluster that was developed by computer science professor Joel Adams
and student Tim Brom weighed just 31 pounds (small enough to fit in a suitcase)
and had speeds of up to 26 Gflops. The cost of this computer in early 2007 was
about $2,500.
In 2009, Intel, the leading chip maker in the world, announced a new processing
chip containing 48 separate processors on a single chip. Such chips used in a
Beowulf computer would bring real supercomputing power to the desktop.
The grid
So, what is grid computing? Well a computer grid is a collection of conventional
computers that are linked together using Internet technology and usually
connected by high speed communication circuits. There are two ways of looking
at the grid: that it is the continuation of mainstream supercomputing ideas – this
is the view taken by researchers – or that it is a new way of optimizing the use of
computers in an enterprise. You will remember that computer processors have a
large amount of slack when they are used: they can be idle for as much as 95%
of the time. The vendors of commercial grid software make the point that buying
their product will reduce an enterprise’s hardware costs by a significant amount.
Grids can be formal or informal; the former is usually supported by commercial
software which maintains the grid, allowing file sharing and processor sharing,
the latter is a loose confederation of computers that carry out some large task. A
good example of an informal network is folding@home. This is a network that is
coordinated by the Stanford University Chemistry department. Its aim is to carry
out much of the number crunching associated with protein folding; this is work
associated with the Human Genome Project and which attempts to find cures for
serious diseases such as Parkinson’s Disease and Cystic Fibrosis. The network
has hundreds of thousands of computers connected to it with a combined speed
approaching 4 pFLOPS.
Grid computing represents a subtle shift from the idea of a supercomputer
carrying out a massive number of calculations in order to solve a wicked
problem towards commercial applications outside the realm of number
crunching. In application terms, it has influenced the idea known as cloud
computing which regards the Internet as a central utility for all applications – not
just number crunching – and which threatens to overturn the current way that
computers are used commercially. I will discuss this further in Chapter 7.
Afterword
What this chapter has shown is that to think of a computer as just a box sitting
on a desk or as a piece of silicon-based circuitry in something like a DVD player
or a set of traffic lights is too limited: that regarding the Internet as a large
computer raises a host of interesting questions which I will address in Chapter 7,
there I discuss an evolving model of commercial computer use that takes much
of the processing and data away from individual computers and delegates it to
powerful servers maintained by commercial enterprises.
This is also a theme I shall look at in the final chapter, where I will examine the
work of Jonathan Zittrain and Nicholas Carr. Zittrain has posited that the
freewheeling growth of the Internet has enabled a new age of creativity amongst
computer users, but at a cost in terms of problems such as security. His book The
Future of the Internet describes a possible scenario where commercial pressures
close down much of what the ordinary computer user can do to the point where
the home computer is relegated to something like the dumb terminal of the
1960s and when a golden age of computational creativity ends.
Carr uses the analogy of the Internet as a computer but concentrates on an
industrial viewpoint. He posits a future where computing power becomes a
utility in the same way that electrical power becomes a utility and where the role
of the computer – at least for the home owner – is reduced to that of a dumb
terminal. I shall return to this theme in the final chapter.
Chapter 5
The insecure computer
Introduction
During the 2009 Iranian election protests, foreign activists disabled the
computers acting as web servers and belonging to the Iranian government by
carrying out what is known as a denial of service attack. The attack took place as
part of the protests against what many saw as a corrupt election result. The
activists flooded the servers with hundreds of thousands of requests for web
pages to the point where the processors of the web servers were overwhelmed by
the amount of data being sent. This effectively closed them down.
In 1999, a computer virus known as Melissa was released into the Internet. What
the virus did was to infect the Outlook email program which formed part of the
Windows operating system. The virus was spread using email. If someone
received an email that contained the virus as an attachment and then clicked on
the attachment, their computer would be infected. Once a computer was infected
by the virus, it accessed the contact list of Outlook and emailed the first 50
contacts on this list and sent the virus to them. This was a particularly pernicious
virus, not just because it spread rapidly, but because it also emailed documents
that it found on an infected computer to other computers – including confidential
documents.
In 2007, the British government reported that the tax details of over 25 million
people entrusted to Her Majesty’s Revenue and Customs department had been
lost. The details were stored on two CDs which were sent in the post to another
department.
These are just three examples of computer insecurity. The first two involved
technical failings while the last was a managerial failing. The aim of this chapter
is to look at the threats to computers and how they can be countered. It will also
look at some of the entwined issues of privacy.
Computer crime
There are a large number of crimes associated with the computer, including:
fraud achieved by the manipulation of computer records; in some countries,
spamming, the sending of unrequested emails usually selling some product or
service, is illegal; accessing a computer system without permission; accessing a
computer system in order to read, modify, and delete data without permission;
stealing data or software; industrial espionage carried out via a computer;
stealing the identity of someone by accessing their personal details; accessing
financial data and stealing funds associated with that data; spreading viruses; and
distributing child pornography.
A typical non-technical crime is where an employee has access to a financial
system and issues a number of cheques payable to themselves and/or others.
Such crimes have often involved figures of over a million dollars before the
perpetrator was caught.
In 2008, a job vacancy was posted on a web site that contained adverts for
translators. The job involved correcting texts which had been translated into
English from another language. Applicants were asked to provide data such as
that normally found on a CV, plus their bank account details. The ‘company’ that
issued the advert was connected to a crime syndicate in the Ukraine. Anyone
who applied would have their account siphoned of cash and then used for a
money-laundering scam.
In 2009, a survey of American computers discovered that many millions of
computers in the United States were ‘infected’ with fake security software. This
is the result of a very sophisticated scam in which, when a computer user visited
a particular site, they saw an alert in a pop-up window that told them that they
had a virus infection and that free software could easily be downloaded and be
used to detect and remove the virus along with many others. The software was,
of course, a virus that was capable of discovering financial details of the user of
the computer.
In 2006, three Russian hackers were jailed for eight years for carrying out an
attack known as a denial of service attack on British bookmakers. In this type of
attack, a computer is flooded with messages – sometime they are requests for
web pages and sometimes they are email messages – with the result that the
computer that is attacked is disabled and cannot respond to normal users’
requests. The hackers targeted the web server of a major online bookmaker, who
refused to pay a large ransom, their computer was blocked during the Breeders’
Cup races, and the company lost more than £160,000 for each day of the attack.
An important point to make about computer crime is that many crimes can be
carried out by computer users who have little technical knowledge. The
examples above require varying degrees of technical skill with the money-
siphoning example requiring the least. Typical non-technical crimes include:
rummaging through large refuse bins for computer printouts containing sensitive
information (a process known as dumpster diving), taking a photograph of
important information about a computer system written on a white board using a
mobile phone, and stealing a password and using that password to masquerade
as the user of a computer system.
All these non-technical examples require, at most, the sort of computer
knowledge that you gain by using a home computer for word processing or
spreadsheet work. It is no surprise, then, given that computer crime can be
carried out in a technical or non-technical way, that there is a variety of technical
and non-technical defences against computer crime.
would be transformed to
Ecguct ycu jgtg
55Tr3e343E4((!!dfg21AVD90kk – 9jk}
provides a high degree of security, the only problem being that it can be very
difficult to remember and would need to be stored somewhere such as a wallet or
within a drawer in a desk.
While there have been a number of attempts at making the key distribution
process secure, for example by encoding keys on biometric smart cards and
devising secure protocols for the distribution of a key or set of keys, key security
for symmetric encryption and decryption still remains a problem.
One potential public solution to this problem was developed by two American
computer science researchers, Whitfield Diffie and Martin Hellman, with the
first practical implementation of their ideas by three other researchers: Ronald
Rivest, Adi Shamir, and Leonard Adleman. I use the word ‘public’ since
declassified documents from the British government indicate that three British
researchers, Clifford Cocks, Malcolm Williamson, and James Ellis, were also
developing work in this area at GCHQ, the British government’s top-secret
communications headquarters in Cheltenham. Their work was carried out in the
early 1970s.
The solution that was developed by these researchers was known as public key
cryptography or asymmetric cryptography. At its heart, it relies on the inability
of computers to solve difficult problems that require massive computational
resources. The term ‘asymmetric’ best describes the technique, as it requires two
keys, a public key and a private key, that are different.
Let us assume that two computer users A and B wish to communicate using
asymmetric cryptography and each has a public key and a private key. The
public key is published by each of the two users. If A wants to send an encrypted
message to B, then she will use B’s public key to encrypt the message. When B
receives the message, he will then use his private key to decrypt the message.
Asymmetric cryptographic systems have a number of properties; a very
important one is that the public key that is used to send the message cannot be
used by someone who intercepts the message in order to decode it.
At a stroke, public key cryptography removed a major problem associated with
symmetric cryptography: that of a large number of keys in existence some of
which may be stored in an insecure way. However, a major problem with
asymmetric cryptography is the fact that it is very inefficient (about 10,000 times
slower than symmetric cryptography): while it can be used for short messages
such as email texts, it is far too inefficient for sending gigabytes of data.
However, as you will see later, when it is combined with symmetric
cryptography, asymmetric cryptography provides very strong security.
One strong use is to provide a form of digital identity as a digital signature in
which the mathematical properties of the key generation process are used to
provide authentication that the person who purports to have sent a message is, in
fact, that person.
A second use is in sending secure messages, for example between a bank and a
customer. Here the identity of a user and the web server is mediated by a digital
identity check. It is worth saying here that you should not rely solely on
technology, but use common sense. For example a popular fraud is to send a user
an email purporting to be from a bank asking them to check into a rogue site
which masquerades as the bank site and extracts out account data that is used for
siphoning funds. The Internet is full of villains who are experts in subverting the
technology.
There are a number of technologies that are used to provide this security; almost
all are based on a combination of symmetric and asymmetric cryptography. One
very popular security scheme is known as the Secure Sockets Layer – normally
shortened to SSL. It is based on the concept of a one-time pad. This gives an
almost ideal cryptographic scheme. It requires the sender and receiver to have a
document known as a pad which contains thousands of random characters. The
sender takes the first n characters, say 50, and then encrypts the message using
them as the key. The receiver, when they receive the message, takes the fifty
characters from their pad and decrypts the message. Once these characters are
used for the key, they are discarded and the next message is sent using the next n
characters.
A major advantage of the one-time pad is that once a password is used it is
discarded; another advantage is that any document can be used to generate a key;
for example, a telephone directory or a novel could equally well be used. The
main disadvantage of a one-time pad is that they require synchronization
between the sender and receiver and a high degree of security for the printing,
distribution, and storage of the keys.
SSL uses public key cryptography to communicate the randomly generated key
between the sender and receiver of a message. This key is only used once for the
data interchange that occurs and, hence, is an electronic analogue of a one-time
pad. When each of the parties to the interchange has received the key, they
encrypt and decrypt the data employing symmetric cryptography, with the
generated key carrying out these processes. If the two parties want a further
interchange of data, then another key is generated and the transfer proceeds as
before.
Another technical defence against computer crime is the password. The theory
behind passwords is simple: that the user of a computer remembers some set of
characters and uses them to access a web site or a file – the password, in effect,
acts as a proxy for the user’s identity. Sometimes the password is used as an
encryption key. Passwords offers major advantages; however, password schemes
can be less secure because of human failings.
In general, computer users choose poor passwords. The best passwords and
cryptographic keys are those which are long and which contain alphabetic,
numeric, and special characters such as !. For example, the password
s22Akk;;!!9iJ66sO – iKL69
is an excellent password, while ‘John’ is a poor one. In the 1990s, the online
bank Egg discovered that its customers chose poor passwords. For example,
50% chose family members’ names. Charles and Shari Pfleeger, in their
excellent book Security in Computing, provide sensible advice on password
choice: don’t just use alphabetic characters, use long passwords, avoid names or
words, choose an unlikely password that is memorable such as
Ilike88potatoesnot93carrots!!
change your password regularly, don’t write your password down, and never tell
anyone else what your password is.
As well as passwords, there are a number of hi-tech ways of identifying yourself
to a computer. One area that has attracted a considerable amount of attention is
biometric identification. Here, technologies that recognize a computer user from
unique physical traits are employed, often in conjunction with passwords.
Typical traits that can be used include fingerprints, iris patterns, a user’s face,
their voice, and the geometry of a hand. Many of the techniques are in the
research phase with some having unacceptably high error rates and also being
susceptible to attack. For example, an active area of voice technology is to
simulate a person’s voice from a set of recordings.
Non-technological security
In the advice I quoted from the Pfleeger and Pfleeger book Security in
Computing, there was the injunction not to tell anyone your password. This is a
good example of a precaution against non-technical security breaches and the
problems that computer users face over and above those associated with viruses
and other illegal technologies.
The former security hacker Kevin Mitnick, in his book The Art of Deception,
describes a number of attacks on computer systems which require no technical
knowledge at all. A number of hackers have used a variety of techniques
categorized as social engineering to penetrate a computer system – not by
employing worms, viruses or operating system trapdoors, but by taking
advantage of human frailties. In his book, he states that social engineering
…uses influence and persuasion to deceive people by convincing them that the social engineer is
someone he isn’t, or by manipulation. As a result, the social engineer is able to take advantage of
people to obtain information with or without the use of technology.
Borders UK
This morning, as I started writing the first draft of the first chapter of this book, I
heard that Borders UK, one of my favourite bookshops, was in financial trouble
– four days later, they went into administration. The reason quoted in the BBC
news was that the company was finding it very difficult to compete with online
retailers such as Amazon. It is much more expensive to run a chain of
bookstores, some of which are situated in prime shopping locations, than a
warehouse, a web site, and a call centre. Just as a comparison I looked at the
price of a book that I bought recently. In a city-centre shop, I would pick it up at
£34, while it was currently advertised on the Amazon web site at £20.13.
While the employees of Borders are able to use computers to help them in
answering customer queries and ordering out-of-stock items, in the end they
have threatened their jobs. I did think that bookstores had something of a future,
since they offered browsing facilities, until I saw that a number of booksellers,
via a system known as Google preview, allow visitors to their web site to browse
the table of contents of a book and many of the pages within the book. For the
book trade, the computer is disruptive.
My favourite record shop in Milton Keynes was Virgin Records which, after a
management buyout, renamed itself Zavvi. Shortly thereafter, the Zavvi chain
folded. One of the reasons quoted was the availability of cheaper music
downloads from sites such as iTunes. Again, the staff at Zavvi found the
computer useful in carrying out their jobs, but, in the end, it killed off their trade.
For the music trade, the computer is disruptive.
I can read the national newspapers from my computer; occasionally I do, but
most of the time I access the BBC news site, a site that has won a number of
awards for its design, implementation, and content. The increasing availability of
news on the Internet has had a dramatic effect on newspaper sales. Newspapers
across the Western world have been coping with a slide in advertising revenue,
declining circulation, and a movement of readers to free news online. According
to the USA Audit Bureau of Circulations, the average daily circulation for 379
daily American newspapers was down 10.62% in the April to September 2009
period, compared with the same period in 2008. The computer has helped the
reporters who file copy for their newspapers: word processors are a fantastic
piece of software. However, the computer has led to major layoffs and staff
reductions in many newspapers. For the newspaper industry, the computer is
disruptive.
Another disruption associated with newspapers is the reduction in the amount of
space devoted to reviews – for example, book reviews – and the fact that review
staff, both permanent and freelance, are often the first to feel the chill winds of
redundancy. Book reviewers and film reviewers used to be very powerful
figures: their opinion could kill off a book or film or elevate it in the popular
listings. There are now a large number of sites that review films and books.
Some of them are just devoted to reviews – a site such as rottentomatoes.com –
or provide reviews as part of their business: a good example here is the Amazon
web site which, although it is devoted to the selling of a variety of goods,
includes reviews of the goods in their catalogue – the reviews being written by
customers.
In this section of the book, I shall look at some of the ways that computers have
affected us in terms of how we interact with others, in terms of employment, and
in terms of how technology is improving our lives; I will also look at some of the
ways that might affect us negatively.
Disruptive technologies
One of the key writers about the disruptive effects of technology is Clayton
Christensen. His two books, The Innovator’s Dilemma and The Innovator’s
Solution, look at how technological devices such as the hard disk storage unit
can have major effects on industry.
Disruptive innovations can be placed in two classes: low-end disruptive
innovations and new-market disruptive innovations. The latter is where a
technological advance creates new business opportunities, changes the behaviour
of consumers, and often leads to the elimination of industrial sub-sectors. A
lower-end disruptive innovation affects current technological objects and
services and reduces their price and consequently their availability.
The computer has given rise to disruptions covered by both categories. For
example, when the mobile phone was designed and developed the companies
that manufactured them added messaging as an afterthought, not thinking that it
would be a feature that would be used so much, to the point where it is
inconceivable that a mobile telephone would now be sold without text
messaging facilities. This is an example of new-market disruption which
obliterated much of the pager industry.
An example of a lower-end disruption is that of open-source software which I
discuss later in this chapter. This has enabled computer users to use operating
systems, word processors, spreadsheet systems, and photo utilities which cost
nothing – a true reduction in price.
Open-source development
When you use a computer to access the Internet, you have a possible audience of
hundreds of millions of users and a potential to link those users together.
Wikipedia is an example of mass collaboration: all the entries have been initiated
and edited by volunteers. Another, equally impressive, example is the rise of
open-source software. This is software that differs from commercial software in
a number of ways; first, it is free; second, the program code of open-source
software is available for anyone to read; and – this is where the term ‘open
source’ comes from, ‘source’ referring to the program code – third, anyone can
take the code, modify it, and even sell it as a product.
There is a large quantity of open-source program code in existence; the two most
used are Apache and Linux. The former is the software that is used to dispense
pages from a web server. Currently, it is estimated that something like 65% of
web servers use Apache. Linux is an even more impressive story. It is an
operating system, and a competitor to the popular Windows operating system. It
has its roots in a simple operating system known as MINIX which was
developed by a computer science academic, Andrew Tanenbaum, in order to
teach his students about the design of large systems.
Linux was developed by Linus Torvalds, who was a student at the University of
Helsinki. He decided to improve on MINIX and started developing Linux,
initially inspired by some of the design ideas used for MINIX. The original
implementation of Linux was so good that it came to the attention of a number
of software developers at the same time that the Internet was blossoming. The
result was that the system evolved into being maintained by programmers who
devote their time for nothing.
Linux is very impressive in terms of both penetration and in terms of what it
offers. A recent survey showed that 80% of the most reliable web-hosting
companies used Linux and that it is the operating system of choice for many
supercomputers. There is also a desktop version of Linux which contains the
usual array of software that you would expect: word processors, graphics
programs, image editors, email programs, and audio players.
In desktop terms, Linux still has some distance to go before it threatens the very
popular Windows operating system. For example, it is sometimes fiddly to
install new software for the desktop version. But it is still the most impressive
example of the trend of computer users creating a large, complex artefact outside
established institutions.
Advertising
The computer has had a major effect on the revenue earned by both television
and newspaper companies. This is mainly down to the use of online adverts, but
is also due to the fact that television programmes containing adverts can be
recorded and, when wound back, the adverts can be fast-forwarded. The key to
the disruption that has occurred in these industries is targeting. This concept is
nothing new: all it means is that you place your adverts where you think they
will get the maximum readership and payback. For example, if you had an
advert for study tours to Greece which involved visiting ancient sites and
listening to renowned Greek classicists, then you would probably have targeted
the advert at a newspaper such as The Independent.
The computer and the Internet have changed the face of targeting and made it
more effective. The major technology that has been disruptive is AdWords, a
Google technology that earned that company billions of dollars. AdWords is
based on what is known as a pay-per-click model. An advertiser who wants their
products or services advertised on Google specifies an amount that they will pay
when an online advert appears in a page retrieved when someone carries out a
Google web search.
The advertiser specifies what keywords will trigger the adverts, so that if a user
types the word ‘Angling’ into the Google search box, they will find, as I did
when I typed in the word, that three adverts for online fishing tackle sites were
displayed, one advert for fishing holidays displayed, an advert for angling items
at Amazon shown, a link to a site that marketed a revolutionary way of throwing
fish bait into a river or lake displayed, and a link to a site which collects together
links associated with angling displayed.
AdWords represents a much more fine-grained approach to advertising than is
found in conventional media. Its effect has been marked. In the third quarter of
2009, advertising revenues earned by American newspapers dropped by 28% as
compared with the corresponding period in 2008; revenues from the first nine
months of 2009 also dropped by 29%. Clearly, a component of this decline is the
credit crunch problems experienced by American firms in these years; however,
it is an important part of a trend that has occurred since the early part of the
decade.
The television industry has also suffered drops in income. For example,
according to analysis carried out by The Times, Google earned £327 million in
the United Kingdom compared with £317 million for all of the British
commercial channel ITV1’s output during the period between July and
September 2007.
IT outsourcing
In 2011, my BT Internet connection failed; this was, for me, the equivalent of
having my electricity or water cut off (something discussed in the final chapter
of this book when I look at the work of Nicholas Carr). I rang the BT helpline
and an Indian voice replied. Over the next 20 minutes, using the Internet, he took
control of my computer. He opened folders, changed some settings, and restarted
some programs, and, lo and behold, my connection restarted. I’m not often agog,
but this time I was. I watched my mouse pointer travel over my screen guided by
an invisible hand – I had the feeling I get when I drive past Heathrow airport and
see a Boeing 747 taking off: a feeling of knowing that what I saw was possible,
but not quite believing it. For the record, the fault was not BT’s: I was in the
habit of switching my Internet modem on and off and, during the off period, it
had missed an important update.
This is an example of outsourcing. In a number of conventional industries,
outsourcing has been the norm. For example, much of the clothing sold in the
United Kingdom has been manufactured in countries such as China, India, and
the Dominican Republic; and electronic devices are often made in low-labour-
cost economies, for example the iPod is made in China. However, outsourcing is
now common in systems development.
Pinsent Masons, one of the United Kingdom’s leading law firms, have listed the
arguments for using an external software developer: lower costs because of
efficiencies and economies of scale; access to high-level IT skills (for example,
software developers in India are some of the most accurate and sophisticated
coders in the world and use advanced tools for systems development; they also
have the largest proportion of companies certified to produce software of the
highest reliability); removing non-core business from a company’s
infrastructure; minimizing large capital expenditure on IT infrastructure; and
having some degree of certainty of future IT spend.
The Internet has provided an infrastructure that enables customers to talk to
systems analysts in other countries via video links, send documents via emails,
and test systems via live links. The result is that computer-based development is
increasingly being moved offshore. For example, in 2006, the research company
Computer Economics reported that 61% of all the American companies they
surveyed outsourced some or all of their software development.
As I sit typing this chapter, three years after one of the greatest upheavals to our
financial system, the future of IT outsourcing is unclear; on the one hand,
companies are cutting back on IT investment, on the other hand, offshore
outsourcing companies offer significant savings in investment. These two
factors, together with increases in IT skills levels, will determine the growth of
outsourcing over the next few decades.
The type of outsourcing I discuss above is thick-grained outsourcing in that you
hire a company to carry out some set of IT functions. There is also a much
thinner-grained version. There are now a number of web sites that provide
details of software staff for hire (often these programmers are from Eastern
Europe). So, if you have a project that requires a small amount of software
development over a limited time, then video links and emails can put you in
touch with developers who are competitive compared with Western European
rates.
Citizen journalism
The term ‘citizen journalism’ is used to describe how ordinary citizens have
become empowered by cheap computers and Internet connections to involve
themselves in the reporting of reaction to events and publishing news articles
and opinion articles. There are a number of technologies that are used for this:
the main ones are blogs (online diaries), podcasts, video footage, digital
photographs, and web sites.
There are a number of manifestations of this phenomenon. There are news blogs
which aggregate news and contain comments not just by the blogger, but also by
other Internet users who are able to insert comments at the end of the blog text.
These blogs can be general in content or specific to a particular topic such as
technology.
There are also news web sites which contain the same type of material that
would be found in the web site of a conventional newspaper. Some of these sites
take a neutral viewpoint; often, though, they report and comment on the news
from a particular position, for example from the point of view of the Green
movement.
Some of the most interesting manifestations of citizen journalism are
participatory news sites where computer users post articles, other users tag the
articles with descriptors that provide easy indexing, and, on some sites such as
Digg, users vote on which articles are interesting. The articles with the greatest
number of posts are then promoted to a prominent position on the web site.
One of the results of the drop in price of computers and silicon circuits has been
the accompanying drop in price and availability of digital devices. One of the
areas where this has been most marked is in digital recording. To my left, while I
write this chapter, I have a digital recorder made by the Marantz company. It
costs about £400, produces sound quality comparable to the recorders used by
radio interviewers, and is a fraction of the cost and more convenient than the
tape-based recorders of the preceding decade. Anyone can buy two condenser
microphones, a cheap sound mixer, and one of these recorders for about £800,
and can turn themselves into an Internet radio station. Many do.
The computer and the Internet have provided a medium for free expression that
was only available to journalists up until the beginning of this decade. The most
that anyone could have expected previously was a letter to the editor which
might or might not have been selected. Now, as soon as there is a major story,
the Internet is swamped by traffic.
An example of this effect happened in November 2009. A hacker successfully
accessed a computer belonging to the Climate Research Unit at the University of
East Anglia. This is one of the foremost global warming research units in the
world. Within days, there was a maelstrom of emails, audio podcasts, video
podcasts, blog entries, and news stories circulating within the Internet. The
director of the unit stepped down while an independent review looked into the
claims.
Five days after it appeared, I did a search on Google using the word
‘Climategate’, the term used by climate sceptics to label the incident. There were
over 13 million hits. I also checked on the video YouTube site, and there were
over 16,000 hits when I typed in the same keyword.
It is clear that in one direct way (its ability to spread news) and one indirect way
(its lack of security) the computer has had and will have a major effect on
journalism.
Digital photography
For a long time I used film cameras. I would buy a film – usually containing
enough space for 36 exposures – at the local chemist or photographer’s, and load
it into the camera, take the photographs, and then return the exposed film to the
chemist for developing. The chemist would then send the film to a developing
laboratory and, eventually, I would collect my ‘snaps’. Hobbyists would
sometimes develop their own photographs; for this, they needed to soak the film
in a variety of chemicals and then take the negatives and place them in a device
known as an enlarger. This would then produce an image on a sheet of paper
soaked with chemicals. The paper would then be developed in a number of trays
containing more chemicals. All this took place almost in the dark using just an
infra-red light.
I now take photographs with a digital camera, and at the setting I use, I can take
hundreds of photographs. All I need do to look at them is to load them into a
computer and use one of a number of image viewer and manipulation programs
that are available.
A hobbyist who wanted to modify a film-based image would have to carry out
some complex, error-prone manipulations; for example, they would have to pass
cardboard shapes between the beam of the enlarger and the photo in order to
restrict the light and hence darken a section of the image. Modern photograph-
manipulation programs such as Photoshop provide facilities that enable the
photographer to manipulate a photograph in a variety of ways, for example
changing colours, changing exposure on the whole of a photograph or part of a
photograph, tinting, creating effects similar to those achieved by post-
Impressionist painters, and picking on areas in a photograph and enlarging them.
In 2002, the sales of digital cameras surpassed those of film cameras. Whenever
I go to a tourist spot I now very rarely see a film camera in use. The trend since
then has been for digital cameras to have better and better facilities, such as a
greater resolution. This change is due to hardware improvements, faster
processors, the increase in density of pixels in image sensors, and a reduction in
circuit size. There has also been an increase in the facilities photographic
software offers. For example, there is a technique known as High Dynamic
Range imaging (HDR) that can be used to produce ultra-realistic photographs
which are combined from a number of versions of a digital photo that are taken
with different exposure values.
There has also been a trend for digital cameras to be embedded in other devices,
primarily mobile phones. The growth of mobile phones has been staggering. In
2002, there were approximately 1 billion mobile subscriptions and one billion
fixed-line subscriptions in the world. In 2008, there were approximately 1.27
billion fixed-line subscriptions and 4 billion mobile subscriptions. The vast
majority of these phones in the Western world feature a camera. One effect of
this is that it has created a citizen journalist movement. For example, Janis
Krums produced the first photo of US Airways flight 1549 in the Hudson river
after ditching because of engine problems. He took the picture on his iPhone
minutes after the plane ditched in the water – a dramatic photograph showing
passengers standing on one of the plane’s wings while others huddled on the
floating emergency chute. In June 2009, there were major protests in Iran about
the alleged rigging of the presidential election; many of these protests were
broken up violently by the authorities. Pictures showing this could be found on
the Internet minutes later, as protestors sent photographs taken with their phones
to friends outside Iran.
There are a number of other effects of the rise of digital photography. One
obvious one is the demise of the chemical developing laboratories. The
increasing power of computers and their increasing miniaturization has meant
that such laboratories had no easy upgrade path to change themselves into digital
laboratories, since the local photography shop or chain chemist can now invest
in sophisticated digital photographic equipment – all that is left now are a few
very specialist firms which cater for the fine art industry, for example
photographers who take highly detailed black and white photographs.
There are some less obvious effects. A number of cultural commentators have
raised the problem of trust in photographs. For example, political opponents
circulated a digital photo of presidential candidate Senator John Kerry next to
Jane Fonda at an anti-Vietnam war rally – the photo was doctored. There are a
number of examples of institutions inserting faces of black people into
photographs to give an impression that they are more raciably diverse.
All of this raises questions about which images we can trust. Clearly, this sort of
manipulation could have been done with film technology, but it would be much
less easy to do. To doctor a digital image using a computer program is far easier:
it took me 4 minutes to transpose a picture taken of my wife in our village and
add a background taken in Avignon to give the impression that she accompanied
me on my trip.
Digital photography also has another citizen journalism effect over and above
the use of the mobile phone. The Abu Ghraib incident arose from the sending of
digital photographs of American soldiers mistreating Iraqi prisoners to friends
and acquaintances.
The digital camera also provides more opportunities for creativity. Artists such
as John Simon, Shawn Brixey, and Pascal Dombis routinely use the computer in
their work. Dirck Halstead, a professor at the University of Texas, carried out a
survey of the readers of the magazine The Digital Journalist that asked the
readers about their attitudes to digital camera technology. All of them preferred
digital technology; one surprising result from the survey was that the creativity
that it offered was more of an advantage than factors such as speed and
convenience.
Everyone will gain by making reading easier and more accessible – and by widening the appeal to
younger people (i.e. mobile audiences). High street book shops need to become service providers for
readers – technology, some printed books (e.g. children’s books, maps, art books), advice, author
readings, seminars, learning centres, event hosts, etc.
One scenario is that the conventional chain bookshop disappears under pressure
from online competition, but the local bookshop makes a comeback by
becoming a venue and social centre and perhaps a micro-publisher.
My view is that it is not clear what will happen with respect to the balance
between conventional book sales and the sales of e-books. However, here is one
scenario. That there will be an increase in e-books that lie outside the
considerable categories of fiction and non-fiction that have a personal viewpoint.
For example, a prime area for e-books is encyclopaedias and dictionaries. The
online project Wikipedia has already shown the way here: each entry not only
contains text on a Wikipedia article, but also cross references other articles –
often too much – and contains many cross-links to relevant items such as papers,
news articles, and blogs.
Another area where e-books could take off is travel books where, as well as
conventional text, the book would contain items such as video clips and
photographs. As an experiment, I typed in the keywords ‘Musee d’Orsay’, a
fantastic art gallery in Paris that has been converted from a railway station that
holds some of the greatest 19th-century and 20th-century paintings. I got 47,000
hits. I looked at the first two hundred and, with a few exceptions, the quality of
the photography is excellent and provides a good indication of the variety and
importance of the holdings in one of my favourite art galleries. I also checked on
the video hosting site YouTube and received 1,800 video clips.
Another area that could experience explosive growth is that of instruction
manuals, for example cookbooks and car-maintenance manuals. Here, video
clips showing some of the more tricky cooking techniques would be interspersed
with conventional text and photographs.
There are many other categories of book that could be transformed by e-book
technology. For example, school textbooks could contain video podcasts
explaining a difficult point. However, at the end of the day, there is a huge
edifice that e-books need to address: that of the novel and the non-fiction book
which has a personal viewpoint, such as a single-writer history of the Second
World War.
There are a number of factors that may accelerate the trend. The first is the
availability of free material – open source text if you like. Project Gutenberg is a
project that has a long history: it started in the early 1970s when its founder,
Michael Hart, typed the Declaration of Independence into the mainframe
computer at the University of Illinois. Since then volunteers have typed and
digitized over 30,000 books into the Project Gutenberg web site. All the books
are out of copyright and contain a high proportion of esoterica. However, there
are many novels written by authors such as Dickens, Forster, and Scott Fitgerald
which can be loaded into an e-reader – legally and for free.
A wild card that may affect the growth of novels and non-fiction work is Google.
Over the last six years the company has been digitizing books on an industrial
scale. This has been done in conjunction with libraries around the world such as
those at Columbia University and Cornell University. In 2009, the current count
of Google digitized books stood at 10 million. Most of these books were
available for partial search but around a million could be read in their entirety. In
2009, Sony, who produce one of the leading e-readers, announced that as an
initial step one million books from the Google collection would be made
available for download to their latest generation of e-reader.
Another factor that may drive the cost of books down is that of online
advertising. Every year I go to the Oxford Literary Festival – usually with my
wife. Last year we attended a session in which two of my favourite authors were
interviewed and fielded questions. They were Donna Leone, who writes crime
novels based in Venice, and Kate Atkinson, who writes high-quality,
uncategorizable novels. Before we attended their session, I predicted to my wife
that the vast majority of the audience would be women and middle class. A
quick head-count confirmed that about 95% were certainly women – I suspect
that the same proportion were middle class. This congregation is a marketer’s
dream.
One of the key tools of marketers is targeting: knowing what the demographics
are of the potential audience for some media item: a TV programme, a
newspaper, or a TV channel. Most targeting is broad-based: the audience for
Channel 4 in the United Kingdom has a number of broad traits as does the
readership of The Daily Telegraph and you find advertising addressing these.
The purchasers of a book are a much better-focused target than, say, the readers
of a particular newspaper. The purchaser of a book on the natural world may be
interested in other books that are similar to the one bought (a trick that Amazon
uses to display possible books to a visitor to their site), they may be interested in
holidays which involve activities such as observing wild animals, or they may
just need a new pair of binoculars.
The e-reader sold by Amazon already has Internet access built in, as has the iPad
– a multi-function device developed by Apple. Soon all e-readers will have this
capability. It raises the prospect that e-book prices could be driven downward for
those who want to purchase a title that has advertising on part of the screen,
where the cost of the books is reduced by advertising revenues.
Chapter 7
The cloud computer
Introduction
Whenever my wife or I visit out local Tesco supermarket we take part in an
implicit contract: we buy our groceries and, before handing over our credit card,
we give the checkout person our Tesco Clubcard. This card is swiped and the
computer in the checkout till sends the card number and the items that we buy to
a central computer. The use of such cards has revolutionized marketing. Previous
to their use the information from a checkout computer was aggregated
information, for example, how much of a certain product was bought in a week
and whether there was an increased demand for a certain product at specific
times of the year. By being able to associate a collection of purchases with a
particular customer or family group of customers, a supermarket is able to carry
out some very canny marketing.
Tesco will know that: my family buys lots of fresh food, that if it is a Wednesday
we will buy some pre-cooked meals, and that red wine is the drink du jour of our
house. I am relaxed about the data that is held: I gain an advantage because it
enables Tesco to send me special offer vouchers for items that they think I would
like and buy more frequently; it also adds to the Air Mile travel points that come
with the Tesco Club Card; and Tesco get an advantage in knowing what my
family spending habits are. It is a deal that I am not prepared to make with Boots
the Chemist since purchases there are associated with health.
Loyalty cards were the first manifestation of an explosion of data; an explosion
that the Internet caused and which can be used by both companies and
individuals with access to a browser. The aim of this chapter is to look at how
the Internet has transformed the computer to the point where when you refer to
the web as a massive computer you cannot be accused of science-fiction
foolishness.
This could have a number of meanings. It could refer to the pilots of commercial
planes or pilots of planes flown by members of the armed forces. It could also be
used by someone pointing at a number of planes in the sky. It could even be used
to describe children flying model planes.
By itself, this sentence is difficult to understand. However, what makes it
understandable is its context. For example, if it occurs in an RAF recruitment
brochure, then it would have the first meaning. Researchers have found that
Wikipedia provides a very useful resource for tasks such as understanding text.
In order to understand this, look at the extract below from the encyclopaedia.
Public cloud or external cloud describes cloud computing in the traditional mainstream sense,
whereby resources are dynamically provisioned on a fine-grained, self-service basis over the
Internet, via web applications/web services, from an off-site third-party provider who shares
resources and bills on a fine-grained utility computing basis.
The extract comes from an entry on cloud computing which underlies much of
this chapter. The underlined terms within the extract are references to other
Wikipedia entries. It is these which provide a context for understanding a
sentence. For example, if a sentence in an article contains the word ‘cloud’ and
many of the cross references in the Wikipedia article on cloud computing occur
in the article you would be able to identify it as one about a particular brand of
computing rather than meteorology.
Another example of open data is that generated by Twitter. This is a technology
that allows its users to deposit short messages on a web site that others can read;
it’s a bit like the messaging you get with mobile phones, the only difference
being the fact that the messages (tweets) are public.
Tweets are being used by the US Geological Survey (USGS) to get public
reaction to earthquakes. They provide a near instant feedback as to the severity
of a tremor and enable emergency services to be organized a little more quickly
than they would be via conventional monitoring.
The USGS continuously collects geo-codes (these are identification codes
supplied by mobile devices such as 3-G mobile phones) and stores the tweets
associated with the codes. When the US national seismic network detects an
earthquake, a system then checks to see if there was a significant increase in
messages following the event and the nature of the messages. Staff can then
examine the messages to see what the effect of the earthquake was.
APIs
So, I have given you examples of databases that can be manipulated by a
computer for a number of purposes. The important question is: how is this data
made available? The key is something known as an Application Programming
Interface (normally abbreviated to API).
An API is a collection of software facilities that allow you to access Internet-
based resources. For instance, Amazon has an API that allows programmers to
query data about the products that Amazon sells. For example, you can retrieve
the unique ISBN of a book, and other product data that can be used for
commercial activities. This might seem an innocuous thing to do but, later in the
chapter, I will describe how revolutionary this is.
There is a web site known as programmableweb.com which contains details of
all the available APIs that can be used to access web resources. At the time of
writing this chapter, there were just over 1,900 APIs listed.
So, what can you do with such facilities? A good example is that of someone
setting themselves up as a specialist bookseller, for example selling books on
France. Amazon has an associate program that provides facilities for anyone to
advertise books stocked by the company on their own web site. Such a web site
would contain links to the book entries on the Amazon web site and when a
visitor to, say, the France book site clicks one of these links and buys the book
Amazon pays the owner of the site a commission.
A good quality site with, for example, articles on France, recipes for French
food, and latest news items, would draw visitors who would feel inclined to
support the site by buying their books using the site links – after all, the price of
the book would be the same as that displayed on the Amazon web site. The
details on the web site about each book would be obtained using an API that is
freely provided by Amazon.
This form of associate program – sometimes known as an affiliate program – is
now very popular. The web site associateprograms.com lists many thousands of
such programmes. It includes organizations in the media sector, the food sector,
and the sport and recreation sector.
A computer contains one or more processors which operate on data. The processor(s) are connected
to data storage. The intentions of a human operator are conveyed to the computer via a number of
input devices. The result of any computation carried out by the processor(s) will be shown on a
number of display devices.
You may have thought that this was the academic in me coming out: relying on a
definition, tying up loose ends, and attempting to be semantically clear.
However, the point this definition makes is that it covers not only the computer
on your desk that you use for tasks such as word-processing and web browsing,
the computers that help fly a plane, or the computer chip embedded in an iPod,
but also a much larger computer made up of hundreds of millions of computers
and which is embedded in a cloud; I hope that this chapter has convinced you of
this.
Chapter 8
The next computer
Introduction
The basic architecture of the computer has remained unchanged for six decades
since IBM developed the first mainframe computers. It consists of a processor
that reads software instructions one by one and executes them. Each instruction
will result in data being processed, for example by being added together; and
data being stored in the main memory of the computer or being stored on some
file-storage medium; or being sent to the Internet or to another computer. This is
what is known as the von Neumann architecture; it was named after John von
Neumann, a naturalized American mathematician who was at the forefront of
computer research in the 1940s and 1950s. His key idea, which still holds sway
today, is that in a computer the data and the program are both stored in the
computer’s memory in the same address space.
There have been few challenges to the von Neumann architecture. In this final
chapter, I shall look at two future approaches to computing which involve totally
different architectures. I shall also look at a sub-architecture which is known as
the ‘neural net architecture’, which has some resemblance to the neural
structures in the brain. But, first, a strange piece of history which may repeat
itself.
Quantum computers
In Chapter 4, I discussed how VLSI technology has enabled computer
companies to develop more and more powerful computers; the increase in power
arising from an increased ability to squeeze more and more processors on a
single chip.
The von Neumann computer is based on the storage of data using binary digits
(0 or 1) collected together into bytes. Quantum computers store data as quantum
bits, or qubits; these can be implemented as atoms, ions, photons, or electrons.
These qubits can not only act as a storage element for data but can also be
combined together to implement a hardware processor.
In order to get an idea of how powerful a quantum computer can be, David
Deutsch, an Oxford academic and physicist, and one of the pioneers in the area,
has calculated that a modest 30-qubit computer could work at 10 teraflops. This
is comparable to the speeds achieved by the supercomputers that were working
in the first decade of this millennium.
One of the problems with using quantum ideas to implement a computer is
concerned with the effect that observation of qubits could have. For example,
trying to examine the state of a qubit could change its state along with others.
This means that it could be immensely difficult to read data from a quantum
computer – a process that is very easy with a conventional computer.
Happily, there is a quantum phenomenon known as entanglement which has
come to the aid of the quantum computer developer. In 2006, physicists at the
USA Commerce Department’s National Institute of Standards and Technology
reported in the 19 October edition of the science journal Nature that they had
taken a major step towards moulding entanglement into a technique that can be
used to read quantum-based data. They demonstrated a method for refining
entangled atom pairs – a process called purification – which involved entangling
two pairs of beryllium ions. This means that the data in a quantum computer can
be observed indirectly without affecting its value.
Quantum computing is in its very early days. Results have been very small-scale
so far: for example, a Canadian startup company, D-Wave, has demonstrated a
working 16-qubit quantum computer. The computer solved a simple Sudoku
puzzle and other pattern-matching problems. Now, compared with the
performance of a conventional computer, this solution of a modestly sized
problem is no huge achievement in terms of capability. However, it is a dramatic
proof of concept.
Quantum computers are important in that a successful computer based on
quantum physics ideas could overturn many of the technologies that are
currently extant. One of the areas where it would have the most effect is in
cryptography. A number of modern cryptographic methods rely on the fact that it
is exceptionally hard to solve certain problems – problems that are known as
wicked problems – however, researchers have pointed out that a relatively
modest quantum computer could solve these problems; indeed, one of the
challenges that this community have addressed is of doing just that.
For example, in 2001 computer scientists from IBM and Stanford University
demonstrated that a quantum computer can be programmed to find the prime
factors of numbers (a prime factor is a number which divides exactly into a
number and which cannot be reduced further; for example, the prime factors of
33 are 3 and 11). The researchers employed a 7-qubit computer to find the
factors of 15 (5 and 3). Prime factor determination is one of the problems that
enable Internet-based cryptography to be successful.
Again, in computation terms this is no great achievement; in 2005, for example,
researchers at the German Federal Agency for Information Technology Security
used a cluster of conventional computers to factor a 200-digit number. However,
it represents an important proof of concept which, if made industrial, would
threaten a large segment of the technologies we use to send secure data.
In this section, I have included a list of excellent books that are relevant to each
chapter and which expand upon the main points made in each. Some of these are
relevant to more than one chapter, so you will find some duplication.
A
Abhu Ghraib incident 91
Active badge 41
Adams, Joel 58
Address 32
Address bus 32
Adobe Photoshop 14, 89
Adleman, Leonard 72, 125
Adwords 83–4
Aerodynamic design 57
AirStrip OB 44
Alpha customer 115
Alvey Programme 118
Amazon 9, 22, 58, 79–80, 98–9, 101, 105, 115
Ambient informatics 41
Anatomy Lab 44
And gate 26–7, 125
Anderson, Chris 92
Apache web server 82
Application Programming
Interface 104–6
Approximate algorithm 52
Artificial intelligence 20, 54
ASCII 25
Associate programme 105
Association of American Publishers 95
Asymmetric cryptography 72
Audio podcast 88
Austin, Richard 121
Australian National Data Service 46, 92
Australian Square Kilometre Array 45
B
Beowulf cluster 57–8
Binary number system 25
Bin packing problem 52
Biological computing 22
Biometric identification 75
Biometric smart card 72
Bit 1
Blog 86
Brixey, Shawn 91
Borders UK 79
Bowen, Debra 42
British Telecom Vision programme 12
Broadband 10
Brom, Tim 58
Browser 9
Bug 28
Byte 1
c
C# 11
Caching 35
Caeser cipher 70–1
Carr, Nicholas 61–2, 84, 109–10, 128
CDC 56
Christensen, Clayton 81
Cipher text 70–1
Citizen journalism 86–7
Client computer 9
Climategate 47, 88
Climate Research Unit (CRU) 46–7, 87
Closed data 101
Cloud computing 12, 21–2, 61, 100, 104, 107–9
Cocks, Clifford 72
Computer chess 7
Computer Economics 85
Computer program 4, 10
Computer virus 14, 21
Core memory 28
Craigslist 106
Cray Corporation 56
Cray XM-P48 56
Cryptography 70, 123
Cunningham, Ward 111
D
Data.gov 13
data.gov.uk 13
Dawson, Andrea 121
Database server 59
Deep Blue 55
delicious 112
Denial of service attack 63, 69
Deutsch, David 122
D-Wave 123
Dial-up 10
Diffie, Whitfield 72
Digg 87, 112–13
Digital camera 14, 34
Digital signature 73
DNA 124–5
DNA computer 23, 124–6
Domain Name System 9, 59
Dombis, Pascal 91
Dubner, Stephen 113
Dumb terminal 108, 128
Dumpster diving 69
Dynamic Random Access Memory (DRAM) 34
E
e-book 95, 97
eCray XT5 Jaguar 57
Electrical relay 28
Electrically Erasable Programmable Read Only Memory (EEPROM) 33
Electronic valves 28
Elliot 803 computer 1, 2, 24, 28
Ellis, James 72
Entanglement 123
Epocrates 44
e-reader 94–5, 99, 127
Erasable Programmable Read-Only Memories (EPROM) 33
Evolutionary programming 53
Expert system 55
F
Facebook 112, 115
Fetch-execute cycle 27–8
Firewall 21, 65, 67–8
Flash memory 33
Flickr 14, 112
Folding@home 17, 60
Fonda, Jane 90
Fourth paradigm 47–9
FP 119
Freedom of Information Act 47
friv 16
Functional programming 118
Functional programming language 119
G
Genome@home 17
Genome sequencing 21
Genetic programming 53
Gigabyte 1
Goldcorp 102
Google Apps 23, 109
Google Inc. 15, 23
Gray, Jim 47
Grid computing 21, 60, 120
H
Halstead, Dirck 91
Hamiltonian path problem 125
Hard disk memory 4–5, 35
Hart, Michael 97
Haskell 119
Hellman, Martin 72
High Dynamic Range imaging 89
Home page 36
Hopper, Grace 28
HSBC 76
Human Genome Project 17, 51
I
Intel 3, 58
International Digital Publishing Forum 95
Internet 8, 12
Intrusion detector 21
iPad 99, 127
IPhone 16, 44
iPod 6, 12, 21, 24, 41, 85, 94–5, 116, 127
iPot 38, 45
iTunes 80
J
Java 11
K
Kasparov, Gary 55
Kerry, John 90
Keyboard 6
Kilobyte 1
Krums, Janis 89
L
Large Synoptic Survey Telescope 91
Levitt, Steven 113
Logic bomb 65
Logic gate 125
Linux 57, 82–3
Loyalty card 101
M
Machine learning 114
Main memory 4–6, 26
Malware 64
Market basket analysis 115
Mashing 22
Mashup 106–7
Mass collaboration 17–18
Mass computing 17
Maxfield, Clive 32
McEwen, Rob 102
Megabyte 1
Melissa virus 63–4
Metadata 48
Microsoft Office 23
Microwulf cluster 58
MITI 118
Miranda 119
Mitnick, Kevin 76
ML 119
Mobile phone 34, 41, 43
Modem 26
Moore, Gordon 3
Mouse 6
MP3 player 2, 12, 21, 43–4 137
Moore’s law 3, 12–13
Morris Worm 66
Musee d’Orsay 96
N
Nanometre 29
NEC 39
Netbook 2, 36
Netflix 101
Netflix prize 101
Neural network 120–2
News blog 86
Nuclear experiment simulation 57
NP-hard problem 51–2, 123
O
O’Hara, Kieron 38
One-time pad 74
Online advertising 22
Open data 101–2, 104
Open-source software 81–2
Operating system 35, 82
OpenWetWare 113
Optical lithography 37
Optimization 18
Oscar predictions 116
Outlook mail program 63, 109
Outsourcing 85
Oxford Literary Festival 98
P
Pan-STARRS 45
Password 74
Personal Digital Assistant (PDA) 34
Personal firewall 67
Pfleeger, Charles 75
Pfleeger, Shari 75
Photo-mask 29
Pinsent Masons 85
Plaintext 70–1
Pogue, David 44
Post Office teletype 2
Prediction market 115
Private key 72–3
Processor 4, 50
Programmable Read-Only Memories (PROM) 32
Programmableweb.com 105
Project Gutenberg 97
ProLoQuo2Go 44
Public key 72–3
Public key cryptography 72
Q
Quantum computing 22–3, 122–4
R
Rabbit 66
Radamacher, Paul 106
Read Only Memory (ROM) 32
Read Write Memory (RWM) 32
Reflect tool 48
Resist 31
Retina 44
RFID tag 15, 21, 42–3
Rivest, Ronald 72
Royal Dirkzwager 39
S
San Diego Supercomputer Centre 46
Secure sockets layer 73–4
Set partition problem 51
Shadbolt, Nigel 38
Shamir, Adi 72
Simon, John 91
Single-chip Cloud Computer 120
SINTEF Group 20
Social engineering 76, 78
Sony Walkman 12
Spamming 68
Spoofing attack 21
Static Random Access Memory (SRAM) 34
Statoil 15
Stross, Randall 114
Subatomic erosion 36
Substrate 30
Supercomputer 55–6
Swarm optimization 18–19, 53
Symmetric cipher 71
T
Tanenbaum, Andrew 82
Ted Conference 44
The Bookseller 96
The long tail 93
Therac-25 19
Time bomb 66
Thomas Watson 3
Torvalds, Linus 82
Transistor 28, 32
Trapdoor 66
Travelling salesman problem 52, 125
Trojan horse 14, 21, 65
Truth table 26
Tweet 112
Twitter 104, 112
U
Uhear 44
USB memory 33
US Geological Survey 104
V
Verichip 43
Very Large Scale Integration (VLSI) 20, 29, 52–3, 122
Video podcast 88
Virgin Records 80
Virus 63–9
Virus signature 67
Virus checker 21
von Neumann architecture 117–18
von Neumann, John 117
W
Weather forecasting 57
Web server 8–9, 36
Weinberg, David 121
Wicked problems 51, 53
Wikipedia 82, 96, 102–4, 111, 113
WikiWikiWeb 110–11
Williamson, Malcolm 72
Wordia 17
World Wide Web 8
Wu, Tim 128
X
X-Box 127
Y
Yahoo 107
Yahoo Pipes 107
YouTube 112
Z
Zavvi 80
Zittrain, Jonathan 61, 126–7
Zombie Computer 14–15
STATISTICS
Modern statistics is very different from the dry and dusty discipline of the
popular imagination. In its place is an exciting subject which uses deep theory
and powerful software tools to shed light and enable understanding. And it sheds
this light on all aspects of our lives, enabling astronomers to explore the origins
of the universe, archaeologists to investigate ancient civilisations, governments
to understand how to benefit and improve society, and businesses to learn how
best to provide goods and services. Aimed at readers with no prior mathematical
knowledge, this Very Short Introduction explores and explains how statistics
work, and how we can decipher them.