SAnet CD PrinciplesofComputerScience PDF
SAnet CD PrinciplesofComputerScience PDF
Principles of
Computer Science
Salem
Two University Plaza, Suite 310 Press
Hackensack NJ 07601
Phone: 201-968-0500
Fax: 201-968-0511
Principles of
Computer Science
Editor
Donald R. Franceschetti, PhD
The University of Memphis
SALEM PRESS
All rights reserved. No part of this work may be used or reproduced in any manner whatsoever or transmitted in
any form or by any means, electronic or mechanical, including photocopy, recording, or any information s torage
and retrieval system, without written permission from the copyright owner. For permissions requests, contact
[email protected].
∞ The paper used in these volumes conforms to the American National Standard for Permanence of Paper for Printed
Library Materials, Z39.48‑1992 (R2009)
vi
Salem Press is pleased to add Principles of Computer development of the first computers, an explana-
Science as the fourth title in a new Principles of se- tion of analog versus digital computing, neural
ries that includes Chemistry, Physics, Astronomy, and networks, the contributions of Alan Turing, and a
Computer Science. This new resource introduces stu- discussion of how advances from vacuum tubes to
dents and researchers to the fundamentals of com- digital processors have fundamentally changed the
puter science using easy-to-understand language, way we live.
giving readers a solid start and deeper understanding
and appreciation of this complex subject. The book’s backmatter is another valuable resource
and includes:
The 117 entries range from 3D printing to Workplace
Monitoring and are arranged in an A to Z order, • A timeline of the developments that related to
making it easy to find the topic of interest. Entries and led up to the first modern computer, starting
include the following: in 2400 BCE with the invention of the abacus in
Babylonia and ending with the 1949 Popular Me-
• Related fields of study to illustrate the connec- chanics prediction that computers of the future
tions between the various branches of computer might weigh no more than 1.5 tons;
science including computer engineering, soft- • A time of the development of microprocessors
ware engineering, biotechnology, security, robot- from the Intel 4004 in 1971 to the IBM POWER8
ics, gaming, and programming languages; in 2014;
• A brief, concrete summary of the topic and how • Nobel Notes that explain the significance of the
the entry is organized; prizes in physics to the study of the science and
• Principal terms that are fundamental to the dis- • List of important figures in computer science and
cussion and to understanding the concepts their key accomplishment;
presented; • Glossary;
• Illustrations that clarify difficult concepts via mod- • General bibliography; and
els, diagrams, and charts of such key topics as • Subject index.
wide area networks (WAN), electronic circuits,
and quantum computing; Salem Press and Grey House Publishing extend their
• Photographs of significant contributors to the appreciation to all involved in the development
field of computer science; and production of this work. The entries have been
• Sample problems that further demonstrate the written by experts in the field. Their names and affili-
concept presented; ations follow the Editor’s Introduction.
• Further reading lists that relate to the entry.
Principles of Computer Science, as well as all Salem Press
This reference work begins with a comprehen- reference books, is available in print and as an e-
sive introduction to the field, written by editor book. Please visit www.salempress.com for more
Donald R. Franceschetti, PhD, starting with the information.
vii
ix
xi
xii
Daniel Horowitz
John Vines
Joseph Dewey
Joy Crelin
Kenrick Vezina, MS
Marianne M. Madsen, MS
Melvin O
Micah L. Issitt
Scott Zimmer
Teresa E. Schmidt
xiii
binder jetting: the use of a liquid binding agent to Software and Modeling
fuse layers of powder together. 3-D printing begins with a computer-aided design
directed energy deposition: a process that deposits (CAD) drawing or 3-D scan of an object. These draw-
wire or powdered material onto an object and then ings or scans are usually saved in a digital file format
melts it using a laser, electron beam, or plasma arc. known as STL, originally short for “stereolithog-
material extrusion: a process in which heated fila- raphy” but since given other meanings, such as “sur-
ment is extruded through a nozzle and deposited face tessellation language.” STL files “tessellate” the
in layers, usually around a removable support. object—that is, cover its surface in a repeated pattern
material jetting: a process in which drops of liquid of shapes. Though any shape can be used, STL files
photopolymer are deposited through a printer use a series of non-overlapping triangles to model the
head and heated to form a dry, stable solid. curves and angles of a 3-D object. Errors in the file
powder bed fusion: the use of a laser to heat layers may need repair. “Slices” of the STL file determine
of powdered material in a movable powder bed. the number and thickness of the layers of material
sheet lamination: a process in which thin layered needed.
sheets of material are adhered or fused together
and then extra material is removed with cutting Liquid 3-D Printing
implements or lasers. The earliest AM technique was stereolithography
vat photopolymerization: a process in which a laser (SLA), patented in 1986 by Chuck Hull. SLA uses
hardens layers of light-sensitive material in a vat. liquid resin or polymer hardened by UV light to
create a 3-D object. A basic SLA printer consists of
Additive Manufacturing an elevator platform suspended in a tank filled with
3-D printing, also called additive manufacturing light-sensitive liquid polymer. A UV laser hardens a
(AM), builds three-dimensional objects by adding suc- thin layer of resin. The platform is lowered, and the
cessive layers of material onto a platform. AM differs laser hardens the next layer, fusing it to the first. This
from traditional, or subtractive, manufacturing, also process is repeated until the object is complete. The
1
Scanning system
Liquifier head Laser
(moves in x
and y direction)
Supports
Extrusion
nozzles Recoater blade
Foam
slab Supports
Build platform
Support
(moves in
material spool
z direction) Liquid Photopolymer Resin
Build
material spool
Platform
SLS Process
Scanning system
CO2 laser
Temperature-controlled
build chamber with
nitrogen atmosphere
Powder bed on
Powder-leveling roller
build piston
Excess powder
Powder takeup
feed
This presents a comparison of the three common 3-D printing processes: SLA (in which liquid polymer resin is solidified by a laser and sup-
port material is removed after completion), SLS (in which powder is fused by a CO2 laser and unfused powder acts as support), and FDM (in
which liquid modeling material is extruded through extrusion nozzles and solidifies quickly, and a build material and a support material can
be used in tandem, with the support material being removed after completion). EBSCO illustration.
object is then cleaned and cured by UV. This AM is then cut with a laser or other cutting tool to refine
technique is also called vat photopolymerization the shape. This method is less costly but also less ac-
because it takes place within a vat of liquid resin. curate than others.
Various types of SLA printing processes have been
given alternate names, such as “photofabrication” The Future of 3-D Printing
and “photo-solidification.” While AM techniques have been in use since the
1980s, engineers believe that the technology has not
Powder-Based 3-D Printing yet reached its full potential. Its primary use has been
In the 1980s, engineers at the University of Texas cre- in rapid prototyping, in which a 3-D printer is used to
ated an alternate process that uses powdered solids quickly create a 3-D model that can be used to guide
instead of liquid. Selective layer sintering (SLS), or production. In many cases, 3-D printing can create
powder bed fusion, heats powdered glass, metal, ce- objects that are stronger, lighter, and more customiz-
ramic, or plastic in a powder bed until the material able than objects made through machining. Printed
is “sintered.” To sinter something is to cause its par- parts are already being used for planes, race cars,
ticles to fuse through heat or pressure without lique- medical implants, and dental crowns, among other
fying it. A laser is used to selectively sinter thin layers items. Because AM wastes far less material than sub-
of the powder, with the unfused powder underneath tractive manufacturing, it is of interest for conserva-
giving structural support. The platform is lowered tion, waste management, and cost reduction. The
and the powder compacted as the laser passes over technology could also democratize manufacturing,
the object again. as small-scale 3-D printers allow individuals and small
businesses to create products that traditionally re-
Extrusion Printing quire industrial manufacturing facilities. However,
Material extrusion printing heats plastic or polymer intellectual property disputes could also occur more
filament and extrudes it through nozzles to deposit a often as AM use becomes more widespread.
layer of material on a platform. One example of this
—Micah L. Issitt
process is called fused deposition modeling (FDM).
As the material cools, the platform is lowered and
another layer is added atop the last layer. Creating
extruded models often requires the use of a struc- Bibliography
tural support to prevent the object from collapsing. “About Additive Manufacturing.” Additive
Extrusion printing is the most affordable and com- Manufacturing Research Group. Loughborough U,
monly available 3-D printing process. 2015. Web. 6 Jan. 2016.
Hutchinson, Lee. “Home 3D Printers Take Us on a
Emerging and Alternative Methods Maddening Journey into Another Dimension.” Ars
Several other 3-D printing methods are also Technica. Condé Nast, 27 Aug. 2013. Web. 6 Jan.
emerging. In material jetting, an inkjet printer head 2016.
deposits liquefied plastic or other light-sensitive ma- “Knowledge Base: Technologies in 3D Printing.”
terial onto a surface, which is then hardened with UV DesignTech. DesignTech Systems, n.d. Web. 6 Jan.
light. Another inkjet printing technique is binder 2016.
jetting, which uses an inkjet printer head to deposit Matulka, Rebecca. “How 3D Printers Work.” Energy.
drops of glue-like liquid into a powdered medium. gov. Dept. of Energy, 19 June 2014. Web. 6 Jan.
The liquid then soaks into and solidifies the medium. 2016.
In directed energy deposition (DED), metal wire or “The Printed World.” Economist. Economist
powder is deposited in thin layers over a support be- Newspaper, 10 Feb. 2011. Web. 6 Jan. 2016.
fore being melted with a laser or other heat source. “3D Printing Processes: The Free Beginner’s Guide.”
Sheet lamination fuses together thin sheets of paper, 3D Printing Industry. 3D Printing Industry, 2015.
metal, or plastic with adhesive. The resulting object Web. 6 Jan. 2016.
Agile robots are designed to have dexterity, flexibility, and a wider range of motions to allow for more re-
sponsiveness to their surroundings. By Manfred Werner - Tsui, CC-BY-SA-3.0 (http://creativecommons.org/
licenses/by-sa/3.0/), via Wikimedia Commons.
that mimic snakes’ slithering motion or caterpil- NASA has developed two different robots,
lars’ soft-bodied flexibility, to better access cramped Robonauts 1 and 2, that look much like a person
spaces. in a space suit. This is no accident. The Robonaut
In nature, such designs help creatures succeed in is designed to fulfill the same roles as a flesh-and-
their niches. Cheetahs are effective hunters because blood astronaut, particularly for jobs that are too
of their extreme speed. Caterpillars’ flexibility and dangerous or dull for humans. Its most remark-
strength allow them to climb through a complex able feature is its hands. They are close enough in
world of leaves and branches. Those same traits could design and ability to human hands that it can use
be incredibly useful in a disaster situation. A small, tools designed for human hands without special
autonomous robot that moved like a caterpillar could modifications.
maneuver through rubble to locate survivors without Consider the weakness of wheels in dealing with
the need for a human to steer it. stairs. Stairs are a very common feature in the houses
and communities that humans have built for them-
Humanoid Robots in a Human World selves. A robot meant to integrate into human society
Humans do not always compare favorably to other an- could get around much more easily if it shared a sim-
imals when it comes to physical challenges. Primates ilar body plan. Another reason to create humanoid
are often much better climbers. Bears are much robots is psychological. Robots that appear more
stronger, cheetahs much faster. Why design anthro- human will be more accepted in health care, cus-
pomorphic robots if the human body is, in physical tomer service, or other jobs that traditionally require
terms, relatively unimpressive? human interaction.
ALGOL
Fields of Study features, however, ALGOL never became widely used
and is now one of the oldest and least used of program-
Programming Languages
ming languages.
Abstract
Prinicipal Terms
The ALGOL programming language was developed in
1958 as a program for the display of algorithms. It was algorithm: a set of step-by-step instructions for per-
elegant and included several design features that have forming computations.
since become staple features of advanced program- character: a unit of information that represents
ming languages. ALGOL programs and procedures a single letter, number, punctuation mark, blank
employ a head-body format, and procedures can be space, or other symbol used in written language.
nested within other procedures. ALGOL was the first function: instructions read by a computer’s pro-
programming language to make use of start-end de- cessor to execute specific events or operations.
limiters for processes within procedures, a feature now object-oriented programming: a type of pro-
common in advanced object-oriented programming gramming in which the source code is organized
languages. The language allowed recursion and itera- into objects, which are elements with a unique
tive procedures, dynamic array structures, and user- identity that have a defined set of attributes and
defined data types. Despite its elegance and advanced behaviors.
main loop: the overarching process being carried numbers, arrays, and so on. For example, the head
out by a computer program, which may then in section of an ALGOL-60 program may be
voke subprocesses.
programming languages: sets of terms and rules of
comment An ALGOL-60 sorting program
syntax used by computer programmers to create
procedure Sort (Y, Z)
instructions for computers to follow. This code is
value Z;
then compiled into binary instructions for a com
integer Z; real array Y;
puter to execute.
syntax: rules that describe how to correctly struc
As can be seen, comment lines for documenta
ture the symbols that comprise a language.
tion are identified by the keyword comment, and
procedures are identified by the keyword procedure
followed by the name of the procedure. The second
History and Development of ALGOL
block, which is the main part of the program, con
The name ALGOL is a contraction from ALGO
sists of a sequence of statements that are to be ex
rithmic Language. It was developed by a committee
ecuted. It is initiated by the keyword begin and
of American and European computer scientists at
terminated by the keyword end. In fact this is the
ETH, in Zurich, Switzerland, as a language for the
common structure of ALGOL procedures, and the
display of algorithms. The detailed specifications
program format supports procedures within proce
for the language were first reported in 1960, as
dures. For example, the following body section of
ALGOL-58, and there have been several revisions
a sorting procedure contains a second procedure
and variations of the language since its inception.
within it, as
These include the updated ALGOL-60, ALGOL-N,
begin
ALGOL-68, ALGOL-W and Burroughs Extended
real x;
ALGOL. The language was developed from the
integer i, j;
FORTRAN language, which appeared in 1956. Both
for i := 2 until Z do begin
ALGOL and FORTRAN strongly influenced the de
x := Y[i];
velopment of later languages such as BASIC, PL/1
for j := i-1 step -1 until 1 do
and PL/C, Euler and Pascal. Many ALGOL pro
if x >= A[j] then begin
grammers agree that the development of ALGOL-68
A[j+1] := x; goto Found
made the language much more complex and less
end else
elegant than the previous version ALGOL-60, ulti
A]j+1] := A[j];
mately leading to its fall into disfavor with computer
A[1] := x;
users. It is now one of the oldest and least used of all
Found:
programming languages.
end
end
Program Characteristics end Sort
The syntax of ALGOL is rather logical, using natural-
language reserved keywords such as comment, begin Combining these two code segments produces an
and end and the “:” (colon) character to identify ALGOL-60 program that sorts a series of numbers.
standard arithmetical operators. The ALGOL pro Examination of this body code segment reveals that
gram format utilizes a two-part “block” structure in the begin statement is followed by the head of a
its main loop that has since become a familiar fea nested procedure, which is in turn followed by the
ture of most modern computer languages such as body statements of the secondary procedure before
C/C++, Java and many others. The first block, called the terminating end statements. The ability to sup
the “head,” consists of a series of type declarations port nested procedures foreshadowed the concept of
similar to those used in FORTRAN type declaration a function in the context of object-oriented program
statements. The declarations specify the class of the ming. It is a vitally important aspect of computer
entities used in the program, such as integers, real programming, and has proven the robustness of the
form in many languages since the development of particular, the nested procedure structure foreshad-
ALGOL. owed the object-oriented programming style. It was
the first language to make use of start-end identi-
fiers as block delimiters, a convention that has car-
Sample Problem ried over in object-oriented languages using func-
tion delimiters such as the { and } brace characters.
Comment the following section of code: ALGOL procedures included conditional statements
begin (if...then and if...else), and iterative statements (for...
real x; until). Functions could call themselves in recursive
integer i, j; computations (as in the statement i = i + j), and
for i := 2 until Z do begin ALGOL enabled dynamic arrays in which the sub-
x := Y[i]; script range of the array elements was defined by the
value of a variable, as in the array element ij. ALGOL
Answer: also used reserved keywords that could not be used as
identifiers by a programmer, but it also allowed user-
begin defined data types.
comment identify the variable types as real
numbers and integers —Richard M. Renneboog M.Sc.
real x;
integer i, j; Bibliography
comment an iterative routine to as-
Malcolme-Lawes, D.J. (1969) Programming – ALGOL
sign elements in the array
London, UK: Pergamon Press. Print.
for i := 2 until Z do begin
Organick, E.I., Forsythe, A.I. and Plummer, R.P.
comment assigns the value of x
(1978) Programming Language Structures New York,
to the array element
NY: Academic Press. Print.
x := Y[i];
O’Regan, Gerard (2012) A Brief History of Computing
2nd ed., New York, NY: Springer-Verlag. Print.
Wexelblat, Richard L. (1981) History of Programming
L:anguages New York, NY: Academic Press. Print.
The ALGOL Legacy Rutishauer, Heinz (1967) “Description of ALGOL-
While the ALGOL programming language was over- 60” Chapter in Bauer, F.L., Householder, I.S.,
shadowed by the FORTRAN programming language Olver, F.W.J., Rutishauer, H., Samelson, K. and
and did not become popular, it featured a number Stiefel, E., eds. Handbook for Automatic Computation
of innovative aspects that have since become staples Berlin, GER: Springer-Verlag. Print.
of essentially all major programming languages. In
Algorithms
Fields of Study Algorithm Basics
In computer science, an algorithm is a series of in-
Computer Science; Operating Systems; Software
structions that tells a computer to perform a certain
Engineering
function, such as sorting, calculating, or finding data.
Each step in the instructions causes the computer to
Abstract transition from one state to another until it reaches
An algorithm is set of precise, computable instruc- the desired end state.
tions that, when executed in the correct order, will Any procedure that takes a certain set of inputs
provide a solution to a certain problem. Algorithms (a data list, numbers, information, etc.) and reaches
are widely used in mathematics and engineering, a desired goal (finding a specific datum, sorting the
and understanding the design of algorithms is funda- list, etc.) is an algorithm. However, not all algorithms
mental to computer science. are equal. Algorithms can be evaluated for “ele-
gance,” which measures the simplicity of the coding.
An elegant algorithm is one that takes a minimum
Prinicipal Terms
number of steps to complete. Algorithms can also be
deterministic algorithm: an algorithm that when evaluated in terms of “goodness,” which measures the
given a particular input will always produce the speed with which an algorithm reaches completion.
same output.
distributed algorithm: an algorithm designed to
run across multiple processing centers and so is Lamp isn’t working
capable of directing a concentrated action be-
tween several computer systems.
drakon chart: a flowchart used to model algo-
rithms and programmed in the hybrid DRAKON
computer language.
function: instructions read by a computer’s pro- Is the lamp No
cessor to execute specific events or operations. plugged in? Plug in the lamp
recursive: describes a method for problem solving
that involves solving multiple smaller instances of
the central problem.
state: a technical term for all of the stored infor- Yes
mation, and the configuration thereof, that a pro-
gram or circuit can access at a given time.
Algorithms can be described in a number of ways. as predictive or modeling tools, investigating prob-
Flowcharts are often used to visualize and map the lems for which specific data is lacking. In computa-
steps of an algorithm. The DRAKON computer lan- tional biology, for instance, evolutionary algorithms
guage, developed in the 1980s, allows users to pro- can be used to predict how populations will change
gram algorithms into a computer by creating a flow- over time, given estimations of population levels,
chart that shows the steps of each algorithm. Such a breeding rates, and other environmental pressures.
flowchart is sometimes called a drakon chart.
Algorithms often specify conditional processes that Algorithm Applications
occur only when a certain condition has been met. One of the most famous applications of algorithms is
For instance, an algorithm about eating lunch might the creation of “search” programs used to find infor-
begin with the question, “Are you hungry?” If the an- mation on the Internet. The Google search engine
swer is “yes,” the algorithm will instruct the user to eat can search through vast amounts of data and rank mil-
a sandwich. It will then ask again if the user is hungry. lions of search results in a specific order for different
If the answer is still yes, the “eat a sandwich” instruc- users. Sorting large lists of data was one of the earliest
tion will be repeated. If the answer is “no,” the algo- problems that computer scientists attempted to solve
rithm will instruct the user to stop eating sandwiches. using algorithms. In the 1960s, the quicksort algo-
In this example, the algorithm repeats the “eat a rithm was the most successful sorting algorithm. Using
sandwich” step until the condition “not hungry” is a random element from the list as a “pivot,” quicksort
reached, at which point the algorithm ends. tells the computer to pick other elements from the
list and compare them to the pivot. If the element is
Types of Algorithms less than the pivot, it is placed above it; if it is greater,
Various types of algorithms take different approaches it is placed below. The process is repeated until each
to solving problems. An iterative algorithm is a simple pivot is in its proper place and the data is sorted into
form of algorithm that repeats the same exact steps a list. Computer scientists are still attempting to find
in the same way until the desired result is obtained. search and sorting algorithms that are more “elegant”
A recursive algorithm attempts to solve a problem by or “good” in terms of completing the function quickly
completing smaller instances of the same problem. and with the least demand on resources.
One example of a recursive algorithm is called a “di- Searching and sorting are the most famous examples
vide and conquer” algorithm. This type of algorithm of algorithms. However, these are just two of the thou-
addresses a complex problem by solving less complex sands of algorithm applications that computer scientists
examples of the same problem and then combining have developed. The study of algorithm design has be-
the results to estimate the correct solution. come a thriving subfield within computer science.
Algorithms can also be serialized, meaning that
—Micah L. Issitt
the algorithm tells the computer to execute one in-
struction at a time in a specific order. Other types
of algorithms may specify that certain instructions Bibliography
should be executed simultaneously. Distributed algo- “Intro to Algorithms.” Khan Academy. Khan Acad.,
rithms are an example of this type. Different parts of 2015. Web. 19 Jan. 2016.
the algorithm are executed in multiple computers or Anthes, Gary. “Back to Basics: Algorithms.”
nodes at once and then combined. Computerworld. Computerworld, 24 Mar. 2008.
An algorithm may have a single, predetermined Web. 19 Jan. 2016.
output, or its output may vary based on factors other Bell, Tim, et al. “Algorithms.” Computer Science Field Guide.
than the input. Deterministic algorithms use exact, U of Canterbury, 3 Feb. 2015. Web. 19 Jan. 2016.
specific calculations at every step to reach an answer Cormen, Thomas H. Algorithms Unlocked. Cambridge:
to a problem. A computer running a deterministic MIT P, 2013. Print.
algorithm will always proceed through the same se- Cormen, Thomas H., et al. Introduction to Algorithms.
quence of states. Nondeterministic algorithms incor- 3rd ed. Cambridge: MIT P, 2009. Print.
porate random data or “guessing” at some stage of Toal, Ray. “Algorithms and Data Structures.” Ray
the process. This allows such algorithms to be used Toal. Loyola Marymount U, n.d. Web. 19 Jan. 2016.
10
AnDroiD os
Fields oF study Android takes off
Android came about amid a transformative moment
Computer Science; Operating Systems; Mobile
in mobile technology. Prior to 2007, slide-out key-
Platforms
boards mimicked the typing experience of desktop
PCs. In June of that year, Apple released its first
AbstrAct iPhone, forever altering the landscape of mobile
phones. Apple focused on multi-touch gestures and
This article briefly discusses the general issues in-
touch-screen technology. Nearly concurrent with
volved with mobile computing and presents a history
and analysis of Google’s Android operating system.
It concludes with a look at Android’s future in the
growing market for mobile technology.
PriniciPAl terms
application program interface (Api): the code
that defines how two pieces of software interact,
particularly a software application and the oper-
ating system on which it runs.
immersive mode: a full-screen mode in which the
status and navigation bars are hidden from view
when not in use.
material Design: a comprehensive guide for visual,
motion, and interaction design across Google plat-
forms and devices.
multitasking: in the mobile phone environment,
Awesome
allowing different apps to run concurrently, much
like the ability to work in multiple open windows
on a PC.
multi-touch gestures: touch-screen technology
that allows for different gestures to trigger the be-
havior of installed software.
this, Google’s Android released its first application control (and revenue) by not supporting these com-
program interface (API). panies or including their apps in its marketplace.
The original API of Google’s new operating Forked versions of Android made up nearly a quarter
system (OS) first appeared in October 2008. The of the global market in early 2014.
Android OS was first installed on the T-Mobile G1, Google’s business model has always focused on a
also known as the HTC Dream. This prototype had “rapid-iteration, web-style update cycle.” By contrast,
a very small set of preinstalled apps, and as it had a rivals such as Microsoft and Apple have had a far
slide-out QWERTY keyboard, there were no touch- slower, more deliberate pace due to hardware issues.
screen capabilities. It did have native multitasking, One benefit of Google’s faster approach is the ability
which Apple’s iOS did not yet have. Still, to compete to address issues and problems in a timely manner. A
with Apple, Google was forced to replace physical drawback is the phenomenon known as “cloud rot.”
keyboards and access buttons with virtual onscreen As the cloud-based OS grows older, servers that were
controls. The next iteration of Android shipped once devoted to earlier versions are repurposed.
with the HTC Magic and was accompanied by a vir- Since changes to the OS initially came every few
tual keyboard and a more robust app marketplace. months, apps that worked a month prior would sud-
Among the other early features that have stood the denly lose functionality or become completely unus-
test of time are the pull-down notification list, home- able. Later Android updates have been released on a
screen widgets, and strong integration with Google’s timescale of six months or more.
Gmail service.
One later feature, the full-screen immersive mode,
has become quite popular as it reduces distractions.
Android’s Future
In 2014 alone, more than one billion devices using
First released with Android 4.4, “KitKat,” in 2013, it
Android were activated. One of the biggest con-
hides the navigation and status bars while certain
cerns about Android’s future is the issue of forking.
apps are in use. It was retained for the release of
Making the code available to developers at no cost
Android 5.0, “Lollipop,” in 2015.
has made Android a desirable and cost-effective al-
ternative to higher-end makers such as Microsoft
Android Changes and Grows
and Apple, but it has also made Google a target of
Both of Google’s operating systems—Android and
competitors.
its cloud-based desktop OS, Chrome— are based
Another consideration for Android’s future is its
on the free open-source OS Linux, created by en-
inextricable link to the Chrome OS. Google plans
gineer Linus Torvalds and first released in 1991.
to keep the two separate. Further, Google execu-
Open-source software is created using publicly avail-
tives have made it clear that Chromebooks (laptops
able source code. The open-source development of
that run Chrome) and Android devices have distinct
Android has allowed manufacturers to produce ro-
purposes. Android’s focus has been on touch-screen
bust, affordable products that contribute to its wide-
technology, multi-touch gesturing, and screen resolu-
spread popularity in emerging and developing mar-
tion, making it a purely mobile OS for phones, tab-
kets. This may be one reason why Android has had
lets, and more recently wearable devices and TVs.
more than twice as many new users as its closest rival,
Meanwhile, Chrome has developed tools that are
Apple’s iOS. This strategy has kept costs down and
more useful in the PC and laptop environment, such
has also helped build Android’s app marketplace,
as keyboard shortcuts. However, an effort to unify the
which offers more than one million native apps,
appearance and functionality of Google’s different
many free of charge. By 2014 Android made up 54
platforms and devices called Material Design was in-
percent of the global smartphone market.
troduced in 2014. Further, Google has ensured that
This open-source development of Android has
Android apps can be executed on Chrome through
had one adverse effect: the phenomenon known as
Apps Runtime on Chrome (ARC). Such implemen-
“forking,” which occurs primarily in China. Forking
tations suggest a slow merging of the Android and
is when a private company takes the OS and creates
Chrome user experiences.
their own products apart from native Google services
such as e-mail. Google seeks to prevent this loss of —Andrew Farrell, MLIS
12
Application
Fields of Study utility program: a type of system software that per-
forms one or more routine functions, such as disk
Applications; Software Engineering
partitioning and maintenance, software installa-
tion and removal, or virus protection.
Abstract web application: an application that is down-
In the field of information technology, an applica- loaded either wholly or in part from the Internet
tion is a piece of software created to perform a task, each time it is used.
such as word processing, web browsing, or chess
playing. Each application is designed to run on a
particular platform, which is a type of system soft- Applications in Context
Applications are software programs that perform
ware that is installed on desktop computers, lap-
particular tasks, such as word processing or web
tops, or mobile devices such as tablet computers or
browsing. They are designed to run on one or more
smartphones.
specific platforms. The term “platform” can refer
to any basic computer infrastructure, including the
Prinicipal Terms
hardware itself and the operating system (OS) that
app: an abbreviation for “application,” a program manages it. An OS is a type of system software that
designed to perform a particular task on a com- manages a device’s hardware and other software re-
puter or mobile device. sources. Application designers may create different
application suite: a set of programs designed to versions of an application to run on different plat-
work closely together, such as an office suite that forms. A cross-platform application is one that can be
includes a word processor, spreadsheet, presenta- run on more than one platform.
tion creator, and database application. In the context of mobile devices such as tablets
platform: the specific hardware or software infra- and smartphones, the term “application” is typi-
structure that underlies a computer system; often cally shortened to app. Since the introduction of
refers to an operating system, such as Windows, the iPhone in 2007, apps have taken center stage
Mac OS, or Linux. in the realm of consumer electronics. Previously,
system software: the basic software that manages consumers tended to be attracted more to a de-
the computer’s resources for use by hardware and vice’s hardware or OS features. A consumer might
other software. have liked a certain phone for its solid design or
13
fast processor, or they might have preferred the presentation software, and database management
graphical interface of Microsoft Windows and systems. In an office environment, it is critical that
Mac OS to the command-line interface of Linux. users be able to create documents using these ap-
These features have since become much less of a plications and share them with others. This often
concern for the average consumer. Instead, con- means that a business or organization will select a
sumers tend to be more interested in finding a particular application suite and then require all em-
device that supports the specific apps they wish ployees to use it.
to use. Other types of applications include games, audio-
video editing and production software, and even
Evolution of Applications software that helps programmers write new soft-
Over the years, apps have become more and more ware. Due the complexity of software engineering,
specialized. Even basic utility programs that were programmers have developed many applications to
once included with OSs are now available for pur- help them produce more polished, bug-free pro-
chase as separate apps. In some cases, these apps are grams. Software developers may use multiple appli-
a more advanced version of the utility software that cations to code a single program. They might use
comes with the OS. For example, an OS may come a word processor or text editor to write the source
with free antivirus software, but a user may choose code and explanatory comments, a debugging
to purchase a different program that offers better tool to check the code for errors, and a compiler
protection. to convert the code into machine language that a
Some software companies offer application computer can execute. There is even a type of ap-
suites of interoperating programs. Adobe Creative plication that can emulate a virtual computer run-
Cloud is a cloud-based graphic design suite that in- ning inside another computer. These applications
cludes popular design and editing programs such are often used by web-hosting companies. Instead
as Photoshop and InDesign. Microsoft Office is an of having to set up a new physical server for each
office suite consisting of a word processor (Word), customer that signs up, they can create another vir-
a spreadsheet program (Excel), and other applica- tual server for the user to access.
tions commonly used in office settings. These pro-
grams are expensive and can take up large amounts Security Implications
of storage space on a user’s computer. Before broad- Applications must have certain privileges in order
band Internet access became widely available, ap- to use the resources of the computer they are run-
plication suites were distributed on portable media ning on. As a result, they can sometimes be a point
such as floppy disks, CD-ROMs, or DVDs, because of weakness for attackers to exploit. A clever attacker
downloading them over a dial-up connection would can take over a vulnerable application and then use
have taken too long. its privileges to make the computer behave in ways
As high-speed Internet access has become it should not. For example, the attacker could send
much more common, application developers have spam e-mails, host illegally shared files, or even
taken a different approach. Instead of investing in launch additional attacks against other computers on
bulky application suites, users often have the op- the same network.
tion of using web applications. These applications
run partly or entirely on remote servers, avoiding Careers in Applications
the need to install them on the computer’s hard Applications are the focus of a variety of career op-
drive. tions for those interested in working with software.
Apart from the obvious role of computer pro-
Types of Applications grammer, there are several other paths one might
Many different types of software fall under the take. One option is quality assurance. Quality assur-
broad heading of applications. A large segment of ance staff are responsible for testing software under
the application market is focused on office and pro- development to make sure it performs as it should.
ductivity software. This category includes e-mail ap- Technical support is another option. Technical sup-
plications, word processors, spreadsheet software, port specialists assist users with operating the software
14
COMPUTER HARDWARE
Debugger
File Mgmt
Operating Tools
System SYSTEMS
Utilities SOFTWARE
Compilers
Assembler
Games
Graphics
Communications
Word
Processing
Databases
APPLICATIONS
SOFTWARE
Spreadsheets
The variety and quantity of application software available is massive compared to the limited array of system software and hardware that
support them. EBSCO illustration.
15
and fixing errors it might cause. Yet another path is Dey, Pradip, and Manas Ghosh. Computer Fundamentals
technical writing. Technical writers create software and Programming in C. 2nd ed. New Delhi: Oxford
user manuals and training materials. Finally, some UP, 2013. Print.
applications are so complex that using them can be a Goriunova, Olga, ed. Fun and Software: Exploring
career in itself. Pleasure, Paradox, and Pain in Computing. New York:
Bloomsbury, 2014. Print.
—Scott Zimmer, JD
Neapolitan, Richard E. Foundations of Algorithms. 5th
ed. Burlington: Jones, 2015. Print.
Talbot, James, and Justin McLean. Learning Android
Bibliography Application Programming: A Hands- On Guide to
Bell, Tom. Programming: A Primer; Coding for Beginners. Building Android Applications. Upper Saddle River:
London: Imperial Coll. P, 2016. Print. Addison, 2014. Print.
Calude, Cristian S., ed. The Human Face of Computing.
London: Imperial Coll. P, 2016. Print.
Applied linguistics
Fields of Study Linguistics and Technology
Applied linguistics seeks to address real-world lan-
Computer Science; Programming Language; Software
guage issues. While its emergence predates com-
Engineering
puter science, modern applied linguistics over-
laps with computational linguistics. In particular,
Abstract
computer science tools are useful for modeling
Applied linguistics is a linguistics subfield that fo- linguistic concepts and creating automated trans-
cuses on solving the linguistics problems of daily lation tools. Applied and computational linguis-
life. Areas of interest include language learning, tics research has produced many Internet-based
language preservation, and automated linguistic language learning programs, as well as programs
tools. Applied and computational linguistics that allow machines to recognize and respond to
overlap in the design of algorithms and com- linguistic cues.
puter programs for educational and commercial
applications.
Development of the Field
Applied linguistics was first recognized as a distinct
Prinicipal Terms
field of linguistics research in the 1950s. However, the
computational linguistics: a branch of linguistics application of linguistics knowledge is a far older tra-
that uses computer science to analyze and model dition within academic linguistics. Some of the first
language and speech. applied linguistics departments and organizations in
lexicon: the total vocabulary of a person, lan- the United States focused on guiding language policy
guage, or field of study. in government initiatives.
morphology: a branch of linguistics that studies Another early area of concern was the application
the forms of words. of linguistics research to language learning, both for
semantics: a branch of linguistics that studies the native language speakers and for those learning a
meanings of words and phrases. second language. In the 1960s, linguistics researchers
syntax: a branch of linguistics that studies how began working on ways to use computer technology
words and phrases are arranged in sentences to in linguistics education and research. Computer-
create meaning. assisted language learning (CALL), first developed
16
Linguistic Analysis
sentence: Joe found his book. One major area of linguistics research is linguistic
analysis, which seeks to dissect natural languages
into their component parts to better understand how
S S = sentence languages function and change. Each language can
N = noun be analyzed in terms of its lexicon. This is the total
VP = verb phrase vocabulary available in a certain language or subset
N VP
V = verb of a language. The term can also refer to an individ-
ual’s total vocabulary. To understand a language, its
V NP NP = noun phrase
specific lexicon must be broken into smaller units.
D = determiner
Linguists may study the morphology of words (the
D N specific pattern of characters and phonemes that
make up each word). They may also study a language’s
semantics (how words and phrases relate to what they
Joe found his book. represent). Beyond semantics is syntax, which looks
at how words and phrases are arranged to form sen-
A parse tree, also known as a “syntax tree,” shows the grammatical tences and other higher-order units of language. In
structure of a sentence. In the example sentence (S), “Joe found
his book,” there are two nouns (N), “Joe” and “book.” Based on
the digital age, linguistic analysis increasingly relies
the verb “found,” we can determine that “his book” is part of the on software that can compile and evaluate properties
predicate, and the subject—the noun doing the finding— is “Joe.” of language.
Determiners (D) are used to distinguish the specific noun about
which the sentence is talking. These parse trees are used as a basis
for developing computer programs that can identify grammatical
structure and draw meaning from a sentence in the same way
Computer Science Applications
human brains do. EBSCO illustration. Automated translation is among the best-known ex-
amples of applied computational linguistics. Web-
based services such as Babelfish and Google Translate
use algorithms to analyze user-provided words and
in the 1960s, studies ways to use computers to assist sentences and translate the semantic concepts into
in language acquisition. In the twenty-first century, equivalent expressions in other languages. Computer
tools and techniques developed for CALL programs scientists and linguists are working to refine such soft-
are regularly used to design software-based language ware to provide more accurate translations. Applied
learning programs. linguistics has also resulted in the development of soft-
Computational linguistics focuses on both ap- ware systems that allow users to “speak” to automated
plied and theoretical research. It grew out of systems. Apple’s iOS assistant Siri is an example of a
military efforts in the 1950s to use computers to program that can analyze the syntax and semantics of
translate foreign languages, particularly Russian. a spoken prompt and respond in kind.
Computers were widely used in linguistics re- Computer science and linguistics have created
search by the late 1980s. In the 1990s and 2000s, innovative solutions to a wide range of linguistic
web-based linguistic applications began to become problems. For instance, the Enable Talk glove is
common. a Bluetooth-enabled glove that, when worn, can
Linguistics research focuses generally on “nat- translate sign language into spoken language. This
ural languages,” which develop “naturally” through enables sign-language users to communicate with
human use and refinement. They are distinct from individuals who do not understand sign language.
formal languages, such as computer programming Various similar therapeutic applications exist for in-
languages, and constructed languages, such as dividuals with speech, hearing, or other linguistic
Esperanto. Developing better learning materials, challenges. Another real-world issue being addressed
both traditional text-based materials and modern through applied linguistics is the preservation, docu-
software-based materials, is a primary focus of ap- mentation, and analysis of the world’s “endangered
plied linguistics. languages.” These languages are in danger of being
17
Architecture software
Fields of Study postproduction: the period after a model has
been designed and an image has been rendered,
Applications; Graphic Design
when the architect may manipulate the created
image by adding effects or making other aesthetic
Abstract changes.
Architecture software is a category of specialized raster: a means of storing, displaying, and editing
computer software intended for use by architects. image data using individual pixels.
Through the use of such software, architects may rendering: the process of transforming one or
design, model, and modify plans for homes or other more models into a single image.
buildings digitally rather than on paper. As the type vector: a means of storing, displaying, and editing
and scale of the structures being designed vary image data using defined points and lines.
greatly, many types of architecture software are avail-
able to address the differing requirements of indi- The Introduction of Software to
vidual projects. Architecture
During the late twentieth and early twenty-first cen-
Prinicipal Terms turies, architecture became one of many fields to be
dramatically transformed through the use of com-
building information modeling (BIM): the cre- puter technology. For centuries, architects designed
ation of a model of a building or facility that ac- single structures such as homes as well as larger, mul-
counts for its function, physical attributes, cost, tibuilding facilities by hand. They drafted plans on
and other characteristics. paper and created 3-D scale models out of materials
modeling: the process of creating a 2-D or 3-D rep- such as cardboard, wood, and foam. These processes
resentation of the structure being designed. relied heavily on physical components. Therefore, it
18
Architecture
Conceptual design
Structural design
analysis
Design development
collaboration
and documentation
Owners Engineering
Structural design
Redevelopment analysis
Long-term facility management Shop drawings and fabrication
Conceptual design Construction documentation
Conceptual design
Construction
4D/5D projections
Construction
Logistics and
construction management
Architecture software is designed to assist in one or more of the many tasks required for building informa-
tion modeling (BIM). Depending on one’s role and how one relates to the building process, certain tasks
may be more important. Determining the proper architecture software first requires one to know what BIM
tasks one hopes to take on. EBSCO illustration.
was relatively difficult to collaborate with fellow ar- field of art and design. Some architecture programs
chitects or other professionals who were not located are essentially specialized versions of computer-aided
nearby. Making changes to one’s work, particularly to design (CAD) software. CAD programs are typically
models that were already assembled, could be time used in fields such as manufacturing. For example,
consuming and difficult. The advent of architecture one particularly popular architecture program,
software brought advances in areas such as drafting, AutoCAD Architecture, is sold by the software com-
modeling, and modifying models and floorplans as pany Autodesk. Autodesk is known for its CAD and
well as collaborating with other professionals. computer-aided manufacturing (CAM) programs.
Although typically designed for and marketed to Architects began to adopt the use of CAD programs
architects, architecture software is similar in many in the 1980s. By the following decade, such software
ways to other types of software used in the broader was widely used in the field.
19
20
ASCII
Fields of Study can be used by an electronic device such as a com-
puter or telegraph.
Computer Science; Computer Engineering
Originally designed for use with Samuel Morse’s
telegraph system, Morse code was one of the first
Abstract character encoding schemes adopted for widespread
The American Standard Code for Information use. Telegraphs transmit information by sending
Interchange (ASCII) is a character encoding system. electronic pulses over telegraph wires. Morse code
It enables computers and other electronic communi- assigns each character to a unique combination of
cation devices to store, process, transmit, print, and short and long pulses. For example, the letter A was
display text and other graphic characters. Initially assigned to the combination of one short followed by
published in 1963, ASCII formed the basis for several one long pulse, while the letter T was assigned to a
other character encoding systems developed for use single long pulse. Using Morse code, a telegraph op-
with PCs and the Internet. erator can send messages by transmitting a sequence
of pulses. The sequence, or string, of pulses repre-
sents the characters that comprise the message text.
Prinicipal Terms
Other character encoding systems were created
bit width: the number of bits used by a computer to meet the needs of new types of electronic devices
or other device to store integer values or other including teleprinters and computers. By the early
data. 1960s, the use of character encoding systems had
character: a unit of information that repre- become widespread. However, no standard char-
sents a single letter, number, punctuation mark, acter encoding system existed to ensure that systems
blank space, or other symbol used in written from different manufacturers could communicate
language. with each other. In fact, by 1963, over sixty different
control characters: units of information used to encoding systems were in use. Nine different sys-
control the manner in which computers and other tems were used by IBM alone. To address this issue,
devices process text and other characters. the American Standards Association (ASA) X3.4
hamming distance: a measurement of the differ- Committee developed a standardized character en-
ence between two characters or control characters coding scheme called ASCII.
that effects character processing, error detection,
and error correction. Understanding the ASCII Standard
printable characters: characters that can be The ASCII standard is based on English. It encodes
written, printed, or displayed in a manner that can 128 characters into integer values from 0 to 127.
be read by a human. Thirty-three of the characters are control charac-
ters, and ninety-five are printable characters that in-
Understanding Character Encoding clude the upper- and lowercase letters from A to Z,
Written language, or text, is composed of a variety the numbers zero to nine, punctuation marks, and a
of graphic symbols called characters. In many lan- blank space. For example, the letter A is encoded as
guages, these characters include letters, numbers, 65 and a comma as 44.
punctuation marks, and blank spaces. Such charac- The encoded integers are then converted to bits,
ters are also called printable characters because they the smallest unit of data that can be stored by a com-
can be printed or otherwise displayed in a form that puter system. A single bit can have a value of either
can be read by humans. Another type of character is zero or one. In order to store integers larger than
a control character. Control characters effect the pro- one, additional bits must be used. The number of
cessing of other characters. For example, a control bits used to store a value is called the bit width. ASCII
character might instruct a printer to print the next specifies a bit width of seven. For example, in ASCII,
character on a new line. Character encoding is the the integer value 65 is stored using seven bits, which
process of converting characters into a format that can be represented as the bit string 1000001.
21
This chart presents the decimal and hexadecimal ASCII codes for common characters on a keyboard. Public
domain, via Wikimedia Commons
22
use on the Internet. However, as the need for more Anderson, Deborah. “Global Linguistic Diversity
characters to support languages other than English for the Internet.” Communications of the ACM Jan.
grew, other standards were developed to meet this 2005: 27. PDF file.
need. One such standard, Unicode can encode Fischer, Eric. The Evolution of Character Codes, 1874–
more than 120,000 characters. ASCII remains an im- 1968. N.p.: Fischer, n.d. Trafficways.org. Web. 22
portant technology, however. Many systems still use Feb. 2016.
ASCII. Character encoding systems such as Unicode Jennings, Tom. “An Annotated History of Some
incorporate ASCII to promote compatibility with ex- Character Codes.” World Power Systems. Tom
isting systems. Jennings, 29 Oct. 2004. Web. 16 Feb. 2016.
McConnell, Robert, James Haynes, and Richard
—Maura Valentino, MSLIS
Warren. “Understanding ASCII Codes.”
NADCOMM. NADCOMM, 14 May 2011. Web. 16
Bibliography Feb. 2016.
Amer. Standards Assn. American Standard Code for Silver, H. Ward. “Digital Code Basics.” Qst 98.8
Information Interchange. Amer. Standards Assn., 17 (2014): 58–59. PDF file.
June 1963. Digital file. “Timeline of Computer History: 1963.” Computer
History Museum. Computer History Museum, 1
May 2015. Web. 23 Feb. 2016.
Assembly Language
Fields of Study hexadecimal: a base-16 number system that uses
the digits 0 through 9 and the letters A, B, C, D, E,
Programming Languages; System-level Programming;
and F as symbols to represent numbers.
Embedded Systems
imperative programming: programming that pro-
duces code that consists largely of commands is-
Abstract
sued to the computer, instructing it to perform
Assembly language is the most fundamental pro- specific actions.
gramming language. It is used to directly manipulate main loop: the overarching process being carried
data in working memory, allowing the programmer out by a computer program, which may then in-
to account for each clock cycle and use the available voke subprocesses.
computing resources most efficiently. Assembly lan- process: the execution of instructions in a com-
guage programming is very compact, making it ideal puter program.
for use in embedded systems that are designed to syntax: rules that describe how to correctly struc-
carry out specific functions or are not generally ac- ture the symbols that comprise a language.
cessible to the end user.
CPU Architecture and Addressing
Digital electronic devices function by the manipula-
Prinicipal Terms
tion of binary signals, typically the voltages applied
embedded systems: computer systems that are in- to a series of conducting circuits under the control
corporated into larger devices or systems to mon- of a central processing unit, or CPU. A binary signal
itor performance or to regulate system functions. has only two states, either on (“high”) or off (“low”).
hardware: the physical parts that make up a com- In CPU architecture and other systems within the
puter. These include the motherboard and pro- hardware of a computer or digital device, a par-
cessor, as well as input and output devices such as allel set of binary signals is controlled by a “clock”
monitors, keyboards, and mice. signal that triggers the progression from one set of
23
binary signals to the next in a process. Each series values being used in intermediate processes to gen-
of signals, and all other counting procedures in the erate the value that will go into the accumulator. The
device, including the ordering of memory locations, third vital register is the “program counter,” which
are expressed as a hexadecimal number that corre- holds the location of the next instruction to be ex-
sponds to the pattern of high and low signals in the ecuted in code memory. Other locations are termed
particular series`. Some locations are reserved for “data pointers,” and contain the location in memory
specific purposes and functions, and cannot be al- at which a series of stored data is located. Each line
tered. These locations are vital components for the of an assembly language program consists typically of
functioning of an assembly language program by “ac- three parts: an operation instruction, followed by a
cumulating” and “registering” data values that the memory location and data, and finally a documen-
program uses. The special registers are identified by tation phrase. Though not absolutely required, it is
specific symbols in the syntax of assembly language perhaps the most essential for understanding what
and their addresses are typically specific to the archi- the purpose of the instruction. It is a statement that is
tecture of the CPU chip, although assembly language not recognized as an instruction or data by the CPU.
itself is a general standard. Assembly language pro- For example, the statement
grams are strictly linear, and all operations and logic
are contained within the main loop of the program. MOV A,30h ; load value from memory address
Assembly language programs are not compiled, but 30h into accumulator
are entered directly into the CPU memory locations
for their operation. Assembly language programs are is made readily understandable to a human by
accordingly the most basic examples of imperative the documentation phrase, while the CPU under-
programming. stands only the MOV A,30h statement. Data can
be addressed in an Assembly language program
Assembly Language Program Format in various ways. The statement MOV A,#20h is an
The principal register in CPU memory is the accu- example of “immediate addressing,” in which the
mulator. It is the standard location for the accumu- value to be stored in memory immediately follows
lated value of a combination of instructions that are the “op-code” in code memory. The above statement
being carried out. Locations called “R registers” hold MOV A,30h is an example of “direct addressing.”
The statement MOV A,@R0 is an example of “indi-
rect addressing,” in which the value to be stored in
memory is retrieved from the location in internal
Sample Problem RAM specified, or “pointed to,” by the value stored
in the first R-register (R0). Two commands are used
Provide documentation phrases for the fol-
for “external direct” addressing. The first, MOVX
lowing statements:
A,@DPTR reads a value in external RAM at the lo-
MOV DPTR,#2021h cation identified by the value stored in the DPTR
CLR A (data pointer) register and loads it into the accu-
MOVC A,@A+DPTR mulator. The second, MOVX @DPTR,A writes the
value in the accumulator to the location in external
Answer:
RAM identified by the value stored in the DPTR reg-
ister. The statement MOVX @R0,A is an example
MOV DPTR,#2021h; sets the value of the of external indirect addressing and functions in
DPTR register to 2021h the same way using the value stored in the specified
CLR A; clears the accumulator (sets the value R-register. A final example is termed “code indirect”
in the accumulator to 00) addressing, and is used to access data stored in the
MOVC A,@A+DPTR; reads the value stored in program code memory. Since code memory repre-
code memory location 2021h and loads it into sents only a fairly small amount of actual memory,
the accumulator code indirect addressing is generally useful only for
very small projects.
24
Autonomic computing
Fields of Study multi-agent system: a system consisting of mul-
tiple separate agents, either software or hardware
Computer Science; Embedded Systems; System-Level
systems, that can cooperate and organize to solve
Programming
problems.
resource distribution: the locations of resources
Abstract
available to a computing system through various
Autonomic computing is a subfield of computer sci- software or hardware components or networked
ence that focuses on enabling computers to operate computer systems.
independently of user input. First articulated by IBM self-star properties: a list of component and system
in 2001, the concept has particular relevance to fields properties required for a computing system to be
such as robotics, artificial intelligence (AI), and ma- classified as an autonomic system.
chine learning.
Self-Managing Systems
Autonomic computing is a branch of computer sci-
Prinicipal Terms
ence aimed at developing computers capable of
autonomic components: self-contained software some autonomous operation. An autonomic system
or hardware modules with an embedded capacity is one that is, in one or more respects, self-managing.
for self-management, connected via input/out- Such systems are sometimes described as “self-*” or
puts to other components in the system. “self-star.” The asterisk, or “star,” represents different
bootstrapping: a self-starting process in a com- properties of autonomic systems (self-organization,
puter system, configured to automatically initiate self-maintenance). Autonomic computing aims to
other processes after the booting process has been develop systems that require less outside input, al-
initiated. lowing users to focus on other activities.
25
Self- Self-
Configuring Healing
Self- Self-
Optimizing Protecting
Self-
Configuring
Self- Self-
Healing Healing
Manual
Autonomic
As computer systems have advanced from very basic technologies needing intense IT management toward autonomic systems that can
self-manage, there have been four major stepping stones: self-optimizing, self-protecting, self-healing, and self-configuring. Each of these
steps toward fully autonomic systems allows for more expansive computing while reducing the skill level required of the end users. EBSCO
illustration.
26
initial setup. Computer scientists disagree about functions, the components can collectively manage
what other self-star properties a system must have the system’s functions and resources with reduced
to be considered autonomic. Proposed properties need for outside input. Linking multiple processors
include: together changes the system’s resource distribu-
tion, requiring that it be able to locate computing
self-stabilization, the ability to return to a stable
resources within all connected agents in order to
state after a change in configuration;
handle tasks effectively.
self-healing, the ability to recover from external
Semi-autonomic software and hardware systems
damage or internal errors;
are commonly used. Peer-to-peer (P2P) systems for
self-organization, the ability to organize compo-
social networking and communication generally
nent parts and processes toward a goal;
have some autonomic properties, including self-
self-protection, the ability to combat external
configuration, self-tuning, and self-organization.
threats to operation; and
These systems can determine a user’s particular
self-optimization, the ability to manage all re-
computer setup, tune themselves to function in var-
sources and components to optimize operation.
ious environments, and self-organize in response to
Autonomic systems may also display self-aware- changing data or configuration. Most modern com-
ness and self-learning. Self-awareness in a computer puting systems contain ACs but are not considered
system differs from self-awareness in a biological fully autonomic, as they still require some external
system. In a computer system, self-awareness is better management.
defined as the system’s knowledge of its internal com-
ponents and configuration. Self-learning is the ability The Promise of Autonomic Systems
to learn from experiences without a user program- The main goal of autonomic computing is to enable
ming new information into the system. computer systems to perform basic maintenance
and optimization tasks on their own. Maximizing the
number of automated functions that a computer can
Design of Autonomic Systems
handle allows engineers and system administrators
An autonomic computer system is typically envi-
to focus on other activities. It also enhances ease of
sioned as having autonomic components (ACs),
operation, especially for those less adept at data man-
which are at least partly self-managing. An ex-
agement or system maintenance. For instance, the
ample of an AC is bootstrapping. Bootstrapping is
bootstrapping system and the self-regulatory systems
the process by which a computer configures and
that detect and correct errors have made computing
initiates various processes during start-up. After a
more friendly for the average user.
user turns on the computer, the bootstrapping pro-
Autonomic computer systems are particularly im-
cess is self-managed. It proceeds through a self-di-
portant in robotics, artificial intelligence (AI), and
agnostic check and then activates various hardware
machine learning. These fields seek to design ma-
and software components.
chines that can work unaided after initial setup and
There are two basic models for autonomic com-
programming. The science of autonomic computing
puter design: a feedback control system and a
is still in its infancy, but it has been greatly enhanced
multi-agent system. In a feedback control system,
by advancements in processing power and dynamic
changing conditions provide feedback to the
computer networking. For instance, the AI system
system that triggers changes in the system’s func-
Amelia, developed by former IT specialist Chetan
tion. Feedback control is often found in biological
Dube, not only responds to verbal queries and an-
systems. In the autonomic nervous system, for ex-
swers questions but can also learn by listening to
ample, levels of various neurotransmitters are linked
human operators answer questions that it cannot
to feedback systems that activate or deactivate ACs.
answer. To some, systems that can learn and alter
A multi-agent system uses the collective functions
their own programming are the ultimate goal of au-
of separate components to complete higher-order
tonomic design.
functions. For instance, groups of computers can
be networked such that by performing individual —Micah L. Issitt
27
28
29
Hart, Archibald D., and Sylvia Hart Frejd. The Digital Lien, Tracey. “Virtual Reality Isn’t Just for Video
Invasion: How Technology Is Shaping You and Your Games.” Los Angeles Times. Tribune, 8 Jan. 2015.
Relationships. Grand Rapids: Baker, 2013. Print. Web. 23 Mar. 2016.
Kizza, Joseph Migga. Ethical and Social Issues in the Parisi, Tony. Learning Virtual Reality: Developing
Information Age. 5th ed. London: Springer, 2013. Immersive Experiences and Applications for Desktop,
Print. Web, and Mobile. Sebastopol: O’Reilly, 2015. Print.
30
31
electronics manufacturers released their own ver- input variable. First-generation BASIC was capable
sions of personal computers in quick succession, of carrying out fairly complex mathematical calcula-
each designed to connect to a TV set or other tions such as complex polynomials and multi-expo-
cathode ray tube (CRT) device and came with a nent relations, provided that they could be written
version of BASIC as its standard programming out in tan executable format. Iterative calculations
language. The ready availability of such an easy- or operations are carried out using FOR-NEXT com-
to-learn programming language resulted in an mands, and selections are made using IF-THEN-
explosion of user-created programs that could be ELSE commands. The user ‘communicated’ with
readily transferred from one machine to another the BASIC program via the INPUT and PRINT com-
and amended or enhanced at will. These machines mands. Comments in the program code began with
used 8-bit central processing units (CPU) designed the REM command, allowing the programmer to
and manufactured by various companies. Each document the source code without interfering with
different CPU chip used a slightly different archi- the program function. The program commands are
tecture requiring its own version of ASSEMBLY carried out in sequential order until encountering
language, and therefore its own version of BASIC. the END command. Each command is predicated
With only minor alterations, however, a BASIC by a line number, followed by the command instruc-
program written for one type of microcomputer tion and the input/output (I/O) variables as ap-
could be made to function on practically any other propriate. (Mainframe computers running BASIC
BASIC-capable microcomputer. With the introduc- normally used printer terminals to display the I/O
tion of the IBM 8088 microcomputer, and the es- of the program as hard copy.) More recent versions
tablishment of the Microsoft Corporation’s propri- of BASIC incorporated more advanced features and
etary version of BASIC as the de facto standard in operations, as well as object classes and structures
those machines, the competition from other man- that are typical of non-linear object-oriented pro-
ufacturers eventually fell by the wayside. The intro- gramming languages.
duction of the IBM 80286 CPU solidified the place
of the IBM standard architecture with the intro- Subroutines versus Functions
duction of DOS and Windows operating systems in The linear structure of BASIC programs relies on the
competition with Apple Corporation’s Macintosh use of subroutines that are integrated into the main
graphics-based operating system. Despite these his- loop. As the program code is executed line by line,
torical changes, however, the BASIC programming a decision point in the program may direct the ex-
language continues to be a valuable and reliable ecution to a specific section of commands that does
‘workhorse’ programming language, having been not appear in the sequence. That section of code is
developed through several iterations. In 2006, for a secondary algorithm that performs a specific task
example, it was reported that some 59% of pro- or operation. When that operation has been com-
gram and application developers working on the pleted, execution returns to the main code and
.NET Framework for Microsoft Corporation used continues from where it left off. Different sections
Visual BASIC.NET exclusively. of the program code can refer to the same subrou-
tine any number of times. This eliminates the need
BASIC Program Structure to repeat the coding throughout the program. In
BASIC is an imperative programming language that more advanced versions of BASIC, a subroutine can
is linear in structure and entirely self-contained, exist outside of the main code, but must be identi-
consisting of a logical series of commands. Each fied by the SUB and END SUB identifiers. A func-
BASIC program is essentially an algorithm designed tion, on the other hand, is a feature of non-linear
to produce a specific type of output from the data “object oriented” programming languages, such as
that is provided to it. Within the main loop of the C++ and Java, in which the main program may simply
program, or source code, any number of secondary be a short list of functions that are to be executed.
algorithms may be accommodated. Each of these is Unlike subroutines, functions are not dependent
designed to carry out a specific function or calcula- on the main program, and are portable between en-
tion using the values determined or provided for an tirely different programs. The source code of a single
32
function to be much longer than the source code of upper or lower case ‘’y’ as the LEFT character of the
the main program. words ‘YES’ or ‘yes’, the program cycles back to the
beginning and runs again. Any other keystroke fails
this test and the program ENDs. The $ attached to
Sample Problem any variable indicates a text ‘string’, and is typically
called ‘string’’ instead of ‘dollar sign’.
Write a simple BASIC program that ac-
cepts a value of the temperature in degrees Weaknesses of BASIC
Fahrenheit and outputs the corresponding BASIC continues to be a popular and versatile lan-
temperature in degrees Celsius and Kelvin, guage that is relatively easy to learn and to use. It
then prompts for a new input value. does have some syntactical limitations that result
in common errors. One of the most common er-
Answer: rors made by novice users of BASIC is failing to in-
10 PRINT “Enter temperature in de- clude the END statement at the end of the program,
grees Fahrenheit:”; Tf causing the computer to idle as it awaits a next com-
20 Tc = ((Tf – 32)*5)/9); mand to appear. The other major flaw is the ease with
which an error in syntax can lock the computer into
30 Tk = Tc + 273.15;
an infinite loop in which it performs an operation
40 PRINT “Corresponding temperature continuously without advancing the program opera-
in degrees Celsius is: ” Tc tion. With attention to detail, however, the BASIC
50 PRINT “Corresponding temperature language is a very versatile programming language
in Kelvin is: ” Tk that is highly applicable in many fields.
60 PRINT —Richard M. Renneboog MSc
70 PRINT “Enter another value?”; A$
80 IF LEN (A$) = 0 THEN GOTO 70 Bibliography
90 A$ = LEFT$ (A$, 1) Kemeny, John G. and Kurtz, Thomas E. (1985) Back
100 IF A$ = “Y” OR A$ = “y” THEN GOTO 10 To BASIC: The History, Corruption, and Future of the
110 END Language. Boston, MA: Addison-Wesley. Print.
Kumari, Ramesh (2005) Computers and Their
Applications to Chemistry. 2nd ed. Oxford, UK: Alpha
The algorithm here is to accept a numerical value Science International. Print.
from the user as the input variable, convert it to a new O’Regan, Gerard (2012) A Brief History of Computing.
value, and then convert that to another new value. It 2nd ed., New York, NY: Springer-Verlag. Print.
then displays the calculated values, and prompts the Scott,Michael L. (2016) Programming Language
user for a new input value. The program scans for the Pragmatics. 4th ed., Waltham, MA: Morgan
new input and if none is received it repeats sending Kaufmann. Print.
the prompt and scanning for the new input until a Vick, Paul (2004) The Visual BASIC .NET Programming
keystroke is registered. If the keystroke is either an Language. Boston, MA: Addison-Wesley. Print.
33
Binary/hexadecimal representations
Fields of Study Understanding the Binary Number
System
Computer Science; Computer Engineering; Software
A mathematical number system is a way of representing
Engineering
numbers using a defined set of symbols. Number sys-
tems take their names from the number of symbols
Abstract
the system uses to represent numbers. For example,
The binary number system is a base-2 number system. the most common mathematical number system is the
It is used by digital devices to store data and perform decimal system, or base-10 system. Deci- means “ten.”
mathematical operations. The hexadecimal number It uses the ten digits 0 through 9 as symbols for num-
system is a base-16 number system. It enables humans bers. Number systems can be based on any number of
to work efficiently with large numbers stored as bi- unique symbols, however. For example, the number
nary data. system based on the use of two digit symbols (0 and 1)
is called the binary or base-2 system.
Prinicipal Terms Both the decimal and binary number systems use
the relative position of digits in a similar way when rep-
base-16: a number system using sixteen symbols, 0
resenting numbers. The value in the rightmost, or first,
through 9 and A through F.
position is multiplied by the number of digits used in
base-2 system: a number system using the digits 0
the system to the zero power. For the decimal system,
and 1.
this value is 100. For the binary system, this value is 20.
bit: a single binary digit that can have a value of
Both 100 and 20 are equal to 1. Any number x raised to
either 0 or 1.
the zero power is equal to 1. The power used increases
byte: a group of eight bits.
by one for the second position and so on.
nibble: a group of four bits.
Position 8 7 6 5 4 3 2 1
Seventh Sixth Fifth Fourth Third Second First Zero
Power Power Power Power Power Power Power Power
Decimal 10,000,000 1,000,000 100,000 10,000 1,000 100 10 1
or 10 7 or 10 6 or 10 5 or 10 4 or 10 3 or 10 2 or 10 1 or 10 0
Binary 128 or 2 7 64 or 2 6 32 or 2 5 16 or 2 4 8 or 2 3 4 or 2 2 2 or 2 1 1 or 2 0
Using the decimal number system, the integer 234 is represented by placing the symbols 2, 3, and 4 in
positions 3, 2, and 1, respectively.
Position 3 2 1
Decimal 100 or 10 2 10 or 10 1 1 or 10 0
Digits 2 3 4
In the decimal system, 234 = (2 × 100) + (3 × 10) + (4 × 1), or (2 × 102) + (3 × 101) + (4x100). The binary system
uses the relative position of the symbols 0 and 1 to express the integer 234 in a different manner.
Position 8 7 6 5 4 3 2 1
Binary 128 or 2 7 64 or 2 6 32 or 2 5 16 or 2 4 8 or 2 3 4 or 2 2 2 or 2 1 1 or 2 0
Bit 1 1 1 0 1 0 1 0
34
The American Standard Code for Information Interchange (ASCII) was an early system used to translate basic
characters into a numerical code readable by computers. The common characters on a keyboard are provided
with decimal and hexadecimal codes. EBSCO illustration.
35
Sample Problem
Answer:
The decimal value of the binary byte 10111001 is 185. The decimal value can
be determined using a chart and then calculating.
128 or 2 7 64 or 2 6 32 or 2 5 16 or 2 4 8 or 2 3 4 or 2 2 2 or 2 1 1 or 2 0
1 0 1 1 1 0 0 1
In the binary system, 234 = (1 × 128) + (1 × 64) + (1 Using Hexadecimal to Simplify Binary
× 32) + (0 × 16) + (1 × 8) + (0 × 4) + (1 × 2) + (0 × 1), Numbers
or 234 = (1 × 27) + (1 × 26) + (1 × 25) + (0 × 24) + (1 × The hexadecimal number system is a base-16 system.
23) + (0 × 22) + (1 × 21) + (0 × 20). It uses the digits 0 through 9 and the letters A through
F to represent numbers. The hexadecimal digit, or
The Importance of the Binary Number hex digit, A has a decimal value of 10. Hex digit B
System equals 11, C equals 12, D equals 13, E equals 14, and
The binary number system is used to store numbers and F equals 15. In hexadecimal, the value 10 is equal to
perform mathematical operations in computers systems. 16 in the decimal system. Using hexadecimal, a bi-
Such devices store data using transistors, electronic parts nary nibble can be represented by a single symbol.
that can each be switched between two states. One state For example, the hex digit F can be used instead
represents the binary digit 0 and the other, the binary of the binary nibble 1111 for the decimal value 15.
digit 1. These binary digits are bits, the smallest units of Sixteen different combinations of bits are possible
data that can be stored and manipulated. A single bit can in a binary nibble. The hexadecimal system, with six-
be used to store the value 0 or 1. To store values larger teen different symbols, is therefore ideal for working
than 1, groups of bits are used. A group of four bits is a with nibbles.
nibble. A group of eight bits is a byte.
Position 8 7 6 5 4 3 2 1
Seventh Sixth Fifth Fourth Third Second First Zero
Power Power Power Power Power Power Power Power
Decimal 10,000,000 1,000,000 100,000 10,000 1,000 100 10 1
or 10 7 or 10 6 or 10 5 or 10 4 or 10 3 or 10 2 or 10 1 or 10 0
Hexa- 268,435,456 16,777,216 1,048,576 65,536 4,096 256 or 16 or 1
decimal or 16 7 or 16 6 or 16 5 or 16 4 or 16 3 16 2 16 1 or 16 0
36
One disadvantage of using binary is that large digits as 11110100001001000000. The same number
numbers of digits are needed to represent large in- is shown in hex digits as F4240, which is equal to (15 ×
tegers. For example, 1,000,000 is shown in binary 65,536) + (4 × 4,096) + (2 × 256) + (4 × 16) + (0 × 1).
Position 5 4 3 2 1
Hexadecimal 65,536 4,096 256 or 16 or 1
or 16 4 or 16 3 16 2 16 1 or 16 0
Hex digits F or 15 4 2 4 0
Computers can quickly and easily work with large Govindjee, S. Internal Representation of Numbers. Dept.
numbers in binary. Humans have a harder time using of Civil and Environmental Engineering, U of
binary to work with large numbers. Binary uses many California Berkeley, Spring 2013. Digital File.
more digits than hexadecimal does to represent large Glaser, Anton. History of Binary and Other Nondecimal
numbers. Hex digits are therefore easier for humans Numeration. Rev. ed. Los Angeles: Tomash, 1981.
to use to write, read, and process than binary. Print.
Lande, Daniel R. “Development of the Binary
—Maura Valentino, MSLIS
Number System and the Foundations of Computer
Science.” Mathematics Enthusiast 1 Dec. 2014: 513–
Bibliography 40. Print.
Australian National University. Binary Representation “A Tutorial on Data Representation: Integers,
and Computer Arithmetic. Australian National U, Floating-Point Numbers, and Characters.” NTU.
n.d. Digital file. edu. Nanyang Technological U, Jan. 2014. Web. 20
Cheever, Erik. “Representation of Numbers.” Feb. 2016.
Swarthmore College. Swarthmore College, n.d. Web.
20 Feb. 2016.
37
Biochemical engineering
Fields of Study needed for a particular application. If a certain type
of enzyme is needed to treat a disease, for example,
Biotechnology
it may be possible to locate a DNA segment in an or-
Abstract ganism that either naturally creates this material or
can be “reprogrammed” to create it. In order to do
Biochemical engineering is a subfield of engineering so, biochemical engineers must be able to study the
focused on the creation of substances to be used in the structure and composition of biomolecules (biolog-
production of food or industrial materials, using biolog- ical molecules).
ical as well as manufactured chemical ingredients. Some
biochemical engineers, for example, have discovered Methods of Analysis
how to get bacteria to help break down oil spills in order Scientists use various techniques to study and analyze
to minimize the environmental impact of such disasters. substances of interest. First, a sample of the substance
must be prepared. This usually begins with blotting,
Prinicipal Terms which isolates DNA and other proteins for further
affinity chromatography: a technique for sepa- study. When studying DNA, the sample may then be
rating a particular biochemical substance from a amplified in a polymerase chain reaction (PCR) ma-
mixture based on its specific interaction with an- chine. Polymerase chain reaction is a technique for
other substance. producing many copies of a DNA strand. This allows
blotting: a method of transferring RNA, DNA, and close analysis or multiple tests to be performed on
other proteins onto a substrate for analysis. even a very small sample.
interferometry: a technique for studying bio- Once the sample is ready, there are several dif-
chemical substances by superimposing light waves, ferent methods that may be used to study it. Which
typically one reflected from the substance and one
reflected from a reference point, and analyzing
the interference.
nuclear magnetic resonance (NMR) spectroscopy:
a technique for studying the properties of atoms
or molecules by applying an external magnetic
field to atomic nuclei and analyzing the resulting
difference in energy levels.
polymerase chain reaction (PCR) machine: a ma-
chine that uses polymerase chain reaction to am-
plify segments of DNA for analysis; also called a
thermal cycler.
38
method to use depends in part on the type of infor- work they do is to further the creation of products
mation needed. Nuclear magnetic resonance (NMR) that will benefit society and generate profits for the
spectroscopy involves exposing a substance to a mag- company that markets them. Product development re-
netic field in order to alter the spin of its atomic nu- quires a biochemical engineer to develop a thorough
clei. This change in spin results in a change in the understanding of the needs and goals of a project in
energy level of the nuclei. The difference in energy order to research potential solutions that fit with those
levels provides information about the physical and needs. In the case of products with medical applica-
chemical properties of the atoms. NMR spectroscopy tions, there are also elaborate safety precautions that
is most often used to study the structure of organic must be taken, as well as lengthy approval processes
compounds. requiring cooperation with regulatory agencies.
Interferometry refers to several related tech- Documentation and scholarly publishing are
niques involving wave superposition. In most cases, also important duties for biochemical engineers.
identical electromagnetic waves are reflected from Each stage of their research must be recorded and
both the sample material and a reference, then analyzed. Biochemical engineers are encouraged to
superimposed. The reference may be another sub- share their findings with the global research commu-
stance, or it may be a mirror that reflects the wave nity whenever possible. While this sometimes raises
unaltered. The resulting interference pattern will concerns about the confidentiality of proprietary in-
reveal any structural differences between the two formation, in the long run the sharing of research
samples. Interferometry can be used to identify ma- helps advance the field and encourage innovation.
terials, study their molecular structures, or provide Many discoveries in the field of biochemical engi-
detailed tissue imaging. neering are carefully guarded because of their profit
Affinity chromatography is a method for sepa- potential, as patents on biochemically engineered
rating specific substances from mixtures. “Affinity” substances can be worth large amounts of money.
refers to the fact that certain biomolecules have a This is why the patent system tries to balance mon-
strong tendency to bind to other specific types of etary rewards for inventors against society’s need for
molecules. For example, an antigen is a harmful bio- access to information.
molecule that elicits an immune response in an or-
ganism. The immune system responds by producing Applications of Biochemical Engineering
antibodies, which are proteins that are “designed” One of the greatest applications of biochemical
to bind to that specific antigen. Thus, if a researcher engineering is in the field of drug manufacturing.
wanted to separate antibodies from a biochemical Traditional pharmaceutical manufacturing processes
mixture, they would introduce antigens specific to involve multiple types of chemical reactions, each
those antibodies into the mixture. The antibody mol- a laborious step in the process of creating a batch
ecules would separate from the mixture and bind to of medicinal compound. Biochemical engineers
the antigens instead. Affinity chromatography can be reinvent this process by putting nature to work for
used to purify or concentrate a substance or to iden- them. They identify biological processes that can be
tify substances in a mixture. tweaked to produce the same drugs without having
to mix chemicals.
Duties of a Biochemical Engineer One newer area of research in biochemical en-
The task of a biochemical engineer is to look at real- gineering is the artificial production of human or-
world problems and at the chemical and biological gans through processes similar to 3-D printing. By
properties of organisms and materials as if they were studying the ways that different types of tissue cells
pieces of a jigsaw puzzle, and find matches where reproduce, biochemical engineers have been able
two pieces fit together. They match up problems with to grow rudimentary structures such as replacement
solutions. ears. Scientists anticipate that they will eventually be
Biochemical engineers spend much of their time on able to produce fully functioning hearts, livers, and
design and analysis, but they are also involved in other other organs, avoiding the need for organ donation.
tasks. Much of their time is spent working on product
—Scott Zimmer, JD
development. The overarching goal of the design
39
Biomedical engineering
Fields of Study video chats, networked medical equipment, smart-
phones, and so on.
Biotechnology; Computer Engineering
What Is Biomedical Engineering?
Abstract
Biomedical engineering (BME) applies engineering
Biomedical engineering (BME) applies engi- design principles to the study of biology in order to
neering design principles to biology in order to improve health care. It developed from the overlap
improve human health. It encompasses low-tech between engineering, biology, and medical research
tools, such as crutches and simple prostheses, as into its own branch of engineering. BME and related
well as highly sophisticated devices, such as pace- fields, such as biomedical research, remain distinct,
makers and x-ray machines. Computer science is as the case of the antibiotic penicillin shows. The ac-
crucial to the design and production of many BME cidental discovery that the Penicillium mold has anti-
devices. bacterial properties was a by-product of basic medical
research, not BME. However, efforts to design and
Prinicipal Terms implement system to mass-produce and distribute
the drug were a textbook example of BME. Products
bioinstrumentation: devices that combine biology of BME include prosthetics, imaging equipment, re-
and electronics in order to interface with a pa- generative medicine, medical implants, advances in
tient’s body and record or monitor various health drug production, and even telecommunications.
parameters. Although many innovations in BME are high tech,
biomechanics: the mechanics (structure and func- not all are. Consider crutches, which assist people
tion) of living things in response to various forces. with mobility after a foot or leg injury. Modern
bioMEMS: short for “biomedical microelectrome- crutches are designed to be strong, lightweight,
chanical system”; a microscale or nanoscale self- and comfortable during extended use. They are in-
contained device used for various applications in formed by knowledge of human biology, especially
health care. biomechanics, to minimize strain on the patient’s
genetic modification: direct manipulation of an bones and muscles.
organism’s genome, often for the purpose of engi-
neering useful microbes or correcting for genetic Developing the Tools of Medicine
disease. Many BME projects involve instrumentation, the
telemedicine: health care provided from a dis- various devices used in medical care. Such devices
tance using communications technology, such as include imaging tools such as magnetic resonance
40
To build an artificial organ, live cells are placed on a scaffolding (an exact replica mold of the
organ) and subjected to specific conditions to induce growth to develop the desired organ. By
BruceBlaus, CC BY 3.0 (http://creativecommons.org/licenses/by/3.0), via Wikimedia Commons.
41
imaging (MRI) machines, positron emission tomog- Instrumentation is often built around computers.
raphy (PET) scanners, and x-ray machines. It also Medical imaging devices depend on embedded mi-
includes bioinstrumentation, devices specifically crocomputers and specialized software to process pa-
designed to connect to the human body. These ei- tient data and display it in a way that is useful to doc-
ther monitor health parameters or provide a thera- tors. Smaller devices such as digital thermometers
peutic benefit. Implanted pacemakers, for example, depend on microprocessors. An electrocardiograph
use low-voltage electrical impulses to keep the heart (EKG) monitors a patient’s heart rate and alerts the
pumping in proper rhythm. Different bioMEMS medical team if the patient goes into cardiac arrest.
can act as sensors, analyze blood or genes, or deliver This is made possible through BME that combines bi-
drugs at a much smaller scale than traditional de- ological knowledge (normal human heart rates) with
vices. Some bioMEMS are known as “labs-on-a-chip” sensors (electrodes that transmit electrical impulses
because they incorporate the functions of a full-sized from a patient’s skin to a display) and computer sci-
biology lab on a computer chip. ence (processing the information, programming the
The development of smaller, highly portable, easy- device response). Advances in computer technology
to-use instrumentation is a keystone of telemedicine. are driving advances in BME instrumentation. For
With smartphone apps, bioMEMS, and cell-phone instance, short-range wireless signals enable double
networks, it is increasingly possible to diagnose amputees to walk by activating motorized joints and
and treat patients far from hospitals and clinics. allowing the prostheses to communicate with one
Telemedicine is especially helpful developing coun- another.
tries that lack a strong infrastructure.
—Kenrick Vezina, MS
Engineering Biology
Another major area of BME involves the engineering
of life itself. This includes regenerative medicine, in Bibliography
which organs and tissues are grown in a lab, often Badilescu, Simona, and Muthukumaran Packirisamy.
from a combination of synthetic and organic bioma- BioMEMS: Science and Engineering Perspectives. Boca
terials, to replace damaged or diseased ones. It also Raton: CRC, 2011. Print.
includes genetic engineering, in which an organism Enderle, John Denis, and Joseph D. Brozino.
or cell’s genes are manipulated toward a desired Introduction to Biomedical Engineering. 3rd ed.
end. Genetic engineering of bacteria can produce Burlington: Elsevier, 2012. Print.
useful drugs. Mice and other animals have been en- “Examples and Explanations of BME.” Biomedical
gineered to manifest traits such as cancer suscepti- Engineering Society. Biomedical Engineering Soc.,
bility to make them better study subjects. Genetic en- 2012–14. Web. 23 Jan. 2016.
gineering could one day correct genetic conditions “Biomedical Engineers.” Occupational Outlook
such as Huntington’s disease in humans. Traditional Handbook, 2016–2017 Edition. Bureau of Labor
breeding for desired traits among study organisms is Statistics, US Dept. of Labor, 17 Dec. 2015. Web.
also used in BME, though it is a slower, less powerful 23 Jan. 2016.
technique. “Milestones of Innovation.” American Institute for
Medical and Biological Engineering. Amer. Inst. for
Computers in Biomedical Engineering Medical and Biological Engineering, 2016. Web.
Computer use is widespread in BME design and de- 25 Jan. 2016.
vice creation. Consider the design of a custom pros- Pavel, M., et al. “The Role of Technology and
thetic. Computers scan the amputation site to ensure Engineering Models in Transforming Healthcare.”
a secure fit, model the limb and a prosthetic to the IEEE Reviews in Biomedical Engineering. IEEE, 2013.
correct proportions, and even print components Web. 25 Jan. 2016.
of the prosthesis using a 3-D printer. Computer sci- Saltzman, W. Mark. “Lecture 1—What Is Biomedical
ence techniques are also used to process the growing Engineering?” BENG 100: Frontiers of Biomedical
amount of patient data, searching out patterns of dis- Engineering. Yale U, Spring 2008. Web. 23 Jan.
ease incidence. 2016.
42
Biometrics
Fields of Study features such as facial geometry and voice recogni-
tion. However, in some settings these methods are
Biotechnology; Security; Computer Science
problematic and can lead to high false match rates.
Individuals with similar voices or appearances may
Abstract be mistaken for one another. Biometric science at-
Biometrics is the study of biology and metrics, or tempts to reduce the probability of false matches
measurement, especially for the purpose of identi- by determining the most accurate characteristics to
fying individuals based on unique characteristics. use for identification and by creating systems for in-
Digital scanning, measurement, and matching creasing the reliability of biometric security systems.
tools are used to create automated systems for veri- The skin of the human finger contains a pattern of
fying identity through the comparison of biometric ridges that are unique to each individual. The unique
samples. nature of fingerprints was discovered in antiquity,
and in some cultures, including ancient Egypt and
Prinicipal Terms Babylonia, fingerprints were used in place of written
signatures on documents or artworks. In the late
bioinformatics: the scientific field focused on de- 1800s, scientists began experimenting with the use
veloping computer systems and software to ana- of fingerprints to identify individuals for the purpose
lyze and examine biological data. of forensic analysis. Fingerprinting quickly became
biosignal processing: the measurement and moni- the most widespread form of biometric classification.
toring of a biological signal, such as heart rate or However, fingerprints can be accidentally or pur-
blood oxidation, rather than an image. posefully altered and can be imitated in a variety of
false match rate: the probability that a biometric ways, limiting their reliability for security and identi-
system incorrectly matches an input to a template fication. In the twentieth and twenty-first centuries,
contained within a database. biometrics specialists identified a number of other
Hamming distance: a measurement of the differ- unique characteristics that can be used for identifica-
ence between two strings of information. tion. These include patterns of blood vessels in the
identifiers: measurable characteristics used to retina, the structure of the iris, the geometry of the
identify individuals. human face, and the unique genetic code in each
individual’s DNA. Biometrics became closely tied to
The Science of Identifying Individuals advances in computer science that allowed such iden-
Biometrics is a scientific field that focuses on using tifiers to be measured and recorded.
human characteristics as identifiers to distinguish
between different individuals. These include facial Sampling and Matching
geometry, dermal patterns, biorhythms, and vocal Biometric identification involves two primary pro-
character. Fingerprint identification was one of the cesses: sampling and comparing biometric character-
first biometric techniques. It was first used in antiq- istics. Bioinformatics is a multidisciplinary field that
uity before becoming a global standard in forensic develops and uses technology to analyze or model
identification in the 1800s. Advances in computer sci- biological data. Bioinformatics software enables
ence have allowed for the development of automated a scanned sample, such as a fingerprint, to be con-
systems capable of identifying and matching other verted into a digital signal. A fingerprint scan creates
biometric identifiers. These include retinal blood a geometric map representing length, curvature, and
vessel patterns, iris morphology, voices, and DNA. other measurements, for instance. Various digital
maps taken from samples can then be compared to
Biometrics Basics determine if two samples came from the same indi-
The ability to identify individuals is an important vidual. In the case of iris identification, the pattern
facet of human culture and society. Most people are of the iris can be mapped geometrically and then
instinctively able to identify each other by external compressed into a set of binary codes. Two binary
43
Acquire
Localize Match
An attribute is scanned to make a digital representation, isolated details of that attribute are used
to create an ID template for a particular person, and the template is matched to the “key” ID to
retrieve the correct “key” for an individual. The number and location of isolated details must
have a large enough hamming distance to ensure there is no duplication of templates. EBSCO
illustration.
codes can be compared, and a measurement called approved template according to a matching algo-
Hamming distance can be used to determine how rithm, access is granted. If it does not match, access
different they are. Similar measurement methods are can be denied.
used in DNA matching. Patterns of genetic codes can
be compared, and algorithms automatically calculate Applied biometrics
the potential that one or more samples represent the The twenty-first century has witnessed the commer-
same individual. cialization of biometric identification for personal se-
When an individual’s identifiers are added to a curity. Most individuals use passwords, physical keys,
database, the process is called “enrollment.” Future or other types of codes to protect property and data.
biometric samples can be compared against all sam- However, these security methods have significant dis-
ples previously enrolled in the database. In biometric advantages. They can be lost, forgotten, stolen, or
security technology, authorized individuals must first duplicated. Biometric characteristics, meanwhile, are
create a template of biometric samples matched with unique, more difficult to forge, and cannot be lost or
their identity. Any user who attempts to access the forgotten.
system is then asked to submit a biometric sample Improvements in computer technology have put
for validation. If the submitted sample matches an biometrics in the reach of consumers. By the early
44
2000s, a number of companies began offering finger- multiple identifiers simultaneously to identify indi-
print scanning for security on personal computers viduals. For instance, a number of researchers have
and home security systems. Companies have also pro- suggested that biosignal processing could be used in
duced consumer versions of facial recognition, voice conjunction with other biometric measures to pro-
recognition, and iris/retinal scanning technology duce more accurate biometric security and identifi-
for home or commercial use. The most common use cation systems.
of biometric systems has been in personal computer
—Micah L. Issitt
security. For instance, technology company Apple’s
Touch ID system uses fingerprint scanning. Certain
smart devices using the Android operating system Bibliography
can use a facial recognition program to allow user ac- Biometric Center of Excellence. Federal Bureau of
cess. Some companies have introduced fingerprint Investigation, 2016. Web. 21 Jan. 2016.
or facial recognition as a key for electronic payment “Book—Understanding Biometrics.” Griaule
and debit transactions. Supporters claim that such Biometrics. Griaule Biometrics, 2008. Web. 21 Jan.
systems offer greater security than traditional debit 2016.
or credit cards, which can be stolen and used by “Introduction to Biometrics.” Biometrics.gov.
other individuals. Biometrics.gov, 2006. Web. 21 Jan. 2016.
Each available biometric system has its own ad- Jain, Anil K., Arun A. Ross, and Karthik Nandakumar.
vantages and disadvantages. For example, DNA Introduction to Biometrics. New York: Springer, 2011.
analysis is the most accurate biometric characteristic. Print.
However, it depends on the ability to collect and an- Modi, Shimon K. Biometrics in Identity Management.
alyze DNA samples, which is a time consuming and Boston: Artech House, 2011. Print.
technologically advanced process. Opponents argue Shahani, Aarthi. “Biometrics May Ditch the Password,
that if fingerprints, for instance, are lifted and stolen, But Not the Hackers.” All Things Considered. NPR,
the identity theft victim has no recourse like a pass- 26 Apr. 2015. Web. 21 Jan. 2016.
word reset. Thus, biometrics’ use for security may Van den Broek, Egon L. “Beyond Biometrics.” Procedia
in fact present a great risk. In the 2010s, biometrics Computer Science 1.1 (2010): 2511–19. Print.
systems shifted toward a multimodal approach using
45
Biotechnology
Fields of Study experimentation and careful study to learn how to
use natural products. Secondary natural products
Biotechnology; Robotics
such as wine and cheese require deeper knowledge
of organic interactions. A wine or cheese producer
Abstract
must know how chemical processes and microor-
Biotechnology uses living organisms or their derivatives ganisms modify other biological products (grape
to make products. Farming and animal husbandry are juice, milk).
early examples. Modern examples include biomedi- Basic science research into organisms’ physiology
cines, gene therapies, prostheses, and skin grafts. and behavior drives biotechnology and its subfields.
It was first recognized as a unique field of study in the
Prinicipal Terms 1970s and soon became one of the fastest-growing in-
dustrial fields. Among the more controversial early
bioinformatics: the use of computer-based tools
advancements was the genetic engineering of crops,
and techniques to obtain and evaluate biological
which became common in the US food market in the
data.
1990s.
bioinstrumentation: the use of instruments to
Bioinformatics combines basic science, engi-
record data about an organism’s physiology and
neering, math, and computer science to advance the
functions.
study of organisms. Thanks to twenty-first-century
biomaterials: natural or synthetic materials that
computer technology, bioinformatics is a leading
can be used to replace, repair, or modify organic
field in biological research. Bioinformatics data is
tissues or systems.
often directly used to develop biotechnology.
biomechanics: the various mechanical processes
Bioinstrumentation develops specialized tools to
such as the structure, function, or activity of or-
record data about living organisms. Bioinstruments
ganisms.
that record physiological processes such as blood
bionics: the use of biologically based concepts and
pressure and brain activity have been crucial to ad-
techniques to solve mechanical and technological
vances in medicine. They have also led to products
problems.
such as wearable heart-rate monitors, which became
a popular fitness tool in the 2010s.
Biological Technology
“Technology” can be broadly defined as the use of
scientific knowledge to solve practical problems. All Imitating Nature
devices, from the earliest stone tools to modern com- Another facet of biotechnology is the development of
puters, are examples of technology. Biotechnology synthetic technology that mimics biological systems.
is the use of organisms or biological products in this The subfield of biomechanics has resulted in a variety
problem-solving process. of medical and industrial products. It also informs
Farming and animal husbandry are among the the industrial science of bionics, which develops syn-
earliest forms of biotechnology. They represent the thetic tools that mirror the form or function of or-
application of knowledge to increase food produc- ganic structures. For example, Velcro was designed to
tion. In the twenty-first century, biotechnology spans mimic the way the burrs of some plants cling to soft
a broad range of industrial and scientific processes, material such as clothing. Newer adhesive technology
from gene therapies to skin grafts. uses hydrogen bonding, the same phenomenon that
allows geckos to cling even to smooth surfaces.
Studying Biological Structures and Bionics is actually a very old field. Many machines
Functions and devices, including the earliest flying machines
Using animal skins for clothing, or plant mate- and even building structures, have been inspired
rial for roofing and food, may seem intuitive by by similar biological structures. Bionics and biome-
modern standards. However, it took considerable chanics are also key to robotics and prosthetics.
46
A pacemaker is an example of technology working with a biological system. Biotechnology can enhance the
efficiency of a biological system or replace nonfunctional components of the system. By National Heart Lung
and Blood Institute (NIH), public domain, via Wikimedia Commons.
47
48
49
assignment of classes in a C++ program has the same with a program written in a language such as BASIC.
relationship as the different materials used in building It should also be apparent that any of the individual
a house. Each function exists independently of the functions could be utilized as is or with minor altera-
program that uses it, just as the bricks used to build a tions in any other program.
wall of a house exist independently of the wall they are
used to build. Different shapes and sizes of bricks and Designing a C++ Program
blocks may be used in the construction, but they can Much as a building is designed and constructed from
all be assigned to the same class of “stone and stone- various standard and customized components to
like building materials” based on their common fea- achieve the desired end product, a C++ program is
tures. Different shapes and sizes of wood pieces may designed and constructed from a variety of standard
be assigned to another class of building materials, and and customized components. The foundation parts
so on. In the same way, variables and functions that of the program are the libraries of standard class
have certain common characteristics belong to the definitions and functions, and the syntax of the pro-
same class. Just as a brick is an object used to construct gramming language. The program is typically first
a wall, a function is an object used to construct a pro- designed using pseudocode, which is just an easily
gram. In general, the structure of a C++ program has a modified “blueprint” for the construction of the ac-
“head” section consisting of standard class statements
tual program. An example of pseudocode might be
that provide standard functionalities such as control
of input and output, mathematical functions and op-
erations, and so on, that are specified by “include” header components (iostream)
statements. This is followed by a main program called main()
“main,” which is essentially just a list of functions that { define graphics interface
the “main” program will use, as well as some variable cout<< graphics interface
designations and relations. Following the “main” func- {data input ()
tion are the functions that “main” will utilize. The gen- { prompt for data input
eral format of a C++ program is thus cin>> data
}
#include statement }
#include statement calculate output values()
main() { calculate power loss ()
{variables calculate output frequency ()
function1 calculate integral of frequency equation ()
function2 calculate first derivative of frequency equa-
function3, etc tion ()
decision statements, relations, etc calculate second derivative of frequency
} equation ()
function1 () return values
{function1 statements, etc }
} cout<< calculated values to file
function2 () cout<< calculated values to graphic display
{function2 statements, etc new data input?
} If yes then data input () else end
function3 () end
{function3 statements, etc }
} calculate power loss()
calculate output frequency ()
This description shows how the program is assem- calculate integral of frequency equation ()
bled from various independent objects rather than calculate first derivative of frequency equation ()
being entirely self-contained as would be the case calculate second derivative of frequency equation ()
50
Pseudocode will not compile and run. Each of the by the value of the variable “name” (which in this case
functions that is specified in the above example after is supposed to be the name of the person using the
the end of the main () function may in fact be pieces program, but in reality could be any string of charac-
of independent source code that are much longer ters that was entered after the input prompt).
than the actual program source code. Some features
of note are the designations “iostream,” “cin >>” and Importance and Development of C++
“cout<<.” “iostream” is the standard C++ header and The C and C++ languages are essentially universal
includes all of the standard definitions of file and programming languages. It is possible to write C++
variable types, input and output functions used in programs that will compile and run on any other
C++ programs. Including this header eliminates that computer. A number of variants of the language have
need to repeat the corresponding information when been developed, including Visual C++ and C#. The
writing out a program, and inclusion of the iostream language is well suited to game design and program-
header is actually a standardization requirement. ming due to the extensive libraries of calculation and
As their names suggest “cin>>” is the standard state- graphics functions that have been developed, and its
ment for input of all data types and formats in C++, ability to incorporate modules written in compatible
and “cout<<” is the corresponding output statement. languages. Perhaps the most important development
They take the place of several different input and of C++ is that it is the foundation of the Java program-
output functions that were used in the C language ming language which is used by almost every elec-
before C++ was developed. tronic device in the world as a universal standard. A
program written in Java will run on any Java-enabled
device of any kind, such as smartphones, calculators,
Sample Problem programmable logic controllers, gaming consoles,
tablets, guidance control systems, and many others,
Write a simple C++ program that asks for the including computers.
users name and outputs a simple greeting.
—Richard M. Renneboog M.Sc.
Answer:
#include <iostream> Bibliography
int main () Davis, Stephen R. (2015) Beginning Programming with
{ C++ for Dummies 2nd ed. Joboken, NJ: John Wiley &
Sons. Print.
std::cout << “What is your name?\n”;
Deitel, H.M. And Deitel, P.J. (2009) C++ for
std::cin >> name; Programmers Upper Saddle River, NJ: Pearson
cout << “Hello, ” name; Education Incorporated. Print.
} Graham W. Seed (2012) An Introduction to Object-
Oriented Programming in C++ with Applications
in Computer Graphics New York, NY: Springer
The iostream header is included at the beginning Science+Business Media. Print.
of every program to define the methods and for- Kernighan, Brian W. and Ritchie, Dennis M. (1978)
mats of input and output used in C++ programs. The The C Programming Language Englewood Cliffs, NJ:
main() function defines the order of operations to Prentice-Hall. Print
be carried out in the program. The standard output Lippman, Stanley B, Lajoie, Josée and Moo, Barbara
(std::cout <<) displays the text within quotation marks E. (2013) C++ Primer 5th ed. Upper Saddle River,
on the screen exactly as they are stated. The standard NJ: Addison-Wesley. Print.
input (std::cin >>) accepts all subsequent keystrokes in McGrath, Mike (2015) C++ Programming in Easy Steps 4th
order until the “enter” key is pressed, and assigns them ed. Leamington Spa, UK: Easy Steps Limited. Print.
to a variable called “name.” The output function then Stroustrup, Bjarne (2013) The C++ Programming
prints the text phrase “Hello,” to the screen followed Language 4th ed. Upper Saddle River, NJ: Addison-
Wesley. Print.
51
CAD/CAM
Fields of Study
Applications; Graphic Design Design Display Analysis
Abstract
Computer-aided design (CAD) and computer-aided
manufacturing (CAM) are software that enable users
to design products and, through the use of computer- CAD CAM
guided machinery, manufacture them according to
the necessary specifications. CAD/CAM programs are
used in a wide range of industries and play a key role in
rapid prototyping, a process that allows companies to
manufacture and test iterations of a product.
Digital
Prinicipal Terms representations
In addition to its use alongside CAM software, CAD will retain the correct proportions in terms of the
software functions alone in a number of fields. CAD relative placement of points and lines.
software allows users to create 3-D models of objects
or structures that do not need to be manufactured Computer-Aided Manufacturing
by machine. For instance, specialized CAD software After designing an object using CAD software, a user
are used in architecture to design floor plans and 3-D may use a CAM program to manufacture it. CAM pro-
models of buildings. grams typically operate through computer numerical
control (CNC). In CNC, instructions are transmitted
Computer-Aided Design to the manufacturing machine as a series of numbers.
Using CAD/CAM software is a two-part process that Those instructions tell the machine how to move and
begins with design. In some cases, the user begins de- what actions to perform in order to construct the ob-
signing an object by using CAD software to create 2-D ject. The types of machines used in that process vary
line drawings of the object. This process is known as and may include milling machines, drills, and lathes.
“drafting.” He or she may then use tools within the In the early twenty-first century, 3-D printers, de-
CAD software to transform those 2-D plans into a 3-D vices that manufacture objects out of thin layers of
model. As CAD/CAM is used to create physical ob- plastic or other materials, began to be used in CAM.
jects, the modeling stage is the most essential stage Unlike traditional CNC machinery, 3-D printers
in the design process. In that stage, the user creates are typically used by individuals or small companies
a 3-D representation of the item. This item may be for whom larger-scale manufacturing technology is
a part for a machine, a semiconductor component, excessive.
or a prototype of a new product, among other
possibilities. Specialized Applications
In some cases, the user may create what is known As CAD/CAM technology has evolved, it has come
as a “wire-frame model,” a 3-D model that resembles to be used for a number of specialized applications.
the outline of an object. However, such models do Some CAD software, for instance, is used to perform
not include the solid surfaces or interior details of four-dimensional building information modeling
the object. Thus, they are not well suited for CAM, (4-D BIM). This process enables a user to incorpo-
the goal of which is to manufacture a solid object. rate information related to time. For instance, the
As such, those using CAD software in a CAD/CAM schedule for a particular project can be accounted
context often focus more on solid modeling. Solid for in the modeling process with 4-D BIM.
modeling is the process of creating a 3-D model of Another common CAD/CAM application is rapid
an object that includes the object’s edges as well as prototyping. In that process, a company or individual
its internal structure. CAD software typically allows can design and manufacture physical prototypes of
the user to rotate or otherwise manipulate the cre- an object. This allows the designers to make changes
ated model. With CAD, designers can ensure that all in response to testing and evaluation and to test dif-
the separate parts of a product will fit together as in- ferent iterations of the product. The resulting pro-
tended. CAD also enables users to modify the digital totypes are often manufactured using 3-D printers.
model. This is less time-consuming and produces less Rapid prototyping results in improved quality con-
waste than modifying a physical model. trol and a reduced time to bring a product to market.
When designing models with the intention of
—Joy Crelin
manufacturing them through CAM technology, users
must be particularly mindful of their key measure-
ments. Precision and accurate scaling are crucial. As
Bibliography
such, users must be sure to use vector images when
designing their models. Unlike raster images, which Bryden, Douglas. CAD and Rapid Prototyping for
are based on the use of individual pixels, vector im- Product Design. London: King, 2014. Print.
ages are based on lines and points that have defined Chua, Chee Kai, Kah Fai Leong, and Chu Sing
relationships to one another. No matter how much Lim. Rapid Prototyping: Principles and Applications.
a user shrinks or enlarges a vector image, the image Hackensack: World Scientific, 2010. Print.
53
“Computer-Aided Design (CAD) and Computer- Krar, Steve, Arthur Gill, and Peter Smid. Computer
Aided Manufacturing (CAM).” Inc. Mansueto Numerical Control Simplified. New York: Industrial,
Ventures, n.d. Web. 31 Jan. 2016. 2001. Print.
“Design and Technology: Manufacturing Processes.” Sarkar, Jayanta. Computer Aided Design: A Conceptual
GCSE Bitesize. BBC, 2014. Web. 31 Jan. 2016. Approach. Boca Raton: CRC, 2015. Print.
Herrman, John. “How to Get Started: 3D Modeling
and Printing.” Popular Mechanics. Hearst Digital
Media, 15 Mar. 2012. Web. 31 Jan. 2016.
Cloud computing
Fields of Study Cloud Network Design
Cloud computing is a networking model that allows
Information Technology; Computer Science;
users to remotely store or process data. Several major
Software
Internet service and content providers offer cloud-
based storage for user data. Others provide virtual
Abstract
access to software programs or enhanced processing
Cloud computing is a networking model in which capabilities. Cloud computing is among the fastest-
computer storage, processing, and program access growing areas of the Internet services industry. It
are handled through a virtual network. Cloud com- has also been adopted by government and research
puting is among the most profitable IT trends. A host organizations.
of cloud-oriented consumer products are available
through subscription. Types of Cloud Networks
Private clouds are virtual networks provided to a lim-
Prinicipal Terms ited number of known users. These are often used in
corporations and research organizations. Operating
hybrid cloud: a cloud computing model that com-
a private cloud requires infrastructure (software,
bines public cloud services with a private cloud
servers, etc.), either on-site or through a third party.
platform linked through an encrypted connec-
Public clouds are available to the public or to paying
tion.
subscribers. The public-cloud service provider owns
infrastructure as a service: a cloud computing
and manages the infrastructure. Unlike private
platform that provides additional computing re-
clouds, public clouds provide access to an unknown
sources by linking hardware systems through the
pool of users, making them less secure. Public clouds
Internet; also called “hardware as a service.”
tend to be based on open-source code, which is free
multitenancy: a software program that allows mul-
and can be modified by any user.
tiple users to access and use the software from dif-
The hybrid cloud lies somewhere between the two.
ferent locations.
It offers access to private cloud storage or software
platform as a service: a category of cloud com-
services, such as database servers, while keeping some
puting that provides a virtual machine for users to
services or components in a public cloud. Setup costs
develop, run, and manage web applications.
may be lower with hybrid cloud services. A group
software as a service: a software service system in
using a hybrid cloud outsources some aspects of in-
which software is stored at a provider’s data center
frastructure investment and maintenance but still en-
and accessed by subscribers.
joys greater security than with a public cloud. Hybrid
third-party data center: a data center service pro-
clouds have become widespread in the health care,
vided by a separate company that is responsible for
law, and investment fields, where sensitive data must
maintaining its infrastructure.
be protected on-site.
54
55
Huth, Alexa, and James Cebula. The Basics of Cloud Rountree, Derrick, and Ileana Castrillo. The Basics of
Computing. N.p.: Carnegie Mellon U and US Cloud Computing. Waltham: Elsevier, 2014. Print.
Computer Emergency Readiness Team, 2011. PDF Ryan, Janel. “Five Basic Things You Should Know
file. about Cloud Computing.” Forbes. Forbes.com, 30
Kale, Vivek. Guide to Cloud Computing for Business and Oct. 2013. Web. 30 Oct. 2013.
Technology Managers. Boca Raton: CRC, 2015. Print. Sanders, James. “Hybrid Cloud: What It Is, Why It
Kruk, Robert. “Public, Private and Hybrid Clouds: Matters.” ZDNet. CBS Interactive, 1 July 2014. Web.
What’s the Difference?” Techopedia. Techopedia, 10 Jan. 2016.
18 May 2012. Web. 21 Jan. 2016.
Combinatorics
Fields of Study objects, combinatorics studies equations that de-
termine how many different sets of five can be cre-
Information Technology; Algorithms; System
ated from the original set of fifteen. The study of
Analysis
combinatorics is crucial to the study of algorithms.
Algorithms are sets of rules, steps, or processes that
Abstract
are linked together to address a certain problem.
Combinatorics is a branch of mathematics that is con-
cerned with sets of objects that meet certain condi-
The Science of Counting and
tions. In computer science, combinatorics is used to
Combinations
study algorithms, which are sets of steps, or rules, de-
Combinatorics is often called the “science of
vised to address a certain problem.
counting.” It focuses on the properties of finite sets of
objects, which do not have infinite numbers of objects
Prinicipal Terms
and so are theoretically countable. The process of de-
analytic combinatorics: a method for creating pre- scribing or counting all of the items in a specific set
cise quantitative predictions about large sets of is called “enumeration.” Combinatorics also includes
objects. the study of combinations, a process of selecting
coding theory: the study of codes and their use in items from a set when the order of selection does not
certain situations for various applications. matter. Finally, combinatorics also studies permuta-
combinatorial design: the study of the creation and tions. Permutations involve selecting or arranging
properties of finite sets in certain types of designs. items in a list, when the order of arrangement is im-
enumerative combinatorics: a branch of com- portant. Combinatorics also studies the relationships
binatorics that studies the number of ways that between objects organized into sets in various ways.
certain patterns can be formed using a set of ob- There are numerous subfields of combinatorics used
jects. to study sets of objects in different ways. Enumerative
graph theory: the study of graphs, which are dia- combinatorics is the most basic branch of the field.
grams used to model relationships between ob- It can be described as the study of counting methods
jects. used to derive the number of objects in a given set. By
contrast, analytic combinatorics is a subfield of enu-
Basics of Combinatorics merative combinatorics. It deals with predicting the
Combinatorics is a branch of mathematics that properties of large sets of objects, using quantitative
studies counting methods and combinations, analysis. All combinatorics analysis requires detailed
permutations, and arrangements of sets of ob- knowledge of calculus. Many subfields make extensive
jects. For instance, given a set of fifteen different use of probability theory and predictive analysis.
56
C
A B
D
A B
The Konigsberg bridge problem is a common example of combinatorial structures used to identify and quan-
tify possible combinations of values. Each landmass becomes a vertex or node, and each bridge becomes an
arc or edge. In computer science, these graphs are used to represent networks or the flow of computation.
EBSCO illustration.
57
of codes and the precise study of information and ar- Faticoni, Theodore G., Combinatorics: An Introduction.
rangement of data. New York: Wiley, 2014. Digital file.
Guichard, David. “An Introduction to Combinatorics
—Micah L. Issit
and Graph Theory.” Whitman. Whitman Coll., 4
Jan 2016. Web. 10 Feb. 2016.
Bibliography Roberts, Fred S., and Barry Tesman. Applied
Beeler, Robert A., How to Count: An Introduction to Combinatorics. 2nd ed. Boca Raton: Chapman,
Combinatorics. New York: Springer, 2015. Print. 2012. Print.
“Combinatorics.” Mathigon. Mathigon, 2015. Web. 10 Wagner, Carl. “Choice, Chance, and Inference.”
Feb. 2016. Math.UTK.edu. U of Tennessee, Knoxville, 2015.
Web. 10 Feb. 2016.
Communication technology
Fields of Study Sending and Receiving Signals
Communication technology at its most basic involves
Digital Media; Information Technology
sending a signal from a transmitter to a receiver. The
signal carries information in audio, video, or some
Abstract
other data format. It travels in the form of energy
Communication technology is a broad field that in- waves through a transmission medium. This medium
cludes any type of tool or process that makes it pos- might be a device designed to carry the signal, such
sible for individuals and groups to communicate as a fiber-optic cable, or it might simply be the air
over large areas. Many types of communication tech- through which a sound wave travels.
nology have been used throughout recorded his- The purpose of most communication tech-
tory—smoke signals, carved signs and tokens, letters, nology is to translate human language into a signal
radio waves, telegraph, television, and microwave sig- that can be transmitted through the appropriate
nals, to name only a few. medium, then revert the signal to the original
format once it is received. For example, audio is
Prinicipal Terms sent through a digital telephone line in the form
of binary data. When one person speaks, the sound
attenuation: the loss of intensity from a signal
waves they produce are converted into a stream of
being transmitted through a medium.
ones and zeros that represents a digital model of
broadcast: an audio or video transmission sent via
the analog waveform. This stream is transmitted
a communications medium to anyone with the ap-
in the form of electronic pulses through an elec-
propriate receiver.
trical network. (If the network is optical rather
multiplexing: combining multiple data signals
than electrical, it is transmitted as light pulses in-
into one in order to transmit all signals simultane-
stead.) When the data stream reaches its destina-
ously through the same medium.
tion, a receiver reads the binary data and converts
receiver: a device that reads a particular type of
it back into analog sound waves that the person on
transmission and translates it into audio or video.
the other end of the phone line can understand. In
transmission medium: the material through which
short, communication technology is all about en-
a signal can travel.
coding and decoding messages so they can be sent
transmitter: a device that sends a signal through a
from one place to another.
medium to be picked up by a receiver.
58
Advances in technology have provided a wide variety of modes of communication. Phones, tablets, com-
puters, and other devices allow people to write, talk, and send images and videos all around the globe. Public
domain, via Wikimedia Commons.
59
CompTIA A+ certification
Fields of Study information technology: the use of computers and
related equipment for the purpose of processing
Computer Science; Information Technology
and storing data.
Initiative for Software Choice (ISC): a consortium
Abstract
of technology companies founded by CompTIA,
The CompTIA A+ certification is one of many cer- with the goal of encouraging governments to
tifications in the field of information technology allow competition among software manufacturers.
(IT) granted by the Computing Technology Industry
Association (CompTIA). An IT professional may gain
Certifying IT
the certification after passing a pair of exams that test
The CompTIA A+ certification is a professional certi-
their knowledge of computer hardware, operating
fication in information technology (IT). IT is a broad
systems, troubleshooting, and other essential topics.
field that deals with the use of computers and related
Prinicipal Terms devices. IT professionals known as computer techni-
cians must know a variety of hardware, software, and
American National Standards Institute (ANSI): a other technological information. College degrees in IT
nonprofit organization that oversees the creation or computer science and hands-on IT experience are
and use of standards and certifications such as typically important to employers. Some companies seek
those offered by CompTIA. job candidates who have earned professional certifica-
computer technician: a professional tasked with tions. In the United States, the Computer Technology
the installation, repair, and maintenance of com- Industry Association (CompTIA), an IT trade associa-
puters and related technology. tion, is one of the chief providers of such certifications.
60
CompTIA was founded in 1982 as the Association Each exam is ninety minutes long and has up to
of Better Computer Dealers. The organization ninety questions. Some questions are multiple-choice,
began offering certifications in 1992, two years after while others are performance based. Performance-
changing its name to CompTIA. CompTIA’s certi- based questions simulate real-world problems that
fications are vendor neutral. This means that they the test taker must solve. Both tests are scored out
test knowledge of computer hardware, operating of a possible 900 points. The test taker must score at
systems, and peripherals from multiple manufac- least 675 points to pass the first exam and 700 to pass
turers, not just one. The organization also offers the second. Exams must be completed in person at a
certifications in computer networking, servers, and testing center approved by CompTIA.
subfields such as healthcare IT. CompTIA offers ed- Together, the two exams cover a wide range of
ucational and professional development opportuni- topics generally considered essential basic knowl-
ties for IT professionals as well. In the early twenty- edge for a computer technician. The first exam
first century, the organization became increasingly deals mostly with hardware, including computers,
involved in public policy advocacy. It cofounded mobile devices, and peripherals. The exam also
the Initiative for Software Choice (ISC) in 2002. covers troubleshooting. The second exam focuses
The ISC is concerned with government policies re- on operating systems, including Widows and Apple
garding software use. systems as well as open-source operating systems
such as Linux. CompTIA does not require test
Understanding the CompTIA A+ takers to complete formal schooling before taking
Certification the exams, but it recommends that those seeking
The CompTIA A+ certification is a popular creden- A+ certification have at least six months of practical
tial among IT professionals. As of early 2016, it had experience with the covered topics. To aid IT pro-
been awarded to more than one million people glob- fessionals in preparing for the exams, CompTIA of-
ally, according to CompTIA. The certification shows fers optional preparatory courses and self-guided
that the holder is skilled in the key areas of IT. These training materials.
areas include computer troubleshooting and repair,
setup and installation, and maintenance. To earn CompTIA A+ in the Field
the certification, a professional must prove their While the computer skills evaluated by the CompTIA
knowledge of a number of specific topics, including A+ exams are not possessed solely by those profes-
the use of operating systems, computer networking sionals who are certified, the certification provides
procedures, and computer security. In addition to clear evidence of an IT professional’s understanding
desktop and laptop computers, the certification of the field’s core concepts and procedures. As such,
signals the holder’s skill with mobile devices, such some employers prefer to hire employees who have
as smartphones, and peripherals, such as printers. already attained that certification. However, other
The A+ certification and two other CompTIA cer- employers may prefer to hire computer technicians
tifications have been accredited by the American with formal education in computer science or IT
National Standards Institute (ANSI). ANSI oversees or with significant hands-on experience. Likewise,
the granting of certifications for many professions. some employers may not require job seekers to have
obtained A+ certification or may pay for their com-
Obtaining the CompTIA A+ Certification puter technicians to take the exams once employed.
To earn the CompTIA A+ certification, one must pass Because of these varying requirements, individuals
two exams. These exams are periodically updated to seeking work in IT should consider their options
keep up with changes in technology. An updated set carefully before pursuing the CompTIA A+ or any
of exams, CompTIA A+ 220-901 and 220-902, were other certification.
introduced on December 15, 2015. Those exams In 2010, CompTIA announced that all A+ certi-
replaced the 220-801 and 220-802 exams, which fications, which had previously been issued for life,
were set to be retired on June 30, 2016, for English- would in future need to be renewed every three
speaking test takers, and December 31 of that year years. The organization later ruled that previously
for all others. issued certifications would be exempt from this
61
requirement. However, all A+ certifications issued Anderson, Nate. “CompTIA Backs Down; Past Certs
on or after January 1, 2011, expire after three years Remain Valid for Life.” Ars Technica. Condé Nast,
unless renewed. To remain certified, a professional 26 Jan. 2010. Web. 31 Jan. 2016.
holding the certification must pay a fee and complete “ANSI Accredits Four Personnel Certification
continuing-education programs to remain current in Programs.” ANSI. American Natl. Standards Inst.,
the field. 8 Apr. 2008. Web. 31 Jan. 2016.
“CompTIA A+.” CompTIA. Computing Technology
—Joy Crelin
Industry Assn., 2015. Web. 31 Jan. 2016.
“Our Story.” CompTIA. Computing Technology
Bibliography Industry Assn., n. d. Web. 31 Jan. 2016.
“About ANSI.” ANSI. American Natl. Standards Inst., “What Is the CompTIA A+ Certification?”
2016. Web. 31 Jan. 2016. Knowledge Base. Indiana U, 15 Jan. 2015. Web.
31 Jan. 2016.
Computer animation
Fields of Study virtual reality: a form of technology that enables
the user to view and interact with a simulated en-
Digital Media; Graphic Design
vironment.
Abstract
History of Computer Animation
Computer animation is the creation of animated Since the early twentieth century, the field of anima-
projects for film, television, or other media using spe- tion has been marked by frequent, rapid change.
cialized computer programs. As animation projects Innovation in the field has been far reaching, fil-
may range from short, simple clips to detailed and tering into film, television, advertising, video games,
vibrant feature-length films, a wide variety of anima- and other media. It was initially an experimental
tion software is available, each addressing the par- method and took decades to develop. Computer ani-
ticular needs of animators. The computer animation mation revitalized the film and television industries
process includes several key steps, including mod- during the late twentieth and early twenty-first centu-
eling, keyframing, and rendering. These stages are ries, in many ways echoing the cultural influence that
typically carried out by a team of animators. animation had decades before.
Prior to the advent of computer animation, most
animated projects were created using a process that
Prinicipal Terms
later became known as “traditional,” or “cel,” ani-
animation variables (avars): defined variables that mation. In cel animation, the movement of charac-
control the movement of an animated character ters, objects, and backgrounds was created frame by
or object. frame. Each frame was drawn by hand. This time-
keyframing: the process of defining the first consuming and difficult process necessitated the cre-
and last—or key—frames in an animated tran- ation of dozens of individual frames for each second
sition. of film.
render farms: large computer systems dedicated As computer technology developed, computer
to rendering animated content. researchers and animators began to experiment
3-D rendering: the process of creating a 2-D ani- with creating short animations using computers.
mation using 3-D models. Throughout the 1960s, computers were used to
62
From designing the original animation model to creating algorithms that control the movement of fluids,
hair, and other complex systems, computer software has drastically changed the art of animation. Through
software that can manipulate polygons, a face can be rendered and further manipulated to create a number
of images much more efficiently than with hand-drawn illustrations. Thus, the detail of the imaging is in-
creased, while the time needed to develop a full animation is reduced. By Diego Emanuel Viegas, CC BY-SA
3.0 (http://creativecommons.org/licenses/by-sa/3.0), via Wikimedia Commons.
create 2-D images. Ed Catmull, who later founded the In 1995, the release of the first feature-length
studio Pixar in 1986, created a 3-D animation of his computer-animated film marked a turning point in
hand using a computer in 1972. This was the first 3-D the field of animation. That film, Toy Story, was cre-
computer graphic to be used in a feature film when ated by Pixar, a pioneer in computer animation.
it appeared in Futureworld (1976). Early attempts at Over the following decades, Pixar and other studios,
computer animation were found in live-action films. including Disney (which acquired Pixar in 2006)
The 1986 film Labyrinth, for instance, notably features and DreamWorks, produced numerous computer-
a computer-animated owl flying through its opening animated films. Computer animation became a
credits. As technology improved, computer anima- common process for creating animated television
tion became a major component of special effects in shows as well as video games, advertisements, music
live-action media. While cel animation continued to videos, and other media.
be used in animated feature films, filmmakers began In the early twenty-first century, computer anima-
to include some computer-generated elements in tion also began to be used to create simulated envi-
such works. The 1991 Walt Disney Studios film Beauty ronments accessed through virtual reality equipment
and the Beast, for instance, featured a ballroom in one such as the head-mounted display Oculus Rift. Much
scene that was largely created using a computer. of the computer-animated content created during
63
this time featured characters and surroundings that in the movement in between. This process, which
appeared 3-D. However, some animators opted to in traditionally animated films was a laborious task
create 2-D animations that more closely resemble tra- done by hand, is often known as “inbetweening,” or
ditionally animated works in style. “tweening.”
64
the structure functions as a flip-flop or as a latch. series of latch structures in combination can be used
Triggering either one causes the device to output the to hold a corresponding series of bits in a parallel
state that it has been holding and allows the device to data stream and pass that set of data on at each clock
read the states of its input signals. This sets a new state cycle. This feature is the basic structure of an accu-
that the device will hold until it is again triggered. mulator, counter or a register in central processing
chips. Flip-flops are also typically used as the trig-
gering signal generator for hardware interruption.
Sample Problem Every central processing chip must have a signal
input to indicate that another hardware device, such
A flip-flop constructed from two NAND gates as a modem or a printer, requires attention. When
has four inputs. The states of one pair of that signal is received at the appropriate terminal on
inputs is both high, while the other pair of the chip, the process being carried out by the central
inputs is one high and one low. What is the processing unit is interrupted, allowing the function
output from the flip-flop? of the device to take precedence temporarily. Flip-
flops can also be interconnected in a “master-slave”
Answer: combination, in which input is registered on the
A NAND gate outputs a low signal only when leading edge of the signal and output is registered on
both inputs are high, and a low signal other- the trailing edge.
wise. In this example, the NAND gate with the
—Richard M. Renneboog M.Sc.
two high inputs would output a low signal.
This is the low input to the other NAND gate,
which must therefore output a low signal. Bibliography
Since the output signal of this NAND gate is Bishop, Owen (2011) Electronics. Circuits and Systems
the second input to the other NAND gate in 4th ed., New York, NY: E;sevier. Print.
the device, and that NAND gate has two high Brindley, Keith (2011) Starting Electronics 4th ed., New
input signals, this situation is not allowed. York, NY: Elsevier. Print.
Clements, Alan (2006) Principles of Computer Hardware
4th ed., New York, NY: Oxford University Press.
Print.
Applications of Flip-Flops Gibson, J.R. (2011) Electronic Logic Circuits 3rd ed.,
Flip-flops and latches are termed bistable multivi- New York, NY: Routledge. Print.
brator devices: bistable because they have only two Hsu, John Y. (2002) Computer Logic Design Principles
stable states, and multivibrators because they can and Applications New York, NY: Springer. Print.
switch back and forth between those two states. A
66
67
positive charges by attracting any nearby electron of number of transistor structures that can be etched
the corresponding energy from adjacent atoms. This onto the surface of a silicon chip, and hence the
creates another hole in the adjacent atom. The pro- computing capabilities of computers, has followed
gression of holes through the material is equivalent the empirical observation known as Moore’s Law
to the movement of positive charge as electrons shift quite well for several decades. Moore’s Law states
from one atom to another without flowing through that the number of possible transistor structures
the conduction band. and the corresponding\ computing power doubles
approximately every eighteen months. Logically,
Preparation of Semiconductor this means that there is a finite limit to both, deter-
Materials mined by the physical minimum size of the struc-
The principal material for the production of semi- tures themselves, and when that limit is reached no
conductor-based devices is silicon. Pure silicon, how- further advance can be made. However,current re-
ever, does not function well as a semiconducting ma- search with novel materials such as graphene and
terial for the production of transistor structures used nanotubes, and toward the successful development
for all kinds of integrated circuit (IC) chips, and es- of quantum computers may eventually end de-
pecially for central processing unit (CPU) chips and pendency on traditional semiconductor materials
solid-state storage devices. To improve the desired entirely.
characteristics of the material, a small percentage
—Richard M. Renneboog M.Sc.
of another element can be added as a “dopant” to
either increase or decrease the number of available
electrons in the resulting alloy. This silicon blend Bibliography
is prepared by melting a quantity of pure silicon to- Haug, Hartmut, and Stephan W. Koch. Quantum
gether with the proper amount of dopant. A single, Theory of the Optical and Electronic Properties of
large cylindrical crystal is then drawn slowly from the Semiconductors. New Jersey [u.a.]: World Scientific,
molten mass and then cut into thin wafers for use in 2009. Print.
the manufacture of chips. Köhler, Anna, and Heinz Bässler. Electronic Processes in
Organic Semiconductors: An Introduction. Wiley-VHC
Transistor Structures Verlag, 2015. Print.
The thin wafers obtained from slicing up the large Könenkamp, Rolf. Photoelectric Properties and
silicon crystal are polished to produce a highly uni- Applications of Low-Mobility Semiconductors. Berlin:
form surface. Millions of transistor structures are Springer, 2000. Print.
then etched onto the surface of each wafer in a mul- Mishra, Umesh. Semiconductor Device Physics and
tistep process. The pattern and order of etching can Design. Place of publication not identified:
constitute a proprietary or patented segment of the Springer, 2014. Print.
final product, known as a semiconductor intellectual Rockett, Angus. The Materials Science of Semiconductors.
property (SIP) block within the overall design of the New York, NY: Springer, 2010. Print.
integrated circuit. The overall process requires sev- Yu, P.Y, and M Cardona. Fundamentals of Semiconductors:
eral individual steps that are carried out with strin- Physics and Materials Properties. Berlin: Springer,
gent quality control at all stages of production. The 2010. Print.
68
Computer memory
Fields of Study drive, for example) to be available for use as addi-
tional RAM. Information is copied from RAM and
Computer Science; Computer Engineering;
moved into virtual memory whenever memory re-
Information Technology
sources are running low.
volatile memory: memory that stores information
Abstract in a computer only while the computer has power;
when the computer shuts down or power is cut,
Computer memory is the part of a computer used for
the information is lost.
storing information that the computer is currently
working on. It is different from computer storage
Overview of Computer Memory
space on a hard drive, disk drive, or storage medium
Computer memory is an extremely important part
such as CD-ROM or DVD. Computer memory is one
of configuring and using computers. Many users find
of the determining factors in how fast a computer
themselves confused by the concepts of computer
can operate and how many tasks it can undertake at
memory and computer storage. After all, both store
a time.
information. Storage serves a very different purpose
from memory, however. Storage is slower, because it
Prinicipal Terms
uses a series of spinning platters of magnetic disks
flash memory: nonvolatile computer memory that and a moving read/write head. These create a tiny
can be erased or overwritten solely through elec- magnetic field that can modify the polarity of tiny
tronic signals, i.e. without physical manipulation sections of the platters in order to record or read in-
of the device. formation. The benefit of storage is that it is nonvola-
nonvolatile memory: memory that stores informa- tile memory, meaning that its contents remain even
tion regardless whether power is flowing to the when the power is turned off. Computer memory,
computer. by contrast, is volatile memory because it only stores
random access memory (RAM): memory that the information while power is flowing through the
computer can access very quickly, without regard computer.
to where in the storage media the relevant infor- This can be a drawback, especially when a user has
mation is located. vital information, such as a newly created but un-
virtual memory: memory used when a computer saved document, that is lost when a power surge
configures part of its physical storage (on a hard shuts down the system. However, memory is also
MEMORY
Primary Secondary
Computer memory comes in a number of formats. Some are the primary CPU memory, such
as RAM and ROM; others are secondary memory, typically in an external form. External
memory formats have changed over the years and have included hard drives, floppy drives,
optical memory, flash memory, and secure digital (SD) memory. Adapted from the Its All About
Embedded blog.
69
incredibly useful because it allows the computer the new task. Once the new task is managed, the com-
to store information that it is currently working puter pulls the information that was copied to the
on. For example, if a user wished to update a ré- hard drive and loads it back into memory.
sumé file saved on their hard drive, they would
first tell the computer to access its storage to find Flash and Solid State Memory
a copy of the file. The computer would locate the Some newer types of memory straddle the line be-
file and then copy the file’s contents into its vola- tween memory and storage. Flash memory, used in
tile memory and open the document. As the user many mobile devices, can retain its contents even
makes changes to the file, these changes are re- when power to the system is cut off. However, it can
flected only in the memory, until the user saves be accessed or even erased purely through electrical
them to storage. Some have compared storage and signals. Wiping all the contents of flash memory and
memory to a librarian. Storage is like the thou- replacing them with a different version is sometimes
sands of books the librarian has in the library, called “flashing” a device.
which they can consult if given enough time. Many newer computers have incorporated solid
Memory is like the knowledge the librarian carries state disks (SSDs), which are similar in many respects
around in their head. It is accessible very quickly to flash memory. Like flash memory, SSDs have no
but holds a smaller amount of information than moving parts and can replace hard drives because
the books. they retain their contents after system power has
shut down. Many advanced users of computers have
Random and Virtual Memory adopted SSDs because they are much faster than tra-
One feature of memory that makes it much faster ditional computer configurations. A system can be
than other types of information storage is that it powered on and ready to use in a matter of seconds
is a type of random access memory (RAM). Any rather than minutes.
address in the memory block can be accessed di-
—Scott Zimmer, JD
rectly, without having to sort through all of the
other entries in the memory space. This contrasts
with other types of memory, such as magnetic tape, Bibliography
which are sequential access devices. In order to get Biere, Armin, Amir Nahir, and Tanja Vos, eds.
to a certain part of the tape, one must move for- Hardware and Software: Verification and Testing. New
ward through all the other parts of the tape that York: Springer, 2013. Print.
come first. This adds to the time it takes to access Englander, Irv. The Architecture of Computer Hardware
that type of memory. and System Software: An Information Technology
Memory, more than almost any other factor, de- Approach. 5th ed. Hoboken: Wiley, 2014. Print.
termines how fast a computer responds to requests Kulisch, Ulrich. Computer Arithmetic and Validity:
and completes tasks. This means that more memory Theory, Implementation, and Applications. 2nd ed.
is constantly in demand, as consumers want systems Boston: De Gruyter, 2013. Print.
that are faster and can on more tasks at the same time. Pandolfi, Luciano. Distributed Systems with Persistent
When a computer is running low on memory because Memory: Control and Moment Problems. New York:
too many operations are going on at once, it may use Springer, 2014. Print.
virtual memory to try to compensate. Virtual memory Patterson, David A., and John L. Hennessy. Computer
is a technique in which the computer supplements its Organization and Design: The Hardware/Software
memory space by using some of its storage space. If Interface. 5th ed. Waltham: Morgan, 2013. Print.
the computer is almost out of memory and another Soto, María, André Rossi, Marc Sevaux, and Johann
task comes in, the computer copies some contents of Laurent. Memory Allocation Problems in Embedded
its memory onto the hard drive. Then it can remove Systems: Optimization Methods. Hoboken: Wiley,
this information from memory and make space for 2013. Print.
70
Computer modeling
Fields of Study simulation if it is presented as graphic symbols on a
map rather than as a table of meteorological data.
Computer Science; Computer Engineering; Software
Thus, simulations that produced graphic outputs were
Engineering
developed.
Computer models are used when a system is too
Abstract
complex or hard to study using a physical model.
Computer modeling is the process of designing a For example, it would be difficult if not impossible
representation of a particular system of interacting to create a physical model representing the gravita-
or interdependent parts in order to study its be- tional effects of planets and moons on each other
havior. Models that have been implemented and ex- and on other objects in space.
ecuted as computer programs are called computer There are several different types of models. Static
simulations. models simulate a system at rest, such as a building
design. Dynamic models simulate a system that
Prinicipal Terms changes over time. A dynamic model could be used
to simulate the effects of changing ocean tempera-
algorithm: a set of step-by-step instructions for per-
tures on the speed of ocean currents throughout
forming computations.
the year. A continuous model simulates a system that
data source: the origin of the information used in
changes constantly, while a discrete model simulates
a computer model or simulation, such as a data-
a system that changes only at specific times. Some
base or spreadsheet.
models contain both discrete and continuous ele-
parameter: a measurable element of a system that
ments. A farming model might simulate the effects of
affects the relationships between variables in the
both weather patterns, which constantly change, and
system.
pesticide spraying, which occurs at specified times.
simulation: a computer model executed by a com-
puter system.
system: a set of interacting or interdependent How Computer Models Work
component parts that form a complex whole. To create a computer model, one must first determine
variable: a symbol representing a quantity with no the boundaries of the system being modeled and what
fixed value. aspect of the system is being studied. For example,
if the model is of the solar system, it might be used
Understanding Computer Models to study the potential effect on the orbits of the ex-
A computer model is a programmed representation isting planets if another planet were to enter the solar
of a system that is meant to mimic the behavior of system.
the system. A wide range of disciplines, including To create such a model, a computer programmer
meteorology, physics, astronomy, biology, and eco- would develop a series of algorithms that contain
nomics, use computer models to analyze different the equations and other instructions needed to
types of systems. When the program representing replicate the operation of the system. Variables are
the system is executed by a computer, it is called a used to represent the input data needed. Examples
simulation. of variables that might be used for the solar system
One of the first large-scale computer models was model include the mass, diameter, and trajectory of
developed during the Manhattan Project by scientists the theoretical new planet. The values that define
designing and building the first atomic bomb. Early the system, and thus how the variables affect each
computer models produced output in the form of ta- other, are the parameters of the system. The param-
bles or matrices that were difficult to analyze. It was later eters control the outputs of the simulation when it
discovered that humans can see data trends more easily is run. Different values can be used to test different
if the data is presented visually. For example, humans scenarios related to the system and problem being
find it easier to analyze the output of a storm-system studied. Example parameters for the solar system
71
Develop a
Real system mathematical Computer program
model of model
Perform Perform
experiments simulations
Experimental Simulation
results results
Evaluate Evaluate
and improve and improve
model theory
Mathematical models are used to identify and understand the details influencing a real system. Computer programs allow one
to evaluate many variations in a mathematical model quickly and accurately, thus efficiently evaluating and improving models.
Adapted from Allen and Tildesly, “Computer Simulation of Liquids.
model might include the orbits of the known planets, Why Computer Models Are Important
their distance from the sun, and the equations that Computer models have provided great benefits to
relate an object’s mass to its gravity. Certain param- society. They help scientists explore the universe,
eters can be changed to test different scenarios each understand the earth, cure diseases, and discover
time a simulation is run. Because parameters are not and test new theories. They help engineers design
always constant, they can be difficult to distinguish buildings, transportation systems, power systems,
from variables at times. and other items that affect everyday life. With the
The model must also have a data source from development of more powerful computer systems,
which it will draw the input data. This data may be computer models will remain an important mecha-
directly entered into the program or imported nism for understanding the world and improving the
from an external source, such as a file, database, or human condition.
spreadsheet.
—Maura Valentino, MSLIS
72
Bibliography
Sample Problem Agrawal, Manindra, S. Barry Cooper, and Angsheng Li,
It is important to select appropriate variables eds. Theory and Applications of Models of Computation:
and parameters when designing a computer 9th Annual Conference, TAMC 2012, Beijing, China,
model. List two variables and two parameters May 16–21, 2012. Berlin: Springer, 2012. Print.
that might be used to determine the speed of Edwards, Paul N. A Vast Machine: Computer Models,
a baseball after it has traveled three feet from Climate Data, and the Politics of Global Warming.
the pitcher’s throwing hand. Cambridge: MIT P, 2010. Print.
Kojić, Miloš, et al. Computer Modeling in Bioengineering:
Theoretical Background, Examples and Software.
Answer:
Hoboken: Wiley, 2008. Print.
Variables needed to determine the ball’s Law, Averill M. Simulation Modeling and Analysis. 5th
speed might include the mass and size of the ed. New York: McGraw, 2015. Print.
ball, the angle at which the ball is released, Morrison, Foster. The Art of Modeling Dynamic Systems:
and the force with which it is thrown. Forecasting for Chaos, Randomness, and Determinism.
Parameters that define the system, which 1991. Mineola: Dover, 2008. Print.
may be changed to test different scenarios, Seidl, Martina, et al. UML@Classroom: An Introduction
include wind speed, aerodynamic drag on the to Object-Oriented Modeling. Cham: Springer, 2015.
ball, and whether or not it is raining when the Print.
ball is thrown.
73
LOSSLESS
Compressed
Original file Restored
LOSSY
Compressed
Original file Restored
Image formats store varying levels and arrangements of data. Choosing the appropriate file
format can make a difference when images are manipulated, resized, or compressed and restored
EBSCO illustration.
a tablet and stylus to draw and paint. Finally, ren- reduce the size of these files, with some loss of quality.
dering makes it possible for a computer to produce Lossless compression can avoid degradation of the
a digital image from a 2-D or 3-D model. image, but in most cases, it does not reduce file size as
Once the digital image is available, the next step much as lossy compression does.
is to determine what will be done to it. Most often,
the image will be enhanced (improving the image How Compression Works
quality through interpolation or other techniques), Computers store image data as sets of numeric values.
compressed (decreasing the file size by sacrificing Each pixel onscreen is lit in a particular way when an
some image quality or clarity), or altered (made to de- image is displayed, and the colors of each pixel are
pict something that was not originally there). These stored as numbers. For example, if the color black
changes may be through destructive or nondestruc- were represented by the number eight, then anywhere
tive editing. In destructive editing, the changes are in a picture that has three black pixels in a row would
applied to the original file. By contrast, in nondestruc- be stored as 8, 8, 8. Because an image is composed of
tive editing, they are saved in a separate version file. thousands of pixels, all of the numbers needed to de-
In the early days of the Internet, image compres- scribe the colors of those pixels, when combined, take
sion was an especially important type of image editing. up a lot of storage space. One way to store the same
Bandwidth was limited then, and it could take several information in less space is to create substitutions for
minutes to transmit even a medium sized image file. recurring groups of numbers. The symbol q1 could
Image compression algorithms were invented to help be used to represent three black pixels in a row, for
74
instance. Thus, instead of having to store three copies programs, including iPhoto, Apple Photos, Google’s
of the value “8” to represent each of the three black Picasa, and Gimp, also provide image editing for
pixels, the computer could simply store the two-letter desktop computers. Fotor and Pixlr Editor work
symbol q1, thus saving one-third of the storage space across platforms, giving users flexibility between
that otherwise would be required. This is the basis for their desktop, mobile device, and the Web. Similarly,
how digital images are compressed. photo collaging software abounds. Among these
Most images are compressed using lossy compres- programs are Photoshop CC and CollageIt on desk-
sion algorithms, such as JPEG. Compression thus usu- tops, Ribbet and Fotojet online, and Pic Stitch and
ally requires that the sacrifice of some image quality. BeFunky on mobile devices.
For most purposes, the reduction in quality is not Nokia and Apple have developed the capability to
noticeable and is made up for by the convenience of create “live photos” with their smartphones. These
more easily storing and transmitting the smaller file. are a hybrid of video and still images in which a few
It is not uncommon for compression algorithms to seconds of video are recorded prior to the still photo
reduce the file size of an image by 75 to 90 percent, being taken. This feature represents yet another direc-
without noticeably affecting the image’s quality. tion for image capture, alteration, and presentation.
—Scott Zimmer, JD
A Numbers Game
Image enhancement typically relies on the mathe-
matical adjustment of the numeric values that repre-
Bibliography
sent pixel hues. For instance, if an image editor were
to desaturate a photograph, the software would first Busch, David D. Mastering Digital SLR Photography.
recognize all of the pixel values and compare them to 2nd ed. Boston: Thompson Learning, 2008. Print.
a grayscale value. It would then interpolate new values Freeman, Michael. Digital Image Editing & Special
for the pixels using a linear operation. Similarly, a Effects: Quickly Master the Key Techniques of Photoshop
filtering algorithm would find and apply a weighted & Lightroom. New York: Focal, 2013. Print.
average of the pixel values around a given pixel value Galer, Mark, and Philip Andrews. Photoshop CC
in order to identify the new color codes for each Essential Skills: A Guide to Creative Image Editing.
pixel being adjusted. The median or the mode (most New York: Focal, 2014. Print.
common) value could also be used. The type of filter Goelker, Klaus. Gimp 2.8 for Photographers: Image
being applied determines which mathematical oper- Editing with Open Source Software. Santa Barbara:
ation is performed. Filters are often used to correct Rocky Nook, 2013. Print.
for noise, or unwanted signal or interference. Holleley, Douglas. Photo-Editing and Presentation:
A Guide to Image Editing and Presentation for
Image Editing Goes Mobile Photographers and Visual Artists. Rochester:
Image editing is now even possible on mobile plat- Clarellen, 2009. Print.
forms. Certain programs work only on PCs, others Xue, Su. Data-Driven Image Editing for Perceptual
strictly on mobile devices, and still others on both. Effectiveness. New Haven: Yale U, 2013. Print.
Besides the well-known Adobe Photoshop, other
75
LOSSLESS
Compressed
Original file Restored
LOSSY
Compressed
Original file Restored
Digital audio formats that store varying amounts and arrangements of data. Choosing the appropriate
file format can make a difference when the audio speed amplitude is manipulated, or compressed and
restored. EBSCO illustration.
76
77
78
editing was initially achieved by physically cutting Nonlinear editing enabled video editors to em-
videotape into sections and then splicing the sec- ploy a range of new techniques that would have
tions together in the desired sequence. By the 1960s, been impossible to achieve previously. One such
electronic tape editing technology allowed different technique is video scratching, where a sequence of
sections of videotape to be combined mechanically video frames is manipulated to match the rhythm
onto a single videotape. Even with this advance, how- of a piece of music. Another is digital compositing.
ever, linear video editing remained difficult and time In this process, video frames from different sources
consuming. can be combined with each other and with still im-
The advent of digital technology revolutionized ages and computer graphics to create the illusion
video editing. Computer hardware and video-ed- that they were all recorded at once. This is related
iting software enabled the use of nonlinear editing. to vision mixing, in which various video sources are
Nonlinear editing allows individual video frames to combined into a single recording. An example is the
be accessed, altered, moved, copied, or deleted re- combining of footage from multiple cameras at a
gardless of the order in which they were recorded. live event, such as a concert, for a seamless broadcast
The frames can then be combined into a single video viewing experience.
sequence using software. An important tool used in video editing is the edit
decision list (EDL). An EDL is an ordered list of video
LOSSLESS
Compressed
Original file Restored
LOSSY
Compressed
Original file Restored
Digital video formats store varying quantities and qualities of data. Choosing the appropriate file
format can make a difference when the audio speed amplitude is manipulated, or compressed and
restored. With so many video formats available, it is important to choose editing software that is com-
patible with one’s file format of choice. EBSCO illustration.
79
80
CoMputer seCurIty
Fields oF study software with the latest security patches, ensure that
hardware is designed appropriately and stored safely,
Information Technology; Security
and train users to help protect sensitive information
from unauthorized access.
AbstrAct
PriniciPAl terms
The goal of computer security is to prevent computer
and network systems from being accessed by those backdoor: a hidden method of accessing a com-
without proper authorization. It encompasses dif- puter system that is placed there without the
ferent aspects of information technology, from hard- knowledge of the system’s regular user in order to
ware design and deployment to software engineering make it easier to access the system secretly.
and testing. It even includes user training and work- device fingerprinting: information that uniquely
flow analysis. Computer security experts update identifies a particular computer, component, or
INTERNET
INTERNET
Access denied
Encrypted wireless
connection
Key encryption
Software firewall
Password denied
Computer security can come in many forms to ensure data and programs are protected. Passwords limit
who can access a computer, key encryption limits who can read transmitted data, and firewalls can limit
intrusion from the Internet. EBSCO illustration.
81
piece of software installed on the computer. This the whole system may still be protected. Another type
can be used to find out precisely which device ac- of security, device fingerprinting, can make it pos-
cessed a particular online resource. sible to identify which device or application was used
intrusion detection system: a system that uses hard- to access a system. For example, if a coffee shop’s
ware, software, or both to monitor a computer or wireless access point was attacked, the access point’s
network in order to determine when someone at- logs could be examined to find the machine address
tempts to access the system without authorization. of the device used to launch the attack. One highly
phishing: the use of online communications in sophisticated piece of security hardware is an intru-
order to trick a person into sharing sensitive per- sion detection system. These systems can take dif-
sonal information, such as credit card numbers or ferent forms but generally consist of a device through
social security numbers. which all traffic into and out of a network or host is
principle of least privilege: a philosophy of com- filtered and analyzed. The intrusion detection system
puter security that mandates users of a computer examines the flow of data in order to pinpoint any
or network be given, by default, the lowest level attempt at hacking into the network. The system can
of privileges that will allow them to perform their then block the attack before it can cause any damage.
jobs. This way, if a user’s account is compromised,
only a limited amount of data will be vulnerable. Network Security
trusted platform module (TPM): a standard used Network security is another important aspect of com-
for designing cryptoprocessors, which are special puter security. In theory, any computer connected to
chips that enable devices to translate plain text the Internet is vulnerable to attack. Attackers can try
into cipher text and vice versa. to break into systems by exploiting weak points in the
software’s design or by tricking users into giving away
Hardware Security their usernames and passwords. The latter method is
The first line of defense in the field of computer called phishing, because it involves “fishing” for in-
security concerns the computer hardware itself. At formation. Both of these methods can be time con-
a basic level, computer hardware must be stored in suming, however. So once a hacker gains access, they
secure locations where it can only be accessed by may install a backdoor. Backdoors allow easy, unde-
authorized personnel. Thus, in many organizations, tected access to a system in future.
access to areas containing employee workstations is One way of preventing attackers from tricking au-
restricted. It may require a badge or other identifica- thorized users into granting access is to follow the
tion to gain access. Sensitive equipment such as an principle of least privilege. According to this prin-
enterprise server is even less accessible, locked away ciple, user accounts are given the minimum amount
in a climate-controlled vault. It is also possible to add of access rights required for each user to perform
hardware security measures to existing computer their duties. For instance, a receptionist’s account
systems to make them more secure. One example would be limited to e-mail, scheduling, and switch-
of this is using biometric devices, such as fingerprint board functions. This way, a hacker who acquired the
scanners, as part of the user login. The computer receptionist’s username and password could not do
will only allow logins from people whose fingerprints things such as set their own salary or transfer com-
are authorized. Similar restrictions can be linked to pany assets to their own bank account. Keeping privi-
voice authentication, retina scans, and other types leges contained thus allows an organization to mini-
of biometrics. Computer security can come in many mize the damage an intruder may try to inflict.
forms to ensure data and programs are protected.
Passwords limit who can access a computer, key en- Software Security
cryption limits who can read transmitted data, and Software represents another vulnerable point of com-
firewalls can limit intrusion from the Internet. puter systems. This is because software running on a
Inside a computer, a special type of processor computer must be granted certain access privileges
based on a trusted platform module (TPM) can in order to function. If the software is not written in a
manage encrypted connections between devices. secure fashion, then hackers may be able to enhance
This ensures that even if one device is compromised, the software’s privileges. Hackers can then use these
82
Computer-assisted instruction
Fields of Study as memorizing a list of concepts by setting the list
to music.
Computer Science; Information Systems
learning style: an individual’s preferred approach
to acquiring knowledge, such as by viewing visual
Abstract stimuli, reading, listening, or using one’s hands to
Computer-assisted instruction is the use of com- practice what is being taught.
puter technology as a means of instruction or an aid pedagogy: a philosophy of teaching that addresses
to classroom teaching. The instructional content the purpose of instruction and the methods by
may or may not pertain to technology. Computer- which it can be achieved.
assisted instruction often bridges distances between word prediction: a software feature that recog-
instructor and student and allows for the instruction nizes words that the user has typed previously and
of large numbers of students by a few educators. offers to automatically complete them each time
the user begins typing.
Prinicipal Terms
Computer-Assisted vs. Traditional
learner-controlled program: software that allows Instruction
a student to set the pace of instruction, choose In a traditional classroom, a teacher presents infor-
which content areas to focus on, decide which mation to students using basic tools such as pencils,
areas to explore when, or determine the medium paper, chalk, and a chalkboard. Most lessons con-
or difficulty level of instruction; also known as a sist of a lecture, group and individual work by stu-
“student-controlled program.” dents, and the occasional hands-on activity, such as
learning strategy: a specific method for acquiring a field trip or a lab experiment. For the most part,
and retaining a particular type of knowledge, such students must adapt their learning preferences to
83
New Lesson
Sample Problem
Remediation
Expert Student
Solution Solution Help Session
Another
If Correct If Incorrect No
Provide Feedback Try?
to Student
Computer-assisted instruction uses programming to determine whether a student understands the lesson (correctly an-
swers sample problems) or needs more help or remediation (incorrectly answers sample problems). This flowchart indi-
cates a general path of computer-assisted instruction. Adapted from S. Egarievwe, A. O. Ajiboye, and G. Biswas, “Internet
Application of LabVIEW in Computer Based Learning,” 2000.
the teacher’s own pedagogy, because it would be im- move through the lessons without having to focus on
practical for one teacher to try to teach to multiple presenting information to a group.
learning styles at once.
Computer-assisted instruction (CAI) supplements Advantages and Disadvantages
this model with technology, namely a computing de- CAI has both benefits and drawbacks. Certain
vice that students work on for some or all of a lesson. software features make it easier to navigate the
Some CAI programs offer limited options for how learning environment, such as word prediction to
the material is presented and what learning strategies make typing easier and spell-checking to help avoid
are supported. Others, known as learner-controlled spelling mistakes. Copy-and-paste features save
programs, are more flexible. users time that they would otherwise spend reen-
A typical CAI lesson focuses on one specific con- tering the same information over and over. Speech
cept, such as long division or the history of Asia. The recognition can assist students who are blind, have
program may present information through audio, physical disabilities, or have a learning disability that
video, text, images, or a combination of these. It then affects writing. Other helpful features are present
quizzes the student to make sure that they have paid despite not having been intended to benefit stu-
attention and understood the material. Such instruc- dents. For example, CAI video lessons include the
tion has several benefits. First, students often receive option to pause playback, skip ahead or back, or re-
information through several mediums, so they do start. These functions can be vital to a student who
not have to adapt to the teacher’s preferred style. is struggling to grasp an especially difficult lesson
Second, teachers can better support students as they or is practicing note-taking. They can stop the video
84
at any time and restart it after catching up with the of CAI to supplement their curricula. For example,
content that has been presented. By contrast, in a an online course might require students to watch a
regular classroom, the lecturer often continues at streaming video about doing library research so that
the same pace regardless how many students may be they will know how to complete their own research
struggling to understand and keep up. paper for the course. Online education also enables
Learning is rarely a “one size fits all” affair. just a few instructors to teach large numbers of stu-
Different topics pose greater or lesser challenges to dents across vast distances. Tens of thousands of
different students, depending on their natural abili- students may enroll in a single massive open online
ties and study habits. In regular classrooms, teachers course (MOOC).
can often sense when some students are not ben-
—Scott Zimmer, JD
efiting from a lesson and adapt it accordingly. With
some CAI, this is not an option because the lesson is
only presented in one way. Bibliography
Abramovich, Sergei, ed. Computers in Education. 2
Adaptive Instruction vols. New York: Nova, 2012. Print.
Fortunately, some forms of CAI address different Erben, Tony, Ruth Ban, and Martha E. Castañeda.
learning rates by using adaptive methods to present Teaching English Language Learners through
material. These programs test students’ knowledge Technology. New York: Routledge, 2009. Print.
and then adapt to those parts of the lesson with Miller, Michelle D. Minds Online: Teaching Effectively
which they have more difficulty. For instance, if a with Technology. Cambridge: Harvard UP, 2014.
math program notices that a student often makes Print.
mistakes when multiplying fractions, it might give Roblyer, M. D., and Aaron H. Doering. Integrating
the student extra practice in that topic. Adaptive Educational Technology into Teaching. 6th ed. Boston:
programs give teachers the means to better assess stu- Pearson, 2013. Print.
dents’ individual needs and track their progress. As Tatnall, Arthur, and Bill Davey, eds. Reflections on
the technology improves, more detailed and specific the History of Computers in Education: Early Use of
results may bolster teachers’ efforts to tailor instruc- Computers and Teaching about Computing in Schools.
tion further. Heidelberg: Springer, 2014. Print.
Tomei, Lawrence A., ed. Encyclopedia of Information
Distance Education Technology Curriculum Integration. 2 vols. Hershey:
CAI is especially important to the growing field of on- Information Science Reference, 2008. Print.
line education. Online instructors often use elements
85
Connection machine
Fields of Study available. They were an outgrowth of Daniel
Hillis’s Ph. D. Thesis at MIT, built partially on the
Computer Science; Computer Engineering;
neural network ideas of John Hopfield and influ-
Information Technology
enced in its early stages by Nobel Laureate Richard
P. Feynman, a colorful figure who began his career
Abstract as head of a computational group at Los Alamos
The Connection Machines grew out of Daniel Hillis’s and went on to be one of the founders of quantum
Ph.D. Thesis research in Electrical Engineering and electrodynamics.
Computer Science at the Massachusetts Institute In the early days of computation, McCullough
of Technology. The basic idea was that of having a and Pitts studied the behavior of collections of neu-
massively parallel computer network, with each pro- rons whose output was a step function of a weighed
cessor connected to all the others. The majority of sum of their inputs. If the weights were allowed to
digital computers have the so-called Von Neumann change based on the number of times a neuron
Architecture, in which a Central Processing Unit fired, learning was found to take place. This was an
does the actual computation, taking intermediate example of Hebbian learning, so named after D.
results from specified locations and storing inter- O. Hebb who promoted the concept. In the 1970’s
mediate results for later use. But the human brain John Hopfield studied the behavior of a single net-
and other brains found in nature do not work in work of such neurons. The Hopfield arrangement of
that way. Instead there is no central processor, and neurons was the basis for the first versions of the con-
each neuron is connected to a great many others. nection machine. Hopfield’s method proved ideally
The connection machine series was one of the first suited to the connection machine, with the weights
commercial attempts to capture the brain’s way of represented as decimal numbers. This allowed all
thinking. the processors to be used concurrently resulting in
computing times orders of magnitude faster then in
Principal Terms conventional machines.
Thinking Machines Corporation was founded
central processing unit: the main operating func- by Daniel Hillis and Sheryl Handler in Waltham,
tion of a conventional computer which can be pro- Massachusetts in 1983 and later moved to
grammed to read characters from a storage me- Cambridge MA. In 1999 it was acquired by Sun
dium, combine them as instructed and store the Microsystems.
output for later use. While it would in principle be desirable for a
Hebbian learning: machine learning as a result of computer to simultaneously update all processors,
modifying the weights in a neural network. it proved much too unwieldy for the first connec-
Hopfield neural network: a one layer neural net tion machines, which instead adopted a hypercube
where each neuron knows the state of all other arrangement of processors. The CM-1 had as many
neurons at each time step. as 65,536 processors each processing one bit at a
parallel processing: several computational steps time. The CM-2 launched in 1987 added floating
done simultaneously point numeric coprocessors. In 1991 the CM 5
Von Neumann architecture: The simplest com- was announced, Thinking Machines went to a new
puter organization, in which the central pro- architecture.
cessing unit modifies one location in memory at Much thinking had been devoted to the phys-
a time ical layout of the connection machines. The ini-
tial designs reflected the machines hypercube
History & Development of Connection architecture. The CM-5 had large panels of red
Machines blinking light emitting diodes. Because of its de-
The connection machines were among the first sign, a CM 5 was included in the control room in
parallel processing computers to be commercially Jurassic Park.
86
The involvement of Richard Feynman, who after the quantum rules that explained which par-
shared in the Nobel Prize for Physics in 1965 is ticles could be observed. And indeed one of the
noteworthy for several reasons. Feynman, one of first problems to which the connection machine
whose major contribution to quantum electrody- was applies involved the application of quantum
namics was in introducing a diagrammatic method chromodynamics.
for summing term in the solution of the basic equa-
—Donald Franceschetti, PhD
tions of motion was a, graduate student in Physics
at Princeton University when World War II began.
While completing his thesis he was also head of
the theoretical division at Los Alamos, which then Bibliography
consisted mainly of high school graduates working Anderson, James A, Edward Rosenfeld, and Andras
with adding machines or similar devices to solve Pellionisz. Neurocomputing. Cambridge, Mass: MIT
problems which had grown out of the atomic bomb Press, 1990. Print.
project. It was this great familiarity with the innards Hillis, W. Daniel. “Richard Feynman and the
of machines that did arithmetic that may have led Connection Machine.” Phys. Today Physics Today
him to the ultimate techniques involving diagrams 42.2 (1989): 78. Web.
in the theory of electrons and photons. By the time Hopfield, J. J. “Neural Networks and Physical
the connection machine was contemplated, physi- Systems with Emergent Collective Computational
cists had moved to the theory of particles within Abilities.” Proceedings of the National Academy of
the nucleus, quantum chromodynamics, so named Sciences 79.8 (1982): 2554-558. Web.
Constraint programming
Fields of Study domain: the range of values that a variable may
take on, such as any even number or all values less
Software Engineering; System-Level Programming
than −23.7.
functional programming: a theoretical approach
Abstract
to programming in which the emphasis is on ap-
Constraint programming typically describes the plying mathematics to evaluate functional rela-
process of embedding constraints into another lan- tionships that are, for the most part, static.
guage, referred to as the “host” language since it imperative programming: programming that pro-
hosts the constraints. Not all programs are suitable duces code that consists largely of commands is-
for constraint programming. Some problems are sued to the computer, instructing it to perform
better addressed by different approaches, such as specific actions.
logic programming. Constraint programming tends
to be the preferred method when one can envision Models of Constraint Programming
a state in which multiple constraints are simultane- Constraint programming tends to be used in situa-
ously satisfied, and then search for values that fit that tions where the “world” being programmed has mul-
state. tiple constraints, and the goal is to have as many of
them as possible satisfied at once. The aim is to find
values for each of the variables that collectively de-
Prinicipal Terms
scribe the world, such that the values fall within that
constraints: limitations on values in computer variable’s constraints.
programming that collectively identify the so- To achieve this state, programmers use one of
lutions to be produced by a programming two main approaches. The first approach is the
problem. perturbation model. Under this model, some of
87
Define
problem
Deduce Constraint
contradictions propagation
In constraint programming, the design of the program is dictated by specific constraints determined prior to development. After
a problem is identified, the initial constraints are defined and condensed into the current program constraints. As solutions are
developed and tested, decisions are made as to whether the constraints must be modified or retracted to remove duplications or
whether new ones must be developed. The process cycles through current restraints and solutions until a solution is developed
that meets all the constraints and solves the initial problem. Adapted from Philippe Baptiste, “Combining Operations Research
and Constraint Programming to Solve Real-Life Scheduling Problems.”
the variables are given initial values. Then, at dif- each variable can assume any value within its domain.
ferent times, variables are changed (“perturbed”) Then, as time passes, some values of one variable will
in some way. Each change then moves through the inevitably be ruled out by the values assumed by other
system of interrelated variables like ripples across variables. Over time, each variable’s possible values
the surface of a pond: other values change in ways are refined down to fewer and fewer options. The
that follow their constraints and are consistent with refinement model is sometimes considered more
the relationships between values. The perturbation flexible, because it does not confine a variable to one
model is much like a spreadsheet. Changing one possible value. Some variables will occasionally have
cell’s value causes changes in other cells that con- multiple solutions.
tain formulas that refer to the value stored in the
original cell. A single change to a cell can propa- A Different Approach to Programming
gate throughout many other cells, changing their Constraint programming is a major departure from
values as well. more traditional approaches to writing code. Many
A contrasting approach is the refinement model. programmers are more familiar with imperative pro-
Whereas the perturbation model assigns particular gramming, where commands are issued to the com-
values to variables, under the refinement model, puter to be executed, or functional programming,
88
where the program receives certain values and then a limitation of constraint programming. However,
performs various mathematical functions using those its flexibility can mean that it solves a problem faster
values. Constraint programming, in contrast, can be than expected.
less predictable and more flexible. Another example of a problem for which con-
A classic example of a problem that is especially straint programming is well suited is that of creating
well suited to constraint programming is that of map a work schedule. The department or team contains
coloring. In this problem, the user is given a map of multiple variables (the employees), each with their
a country composed of different states, each sharing own constraints. Mary can work any day except
one or more borders with other states. The user is Friday, Thomas can work mornings on Monday
also given a palette of colors. The user must find a through Thursday but only evenings on Friday, and
way to assign colors to each state, such that no adja- so forth. The goal is to simply find a schedule that fits
cent states (i.e., states sharing a border) are the same all of the constraints. It does not matter whether it is
color. Map makers often try to accomplish this in real the best schedule, and in fact, there likely is no “best”
life so that their maps are easier to read. schedule.
Those experienced at constraint programming
—Scott Zimmer, JD
can immediately recognize some elements of this
problem. The most obvious is the constraint, which
is the restriction that adjacent states may not be the Bibliography
same color. Another element is the domain, which is Baptiste, Philippe, Claude Le Pape, and Wim Nuijten.
the list of colors that may be assigned to states. The Constraint-Based Scheduling: Applying Constraint
fewer the colors included in the domain, the more Programming to Scheduling Problems. New York:
challenging the problem becomes. While this map- Springer, 2013. Print.
coloring problem may seem simplistic, it is an excel- Ceberio, Martine, and Vladik Kreinovich. Constraint
lent introduction to the concept of constraint pro- Programming and Decision Making. New York:
gramming. It provides a useful situation for student Springer, 2014. Print.
programmers to try to translate into code. Henz, Martin. Objects for Concurrent Constraint
Programming. New York: Springer, 1998. Print.
Feasibility vs. Optimization Hofstedt, Petra. Multiparadigm Constraint Programming
Constraint programming is an approach to problem Languages. New York: Springer, 2013. Print.
solving and coding that looks only for a solution that Pelleau, Marie, and Narendra Jussien. Abstract Domains
works. It is not concerned with finding the optimal in Constraint Programming. London: ISTE, 2015. Print.
solution to a problem, a process known as “optimi- Solnon, Christine. Ant Colony Optimization and Constraint
zation.” Instead, it seeks values for the variables that Programming. Hoboken: Wiley, 2010. Print.
fit all of the existing constraints. This may seem like
89
Control systems
Fields of Study One of the first steps in designing a control system
is system identification. This is the process of modeling
Embedded Systems; System Analysis
the system to be controlled. It involves studying the in-
puts and outputs of the system and determining how
Abstract they need to be manipulated in order to produce the
A control system is a device that exists to control mul- desired outcome. Some control systems require a cer-
tiple other systems or devices. For example, the con- tain degree of human interaction or guidance during
trol system in a factory would coordinate the opera- their operation. However, control-system designers
tion of all of the factory’s interconnected machines. generally prefer systems that can function as autono-
Control systems are used because the coordination mous agents. The purpose of a control system is to
of these functions needs to be continuous and nearly reduce human involvement in the process as much
instantaneous, which would be difficult and tedious as possible. This is partly so personnel can focus on
for human beings to manage. other, more important tasks and partly because prob-
lems are more likely to arise from human error.
The downside of an autonomous agent is that it
Prinicipal Terms
requires greater system agility, so that when problems
actuator: a motor designed to move or control an- are encountered, the control system can either con-
other object in a particular way. tinue to perform its role or “fail gracefully” rather
automatic sequential control system: a mechanism than failing catastrophically or ceasing to function al-
that performs a multistep task by triggering a se- together. This could mean the difference between a
ries of actuators in a particular sequence. jammed conveyor belt being automatically corrected
autonomous agent: a system that acts on behalf of and that same belt forcing an entire assembly line to
another entity without being directly controlled by shut down.
that entity.
fault detection: the monitoring of a system in Control System Performance
order to identify when a fault occurs in its opera- Control systems are more than just computers that
tion. monitor other processes. Often, they also control
system agility: the ability of a system to respond the physical movements of system components. A
to changes in its environment or inputs without control system may cause an assembly-line robot
failing altogether. to pivot an automobile door so that another ma-
system identification: the study of a system’s inputs chine can attach its handle, or it may cause a de-
and outputs in order to develop a working model vice to fold cardboard into boxes to be filled with
of it. candy. Such tasks are accomplished via actuators,
which are motors that the control system manipu-
Types of Control Systems lates to execute the necessary physical movements.
Different types of control systems are used in dif- Sometimes only a single movement is required
ferent situations. The nature of the task being per- from a device. At other times, a device may have to
formed usually determines the design of the system. perform several different movements in a precisely
At the most basic level, control systems are classified timed sequence. If this is the case, an automatic se-
as either open-loop or closed-loop systems. In an quential control system is used to tell the machine
open-loop system, the output is based solely on the what to do and when.
input fed into the system. In a closed-loop system, the The development of very small and inexpensive
output generated is used as feedback to adjust the microprocessors and sensors has made it possible for
system as necessary. Closed-loop systems can make them to be incorporated into control systems. Similar
fault detection more difficult, as they are designed to to the closed-loop approach, these tiny computers
minimize the deviations created by faults. help a control system monitor its performance and
90
Feedback
Disturbance
System Output
Controller
Feed Forward/Anticipation/Planning
Disturbance
System Output
Controller
Control systems are used to alter a process pathway to reach a desired output. A controller senses some type of information
along the path-way and causes a change in the system. Making changes to the system prior to system input is called a “feed-
forward control”; making changes to the system based on the output is called “feedback control.” Adapted from http://www.
csci.csusb.edu/dick/cs372/a1.html. EBSCO illustration
provide detailed information about potential issues. sensors in a linear control system detect excess
For example, if a control system were using a new heat, as in the example above, this might cause the
type of raw material that produced increased heat system to initiate additional cooling. An example
due to friction and caused the system to operate less of this is when a computer’s fan speeds up after
efficiently, microsensors inside the machinery could an intensive application causes the system to begin
detect this and alert those in charge of supervising generating heat.
the system. Such information could help avoid costly
breakdowns of equipment and delays in production Behind the Scenes
by allowing supervisors to address problems before Control systems are a vital part of everyday life in the
they become severe. industrialized world. Most of the products people use
every day are produced or packaged using dozens of
different control systems. Human beings have come
Linear Control Systems
to rely heavily on technology to assist them in their
Linear control systems are a type of closed-loop
work, and in some cases to completely take over that
system. They receive linear negative feedback from
work. Control systems are the mechanisms that help
their outputs and adjust their operating param-
make this happen.
eters in response. This allows the system to keep
relevant variables within acceptable limits. If the —Scott Zimmer, JD
91
CPU design
Fields of Study protocol processor: a processor that acts in a
secondary capacity to the CPU, relieving it from
Computer Engineering; Information Technology
some of the work of managing communication
Abstract protocols that are used to encode messages on the
network.
CPU design is an area of engineering that focuses
on the design of a computer’s central processing CPU Design Goals
unit (CPU). The CPU acts as the “brain” of the ma- The design of a CPU is a complex undertaking. The
chine, controlling the operations carried out by the main goal of CPU design is to produce an architec-
computer. Its basic task is to execute the instructions ture that can execute instructions in the fastest, most
contained in the programming code used to write efficient way possible. Both speed and efficiency are
software. Different CPU designs can be more or less relevant factors. There are times when having an in-
efficient than one another. Some designs are better struction that is fast to execute is adequate, but there
at addressing certain types of problems. are also situations where it would not make sense to
have to execute that simple instruction hundreds of
Prinicipal Terms times in order to accomplish a task.
control unit design: describes the part of the CPU Often the work begins by designers considering
that tells the computer how to perform the in- what the CPU will be expected to do and where it will
structions sent to it by a program. be used. A microcontroller inside an airplane per-
datapath design: describes how data flows through forms quite different tasks than one inside a kitchen
the CPU and at what points instructions will be appliance, for instance. The CPU’s intended function
decoded and executed. tells what type of instruction-set architecture to use in
logic implementation: the way in which a the microchip that contains the CPU. Knowing what
CPU is designed to use the open or closed types of programs will be used most frequently also
state of combinations of circuits to represent allows CPU designers to develop the most efficient
information. logic implementation. Once this has been done, the
microcontroller: a tiny computer in which all of control unit design can be defined. Defining the
the essential parts of a computer are united on datapath design is usually the next step, as the CPU’s
a single microchip—input and output channels, handling of instructions is given physical form.
memory, and a processor. Often a CPU will be designed with additional sup-
peripherals: devices connected to a computer but ports to handle the processing load, so that the CPU
not part of the computer itself, such as scanners, itself does not become overloaded. Protocol proces-
external storage devices, and so forth. sors, for example, may assist with communications
92
Execute instructions
A generic state diagram shows the simple processing loop: fetch instructions from memory, decode instruc-
tions to determine the proper execute cycle, execute instructions, and then fetch next instructions from
memory and continue the cycle. A state diagram is the initial design upon which data paths and logic controls
can be designed. EBSCO illustration.
protocol translation involving the transmission of instructions.” Random logic uses logic devices, such
data between the computer and its peripherals or as decoders and counters, to transport data and to
over the Internet. Internet communication proto- perform calculations. Random logic can make it pos-
cols are quite complex. They involve seven different, sible to design faster chips. The logic itself takes up
nested layers of protocols, and each layer must be ne- space that might otherwise be used to store instruc-
gotiated before the next can be addressed. Protocol tions, however. Therefore, it is not practical to use
processors take this workload off the CPU. random logic with very large sets of instructions.
The second approach to instruction sets is micro-
instruction sets code. Microcode is sometimes called “emulation” be-
CPU design is heavily influenced by the type of in- cause it references an operations table and uses sets
struction sets being used. In general, there are two of microinstructions indexed by the table in order to
approaches to instructions. The first is random execute each CPU instruction. Microcode can some-
logic. Sometimes this is referred to as “hardwired times be slower to run than random logic, but it also
93
has advantages that offset this weakness. Microcode an integrated circuit or microchip doubles, on av-
breaks down complex instructions into sets of mi- erage, every two years. This pace of improvement has
croinstructions. These microinstructions are used been responsible for the rapid development in tech-
in several complex instructions. A CPU executing nological capability and the relatively short lifespan
microcode would therefore be able to reuse microin- of consumer electronics, which tend to become obso-
structions. Such reuse saves space on the microchip lete soon after they are purchased.
and allows more complex instructions to be added.
—Scott Zimmer, JD
The most influential factor to consider when
weighing random logic against microcode is memory
speed. Random logic usually produces a speedier Bibliography
CPU when CPU speeds outpace memory speeds. Englander, Irv. The Architecture of Computer Hardware,
When memory speeds are faster, microcode is faster Systems Software, & Networking: An Information
than random logic. Technology Approach. Hoboken: Wiley, 2014. Print.
Hyde, Randall. Write Great Code: Understanding the
Reduced Instruction Set Computer Machine. Vol. 1. San Francisco: No Starch, 2005.
(RISC) Print.
Early in the history of CPU design, it was felt that the Jeannot, Emmanuel, and J. Žilinskas. High Performance
best way to improve CPU performance was to con- Computing on Complex Environments. Hoboken:
tinuously expand instruction sets to give program- Wiley, 2014. Print.
mers more options. Eventually, studies began to Lipiansky, Ed. Electrical, Electronics, and Digital
show that adding more complex instructions did not Hardware Essentials for Scientists and Engineers.
always improve performance, however. In response, Hoboken: Wiley, 2013. Print.
CPU manufacturers produced reduced instruction Rajasekaran, Sanguthevar. Multicore Computing:
set computer (RISC) chips. RISC chips could use less Algorithms, Architectures, and Applications. Boca
complex instructions, even though this meant that a Raton: CRC, 2013. Print.
larger number of instructions were required. Stokes, Jon. Inside the Machine: An Illustrated
Introduction to Microprocessors and Computer
Moore’s Law Architecture. San Francisco: No Starch, 2015. Print.
Moore’s law is named after Gordon Moore, a co- Wolf, Marilyn. High Performance Embedded Computing:
founder of the computer manufacturer Intel. In Architectures, Applications, and Methodologies.
1975, Moore observed that the computing power of Amsterdam: Elsevier, 2014. Print.
94
Cryptography
Fields of Study substitution cipher: a cipher that encodes a mes-
sage by substituting one character for another.
Computer Science; Computer Engineering;
symmetric-key cryptography: a system of encryp-
Algorithms
tion that uses the same private key to encrypt and
decrypt data.
Abstract
transposition cipher: a cipher that encodes a
Cryptography is the process of encrypting messages message by changing the order of the characters
and other data in order to transmit them in a form within the message.
that can only be accessed by the intended recipients.
It was initially applied to written messages. With the What Is Cryptography?
introduction of modern computers, cryptography The word “cryptography” comes from the Greek
became an important tool for securing many types of words kryptos (“hidden,” “secret”) and graphein
digital data. (“writing”). Early cryptography focused on ensuring
that written messages could be sent to their intended
Prinicipal Terms recipients without being intercepted and read by
other parties. This was achieved through various en-
hash function: an algorithm that converts a string
cryption techniques. Encryption is based on a simple
of characters into a different, usually smaller,
principle: the message is transformed in such a way
fixed-length string of characters that is ideally im-
that it becomes unreadable. The encrypted message
possible either to invert or to replicate.
is then transmitted to the recipient, who reads it by
public-key cryptography: a system of encryption
transforming (decrypting) it back into its original
that uses two keys, one public and one private, to
form.
encrypt and decrypt data.
Alice’s Hash
Digital
Message Function
Envelope
Sent to
Secret Key Bob
Random Encrypted
Crytography
Session Key Message
This is a diagram of cryptography techniques: public (asymmetric) key, private (symmetric) key, and hash functions. Each se-
cures data in a different way and requires specific types of keys to encrypt and decrypt the data. Adapted from Gary C. Kessler,
“An Overview of Cryptography.”
95
Early forms of encryption were based on ciphers. digital signature is used to confirm the identity
A cipher encrypts a message by altering the charac- of the sender of a digital message and to ensure
ters that comprise the message. The original mes- that no one has tampered with its contents. Digital
sage is called the “plaintext,” while the encrypted signatures use public-key encryption. First, a hash
message is the “ciphertext.” Anyone who knows the function is used to compute a unique value based
rules of the cipher can decrypt the ciphertext, but on the data contained in the message. This unique
it remains unreadable to anyone else. Early ciphers value is called a “message digest,” or just “digest.”
were relatively easy to break, given enough time and The signer’s private key is then used to encrypt the
a working knowledge of statistics. By the 1920s, elec- digest. The combination of the digest and the pri-
tromechanical cipher machines called “rotor ma- vate key creates the signature. To verify the digital
chines” were creating complex ciphers that posed signature, the recipient uses the signer’s public key
a greater challenge. The best-known example of a to decrypt the digest. The same hash function is
rotor machine was the Enigma machine, used by the then applied to the data in the message. If the new
German military in World War II. Soon after, the digest matches the decrypted digest, the message
development of modern computer systems in the is intact.
1950s would change the world of cryptography in
major ways.
Decrypting a Basic Cipher
Among the earliest ciphers used were the transpo-
Cryptography in the Computer Age
sition cipher and the substitution cipher. A trans-
With the introduction of digital computers, the
position cipher encrypts messages by changing
focus of cryptography shifted from just written lan-
the order of the letters in the message using a
guage to any data that could be expressed in binary
well-defined scheme. One of the simplest transpo-
format. The encryption of binary data is accom-
sition ciphers involves reversing the order of let-
plished through the use of keys. A key is a string of
ters in each word. When encrypted in this fashion,
data that determines the output of a cryptographic
the message “MEET ME IN THE PARK” becomes
algorithm. While there are many different types of
“TEEM EM NI EHT KRAP.” More complicated
cryptographic algorithms, they are usually divided
transposition ciphers might involve writing out
into two categories. Symmetric-key cryptography
the message in a particular orientation (such as in
uses a single key to both encrypt and decrypt the
stacked rows) and then reading the individual let-
data. Public-key cryptography, also called “asym-
ters in a different orientation (such as successive
metric-key cryptography,” uses two keys, one public
columns).
and one private. Usually, the public key is used to
A substitution cipher encodes messages by substi-
encrypt the data, and the private key is used to de-
tuting certain letters in the message for other letters.
crypt it.
One well-known early substitution cipher is the Caesar
When using symmetric-key cryptography, both the
cipher, named after Julius Caesar. This cipher encodes
sender and the recipient of the encrypted message
messages by replacing each letter with a letter that is
must have access to the same key. This key must be
a specified number of positions to its right or left in
exchanged between parties using a secure channel,
the alphabet. For example, Caesar is reported to have
or else it may be compromised. Public-key cryptog-
used a left shift of three places when encrypting his
raphy does not require such an exchange. This is one
messages.
reason that public-key cryptography is considered
Using this cipher, Julius Caesar’s famous message
more secure.
“I came, I saw, I conquered” becomes “F ZXJB F PXT
Another cryptographic technique developed
F ZLKNRBOBA” when encrypted.
for use with computers is the digital signature. A
Original A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Replacement X Y Z A B C D E F G H I J K L M N O P Q R S T U V W
96
97
Resource
A Hel
es du
Requir pb
y
Process Process
1 2
Hel s
du uire
pb
y Req
Resource
B
This is a diagram of a circular wait deadlock. Process 1 requires resource A to complete, resource A is held up by process 2, process 2 cannot
complete without resource B, and resource B is held up by process 1. EBSCO illustration.
before the credit to the account was recorded, the priority over other operations. As such, they can
customer might have overdrawn their account. force other processes to stop and let them finish first.
Resource holding is used to make systems more con- Preemption is typically reserved for processes that are
sistent, since it defines rules that allow ambiguities to fundamental to the operation of the system. If one of
be resolved in a straightforward manner. the conflicting processes can preempt another, dead-
lock will not occur. In fact, if any one of the Coffman
Standoff conditions is not true, deadlock will not occur.
Deadlock can be understood as an unintended conse-
quence of resource holding. While resource holding Responses to Deadlock
serves a legitimate purpose, inevitably situations arise System designers have several options for dealing
in which two processes each hold a resource that the with deadlocks. One is to simply ignore the issue al-
other needs in order to finish its work. Process A needs together, though this is not practical in most circum-
a resource locked by process B in order to finish, while stances. A second approach is to focus on detecting
process B needs a resource locked by process A to deadlocks and then have a variety of options avail-
finish, and neither can relinquish its resources until able for resolving them. A third approach is to try to
it is completed. This situation is called a circular wait. avoid deadlocks by understanding which system op-
In 1971, computer scientist Edward G. Coffman erations tend to cause them. Finally, system designers
described the four conditions, now known as the may adopt a preventive approach in which they make
Coffman conditions, necessary for deadlock to occur: changes to the system architecture specifically to
avoid potential deadlocks.
Mutual exclusion, Usually some type of outside intervention is re-
Resource holding, quired to resolve a deadlock situation. To accom-
No preemption, and plish this, many systems will include mechanisms
Circular wait that function to detect and resolve deadlock.
Ironically, in trying to resolve deadlock, these sys-
Mutual exclusion, resource holding, and circular tems may produce a similar situation known as
wait are described above. Preemption is when one livelock. Like a deadlock, a livelock results when
process takes control of a resource being used by two or more concurrent processes are unable to
another process. Some designated processes have complete. Unlike a deadlock, this happens not
99
Debugging
Fields of Study in-circuit emulator: a device that enables the de-
bugging of a computer system embedded within a
Computer Science; Software Engineering
larger system.
integration testing: a process in which multiple
Abstract units are tested individually and when working in
Debugging is the process of identifying and ad- concert.
dressing errors, known as “bugs,” in computer sys- memory dumps: computer memory records from
tems. It is an essential step in the development of all when a particular program crashed, used to pin-
kinds of programs, from consumer programs such point and address the bug that caused the crash.
as web browsers and video games to the complex software patches: updates to software that correct
systems used in transportation and infrastructure. bugs or make other improvements.
Debugging can be carried out through a number of
methods depending on the nature of the computer Understanding Debugging
system in question. Debugging is the process of testing software or
other computer systems, noting any errors that
occur, and finding the cause of those errors. Errors,
Prinicipal Terms
or “bugs,” in a computer program can seriously af-
delta debugging: an automated method of debug- fect the program’s operations or even prevent it
ging intended to identify a bug’s root cause while from functioning altogether. The ultimate goal of
eliminating irrelevant information. debugging is to get rid of the bugs that have been
100
identified. This should ensure the smooth and collected data commonly referred to as memory
error-free operation of the computer program or dumps. They can then address such errors through
system. updates known as software patches.
Computer programs consist of long strings of While bugs are an inconvenience in consumer
specialized code that tell the computer what to do computer programs, in more specialized computer
and how to do it. Computer code must use specific systems, they can have far more serious conse-
vocabulary and structures in order to function prop- quences. In areas such as transportation, infrastruc-
erly. As such code is written by human programmers, ture, and finance, errors in syntax and logic can
there is always the possibility of human error, which place lives and livelihoods at risk. Perhaps the most
is the cause of many common bugs. Perhaps the most prominent example of such a bug was the so-called
common bugs are syntax errors. These are the re- Y2K bug. This bug was projected to affect numerous
sult of small mistakes, such as typos, in a program’s computer systems beginning on January 1, 2000.
code. In some cases, a bug may occur because the The problem would have resulted from existing
programmer neglected to include a key element in practices related to the way dates were written in
the code or structured it incorrectly. For example, computer programs. However, it was largely averted
the code could include a command instructing the through the work of programmers who updated
computer to begin a specific process but lack the cor- the affected programs to prevent that issue. As the
responding command to end it. example of the far-reaching Y2K bug shows, the
Bugs fall into one of several categories, based on world’s growing reliance on computers in all areas
when and how they affect the program. Compilation of society has made thorough debugging even more
errors prevent the program from running. Run-time important.
errors, meanwhile, occur as the program is run-
ning. Logic errors, in which flaws in the program’s Identifying and Addressing Bugs
logic produce unintended results, are a particularly The means of debugging vary based on the nature
common form of bug. Such errors come about of the computer program or system in question.
when a program’s code is syntactically correct but However, in most cases bugs may be identified and
does not make logical sense. For instance, a string of addressed through the same general process. When a
code with flawed logic may cause the program to be- bug first appears, the programmer or tester must first
come caught in an unintended loop. This can cause attempt to reproduce the bug in order to identify the
it to become completely unresponsive, or freeze. results of the error and the conditions under which
In other cases, a logic error might result when a they occur. Next, the programmer must attempt
program’s code instructs the computer to divide a to determine which part of the program’s code is
numerical value by zero, a mathematically impos- causing the error to occur. As programs can be quite
sible task. complex, the programmer must simplify this process
by eliminating as much irrelevant data as possible.
Why Debug? Once the faulty segment of code has been found, the
Bugs may interfere with a program’s ability to per- programmer must identify and correct the specific
form its core functions or even to run. Not all bugs problem that is causing the bug. If the cause is a typo
are related to a program’s core functions, and some or a syntax error, the programmer may simply need
programs may be usable despite the errors they con- to make a small correction. If there is a logic error,
tain. However, ease of use is an important factor that the programmer may need to rewrite a portion of the
many people consider when deciding which program code so that the program operates logically.
to use. It is therefore in the best interest of software
creators to ensure that their programs are as free of Debugging in Practice
errors as possible. In addition to testing a program Programmers use a wide range of tools to debug
or other computer system in house prior to releasing programs. As programs are frequently complex and
them to the general public, many software compa- lengthy, automating portions of the debugging pro-
nies collect reports of bugs from users following cess is often essential. Automated debugging pro-
its release. This is often done through transfers of grams, or “debuggers,” search through code line by
101
line for syntax errors or faulty logic that could cause Bibliography
bugs. A technique known as delta debugging pro-
Foote, Steven. Learning to Program. Upper Saddle
vides an automated means of filtering out irrelevant
River: Pearson, 2015. Print.
information when the programmer is looking for the
McCauley, Renée, et al. “Debugging: A Review of
root cause of a bug.
the Literature from an Educational Perspective.”
Different types of programs or systems often re-
Computer Science Education 18.2 (2008): 67–92.
quire different debugging tools. An in-circuit emu-
Print.
lator is used when the computer system being tested
Myers, Glenford J., Tom Badgett, and Corey Sandler.
is an embedded system (that is, one located within
The Art of Software Testing. Hoboken: Wiley, 2012.
a larger system) and cannot otherwise be accessed.
Print.
A form of debugging known as integration testing
St. Germain, H. James de. “Debugging Programs.”
is often used when a program consists of numerous
University of Utah. U of Utah, n.d. Web. 31 Jan. 2016.
components. After each component is tested and
“What Went Wrong? Finding and Fixing Errors
debugged on its own, they are linked together and
through Debugging.” Microsoft Developer Network
tested as a unit. This ensures that the different com-
Library. Microsoft, 2016. Web. 31 Jan. 2016.
ponents function correctly when working together.
Zeller, Andreas. Why Programs Fail: A Guide to Systematic
—Joy Crelin Debugging. Burlington: Kaufmann, 2009. Print.
102
established, the computer user would have to have war dialers to find unauthorized modems and faxes
the phone number of the host computer, and the on their organization’s computer networks.
host computer would have to be available. If the host Another modern technique similar to war dialing
computer was not online or had too many connec- is called port scanning. Computers connect to the
tions already, it could not accept another connection. Internet using different ports, which are like vir-
Eventually the first Internet service providers (ISPs) tual connection points. Some ports are traditionally
were established, allowing many computers to access used for certain connections, such as printers or web
the public Internet simultaneously. browsing. Other ports are left open for whichever
As the number of computers with modems in- application needs to create a connection. When a
creased, computer hackers began to try to discover computer has been secured, ports not in use are kept
and connect to them. For some, hacking became a closed to prevent unauthorized connections. Port
hobby of sorts. It presented a challenge that was ex- scanners bombard computers with connection at-
citing and intellectually stimulating. For crackers, or tempts on many different ports at once, then report
criminal hackers, it was a way to steal data or commit vulnerable port numbers back to the hacker. To pro-
other malicious acts. Regardless of the hackers’ mo- tect against port scanning, many companies now use
tives, they all needed some way to find the phone intrusion-detection systems that can identify when
numbers of computers with modems. a port scan is underway. This security measure has
One such way was war dialing. Hackers wrote soft- in turn motivated hackers to develop port-scanning
ware that would use a computer’s modem to dial methods that can gather information without openly
every phone number in a given area code. The soft- trying to connect to each port.
ware ran through each number, dialing and then
hanging up after two rings. Most modems were set up Wi-Fi War Dialing
to pick up after one ring, so if a number rang twice Some hackers target wireless networks instead of wired
it most likely did not have a modem. The war-dialing ones. One technique for doing so is wardriving, in
software recorded which numbers had modems so which hackers drive around a neighborhood with a
that hackers could try to connect to them later. laptop running Wi-Fi scanning software. The software
“Demon dialing” originally meant making re- identifies wireless networks as it passes through them
peated calls to a single modem in a brute-force at- and collects information about the type of security each
tempt to guess its password. The practice was named wireless access point is using. Hackers can then sort
for the Demon Dialer, a telephone dialer once sold through this information to find vulnerable networks.
by Zoom Telephonics. This device could automati- A hacker may exploit the network to gain free wireless
cally redial a busy phone number until the call went Internet access or to disguise their online identity.
through. Over time, demon dialing became a syn-
—Scott Zimmer, JD
onym for war dialing.
103
Netzley, Patricia D. How Serious a Problem Is Computer Shakarian, Paulo, Jana Shakarian, and Andrew Ruef.
Hacking? San Diego: ReferencePoint, 2014. Print. Introduction to Cyber-Warfare: A Multidisciplinary
Approach. Waltham: Syngress, 2013. Print.
Device drivers
Fields of Study connected to that computer. Using device drivers al-
lows the program to simply command the computer to
Computer Engineering; Software Engineering
save data to a file on the hard drive. It needs no specific
information about what type of hard drive is installed
Abstract in the computer or connections the hard drive has to
Device drivers are software interfaces that allow a other hardware in the computer. The device driver
computer’s central processing unit (CPU) to commu- acts as an interface between computer components.
nicate with peripherals such as disk drives, printers, When a program needs to send commands to a
and scanners. Without device drivers, the computer’s peripheral connected to the computer, the program
operating system (OS) would have to come prein- communicates with the device driver. The device
stalled with all of the information about all of the de- driver receives the information about the action that
vices it could ever need to communicate with. OSs the device is being asked to perform. It translates this
contain some device drivers, but these can also be information into a format that can be input into the
installed when new devices are added to a computer. device. The device then performs the task or tasks re-
quested. When it finishes, it may generate output that
is communicated to the driver, either as a message
Prinicipal Terms
or as a simple indication that the task has been com-
device manager: an application that allows users pleted. The driver then translates this information
of a computer to manipulate the device drivers into a form that the original program can understand.
installed on the computer, as well as adding and The device driver acts as a kind of translator between
removing drivers. the computer and its peripherals, conveying input/
input/output instructions: instructions used by output instructions between the two. Thus, the com-
the central processing unit (CPU) of a computer puter program does not need to include all of the low-
when information is transferred between the CPU level commands needed to make the device function.
and a device such as a hard disk. The program only needs to be able to tell the device
interface: the function performed by the device driver what it wants the device to do. The device driver
driver, which mediates between the hardware of takes care of translating this into concrete steps.
the peripheral and the hardware of the computer.
peripheral: a device that is connected to a com- How Device Drivers Are Made
puter and used by the computer but is not part of Writing device drivers is a highly technical under-
the computer, such as a printer. taking. It is made more challenging by the fact that
virtual device driver: a type of device driver used device drivers can be unforgiving when a mistake is
by the Windows operating system that handles made in their creation. This is because higher-level
communications between emulated hardware and applications do not often have unlimited access to
other devices. all of the computer’s functionality. Issuing the wrong
command with unrestricted privileges can cause se-
How Device Drivers Work rious damage to the computer’s operating system
The main strength of device drivers is that they en- (OS) and, in some cases, to the hardware. This is a
able programmers to write software that will run on real possibility with device drivers, which usually need
a computer regardless of the type of devices that are to have unrestricted access to the computer.
104
CPU
Micro-controller
Device DVD
Mouse Keyboard ... Controller ... Monitor
Reader
Each device connected to a CPU is controlled by a device driver, software that controls, manages, and monitors a specific device (e.g.,
keyboard, mouse, monitor, DVD reader). Device drivers may also drive other software that drives a device (e.g., system management
bus, universal serial bus controller). EBSCO illustration.
Because writing a device driver requires a lot of when an OS runs a program that was created for a
specialized information, most device drivers are different OS by emulating that operating environ-
made by software engineers who specialize in driver ment. One example would be a Windows OS run-
development and work for hardware manufacturers. ning a DOS program. If the DOS program needed
Usually the device manufacturer has the most infor- to interface with an attached printer, the computer
mation about the device and what it needs in order would use a virtual device driver.
to function properly. The exception to this trend is
the impressive amount of driver development accom- device managers
plished by the open-source movement. Programmers Most OSs now include device managers that make
all over the world have volunteered their own time it easier for the user to manage device drivers. They
and talent to write drivers for the Linux OS. allow the user to diagnose problems with devices,
Often development is separated into logical and troubleshoot issues, and update or install drivers.
physical device driver development. Logical device Using the graphical interface of a device manager
driver development tends to be done by the creator is less intimidating than typing in text commands to
of the OS that the computer will use. Physical device perform driver-related tasks.
driver development, meanwhile, is handled by the —Scott Zimmer, JD
device manufacturer. This division of labor makes
sense, but it does require coordination and a will-
ingness to share standards and practices among the bibliography
various parties. Corbet, Jonathan, Alessandro Rubini, and Greg
Kroah-Hartman. Linux Device Drivers. 3rd ed.
Virtual device drivers Cambridge: O’Reilly, 2005. Print.
Virtual device drivers are a variation on traditional McFedries, Paul. Fixing Your Computer: Absolute
device drivers. They are used when a computer needs Beginner’s Guide. Indianapolis: Que, 2014. Print.
to emulate a piece of hardware. This often occurs
105
Mueller, Scott. Upgrading and Repairing PCs. 22nd ed. Orwick, Penny, and Guy Smith. Developing Drivers with
Indianapolis: Que, 2015. Print. the Windows Driver Foundation. Redmond: Microsoft
Noergaard, Tammy. Embedded Systems Architecture: A P, 2007. Print.
Comprehensive Guide for Engineers and Programmers. “What Is a Driver?” Microsoft Developer Network.
2nd ed. Boston: Elsevier, 2012. Print. Microsoft, n.d. Web. 10 Mar. 2016.
Digital citizenship
Fields of Study digital citizenship exists on a spectrum based on an
individual’s level of digital literacy. This can be de-
Information Systems; Digital Media; Privacy
fined as their familiarity with the skills, jargon, and
behaviors commonly used to communicate and con-
Abstract duct commerce with digital tools.
Digital citizenship can be defined as the norms of ap-
propriate, legal, and ethical behavior with regard to An Evolving Paradigm
the use of information technology in a person’s civic Educational theorist Marc Prensky suggested that the
and social life. Digital citizenship is a unique phe- modern human population can be divided into two
nomenon of the digital age, reflecting the growing groups. Digital natives were raised in the presence of
importance of digital literacy, digital commerce, and digital technology. They learned how to use it in child-
information technology in global culture. hood. They absorbed the basics of digital citizenship
during their early development. Digital immigrants
were born before the digital age or have limited ac-
Prinicipal Terms cess to technology. They adapt to digital technology
butterfly effect: an effect in which small changes and communication later in life. Given the growing
in a system’s initial conditions lead to major, unex- importance of digital technology, educators and so-
pected changes as the system develops. cial scientists believe that teaching children and adults
digital commerce: the purchase and sale of goods to use digital technology safely and ethically is among
and services via online vendors or information the most important goals facing modern society.
technology systems. Digital communication enables people to have
digital literacy: familiarity with the skills, behaviors, relationships online or on mobile devices. The de-
and language specific to using digital devices to ac- gree to which these digital relationships affect IRL
cess, create, and share content through the Internet. relationships, or those that occur “in real life,” is an
digital native: an individual born during the dig- important facet of digital citizenship. For instance,
ital age or raised using digital technology and research suggests that people who spend more time
communication. communicating through smartphones or who feel
IRL relationships: relationships that occur “in real they need constant access to digital media have more
life,” meaning that the relationships are developed difficulty forming and maintaining IRL relation-
or sustained outside of digital communication. ships. Good digital citizenship can help people use
piracy: in the digital context, unauthorized repro- digital technology in positive ways that do not detract
duction or use of copyrighted media in digital form. from their IRL relationships and well-being.
Digital technology has had a powerful, democ-
A New Form of Citizenship ratizing force on culture. Social media, for instance,
Digital citizenship can be defined as the norms and has enabled small, local social movements to have na-
rules of behavior for persons using digital technology tional and even international impact. Even a simple
in commerce, political activism, and social commu- tweet or viral video can quickly spread to millions of
nication. A person’s digital citizenship begins when social media users. Small-scale behaviors can thus have
they engage with the digital domain, for instance, by larger, often unexpected consequences, both good
beginning to use a smartphone or e-mail. However, and bad. This is sometimes called the butterfly effect.
106
Digital
Digital security
access
Digital etiquette
Digital
communication
Digital rights
and responsibilities
Digital
literacy
Digital health
Digital law and wellness
Digital commerce
Student life
outside of the
school environment
Good digital citizens know and understand the nine themes of digital citizenship. These themes address appropriate ways of interacting with
the technology, information, government, companies, and other citizens that comprise the digital world. EBSCO illustration.
The potential impact of even a single user in the dig- security. They address appropriate ways of interacting
ital domain highlights the importance of learning and with the technology, information, government, com-
teaching effective digital behavior and ethics. panies, and other citizens in the digital world. Ribble
writes that well-adjusted digital citizens help others be-
Ethics of Digital Citizenship come digitally literate. They strive to make the digital
In Digital Citizenship in Schools, educational theorist domain harmonious and culturally beneficial.
Mike Ribble outlines nine core themes that charac- He also argues that digital citizens are responsible
terize digital citizenship. These themes are: digital ac- for learning about and following the laws and ethical
cess, digital commerce, digital communication, digital implications of all digital activities. Piracy is the unau-
literacy, digital etiquette, digital law, digital rights and thorized digital reproduction of copyrighted media.
responsibilities, digital health and wellness, and digital It violates laws that protect creative property. It has
107
become one of the most controversial issues of the and data backup systems are some of the tools digital
twenty-first century. Other common digital crimes citizens use to enhance their digital security. Though
and forms of misconduct include: the digital world is a complex, rapidly evolving realm,
advocates argue that the rules of digital citizenship
Plagiarizing content from digital sources,
can be reduced to a basic concept: respect oneself
Hacking (gaining unauthorized access to com- and others when engaging in digital life.
puter networks or systems),
Sending unwanted communications and spam —Micah L. Issitt
messages, and
Creating and spreading destructive viruses, Bibliography
worms, and malware. “The Digital Millennium Copyright Act of 1998.”
Such behaviors violate others’ rights and so are con- Copyright. US Copyright Office, 28 Oct 1998. Web.
sidered unethical, illegal, or both. 23 Jan 2016.
McNeill, Erin. “Even ‘Digital Natives’ Need Digital
Digital Security and Responsibility Training.” Education Week. Editorial Projects in
The rights and responsibilities of digital citizenship Education, 20 Oct 2015. Web. 26 Jan. 2016.
differ by political environment. In the United States, in- Ribble, Mike. Digital Citizenship in Schools: Nine
dividuals have the right to free speech and expression. Elements All Students Should Know. Eugene: Intl.
They also have a limited right to digital privacy. The own- Soc. for Technology in Education, 2015. Print.
ership of digital data is an evolving subject in US law. Saltman, Dave. “Tech Talk: Turning Digital Natives
One responsibility of digital citizenship is to learn into Digital Citizens.” Harvard Education Letter
about potential dangers, both social and physical, and 27.5 (2011): n. pag. Harvard Graduate School of
how to avoid them. These include identity theft, cy- Education. Web. 27 Jan. 2016.
berstalking, and cyberbullying. Strong digital security Wells, Chris. The Civic Organization and the Digital
Citizen: Communicating Engagement in a Networked
can help protect one’s identity, data, equipment, and
Age. New York: Oxford UP, 2015. Print.
creative property. Surge protectors, antivirus software,
Digital forensics
Fields of Study Electronic Communications Privacy Act: a 1986
law that extended restrictions on wiretapping to
Information Technology; System Analysis; Privacy
cover the retrieval or interception of information
transmitted electronically between computers or
Abstract through computer networks.
logical copy: a copy of a hard drive or disk that cap-
Digital forensics is a branch of science that studies
tures active data and files in a different configu-
stored digital data. The field emerged in the 1990s
ration from the original, usually excluding free
but did not develop national standards until the
space and artifacts such as file remnants; contrasts
2000s. Digital forensics techniques are changing rap-
with a physical copy, which is an exact copy with
idly due to the advances in digital technology.
the same size and configuration as the original.
metadata: data that contains information about other
Prinicipal Terms
data, such as author information, organizational in-
cybercrime: crime that involves targeting a com- formation, or how and when the data was created.
puter or using a computer or computer network Scientific Working Group on Digital Evidence
to commit a crime, such as computer hacking, (SWGDE): an American association of various aca-
digital piracy, and the use of malware or spyware. demic and professional organizations interested
108
in the development of digital forensics systems, not protected by law and could be collected or inter-
guidelines, techniques, and standards. cepted by law enforcement. The ECPA was amended
several times in the 1990s and 2000s to address the
An Evolving Science growing importance of digital data for private com-
Digital forensics is the science of recovering and munication. In 2014, the Supreme Court ruled that
studying digital data, typically in the course of crim- police must obtain a warrant before searching the cell
inal investigations. Digital forensic science is used to phone of a suspect arrested for a crime.
investigate cybercrimes. These crimes target or in-
volve the use of computer systems. Examples include Digital Forensics Techniques
identity theft, digital piracy, hacking, data theft, Once forensic investigators have access to equipment
and cyberattacks. The Scientific Working Group on that has been seized or otherwise legally obtained,
Digital Evidence (SWGDE), formed in 1998, develops they can begin forensic imaging. This process in-
industry guidelines, techniques, and standards. volves making an unaltered copy, or forensic image,
Digital Forensics Policy of the device’s hard drive. A forensic image records
Digital forensics emerged in the mid-1980s in re- the drive’s structures, all of its contents, and meta-
sponse to the growing importance of digital data data about the original files.
in criminal investigations. The first cybercrimes oc- A forensic image is also known as a “physical copy.”
curred in the early 1970s. This era saw the emergence There are two main methods of copying computer data,
of “hacking,” or gaining unauthorized access to com- physical copying and logical copying. A physical copy
puter systems. Some of the first documented uses of duplicates all of the data on a specific drive, including
digital forensics data were in hacking investigations. empty, deleted, or fragmented data, and stores it in
Prior to the Electronic Communications Privacy Act its original configuration. A logical copy, by contrast,
(ECPA) of 1986, digital data or communications were copies active data but ignores deleted files, fragments,
and empty space. This makes the data easier to
read and analyze. However, it may not provide a
complete picture of the relevant data.
After imaging, forensics examiners analyze the
imaged data. They may use specialized tools to
COMPUTER COMPUTER recover deleted files using fragments or backup
FORENSICS NETWORK data, which is stored on many digital devices to
FORENSICS
prevent accidental data loss. Automated pro-
grams can be used to search and sort through
imaged data to find useful information. (Because
Digital searching and sorting are crucial to the forensic
MOBILE DATABASE
process, digital forensics organizations invest in
FORENSICS Forensics FORENSICS
research into better search and sort algorithms).
Information of interest to examiners may include
e-mails, text messages, chat records, financial files,
and various types of computer code. The tools
FORENSIC SOCIAL
and techniques used for analysis depend largely
DATA NETWORK
on the crime. These specialists may also be tasked
ANALYSIS FORENSICS
with interpreting any data collected during an in-
vestigation. For instance, they may be called on to
explain their findings to police or during a trial.
109
110
as DSPs generally have to work in a very low latency by another value. The result is a modified data
environment. They are constantly processing streams stream that can then be passed to another process or
of video or audio. They also need to keep power con- generated as output.
sumption to a minimum, particularly in the case of
mobile devices, which rely heavily on DSPs. To make Applications of Digital Signal
this possible, DSPs are designed to work efficiently Processors
on both fixed-point arithmetic and the more com- There are many applications in which DSPs have
putationally intensive floating-point arithmetic. The become an integral part of daily life. The basic pur-
latter, however, is not needed in most DSP applica- pose of a DSP is to accept as input some form of
tions. DSPs tend to use chip architectures that allow analog information from the real world. This could
them to fetch multiple instructions at once, such as include anything from an audible bird call to a
the Harvard architecture. Many DSPs are required live video-feed broadcast from the scene of a news
to accept analog data as input, convert this to digital event.
data, perform some operation, and then convert the DSPs are also heavily relied upon in the field of
digital signals back to analog for output. This gives medical imaging. Medical imaging uses ultrasound
DSPs a pipelined architecture. They use a multistep or other technologies to produce live imagery of
process in which the output of one step is the input what is occurring inside the human body. Ultrasound
needed by the next step. is often used to examine fetal developmental, from
An example of the type of work performed by a what position the fetus is in to how it is moving to how
DSP can be seen in a multiplier-accumulator. This is its heart is beating, and so on. DSPs receive the ul-
a piece of hardware that performs a two-step opera- trasonic signals from the ultrasound equipment and
tion. First, it receives two values as inputs and mul- convert it into digital data. This digital data can then
tiplies one value by the other. Next, the multiplier- be used to produce analog output in the form of a
accumulator takes the result of the first step and video display showing the fetus.
adds it to the value stored in the accumulator. At the Digital signal processing is also critical to many
end, the accumulator’s value can be passed along as military applications, particularly those that rely on
output. Because DSPs rely heavily on multiplier-ac- the use of sonar or radar. As with ultrasound devices,
cumulator operations, these are part of the instruc- radar and sonar send out analog signals in the form
tion set hardwired into such chips. DSPs must be of energy waves. These waves bounce off features in
able to carry out these operations quickly in order the environment and back to the radar- or sonar-gen-
to keep up with the continuous stream of data that erating device. The device uses DSPs to receive this
they receive. analog information and convert it into digital data.
The processing performed by DSPs can some- The data can then be analyzed and converted into
times seem mysterious. However, in reality it often graphical displays that humans can easily interpret.
amounts to the performance of fairly straightfor- DSPs must be able to minimize delays in processing,
ward mathematical operations on each value in the because a submarine using sonar to navigate under-
stream of data. Each piece of analog input is con- water cannot afford to wait to find out whether ob-
verted to a digital value. This digital value is then stacles are in its path.
added to, multiplied by, subtracted from, or divided
This is a block diagram for an analog-to-digital processing system. Digital signal processors are responsible for performing specified opera-
tions on digital signals. Signals that are initially analog must first be converted to digital signals in order for the programs in the digital
processor to work correctly. The output signal may or may not have to be converted back to analog. EBSCO illustration.
111
Digital watermarking
Fields of Study noise-tolerant signal: a signal that can be easily dis-
tinguished from unwanted signal interruptions or
Computer Science; Digital Media; Security
fluctuations (i.e., noise).
1-bit watermarking: a type of digital water-
Abstract
mark that embeds one bit of binary data in the
Digital watermarking protects shared or distributed signal to be transmitted; also called “0-bit water-
intellectual property by placing an additional signal marking.”
within the file. This signal can be used to inform reversible data hiding: techniques used to conceal
users of the copyright owner’s identity and to authen- data that allow the original data to be recovered in
ticate the source of digital data. Digital watermarks its exact form with no loss of quality.
may be visible or hidden.
Protecting Ownership and Security of
Prinicipal Terms Digital Data
carrier signal: an electromagnetic frequency that Digital watermarking is a technique that embeds
has been modulated to carry analog or digital in- digital media files with a hidden digital code. It was
formation. first developed in the late twentieth century. These
crippleware: software programs in which key hidden codes can be used to record copyright data,
features have been disabled and can only be track copying or alteration of a file, or prevent altera-
activated after registration or with the use of a tion or unauthorized efforts to copy a copyrighted
product key. file. Digital watermarking is therefore commonly
multibit watermarking: a watermarking process used for copyright-protected music, video, and soft-
that embeds multiple bits of data in the signal to ware downloads. Governments and banks also rely on
be transmitted. it to ensure that sensitive documents and currency
are protected from counterfeiting and fraud.
112
Final
+ watermarked
image
Passes test
Possibly forged image
from network
Watermark Similar Authentic
test:
compares
image to
presumed
watermark
overlay Different Forgery
Fails test
Passes test
Possibly forged image
from network
Watermark Similar Authentic
test:
compares
image to
presumed
watermark
overlay Different Forgery
Fails test
Diagrams of the watermarking process and a process for testing watermarks. EBSCO illustration.
113
114
115
116
DOS
Fields of Study Prinicipal Terms
Computer Science; Information Technology; command line: a text-based computer interface
Operating Systems that allows the user to input simple commands via
a keyboard.
graphical user interface (GUI): an interface that
Abstract
allows users to control a computer or other device
The term DOS is an acronym for “disk operating by interacting with graphical elements such as
system.” DOS refers to any of several text-based oper- icons and windows.
ating systems that share many similarities. Perhaps the nongraphical: not featuring graphical elements.
best-known form of DOS is MS-DOS. MS-DOS is an op- shell: an interface that allows a user to operate a
erating system developed by the technology company computer or other device.
Microsoft. It is based heavily on an earlier operating
system known as QDOS. DOS was largely replaced by Background on DOS
operating systems featuring graphical user interfaces “Disk operating system” (DOS) is a catchall term
by the end of the twentieth century. It continues to be for a variety of early operating systems designed for
used in certain specialized contexts in the twenty-first personal computers (PCs). Operating systems have
century, however. existed since the early days of computers. They
117
became more important in the late 1970s and early pieces of binary information, at a time. Microsoft also
1980s. At that time PCs became available to the hired QDOS creator Tim Patterson. Microsoft asked
public. An operating system allows users unfamiliar Patterson to create a new version of QDOS to be li-
with computer programming to interface directly censed to IBM under the name PC-DOS. Microsoft
with these devices. Among the first companies to went on to develop an essentially identical version
offer PCs for sale was the technology company called MS-DOS, which the company sold and licensed
IBM, a long-time leader in the field of computer to computer manufacturers itself.
technology. As IBM’s PCs became increasingly popular, com-
In 1980 IBM sought to license an operating system peting hardware manufacturers created similar
for its new device, the IBM PC. IBM approached computers. Many of these computers, commonly
the company Digital Research to license its Control known as “IBM clones,” used MS-DOS. In addition to
Program for Microcomputers (CP/M). However, MS-DOS, PC-DOS, and 86-DOS, other DOS or DOS-
the two companies were unable to come to an agree- compatible systems entered the market over the de-
ment. IBM made a deal with the software company cades. However, MS-DOS dominated the market and
Microsoft instead. Microsoft had been founded in was often referred to simply as DOS.
1975. It initially specialized in creating and licensing
computer programs and programming languages. Understanding DOS
In order to supply IBM with an operating system, MS-DOS is the most popular and best-known form of
Microsoft licensed the Quick and Dirty Operating DOS. MS-DOS consists of three key parts: the input/
System (QDOS) from the company Seattle Computer output (I/O) handler, the command processor,
Products. This system, later renamed 86-DOS, was and the auxiliary utility programs. The I/O handler
based in part on CP/M and used similar commands manages data input and output and consists of two
but differed in several key ways. Notably, the oper- programs, IO.SYS and MSDOS.SYS. The command
ating system was designed to be used with computers, processor enables the computer to take commands
such as the IBM PC, that featured sixteen-bit mi- from the user and carry them out. The most com-
croprocessors, which could process sixteen bits, or monly used commands and associated routines are
stored in the command processor. Others
are stored on the system disk and loaded
as needed. Those routines are known as
“auxiliary utility programs.”
Like all operating systems, DOS func-
tions as a shell. A shell is an interface
that allows a user to operate a computer
without needing knowledge of computer
programming. A DOS or DOS-compatible
system does require users to enter text-
based commands. These are relatively
simple and limited in number, however.
As such, the public found PCs featuring
the early forms of DOS fairly easy to use.
Using DOS
MS-DOS and later DOS and DOS-
compatible systems are in many ways
quite similar to those systems that came
before, such as QDOS and CP/M. In
The FreeDOS command line interface is based on the original DOS (disk oper-
general, MS-DOS and similar systems are
ating system) command line interface to provide individuals with an alternative to
the more prevalent graphical user interface available with most operating systems. nongraphical systems. Thus, they do not
Public domain, via Wikimedia Commons. contain graphical elements found in later
118
graphical user interfaces (GUIs), such as clickable are devoted to providing DOS-compatible systems to
icons and windows. Instead, nongraphical systems users, often in the form of open-source freeware.
allow the user to operate the computer by entering
—Joy Crelin
commands into the command line. By entering basic
commands, the user can instruct the computer to
perform a wide range of functions, including run- Bibliography
ning programs and opening or copying files. Doeppner, Thomas W. Operating Systems in Depth.
Hoboken: Wiley, 2011. Print.
Impact of DOS Gallagher, Sean. “Though ‘Barely an Operating
Although DOS and other nongraphical systems were System,’ DOS Still Matters (to Some People).” Ars
largely phased out by the mid-1990s as GUIs became Technica. Condé Nast, 14 July 2014. Web. 31 Jan.
more popular, they remained an influential part of 2016.
the development of PC operating systems. Some McCracken, Harry. “Ten Momentous Moments in
graphical operating systems, such as Microsoft’s DOS History.” PCWorld. IDG Consumer, n.d. Web.
Windows 95, were based in part on DOS, and had 31 Jan. 2016.
the ability to run DOS programs when opened in Miller, Michael J. “The Rise of DOS: How Microsoft
a specialized mode. Despite advances in computer Got the IBM PC OS Contract.” PCMag.com. PCMag
technology, MS-DOS and similar systems are still used Digital Group, 10 Aug. 2011. Web. 31 Jan. 2016.
in the twenty-first century for applications. In some “MS-DOS: A Brief Introduction.” Linux Information
cases, companies or institutions continue to use the Project. Linux Information Project, 30 Sept. 2006.
operating system in order to maintain access to soft- Web. 31 Jan. 2016.
ware compatible only with DOS. Some individuals use “Part Two: Communicating with Computers—The
DOS and DOS-compatible systems to play early games Operating System.” Computer Programming for
originally designed for those systems. Companies Scientists. Oregon State U, 2006. Web. 31 Jan. 2016.
such as Microsoft no longer sell DOS to the public. Shustek, Len. “Microsoft MS-DOS Early Source
However, a number of companies and organizations Code.” Computer History Museum. Computer
History Museum, 2013. Web. 31 Jan. 2016.
Drones
Fields of Study Prinicipal Terms
Computer Engineering; Robotics; Privacy actuators: motors designed to control the move-
ment of a device or machine by transforming po-
Abstract tential energy into kinetic energy.
communication devices: devices that allow drones
Drones are unmanned aerial vehicles (UAVs). Unlike
to communicate with users or engineers in remote
other UAVs, drones are at least partly automated but
locations.
may also respond to remote piloting. Drones are
field programmable gate array: an integrated cir-
used in military operations. They are also used for
cuit that can be programmed in the field and can
commercial applications like aerial photography and
therefore allow engineers or users to alter a ma-
filmmaking, search and rescue, and environmental
chine’s programming without returning it to the
research. The concept of unmanned aerial vehicles
manufacturer.
for combat use emerged in the 1800s. Advancements
sensors: devices capable of detecting, measuring,
in computer technology and engineering have made
or reacting to external physical properties.
drones commonplace in the 2010s for both military
and civilian applications.
119
Drone Applications
Many companies producing
drones for the commercial market
Unmanned aerial vehicles, more commonly known as drones, come in sizes ranging from a
small toy to a large plane. They are used by the military for surveillance as well as by civilians use open-source software. This al-
for recreation. By Gerald L. Nino, public domain, via Wikimedia Commons. lows the same basic software to be
120
altered for a variety of applications. Many companies the potential for the technology to be misused for un-
also outfit drones with adjustable hardware, such as authorized or illegal surveillance. Such surveillance
field programmable gate arrays. These arrays allow would be a threat to personal privacy. In the United
users to adjust hardware programming in the field States, the Federal Aviation Authority (FAA) is investi-
without returning the drone to the manufacturer. gating potential regulations for commercial and rec-
This flexibility in hardware and software design reational drone use. State legislators have passed laws
means that drones can be altered for applications that prohibit the use of drones over private property.
ranging from scientific research to art projects. Governmental regulation of private drone use is still
Drones have been used by law enforcement agen- in its infancy. The debate over the legality and poten-
cies for aerial search and surveillance. They have also tial for misuse has spread around the world, however.
been used for search-and-rescue operations. Drones
—Micah Issitt
with high-definition video equipment onboard have
become a popular tool in journalism and filmmaking.
Drones can take aerial shots that once would have
Bibliography
been impossible without helicopters. Wildlife and
ecological researchers have also used UAVs to take Couts, Andrew. “Drones 101: A Beginner’s Guide to
aerial footage. Drones with specialized equipment Taking Flight, No License Needed.” Digital Trends.
can be used to collect detailed topographical and Designtechnica, 16 Nov. 2013. Web. 27 Jan. 2015.
ecological data or to monitor weather patterns. Some Fowler, Geoffrey, A. “The Drones on Autopilot That
engineers think that the development of solar-elec- Follow Your Lead (Usually).” Wall Street Journal.
tric hybrid drones may be the key to future weather Dow Jones, 23 Dec. 2014. Web. 20 Jan. 2016.
monitoring. Such hybrid drones may one day replace Moynihan, Tim. “Things Will Get Messy If We Don’t
the use of low-Earth orbit satellites for signal trans- Start Wrangling Drones Now.” Wired. Condé Nast,
mission and other applications. 30 Jan. 2015. Web. 30 Jan. 2016.
Pullen, John Patrick. “This Is How Drones Work.”
Controversy and Regulation Time. Time, 3 Apr. 2015. Web. 27 Jan. 2016.
The military use of drones, especially for lethal op- Stanley, Jay. “‘Drones’ vs ‘UAVs’—What’s behind a
erations, is among the most controversial issues of Name?” ACLU. ACLU, 20 May 2013. Web. 27 Jan.
the twenty-first century. Drone strikes have been 2016.
linked to civilian casualties and accidental deaths. “Unmanned Aircraft Systems (UAS) Frequently
Opponents of drone strikes argue that automating Asked Questions.” Federal Aviation Administration.
military operations is a violation of moral and ethical US Dept. of Transportation, 18 Dec. 2015. Web.
principles. Another controversy surrounding UAVs is 11 Feb. 2016.
121
122
AND
OR
AND
OR
AND
AND
1
AND NOT OR
1
3
AND
1
+
+
5
0
0
AND
2
1
AND NOT OR OR
AND
1
AND
AND NOT
Electronic circuits are designed to use a series of logic gates to send a charge through the circuit in a particular manner. These logic gates
control the charge output and thus the output of the circuits. In this example, the circuit is designed to add two binary numbers together
using a series of AND, OR, and NOT commands to determine the route of the charge and the resulting output from each circuit compo-
nent. EBSCO illustration.
ENIAC (Electronic Numerical Integrator and take one of two values (e.g., “on” or “off”), they are
Computer), contained about eighteen thousand ideal for implementing logic gates. Most logic gates
vacuum tubes and weighed more than thirty tons. take in two inputs and produce a single output.
Once the transistor replaced the vacuum tube, elec- There are seven basic types of logic gates: AND,
tronic circuits could be made much smaller. OR, NOT, XOR, NAND, NOR, and XNOR. These
By 1958, several scientists had already proposed logic gates only accept two input values, 0 and 1,
ideas for constructing an IC. That year, Jack Kilby, a which represent “false” and “true” respectively. They
scientist at Texas Instruments, was the first to put the are distinguished from one another based on what
idea into practice. He designed a chip constructed en- output is produced by each combination of inputs:
tirely from a single block of semiconductor material.
Because there were no individual components, the AND gate: output is only true (1) if both inputs
circuits did not have to be large enough to assemble are true; otherwise, output is false (0).
manually. The number of circuits in the chip was lim- OR gate: output is false (0) only if both outputs
ited only by the number of transistors that could fit are false; otherwise, output is true (1).
in it. Early ICs contained only a few transistors each. NOT gate: output is true (1) if input is false (0),
By the twenty-first century, the maximum possible and vice versa. A NOT gate is also called an in-
number of transistors per IC was in the billions. verter, because it takes in only one input and
outputs the inverse.
Logic Gates
Active manipulation of electric current is accomplished exclusive-OR (XOR) gate: output is true (1)
through logic gates. A logic gate is an electronic circuit if the inputs are different, that is, if only one
that implements a Boolean function. Broadly speaking, input is true; if both inputs are the same, output
a Boolean function is a function that produces one of is false (0).
two potential outputs—either 0 or 1—based on a given negative-AND (NAND) gate: output is false (0)
rule. Because transistors work as switches, which can if all inputs are true (1); otherwise output is
123
124
125
Cutting Edge
Some of the newest forms of elec-
tronic communication software are
pushing the boundaries of what
is possible. One example of this is
Electronic communication software has many forms to satisfy many uses. The most pop-
ular social media and communication companies implement programming that provides video calling using cell phones.
users with attributes they deem important for electronic communication, such as private This technology is available in
and/or public sharing and posting to a network, saving, contributing, subscribing, and many consumer devices, but in re-
commenting across a number of formats. EBSCO illustration. ality its utility is often limited by the
amount of bandwidth available in
some locations. This causes poor video quality and
Another form of electronic synchronous commu- noticeable delays in responses between users.
nication is instant messaging or chat. Instant mes-
saging occurs when multiple users use computers —Scott Zimmer, JD
or mobile devices to type messages to one another.
Each time a user sends a message, the recipient or
recipients see it pop up on their screens. Chat can Bibliography
occur between two users, or it can take the form of Bucchi, Massimiano, and Brian Trench, eds. Routledge
a multicast in which one person types a message and Handbook of Public Communication of Science and
multiple others receive it. Technology. 2nd ed. New York: Routledge, 2014. Print.
Multicast can also be delivered asynchronously. Cline, Hugh F. Information Communication Technology
An example of this type of electronic communica- and Social Transformation: A Social and Historical
tion is a performer who records a video of them- Perspective. New York: Routledge, 2014. Print.
selves using a digital camera and then posts the video Gibson, Jerry D., ed. Mobile Communications Handbook.
on an online platform such as YouTube. The video 3rd ed. Boca Raton: CRC, 2012. Print.
would then stay online, available for others to watch Gillespie, Tarleton, Pablo J. Boczkowski, and
at any time, until its creator decided to take it down. Kirsten A. Foot, eds. Media Technologies: Essays on
This type of electronic communication is extremely Communication, Materiality, and Society. Cambridge:
popular because viewers do not have to be online at MIT P, 2014. Print.
a particular time in order to view the performance, Hart, Archibald D., and Sylvia Hart Frejd. The Digital
as was the case with television broadcasts in the past. Invasion: How Technology Is Shaping You and Your
Relationships. Grand Rapids: Baker, 2013. Print.
Privacy Concerns Livingston, Steven, and Gregor Walter-Drop, eds.
In some respects the rapid growth of electronic com- Bits and Atoms: Information and Communication
munication software caught regulators off guard. Technology in Areas of Limited Statehood. New York:
There were many protections in place to prevent the Oxford UP, 2014. Print.
126
Electronic waste
Fields of Study waste-disposal challenges. Many such products
present serious pollution problems, especially in the
Computer Science; Computer Engineering;
developing world. Though many groups have noted
Information Technology
and taken action on the issue, e-waste is a global
problem that requires widespread cooperation from
Abstract
the individual to the government level.
This article discusses the growing problem of waste
in society and goes into the specific issues and chal-
What Is E-waste?
lenges surrounding the problem of discarded elec-
Simply put, e-waste is anything electronic that has
tronic devices. Electronic waste poses a significant
been discarded. This includes common consumer
threat to the environment, and various efforts to re-
items such as televisions, computers, microwave
mediate the issue have been proposed.
ovens, and mobile phones. Some experts further cat-
egorize e-waste into three groups: unwanted items
Prinicipal Terms
that still work or can be repaired, items that can be
cathode ray tube (CRT): a vacuum tube used to harvested for scrap materials, and true waste to be
create images in devices such as older television dumped. The first two types are considered com-
and computer monitors. modities that may be bought and sold for recycling
commodities: consumer products, physical arti- purposes.
cles of trade or commerce. E-waste is a major problem for several reasons.
Environmental Protection Agency (EPA): US gov- Many electronics use parts made from toxic sub-
ernment agency tasked with combating environ- stances, especially heavy metals. If items are disposed
mental pollution. of improperly, these substances can leak into the
heavy metal: one of several toxic natural sub- environment, causing widespread damage. For ex-
stances often used as components in electronic ample, lead used in cathode ray tubes (CRTs) can
devices. contaminate water and poison people and animals.
Phonebloks: a concept devised by Dutch designer Even the recycling process itself creates pollution,
Dave Hakkens for a modular mobile phone in- as electronics are exposed to chemicals or burned
tended to reduce electronic waste. in order to separate valuable elements such as gold
planned obsolescence: a design concept in which and copper. For this reason, various environmental
consumer products are given an artificially limited organizations consider some electronics, such as
lifespan, therefore creating a perpetual market. CRTs, to be household hazardous waste. The US
Environmental Protection Agency (EPA) has spe-
Technology and Waste cial regulations for disposing of such materials.
One of the defining aspects of the twentieth cen- However, most e-waste is shipped to recycling cen-
tury was technological advancement. Telephones, ters and dumps in developing nations. Many of these
televisions, computers, and other electronic devices countries lack strong environmental regulations,
evolved rapidly and became common throughout and e-waste pollution has become a major problem
the world. This growth continued and even acceler- for them.
ated into the twenty-first century, allowing for easier One reason for the huge amount of e-waste is the
communication and enabling humanity to see itself popularity of planned obsolescence in the technology
in a larger, more global context. industry. In sales-driven industries, product durability
However, these advancements have come at a cost. eventually becomes a liability. Companies can earn
New communication technologies produce an ever- greater profits by using the cheapest possible mate-
expanding mass of electronic waste, or e-waste, as rials and enticing consumers to upgrade as often as
electronics break or become obsolete. The immense possible, thus generating more and more e-waste.
volume of electronic devices compounds traditional The rapid evolution and improvement of computer
127
128
and anything else that contains semiconductors and Glaubitz, John Paul Adrian. “Modern Consumerism
microchips. Africa also has its share of digital land- and the Waste Problem.” ArXiv.org. Cornell U, 4
fills. One of these is on the outskirts of Accra, Ghana. June 2012. Web. 9 Feb. 2016.
The concentrated pollution in these areas is a global McNicoll, Arion. “Phonebloks: The Smartphone for
health threat. the Rest of Your Life.” CNN. Cable News Network,
One other complication that arises from e-waste 19 Sept. 2013. Web. 29 Jan. 2016.
is the problem of identity theft. Many discarded Mooallem, Jon. “The Afterlife of Cellphones.” New
computers and phones still contain personal infor- York Times Magazine. New York Times, 13 Jan. 2008.
mation. This can be collected by criminals working Web. 9 Feb. 2016.
in recycling centers. According to the US State Patel, Shuchi, and Avani Kasture. “E (Electronic)
Department, e-waste is a significant factor in the in- Waste Management Using Biological Systems—
crease in cybercrime. Overview.” International Journal of Current
Microbiology and Applied Sciences 3.7 (2014): 495–
—Andrew Farrell
504. Web. 9 Feb. 2016.
“Planned Obsolescence: A Weapon of Mass
Bibliography Discarding, or a Catalyst for Progress?” ParisTech
Baldé, C. P., et al. E-waste Statistics: Guidelines on Review. ParisTech Rev., 27 Sept. 2013. Web. 9 Feb.
Classification, Reporting and Indicators, 2015. Bonn: 2016.
United Nations U, 2015. United Nations University. “What Is E-waste?” Step: Solving the E-waste Problem.
Web. 9 Feb. 2016. United Nations U/Step Initiative, 2016. Web. 9
“Ghana: Digital Dumping Ground.” Frontline. PBS, 23 Feb. 2016.
June 2009. Web. 29 Jan. 2016.
129
Encryption
Fields of Study by using another algorithm known as the “decryption
key” or “cipher key.”
Security; Privacy; Algorithms
Types of Encryption
Abstract
A key is a string of characters applied to the plaintext
Encryption is the encoding of information so that to convert it to ciphertext, or vice versa. Depending
only those who have access to a password or encryp- on the keys used, encryption may be either symmetric
tion key can access it. Encryption protects data con- or asymmetric. Symmetric-key encryption uses the
tent, rather than preventing unauthorized intercep- same key for both encoding and decoding. The key
tion of or access to data transmissions. It is used by used to encode and decode the data must be kept
intelligence and security organizations and in per- secret, as anyone with access to the key can translate
sonal security software designed to protect user data. the ciphertext into plaintext. The oldest known cryp-
tography systems used alphanumeric substitution al-
Prinicipal Terms gorithms, which are a type of symmetric encryption.
Symmetric-key algorithms are simple to create but
asymmetric-key encryption: a process in which data
vulnerable to interception.
is encrypted using a public encryption key but can
In asymmetric-key encryption, the sender and
only be decrypted using a different, private key.
receiver use different but related keys. First, the re-
authentication: the process by which the receiver
ceiver uses an algorithm to generate two keys, one
of encrypted data can verify the identity of the
to encrypt the data and another to decrypt it. The
sender or the authenticity of the data.
encryption key, also called the “public key,” is made
hashing algorithm: a computing function that con-
available to anyone who wishes to send the receiver
verts a string of characters into a different, usu-
a message. (For this reason, asymmetric-key encryp-
ally smaller string of characters of a given length,
tion is also known as “public-key encryption.”) The
which is ideally impossible to replicate without
decryption key, or private key, remains known only to
knowing both the original data and the algorithm
the receiver. It is also possible to encrypt data using
used.
the private key and decrypt it using the public key.
Pretty Good Privacy: a data encryption program
However, the same key cannot be used to both en-
created in 1991 that provides both encryption and
crypt and decrypt.
authentication.
Asymmetric-key encryption works because the
mathematical algorithms used to create the public
Cryptography and Encryption and private keys are so complex that it is computa-
Encryption is a process in which data is translated tionally impractical determine the private key based
into code that can only by read by a person with the on the public key. This complexity also means that
correct encryption key. It focuses on protecting data asymmetric encryption is slower and requires more
content rather than preventing unauthorized inter- processing power. First developed in the 1970s, asym-
ception. Encryption is essential in intelligence and metric encryption is the standard form of encryption
national security and is also common in commercial used to protect Internet data transmission.
applications. Various software programs are available
that allow users to encrypt personal data and digital Authentication and Security
messages. Authentication is the process of verifying the iden-
The study of different encryption techniques is tity of a sender or the authenticity of the data sent. A
called “cryptography.” The original, unencrypted common method of authentication is a hashing algo-
data is called the “plaintext.” Encryption uses an al- rithm, which translates a string of data into a fixed-
gorithm called a “cipher” to convert plaintext into length number sequence known as a “hash value.”
ciphertext. The ciphertext can then be deciphered This value can be reverted to the original data using
130
Cleartext Ciphertext
Encrypt
This is clear Ziol ol estqk
Decrypt
With no encryption, Vozi fg tfeknhzogf,
Encrypt
this text can be read by ziol ztbz eqf wt ktqr wn
anyone who knows the qfngft vig afgvl zit
language. sqfuxqut.
Decrypt
Cleartext Hashed
Encrypt
With no encryption,
this text can be read by
anyone who knows the pp0o87y5f433dvunt78ik3ws9i8u7n54
language.
131
the same algorithm. The mathematical complexity acquired PGP in 2010 and has since incorporated the
of hashing algorithms makes it extremely difficult to software into many of its encryption programs.
decrypt hashed data without knowing the exact algo- Encryption can be based on either hardware or
rithm used. For example, a 128-bit hashing algorithm software. Most modern encryption systems are based
can generate 2128 different possible hash values. on software programs that can be installed on a
For the purpose of authenticating sent data, such system to protect data contained in or produced by a
as a message, the sender may first convert the data variety of other programs. Encryption based on hard-
into a hash value. This value, also called a “message ware is less vulnerable to outside attack. Some hard-
digest,” may then be encrypted using a private key ware devices, such as self-encrypting drives (SEDs),
unique to the sender. This creates a digital signature come with built-in hardware encryption and are
that verifies the authenticity of the message and the useful for high-security data. However, hardware en-
identity of the sender. The original unhashed mes- cryption is less flexible and can be prohibitively costly
sage is then encrypted using the public key that cor- to implement on a wide scale. Essentially, software
responds to the receiver’s private key. Both the pri- encryption tends to be more flexible and widely us-
vately encrypted digest and the publicly encrypted able, while hardware encryption is more secure and
message are sent to the receiver, who decrypts the may be more efficient for high-security systems.
original message using their private key and decrypts
—Micah L. Issitt
the message digest using the sender’s public key.
The receiver then hashes the original message using
the same algorithm as the sender. If the message is Bibliography
authentic, the decrypted digest and the new digest Bright, Peter. “Locking the Bad Guys Out with
should match. Asymmetric Encryption.” Ars Technica. Condé
Nast, 12 Feb. 2013. Web. 23 Feb. 2016.
Encryption Systems in Practice Delfs, Hans, and Helmut Knebl. Introduction to
One of the most commonly used encryption pro- Cryptography: Principles and Applications. 3rd ed.
grams is Pretty Good Privacy (PGP). It was developed Berlin: Springer, 2015. Print.
in 1991 and combines symmetric- and asymmetric- History of Cryptography: An Easy to Understand History
key encryption. The original message is encrypted of Cryptography. N.p.: Thawte, 2013. Thawte. Web.
using a unique one-time-only private key called a “ses- 4 Feb. 2016.
sion key.” The session key is then encrypted using the “An Introduction to Public Key Cryptography
receiver’s public key, so that it can only be decrypted and PGP.” Surveillance Self-Defense. Electronic
using the receiver’s private key. This encrypted key Frontier Foundation, 7 Nov. 2014. Web. 4 Feb.
is sent to the receiver along with the encrypted mes- 2016.
sage. The receiver uses their private key to decrypt Lackey, Ella Deon, et al. “Introduction to Public-Key
the session key, which can then can be used to de- Cryptography.” Mozilla Developer Network. Mozilla,
crypt the message. For added security and authenti- 21 Mar. 2015. Web. 4 Feb. 2016.
cation, PGP also uses a digital signature system that McDonald, Nicholas G. “Past, Present, and
compares the decrypted message against a message Future Methods of Cryptography and Data
digest. The PGP system is one of the standards in Encryption.” SpaceStation. U of Utah, 2009.
personal and corporate security and is highly resis- Web. 4 Feb. 2016.
tant to attack. The data security company Symantec
132
Router Router
INTERNET
Switch
Firewalls are one of many protective measures used to prevent hackers from accessing computers or networks. EBSCO illustration.
An individual computer may have its own personal which they belong. Network firewalls, on the other
firewall, such as Windows Firewall or Macintosh OS hand, are positioned at the entrance to the internal
X’s built-in firewall. Other networked devices, such network. All traffic into or out of that network must
as servers, may also have personal firewalls. These are filter through them. A network firewall may be a
known as host-based firewalls because they protect a single device, such as a router or dedicated com-
single host rather than the whole network. They pro- puter, which serves as the entrance point for all data.
tect computers and other devices not only from mali- It then blocks any data that is malicious or otherwise
cious programs or users on the Internet but also from unwanted. Application-level firewalls, which monitor
viruses and other threats that have already infiltrated and allow or disallow data transfers from and to appli-
the internal network, such as a corporate intranet, to cations, may be host based or network based.
134
Firewalls also vary based on how they filter data. should not be the sole security measure used. Rather,
Packet filters examine incoming data packets indi- firewalls should be used along with other computer
vidually and determine whether to block or allow security practices. These practices include using se-
each one to proceed. They decide this based on cure passwords, regularly updating software to install
factors such as the origin and destination of the patches and eliminate vulnerabilities, and avoiding
packets. Stateful filters determine whether to admit accessing compromised websites or downloading
or block incoming data based on the state of the files from suspicious sources.
connection. Firewalls that use stateful filtering can
—Joy Crelin
identify whether data packets trying to enter the
computer system are part of an ongoing, active con-
nection and determine whether to let them in based Bibliography
on that context. This allows them to examine and “How Firewalls Work.” Boston University Information
filter incoming data more quickly than their stateless Services and Technology. Boston U, n.d. Web. 28 Feb.
counterparts. 2016.
Ingham, Kenneth, and Stephanie Forrest. A History
Firewalls and Computer Security and Survey of Network Firewalls. Albuquerque: U of
By preventing malicious programs or users from ac- New Mexico, 2002. PDF file.
cessing systems, firewalls protect sensitive data stored Morreale, Patricia, and Kornel Terplan, eds. The CRC
in or transmitted via computers. They are used to Handbook of Modern Telecommunications. 2nd ed.
protect personally identifying information, such as Boca Raton: CRC, 2009. Print.4 Science Reference
Social Security numbers, as well as proprietary trade Center™ Firewalls
or government information. Both the technology in- Northrup, Tony. “Firewalls.” TechNet. Microsoft, n.d.
dustry and the public have put increased emphasis Web. 28 Feb. 2016.
on such protections in the early twenty-first century, Stallings, William, and Lawrie Brown. Computer
as identity theft, fraud, and other cybercrimes have Security: Principles and Practice. 3rd ed. Boston:
become major issues. In light of such threats, fire- Pearson, 2015. Print.
walls play an essential role in the field of computer Vacca, John, ed. Network and System Security. 2nd ed.
security. However, experts caution that a firewall Waltham: Elsevier, 2014. Print.
135
Firmware
Fields of Study complex as medical devices such as digital thermom-
eters. The term “embedded” is used because the
Embedded Systems; Software Engineering; System-
chips containing firmware are ordinarily not directly
Level Programming
accessible to consumers. They are installed within the
Abstract device or system and expected to work throughout its
lifespan.
Firmware occupies a position in between hardware, Computers also use firmware, which is called the
which is fixed and physically unchanging, and soft- “basic input/output system,” or BIOS. Even though
ware, which has no physical form apart from the the computer has its own OS installed and numerous
media it is stored on. Firmware is stored in nonvola- programs to accomplish more specific tasks, there
tile memory in a computer or device so that it is al- is still a need for firmware. This is because, when the
ways available when the device is powered on. An ex- computer is powered on, some part of it must be imme-
ample can be seen in the firmware of a digital watch, diately able to tell the system what to do in order to set
which remains in place even when the battery is re- itself up. The computer must be told to check the part
moved and later replaced. of the hard drive that contains the start-up sequence,
then to load the OS, and so on. The firmware serves
Prinicipal Terms
this purpose because, as soon as electric current flows
embedded systems: computer systems that are in- into the system, the information stored in the com-
corporated into larger devices or systems to mon- puter’s nonvolatile memory is loaded and its instruc-
itor performance or to regulate system functions. tions are executed. Firmware is usually unaffected even
flashing: a process by which the flash memory on when a different OS is installed. However, the user can
a motherboard or an embedded system is updated also configure the BIOS to some extent and can boot
with a newer version of software. the computer into the BIOS to make changes when
free software: software developed by program- necessary. For example, a computer that is configured
mers for their own use or for public use and dis- to boot from the CD-ROM drive first could have this
tributed without charge; it usually has conditions changed in the BIOS so that it would first attempt to
attached that prevent others from acquiring it and read information from an attached USB drive.
then selling it for their own profit.
homebrew: software that is developed for a device Modifying and Replacing Firmware
or platform by individuals not affiliated with the Sophisticated users of technology sometimes find
device manufacturer; it is an unofficial or “home- that the firmware installed by a manufacturer does
made” version of the software that is developed to not meet all of their needs. When this occurs, it is
provide additional functionality not included or possible to update the BIOS through a process
not permitted by the manufacturer. known as flashing. When the firmware is flashed, it is
nonvolatile memory: computer storage that re- replaced by a new version, usually with new capabili-
tains its contents after power to the system is cut ties. In some cases, the firmware is flashed because
off, rather than memory that is erased at system the device manufacturer has updated it with a new
shutdown. version. This is rarely done, as firmware function-
ality is so basic to the operation of the device that it is
Overview of Firmware thoroughly tested prior to release. From time to time,
Many consumer devices have become so complex however, security vulnerabilities or other software
that they need a basic computer to operate them. bugs are found in firmware. Manufacturers helping
However, they do not need a fully featured computer customers with troubleshooting often recommend
with an operating system (OS) and specially designed using the latest firmware to rule out such defects.
software. The answer to this need is to use embedded Some devices, especially gaming consoles, have
systems. These systems are installed on microchips user communities that can create their own versions
inside devices as simple as children’s toys and as of firmware. These user-developed firmware versions
136
are referred to as homebrew software, as they are means of conveying the user’s personal information
produced by users rather than manufacturers. to unauthorized parties. Even with firmware from of-
Homebrew firmware is usually distributed on the ficial sources, some worry that it would be possible
Internet as free software, or freeware, so that anyone for the government or the device manufacturer to
can download it and flash their device. In the case of include security vulnerabilities, whether deliberate or
gaming consoles, this can open up new capabilities. inadvertent.
Manufacturers tend to produce devices only for spe- —Scott Zimmer, JD
cialized functions. They exclude other functions be-
cause the functions would increase the cost or make
Bibliography
it too easy to use the device for illegal or undesirable
purposes. Flashing such devices with homebrew soft- Bembenik, Robert, Łukasz Skonieczny, Henryk
ware can make these functions available. Rybinński, Marzena Kryszkiewicz, and Marek
Niezgódka, eds. Intelligent Tools for Building a
Automobile Software Scientific Information Platform: Advanced Architectures
One of the market segments that has become in- and Solutions. New York: Springer, 2013. Print.
creasingly reliant on firmware is automobile manu- Dice, Pete. Quick Boot: A Guide for Embedded Firmware
facturing. More and more functions in cars are now Developers. Hillsboro: Intel, 2012. Print.
controlled by firmware. Not only are the speedom- Iniewski, Krzysztof. Embedded Systems: Hardware, Design,
eter and fuel gauge computer displays driven by firm- and Implementation. Hoboken: Wiley, 2012. Print.
ware, but cars come with firmware applications for Khan, Gul N., and Krzysztof Iniewski, eds. Embedded
music players, real-time navigation and map display, and Networking Systems: Design, Software, and
and interfaces with passengers’ cell phones. Implementation. Boca Raton: CRC, 2014. Print.
Noergaard, Tammy. Embedded Systems Architecture: A
Firmware as Vulnerability Comprehensive Guide for Engineers and Programmers.
Although firmware is not very visible to users, it has 2nd ed. Boston: Elsevier, 2013. Print.
still been a topic of concern for computer security Sun, Jiming, Vincent Zimmer, Marc Jones, and Stefan
professionals. With homebrew firmware distributed Reinauer. Embedded Firmware Solutions: Development
over the Internet, the concern is that the firmware Best Practices for the Internet of Things. Berkeley:
may contain “backdoors.” A backdoor is a secret ApressOpen, 2015. Print.
137
Fitbit
Field of Study Incorporated. The company’s initial goal was to in-
Computer Science corporate accelerometers into wearable technology.
Accelerometers are small sensors that measure ac-
Abstract celeration forces. The founders presented a pro-
totype consisting of a circuit board within a small
The term Fitbit refers to activity tracker devices
balsawood box to investors in 2008. The company’s
manufactured and sold by Fitbit Incorporated.
first device, known as the Fitbit Tracker, was released
Designed to help users take control of their health
to the public in 2009. The original Fitbit clipped to
and fitness, Fitbit devices track data such as step
the wearer’s clothing. The small device could count
counts and calories burned, among other func-
and track the number of steps taken and estimate re-
tions. Following their introduction to the market
leased numerous additional Fitbit devices featuring
in 2009, Fitbit devices popularized wearable ac-
different functions.
tivity trackers among the public, prompting the
creation of a wide variety of competing fitness
Types of Fitbit Devices
devices.
The Fitbit Tracker could track the number of
steps the user took per day and estimate how many
Prinicipal Terms
calories such activity burned. The device also
accelerometer IC: an integrated circuit that mea- tracked the user’s sleep duration and quality. The
sures acceleration. Fitbit Tracker could be worn clipped to the user’s
low-energy connectivity IC: an integrated circuit clothing during the day. It also came with a wrist-
that enables wireless Bluetooth connectivity while band with which to wear the device at night. The
using little power. device was paired with a website where users could
microcontroller: an integrated circuit that con- document their exercise routines and meals and re-
tains a very small computer. cord their weight. It also came with a charging sta-
near-field communications antenna: an antenna tion that enabled users to wirelessly upload the data
that enables a device to communicate wirelessly collected by their Fitbits.
with a nearby compatible device. Over the following years, Fitbit introduced more
printed circuit board (PCB): a component of elec- than ten other devices with a variety of different func-
tronic devices that houses and connects many tions. Its products are divided among three product
smaller components. lines: everyday, active, and performance fitness.
vibrator: an electronic component that vibrates. Devices such as the Fitbit One and the Fitbit Charge be-
long to the everyday fitness category. They track the us-
History of Fitbit er’s minutes of activity and number of floors climbed,
In the first decade of the twenty-first century, growing among other data. Some devices, including the Fitbit
interest in health and fitness converged with signifi- Charge and the Fitbit Alta, feature clock displays and
cant advances in consumer technology. This lead can connect to the user’s smartphone to display caller
to the increasing popularity of wearable electronic information. The active fitness product category in-
devices. The personal activity tracker is essentially cludes the Fitbit Charge HR and Blaze. The Charge
an upgraded version of earlier pedometers (step HR adds heart rate tracking to the Fitbit Charge’s fea-
counters). Activity trackers record and measure fit- tures. The Fitbit Blaze features the standard activity-
ness data. Newer models can sync seamlessly with the tracking features as well as music controls and phone
user’s computer or smartphone. One such family of notifications. The Fitbit Surge, a performance fitness
devices, sold under the brand name Fitbit, was intro- device, can track the user’s location via GPS, among
duced in 2009. Different Fitbit products allow users other features. Fitbit also manufactures the Aria smart
to track various fitness-related data. scale. Aria tracks the user’s weight, body mass index,
Fitbit Incorporated was founded in 2007 by James and other data and syncs with both the user’s activity
Park and Eric Friedman as Healthy Metrics Research tracker and the Fitbit website.
138
139
Goode, Lauren. “Fitbit Hit with Class-Action Suit Mangan, Dan. “There’s a Hack for That: Fitbit User
over Inaccurate Heart Rate Monitoring.” Verge. Accounts Attacked.” CNBC. CNBC, 8 Jan. 2016.
Vox Media, 6 Jan. 2016. Web. 28 Feb. 2016. Web. 28 Feb. 2016.
Hof, Robert. “How Fitbit Survived as a Hardware Marshall, Gary. “The Story of Fitbit: How a Wooden
Startup.” Forbes. Forbes.com, 4 Feb. 2014. Web. 28 Box Became a $4 Billion Company.” Wareable.
Feb. 2016. Wareable, 30 Dec. 2015. Web. 28 Feb. 2016.
Stevens, Tim. “Fitbit Review.” Engadget. AOL, 15 Oct.
2009. Web. 28 Feb. 2016.
FORTRAN
Fields of Study main loop: the overarching process being carried
out by a computer program, which may then in-
Programming Languages; Software Engineering;
voke subprocesses.
Abstract programming languages: sets of terms and rules of
syntax used by computer programmers to create
Fortran is the oldest programming still in common instructions for computers to follow. This code is
use, and is used primarily for scientific and engi- then compiled into binary instructions for a com-
neering computations requiring complex math- puter to execute.
ematical calculations. Fortran has been continually syntax: rules that describe how to correctly struc-
revised since its development at IBM in the 1950s, ture the symbols that comprise a language.
and is used presently on “supercomputers” with par-
allel architecture. It is a robust language that is rela- FORTRAN History and Development
tively easy to learn, and Fortran programs adhere to a The FORTRAN programming language was devel-
strictly logical format. oped by John Backus, working at IBM, between 1954
and 1957. The name is a contraction taken from
Prinicipal Terms FORmula TRANslator, a reflection of the develop-
algorithm: a set of step-by-step instructions for per- ment of the language for use in scientific and engi-
forming computations. neering applications requiring complex mathemat-
character: a unit of information that repre- ical functions. The BASIC programming language,
sents a single letter, number, punctuation mark, developed in the 1960s, was strongly influenced by
blank space, or other symbol used in written the Fortran programming language in regard to
language. program structure, being essentially linear with the
function: instructions read by a computer’s pro- ability to use contained subroutines. Fortran has been
cessor to execute specific events or operations. developed through several versions into the 21st cen-
object-oriented programming: a type of program- tury, including Fortran III, Fortran IV, Fortran 66,
ming in which the source code is organized into Fortran 77, Fortran 90, Fortran 95 and Fortran 2003,
objects, which are elements with a unique iden- and is the oldest of programming languages still in
tity that have a defined set of attributes and be- common use. Fortran 90 and later versions are used
haviors. on present-day advanced parallel computers, which
internal-use software: software developed by a are sometimes referred to as “supercomputers,”
company for its own use to support general and and it is notable that Fortran 2003 supports object-
administrative functions, such as payroll, ac- oriented programming. The version numbers gener-
counting, or personnel management and mainte- ally refer to the year in which the updated version
nance. of Fortran was released for use. Fortran is a versatile
and powerful imperative programming language
140
that supports numerical analysis and scientific calcu- identifies the variables x, y and z as real numbers.
lation, as well as structured, array, modular, generic A block of executable statements then follows. These
and concurrent programming. Given the specialized are the functions and relations that the program is
fields of science and technology in which the Fortran to calculate. The executable statement block may in-
language is applied, much of the programs written in clude, for example, statements such as
that language are for internal-use software in which
each function may be defined individually within a read (*,*) x
specific algorithm. read (*,*) y
z = (x + y)/2
Program Structure print *, z
Like all programming languages, Fortran has its own
by which the user enters the two values for x and y
syntax, or method in which program commands and
from the keyboard. Their average value is calculated
statements must be written in order to be “under-
as the variable z, which is then printed to the default
stood” and carried out. A Fortran program is made
display device, usually the computer screen or an at-
up of subroutines and function segments that can
tached printer.
be compiled independently. Subroutines are termed
The heading identifies the name of the program
“external procedures,” and it is characteristic of both
as “average_four.” The type declarations identify all
Fortran and ALGOL that procedures are only in-
of the five variables a, b, c, d and average as real num-
voked as a result of explicit calls from within the main
bers. The executable statements get the four values
loop of the program or from another procedure
of a, b, c and d from keyboard input, calculates their
within it. Each segment of the program has local
data written into the source code, but additional data
can be made available to more than one segment by
storing it in blocks of code labeled COMMON. Each Sample Problem
Fortran program begins with a statement of the name
of the program, followed by the statement “implicit Write a Fortran program that asks for the
none,” and ends with an “end program” statement input of four values and outputs their average.
for that program, as
Answer:
program program_name
program average_four
implicit none
implicit none
.
! this program gets four values and
.
outputs their average
.
! type declarations
end program program_name
real :: a, b, c, d, average
Documentation phrases are added into a Fortran ! executable statements
program using the ! character at the beginning of a read (*,*) a
line. Everything after the ! in that line is ignored by
read (*,*) b
the Fortran compiler, allowing the programmer to
describe what each program segment or line of code read (*,*) c
is intended to achieve. Following the “implicit none” read (*,*) d
statement, Fortran program have a block of type dec- average = (a + b + c + d)/4
laration statements to identify the nature of the vari-
print *, “The average value is,”
ables being used in the program. For example, the
average
type declaration statement
end program average_four
real :: x, y, z
141
average value, and displays the result. The end of the 90, 95, 2003, 2008 and 77. 3rd ed., New York, NY:
program operation is identified by the “end program Springer, 2015. Print.
average_four” statement. Counihan, Martin Fortran 95. Londion, UK:
University College Press. 1996. Print.
Fortran in the Present Day Gehrke, Wilhelm. Fortran 90 Language Guide. New
The straightforward and strictly logical manner in York, NY: Springer, 1995. Print.
which Fortran programs are written is very suitable Kupferschmid, Michael Classical Fortran Programming
for use in complex applications that call for close at- for Engineering and Scientific Applications. Boca
tention to detail, such as scientific and engineering Raton, FL: CRC Press, 2009. Print.
calculations. This would account for the longevity of Metcalf, Michael, and John Reid. The F Programming
the Fortran programming language in those areas, Language. New York, NY: Oxford University Press,
and it is used extensively on modern supercomputers 1996. Print.
for numerical analysis of complex systems. The ro- O’Regan, Gerard. A Brief History of Computing. 2nd ed.,
bust character of the Fortran programming language New York, NY: Springer-Verlag. 2012. Print.
ensures that it will continue to be used well into the Rajaraman, V. Computer Programming in Fortran 77. 4th
future. ed., New Delhi, IND: Prentice-Hall of India Pvt.,
2006. Print.
—Richard M. Renneboog M.Sc.
Scott, Michael L. Programming Language Pragmatics.
4th ed., Waltham, MA: Morgan Kaufmann, 2016.
Bibliography Print.
Chivers, Ian, and Jane Sleightholme. Introduction to
Programming With Fortran, with Coverage of Fortran
142
Functional design
Fields of Study inputs and outputs. When possible, each module
should only perform a single function. Low coupling
Software Engineering; System Analysis
ensures that each module has a high degree of in-
dependence from other parts of the program. This
Abstract
makes the overall program easier to debug and main-
Functional design is a paradigm of computer pro- tain. Most of the labor that goes into programming
gramming. Following functional design principles, is related to these two activities. Therefore, it makes
computer programs are created using discrete mod- sense to use a design approach that makes both of
ules that interact with one another only in very spe- these tasks easier.
cific, limited ways. An individual module can be mod- Functional design is preferable because when a
ified extensively with only minor impacts on other program has a bug, if the modules perform many
parts of the program. different functions and are highly coupled, it is diffi-
cult to make adjustments to the malfunctioning part
Prinicipal Terms without causing unintended consequences in other
parts of the program. Some parts of a program do not
coupling: the degree to which different parts of a
easily lend themselves to functional design because
program are dependent upon one another.
their very nature requires that they be connected to
imperative programming: an approach to software
multiple parts of the overall program. One example
development in which the programmer writes a
of this is the main loop of the program. By necessity,
specific sequence of commands for the computer
the main loop interacts with and modifies different
to perform.
modules, variables, and functions. Similarly, the in-
inheritance: a technique that reuses and repur-
terrupt vector table acts as a directory for interrupt
poses sections of code.
handlers used throughout the program. Still, many
interrupt vector table: a chart that lists the ad-
other functions of a typical program can be designed
dresses of interrupt handlers.
in ways that minimize interdependencies.
main loop: the overarching process being carried
out by a computer program, which may then in-
Interdependent Complications
voke subprocesses.
Functional programming is a form of declarative
polymorphism: the ability to maintain the same programming. Declarative programs simply specify
method name across subclasses even when the the end result that a program should achieve. In
method functions differently depending on its contrast, imperative programming outlines the par-
class. ticular sequence of operations a program should
subtyping: a relation between data types where perform. Programmers must carefully consider how
one type is based on another, but with some limita- they design variables and functions. While functional
tions imposed. design emphasizes modularity and independence
between different program components, a number
Benefits of Functional Design of design techniques rely on interconnections. For
Functional design is a concept most commonly as- example, inheritance draws on the properties of
sociated with computer programming. However, it is one class to create another. With polymorphism, the
also relevant to other fields, such as manufacturing same methods and operations can be performed on
and business management. At its core, the concepts a variety of elements but will have specific, custom-
underlying functional design are simple. Instead of ized behaviors depending on the elements’ class.
designing a program in which the individual parts With subtyping, a type is designed to contain one or
perform many different functions and are highly more other variables types. While each of these tech-
interconnected, modules should have low coupling. niques has advantages, their interdependence can
Modules—the individual parts of the program— cause issues when a change is made to other parts of
should be designed to have the simplest possible the program. For example, consider a variable called
143
144
Aesthetic design
Write
code for: Player TEST
interaction design
Rewrite code or
change design as needed
Design game mechanics Develop a
Game mechanics digital prototype
that support the experience
or purpose of play
Follow up with maintenance
Test the digital and updates to match
Create a physical advancing technology
prototype/program/app
Develop a concept prototype
of the player’s experience
The development of a quality game begins with defining the player’s experience and the game mechanics. Aesthetics and the digital proto-
types of game pieces and environments are actually determined much later in the process. EBSCO illustration.
team specializing in certain aspects of the game’s me- are C++, C#, and Java. Many video games are pro-
chanics or certain types of programming. To facilitate grammed with a combination of several different
collaboration, detailed comments and pseudocode languages. Assembly code or C may be used to write
are used to document features of the program and lower-level modules. The graphics of many games are
explain choices about coding strategies. Pseudocode programmed using a shading language such as Cg or
is a combination of a programming language and a HLSL.
natural language such as English. It is not executable, Game developers often use application program-
but it is much easier to read and understand than ming interfaces (APIs) such as OpenGL and DirectX.
source code. They also rely heavily on the use of libraries and
APIs to repurpose frequently used functions. Many
Game Programming Tools of these resources are associated with animation,
Game programmers use the same basic tools as most graphics, and the manipulation of 3-D elements.
software developers. These tools include text edi- One driving force in game development has been
tors, debuggers, and compilers. The tools used are the use of increasingly sophisticated visual elements.
often determined by the type of device the game is in- The video game industry has come to rival motion
tended to run on. Games can be developed for a par- pictures in their use of complex plotlines, dazzling
ticular computer platform, such as Windows, Apple, special effects, and fully developed characters.
or Linux. They can also be developed for a gaming
console, such as the Wii, Xbox, or PlayStation. Finally, A Popular but Demanding Career
games may be developed for mobile platforms such Game programming has been a popular career
as Apple’s iOS or Google’s Android operating system. choice among young people. Due to the popularity
A wide variety of programming languages are used of video games, it is not surprising that large num-
to create video games. Some of the most commonly bers of people are interested in a career that will
used programming languages in game development allow them to get paid to work on games. Becoming
146
147
148
Current computer interfaces typically require Johnson, Jeff. Designing with the Mind in Mind. 2nd ed.
users to navigate through files, folders, and menus to Waltham: Morgan, 2014. Print.
locate functions, data, or programs. However, voice Lohr, Steve. “Humanizing Technology: A History of
activation of programs or functions is now available Human-Computer Interaction.” New York Times:
on many computing devices. As this technology be- Bits. New York Times, 7 Sept. 2015. Web. 31 Jan.
comes more common and effective, verbal com- 2016.
mands may replace many functions that have been Reimer, Jeremy. “A History of the GUI.” Ars Technica.
accessed by point-and-click or menu navigation. Condé Nast, 5 May 2005. Web. 31 Jan. 2016.
“User Interface Design Basics.” Usability. US Dept. of
—Micah L. Issitt
Health and Human Services, 2 Feb. 2016. Web. 2
Feb. 2016.
Bibliography Wood, David. Interface Design: An Introduction to Visual
“Graphical User Interface (GUI).” Techopedia. Communication in UI Design. New York: Fairchild,
Techopedia, n.d. Web. 5 Feb. 2016. 2014. Print.
Graphics formats
Fields of Study Digital Imaging
A digital image is a mathematical representation of
Information Systems; Digital Media; Graphic Design
an image that can be displayed, manipulated, and
modified with a computer or other digital device.
Abstract
It can also be compressed. Compression uses algo-
Graphics formats are standardized forms of com- rithms to reduce the size of the image file to facilitate
puter files used to transfer, display, store, or print sharing, displaying, or storing images. Digital images
reproductions of digital images. Digital image files may be stored and manipulated as raster or vector im-
are divided into two major families, vector and raster ages. A third type of graphic file family, called “meta-
files. They can be compressed or uncompressed for files,” uses both raster and vector elements.
storage. Each type of digital file has advantages and The quality and resolution (clarity) of an image
disadvantages when used for various applications. depend on the digital file’s size and complexity. In
raster graphics, images are stored as a set of squares,
Prinicipal Terms called “pixels.” Each pixel has a color value and a
color depth. This is defined by the number of “bits”
compressed data: data that has been encoded
allocated to each pixel. Pixels can range from 1 bit
such that storing or transferring the data requires
per pixel, which has a monochrome (two-color)
fewer bits of information.
depth, to 32-bit, or “true color.” 32-bit color allows for
lossless compression: data compression that al-
more than four billion colors through various com-
lows the original data to be compressed and recon-
binations. Raster graphics have the highest level of
structed without any loss of accuracy.
color detail because each pixel in the image can have
lossy compression: data compression that uses ap-
its own color depth. For this reason, raster formats
proximation to represent content and therefore
are used for photographs and in image programs
reduces the accuracy of reconstructed data.
like Adobe Photoshop. However, the resolution of
LZW compression: a type of lossless compression
a raster image depends on size because the image
that uses a table-based algorithm.
has the same number of pixels at any magnification.
RGB: a color model that uses red, green, and blue
For this reason, raster images cannot be magnified
to form other colors through various combina-
past a certain point without losing resolution. Vector
tions.
149
LOSSLESS
Compressed
Original file Restored
LOSSY
Compressed
Original file Restored
Depending on the image format, data may be lost after compression and restoration. Loss of image
data reduces the quality of the image. EBSCO illustration.
graphics store images as sets of polygons that are not compression uses a modeling algorithm that identi-
size-dependent and look the same at any magnifica- fies repeated or redundant information contained
tion. For relatively simple graphics, like logos, vector within an image. It stores this information as a set
files are smaller and more precise than raster images. of instructions can be used to reconstruct the image
However, vector files do not support complex colors without any loss of data or resolution. One form of
or advanced effects, like blurring or drop shadows. lossless compression commonly used is the LZW com-
Depending on the image format, data may be lost pression algorithm developed in the 1980s. The LZW
after compression and restoration. Loss of image algorithm uses a “code table” or “dictionary” for com-
data reduces the quality of the image. pression. It scans data for repeated sequences and
Two basic color models are used to digitally dis- then adds these sequences to a “dictionary” within
play various colors. The RGB color model, also called the compressed file. By replacing repeated data with
“additive color,” combines red, green, and blue to references to the dictionary file, space is saved but no
create colors. The CMYK model, also called “subtrac- data is lost. Lossless compression is of benefit when
tive color,” combines the subtractive primary colors image quality is essential but is less efficient at re-
cyan, magenta, yellow, and black to absorb certain ducing image size. Lossy compression algorithms re-
wavelengths of light while reflecting others. duce file size by removing less “valuable” information.
However, images compressed with lossy algorithms
Image Compression continue to lose resolution each time the image is
Image compression reduces the size of an image compressed and decompressed. Despite the loss of
to enable easier storage and processing. Lossless image quality, lossy compression creates smaller files
150
and is useful when image quality is less important or there are “metafile” formats that can be used to share
when computing resources are in high demand. images combining both vector and raster elements.
These include PDF (Portable Document Format)
Common Graphic Formats files, which are used to store and display documents,
JPEG is a type of lossy image compression format de- and the Encapsulated PostScript (EPS) format,
veloped in the early 1990s. JPEGs support RGB and which is typically used to transfer image files between
CMYK color and are most useful for small images, programs.
such as those used for display on websites. JPEGs are —Micah L. Issitt
automatically compressed using a lossy algorithm.
Thus, some image quality is lost each time the image
is edited and saved as a new JPEG. Bibliography
GIF (Graphics Interchange Format) files have a Brown, Adrian. Graphics File Formats. Kew: Natl.
limited color palette and use LZW compression so that Archives, 2008. PDF file. Digital Preservation
they can be compressed without losing quality. Unlike Guidance Note 4.
JPEG, GIF supports “transparency” within an image by Celada, Laura. “What Are the Most Common
ignoring certain colors when displaying or printing. Graphics File Formats.” FESPA. FESPA, 27 Mar.
GIF files are open source and can be used in a wide va- 2015. Web. 11 Feb. 2016.
riety of programs and applications. However, most GIF Costello, Vic, Susan Youngblood, and Norman E.
formats support only limited color because the em- Youngblood. Multimedia Foundations: Core Concepts
bedded LZW compression is most effective when an for Digital Design. New York: Focal, 2012. Print.
image contains a limited color palette. PNGs (Portable Dale, Nell, and John Lewis. Computer Science
Network Graphics) are open-source alternatives to Illuminated. 6th ed. Burlington: Jones, 2016. Print.
GIFs that support transparency and 24-bit color. This “Introduction to Image Files Tutorial.” Boston
makes them better at complex colors than GIFs. University Information Services and Technology.
SVGs (Scalable Vector Graphics) are an open- Boston U, n.d. Web. 11 Feb. 2016.
source format used to store and transfer vector im- Stuart, Allison. “File Formats Explained: PDF, PNG
ages. SVG files lack built-in compression but can be and More.” 99Designs. 99Designs, 21 May 2015.
compressed using external programs. In addition, Web. 11 Feb. 2016.
151
Green computing
Fields of Study On average, such centers use less than 15 percent of
that power for computing data. The bulk of it is used
Computer Engineering; Information Technology
to maintain idle servers in case of a sudden spike in
activity. In addition, such data centers often rely on
Abstract diesel generators for backup power. They thereby
emit greenhouse gases that contribute to climate
“Green computing” refers to efforts to manufacture, change.
use, and dispose of computers and digital devices Another concern is the effects of the computer
in eco-friendly ways. Concerned with the effects of manufacturing process. Digital devices contain min-
computer-related pollution and energy use on the erals such as rare earth elements that must be mined
environment, various government bodies and in- from the earth and processed, which can create toxic
dustry organizations have sought to promote more waste. Waste is also a matter of concern when an ob-
sustainable computing practices and the recycling of solete or otherwise unwanted device is discarded.
electronic waste. The resulting electronic waste, or e-waste, often
contains materials that may contaminate the sur-
Prinicipal Terms rounding area. Cathode-ray tube (CRT) monitors,
e-waste: short for “electronic waste”; computers for instance, contain lead, which can leach into soil
and other digital devices that have been discarded and water from a landfill. Many computer parts are
by their owners. also not biodegradable. This means that they do not
Green Electronics Council: a US nonprofit organi- break down over time and will thus continue to be a
zation dedicated to promoting green electronics. cause of concern for decades.
hibernation: a power-saving state in which a com-
puter shuts down but retains the contents of its Oversight and Certifications
random-access memory. A number of government and nonprofit organiza-
TCO certification: a credential that affirms the tions promote green computing and address issues
sustainability of computers and related devices. such as environmentally responsible energy use and
undervolting: reducing the voltage of a computer manufacturing. The US Environmental Protection
system’s central processing unit to decrease power Agency (EPA) launched the Energy Star program in
usage. 1992 to reduce air pollution. In the 2000s and 2010s,
152
it has focused on reducing greenhouse-gas emissions and mobile technology continue apace, and new de-
through energy efficiency. To earn the Energy Star vices constantly replace obsolete or outmoded ones.
certification for their products, computer manufac- Because of this, the disposal of discarded devices
turers must demonstrate that their devices meet the represents a serious and growing environmental
EPA’s energy efficiency standards. problem, in large part because of parts that do not
TCO Development, a Swedish nonprofit, offers biodegrade and are environmentally hazardous.
TCO certification. This credential was originally de- To prevent unwanted devices from entering land-
vised in 1992 and modernized in 2012. It is granted fills, major electronics companies such as Apple,
to computers, mobile phones, and peripherals that Motorola, and Nintendo offer “take back” programs
meet certain sustainability requirements in all stages in which owners may return their devices to the
of their life cycle, from manufacture to disposal. manufacturers. Firms sometimes offer a payment
The nonprofit Green Electronics Council manages or a discount on a new device in exchange. In some
the Electronic Product Environmental Assessment cases, the collected devices are refurbished and re-
Tool (EPEAT), created in 2005. Manufacturers pro- sold. In others, they are recycled in an eco-friendly
vide the council with product information covering manner.
an item’s life cycle. That information is then com- Another major concern is that as the amount of
pared against other products and listed on the public data being created, stored, and accessed continues to
EPEAT registry, which buyers can access. grow, more numerous and powerful data centers will
be needed. Unless the issue is addressed, today’s en-
Green Computing Initiatives ergy inefficiency will lead to ever-greater amounts of
Perhaps the most common green computing initia- electricity being wasted in the future.
tives have been efforts to educate corporations and
—Joy Crelin
the public about the environmental effects of com-
puter use, particularly in regard to energy consump-
tion. Computer users can save energy through tech- Bibliography
niques such as putting a computer in hibernation Dastbaz, Mohammad, Colin Pattinson, and Bakbak
mode. When a computer enters this mode, it essen- Akhgar, eds. Green Information Technology: A
tially shuts down and stops using power. It still retains Sustainable Approach. Waltham: Elsevier, 2015.
the contents of its random-access memory (RAM), Print.
allowing the user to resume their previous activities Feng, Wu-chun, ed. The Green Computing Book:
after exiting hibernation mode. Tackling Energy Efficiency at Large Scale. Boca Raton:
Another technique, called undervolting, lowers CRC, 2014. Print.
the voltage of the computer system’s central pro- Glanz, James. “Power, Pollution and the Internet.”
cessing unit (CPU). The CPU does need a minimum New York Times. New York Times, 22 Sept. 2012.
voltage to function, but decreasing the voltage by a Web. 28 Feb. 2016.
small amount can improve the system’s energy ef- Ives, Mike. “Boom in Mining Rare Earths Poses
ficiency. In a mobile device, heat is reduced while Mounting Toxic Risks.” Environment 360. Yale U,
battery life is prolonged. Other measures including 28 Jan. 2013. Web. 28 Feb. 2016.
turning off devices when not in use and enabling Smith, Bud E. Green Computing: Tools and Techniques
power-saving settings when available. for Saving Energy, Money, and Resources. Boca Raton:
CRC, 2014. Print.
Present and Future Concerns “What You Can Do.” Green Computing. U of California,
E-waste is one of the most significant computer- Berkeley, n.d. Web. 28 Feb. 2016.
related environmental issues. Advances in computer
153
154
than it had been in the past. Many companies arose assimilate in lifetime. It is estimated that by 2020,
to try to take advantage of the new business models there will be more than five thousand gigabytes (GB)
that it made possible. Computer programmers and of data for each and every person on earth.
network technology experts found themselves in The availability of IT is the factor most responsible
high demand. Startup companies tried to build on- for the explosion in data production. Most cell phone
line services quickly and effectively. Investment in plans measure customer data in how many GB per
technology companies put hundreds of millions of month may be used, for example. This is because of
dollars into IT research. Even established companies the many photos, videos, and social media status up-
realized that they needed to invest in their IT infra- dates people create and share on the Internet every
structure and personnel if they wanted to stay com- day. It is estimated that every two days, human beings
petitive. As the IT sector of the economy grew rapidly, create as much information as existed worldwide be-
financial experts began to worry that it was forming fore 2003. The pace of this data explosion increases
an economic bubble. An economic bubble occurs as time goes on.
when a market grows rapidly and then that growth
—Scott Zimmer, JD
declines abruptly. The bubble eventually “pops,” and
investors pull their money out. This did happen, and
many Internet startups shut down. Bibliography
While the dot-com bubble, as it came to be known, Black, Jeremy. The Power of Knowledge: How Information
passed quickly, IT remained a central part of life. and Technology Made the Modern World. New Haven:
Simple tasks that used to be done without sophisti- Yale UP, 2014. Print.
cated technology, such as banking, shopping, and Bwalya, Kelvin J., Nathan M. Mnjama, and Peter M. I.
even reading a book, now involve computers, mobile I. M. Sebina. Concepts and Advances in Information
phones, tablets, or e-readers. This means that the av- Knowledge Management: Studies from Developing and
erage person must be more familiar with IT in the Emerging Economies. Boston: Elsevier, 2014. Print.
twenty-first century than in any previous era. Because Campbell-Kelly, Martin, William Aspray, Nathan
of this, IT has become a topic of general interest. Ensmenger, and Jeffrey R. Yost. Computer: A History
For example, an average person needs to know a of the Information Machine. Boulder: Westview, 2014.
bit about network configuration in order to set up a Print.
home system. Fox, Richard. Information Technology: An Introduction
for Today’s Digital World. Boca Raton: CRC, 2013.
Data Production Growth Print.
With IT, new information is constantly being created. Lee, Roger Y., ed. Applied Computing and Information
Once it was possible for a single person to master all Technology. New York: Springer, 2014. Print.
of society’s knowledge. In the modern world, more Marchewka, Jack T. Information Technology Project
data is produced every year than a person could Management. 5th ed. Hoboken: Wiley, 2015. Print.
155
Maintenance
Deployment
Business
Analysis
Run-time
Environment Auto- Requirements
documentor
Testing
and Evaluation Architecture
Integrated and Design
Development
Environment
Source to
Object
Code Translator Development
Text
Editor
Integrated development environments pull together the tools for multiple aspects of software development
into a single program. Text editors (to write and edit source code), translators (to convert source code into
object code), run-time environments (to allow editors to see the output of their code), debugging tools (to
fix errors), and auto-documentation tools (to create the necessary software documentation) allow an editor
to create software from design to release. EBSCO illustration.
157
programming gradually took a more visual approach, commands. Veteran programmers have suggested
in the same way that other types of apps went from that this is not necessarily a good thing. Not every
text-based interfaces to GUIs. Visual programming app or programming task lends itself to visual de-
allows software developers to use a mouse to drag and velopment, they argue, so programmers should be
drop pieces of code in order to design apps. This is able to use text-based development tools as well as
often a much more intuitive method for designing visual ones.
an app and can be less time consuming than typing
—Scott Zimmer, JD
out lines of source code. Today, several IDEs support
visual programming. Using these tools, programmers
can create blocks of code in one window, then click to Bibliography
debug and compile the code. Christiano, Marie. “What Are Integrated
Development Environments?” All about Circuits.
Attitudes toward IDEs EETech Media, 3 Aug. 2015. Web. 23 Feb. 2016.
The introduction of IDEs was not greeted with uni- Freedman, Jeri. Software Development. New York:
versal praise. Some programmers, even in the twenty- Cavendish Square, 2015. Print.
first century, view such tools as limiting their own Mara, Wil. Software Development: Science, Technology,
creativity as programmers. IDEs force programs to be and Engineering. New York: Children’s, 2016. Print.
written in certain ways in order to comply with the Patrizio, Andy. “The History of Visual Development
environment’s design. These programmers prefer to Environments: Imagine There’s No IDEs. It’s
write code the old-fashioned way, even if doing so is Difficult If You Try.” Mendix. Mendix, 4 Feb. 2013.
more labor intensive and time consuming. Web. 23 Feb. 2016.
One consequence of the emergence of visual Schmidt, Richard F. Software Engineering: Architecture-
IDEs is that younger programmers may never be ex- driven Software Development. Waltham: Morgan,
posed to the text-based development tools that their 2013. Print.
predecessors made and used. These contemporary Tucker, Allen B., Ralph Morelli, and Chamindra de
programmers learn in visual environments where Silva. Software Development: An Open Source Approach.
there is less need for memorizing programming Boca Raton: CRC, 2011. Print.
158
159
interface. The GIFT model assumes in addition a which constraints are followed by students in solving
sensor module, which provides a non-verbal record of problems. Successful constraint based tutors include
the student’s psychological state while learning. the structured query language (SQL) tutor.
The domain model involves the structure of the Knowledge space models underlies the very suc-
knowledge to be developed in the student. It nor- cessful Assessment and Learning in Knowledge
mally contains the knowledge that experts bring to Spaces (ALEKS) mathematics tutor now widely used
the subject along with an awareness of pitfalls and on college campuses to deal with students have not
popular misconceptions. studied mathematics in recent semesters. The knowl-
The learner model consists of the succession of edge space is a large number of possible knowledge
psychological states that the learner is expected to go states of each mathematical field. As the topics are
through in the course of learning. It can be viewed as reviewed the student builds a coherent picture if the
an overlay of the domain model, which will change field as a whole.
over the course of learning. Expectation and misconception tailored dialog.
The pedagogical model takes the domain and These are particularly important in fields like physics
learner models as input and selects the next move where terms from common usage, like force and en-
that the tutor will take. In mixed initiative systems, ergy have specific restricted meanings which students
learners may take actions, or ask for help as well. must understand before progress is possible.
The tutor – user interface records and interprets
Donald Franceschetti, PhD
the learner’s responses obtained through various
inputs: mouse clicks. typed-in answers, eye tracking,
and possibly postural data and keeps a record as the Bibliography
tutoring progresses. Mandl, H., and A. Lesgold, eds. Learning Issues for
Intelligent Tutoring Systems. New York: Springer,
Tracking student progress 1988. Print.
Here are several examples of learner modeling, used Stein, N. L., and S.W. Raudenbush, eds. Developmental
in contemporary ITS’s: Cognitive Science Goes to School. New York: Routledge,
Knowledge tracing: If the knowledge to be con- 2011. Print
veyed is contained in a set of production rules then Sottilare, R., Graesser, A., Hu, X., and Holden, H.
skillometer can be used to visually display the stu- (Eds.). (2013). Design Recommendations for Intelligent
dents progress. Step by step knowledge tracing is in- Tutoring Systems: Volume 1 - Learner Modeling.
corporated in a number of tutoring programs devel- Orlando, FL: U.S. Army Research Laboratory.
oped in the Pittsburgh Science of Learning Center. ISBN 978-0-9893923-0-3. Available at: https://gift-
Constraint bases modeling: A relevant satisfied tutoring.org/documents/42
state constraint corresponds to an aspect of the
problem solution. Learner modeling is tracked by
160
Internet privacy
Fields of Study details, health data, financial information, or gov-
ernment identification information such as Social
Computer Science; Privacy; Security
Security numbers. Such access can lead to identity
theft or fraud.
Abstract
Cybercrime is one of the major causes of concern
Internet privacy is an issue of concern in the early in regard to Internet privacy. Privacy breaches by cor-
twenty-first century. With increasing Internet use porations and marketers are also major concerns.
for work, socializing, and daily tasks comes a cor- Tracking technologies enable advertisers to market
responding increase in potential breaches of pri- to individuals based on their browsing habits and pre-
vacy. To address this issue, individuals may use a va- vious purchases. Some users enjoy being served ads
riety of technologies and techniques to ensure the relevant to their shopping patterns, but others view
security of their personal information and online that it as an invasion of privacy. Protecting one’s on-
communications. line activity from government surveillance is likewise
of concern to some Internet users. Their concern in-
Prinicipal Terms creased after the secret US National Security Agency
(NSA) Internet surveillance program PRISM was re-
behavioral marketing: advertising to users based
vealed in 2013.
on their habits and previous purchases.
cookies: small data files that allow websites to track
Research
users.
A number of government and public-sector or-
digital legacy (digital remains): the online ac-
ganizations have researched the privacy needs of
counts and information left behind by a deceased
Internet users. One such research initiative, the
person.
European-run Privacy Incorporated Software Agents
device fingerprinting: the practice of collecting
(PISA), sought to identify and resolve privacy prob-
identifying information about a computer or
lems associated with intelligent software agents.
other web-enabled device.
These agents are computer systems that act on the
personally identifiable information (PII): infor-
behalf of the user in a semiautonomous manner. The
mation that can be used to identify a specific in-
researchers also examined existing privacy laws and
dividual.
best practices. They created a prototype interface de-
Privacy Incorporated Software Agents (PISA): a
signed to meet usability requirements of users. The
project that sought to identify and resolve privacy
interface was also designed to gain users’ trust, so
problems related to intelligent software agents.
that they would feel comfortable entering their per-
sonal information. The researchers found that even
Internet Privacy Concerns when privacy options were provided, as in a settings
The Internet has enabled individuals the world or control panel interface, many users had difficulty
over to communicate with one another and share understanding how to use those options to meet
information. Internet users can socialize, shop, their privacy needs. The users also found it hard to
conduct financial transactions, and carry out other understand how the privacy options were connected
tasks online. The privacy of their online actions to the personal information they had entered.
and the data they share have become increasingly
at risk, however. Breaches of online privacy can Threats to Internet Privacy
take many forms. It can be the inadvertent sharing Potential threats to Internet privacy take a number
of personally identifiable information (PII) of forms. Perhaps the most high-profile threat is that
through lax social media security settings. Or it can of hackers who seek to steal individuals’ personal
be the theft of banking or credit card information. data. In some cases, criminals may steal data such as
Insufficient privacy practices can make it possible credit card numbers by hacking into the servers of
for criminals to gain access to individuals’ contact online retailers. In other cases, a criminal may use
161
0 10 20 30 40 50
Shares with
Affiliates
Shares with
Contractors
Shares with
Third Parties
Collects IP Address
Ad Customization
Tracks Interaction
Third-party Tracking
User Access
Acquisition
Data Purchase
Data Retention
Yes Unclear No
Graph showing privacy policy practices of the 50 most visited websites, adapted from KnowPrivacy (knowprivacy.org) research conducted by
UC Berkeley School of Information, 2009. Users’ personal data is often collected and shared with affiliates or contractors that the site does
not consider “third party,” making them exempt from privacy policies stating the site does not share users’ information. In many cases, it is
unclear what information is being collected. EBSCO illustration.
phishing e-mails to trick an individual into revealing past the computer screen. A lack of privacy protec-
personal information. Some criminals use surveil- tions on social media can reveal an individual’s ad-
lance programs such as keyloggers. Keyloggers dress and the dates they will be on vacation to poten-
can record all keystrokes made on a computer and tial burglars, for instance.
transmit that data to another user. Most threats to Privacy concerns likewise extend to online mar-
Internet privacy are digital in nature, but the con- keting. Many marketers use cookies, small data files
sequences of weak Internet privacy can also extend that track individual users on the Internet. Cookies
162
163
iOS
Fields of Study The first iOS system and iPhone were unveiled at
the 2007 Macworld Conference. The original iOS
Operating Systems; Software Engineering; Mobile
had a number of limitations. For example, it was un-
Platforms
able to run third-party apps, had no copy and paste
functions, and could not send e-mail attachments. It
Abstract
was also not designed for multitasking, forcing users
Apple’s iOS is an operating system designed for mo- to wait for each process to finish before beginning
bile computing. It is used on the company’s iPhone another. However, iOS introduced a sophisticated
and iPad products. The system, which debuted in capacitive touch screen. The iOS touch features al-
2007, is based on the company’s OS X. iOS was the lowed users to activate most functions with their fin-
first mobile operating system to incorporate ad- gers rather than needing a stylus or buttons on the
vanced touch-screen controls. device. The original iPhone had only five physical
buttons. All other functions, including the keyboard,
Prinicipal Terms were integrated into the device’s touch screen. In
addition, the iOS system supports multitouch ges-
jailbreaking: the process of removing software re-
tures. This allows a user to use two or more fingers
strictions within iOS that prevent a device from
(pressure points) to activate additional functions.
running certain kinds of software.
Examples include “pinching” and “stretching” to
multitasking: in computing, the process of com-
shrink or expand an image.
pleting multiple operations concurrently.
multitouch gestures: combinations of finger move-
Jailbreaking
ments used to interact with touch-screen or other
Computer hobbyists soon learned to modify the un-
touch-sensitive displays in order to accomplish var-
derlying software restrictions built into iOS, a pro-
ious tasks. Examples include double-tapping and
cess called jailbreaking. Modified devices allow users
swiping the finger along the screen.
greater freedom to download and install apps. It also
platform: the underlying computer system on
allows users to install iOS on devices other than Apple
which an application is designed to run.
devices. Apple has not pursued legal action against
3D Touch: a feature that senses the pressure with
those who jailbreak iPhones or other devices. In 2010,
which users exert upon Apple touch screens.
the US Copyright Office authorized an exception per-
widgets: small, self-contained applications that
mitting users to jailbreak their legally owned copies of
run continuously without being activated like a
iOS. However, jailbreaking iOS voids Apple warranties.
typical application.
Version Updates
A New Generation of Mobile Operating
The second version of iOS was launched in July 2008.
Systems
With iOS 2, Apple introduced the App Store, where
Apple’s iOS is an operating system (OS) designed for
users could download third-party apps and games. In
use on Apple’s mobile devices, including the iPhone,
2009, iOS 3 provided support for copy and paste func-
iPad, Apple TV, and iPod Touch. In 2016, iOS was
tions and multimedia messaging. A major advance-
the world’s second most popular mobile OS after the
ment came with the release of iOS 4 in 2010. This up-
Android OS. Introduced in 2007, iOS was one of the
date introduced the ability to multitask, allowing iOS
first mobile OSs to incorporate a capacitive touch-
to begin multiple tasks concurrently without waiting
screen system. The touch screen allows users to acti-
for one task to finish before initiating the next task
vate functions by touching the screen with their fin-
in the queue. The iOS 4 release was also the first to
gers. The Apple iOS was also among the first mobile
feature a folder system in which similar apps could
OSs to give users the ability to download applications
be grouped together on the device’s home screen
(apps) to their mobile devices. The iOS is therefore a
(called the “springboard”). FaceTime video calls also
platform for hundreds of thousands third-party apps.
became available with iOS 4.
164
iOS integrated Siri, a voice-activated search engine, for the iPhone. Through multiple updates, its capabilities
have expanded to work extremely well with a number of popular websites with all Apple apps, as well as with
many popular third-party apps. Vasile Cotovanu, CC BY 2.0 (http://creativecommons.org/licenses/by/2.0),
via Wikimedia Commons.
The release of iOS 5 in 2011 integrated the voice- The release of iOS 9 in 2015 marked a visual de-
activated virtual assistant Siri as a default app. Other parture for Apple. This update debuted a new type-
iOS 5 updates include the introduction of iMessage, face for iOS called San Francisco. This specially tai-
Reminders, and Newsstand. In 2012, iOS 6 replaced lored font replaced the former Helvetica Neue. The
Google Maps with Apple Maps and redesigned the release of iOS 9 also improved the battery life of
App Store, among other updates. Released in 2013, Apple devices. This update introduced a low-power
iOS 7 featured a new aesthetic and introduced the mode that deactivates high-energy programs until
Control Center, AirDrop, and iTunes Radio. the phone is fully charged. Low-power mode can ex-
tend battery life by as much as an hour on average.
Coinciding with the release of iOS 9, Apple also
New Innovations
debuted the iPhone 6S and iPhone 6S Plus, which
With the release of iOS 8, Apple included third-party
introduced 3D Touch. This new feature is built into
widget support for the first time in the company’s his-
the hardware of newer Apple devices and can sense
tory. Widgets are small programs that do not need
how deeply a user is pressing on the touch screen.
to be opened and continuously run on a device.
3D Touch is incorporated into iOS 9 and enables
Examples including stock tickers and weather wid-
previews of various functions within apps without
gets that display current conditions based on data
needing to fully activate or switch to a new app. For
from the web. Widgets had been a feature of Android
instance, within the camera app, lightly holding a
and Windows mobile OSs for years. However, iOS 8
finger over a photo icon will bring up an enlarged
was the first iOS version to support widgets for Apple.
preview without needing to open the iPhoto app.
Since their release, Apple has expanded the avail-
ability of widgets for users. —Micah L. Issitt
165
166
167
translation of source code from another language procedure without a specified name. For example,
such as FORTRAN into LISP source code, but the re- to evaluate a function that accepts three numer-
sult obtained from such translated code will not be ical values and calculates the solution of the cor-
quite the same as that obtained from true LISP code. responding quadratic equation y = ax2 + bx + c,
LISP does not rely on imperative programming, but one could write
uses function statements. The simple symbolic struc-
<span class=”text-node”> (lambda (a b c)
ture of such statements is very non-intuitive to hu-
(- (* b b) (* 4.0 a c))) </span>
mans, but is very amenable to computations carried
out by the computer. For example, the operation of
multiplying two pairs of variables and then adding
their resultant values would normally be written in Sample Problem
other languages as
Write a lambda form that accepts two
(a*b) + (c*d) numbers b and h, and evaluates the corre-
but in LISP this is written as sponding area of a right triangle.
(+ (* a b) (* c d)) Answer:
When this is understood, the construction of com- The formula for the area of a right triangle is A
plex mathematical statements using LISP’s built-in = ½ bh. Therefore the corresponding lambda
assortment of functions becomes much easier. For form would be
example, writing a LISP expression to evaluate a <span class=”text-node”>(lambda ( b h)
relation that adds two numbers and multiplies the (* 0.5 b h))</span>
product by some multiple of a trigonometric func-
tion can be written simply in LISP as
(* 4.5 (sin 27.5) (+ 6 7))
Value of LISP Programming
The code for such an expression is both compact
The use of data objects and lists in LISP program-
and efficient, and conducive to the use of very exten-
ming and its basis on logic principles have made it
sive statements. All LISP procedures have the same
a language of choice for artificial intelligence studies
value in syntax as a function, and each one returns
and development. These capabilities also make it
a data object as its associated value when called. A
useful for manipulating the source code of programs
data object may be anything from a single character
written in other languages, and may be an essential
to a long string of symbols or a numerical value, de-
feature in developing computer applications that can
pending on the contextual nature of the procedure.
“learn” as they carry out their functions.
A list is a sequence of data objects delimited by paren-
theses. For example, a list of three data objects (DOn) —Richard M. Renneboog M.Sc.
would appear as
(DO1 DO2 DO3). Bibliography
Lists can also contain lists. The structure Barski, Conrad. Land of Lisp. Learn to Program LISP
One Game at a Time. San Francisco, CA: No Starch
((DO1 DO2) (DO3 DO4)) Press, 2011. Print.
is a list of two lists. Symbols are strings of let- Kramer, Bill. The Autocadet’s Guide to Visual LISP.
ters, digits and special characters, and have dif- Laurence, KS: CMP Books, 2002. Print.
ferent contextual meanings in different state- Méndez, Luis Argüelles. A Practical Introduction to
ments. They typically serve as identifiers in LISP Fuzzy Logic Using LISP. New York, NY: Springer,
programs, much like an assigned variable name in 2016. Print.
other languages. There is a special form in LISP, O’Regan, Gerard. A Brief History of Computing 2nd ed.,
called the lambda form, that allows mentioning a New York, NY: Springer-Verlag, 2012. Print.
168
Rawls, Rod. R., Paul F. Richard and Mark A. Hagen. Seibel, Peter. Practical Common LISP New York, NY:
Visual LISP Programming: Principles and Techniques Apress/Springer-Verlag. Print.
Tinley Park, IL: Goodheart-Willcox, 2007. Print. Touretzky, David S. Common LISP. A Gentle Introduction
Scott, Michael L. Programming Language Pragmatics 4th to Symbolic Computation Mineola, NY: Dover
ed., Waltham, MA: Morgan Kaufmann. Print. Publications. Print.
169
170
171
mistakes. First, they downloaded a Word document Brandom, Russell. “Google Survey Finds More than
attachment from an unknown user. Then they fol- Five Million Users Infected with Adware.” The
lowed a prompt to enable macros within the docu- Verge. Vox Media, 6 May 2015. Web. 12 Mar. 2016.
ment—a feature that is automatically turned off in all Franceschi-Bicchierai, Lorenzo. “Love Bug: The Virus
versions of Microsoft Word. Many malware programs That Hit 50 Million People Turns 15.” Motherboard.
depend on users downloading or installing programs. Vice Media, 4 May 2015. Web. 16 Mar. 2016.
Therefore, computer security experts warn that the Gallagher, Sean. “‘Locky’ Crypto-Ransomware Rides
best way to avoid contamination is to avoid opening In on Malicious Word Document Macro.” Ars
e-mails, messages, and attachments from unknown or Technica. Condé Nast, 17 Feb. 2016. Web. 16 Mar.
untrusted sources. 2016.
Harrison, Virginia, and Jose Pagliery. “Nearly 1
—Micah L. Issitt
Million New Malware Threats Released Every
Day.” CNNMoney. Cable News Network, 14 Apr.
Bibliography 2015. Web. 16 Mar. 2016.
Bradley, Tony. “Experts Pick the Top 5 Security Spence, Ewan. “New Android Malware Strikes at
Threats for 2015.” PCWorld. IDG Consumer & Millions of Smartphones.” Forbes. Forbes.com, 4
SMB, 14 Jan. 2015. Web. 12 Mar. 2016. Feb. 2015. Web. 11 Mar. 2016.
“Spyware.” Secure Purdue. Purdue U, 2010. Web. 11
Mar 2016.
Medical technology
Fields of Study Medical Device Innovation Consortium: a non-
profit organization established to work with the
Applications; Information Systems
US Food and Drug Administration on behalf of
medical device manufacturers to ensure that these
Abstract
devices are both safe and effective.
The field of medical technology encompasses a medical imaging: the use of devices to scan a pa-
wide range of computerized devices and systems tient’s body and create images of the body’s in-
that collect information about a patient’s health, ternal structures to aid in diagnosis and treatment
process it, and produce reports that can be inter- planning.
preted by doctors to help them decide what treat- telemedicine: the practice of doctors interacting
ment to recommend. Medical technology focuses with and treating patients long distance using
on the diagnosis and treatment of medical condi- telecommunications technology (such as tele-
tions and is considered part of the broader field of phones or videoconferencing software) and the
health technology. Internet.
172
Medical technology is constantly evolving to provide medical practitioners with a better view of what is hap-
pening and more information to help determine problems and find solutions. By Tomáš Vendiš, CC BY 3.0
(http://creativecommons.org/licenses/by/3.0), via Wikimedia Commons.
blood sugar, high cholesterol, or thyroid gland prob- such as X-rays. A person with a painful hand injury
lems cannot be diagnosed visually. For such condi- might receive an X-ray to determine whether or not
tions, specially designed devices or procedures must any bones have been broken. Today, these X-ray im-
be used to collect information about the patient’s ages may be taken and stored digitally, rather than
bodily processes. This is where medical technology on film.
comes in.
For doctors, everything the body does creates Treatment Tools
information. They must find ways to collect this in- Medical technology can also be used to help treat a
formation, analyze it, and use it to make educated condition that has been diagnosed. Some types of
guesses about the patient’s condition. Part of medical medical technology are simple to understand and
technology involves clinical engineering, in which use. Think of bandages, crutches, and wheelchairs.
devices are designed to collect information about the Other types of medical treatment devices rely on
patient’s health. Some of these devices allow doctors more advanced technology. For example, tiny moni-
to measure the signals created by the body, a process tors can be implanted in the body to monitor heart
known as biosignal processing. For example, electro- rhythm.
encephalograms (EEG) measure the electrical ac- The US Food and Drug Administration (FDA)
tivity of the brain. Detecting abnormalities in these must approve medical devices before they can be used
signals helps doctors to diagnose epilepsy, sleep dis- in general practice. This requires extensive testing to
orders, and brain tumors, among other problems. show that the technology is unlikely to cause harm.
Doctors also use other types of medical imaging, Other bodies are also involved in this process, such as
173
the Medical Device Innovation Consortium (MDIC). such as plastic or ceramic. Devices could one day use
The nonprofit MDIC supports medical technology 3-D printing to grow cellular structures according to
inventors and guides them through the FDA approval dimensions defined by medical imaging scans. If a
process. Groups such as this must balance the inter- patient needed a healthy kidney, it would be possible
ests of doctors and the FDA with those of the medical to scan them to find out exactly what size and shape
technology industry in creating and marketing new of kidney was needed and then 3-D print the kidney
devices. It is common for approval of medical devices using tissue from the patient. This would minimize
to take several years. During this time, doctors and the risk of tissue rejection that comes along with tra-
even some patients may be waiting for approval to ditional organ transplant.
use groundbreaking treatments. This places great
—Scott Zimmer, JD
pressure on the FDA to move the approval process
forward both quickly and safely.
Bibliography
Medical Technology in the Twenty-First Cassell, Eric J. The Nature of Healing: The Modern
Century Practice of Medicine. New York: Oxford UP, 2013.
The Internet has opened up new avenues of treat- Print.
ment for medical technology. The field of telemedi- Liang, Hualou, Joseph D. Bronzino, and Donald R.
cine, in which patients consult with doctors long Peterson, eds. Biosignal Processing: Principles and
distance, has grown greatly. It is particularly useful Practices. Boca Raton: CRC, 2012. Print.
in bringing more treatment options to rural areas Rasmussen, Nicolas. Gene Jockeys: Life Science and the
that may not have well-equipped hospitals or many Rise of Biotech Enterprise. Baltimore: Johns Hopkins
medical specialists. In the past, telemedicine was re- UP, 2014. Print.
stricted to telephone consultations. Diagnostic data Topol, Eric J. The Creative Destruction of Medicine: How
can now be collected from a patient and transmitted the Digital Revolution Will Create Better Health Care.
over the Internet to a specialist. The specialist then New York: Basic, 2013. Print.
uses it to recommend a treatment for the patient. Tulchinsky, Theodore H., Elena Varavikova, Joan D.
Advances in nonmedical technology have also Bickford, and Jonathan E. Fielding. The New Public
raised the possibility of devices “printing” new organs Health. New York: Academic, 2014. Print.
or tissue structures that are designed for a particular Wachter, Robert M. The Digital Doctor: Hope, Hype, and
patient. Today, computer models tell 3-D printers Harm at the Dawn of Medicine’s Computer Age. New
how to build a 3-D object using layers of materials York: McGraw, 2015. Print.
174
Mesh networking
Fields of Study Mesh networks are designed to keep functioning
even when one or more nodes fail. When this oc-
Information Technology; Network Design
curs, unaffected nodes are able to compensate for
the damage the network has suffered. The ability
Abstract
of mesh networks to respond to broken nodes
Mesh networking is one way of organizing a network. has led some to describe them as “self-healing,”
It was designed for military applications requiring because they adapt their layouts in order to keep
high performance and reliability. All of the nodes in functioning.
a mesh network transmit data across the network. In Most mesh networks are wireless rather than
some mesh networks, each node has a connection wired. Wireless technology has advanced enough
to every other node. These types of mesh networks that different types of wireless antennas can be in-
are highly resilient, but they can become costly as the corporated in a single device or node on the net-
network grows in size. work. This allows for greater versatility in the type
and number of connections that nodes can make
Prinicipal Terms with one another. In addition, wireless mesh net-
works are easier to set up than wired ones, because
flooding: sending information to every other node
there is no need to install physical cables connecting
in a network to get the data to its appropriate des-
all of the nodes on the network.
tination.
hopping: the jumping of a data packet from one
How a Mesh Network Works
device or node to another as it moves across the
There are two main methods that a mesh network
network. Most transmissions require each packet
uses to convey information from one point to an-
to make multiple hops.
other. The first of these methods is routing. To
node: a point on a network where two or more
route data, the network first calculates the most ef-
links meet, or where one link terminates.
ficient route for data packets to take. This may be
peer-to-peer (P2P) network: a network in which all
done through the use of a routing table, which is a
computers participate equally and share coordina-
list of routes that can be used to reach various points
tion of network operations, as opposed to a client-
on the network. This is analogous to looking up a
server network, in which only certain computers
person’s address before driving to their house for a
coordinate network operations.
visit. Using the information from the routing table,
routing: selecting the best path for a data packet to
packets travel by hopping from node to node until
take in order to reach its destination on the network.
they finally reach their destination. This is similar
topology: the way a network is organized, in-
to a person jumping from stone to stone in order to
cluding nodes and the links that connect nodes.
cross a stream, where each stone represents a node
on the network.
Benefits of Mesh Networking
Another approach to network navigation is
Mesh networking is a type of network topology. It was
flooding. With this method, the network does not
developed because of the limitations of other types of
need to determine the best path a data packet to
network topologies, such as star networks, ring net-
take. Instead, the node simply sends a copy of the
works, and bus networks. While these designs have
packet to every other node it is attached to. Each of
some advantages, experience showed that they are
these nodes then does the same thing, and the pro-
vulnerable to device failure. In some scenarios, the
cess is repeated. This is called flooding because the
failure of a single node could prevent the entire net-
network is quickly flooded with copies of the packet
work from functioning. Furthermore, adding more
being transmitted. While this may seem redundant,
nodes to these networks could be challenging, as it
the redundancy creates greater certainty that the
sometimes required changing the existing network
packet will reach its destination.
to accommodate new equipment.
175
Client 5
Wired
Internet
MN2
Client 4
MN3
MN1
Router
MN7
MN6 Client 6
Router
MN4
MN5
Client 3
Client 1
Client 7
Client 2
Wireless mesh networks make use of a spiderweb-like design that allows multiple pathways for data to travel from one client to an-
other. This allows data to move quickly by taking the path of least resistance at any given instant. Adapted from the WMN Topology
diagram, Communications Network Research Institute.
176
177
Metacomputing
Fields of Study in networked computer systems would soon make it
difficult to take advantage of all interconnected com-
Computer Science; Information Systems
puting resources. This could lead to wasted resources
unless an additional layer of computing power were
Abstract
developed. This layer would not work on a computa-
Metacomputing is the use of computing to study tional problem itself; instead, it would determine the
and design solutions to complex problems. These most efficient method of addressing the problem. In
problems can range from how best to design large- other words, researchers saw the potential for using
scale computer networking systems to how to de- computers in a manner so complicated that only a
termine the most efficient method for performing computer could manage it. This new metacomputing
mathematical operations involving very large num- layer would rest atop the middle computing layer
bers. In essence, metacomputing is computing that works on research tasks. It would ensure that
about computing. Metacomputing makes it possible the middle layer makes the best use of its resources
to perform operations that individual computers, and that it approaches calculations as efficiently as
and even some supercomputers, could not handle possible.
alone. One reason an application may need a meta-
computing layer is the presence of complexities.
Prinicipal Terms Complexities are elements of a computational
problem that make it more difficult to solve. Domain-
domain-dependent complexity: a complexity
dependent complexities arise due to the context of
that results from factors specific to the context in
the computation. For example, when calculating the
which the computational problem is set.
force and direction necessary for an arrow to strike
meta-complexity: a complexity that arises when the
its target, the effects of wind speed and direction
computational analysis of a problem is compounded
would be a domain-dependent complexity. Meta-
by the complex nature of the problem itself.
complexities are those that arise due to the nature of
middle computing: computing that occurs at the
the computing problem rather than its context. An
application tier and involves intensive processing
example of a meta-complexity is a function that has
of data that will subsequently be presented to the
more than one possible solution.
user or another, intervening application.
networking: the use of physical or wireless con-
nections to link together different computers and Metacomputing and the Internet
computer networks so that they can communicate Metacomputing is frequently used to make it pos-
with one another and collaborate on computa- sible to solve complex calculations by networking
tionally intensive tasks. between many different computers. The networked
supercomputer: an extremely powerful com- computers can combine their resources so that each
puter that far outpaces conventional desktop one works on part of the problem. In this way, they
computers. become a virtual supercomputer with greater capa-
ubiquitous computing: an approach to com- bilities than any individual machine. One successful
puting in which computing activity is not iso- example of this is a project carried out by biochem-
lated in a desktop, laptop, or server, but can ists studying the way proteins fold and attach to one
occur everywhere and at any time through the another. This subject is usually studied using com-
use of microprocessors embedded in everyday puter programs that model the proteins’ behavior.
devices. However, these programs consume a lot of time and
computing power. Metacomputing allowed the scien-
Reasons for Metacomputing tists to create a game that users all over the world can
The field of metacomputing arose during the 1980s. play that generates data about protein folding at the
Researchers began to realize that the rapid growth same time. Users try to fit shapes together in different
178
179
Nayeem, Sk. Md. Abu, Jyotirmoy Mukhopadhyay, and Supercomputing. Hershey: Information Science
S. B. Rao, eds. Mathematics and Computing: Current Reference, 2015. Print.
Research and Developments. New Delhi: Narosa, Tripathy, B. K., and D. P. Acharjya, eds. Global Trends
2013. Print. in Intelligent Computing Research and Development.
Segall, Richard S., Jeffrey S. Cook, and Qingyu Hershey: Information Science Reference, 2014.
Zhang, eds. Research and Applications in Global Print.
Microprocessors
Fields of Study or work as a switch to direct electronic signals
within a computer system.
Computer Engineering; System-Level Programming
Basics of Microprocessing
Abstract
Microprocessors are computer chips that contain in-
Microprocessors are part of the hardware of a com- structions and circuitry needed to power all the basic
puter. They consist of electronic circuitry that stores functions of a computer. Most modern micropro-
instructions for the basic operation of the computer cessors consist of a single integrated circuit, which
and processes data from applications and programs. is a set of conducting materials (usually silicon) ar-
Microprocessor technology debuted in the 1970s and ranged on a plate. Microprocessors are designed to
has advanced rapidly into the 2010s. Most modern mi- receive electronic signals and to perform processes
croprocessors use multiple processing “cores.” These on incoming data according to instructions pro-
cores divide processing tasks between them, which al- grammed into the central processing unit (CPU)
lows the computer to handle multiple tasks at a time. and contained in computer memory. They then to
produce output that can direct other computing
functions. In the 2010s, microprocessors are the
Prinicipal Terms
standard for all computing, from handheld devices
central processing unit (CPU): electronic circuitry to supercomputers. Among the modern advance-
that provides instructions for how a computer ments has been development of integrated circuits
handles processes and manages data from applica- with more than one “core.” A core is the circuitry
tions and programs. responsible for calculations and moving data. As of
clock speed: the speed at which a microprocessor 2016, microprocessors may have as many as eighteen
can execute instructions; also called “clock rate.” cores. The technology for adding cores and for inte-
data width: a measure of the amount of data that grating data shared by cores is a key area of develop-
can be transmitted at one time through the com- ment in microprocessor engineering.
puter bus, the specific circuits and wires that carry
data from one part of a computer to another. Microprocessor History and Capacity
micron: a unit of measurement equaling one mil- Before the 1970s, and the invention of the first mi-
lionth of a meter; typically used to measure the croprocessor, computer processing was handled by
width of a core in an optical figure or the line a set of individual computer chips and transistors.
width on a microchip. Transistors are electronic components that either
million instructions per second (MIPS): a unit of amplify or help to direct electronic signals. The first
measurement used to evaluate computer perfor- microprocessor for the home computer market was
mance or the cost of computing resources. the Intel 8080, an 8-bit microprocessor introduced in
transistor: a computing component generally 1974. The number of bits refers to the storage size of
made of silicon that can amplify electronic s ignals each unit of the computer’s memory. From the 1970s
180
Characteristics of
Microprocessors
The small components within
modern microprocessors are often
measured in microns or microme-
ters, a unit equaling one-millionth of
a meter. Microprocessors are usually
measured in line width, which mea-
sures the width of individual circuits.
The earliest microprocessor, the
1971 Intel 4004, had a minimum line
width of 10 microns. Modern micro-
processors can have line width mea-
surements as low as 0.022 microns.
All microprocessors are created
with a basic instruction set. This de-
fines the various instructions that can
be processed within the unit. The
Intel 4004 chip, which was installed
in a basic calculator, provided instruc-
tions for basic addition and subtrac-
tion. Modern microprocessors can
handle a wide variety of calculations.
Different brands and models
Microprocessors contain all the components of a CPU on a single chip; this allows new of microprocessors differ in band-
devices to have higher computing power in a smaller unit. By M.ollivander, CC BY-SA width, which measures how many
3.0 (http://creativecommons.org/licenses/by-sa/3.0), via Wikimedia Commons. bits of data a processor can handle
per second. Microprocessors also
to the 2010s, microprocessors have followed the differ in data width, which measures
same basic design and concept but have increased the amount of data that can be transferred between
processing speed and capability. The standard for two or more components per second. A computer’s
computing in the 1990s and 2000s was the 32-bit mi- bus describes the parts that link the processor to
croprocessor. The first 64-bit processors were intro- other parts and to the computer’s main memory.
duced in the 1990s. They have been slow to spread, The size of a computer’s bus is known as the width.
however, because most basic computing functions do It determines how much data can be transferred
not require 64-bit processing. each second. A computer’s bus has a clock speed,
Computer performance can be measured in mil- measured in megahertz (MHz) or gigahertz (GHz).
lion instructions per second (MIPS). The MIPS All other factors being equal, computers with larger
measurement has been largely replaced by mea- data width and a faster clock speed can transfer data
surements using floating-point operations per faster and thus run faster when completing basic
second (FLOPS) or millions of FLOPS (MFLOPS). processes.
Floating-point operations are specific operations,
such as performing a complete basic calculation. Microprocessor Development
A processor with a 1 gigaFLOP (GFLOP) perfor- Intel cofounder Gordon Moore noted that the ca-
mance rating can perform one billion FLOPS each pacity of computing hardware has doubled every
second. Most modern microprocessors can perform two years since the 1970s, an observation now
10 GFLOPS per second. Specialized computers known as Moore’s law. Microprocessor advance-
can perform in the quadrillions of operations per ment is complicated by several factors, however.
second (petaFLOPS) scale. These factors include the rising cost of producing
181
microprocessors and the fact that the ability to Borkar, Shekhar, and Andrew A. Chien. “The Future
reduce power needs has not grown at the same of Microprocessors.” Communications of the ACM.
pace as processor capacity. Therefore, unless en- ACM, May 2011. Web. 3 Mar. 2016.
gineers can reduce power usage, there is a limit to Delforge, Pierre. “America’s Data Centers Consuming
the size and processing speed of microprocessor and Wasting Growing Amounts of Energy.” NRDC.
technology. Data centers in the United States, Natural Resources Defense Council, 6 Feb. 2015.
for instance, used about 91 billion kilowatt-hours Web. 17 Mar. 2016.
of electricity in 2013. This is equal to the amount McMillan, Robert. “IBM Bets $3B That the Silicon
of electricity generated each year by thirty-four Microchip Is Becoming Obsolete.” Wired. Condé
large coal-burning power plants. Computer engi- Nast, 9 July 2014. Web. 10 Mar. 2016.
neers are exploring ways to address these issues, “Microprocessors: Explore the Curriculum.” Intel.
including alternatives for silicon in the form of Intel Corp., 2015. Web. 11 Mar. 2016.
carbon nanotubes, bioinformatics, and quantum “Microprocessors.” MIT Technology Review. MIT
computing processors. Technology Review, 2016. Web. 11 Mar. 2016.
Wood, Lamont. “The 8080 Chip at 40: What’s Next
—Micah L. Issitt
for the Mighty Microprocessor?” Computerworld.
Computerworld, 8 Jan. 2015. Web. 12 Mar. 2016.
Bibliography
Ambinder, Marc. “What’s Really Limiting Advances
in Computer Tech.” Week. The Week, 2 Sept. 2014.
Web. 4 Mar. 2016.
182
A Revolutionary Technology
3-D printing is a relatively new technology. However,
it has already revolutionized manufacturing. It takes Material engineers can use microscale 3-D printing
its name from traditional computer printers that pro- to develop unique materials for use in a wide range
duce pages of printed images. Regular printers op- of fields, including bioengineering, architecture,
erate by depositing small amounts of ink at precise and electronics. The combination and arrangement
of particular molecules allows engineers to develop
locations on a piece of paper. Instead of ink, a 3-D
materials with the necessary characteristics to fulfill
printer uses a material, such as a polymer, metallic specific needs, such as the polymers used to build the
powder, or even organic material. It builds an object by entry heat shields for NASA. By Alexander Thompson
depositing small amounts of that material in successive and John Lawson, NASA Ames Research Center.
183
other at precise locations. Some materials are melted a liquid mold in a series of tiny pillars. The pillars
before they are deposited. Material extrusion heats are arranged based on software that determines the
polymer filament. The melted plastic material is then shape of the liquids’ flow. Patterned UV light then
extruded through nozzles and deposited in a layer. cuts into the liquids to further shape the stream. The
The materials then harden into place, and another combination of the liquid mold and the UV light pat-
layer is added. With vat photopolymerization, a light- tern allow the creation of highly complex structures
sensitive liquid polymer is printed onto a platform that are just 100 micrometers in size.
within a vat of liquid resin. An ultraviolet (UV) laser Microscale 3-D printing makes it possible to create
then hardens a layer of resin. More liquid polymer is extremely small circuits. This will enable the creation
then added, and the process is repeated. With mate- of new devices, such as “smart clothing” that can
rial jetting, a printer head deposits liquefied plastic sense the wearer’s body temperature and adjust its
or other light-sensitive material onto a platform. The properties based on this information. Microscale 3-D
material is then hardened with UV light. printing may also revolutionize the creation of new
Other methods melt or fuse materials after they medicines. Because drug uptake by cells is shape-
have been deposited. In powder bed fusion, the dependent, the precision of microscale 3-D printing
printer heats a bed of powdered glass, metal, ce- may allow researchers to design custom drugs for
ramic, or plastic until the materials fuse together in specific brain receptors.
the desired locations. Another layer of powder is then
added and fused onto the first. Binder jetting uses a A New Type of “Ink”
printer head to deposit drops of glue-like liquid into Some refer to the build materials used in 3-D printing
a powdered medium. The liquid soaks into and so- as “inks” because they take the place of ink as it is
lidifies the medium. Sheet lamination fuses together used in regular document printers. This can stretch
thin sheets of paper, metal, or plastic with an adhe- the definition of “ink.” Most people think of ink as
sive. The layers are then cut with a laser into the de- either the liquid in a pen or the toner of a computer
sired shape. In directed energy deposition, a metal printer. In microscale 3-D printing, the ink might
wire or powder is deposited in thin layers before be human cells used to create an organ or metallic
being melted with a laser. powder that will be fused into tiny circuits.
The method used depends on the physical proper- —Scott Zimmer, JD
ties of the material being printed. Metal alloys, for ex-
ample, cannot easily be liquefied for vat polymeriza-
tion, material jetting, or material extrusion. Instead, Bibliography
they are printed using binder jetting, powder bed fu- Bernier, Samuel N., Bertier Luyt, Tatiana Reinhard,
sion, or sheet lamination. and Carl Bass. Design for 3D Printing: Scanning,
Creating, Editing, Remixing, and Making in Three
Microscale Methods Dimensions. San Francisco: Maker Media, 2014.
Microscale 3-D printing requires more exact methods Print.
to create objects that are just a few micrometers wide. France, Anna Kaziunas, comp. Make: 3D Printing—
Microscopic objects require tiny droplets of materials The Essential Guide to 3D Printers. Sebastopol: Maker
and precise locations of deposition. One microscale Media, 2013. Print.
3-D printing technique is optical lithography. This Horvath, Joan. Mastering 3D Printing: Modeling,
technique uses light to create patterns in a photosen- Printing, and Prototyping with Reprap- Style 3D
sitive resist, where material is then deposited. Optical Printers. Berkeley: Apress, 2014. Print.
transient liquid molding (TLM) uses UV light pat- Hoskins, Stephen. 3D Printing for Artists, Designers and
terns and a custom flow of liquid polymer to create Makers. London: Bloomsbury, 2013. Print.
objects that are smaller than the width of a human Lipson, Hod, and Melba Kurman. Fabricated: The New
hair. Optical TLM combines a liquid polymer, which World of 3D Printing. Indianapolis: Wiley, 2013.
will form the structure of the printed object, with Print.
184
Mobile apps
Fields of Study system software includes its operating system (OS).
The OS supports all other programs that run on
Applications; Mobile Platforms
that device, including apps. In addition to the OS,
smartphones and tablets come with a variety of prein-
Abstract
stalled utility programs, or utilities, that manage basic
Mobile apps are programs designed to run on smart- functions. Examples of utilities include a clock and a
phones, tablets, and other mobile devices. These apps calendar, photo storage, security programs, and clip-
usually perform a specific task, such as reporting the board managers. While utilities are not essential to
weather forecast or displaying maps for navigation. the functionality of the OS, they perform key tasks
Mobile devices have special requirements because that support other programs.
of their small screens and limited input options. However, the real power of mobile devices has come
Furthermore, a touch screen is typically the only way to from the huge assortment of mobile apps they can
enter information into a mobile device. Programmers run. The app stores for various mobile devices con-
need special knowledge to understand the mobile tain hundreds of thousands of different apps to down-
platform for which they wish to create apps. load. Each app has been designed with different user
needs in mind. Many are games of one sort or another.
Prinicipal Terms There are also vast numbers of apps for every pursuit
imaginable, including video chat, navigation, social
applications: programs that perform specific func-
networking, file sharing and storage, and banking.
tions that are not essential to the operation of the
Developers of mobile apps use various approaches
computer or mobile device; often called “apps.”
to design their software. In some cases, an app is little
emulators: programs that mimic the functionality
more than a mobile website that has been optimized
of a mobile device and are used to test apps under
for use with small touch screens. For example, the
development.
Facebook app provides essentially the same func-
mobile website: a website that has been opti-
tionality as its website, although it can be integrated
mized for use on mobile devices, typically fea-
with the device’s photo storage for easier uploading.
turing a simplified interface designed for touch
Other mobile apps are developed specifically for the
screens.
mobile devices they run on. Programmers must pro-
platform: the hardware and system software of a
gram their apps for a specific mobile platform. App
mobile device on which apps run.
developers usually use a special software develop-
system software: the operating system that allows
ment kit and an emulator for testing the app on a vir-
programs on a mobile device to function.
tual version of a mobile device. Emulators provide a
utility programs: apps that perform basic func-
way of easily testing mobile apps. Emulators generate
tions on a computer or mobile device such as dis-
detailed output as the app runs, so the developer can
playing the time or checking for available network
use this data to diagnose problems with the app.
connections.
The App Economy
Types of Mobile Software
Mobile apps have evolved into a multibillion-dollar
Mobile applications, or apps, are computer programs
business. Before the advent of mobile devices, soft-
designed specifically to run on smartphones, tablets,
ware was developed for use on personal computers
and other mobile devices. Apps must be designed for
and a software package often sold for hundreds of
a specific platform. A mobile platform is the hard-
dollars. The mobile app marketplace has adopted a
ware and system software on which a mobile device
very different model. Instead of creating apps that
operates. Some of the most widely used mobile plat-
cost a large amount of money and try to provide a
forms include Google’s Android, Apple’s iOS, and
wide range of functions, the goal is to create an app
Microsoft’s Windows. Mobile devices support a va-
that does one thing well and to charge a small amount
riety of software. At the most basic level, a platform’s
of money. Many apps are free to download, and paid
185
NATIVE HYBRID
HTML5
Native mobile apps and hybrid apps offer some features and capabilities unavailable with standard web programming, and they offer
faster connectivity than is available with traditional computer software. EBSCO illustration.
apps are typically priced anywhere from ninety-nine stores typically vet apps to make sure they do not con-
cents to a few dollars. Despite such low price points, tain malware, violate intellectual property, or make
developers of successful apps can still earn large sums false advertising claims. App developers can earn rev-
of money. This is in part due to the large numbers of enue from the download fee, in-app advertisements,
smartphone and tablet users. and in-app purchases. There have been several devel-
Mobile apps also have a low cost of distribution. opers who have produced an unexpectedly popular
In the past, software was sold on physical media such app, catapulting them to fame and wealth.
as floppy disks or CD-ROMs. These had to be pack-
aged and shipped to retailers at the software devel- Mobile Apps and Social Change
oper’s expense. With mobile apps, there are no such Mobile apps can do much more than entertain and
overhead costs because apps are stored online by the distract. For example, Twitter is a microblogging app
platform’s app store and then downloaded by users. that allows users to post short messages and read up-
Aside from the time and effort of developing an app, dates from others. Twitter has played a significant
the only other financial cost to the developer is an an- role in social movements such as the Arab Spring of
nual registration fee to the platform’s app store and a 2011. Because it relies on telecommunications tech-
percentage of revenue claimed by the platform. App nology that continues to function even when there
186
are disruptions in other media, the Twitter app has Glaser, J. D. Secure Development for Mobile Apps: How to
allowed people to communicate even during major Design and Code Secure Mobile Applications with PHP
disasters and political upheavals. Other apps allow and JavaScript. Boca Raton: CRC, 2015. Print.
users to report and pinpoint environmental damage Iversen, Jakob, and Michael Eierman. Learning Mobile
or potholes for government agencies to fix. App Development: A Hands-On Guide to Building
Apps with iOS and Android. Upper Saddle River:
Platform Lock Addison-Wesley, 2014. Print.
Mobile apps must be designed for a particular mo- Miller, Charles, and Aaron Doering. The New
bile platform. Sometimes, a developer will make a Landscape of Mobile Learning: Redesigning Education
version of an app for each major platform. In other in an App-Based World. New York: Routledge, 2014.
cases, however, developers only create an app to run Print.
on a single platform. This leaves users of other mo- Salz, Peggy Anne, and Jennifer Moranz. The Everything
bile platforms unable to use the app. In the case of Guide to Mobile Apps: A Practical Guide to Affordable
popular apps, this can cause frustration among those Mobile App Development for Your Business. Avon:
who want to be able to use whatever apps they want Adams Media, 2013. Print.
on their platform of choice. Takahashi, Dean. “The App Economy Could Double
to $101 Billion by 2020.” VB. Venture Beat, 10 Feb.
—Scott Zimmer, JD
2016. Web. 11 Mar. 2016.
Bibliography
Banga, Cameron, and Josh Weinhold. Essential Mobile
Interaction Design: Perfecting Interface Design in Mobile
Apps. Upper Saddle River: Addison-Wesley, 2014.
Print.
187
Operating systems on mobile devices have multiple limitations; however, the data input hardware and
software can vary greatly, even within one device. One requirement of a good mobile operating system
is that it be able to efficiently respond to a variety of data input methods. EBSCO illustration.
188
iOS in order to give users root access to the iOS. security to help make sure that the private data they
Jailbreaking gives users greater control over their contain can only be accessed by an authorized user. For
mobile devices. example, Apple has integrated fingerprint recognition
Google released a mobile OS called Android in into its iOS and newer versions of the iPhone.
2008. Unlike Apple’s iOS, Android’s source code is Both Android and iOS now include features that
open source. Open-source software is created using help a user to locate and recover a mobile device that
publicly available source code. The Android Open has been lost or stolen. Mobile owners can go online
Source Project (AOSP) develops modified versions to geographically locate the device using its GPS data.
of the Android OS using the open-source code. The owner can also remotely lock the device to prevent
Android’s status as an open system means there is no its use by anyone else. It can even cause the device to
need to jailbreak. Android quickly became the domi- emit a loud alarm to alert those nearby to its presence.
nant OS worldwide. However, Apple’s iOS accounts
for slightly more than half of mobile OS market in Impact
the United States and Canada. Mobile OSs and the apps that run on them have revo-
lutionized the way in which people conduct their daily
Mobile Features lives. Thanks to mobile OSs, users can track personal
Mobile OSs share many similarities with desktop and health data, transfer funds, connect with social media,
laptop OSs. However, mobile OSs are more closely receive GPS and weather data, and even produce and
integrated with touch-screen technology. Mobile edit photo and audiovisual files, among other activities.
OSs also typically feature Bluetooth and Wi-Fi con- As the popularity of mobile devices (and, by extension,
nectivity, global positioning system (GPS) naviga- mobile OSs) has increased, many have questioned the
tion, and speech recognition. Furthermore, many future of the PC. For now, PCs and desktop OSs con-
new smartphones are equipped with hardware that tinue to dominant the business sector, however.
supports near-field communication (NFC). NFC al-
—Scott Zimmer, JD
lows two devices to exchange information when they
are placed close to one another. NFC uses radio fre-
quency identification (RFID) technology to enable
wireless data transfers. A major benefit of NFC is Bibliography
its low power usage, which is particularly critical to Collins, Lauren, and Scott Ellis. Mobile Devices: Tools
mobile devices. Mobile technology such as NFC fa- and Technologies. Boca Raton: CRC, 2015. Print.
cilitates numerous business transactions, including Drake, Joshua J. Android Hacker’s Handbook.
mobile payment systems at the point of sale. Indianapolis: Wiley, 2014. Print.
Although there remain some significant differ- Dutson, Phil. Responsive Mobile Design: Designing for
ences between desktop OSs and mobile OSs, they are Every Device. Upper Saddle River: Addison-Wesley,
rapidly converging. Cloud computing enables users to 2015. Print.
share and sync data across devices, further narrowing Elenkov, Nikolay. Android Security Internals: An In-
the differences between smartphones and PCs. Depth Guide to Android’s Security Architecture. San
Francisco: No Starch, 2015. Print.
Security Concerns Firtman, Maximiliano R. Programming the Mobile Web.
Features such as NFC and Bluetooth come with privacy Sebastopol: O’Reilly Media, 2013. Print.
and security concerns. Many of the mobile OS fea- Neuburg, Matt. Programming iOS 8: Dive Deep into
tures that make smartphones so convenient also make Views, View Controllers, and Frameworks. Sebastopol:
them vulnerable to access by unauthorized users. For O’Reilly Media, 2014. Print.
example, hackers have been able to sweep up many Ravindranath, Mohana. “PCs Lumber towards the
users’ private information by scanning large crowds for Technological Graveyard.” Guardian. Guardian
mobile devices with unsecured Bluetooth connections. News and Media, 11 Feb. 2014. Web. 10 Mar. 2016.
The ability to capture private data so easily creates Tabini, Marco. “Hidden Magic: A Look at the Secret
major vulnerabilities for identity theft. To combat this Operating System inside the iPhone.” MacWorld. IDG
threat, mobile OSs have incorporated various forms of Consumer & SMB, 20 Dec. 2013. Web. 9 Mar. 2016.
189
Molecular Computers
Fields of Study Adelman’s Experiment
In 1994, L. M. Adelman used standard molecular bi-
Computer Science; Computer Engineering;
ology techniques to find a Hamiltonian path through
Information Technology
a map of 7 interconnected vertices. A Hamiltonian
path is one, which passes through each vertex only
Summary
once and only once. While the actual problem solved
The DNA structure is highly amenable to informa-
might have required a few seconds thought by an in-
tion storage. A single strand of normally helical
sightful high school student, the Hamiltonian path
DNA, an oligomer, containing 20 base pairs, can
problem is one that mathematicians consider NP
exist in 420 or roughly 1.2 trillion, distinctly different
complete, one for which the solution time grows
arrangements. Synthesis of a given oligomer is not
faster than any polynomial in the number of vertices.
difficult and has been automated. While other mol-
Given a map with a hundreds of cities connected by a
ecules had been used as computational substrates,
network of roads, some one way, it could take years to
molecular biologist Leonard Adelman gained con-
determine if a Hamiltonian path actually exists.
siderable notoriety by demonstrating how a classic
Adelman’s solution involved treating the road map
mathematical problem could be formulated as a
of one-way and two-way streets as a directed graph G
bonding problem for a small set of DNA oligomers.
of n vertices with a designated beginning and end.
Adelman represented each vertex of his graph by a
Principal Terms
20-mer chosen at random. These could be synthe-
Hamiltonian path problem: one of the classic NP- sized by well-established techniques and amplified
complete problems for which the time of solu- using the polymerase chain reaction. Possible paths
tion grows faster than any power of the number if representing an allowed connection between vertex
points involved. i and vertex j would be represented by the comple-
ligase: an enzyme that facilitates bond formation ment to the last 10 sites in i and the first 10 in j.
between two molecular fragments. Also called a
1. Generate a large number of paths through G at
polymerase.
random. This involved synthesizing oligomers to rep-
NP-complete problem: The class of problems for
resent all allowed vertices and allowing them to pair
which the solution time grows faster than a poly-
with each other
nomial of the number of points involved.
2. Remove all paths that do not begin at the des-
Oligomer: amodest length polymer of DNA, about
ignated beginning or end at the designated end.
20 base pairs long.
This was easily done using standard biochemical
polymerase chain reaction: the Nobel-prize win-
techniques.
ning discovery by Cary Mullis that thermal cycling
3. Remove all paths that do not involve exactly n ver-
can produce numerous copies of a single DNA
tices. This is easily accomplished using gel electro-
oligomer; used in DNA fingerprinting as well as
phoresis for which the mobility is inversely propor-
DNA computing.
tional to the molecular mass.
SAT problem: determining whether a single as-
4. For each vertex v, remove all paths that do not in-
signment of true and false values to the k Boolean
clude it
values in a one or more statements yields a unique
solution. If any DNA is to be found remaining it represents
thermal cycling: bringing a sample repeatedly a Hamiltonian path.
above the dissociation temperature so that the Adelman’s experiment as described in the journal
strands dissociate, and then below that tempera- Science in November 1994 drew a great deal of atten-
ture so that replicates form tion. A conference followed in April 1994 at which
Watson-Crick base-pairing: the pairing of adenine Leonard Adelman was the keynote speaker. One
and thymine and that of cytosine with guanine in of the most significant immediate extensions of
H-bonded complexes in the DNA double helix Adelman’s approach was proposed by R. J. Lipton
190
at the same conference, who showed that the SAT all the molecules for which the first clause is not
problem could also be solved by manipulating DNA. net, the selectively removing all molecules for which
the second clause is not met, and so on. When the
The SAT problem number of molecules remaining becomes two small
The SAT problem involves finding a set of truth values the polymerase chain reaction can be run. If at the
that satisfies a formula in the propositional calculus, end of the sequence of reactions the tube becomes
in which Boolean variables appear connected by ne- empty, there is no solution to the SAT problem.
gation, disjunction or conjunction. For instance. We see thus that a great many graph theoretic
questions can be answered, in principle at least by
a = (x1.OR..NOT.x2ORx3).AND.(x2.OR.x3).AND.
DNA computation. There will of course be practical
(x1.OR.x3).AND..NOT.x3
difficulties as the size of problems increases, associ-
is only satisfied if x1 =x2=true, and x3 is false. ated with the statistics of binding, but the true poten-
tial of DNA computing has yet to be reached.
For a propositional formula with k variables we
construct a graph with 3k +1 points. The vk (k=0,… —Donald Franceschetti, PhD
,k) are assigned to points on the x axis, points to the
right and below the axis are assigned to ak1 and the Bibliography
points above the axis are assigned to the ako . Then a Adelman, L. M. Molecular computation of solutions
path from v0 to vk going above or below the like indi- to combinatorial problems, Science 226, 1021-1024
cates a truth assignment for all the k variables. (1994).
The first step in Lipton’s method consists in gener- Calude, C. S., and Gheorge Paun, Computing with Cells
ating all paths from v1 to vk. and Atoms. (New York: Taylor & Francis, 2001. Print.
In analogy to the previous section, assign each on Lipton, R. J., and E. B. Baum, eds., DNA Based
axis vertex to a single stranded oligomer and to each Computers, DIMACS Series in Discrete
ako and ak1. Then a path vi-1aijvi encodes the truth value Mathematics, and Theoretical Computer Science,
of xi. Lipton’s method begins with a test tube con- 27, American -Mathematical Society (1995).
taining all possible paths, then selectively removing
191
Motherboards
Fields of Study unit (CPU) and the system memory, required one or
more PCBs to house its various parts. With the advent
Computer Engineering; Information Technology
and refinement of microprocessors, computer com-
ponents rapidly shrank in size. While a CPU in the
Abstract
late 1960s consisted of numerous integrated circuit
The motherboard is the main printed circuit board (IC) chips attached to PCBs, by 1971 Intel had pro-
inside a computer. It has two main functions: to sup- duced a CPU that fit on a single chip. Other essential
port other computer components, such as random and peripheral components could also be housed in
access memory (RAM), video cards, sound cards, and a single chip each. As a result, the motherboard could
other devices; and to allow these devices to communi- support a greater number of components, even as it
cate with other parts of the computer by using the cir- too was reduced in size. Sockets were added to sup-
cuits etched into the motherboard, which are linked port more peripheral functions, such as mouse, key-
to the slots holding the various components. board, and audio support.
In addition to being more cost effective, this con-
Prinicipal Terms solidation of functions helped make computers run
faster. Sending information from point to point on a
core voltage: the amount of power delivered to the
computer takes time. It is much faster to send infor-
processing unit of a computer from the power supply.
mation directly from the motherboard to a periph-
crosstalk: interference of the signals on one cir-
eral device than it is to send it from the CPU PCB
cuit with the signals on another, caused by the two
across the backplane to the memory PCB, and then
circuits being too close together.
from there to the device.
printed circuit board: a flat copper sheet shielded
by fiberglass insulation in which numerous lines
Motherboard Design
have been etched and holes have been punched,
Designing a motherboard is quite challenging.
allowing various electronic components to be con-
The main issues arise from the presence of a large
nected and to communicate with one another and
number of very small circuits in a relatively small
with external components via the exposed copper
area. One of the first considerations is how best to
traces.
arrange components on the motherboard’s various
trace impedance: a measure of the inherent re-
layers. A typical PCB consists of sheets of copper
sistance to electrical signals passing through the
separated by sheets of fiberglass. The fiberglass
traces etched on a circuit board.
insulates the copper layers from each other. Most
tuning: the process of making minute adjustments
motherboards consist of six to twelve layers, though
to a computer’s settings in order to improve its
more or fewer layers are also possible. Certain layers
performance.
typically have specific functions. The outer layers
are signal layers, while other layers carry voltage,
Evolution of Motherboards
ground returns, or carry memory, processor, and
The motherboard of a computer is a multilayered
input/output data.
printed circuit board (PCB) that supports all of the
Lines etched in the fiberglass insulating each
computer’s other components, which are secondary
layer allow the familiar copper lines, or traces, to
to its functions. In other words, it is like the “mother”
show through. These traces conduct the electrical
of other, lesser circuit boards. It is connected, either di-
signals. Most motherboard designers use computer
rectly or indirectly, to every other part of the computer.
simulations to determine the optimal length, width,
In the early days of computers, motherboards con-
and route of the individual traces. For example, a
sisted of several PCBs connected either by wires or
motherboard will have a target trace impedance
by being plugged into a backplane (a set of intercon-
value, often fifty or sixty ohms, which must be kept
nected sockets mounted on a frame). Each necessary
constant. Widening a trace will decrease impedance,
computer component, such as the central processing
while narrowing it will make it greater. Another issue
192
Form Factor
Though somewhat standardized, moth-
erboards still come in different sizes and
shapes. The main distinction is between
motherboards for laptops and those for
desktops. Motherboards designed for one
of these categories generally will not fit into
the other category. Most large desktop com-
puter cases have enough room inside for
just about any model of desktop mother-
board, though smaller motherboards leave
more space for peripherals to be added
later.
BIOS
A motherboard will have some basic soft-
ware embedded in a read-only memory
(ROM) chip. This software is called the
BIOS, which stands for “basic input/output
system.” When the power button is pressed,
the BIOS tells the computer what devices
to activate in order to locate the operating
system and begin running it. If a computer
A motherboard is the main printed circuit board (PCB) of a computer. Also
malfunctions, it may be necessary to use the
known as a logic board or mainboard, it connects the CPU to memory and to pe- BIOS to change how the motherboard be-
ripherals. Often it includes hard drives, sound cards, network cards, video cards, haves while the system starts up.
and other components. By .kkursor, public domain, via Wikimedia Commons.
—Scott Zimmer, JD
193
Mueller, Scott. Upgrading and Repairing PCs. 22nd ed. White, Ron. How Computers Work: The Evolution of
Indianapolis: Que, 2015. Print. Technology. Illus. Tim Downs. 10th ed. Indianapolis:
Roberts, Richard M. Computer Service and Repair. 4th Que, 2015. Print.
ed. Tinley Park: Goodheart, 2015. Print.
Communications
Facility
Symmetric
Single Multiprocessing
Processor
CPU
CPU CPU CPU CPU CPU CPU
Memory
Memory Memory Memory
Multiprocessing operating systems can handle tasks more quickly, as each CPU that becomes available can access the shared memory to
complete the task at hand so all tasks can be completed the most efficiently. EBSCO illustration.
195
once they conclude. In contrast, asymmetric multi- tailored to take advantage of them, computers would
processing occurs when a computer assigns system not be able to keep up.
maintenance tasks to some types of processors and
—Scott Zimmer, JD
application tasks to others. Because the type of task
assigned to each processor is not the same, they are
out of symmetry. SMP has become more common- Bibliography
place because it is usually more efficient. Garrido, José M., Richard Schlesinger, and Kenneth
E. Hoganson. Principles of Modern Operating Systems.
Multitasking 2nd ed. Burlington: Jones, 2013. Print.
The advent of multiprocessing OSs has had a major Gonzalez, Teofilo, and Jorge Díaz-Herrera, eds.
influence on how people perform their work. Computing Handbook: Computer Science and Software
Multiprocessing OSs can execute more than one pro- Engineering. 3rd ed. Boca Raton: CRC, 2014. Print.
gram at a time. This enables computers to use more Sandberg, Bobbi. Networking: The Complete Reference.
user-friendly interfaces based on graphical represen- 3rd ed. New York: McGraw, 2015. Print.
tations of input and output. It allows users with rela- Silberschatz, Abraham, Peter B. Galvin, and
tively little training to perform computing tasks that Greg Gagne. Operating Systems Concepts. 9th ed.
once were highly complex. They can even perform Hoboken: Wiley, 2012. Print.
many such tasks at once. Stallings, William. Operating Systems: Internals and
Multiprocessing OSs, though once a major inno- Design Principles. 8th ed. Boston: Pearson, 2014.
vation, have become the norm rather than the ex- Print.
ception. As each generation of computers must run Tanenbaum, Andrew S., and Herbert Bos. Modern
more and more complex applications, the processing Operating Systems. 4th ed. Boston: Pearson, 2014.
workload becomes greater and greater. Without the Print.
advantages offered by multiple processors and OSs
Operating System
CPU
Multitasking operating systems use a single CPU to work on a number of tasks. The operating system deter-
mines which task the CPU will work on at any given time, pausing tasks as needed, so that all tasks are com-
pleted as efficiently as possible. EBSCO illustration.
usually on a schedule so that switches between In the early days of computer science, when com-
tasks occur at precise time intervals. puters were huge machines requiring a lot of effort
time-sharing: the use of a single computing re- to maintain, researchers observed that it wasted time
source by multiple users at the same time, made for a computer to be used by only one person at once.
possible by the computer’s ability to switch rapidly This was because the typical workflow of a computer
between users and their needs. operator was to submit a task requiring processing
time, wait for the process to complete, and then re-
time-sharing and multitasking ceive the output. After receiving the output, the user
Multitasking operating systems (OSs) are based on evaluated it and prepared the next set of inputs. This
the idea of time-sharing. Multitasking OSs do not ac- time between tasks was wasted as the computer was
tually perform multiple tasks at the same exact time. idle instead of processing. The solution was to allow
A particular central processing unit (CPU) can only multiple users to interact with the computer. That
do one thing at any given moment. Instead, they give way, while the computer was waiting for a response
the appearance of multitasking by switching back from one user, it could switch over to another user
and forth between separate tasks for intervals of time who was ready to proceed. This presented some prob-
too small for humans to perceive. This makes it seem lems in the early days of computing. Computers were
to the user that multiple tasks are being carried out not robust enough to easily store all of a user’s con-
at once. text information (a description of the current state
197
of the user’s tasks and progress). However, with the this is that some processes have more of an impact
passage of time and the use of multiprocessing com- on the user’s real-time experience than others do.
puters, this changed. If a computer were busy keeping track of the time
and preparing a system backup when a user closed
Cooperation and Preemption an application window, the OS would prioritize the
Multitasking OSs can take a variety of forms. One tasks associated with closing the window ahead of
difference is the way in which they handle the con- the others. Doing this gives the user the impres-
text switch between different users and tasks. A mul- sion that the computer is operating smoothly. This
titasking OS must have some way of deciding when would not be the case if the window being closed
is the appropriate time to make a context switch. were to freeze in place until the conclusion of the
The switch requires processing resources in order backup process.
to be correctly executed, and switching contexts at Multitasking places heavy demands on a com-
random would reduce the system’s predictability puter. The computer must store enough informa-
and efficiency over time. One method of deciding tion about each process to be able to quickly return
the timing of context switching is cooperative multi- to the task where it left off. As applications have
tasking. With this method, the OS will not interrupt grown more complex and more reliant on multi-
a process with a context switch while the process tasking, hardware has struggled to keep pace. Each
is running but will instead wait for the process to year, computers are brought to market with more
finish. memory, faster processors, and other hardware up-
An alternative approach is preemptive multi- grades necessary for computers to do more work in
tasking. Unlike cooperative multitasking, preemp- less time.
tive multitasking does not wait for a process to finish
—Scott Zimmer, JD
before initiating a context switch. Instead, a mul-
titasking OS using preemption will automatically
switch between processes at defined intervals. This Bibliography
allocates resources evenly among all processes. This Ben-Ari, M. Principles of Concurrent and Distributed
can be more resource intensive because it requires Programming. 2nd ed. New York: Addison, 2006.
the system to store information about each process Print.
state. That way, the process can smoothly resume Hart, Archibald D., and Sylvia Hart Frejd. The Digital
when its turn comes round again. Invasion: How Technology Is Shaping You and Your
Sometimes, other events can intrude on the OS’s Relationships. Grand Rapids: Baker, 2013. Print.
time-sharing. An example is hardware interruption. Kaptelinin, Victor, and Mary P. Czerwinski, eds.
This occurs when a device attached to the computer Beyond the Desktop Metaphor: Designing Integrated
(such as a printer, scanner, or disk drive) requires the Digital Work Environments. Cambridge: MIT P,
attention of the OS. It sends an interrupt signal to the 2007. Print.
CPU. This might occur when a printer experiences a Lee, John D., and Alex Kirlik, eds. The Oxford
paper jam, for instance. It would interrupt the com- Handbook of Cognitive Engineering. New York:
puter’s multitasking in order to signal the computer Oxford UP, 2013. Print.
to display an error message to the user. Sinnen, Oliver. Task Scheduling for Parallel Systems.
Hoboken: Wiley, 2007. Print.
Prioritizing Processes Walker, Henry M. The Tao of Computing. 2nd ed. Boca
Multitasking OSs must often assign different pri- Raton: CRC, 2013. Print.
ority levels to different processes. One reason for
198
199
CPU CPU
200
Multitouch displays
Fields of Study the surface; this distortion is measured and used
to determine the location of the touch.
Software Engineering; Information Technology;
resistive touchscreens: touchscreens that can lo-
Mobile Platforms
cate the user’s touch because they are made of
several layers of conductive material separated by
Abstract
small spaces; when the user touches the screen,
Devices with multitouch displays allow a user to touch the layers touch each other and complete a circuit.
a screen to enter commands and data. Traditional surface capacitive technology: a glass screen
touchscreens could only respond to a single touch, coated with an electrically conductive film that
as when a user touches a button on the screen. draws current across the screen when it is touched;
Multitouch displays can interpret touches from more the flow of current is measured in order to deter-
than one conductive surface, such as two or more mine the location of the touch.
fingers, allowing for a greater range of inputs and
responses. Innovative Touchscreen Technology
Multitouch displays are an innovation in computer
Prinicipal Terms input technology. Input technology takes several
forms. Users can enter information into a computer
force-sensing touch technology: touch display that
using a keyboard. They type commands that the com-
can sense the location of the touch as well as the
puter executes. Users can also move a mouse to con-
amount of pressure the user applies, allowing for a
trol the movement of a cursor on the screen. More re-
wider variety of system responses to the input.
cently, touchscreens began to be used. Touchscreens
gestures: combinations of finger movements used
display functions that users can activate by touching
to interact with multitouch displays in order to ac-
graphics on the screen. Multitouch displays take this
complish various tasks. Examples include tapping
capability a step further. They allow users to touch the
the finger on the screen, double-tapping, and
screen with more than one finger at once. Users can
swiping the finger along the screen.
combine touch and gestures to issue commands to
optical touchscreens: touchscreens that use op-
the computer. For example, if a user wished to move a
tical sensors to locate the point where the user
photo on a multitouch display screen, the user could
touches before physical contact with the screen
touch the screen and slide the photo across it, just
has been made.
as if they were sliding a piece of paper across a table.
projected capacitive touch: technology that uses
A multitouch display senses the user’s touches and
layers of glass etched with a grid of conductive
movement and determines how the image should ap-
material that allows for the distortion of voltage
pear to move.
flowing through the grid when the user touches
201
202
203
204
users will lose their data and it saves time and money Holcombe, Jane, and Charles Holcombe. Survey of
for the organization. Operating Systems. New York: McGraw, 2015. Print.
Silberschatz, Abraham, Peter B. Galvin, and Greg
—Scott Zimmer, JD
Gagne. Operating System Concepts Essentials. 2nd ed.
Wiley, 2014. Print.
Bibliography Stallings, William. Operating Systems: Internals and
Anderson, Thomas, and Michael Dahlin. Operating Design Principles. Boston: Pearson, 2015. Print.
Systems: Principles and Practice. West Lake Hills: Tanenbaum, Andrew S. Modern Operating Systems.
Recursive, 2014. Print. Boston: Pearson, 2015. Print.
Garrido, José M, Richard Schlesinger, and Kenneth
E. Hoganson. Principles of Modern Operating Systems.
Burlington: Jones, 2013. Print.
205
206
Why It’s So Hard For Computers to something you actually want to see, with various de-
Understand Us grees of success. Other types of text classification tech-
Humans learn and use language in a way that is difficult niques organize, for example, news stories by topics,
for computers to understand. As a simple example, here such as sports or headlines. There are text classifica-
is a sentence that might mean different things: “Baby swal- tion programs, called author attribution, that are so
lows fly.” Is “baby” a noun or an adjective? Is “swallows” sophisticated that they can determine who wrote the
a verb or a noun? Is “fly” a noun or a verb? Depending text based on the style of writing, word frequency,
on the context of the conversation, a human is likely to vocabulary richness, phrase structure, and sentence
understand this ambiguous sentence. However, a com- length. Some people have used a program like this to
puter, without any anthropomorphic understanding, is determine, for example, whether Shakespeare really
not likely to understand the linguistic structure. wrote all of the plays attributed to him.
Computer programmers have made great strides Conversational agents are systems that attempt
in this field. They have combined the linguistic fields to have a conversation with a human. You may have
of semantics and syntax with powerful computer pro- seen this in customer service situations, where it is
grams using neural network processes that “learn” often called a “chatbot.” You may not recognize right
how to look for the same kinds of signals humans look at first that you are not talking to a human, but the
for to create meaning. What words are surrounding program often gives itself away—eventually you re-
the words we want to understand? In our example alize that you are not chatting with a human based on
above, if “birds” are mentioned anywhere around an unpredictable response in the dialogue.
the phrase, the computer program can “understand”
that this sentence is talking about small birds that fly. Natural Language Processing in
If “insect” or “child” is mentioned anywhere around Everyday Applications
the sentence, the computer can “understand” that It is almost impossible to imagine a world without
this sentence means that a small child ate an insect. computers translating one language into another.
This is a very simple example that doesn’t really give Programs like Google Translate exist for translating
the scope of the power behind computer programs nearly any language into nearly any other language.
that perform natural language processing but is easy Even FaceBook has a “translate” feature where if your
to understand. friends type in Spanish, you can read it in English. As
you have probably noticed, it’s not perfect, but it’s
generally pretty close. This kind of translation works
Ways Natural Language Processing
best in fields or with text where the vocabulary is well
Works
known and there are few idioms used. For example,
Programmers use a variety of techniques to help ma-
a machine translation of a technical manual could
chines understand natural language. For example,
work well, but a translation of a novel or short story is
automatic summarization consists of two techniques,
often almost comical.
extraction or abstraction. Extraction is a technique
Natural language processing as voice recognition
that attempts to extract the most important segments
is also everywhere. The iPhone feature “Siri” takes a
of the text and make a summary list of it. Abstraction,
question that you ask and makes enough sense of it
which is much more complex, involves writing a sum-
to be able to answer your question adequately most
mary of the information.
of the time. You can speak to your phone and ask it
Sentiment analysis tries to identify the emotions
to call someone for you or give you directions to get
conveyed in a text. For example, on a trip review site, a
somewhere. Other applications are when your email
program would try to identify whether a review was pos-
recognizes an event and suggests you add it to your
itive or negative based on the words used in the review,
calendar (called information extraction). These
such as “liked,” “enjoyed,” “unhappy,” or “problem.”
types of features seemed like science fiction at one
Text classification is a way to assign predefined
time but are now part of our everyday lives.
categories to a text. For example, your email spam
detector determines whether a message is spam or —Marianne Moss Madsen, MS
207
Router Router
INTERNET
Switch
Switches are built into computer circuitry and systems to augment the signal flow throughout the system. The arrangement of switches and
the criteria that open and close them will determine what components of the system are used. EBSCO illustration.
209
Communication within and between computer to send a request to the server containing
Networks the weather data. The request is broken down into
The power of the Internet is due in part to the ro- multiple packets of data. Packets are transmitted be-
bust performance of packet-switched networks and tween nodes on the local network until they reach
in part to the fact that it is essentially a network made the gateway. They then travel out into the Internet,
up of other networks. The fact that networks can be where they eventually reach their destination and are
connected to each other has allowed the Internet to reassembled. The response is sent from the server
grow at a phenomenal rate. Several different types of back to the local user in the same way.
hardware are used to make this happen. Understanding the nature and function of routing
When an organization decides to build its own and switches is important for a number of reasons.
network, it uses a switch to connect the different de- Among the most important is that it helps people
vices that will use the network. In effect, the switch understand the mechanics of protecting their com-
creates the network. In many cases, an organization puters from hackers, viruses, and other dangers
then divides its internal network into smaller sub- found on the Internet.
networks, or “subnets.” This is done when groups
—Scott Zimmer, JD
of computers need to communicate often with each
other but only rarely with other computers in the
organization. It is more efficient to set such groups Bibliography
apart so that the subnet’s communications do not Agrawal, Manish. Business Data Communications.
compete with other traffic on the network. Different Hoboken: Wiley, 2011. Print.
subnets are connected to one another through a net- Comer, Douglas E. Computer Networks and Internets.
work bridge. A bridge can also be used to connect 6th ed. Boston: Pearson, 2015. Print.
separate networks. Elahi, Ata, and Mehran Elahi. Data, Network, and
In order to communicate outside of the organiza- Internet Communications Technology. Clifton Park:
tion, a local network must be connected to the rest Thomson, 2006. Print.
of the Internet. This is done by configuring one or Kurose, James F., and Keith W. Ross. Computer
more gateways, typically using a piece of hardware Networking: A Top-Down Approach. 6th ed. Boston:
called a “router.” Making this connection can leave Pearson, 2013. Print.
the local network vulnerable to external attack. To Mir, Nader F. Computer and Communication Networks.
prevent this, a common practice is to set up a firewall 2nd ed. Upper Saddle River: Prentice, 2015.
on the gateway to filter out suspicious activity, such as Print.
hackers probing the network to see if it is vulnerable. Mueller, Scott. Upgrading and Repairing PCs. 22nd ed.
Indianapolis: Que, 2015. Print.
Internet Access Serpanos, Dimitrios N., and Tilman Wolf. Architecture
When a user on a local network goes online to of Network Systems. Burlington: Morgan, 2011.
check the weather forecast, that person uses their Print.
210
Neural networks
Fields of Study signals describing these changes to the brain so
that the brain can respond.
Network Design; Computer Engineering; Robotics
neural network: in computing, a model of infor-
Computer Science
mation processing based on the structure and
function of biological neural networks such as the
Abstract
human brain.
Neural networks, or artificial neural networks processor coupling: the linking of multiple pro-
(ANNs) are modeled on the structure and intercon- cessors within a computer so that they can work to-
nectedness of neurons in biological brains. They have gether to perform calculations more rapidly. This
a three-layered structure consisting of an input layer, can be characterized as loose or tight, depending
a hidden layer, and an output layer. Like a biological on the degree to which processors rely on one an-
system, the input layer acquires data and delivers it other.
to the hidden layer for processing. When a suitable
solution to the input data has been determined, the Basic Concept
hidden layer delivers it to the output layer. ANNs are The concept of a neural network is founded in the
controlled by the system architecture, the activity multiple interconnections of neurons in the brain,
function and the learning function, enabling them which is the ultimate component of the nervous
to learn, or “train,” by adjusting to changing input in- (neural) system. Individual brain cells are called
formation. Inputs are assigned different weights and “neurons,” and each has the ability to communicate
activities, and computation is carried out using “fuzzy with adjacent cells. The structure of each brain cell
logic” as the key to artificial intelligence. ANNs learn consists of a central body, from which a number of
and compute most commonly through the backprop-
“axons” protrude. Each neuron can have several
agation algorithm, which is akin to negative feed-
axons, that form connections with other axons. The
back, to minimize error by successive approximation.
“synapse” is the interface where axons from two dif-
When the ANN has determined the solution having
ferent neurons come into contact with each other,
the least error, this becomes the output of the system. and where the exchange of information takes place.
Typically, an ANN of this type gives no indication of Between actual brain neurons, this process involves
how the solution was obtained. Neural networks can the exchange of special compounds called “neu-
be analog or digital, and can be constructed as elec- rotransmitters.” Each connection between neurons
tronic, optical, hydraulic and software-simulated sys- that is formed in this way represents a new access
tems. Parallel processing is the most compatible type route to and from the knowledge that is stored in
of computer system for software-simulated ANNs. the brain, and it is this multiplicity of intercon-
Several types of ANN can be defined according to the nections that is the key to the processing capacity
logic principles by which they function. of the brain. This is analogous to processor cou-
pling in parallel computing systems, which use a
Prinicipal Terms network of central processing units (CPUs) each
artificial intelligence: the intelligence exhibited by linked by a bridge to carry out a large number of
machines or computers, in contrast to human, or- computing processes at the same time rather than
ganic, or animal intelligence. one after another in a single CPU. Data input to a
bridge: a connection between two or more net- biological brain comes from an “input layer” com-
works, or segments of a single network, that al- posed of the physical senses. This “data” is pro-
lows the computers in each network or segment to cessed in the “hidden layer” of neurons within the
communicate with one another. brain. The result of the processing is then sent to an
nervous (neural) system: the system of nerve path- “output layer” of the muscles appropriate to effect
ways by which an organism senses changes in itself the desired physical response. Processing within
and its environment and transmits electrochemical the brain is not a binary, deterministic process of
211
computation with “on” and “off” signals. It is a prob- quantum computers is expected to produce a very
abilistic process that uses many “partial values” of large increase in the power of ANNs.
varying importance at the same time. This kind of
processing is called “fuzzy logic,” a term coined by Specification of ANNs
Lofti Zadeh in 1965. Fuzzy logic considers weighted Three factors are typically used to specify an ANN.
values of data according to the degree to which they The first is the architecture of the system. The ar-
are true rather than as absolute “black or white” chitecture specifies the variables involved in the
truths. Artificial neural networks are constructed composition and functioning of the ANN and
on these same principles, and as an integral com- typically assigns weights, or relative importance,
ponent of machine learning and parallel processing to the elements in the input layer and assigns
are believed to be essential to the development of their respective activities. The second factor is
artificial intelligence. the “activity rule,” which describes how the weight
values of the inputs change as they respond to
Artificial Neural Networks each other. The third factor is the “learning rule,”
An artificial neural network can be analog or dig- which specifies how the input weights change over
ital, and may be electronic, optical, hydraulic or time. The learning rule functions on a longer
software-simulated in nature. For the purposes of time scale than the activity rule and modifies the
computer science, however, only electronic and weights of the various interconnections according
optical constructs are considered. The principal to the input patterns that are received. The most
electronic components are digital CPUs. Optical common learning rule used is based on the back-
components that use light for data transmission propagation of error, or what might otherwise be
and storage are still in early development, though termed negative feedback, for the adjustment of
they are expected to provide greatly enhanced the weights of input signals. Through repetition
computational and operational abilities in com- of backpropagated error correction the variance
parison to silicon-based processors. An artificial of the computed result from its actual value is
neural network (ANN) has a functional structure minimized, and triggers the output of the result.
analogous to that of the brain, consisting of an Effectively, the functioning of an ANN can be
input layer, a hidden or intermediate layer that thought of as simply a repeated process of ap-
carries out the computation and processing of proximation to achieve the outcome that has the
data, and an output layer. In an ANN, the inter- highest likelihood of being true.
activity of the processor network is structured to
mimic the interactivity of neurons in the brain and Input Weighting
each of the processors in the ANN is effectively The weighting of inputs to an ANN is based on
connected to all of the other processors in the net- the logical principle of the “threshold logic unit”
work. The interconnectivity may be electronic or (TLU). The TLU is a processing unit for threshold
optical in transistor-transistor based communica- values having n inputs but just one output. The
tion, or the entire network may be simulated by TLU returns an output of 1 when the sum of the
software. Currently, ANNs are physically limited to proportional, or weighted, values of all inputs is
just a few thousands of concurrent processors in greater than or equal to the threshold value, and
the largest interconnected systems, in what is ef- an output of 0 otherwise. In effect it is a “truth test”
fectively a two-dimensional array. By comparison, of the input conditions. For example, given the
the human brain contains about 100 billion (1011) threshold value of 3 and the number of inputs as
neurons, each with multiple interconnections in a 6, then the TLU will return a value of 1 if the total
three-dimensional array. Miniaturization of inte- input over all six inputs is 3 or more. It will return
grated circuitry, the development of three-dimen- a value of 0 if the total input over all 6 inputs is less
sional integrated circuits, and the development of than 3.
212
213
Neuromorphic chips
Fields of Study neuroplasticity: the capacity of the brain to change
as it acquires new information and forms new
Computer Engineering; Information Systems
neural connections.
Abstract
Brain-Based Design
Neuromorphic chips are a new generation of com- Neuromorphic chips have much in common with
puter processors being designed to emulate the way traditional microprocessor chips. Both kinds of
that the brain works. Instead of being locked into a chip control how a computer receives an input, pro-
single architecture of binary signals, neuromorphic cesses that information, and then produces output
chips can form and dissolve connections based on either in the form of information, action, or both.
their environment, in effect “learning” from their The difference is that traditional chips consist of
surroundings. These chips are needed for complex millions of tiny, integrated circuits. These circuits
tasks such as image recognition, navigation, and store and process information by alternating be-
problem solving. tween binary “on” and “off” states. Neuromorphic
chips are designed to mimic the way that the human
Prinicipal Terms body’s nervous (neural) system handles informa-
tion. They are designed not only to process infor-
autonomous: able to operate independently,
mation but to learn along the way. A system that
without external or conscious control.
can learn may be more powerful than a system that
Human Brain Project: a project launched in 2013
must be programmed to respond in every possible
in an effort at modeling a functioning brain by
situation. Systems that can learn can function au-
2023; also known as HBP.
tonomously, that is, on their own without guidance.
memristor: a memory resistor, a circuit that can
A good example of this is car navigation systems.
change its own electrical resistance based on the
These systems have to store or access detailed maps
resistance it has used in the past and can respond
as well as satellite data about their current position.
to familiar phenomena in a consistent way.
With this data, a navigation system can then plot
nervous (neural) system: the system of nerve path-
a course. The neuromorphic chips may not need
ways by which an organism senses changes in itself
all of that background data. They may be better
and its environment and transmits electrochem-
able to understand information about their imme-
ical signals describing these changes to the brain
diate surroundings and use it to predict outcomes
so that the brain can respond.
214
Neuromorphic chips are designed to detect and predict patterns in data and processing pathways to improve
future computing. They simulate the brain’s neuroplasticity, allowing for efficient abstraction and analysis of
visual and auditory patterns. Each of the chips on this board has hundreds of millions of connections mim-
icking the synapses that connect neurons. By DARPA SyNAPSE, public domain, via Wikimedia Commons.
based on past events. They would function much designed applications and operating systems to use
the way someone dropped off a few blocks from data storage and access algorithms like those found
home could figure out a way to get there without in the neural networks of the brain. Chip designers
consulting a map. found ways to make circuits smaller and smaller so
In order to design neuromorphic chips, engi- they could be ever more densely packed onto con-
neers draw upon scientific research about the brain ventional chips. Unfortunately, both approaches
and how it functions. One group doing such re- have failed to produce machines that have either the
search is the Human Brain Project (HBP). HBP is brain’s information processing power or its neuro-
trying to build working models of a rodent brain. plasticity. Neuroplasticity is the brain’s ability to con-
Eventually HBP will try to build a fully working tinuously change itself and improve at tasks through
model of a human brain. Having models like these repetition.
will allow scientists to test hypotheses about how Neuromorphic chips try to mimic the way the
the brain works. Their research will aid in the de- brain works. In the brain, instead of circuits, there
velopment of computer chips that can mimic such are about 100 billion neurons. Each neuron is con-
operations. nected to other neurons by synapses, which carry
electrical impulses. The brain is such a powerful
The Limits of Silicon computing device because its huge amount of
One reason researchers have begun to develop neurons and synapses allow it to take advantage of
neuromorphic chips is that the designs of tradi- parallel processing. Parallel processing is when dif-
tional chips are approaching the limits of their ferent parts of the brain work on a problem at the
computational power. For many years, efforts were same time. Parallel processing allows the brain to
focused on developing computers capable of the form new connections between neurons when cer-
type of learning and insights that the human brain tain pathways have proven especially useful. This
can accomplish. These efforts were made on both forming of new neural pathways is what happens
the hardware and the software side. Programmers when a person learns something new or how to do a
215
task more efficiently or effectively. The goal of neu- require a device that can use data in many different
romorphic chip designers is to develop chips that forms to draw conclusions about the environment.
approach the brain’s level of computational density The computers of the future will be expected to act
and neuroplasticity. For example, researchers have more like human brains, so they will need to be de-
proposed the use of a memristor, a kind of learning signed and built more like brains.
circuit. To bring such ideas about, a chip architec-
—Scott Zimmer, JD
ture completely different from the traditional bi-
nary chips is needed.
Bibliography
Complex Tasks Burger, John R. Brain Theory from a Circuits and
Neuromorphic chips are especially suitable for com- Systems Perspective: How Electrical Science Explains
puting tasks that have proven too intense for tradi- Neuro-Circuits, Neuro-Systems, and Qubits. New York:
tional chips to handle. These tasks include speech- Springer, 2013. Print.
to-text translation, facial recognition, and so-called Human Brain Project. Human Brain Project, 2013.
smart navigation. All of these applications require a Web. 16 Feb. 2016.
computer with a large amount of processing power Lakhtakia, A., and R. J. Martín-Palma. Engineered
and the ability to make guesses about current and fu- Biomimicry. Amsterdam: Elsevier, 2013. Print.
ture decisions based on past decisions. Because neu- Liu, Shih-Chii, Tobi Delbruck, Giacomo Indiveri,
romorphic chips are still in the design and experi- Adrian Whatley, and Rodney Douglas. Event-Based
mentation phase, many more uses for them have yet Neuromorphic Systems. Chichester: Wiley, 2015.
to emerge. Print.
Prokopenko, Mikhail. Advances in Applied Self-
The Way of the Future Organizing Systems. London: Springer, 2013. Print.
Neuromorphic chips represent an answer to the Quian, Quiroga R., and Stefano Panzeri. Principles of
computing questions that the future poses. Most Neural Coding. Boca Raton: CRC, 2013. Print.
of the computing applications being developed re- Rice, Daniel M. Calculus of Thought: Neuromorphic
quire more than the ability to process large amounts Logistic Regression in Cognitive Machines. Waltham:
of data. This capability already exists. Instead, they Academic, 2014. Print.
216
218
219
221
222
223
Sensors on health-monitoring devices are able to pick up heart-rate and blood pressure measurements.
Advances in technology as a whole have improved the information gathered about a patient by making per-
sonal health-monitoring technology more portable and more accurate. By Bogdanradenkovic, CC BY-SA 4.0
(http://creativecommons.org/licenses/by-sa/4.0), via Wikimedia Commons
to system, concerns have been raised about privacy the possibility of an asthma event. However, some
and accuracy. Legally, the situation remains murky. health experts are concerned that self-monitoring
Patient-rights regulations appear not to apply to in- devices may also pose grave risks. Some argue that
formation gathered by many of these devices. For data integrity may be compromised. Others are con-
example, the companies that provide device support cerned about privacy issues, such as who has access
are not bound by medical confidentiality require- to the information collected and how it will be used.
ments. It is important to ensure that these services Mental health experts have argued that excessive
have safeguards in place to protect patient informa- monitoring may even be harmful, as it tends to in-
tion and prevent the misuse of health data. crease anxiety and self-centeredness. Finally, some
The benefits of innovative methods of self-mon- are worried because there is very little government
itoring are undeniable. Devices have been devel- regulation of these devices, particularly the nonin-
oped that can warn of an impending heart attack or vasive type.
224
Yet research has shown that self-monitoring can in Gulchak, Daniel J. “Using a Mobile Handheld
fact help people who suffer from anxiety to become Computer to Teach a Student with an Emotional
more aware of their triggers. Moreover, as users track and Behavioral Disorder to Self-Monitor
their exercise and diet, they become better aware of Attention.” Education and Treatment of Children 31.4
how their daily actions affect their health. In other (2008): 567–81. PDF file.
words, personal health monitoring encourages users Havens, John C. Hacking Happiness: Why Your Personal
to become more responsible for their well-being. Data Counts and How Tracking It Can Change the
World. New York: Tarcher, 2014. Print.
—Trudy Mercadal, PhD
McNeill, Dwight. Using Person-Centered Health Analytics
to Live Longer: Leveraging Engagement, Behavior
Bibliography Change, and Technology for a Healthy Life. Upper
Briassouli, Alexia, Jenny Benois-Pineau, and Saddle River: Pearson, 2015. Print.
Alexander Hauptmann, eds. Health Monitoring and Paddock, Catharine. “How Self-Monitoring Is
Personalized Feedback Using Multimedia Data. Cham: Transforming Health.” Medical News Today.
Springer, 2015. Print. MediLexicon Intl., 15 Aug. 2013. Web. 26 Feb.
Cha, Ariana Eunjung. “Health and Data: Can Digital 2016.
Fitness Monitors Revolutionise Our Lives?” Schmidt, Silke, and Otto Rienhoff, eds.
Guardian. Guardian News and Media, 19 May Interdisciplinary Assessment of Personal Health
2015. Web. 26 Feb. 2016. Monitoring. Amsterdam: IOS, 2013. Print.
Fasano, Philip. Transforming Health Care: The Financial
Impact of Technology, Electronic Tools and Data Mining.
Hoboken: Wiley, 2013. Print.
225
Personalized medicine
Fields of Study Personalized medicine researchers look for con-
nections between certain biomarkers and an individ-
Applications; Information Systems
ual’s health-related traits. Biomarkers are biometrics
that correlate to important biological traits or condi-
Abstract
tions, such as disease risk. For example, a low number
Personalized medicine is the use of information of red blood cells in a patient’s blood is a biomarker
about a patient’s biology—especially his or her per- for anemia.
sonal genome—to provide custom tailored health
care. Practitioners seek to use a patient’s genetic
and biological characteristics to better under- Human Genomics
The backbone of personalized medicine is human ge-
stand and predict his or her health risks and drug
nomics, the study of the human genome. “Genome”
responses.
may refer to a species-wide or a personal genome. A
species-wide genome is the order in which genes ap-
Prinicipal Terms
pear in the DNA of all members of one species. The
biomarker: short for “biological marker”; a mea- particular alleles, or variants, of those genes differ be-
surable quality or quantity (e.g., internal tem- tween individuals. The Human Genome Project was
perature, amount of iron dissolved in blood) that a species-wide genome project, completed in 2003,
serves as an indicator of an organism’s health, or that produced the first comprehensive map of the
some other biological phenomenon or state. human genetic sequence. A personal genome is an
biometrics: measurements that can be used to individual’s unique DNA makeup, including both
distinguish individual humans, such as a person’s the genetic sequence and the specific alleles of each
height, weight, fingerprints, retinal pattern, or ge- gene.
netic makeup. One powerful method of identifying potential ge-
genome-wide association study: a type of genetic netic biomarkers is a genome-wide association study
study that compares the complete genomes of (GWAS). This process involves studying the genomes
individuals within a population to find which ge- of many individuals to search for correlations be-
netic markers, if any, are associated with various tween certain genes and certain health traits. Once
traits, most often diseases or other health prob- a potential genetic marker is identified, researchers
lems. can use more targeted methods to further explore
pharmacogenomics: the study of how an individ- the connection.
ual’s genome influences his or her response to Examples of such biomarkers include mutations in
drugs. the BRCA1 and BRCA2 genes, which produce tumor-
toxgnostics: a subfield of personalized medicine suppressing proteins in humans. Mutations in these
and pharmacogenomics that is concerned with genes are associated with a higher risk of cancer,
whether an individual patient is likely to suffer a particularly breast, ovarian, and prostate cancers.
toxic reaction to a specific medication. (The “BRCA” in the gene names stands for “breast
cancer.”) This marker was discovered and described
Custom Health Care prior to GWAS technology, using a mix of patient
No two people are identical. Individuals differ from health histories and more limited genetic analysis to
one another in countless ways, some obvious (height, identify the genes in question.
weight, sex) and some less so (hormone produc- Personal genomics companies, such as 23 and
tion, brain chemistry, genetic makeup). Because of Me, sequence individuals’ genomes to provide them
these differences, no two people get sick in exactly with their genetic information. This includes infor-
the same way. Personalized medicine seeks to use a mation about a person’s ancestry as well as health
patient’s biometrics to make predictions about his or traits such as disease risk. Doctors use prenatal ge-
her health and provide specialized treatment. netic screening to determine babies’ health risks
226
Bibliography
“A Catalog of Published Genome-
Wide Association Studies.” National
Human Genome Research Institute.
Natl. Insts. of Health, 16 Sept.
Personalized medicine is developed by analyzing the patient’s DNA and determining 2015. Web. 23 Dec. 2015.
the ideal treatment based on his or her unique genetic makeup. By Christoph Bock, Hamburg, Margaret A., and Francis S.
Max Planck Institute for Informatics, CC BY-SA 3.0 (http://creativecommons.org/ Collins. “The Path to Personalized
licenses/by-sa/3.0), via Wikimedia Commons.
Medicine.” New England Journal of
Medicine 363.4 (2010): 301–4. Web.
even before birth. Personalized medicine may one 23 Dec. 2015.
day move from screening and preventive treatment McMullan, Dawn. “What Is Personalized Medicine?”
to custom post-diagnosis treatment. Genome Spring 2014: n. pag. Web. 23 Dec. 2015.
“Personalized Medicine and Pharmacogenomics.”
The Genomics of Drug Response Mayo Clinic. Mayo Foundation for Medical
The vanguard of personalized medicine and human Education and Research, 5 June 2015. Web. 23
genomics is a subfield known as pharmacoge- Dec. 2015.
nomics. This field studies the influence of individ- “Precision (Personalized) Medicine.” US Food and
uals’ genomes on their responses to various drugs. Drug Administration. Dept. of Health and Human
Toxgnostics, a related subfield, focuses on whether a Services, 18 Nov. 2015. Web. 23 Dec. 2015.
patient will have a toxic response to certain medica- “What Is Pharmacogenomics?” Genetics Home
tions based on his or her personal genome. The goal Reference. Natl. Insts. of Health, 21 Dec. 2015. Web.
of pharmacogenomics is to replace the “one size fits 23 Dec. 2015.
all” drug model with prescriptions tailored to each “When Healthcare and Computer Science
patient’s biology. Collide.” Health Informatics and Health Information
Management. Pearson/U of Illinois at Chicago,
A Computation-Intensive Process n.d. Web. 23 Dec. 2015.
The amount of data contained in a single human ge-
nome is very large. When studying many individuals’
227
Privacy regulations
Fields of Study protects against unwarranted search and seizure.
This has been taken to apply to an individual’s per-
Privacy; Information Systems
sonal communications. With advances in digital tech-
nology, millions of Americans have begun lobbying
Abstract
for new protections specifically for digital communi-
Privacy regulations are laws and policies put in place cation and data.
to protect digital privacy and to regulate access to
digital data and equipment. While US law has no gen- General Federal Privacy Laws
eral consumer privacy protection laws, it does protect
Within an organization, permission to access digital
certain types of digital data, including medical and
data may be restricted according to a system of ac-
financial data.
cess levels. In such a system, users are grouped into
categories with varying levels of computer clearance.
Prinicipal Terms
Network administrators usually have access to all data
access level: in a computer security system, a des- and operations. Users at other levels may have more
ignation assigned to a user or group of users that limited access. In corporate and government systems,
allows access a predetermined set of files or func- users are prohibited from accessing computers or
tions. data beyond their access level.
Computer Fraud and Abuse Act (CFAA): a 1986 The Computer Fraud and Abuse Act (CFAA) of
legislative amendment that made accessing a 1986 amended the United States Code statutes on
protected computer without authorization, or ex- federal crimes and criminal procedures. This act
ceeding one’s authorized level of access, a federal made unauthorized access to computer systems in-
offense. volved in interstate or foreign communications a fed-
Health Insurance Portability and Accountability eral offense. It allows for the prosecution of persons
Act (HIPAA): a 1996 law that established national who attempt to gain unlawful computer access. The
standards for protecting individuals’ medical re- CFAA was specifically designed to protect govern-
cords and other personal health information. ment and financial institutions.
PATRIOT Act: a 2001 law that expanded the Also in 1986, Congress passed the Electronic
powers of federal agencies to conduct surveillance Communications Privacy Act (ECPA). This law ex-
and intercept digital information for the purpose tended wiretap restrictions to apply to electronic
of investigating or preventing terrorism. data transmissions as well as pen/trap devices. It
pen/trap: short for pen register or trap-and-trace also specified what information Internet service pro-
device, devices used to record either all numbers viders (ISPs) cannot disclose about their users. One
called from a particular telephone (pen register) category of protected information is electronic com-
or all numbers making incoming calls to that munications, such as e-mails. However, the ECPA
phone (trap and trace); also refers to the court only protects e-mail stored on an ISP server for 180
order that permits the use of such devices. days. After that time, the government can compel the
ISP to disclose it. The ECPA has been criticized for
Privacy Protections not keeping pace with Internet technology. When
As of 2016, the United States has no general laws the ECPA was first passed, ISPs only stored a user’s
protecting computer privacy. However, access to e-mail for a short time, until it was downloaded to the
computers and certain types of digital data are re- user’s computer. This changed with the emergence
stricted by various federal and state laws. While the of web-based e-mail services. E-mail ISPs store users’
US Constitution has no specific provision protecting e-mails on their servers indefinitely, often until the
the right to privacy, the Supreme Court has repeat- users delete them. Under the ECPA, all of these e-
edly interpreted several amendments to implicitly mails can be freely accessed after 180 days. Had they
guarantee it. For example, the Fourth Amendment been downloaded to a computer and deleted from
228
Consumer Preference
100
80
60
Percent
National
Regulations
40
International
Regulations
20
0
United Germany Mexico India
States
The Internet extends beyond national boundaries, making the governance and regulation of Internet privacy challenging. The majority
of Internet users in countries around the world believe Internet privacy should be regulated globally, rather than locally. Adapted from
data presented in “Market Research in the Mobile World” by Lightspeed, LLC.
the server instead, they could not be accessed without Tax Reform Act (1976), and the Electronic Fund
a warrant. Transfer Act (1978). These laws were not necessarily
After the September 11, 2001, terrorist attacks, designed to protect electronic data. Nevertheless,
Congress passed the PATRIOT Act. This act gave they form the basis of Internet privacy regulations.
federal agencies increased powers to monitor digital However, many Americans feel that more general pri-
communications in order to prevent terrorism. It also vacy laws are necessary.
specified that pen/trap restrictions apply to routing
information from electronic communications as well. ownership of data and state laws
This technically extends privacy protections, but also One recent controversy in digital privacy concerns the
allows government agencies to compel ISPs to pro- ownership of digital data. Data transmitted through
vide routing information instead of having to gather cell phones and ISPs become partially the property of
it themselves. the service provider. ISPs and social media websites
have mined user data to market products to users and,
Provisional Privacy regulations in some cases, to share their information with third
A number of US federal regulations protect cer- parties. As there are no specific federal laws against
tain types of consumer data. For instance, the this, several state legislatures have restricted corpo-
Health Insurance Portability and Accountability Act rate access to digital data. California, Connecticut,
(HIPAA) of 1996 regulates the collection and use and Delaware have all passed laws requiring com-
of medical information. Organizations with access mercial websites to clearly disclose corporate privacy
to someone’s health care data may not disclose the policies and to comply with “Do Not Track” requests
data without permission from that person. HIPAA from users, especially when collecting personal in-
mainly applies to health care providers and pharma- formation. In 2003, Minnesota prohibited ISPs from
cies. Similarly, the Fair Credit Reporting Act of 1970 disclosing a user’s Internet habits or history without
limited the use of individual personal and financial their permission. These statutes were the first US
information by consumer credit reporting agencies. state laws intended to protect individuals’ Internet
Other such laws include the Privacy Act (1974), the privacy. In October 2015, California adopted the
229
California Electronic Communications Privacy Act, Duncan, Geoff. “Can the Government Regulate
hailed as the nation’s most comprehensive digital pri- Internet Privacy?” Digital Trends. Designtechnica,
vacy laws to date. 21 Apr. 2014. Web. 28 Mar. 2016.
“Health Information Privacy.” HHS.gov. Dept. of
—Micah L. Issitt
Health and Human Services, n.d. Web. 28 Mar.
2016. 4 Science Reference Center™ Privacy
Bibliography Regulations
“Computer Crime Laws.” Frontline. WGBH Educ. “State Laws Related to Internet Privacy.” National
Foundation, 2014. Web. 28 Mar. 2016. Conference of State Legislatures. NCSL, 5 Jan. 2016.
“Computer Fraud and Abuse Act (CFAA).” Internet Web. 28 Mar. 2016.
Law Treatise. Electronic Frontier Foundation, 24 “USA Patriot Act.” Electronic Privacy Information Center.
Apr. 2013. Web. 31 Mar. 2016. EPIC, 31 May 2015. Web. 28 Mar. 2016.
Zetter, Kim. “California Now Has the Nation’s Best
Digital Privacy Law.” Wired. Condé Nast, 8 Oct.
2015. Web. 28 Mar. 2016.
Programming languages
Fields of Study What Are Programming Languages?
Programming languages are constructed languages
Computer Engineering; Software Engineering;
that are used to create computer programs. They
Applications
relay sets of instructions that control the operation of
a computer. A computer’s central processing unit op-
Abstract
erates through machine code. Machine code is based
A programming language is a code used to control on numerical instructions that are incredibly difficult
the operation of a computer and to create computer to read, write, or edit. Therefore, higher-level pro-
programs. Computer programs are created by sets of gramming languages were developed to simplify the
instructions that tell a computer how to do small but creation of computer programs. Programming lan-
specific tasks, such as performing calculations or pro- guages are used to write code that is then converted
cessing data. to machine code. The machine code is then executed
by a computer, smartphone, or other machine.
Prinicipal Terms There are many different types of programming
languages. First-generation, or machine code, lan-
Abstraction: a technique used to reduce the
guages are processed by computers directly. Such
structural complexity of programs, making them
languages are fast and efficient to execute. However,
easier to create, understand, maintain, and use.
they are difficult for humans to read and require
declarative language: language that specifies the
advanced knowledge of hardware to use. Second-
result desired but not the sequence of operations
generation languages, or assembly languages, are
needed to achieve the desired result.
more easily read by humans. However, they must be
imperative language: language that instructs a
converted into machine code before being executed
computer to perform a particular sequence of op-
by a computer. Second-generation languages are
erations.
used more often than first-generation ones because
semantics: rules that provide meaning to a language.
they are easier for humans to use while still inter-
syntax: rules that describe how to correctly struc-
acting quickly and efficiently with hardware.
ture the symbols that comprise a language.
Both first- and second-generation languages are
Turing complete: a programming language that
low-level languages. Third-generation languages
can perform all possible computations.
230
On the TIOBE index for various programming languages, C and Java are the highest-rated languages. By
TIOBE Software B.V., CC BY-SA 4.0 (http://creativecommons.org/licenses/by-sa/4.0), via Wikimedia
Commons.
are the most widely used programming languages. Most programming languages are Turing complete.
Third-generation, or high-level programming, lan- However, some programming languages, such as
guages are easier to use than low-level languages. Charity and Epigram, can only perform a limited
However, they are not as fast or efficient. Early ex- number of computations and are therefore not
amples of such languages include Fortran, COBOL, Turing complete.
and ALGOL. Some of the most widely used program-
ming languages in the twenty-first century are third- How Programming Languages Are
generation. These include C++, C#, Java, JavaScript, Structured
and BASIC. Programming languages with higher The basic structural rules of a programming language
levels of Abstraction are sometimes called fourth- are defined in its syntax and semantics. A program-
generation languages. Higher levels of Abstraction ming language’s syntax is the grammar that defines
increases platform independence. Examples include the rules for how its symbols, such as words, numbers,
Ruby, Python, and Perl. and punctuation marks, are used. A programming
Programming languages can be based on different language’s semantics provide the rules used to inter-
programming paradigms or styles. Imperative lan- pret the meaning of statements constructed using its
guages, such as COBOL, use statements to instruct syntax. For example, the statement 1 + pizza might
the computer to perform a specific sequence of opera- comply with a programming language’s syntax.
tions to achieve the desired outcome. Declarative lan- However, adding a number and a word together (as
guages specify the desired outcome but not the specific opposed to adding two numbers) might be semanti-
sequence of operations that will be used to achieve it. cally meaningless. Programs created with a program-
Structured Query Language (SQL) is one example. ming language must comply with the structural rules
Programming languages can also be classified by established by the language’s syntax and semantics if
the number of different computations they can per- they are to execute correctly.
form. Turing complete programming languages can Abstraction reduces the structural complexity
perform all possible computations and algorithms. of programs. More Abstract languages are easier to
231
232
PROLOG
Fields of Study as old as LISP, it is one of the oldest still in common
usage. PROLOG is more commonly used in Europe,
Programming Languages
while LISP is more popular with North American
researchers and developers. Both PROLOG and
Abstract
LISP are used extensively for research and develop-
The PROLOG language was released in 1971 and is ment in the field of artificial intelligence. Numerous
a completely declarative language, although it is also implementations of PROLOG have been produced
capable of carrying out mathematical calculations. , the two major variations being ISO Prolog and
Numerous implementations of PROLOG have been Edinburgh Prolog. PROLOG is geared to natural lan-
produced, with two main variations. Programs are guage processing, or the use of computers to process
structured with only onr data type called the term, natural language. PROLOG can be implemented in
with four kinds of terms. Relations are structured on any programming language or environment that is
the pattern of “well-formed formulas” in logic, using capable of calling a dynamic linked library, or .dll,
rules and facts. A program is executed as a query run file. This includes languages such as C, C++, C#, PHP,
on a relation, and the result is evaluated as true or Java, Visual BASIC, Delphi and .NET, as well as other
false by determining whether the query disagrees similar languages. PROLOG is particularly useful for
with any of the rules. PROLOG is used extensively in database manipulation, symbolic math and language
the field of artificial intelligence, and is more pop- parsing applications.
ular with European researchers, while the similar lan-
guage LISP is more popular witrh North American Program Features of PROLOG
researchers. PROLOG is strictly a declarative language rather
than imperative. The syntax of the language is based
Prinicipal Terms on logic notation. Program logic is expressed as re-
lations in terms of facts and rules, and each process
artificial intelligence: the intelligence exhibited by
is initiated as a query. The execution of a PROLOG
machines or computers, in contrast to human, or-
program uses an inverse logic approach to the resolu-
ganic, or animal intelligence.
tion of a query. The program computes by searching
character: a unit of information that represents
for a resolution of the negated query, known as SLD
a single letter, number, punctuation mark, blank
resolution. The truth of a relation is not evaluated as
space, or other symbol used in written language.
to whether it is in agreement with the query. Rather,
declarative language: language that specifies the
it is tested to determine if it agrees with any condi-
result desired but not the sequence of operations
tion that counts as failure of the query. If accord with
needed to achieve the desired result.
failure of the query is not found, then the relation
programming languages: sets of terms and rules of
is deemed to be true by default. PROLOG has just
syntax used by computer programmers to create
a single data type, called a term, with relations being
instructions for computers to follow. This code is
defined as a clause. There are just four types of term
then compiled into binary instructions for a com-
in PROLOG, called atom, number, variable, or com-
puter to execute.
pound_term. The atom is just a general purpose term
syntax: rules that describe how to correctly struc-
used as any variable name would be in another lan-
ture the symbols that comprise a language.
guage. As in LISP, a number in PROLOG is either a
float or an integer. The variable term always begins
History and Characteristics of PROLOG
with an underscore or an upper case letter and is
PROLOG was released in 1971 after being developed
made up of a character string consisting of letters,
at l’Université de Marseilles, in France. The name is a
numbers and underscores. The variable term func-
contraction of the words PROgrammation en LOGique
tions like the variable term in a logic statement. The
(in English, PROgramming in LOGic). It is one of the
compound_term has a form similar to a function call
first logic programming languages, and although not
233
in other languages. It consists of an atom with a list of The facts specify that cats are red, blue, brown,
arguments in parentheses, as for example tabby and black but no other colors are defined and
therefore are not “true.” The rule states that cats are
atom (arg1, arg2,...)
green only if they are defined to be green. The query
A list can also be used as an argument, as can a string asks “are cats green?,” and because comparisons with
of characters enclosed in quotation marks, as for the facts all fail the program returns the value state-
example ment “no.”
atom (arg1, [arg2, arg3], “some text”)
PROLOG and Logic
Scientific method relies strictly on the application
Clause Structure in PROLOG of pure logic to achieve results in any field. Strictly
Relations in PROLOG are stated as clauses, which are speaking, scientific method, in any area of applica-
described as a fact or a rule. A rule essentially states a tion, seeks to eliminate as many unpredictable vari-
logical relationship of the type “this head statement ables as possible in determining the answer to a
is true if the following body conditions are true,” and specific question. In logic, this depends on the con-
has the form struction of “well-formed formulas,” and such are the
essential components of PROLOG programs. This is
head statement :- body condition statement(s)
a central aspect in the development of artificial intel-
The symbol “:-” is read as “is true if.” A simple log- ligence programs.
ical statement of this form might be something like
—Richard M. Renneboog M.Sc.
“(a = 2) is true if (a = b) and (b = 2).” In this simple
example, the conditions described by “(a = b) and (b
= 2)” would correspond to the body statements, and Bibliography
would be written as facts in the form Batchelor, Bruce. Intelligent Image Processing in
a (b) :- true. PROLOG. London, UK: Springer-Verlag, 1991.
Print.
b (2) :- true. Brauer, Max. Logic Programming With Prolog. New
Given these facts, one could then pose the query York, NY: Springer, 2005. Print.
Coelho, Helder, and José C. Cotta. Prolog by Example:
?- b(2).
How to Learn, Teach and Use It. New York, NY:
equivalent to the question “is b equal to 2?,” which Springer, 1996. Print.
would then return the value statement “yes” to indi- Deransart, P., A. Ed-Dbali, and L. Cervoni. PROLOG:
cate the “true” condition. The Standard Reference Manual. New York, NY:
Springer, 1996. Print.
Practice And Applicaton Jones, M. Tim, Artificial Intelligence: A Systems Approach.
Write a rule, facts, and a query statement to test the Sudbury, MA: Jones and Bartlett, 2009. Print.
fact of whether a cat is green. Mathews, Clive. An Introduction to Natural Language
Answer Processing Through Prolog New York, NY: Routledge,
facts: cat (red). 2014. Print.
cat (blue). Scott, Michael L. Programming Language Pragmatics.
cat (brown). Waltham, MA: Morgan Kaufmann, 2016. Print.
cat (tabby). Sterling, Leon, ed. The Practice of Prolog. Boston, MA:
cat (black) MIT Press,1990. Print.
rule: green :- (cat (green)).
query: ?- cat(green).
234
still out’ on the potential future of quantum com- just the ground and excited states, but also linear
puters. In both concept and eventual practicality, the combinations and superpositions of states. This al-
quantum computer is an alien device in comparison lows making use of quantum parallelism techniques
to current semiconductor transistor-based computer that would be far more powerful than even the mas-
technology. Comprehending the functionality of a sively parallel techniques of digital computing. A fair
quantum computer requires a complete paradigm question at this point would be ‘what are quantum
shift for computer science. The quantum bit (qubit) states?’. In 1897, electrons and protons were posi-
is entirely unlike the bit of current computer tech- tively identified as component particles of atoms,
nology. The control unit design of a quantum com- and though it was theorized at the same time, the
puter can have little or no resemblance to current existence of the neutron was not conclusively dem-
control unit design that is based on bit manipula- onstrated until 1932. In the early 1900s, this model
tion. The constraints of programming are entirely of atomic structure was refined using quantum me-
different for quantum computer program opera- chanics to account for and describe the energies of
tion than for current bit-based computer programs. electrons in atoms. Quantum mechanics describes
The logic implementation of quantum computers, the energy states that electrons in atoms are allowed
based on quantum theory and mathematical prin- to occupy. Each of these energy levels and the cor-
ciples, bears no resemblance to the boolean logic of responding behavior and distribution of electrons is
transistor-based computers. Transistor logic as it is thus termed a ‘quantum state’. An electron can move
used in current computer technology uses just three from one quantum state to another by absorbing or
kinds of transistor gate, called and, or, and not, that emitting a ‘quantum’ of the appropriate energy. A
are effectively nothing more than electronic on-off quantum is the minimum ‘particle size’ of energy re-
switches for the flow of electrons through a semi- quired for a specific change of quantum state, and
conducting material. Accordingly, they have just one each atom has numerous possible quantum states. By
macroscopic state for each bit. using quantum states instead of the binary states of
transistors, the amount of information that can be
Bits and qubits carried through the system increases exponentially
Bits are controlled by the ‘clock speed’ of the par- with each additional state.
ticular computer, and is defined as being either the
high state or the low state for the finite period of time Quantum computers and neural
determined by one clock cycle. A quantum bit (a networks
qubit), however, is defined by the particular quantum A comparison can be made between the mathematics
state of the atom and can have several values at the of qubits and the mathematics of neural networks. In
same time, determined by the superposition or linear particular, the functioning of an artificial neural net-
combination of several different states of the same work is determined in part by the ‘weight’ assigned to
atom. The qubit therefore exists as a quantum elec- each input in relation to the ‘threshold value’ of the
tronic state rather than as a macroscopic property. A output. The logic of an artificial neural network trig-
transistor gate functions simply by switching the flow gers an output when a ‘true’ value (1) of the sum of
of electrons to change the state of a bit according to the weighted inputs equal to or greater than the given
boolean relationships. A quantum gate, however, uses threshold value is obtained. A false value (0) and no
the quantum property of entanglement to change output is obtained otherwise. In a similar manner,
the state of a qubit. This is a very strange action that the state of a quantum computer is described by a
is not explained outside of quantum mathematics. multidimensional vector in which each term has a
Quantum entanglement occurs when two particles complex coefficient. The state of a quantum com-
stay connected in a way such that any action on one puter is described when the sum of the squared value
particle equally affects the other particle, even when of the vector coefficients is equal to 1, analogous to
they are separated by great distances. Digital com- the threshold state of an artificial neural network.
puter information is coded as strings of bits. In a This similarity has led to some speculation that the
quantum computer, the elements that carry the in- brain, a true neural network, may also function using
formation are quantum states. This does not include
236
quantum computing principles, though no evidence performance than is available using classical com-
of this has been found. puters. Nasa revealed the $15 million device publicly
in december, 2015. More recently, in august, 2016,
Types of quantum computers and the computer scientists at university of maryland con-
progress so far structed the first working quantum computer that is
Research into quantum-scale phenomena is time-con- capable of being reprogrammed.
suming and expensive. Nevertheless, many agencies
in government and industry are actively pursuing re- The major problem facing the
search into the development of quantum computers, development of quantum computers
for several reasons. The most important reason, of That a quantum computer that functions at least
course, is the vastly superior speed of computation partially as theorized has been built is perhaps veri-
that quantum computers should exhibit, enabling fication of a paraphrased physical law that says ‘for
them to solve computational problems that cannot every theory there is an equal and opposite set of
be solved by conventional computers. Quantum com- empirical results’. On one hand, the strong invest-
puters would be far more effective at dealing with ment into the development of quantum computers
and analyzing large quantities of data, as well as for supports the view that quantum computer tech-
service in the field of cryptanalysis and encryption. nology will eventually provide computing power
As might be expected, the different theoretical ave- that is “hundreds of orders of magnitude greater
nues by which quantum states can be described have than that of conventional computers.” On the other
given rise to several different approaches to defining hand, that such an increase has not been indicated
qubits and achieving quantum computing devices. by the performance of quantum technology so far
These include supports the view that quantum computers will never
be feasible. The principle argument for this latter
• Use of superconducting josephson junctions
view is based on the concept of ‘noise’. In conven-
• Use of the internal electronic state of trapped
tional computers, that function on a macroscopic
ions
scale, electronic interactions from both internal and
• Use of the internal electronic state of neutral
external sources produce a constant background
atoms in an optical lattice
of low energy random signals occasionally punctu-
• Use of quantum dots and either the spin state
ated by individual events of higher energy. This is
or position of trapped electrons
electrical ‘noise’. On the macroscopic scale, this in-
• Use of nuclear spin state in nuclear magnetic
terference can be readily filtered our or minimized
resonance
such that the desired signals for data manipulation
• Use of electron spin
are essentially clean signals. On the quantum scale,
• Use of nuclear spin of phosphorus donors in
however, there is no way to ‘filter out’ the quantum
silicon
effects that arise from noise. The other major argu-
• Use of bose-einstein condensates
ment against the increased power of quantum com-
• Use of light modes through various linear
puters is that even though the qubits of the process
elements
can be simultaneously in numerous states, their
• Use of carbon nanoparticles and fullerenes
value can only be read as one of two states, making
Each of these methods has had some success, in them no better than ordinary bits in terms of com-
accord with the principles of scientific investigation puting power. The reality is that, at the present time,
that seek to test s single hypothesis by the strict con- neither argument for or against quantum computers
trol of variables. None, however, have yet indicated a has been demonstrated successfully, and a great deal
general or universal method of generating qubits for of research is still required to either bring quantum
the creation of a quantum computer. In recent years, computers out of the realm of theory and into the
there has been some successful commercialization mainstream of technology or relegate them to the
of quantum computer technology by the canadian realm of failed scientific concepts.
company d-wave. The device does function using
—richard m. Renneboog m.sc.
quantum properties, but has yet to achieve greater
237
Quantum computing
Fields of Study with unique properties. This allows a qubit to po-
tentially be in two states at once.
Computer Science; System-Level Programming;
Computer Engineering
Subatomic Computation Theories
Quantum computing is an emerging field of com-
Abstract
puting that uses subatomic particles rather than
Quantum computing is an emerging field of com- silicon circuitry to transmit signals and perform cal-
puter engineering that uses charged particles rather culations. Quantum physics studies particle behavior
than silicon electrical circuitry to process signals. at the subatomic scale. At extremely small scales, sub-
Existing quantum computers are only in the experi- atomic particles such as photons (the basic unit of
mental stage. Engineers believe that quantum com- light) exhibit properties of both particles and waves
puting has the potential to advance far beyond the simultaneously. This phenomenon, called wave-par-
limitations of traditional computing technology. ticle duality, gives subatomic particles unique prop-
erties. Traditional computer algorithms are con-
Prinicipal Terms strained by the physical properties of digital electrical
signals. Engineers working on quantum computing
entanglement: the phenomenon in which two
hope that quantum algorithms, based on the unique
or more particles’ quantum states remain linked
properties of quantum mechanics, will be able to
even if the particles are later separated and be-
complete computations faster and more efficiently.
come part of distinct systems.
quantum logic gate: a device that alters the be-
The Basics of Quantum Data
havior or state of a small number of qubits for the
Digital computing uses electrical signals to create bi-
purpose of computation.
nary data. Binary digits, called bits, have two possible
quantum bit (qubit): a basic unit of quantum com-
values: 0 or 1. Digital computers also use logic gates.
putation that can exist in multiple states at the
These are electronic circuits that process bits of data
same time, and can therefore have multiple values
by amplifying or changing signals. Logic gates in dig-
simultaneously.
ital computers accept one or more inputs and pro-
state: a complete description of a physical system
duce only one output. In quantum computing, dig-
at a specific point in time, including such factors
ital bits are replaced by quantum bits (qubits). Qubits
as energy, momentum, position, and spin.
are created by manipulating subatomic particles.
superposition: the principle that two or more
The value of a qubit represents its current
waves, including waves describing quantum states,
quantum state. A quantum state is simply all known
can be combined to give rise to a new wave state
data about a particle, including its momentum,
238
RAM
SRAM DRAM
There are two major categories of random-access memory: static RAM (SRAM) and dynamic RAM (DRAM). Static RAM may be
asynchronous SRAM (ASRAM) or synchronous SRAM with a burst feature (SBSRAM). Dynamic RAM may come in one of four
types: fast page mode DRAM (FPMDRAM), extended data out DRAM (EDODRAM), extended data out DRAM with a burst feature
(BEDODRAM), or synchronous DRAM (SDRAM). EBSCO illustration.
made this design less practical. In the 2010s, com- Just as the majority of RAM is dynamic, most RAM
monly used RAM chips incorporate billions of is also volatile. Thus, the data stored in the RAM will
memory cells. disappear if it is no longer being supplied with elec-
tricity—for instance, if the computer in which it is
Types of RAM installed has been turned off. Some RAM, however,
Although all RAM serves the same basic purpose, can retain data even after losing power. Such RAM
there are a number of different varieties. Each type is known as nonvolatile random-access memory
has its own unique characteristics. The RAM most (NVRAM).
often used in personal computers is a direct descen-
dant of the DRAM invented by Dennard and popular- Using RAM
ized by companies such as Intel. DRAM is dynamic, RAM works with a computer’s other memory and
meaning that the electrical charge in the memory storage components to enable the computer to
cells, and thus the stored data, will fade if it is not re- run more quickly and efficiently, without lagging
freshed often. A common variant of DRAM is speed- or freezing. Computer memory should not be
focused double data rate synchronous DRAM (DDR confused with storage. Memory is where applica-
SDRAM), the fourth generation of which entered the tion data is processed and stored. Storage houses
market in 2014. files and programs. It takes a computer longer to
RAM that is not dynamic is known as static random- access program data stored in ROM or in long-
access memory (SRAM). SRAM chips contain many term storage than to access data stored in RAM.
more transistors than their DRAM counterparts. Thus, using RAM enables a computer to retrieve
They use six transistors per cell: two to control access data and perform requested functions faster. To
to the cell and four to store a single bit of data. As improve a computer’s performance, particularly
such, they are much more costly to produce. A small when running resource-intensive programs, a user
amount of SRAM is often used in a computer’s cen- may replace its RAM with a higher-capacity chip so
tral processing unit (CPU), while DRAM performs the computer can store more data in its temporary
the typical RAM functions. memory.
241
Removable memory
Fields of Study and alter or requires special equipment to do so;
it is usually used to store basic operating informa-
Information Technology; Computer Engineering;
tion needed by a computer.
Digital Media
solid-state storage: computer memory that stores
information in the form of electronic circuits,
Abstract
without the use of disks or other read/write equip-
Removable memory systems allow the user to store ment.
digital data and transfer them between computer volatile memory: memory that is created and
systems. Using magnetic, optical, and circuit- maintained only while a computer is active and is
based systems, removable memory has evolved generally erased when the computer is powered
throughout the digital age and continues to be down.
widely used, though cloud storage may eventually
take its place. Temporary and Permanent Memory
Computer memory, sometimes called “storage,” re-
Prinicipal Terms fers to the hardware used to store both computer
instructions and digital data for processing. There
magnetic storage: a device that stores information
are two basic types of computer memory. Volatile
by magnetizing certain types of material.
memory, including a computer’s random access
main memory: the primary memory system of a
memory (RAM), is stored as electrical signals and
computer, often called “random access memory”
so requires power. RAM, sometimes called main
(RAM), accessed by the computer’s central pro-
memory, is created each time a computer is powered
cessing unit (CPU).
on. It provides rapid access to instructions and data.
optical storage: storage of data by creating marks
These are already stored as electrical signals and so
in a medium that can be read with the aid of a
do not have to be “read” and converted from another
laser or other light source.
storage medium. Nonvolatile memory is stored physi-
read-only memory (ROM): type of computer data
cally, such that powering down the computer does not
storage that is typically either impossible to erase
erase the data. Removable memory refers to certain
242
Removable memory comes in many forms, partly because of changes in technology and partly because they
solve different challenges for the user. Most external data storage devices have some balance of portability
and durability. By avaragado from Cambridge, CC BY 2.0 (http://creativecommons.org/licenses/by/2.0),
via Wikimedia Commons
subsets of both of these types of memory. Nonvolatile 1980s for storing data and applications were a form
removable memory involves methods of storage that of magnetic storage. In the 1980s computer scientists
can be removed or transferred from one computer developed the first optical storage systems. In these
to another. Volatile removable memory is expansion systems, data was stored by making physical marks
memory that can be installed on a computer to in- on a medium coated with a light-sensitive material.
crease temporary memory capacity. One of the most A laser could imprint the storage medium with dig-
familiar examples of removable memory is the SIM ital data. It could then read the data and translate it
cards used in some mobile phones. Until recently, into electrical signals that could be interpreted by a
most mobile devices used removable memory cards computer. Commonly used optical storage media in-
to store user data. The card could be removed and cluded CD-ROMs and later DVD technology. Blu-ray
installed on another mobile device, allowing users to discs are also examples of optical storage technology.
transfer personal data between mobile devices. Meanwhile, advances in magnetic storage led to the
debut of shingled magnetic recording (SMR) de-
Magnetic and Optical Storage Media vices. SMR devices can create layers of magnetic data
The earliest forms of computer memory consisted of that partially overlap like roof shingles. This gives
punch cards that represented digital data physically. them vastly increased storage capacity.
The data could then be read and interpreted by a com-
puter. In the 1950s computer engineers began using Solid-State Storage
magnetic storage. Magnetic storage uses electronic Reading and writing on magnetic or optical media
heads to write and read data on a tape or other ma- requires complex moving parts. For instance, a mag-
terial coated with a magnetically sensitive substance. netic or optical disk must be turned and a moving
The floppy disks that were popular in the 1970s and laser or electronic head must be used to read the
243
encoded data. These delicate moving parts are prone maintaining personal and organizational data. In ad-
to malfunction. To avoid this problem, engineers in dition, engineers have begun using virtual networks
the 1980s pioneered the use of self-contained solid- to increase processing capability by distributing tasks
state storage systems in which data could be encoded across several different computers. As cloud storage
in the form of electrical signals and circuits. and virtual networks handle more of the storage and
Among the earliest types of solid-state storage processing, removable storage may be used less and
was read-only memory (ROM). This typically re- less by consumers while data centers have greater
fers to a storage system that is built into a computer need of physical storage.
and cannot be erased or altered by a user. Some
—Micah L. Issitt
modern ROM systems, however, can be altered by
the user with specialized tools. A computer’s ROM
usually contains the basic instructions that the com- Bibliography
puter needs to function. CD-ROMs are so-called Alcorn, Paul. “SMR (Shingled Magnetic Recording)
because the information they hold also cannot be 101.” Tom’s IT Pro. Purch, 10 July 2015. Web. 7 Mar.
changed or erased, although they are not solid-state 2016.
technology. Blanco, Xiomara. “Top Tablets with Expandable
In the 1990s a variety of solid-state removable Storage.” CNET. CBS Interactive, 25 Jan. 2016.
memory systems were introduced to the consumer Web. 7 Mar. 2016.
market. These included flash memory chips and Edwards, Benj. “From Paper Tape to Data Sticks: The
drives that store data as electrical signals. The popular Evolution of Removable Storage.” PCWorld. IDG
thumb drives, USB drives, and other memory cards Consumer & SMB, 7 Feb. 2010. Web. 7 Mar. 2016.
and drives are solid-state storage media. Engineers Goodwins, Rupert. “The Future of Storage: 2015 and
have also created multi-level cells (MLC), which can Beyond.” ZDNet. CBS Interactive, 1 Jan. 2015. Web.
store more digital data in each electrical cell and so 7 Mar. 2016.
provide vast increases in storage capacity. Mercer, Christina. “5 Best Storage Devices for
Startups: Removable, SSD or Cloud, What Type
Clouds and Virtual Computing of Storage Should Your Business Use?” Techworld.
Removable media, while still used for many applica- IDG UK, 22 Dec. 2015. Web. 7 Mar. 2016.
tions, is rapidly changing due to growth of virtual Taylor, Ben. “Cloud Storage vs. External Hard Drives:
data storage. Cloud networks let users save data to the Which Really Offers the Best Bang for your Buck?”
Web and later retrieve the data using any Internet- PCWorld. IDG Consumer and SMB, 10 July 2014.
enabled device. They are rapidly replacing the use Web. 7 Mar. 2016.
of removable storage and external hard drives for
244
Vertical scaling
Baseline
8 CPUs
$ $ $ $ $
2 CPUs
Horizontal scaling
$ $
$ $ $ $
Vertical and horizontal scaling have their pros and cons. Vertical scaling increases computing power
with a more powerful (and often more costly) computer. Horizontal scaling increases computing
power with more computers of equal power (and equal price), but a more complex network and
programming is required. EBSCO illustration.
Ultimately, however, vertical scaling can only go load across the available servers, a user may see little
so far. For larger-scale operations such as cloud com- improvement.
puting, horizontal scaling is more common. Cloud
computing connects multiple hardware or software Other Scaling Techniques
components, such as servers or networks, so they can Scalability refers to more than just processing power.
work as a single unit. The downside of horizontal It also includes various techniques to improve system
scaling is that it is not immediate. It requires careful efficiency and provide the best performance even
planning and preparation to make the components when usage levels are high. One way to reduce server
work logically together. While adding more servers load during periods of high usage is to implement
is a good way to deal with increased traffic, for in- caching. A cache is a block of memory in which
stance, if the system cannot properly balance the recently accessed files are stored briefly for easy
246
retrieval. If a user requests a file from the server that companies that support hundreds of millions of daily
was accessed recently and is still in the cache, the users do not have to pay to operate the massive data
system can provide the cached version instead of the centers that traditional architecture would require.
original. This provides a faster response time and re- Meanwhile, new start-ups can launch with just a few
duces the load on the server. servers and then easily scale up to a few thousand
Another way is to use a proxy server. This is particu- when necessary.
larly useful for a system with multiple servers. A proxy Receive-side scaling (RSS) is another way in which
functions as an intermediary between the user and companies can scale up. This directs incoming net-
the main servers. It receives requests from users and work traffic to various CPUs for processing, thereby
directs them to the appropriate servers. A proxy can speeding up the network. RSS has become a feature
also combine requests to speed up processing. If mul- in some cloud-computing services, such as Microsoft
tiple users request the same data, a system without a Azure.
proxy has to perform multiple retrievals of that data.
—Daniel Horowitz
However, if the requests are filtered through a proxy
server, the proxy can perform a single retrieval and
then forward the data to each user.
Bibliography
Scaling for the Cloud De George, Andy. “How to Autoscale an Application.”
Unlike other computing systems, many cloud-com- Microsoft Azure. Microsoft, 7 Dec. 2015. Web. 17
puting services automatically scale up or down to be Feb. 2016.
more efficient. Extra computing resources, such as El-Rewini, Hesham, and Mostafa Abd-El-Barr.
additional servers, are provided when usage is high Advanced Computer Architecture and Parallel
and then removed when they are no longer needed. Processing. Hoboken: Wiley, 2005. Print.
This is known as “auto-scaling.” It was first introduced Evans, Kirk. “Autoscaling Azure—Virtual Machines.”
by Amazon Web Services and has since been adopted .NET from a Markup Perspective. Microsoft, 20 Feb.
by other cloud-computing services, such as Microsoft 2015. Web. 17 Feb. 2016.
Azure and Google Cloud Platform. Hill, Mark D. “What Is Scalability?” Scalable Shared
For large Internet companies such as these, which Memory Multiprocessors. Ed. Michel Dubois and
support massive distributed storage and cloud-com- Shreekant Thakkar. New York: Springer, 1992.
puting systems, simply auto-scaling is not enough. 89–96. Print.
They must be able to scale up from a handful of Matsudaira, Kate. “Scalable Web Architecture and
servers to thousands rapidly, efficiently, and resil- Distributed Systems.” The Architecture of Open Source
iently, without server outages that might impact user Applications. Ed. Amy Brown and Greg Wilson. Vol.
experience. This type of architecture is described 2. N.p.: Lulu, 2012. PDF file.
as “hyper-scale.” Hyper-scale data-center architec- Miniman, Stuart. “Hyperscale Invades the
ture is mainly software-based, replacing much of the Enterprise.” Network Computing. UBM, 13 Jan.
hardware of a traditional data center with virtual 2014. Web. 8 Mar. 2016.
machines. In addition to supporting rapid, efficient Peterson, Larry L., and Bruce S. Davie. Computer
auto-scaling, this greatly reduces infrastructure costs Networks: A Systems Approach. 5th ed. Burlington:
for both established and new companies. Large Morgan, 2012. Print.
247
Signal processing
Fields of Study consist of a set of values, and there is no informa-
tion “between” two adjacent values. A digital signal is
Algorithms; Information Technology; Digital Media
more like a list of numbers.
Typically, computers represent signals digitally,
Abstract
while devices such as microphones represent signals
“Signal processing” refers to the various technolo- in an analog fashion. It is possible to convert a signal
gies by which analog or digital signals are received, from analog to digital by “sampling” the signal—that
modified, and interpreted. A signal, broadly defined, is, recording the value of the signal at regular inter-
is data transmitted over time. Signals permeate ev- vals. A digital signal can be converted to analog by
eryday life, and many modern technologies operate generating an electrical signal that approximates the
by acquiring and processing these signals. digital signal.
One example of analog-to-digital signal conver-
Prinicipal Terms sion is the setup used to record a music perfor-
mance to CD. The sound waves produced by the
analog signal: a continuous signal whose values or
musicians’ voices and instruments are picked up
quantities vary over time.
by microphones plugged into a computer. The mi-
filter: in signal processing, a device or procedure
crophones convert the sound waves to analog elec-
that takes in a signal, removes certain unwanted
trical signals, which the computer then converts
elements, and outputs a processed signal.
to digital ones. Each signal can then be processed
fixed point: a type of digital signal processing in
separately. For example, the signal from the drum
which numerical data is stored and represented
can be made quieter, or that from the guitar can be
with a fixed number of digits after (and sometimes
processed to add distortion or reverb. Once the in-
before) the decimal point, using a minimum of
dividual signals are processed, they are combined
sixteen bits.
into a single signal, which is then converted to the
floating point: a type of digital signal processing
CD format.
in which numerical data is stored and represented
in the form of a number (called the mantissa, or
Processing Signals
significand) multiplied by a base number (such as
The core concept in signal processing is the Fourier
base-2) raised to an exponent, using a minimum
transform. A transform is a mathematical oper-
of thirty-two bits.
ator that changes how data are expressed without
Fourier transform: a mathematical operator that
changing the value of the data themselves. In signal
decomposes a single function into the sum of mul-
processing, a transform changes how a signal is rep-
tiple sinusoidal (wave) functions.
resented. The Fourier transform allows signals to be
linear predictive coding: a popular tool for dig-
broken down into their constituent components.
ital speech processing that uses both past speech
It turns a single signal into superimposed waves of
samples and a mathematical approximation of a
different frequencies, just as a music chord consists
human vocal tract to predict and then eliminate
of a set of superimposed musical notes. The signals
certain vocal frequencies that do not contribute to
can then be quickly and efficiently analyzed to sup-
meaning. This allows speech to be processed at a
press unwanted components (“noise”), extract fea-
faster bit rate without significant loss in compre-
tures contained in an image, or filter out certain
hensibility.
frequencies.
In signal processing, a filter is a device or process
Digital and Analog Signals
that takes in a signal, performs a predetermined op-
Signals can be analog or digital. Analog signals are
eration on it (typically removing certain unwanted
continuous, meaning they can be divided infinitely
elements), and outputs a processed signal. For
into different values, much like mathematical func-
example, a low-pass filter removes high frequen-
tions. Digital signals, by contrast, are discrete. They
cies from a signal, such as the sound produced by a
248
Amplitude
Amplitude
Amplitude
Frequency Frequency Frequency
Signal deconvolution
Signal recorder
processing
Amplitude
Frequency Frequency
Signal processing involves sensors that receive a signal input (1). Programming to record the input may include deconvolution filters
(5) to remove any undesired convolutions (2), such as harmonic resonance (4), so that the signal output (3) is restored. EBSCO
illustration.
piccolo, and leaves only the low frequencies intact, formats have advantages and disadvantages. A digital
such as those from a bass guitar. A high-pass filter signal processor (DSP) is optimized for one or the
does the opposite. It removes low frequencies from other. Fixed-point DSPs are typically cheaper and
signals, keeping only the high frequencies. require less processing power but support a much
When processing digital signals, one important smaller range of values. Floating-point DSPs offer
consideration is how the data should be stored. The greater precision and a wider value range, but they
discrete values that make up a digital signal may be are costlier and consume more memory and power.
stored as either fixed point or floating point. Both Floating-point DSPs can also handle fixed-point
249
values, but because the system is optimized for modifies the signal produced by the sound source.
floating point, the advantages of fixed point are lost. This modification produces resonant frequencies
called “formants,” which make speech sound nat-
Extracting Information from Signals ural but carry no inherent meaning. Linear predic-
Sometimes a signal contains encoded information tive coding uses a mathematical model of a human
that must be extracted. For example, a bar-code vocal tract to predict these formants. They can then
reader extracts the bar code from an acquired image. be removed for faster analysis of human speech or
In this case, the image is the signal. It varies in space produced to make synthesized speech sound more
rather than in time, but similar techniques can be ap- natural.
plied. Filters can be used to remove high spatial fre-
—Andrew Hoelscher, MEng, John Vines, and Daniel
quencies (such as sudden changes in pixel value) or
Horowitz
low spatial frequencies (such as very gradual changes
in pixel value). This allows the bar-code reader to
find and process the bar code and determine the nu- Bibliography
merical value that it represents. Boashash, Boualem, ed. Time-Frequency Signal Analysis
and Processing: A Comprehensive Reference. 2nd ed.
Applications San Diego: Academic, 2016. Print.
Signal processing is everywhere. Modems take in- Lathi, B. P. Linear Systems and Signals. 2nd rev. ed. New
coming analog signals from wires and turn them into York: Oxford UP, 2010. Print.
digital signals that one computer can use to commu- Owen, Mark. Practical Signal Processing. New York:
nicate with another. Cell phone towers work similarly Cambridge UP, 2012. Print.
to let cell phones communicate. Computer vision is Prandoni, Paolo, and Martin Vetterli. Signal Processing
used to automate manufacturing or tracking. Signals for Communications. Boca Raton: CRC, 2008. Print.
are stored in CDs, DVDs, and solid-state drives (SSDs) Proakis, John G., and Dimitris G. Manolakis. Digital
to represent audio, video, and text. Signal Processing: Principles, Algorithms, and
One particular application of signal processing is Applications. 4th ed. Upper Saddle River: Prentice,
in speech synthesis and analysis. Speech signal pro- 2007. Print.
cessing relies heavily on linear predictive coding, Shenoi, Belle A. Introduction to Digital Signal Processing
which is based on the source-filter model of speech and Filter Design. Hoboken: Wiley, 2006. Print.
production. This model posits that humans produce Vetterli, Martin, Jelena Kovacevic, and Vivek K.
speech through a combination of a sound source Goyal. Foundations of Signal Processing. Cambridge:
(vocal cords) and a linear acoustic filter (throat and Cambridge UP, 2014. Print.
mouth). The filter, in the rough shape of a tube,
250
Smart homes
Fields of Study afar, automate basic home functions, and save money
in the long run on utility payments and other costs.
Network Design; Computer Engineering; Embedded
Creating a smart home generally involves buying
Systems
a hub and then various smart devices, appliances,
plugs, and sensors that can be linked through that
Abstract hub to the home network. Setting up a smart home
Smart-home technology encompasses a wide range is costly and requires strong network infrastructure
of everyday household devices that can connect to to work well.
one another and to the Web. This connectivity allows
owners to program simple daily tasks and, in some Creating the Home Network
Not all smart devices are designed to connect in the
cases, to control device operation from a distance.
same way. Wi-Fi enabled devices connect to Wi-Fi net-
Designed for convenience, smart homes also hold
works, which use super-high frequency (SHF) radio
the promise of improved independent living for el-
signals to link devices together and to the Internet
derly people and those with disabilities.
via routers, modems, and range extenders. Other
smart devices have Bluetooth connectivity. Bluetooth
Prinicipal Terms
also uses SHF radio waves but operates over shorter
dual-mesh network: a type of mesh network in ranges. Assorted Bluetooth devices may be con-
which all nodes are connected both through nected to a smart-home network for remote in-home
wiring and wirelessly, thus increasing the reliability control but cannot be operated outside the home.
of the system. A node is any communication in- Essentially, a Wi-Fi network is necessary for Internet-
tersection or endpoint in the network (e.g., com- based control.
puter or terminal). More advanced options for smart-home net-
electronic interference: the disturbance gener- working involve mesh networks. In these networks,
ated by a source of electrical signal that affects an each node can receive, repeat, and transmit signals
electrical circuit, causing the circuit to degrade to all others in the network. Mesh networks may
or malfunction. Examples include noise, electro- be wired, with cables connecting the nodes. More
static discharge, and near-field and far-field inter- often they are wireless, using Bluetooth or Wi-Fi to
ference. transmit radio signals between nodes. Smart-home
Internet of things: a wireless network connecting network company Insteon has created products
devices, buildings, vehicles, and other items with linked into dual-mesh networks. Such networks use
network connectivity. a dual-band connection, with both wired and wire-
mesh network: a type of network in which each less connections between the nodes. Dual-mesh
node relays signal through the network. A node networks are designed to avoid electronic inter-
is any communication intersection or endpoint in ference from outside signals coming from sources
the network (e.g., computer or terminal). such as microwave ovens and televisions. In a dual-
ubiquitous computing: a trend of embedding mi- mesh network, interruption to the power lines en-
croprocessors and transmitters in everyday ob- tering the home or to the home’s wireless network
jects, enabling the objects to communicate with will not prevent signal from reaching a networked
other computing devices. device. Mesh networks also work with devices from
different manufacturers, while other types of net-
The Emerging Field of Home Automation works may not be compatible with all of an owner’s
Smart homes, or automated homes, are houses in devices.
which household electronics, environmental con-
trols, and other appliances are connected in a net- Connecting Smart Devices and Utilities
work. Home automation is a growing trend in the Different types of devices can be connected to smart-
2010s that allows owners to monitor their homes from home networks. Smart light switches and dimmers can
251
Automatic
window
Camera Automatic curtain
Automatic air
Smart conditioning switch
thermostat
Motion
detector lights
Magnetic
door sensor
Intelligent switch
Smoke sensor
REMOTE MONITORING
Gas sensor
There are a number of devices and technologies available to improve a home’s efficiency and sustainability, allowing individuals to cus-
tomize their environment at any time, anywhere. Some products, such as programmable thermostats, can be programmed to run only
at the optimal time needed to reduce resource use. Others such as motion-sensored lights are designed to respond instantly to demand.
There are even devices that sync to a smartphone and allow the homeowner to control security, lighting, and many other devices remotely.
EBSCO illustration.
252
be used to control existing light fixtures, turning lights maker, and raise the heat. Although still largely a
on or off or connecting them to a scheduler for timed hobbyist industry, home automation is also begin-
activation. A smart-home owner might program their ning to help elderly people and those with disabili-
lights to coincide with the sunrise/sunset cycle, for ex- ties. Features such as voice activation, mobile apps,
ample. The use of smart plugs also allows for the control and touch screens make it easier for those owners to
of existing, ordinary devices. Smart kitchen appliances control their environment and live independently.
and entertainment units are becoming available as well. Consumers have been slow to adopt smart-home
Other devices can be used to monitor home utili- technology for several reasons. One is fear that
ties. For instance, smart water sensors can detect manufacturers will use such devices to collect and
moisture or leaks. Smart locking devices placed on sell data about their personal habits. Another is fear
doors and windows can alert the owner when a door that the security of such systems could be hacked
or window is unsecured and allow them to lock and and 4 Science Reference Center™ Smart Homes
unlock doors and windows remotely. Sensors and lead to safety issues such as burglary. The multiple
controls can measure heat within each room and ad- users’ preferences, power dynamics, and rapid shifts
just thermostat settings. Smart-home owners can use in schedule that present in family life pose further
programmable thermostats to lower temperatures challenges for smart-home systems. With the debut
during sleep periods and to raise heat levels before of wearable digital devices like smart watches, some
they wake. While many thermostats have timers, au- companies are experimenting with linking wearable
tomated systems also allow owners to adjust heat and and smart-home devices. Wearable devices that can
energy consumption from their smartphone or com- record biometric data could be used to verify a home-
puter, even when away from the home. Some even owner’s identity for increased security and personal-
feature machine learning, in which the device adjusts ization, for example.
its behavior over time in response to repeated usage
—Micah L. Issitt
patterns. By shutting off air conditioning, heat, or
electricity when not needed, automated monitoring
and control can save owners large amounts of money Bibliography
in utility costs each year. Clark, Don. “Smart-Home Gadgets Still a Hard Sell.”
Wall Street Journal. Dow Jones, 5 Jan. 2016. Web. 12
Goals and Challenges Mar. 2016.
Smart-home technology is part of a technological Glink, Ilyce. “10 Smart Home Features Buyers
movement called the Internet of things (IoT). IoT Actually Want.” CBS News. CBS Interactive, 11 Apr.
is based on the idea that devices, vehicles, and build- 2015. Web. 12 Mar. 2016.
ings will all someday be linked into a wireless network Gupta, Shalene. “For the Disabled, Smart Homes
and collect and communicate data about the envi- Are Home Sweet Home.” Fortune. Fortune, 1 Feb.
ronment. This concept relies on ubiquitous com- 2015. Web. 15 Mar. 2016.
puting, the practice of adding microprocessors and Higginbotham, Stacey. “5 Reasons Why the ‘Smart
Internet connectivity to basic devices and appliances. Home’ Is Still Stupid.” Fortune. Fortune, 19 Aug.
Ubiquitous computing aims to make data processing 2015. Web. 12 Mar. 2016.
a constant background activity embedded in daily life. Taylor, Harriet. “How Your Home Will Know What
While still in its infancy, smart-home technology You Need Before You Do.” CNBC. CNBC, Jan 6
is intended to enhance security and convenience 2016. Web. 11 Mar. 2016.
for homeowners. A home could be configured, for Vella, Matt. “Nest CEO Tony Fadell on the Future of
instance, so that motion sensors detecting activity in the Smart Home.” Time. Time, 26 June 2014. Web.
the morning open window shades, turn on a coffee 12 Mar. 2016.
253
Software architecture
Fields of Study troubleshoot potential problems. These problems
are far easier to address while the system is in devel-
Applications; Software Engineering; Operating
opment rather than after it is operational.
Systems
Software architects examine how a system’s func-
tional requirements and nonfunctional require-
Abstract
ments relate to each other. Functional requirements
Software architecture refers to the specific set of deci- control what processes a system is able to perform.
sions that software engineers make to organize the Nonfunctional requirements control the overall op-
complex structure of a computer system under devel- eration of a program rather than specific behaviors.
opment. Sound software architecture helps minimize They include performance metrics such as manage-
the risk of the system faltering as well as optimizing its ability, security, reliability, maintainability, usability,
performance, durability, and reliability. adaptability, and resilience. Nonfunctional require-
ments place constraints on the system’s functional
Prinicipal Terms requirements.
The main challenge for the software architect is to
agile software development: a method of software
determine which requirements should be optimized.
development that addresses changing require-
If a client looking for a new software program is asked
ments as they arise throughout the process.
what requirements are most critical—usability, per-
component-based development: an approach to
formance, or security, for instance—they are most
software design that uses standardized software
likely going to say all of them. Because this cannot
components to create new applications and new
be done without exorbitant costs, the software archi-
software.
tect prioritizes the list of requirements, knowing that
functional requirement: a specific function of a
there must be trade-offs in the design of any applica-
computer system, such as calculating or data pro-
tion. If, for instance, the project is a long-term home-
cessing.
loan application program or a website for purchasing
nonfunctional requirement: also called extrafunc-
airplane tickets, the architect will most likely focus on
tional requirement; an attribute of a computer
security and modification. If the project is short term,
system, such as reliability, scalability, testability,
such as a seasonal marketing campaign or a website
security, or usability, that reflects the operational
for a political campaign, the architect will focus in-
performance of the system.
stead on usability and performance.
plug-in: an application that is easily installed
(plugged in) to add a function to a computer
Methodology
system.
Software architecture design is an early-stage Abstract
separation of concerns: a principle of software
process that allows for the testing of an assortment of
engineering in which the designer separates the
scenarios in order to maximize the functionality of
computer program’s functions into discrete ele-
a system’s most critical elements. Well-planned soft-
ments.
ware architecture helps developers ascertain how the
system will operate and how best to minimize poten-
Challenges of Software Architecture
tial risks or system failures. In most cases, software
Building architects deal with static structures that
architecture factors in modifiability, allowing the
maintain their structural integrity over the long
system to grow over time to prevent obsolescence and
term. In contrast, the architecture of a computer
anticipate future user needs.
program must be able to change, grow, and be modi-
Software architecture projects can involve weeks,
fied. “Software architecture” refers to the internal
months, or even years of development. Software ar-
operations of a system under development and how
chitects often develop a basic skeletal system early
its elements will ultimately function together. It is a
in the development process. While this early system
blueprint that helps software engineers avoid and
lacks the depth and reach of the desired program,
254
Build for adaptivity Use computer Use visualizations for Minimize complexity
rather than longevity modeling to analyze communication and through key engineering
risk and dependencies collaboration decisions
Software architecture is the structural design of the software. When designing new software, it is important to build in flexibility, use
models to analyze the design and reduce risks, use visualizations to communicate and collaborate with stakeholders, and maintain a
focus on reducing complexity. EBSCO illustration.
it provides critical insights into the system’s devel- software. Software architects start the development
oping functionality. Incremental modifications are process by looking at the broadest possible implica-
then made and tested to ensure that the emerging tions of a proposed system’s elements and their re-
system is performing properly. Multiple iterations lationships to one another. This distinguishes them
of the system are made until full functionality is from code developers, whose vision is often relatively
achieved. This approach is known as agile software narrow and specified. Software architects evaluate
development. the critical needs of the software, consider the needs
Software architects work to understand how the of both the client and the end user, and draft system
system will ultimately operate to meet its perfor- blueprints that maximize those requirements while
mance requirements. Programs should be designed managing the practical concerns of time and cost.
to be flexible enough to grow into more sophisti-
—Joseph Dewey
cated and more specialized operations. Plug-ins
can be used to add features to existing systems. By
designing software functions as discrete elements, bibliography
software architects can make the system easier to Bass, Len, Paul Clements, and Rick Kazman. Software
adapt. This design principle is known as separation Architecture in Practice. 3rd ed. Upper Saddle River:
of concerns. It allows one element of the program Addison, 2012. Print.
to be upgraded without dismantling the entire super- Cervantes, Humberto, and Rick Kazman. Designing
structure, for example. This has the potential to save Software Architectures: A Practical Approach. Upper
considerable time and money. Component-based Saddle River: Addison, 2016. Print.
development is a related idea that borrows from the Clements, Paul, et al. Documenting Software
industrial assembly-line model. It involves using and Architectures: Views and Beyond. 2nd ed. Upper
reusing standardized software components across Saddle River: Addison, 2011. Print.
different programs. Langer, Arthur M. Guide to Software Development:
Designing and Managing the Life Cycle. New York:
implications Springer, 2012. Print.
Software architecture aims to balance the end user’s Mitra, Tilak. Practical Software Architecture: Moving from
needs with the system’s behavioral infrastructure and System Context to Deployment. Indianapolis: IBM,
the expectations of the company that will support the 2015. Print.
255
Rozanski, Nick, and Eoin Woods. Software Systems Sonmez, John Z. Soft Skills: The Software Developer’s Life
Architecture: Working with Stakeholders Using Manual. Shelter Island: Manning, 2015. Print.
Viewpoints and Perspectives. 2nd ed. Upper Saddle Taylor, Richard N., Nenad Medvidović, and Eric M.
River: Addison, 2012. Print. Dashofy. Software Architecture: Foundations, Theory,
and Practice. Hoboken: Wiley, 2010. Print
Software regulations
Fields of Study Software Regulations and Legal
Standards
Software Engineering
Until 1983, computer programs could not copy-
righted in the United States. A software developer
Abstract
could copyright source code, but not the binary pro-
Software developers must keep numerous legal and gram produced when this code is compiled. This is
regulatory considerations in mind when creating because the compiled program was viewed as a “utili-
software. Organizations that use the software should tarian good” generated from the code rather than a
also be aware of these regulations in order to remain creative work. In order to assert a copyright, the de-
compliant, both in their record keeping and in their veloper had to make the source code available with
use of internal-use, proprietary, and open-source the program. While publishing the source code gave
software. a developer greater control, it also made it easier for
others to copy and modify the program.
Prinicipal Terms Copyright rules began to change with the US
Court of Appeals’ decision in Apple Computer, Inc.
compliance: adherence to standards or specifica-
v. Franklin Computer Corp. (1983). It was the first ap-
tions established by an official body to govern a
pellate court ruling to state that machine-readable
particular industry, product, or activity.
code is subject to copyright. Prior to this, developers
Health Insurance Portability and Accountability
had no reason to withhold source code. Computers
Act (HIPAA): a 1996 law that established national
were not standardized enough to make large-scale
standards for protecting individuals’ medical re-
development profitable, and software often had
cords and other personal health information.
to be modified to run on different computers.
internal-use software: software developed by a
Introducing software copyright allowed for greater
company for its own use to support general and
profit potential and provided new incentives for
administrative functions, such as payroll, ac-
standardization. It also gave developers a reason to
counting, or personnel management and mainte-
keep source code private: now they had a copyright
nance.
to protect.
open-source software: software that makes its
Since then, several laws have been passed to reg-
source code available to the public for free use,
ulate both software development and its end use.
study, modification, and distribution.
Because computer technology is constantly evolving,
proprietary software: software owned by an indi-
new regulations are often needed. One such law is
vidual or company that places certain restrictions
the Health Insurance Portability and Accountability
on its use, study, modification, or distribution and
Act (HIPAA). HIPAA includes provisions designed
typically withholds its source code.
to protect patients’ health information, particularly
Sarbanes-Oxley Act (SOX): a 2002 law that re-
when using software developed for health-care pro-
quires all business records, including electronic
viders. Any software or application (app) that collects
records and electronic messages, to be retained
or stores personally identifiable health information
for a certain period of time.
or shares it with certain covered medical entities,
256
Without a single overarching regulatory organization for online personal information privacy and confidentiality, a number
of acts have been adopted to protect consumers. Each act focuses on a different aspect of online privacy protection. EBSCO
illustration.
such as doctors and hospitals, must be in compliance software damage the user’s computer in some way. As
with HIPAA. a legal contract, license agreements can, in theory, be
Another law, the Sarbanes-Oxley Act (SOX), enforced in court. In practice, enforceability may de-
covers information retention. It states that all orga- pend on the terms of the agreement, how and when
nizations, regardless of size, must retain certain busi- the user consented to it, and even which court has
ness records for at least five years. E-mails and elec- jurisdiction.
tronic records are included in this category. Other types of software include freeware, share-
ware, and internal-use software. Freeware can be
Types of Software freely used, copied, and distributed but does not
There are several types of software, distinguished by permit modification of source code. Shareware
which license governs their use. A software license is is a type of proprietary software that is initially
a legal instrument that states how copyrighted soft- provided for no cost and can be freely copied
ware can be used. Open-source software makes its and distributed, but continued use under certain
source code available, with no restrictions on how it conditions requires the purchase of a license.
may be used. Its license gives users the right to modify Internal-use software, or private software, is de-
the program, make copies, and distribute it to others. veloped for a company’s own internal use but not
Open-source software is usually, but not always, free made publicly available.
of charge.
Proprietary software is software on which the copy- Mobile and Smartphone Software
right holder has placed certain restrictions. It typi- In 2008, Google released the first version of Android,
cally comes with a license agreement. This is an im- a smartphone operating system (OS) based on
plied contract between the copyright holder and the Linux. Android is open-source software, with source
end user. The license agreement spells out what the code available through the Android Open Source
user can and cannot to do with the software. It may Project. As a result, a large community has formed
also include a disclaimer of responsibility should the in which developers modify and distribute their own
257
258
Software testing
Fields of Study user interface (GUI) and other more user-friendly
software highlighted the need for more thorough
Software Engineering; Applications; Computer
testing. Consumers expect programs to work prop-
Engineering
erly from the start. Therefore, programmers started
taking a more careful and systematic approach. Soon,
Abstract
testing throughout the development process became
Software testing ensures that software and applica- the industry standard.
tions perform well and meet users’ needs. It is in- Manufacturers value software testing because it
tended to expose problems such as defects (often prevents flawed products from entering the market.
referred to as bugs) or inefficient design. Software Delivering software or launching an application only
testing allows project managers to make informed to have customers discover bugs can have both short-
decisions about moving forward or making changes and long-term negative effects. Poorly tested software
on a product before releasing it. can lead to declining sales, damage to the compa-
ny’s brand, and possibly even harm to a customer’s
Prinicipal Terms business operations. In addition, testing can save
time and money. It is much easier to correct errors
agile software development: an approach to soft-
during the development process than after a release.
ware development that addresses changing re-
Without testing, manufacturers risk lost opportuni-
quirements as they arise throughout the process,
ties, as users who have a bad experience often switch
with programming, implementation, and testing
to a competing product.
occurring simultaneously.
black-box testing: a testing technique in which
Software Testing Methods
function is analyzed based on output only, without
“Software testing” is broad term describing a va-
knowledge of structure or coding.
riety of specific methods. Programmers test dif-
dynamic testing: a testing technique in which soft-
ferent aspects of applications, including design,
ware input is tested and output is analyzed by ex-
response to inputs, usability, stability, and results.
ecuting the code.
The type of test they choose is based on factors
phased software development: an approach to
such as the programming language and what they
software development in which most testing oc-
need to learn.
curs after the system requirements have been im-
Agile software development is a development
plemented.
process that emphasizes teamwork, customer in-
static testing: a testing technique in which software
volvement, and user testing of portions of the
is tested by analyzing the program and associated
system. Agile practitioners follow the views of the
documentation, without executing its code.
“Agile Manifesto” (2001), written by a group of
white-box testing: a testing technique that in-
developers who wanted to change the software de-
cludes complete knowledge of an application’s
velopment process. According to the agile method-
coding and structure.
ology, testing is not a phase. Instead, tests are per-
formed continuously as the product is developed
The Importance of Software Testing
and requirements change. In contrast, phased
Software testing contributes to the development of
software development follows the original require-
programs and applications (apps) by detecting gaps
ments, includes the features that matter most,
between the software’s stated requirements and its
and tests when development is completed. New
actual performance. This testing informs software
requirements can be established after the original
engineers about any poor functionality, missing re-
software is in use.
quirements, errors, and defects. Originally, program-
White-box testing is also referred to as glass-box or
mers tested software at the end of the development
clear-box testing. It produces test data by examining
process. However, the popularity of the graphical
the program’s code. White-box testing is useful for
259
Non-functional Performance
system requirements test
Functional System
system requirements test
High-level Integration
technical design test
Detailed
Unit test
technical design
Software Software
design testing
CODE
Software testing using the V-model incorporates multiple tests for each stage of software development to ensure all levels of software
design, from user requirements to low-level technical design requirements, are implemented properly. Image adapted from Infinite
Computing Systems, Inc EBSCO illustration.
finding errors in hidden code. However, it can be ex- There are dozens of additional approaches to
pensive and requires in-depth knowledge of the pro- software testing. In static testing, code reviews and
gram or app’s programming language. The opposite analyses are used to discover inconsistencies and
of white-box testing is black-box testing, which tests variables in the code. In dynamic testing, the code is
functionality using only the specifications, not the actually executed and its behavior is analyzed. Static
code. Testers know what the app is supposed to do testing is for verification, while dynamic testing is for
but not how it operates. validation.
260
Automating the Process of various users, testers can uncover defects and im-
Because the testing process is critical and detail ori- prove the user experience.
ented as well as repetitive, tools have been developed
to assist in the process. These include: Moving Software Testing to the Cloud
Information technology (IT) firms spend hundreds
test management tools
of billions every year on software testing because con-
static analysis tools
sumers and businesses expect the software and apps
test data preparation tools
they purchase to work as they expect. These firms in-
test execution tools
vest in servers, databases, storage, operating systems,
performance testing tools
and testing tools, all of which need to be upgraded
coverage measurement tools
and maintained. The cost is generally accepted be-
incident management tools
cause the risk of delivering a flawed product greatly
Software testing tools can manage and schedule the outweighs the cost of thorough testing.
testing process. These tools also log defects, track As IT companies face greater competition and
changes, monitor performance, and conduct static pressures to earn profits, testing will require new
testing, analysis, and design. Specialized software solutions. Cloud-based systems provide speed and
performs repetitive tasks and tests that are difficult or cost savings because service providers can maintain
time consuming to perform manually. systems, tools, storage, and databases in a more cost-
effective manner.
When Testing Is Insufficient
—Teresa E. Schmidt
Releasing an app that does not function as expected
can cause serious repercussions, even for a respected
company. When Apple first introduced the Apple Bibliography
Maps app, users soon discovered that certain cities Holland, Bill. “Software Testing: A History.” SitePoint.
were mislabeled or had disappeared, familiar land- SitePoint, 15 Feb. 2012. Web. 9 Feb. 2016.
marks had moved, and satellite images were obscured Jorgensen, Paul C. Software Testing: A Craftsman’s
by clouds. As a result, the company faced ridicule, Approach. 4th ed. Boca Raton: CRC, 2014. Print.
and Apple’s CEO was compelled to issue an apology. Mili, Ali, and Fairouz Tchier. Software Testing: Concepts
To ensure proper testing and avoid such prob- and Operations. Hoboken: Wiley, 2015. Print.
lems, programmers follow a series of steps, starting Mitchell, Jamie L., and Rex Black. Advanced Software
with reviewing software specifications and developing Testing. 2nd ed. 3 vols. Santa Barbara: Rocky Nook,
a test plan. They also 4 Science Reference Center™ 2015. Print.
Software Testing write test cases. Test cases are sets of Murphy, Chris. “How to Save $150 Billion: Move All
actions that verify program functions. Writing effec- App Dev and Testing to the Cloud.” Forbes. Forbes.
tive test cases can save time and money throughout com, 3 Feb. 2016. Web. 10 Feb. 2016.
the testing process. As testing proceeds, bugs are dis- Singh, Amandeep. “Top 13 Tips for Writing Effective
covered, such as when an expected result is not the Test Cases for Any Application.” Quick Software
actual result. These bugs are logged and assigned to a Testing. QuickSoftwareTesting, 23 Jan. 2014. Web.
developer for fixing. 11 Feb. 2016.
Programmers approach testing from many direc- Smith, Catharine. “Tim Cook Issues Apology for
tions. Some attempt to make an app perform func- Apple Maps.” Huffpost Tech. TheHuffingtonPost.
tions it should not do. Others imagine various sce- com, 28 Sept. 2012. Web. 11 Feb. 2016.
narios, such as what would happen if someone tried “Why Do You Need to Test Software?” BBC Academy.
to use the software maliciously or with no knowledge BBC, 23 Feb. 2015. Web. 7 Feb. 2016.
of the application. By putting themselves in the place
261
Software-defined radio
Fields of Study to smaller ones that grab the signal and relay it to
a receiver. The receiver uses a mixer to convert the
Digital Media; Software Engineering
carrier radio frequency (RF) to an intermediate
one for easier processing. A filter removes distor-
Abstract
tion, and the signal is then released into the sys-
By modifying the hardware of a standard radio set tem’s amplifiers, thus recreating the original radio
with layers of operational software, a software-defined programming. The varieties of radio wave tech-
radio (SDR) system can greatly expand its versatility nology—the familiar AM/FM radio bands, walkie-
and power efficiently and cost-effectively. Digital and talkies, ham radio systems, emergency notification
SDR technology provide radio reception a stronger, systems, transportation communication systems—
more durable signal. SDR may also allow for the cen- attest to its vital role in moving information effi-
tralization of common applications that rely on radio ciently and effectively.
communication. Although such radio systems revolutionized com-
munication, this analog system did present major
Prinicipal Terms problems. The signal (that is, the energy wave itself)
was tied to the information being sent. If the wave is
amplifier: a device that strengthens the power,
disrupted or compromised, the information itself is
voltage, or current of a signal.
compromised. This has led to frustrations with recep-
converter: a device that expands a system’s range
tion, the clarity of a signal. Signals are vulnerable to
of reception by bringing in and adapting signals
distortions within the atmosphere, most notably from
that the system was not originally designed to pro-
rain, fog, or solar activity. They can also be disrupted
cess.
or even lost due to surfaces coming between trans-
mixer: a component that converts random input
mitter and receiver. Nearly any solid object, from
radio frequency (RF) signal into a known, fixed
trees to buildings, can destabilize a radio signal. And
frequency to make processing the signal easier.
the strength of the original broadcast signal and the
modulator: a device used to regulate or adjust
range of receiver also impact the reach (and quality)
some aspect of an electromagnetic wave.
of the signal. Because the information is relayed by
software-defined antennas: reconfigurable an-
waves, the analog radio set relies on an array of hard-
tennas that transmit or receive radio signals ac-
ware components, each with a radio chip designed to
cording to software instructions.
perform one crucial function. The physical layout of
sound card: a peripheral circuit board that en-
each component—antenna, mixer, amplifier, modu-
ables a computer to accept audio input, convert
lator, and sometimes, converters—can be consider-
signals between analog and digital formats, and
able. Analog radio, although useful and remarkably
produce sound.
versatile, is thus cumbersome, costly, and not entirely
reliable.
How Radio Works
Software-defined radio (SDR), like analog radio,
Radio remains the most useful and most widely
transmits acoustic information from a source to a
used communication technology for sharing both
destination and uses similar equipment. However,
entertainment and information. The basic tech-
SDR addresses several longstanding issues, from
nology of the conventional radio is simple: radio
sound quality to cost.
waves are enriched with information—music, talk,
weather, news—and sent wirelessly from a trans-
Digital and Software-Defined Radio
mitter to a receiver. The receiver might be down
In digital radio, information is encoded as binary
the street, or halfway around the earth. The source
numbers. These are then sent as on-off pulses along
emits a steady radio signal whose frequency or am-
radio waves. The information is thus generated (or
plitude is modulated to add the message informa-
defined) by a computer and in turn, the transmis-
tion. Then, signal is beamed from large antennas
sion is decoded by another computing device. More
262
Smart
Antenna
Analog- Output
Digital Processing Hardware & Software
Converter
Channelization
Flexible and Hardware Software
RF Sample Rate • FPCAs • Algorithms
Hardware Conversion • DSPs • Middleware
• ASICs • CORBA Input
Digital-
Analog • Virtual Radio Machine
Converter
Hardwired
Analog signal
Digital signal
Software defined radio replaces much of the hardware needed for standard analog radio processing with computer hardware and software.
The software requires conversion of the signal from analog to digital before processing. Adapted from McSush derivation of Tarkvaralise
raadio plokkskeem.
importantly, the transmission is sent again and again receiving antenna retrieves the signal, which is con-
in a kind of barrage of information. This guarantees verted to a stable frequency. Then, a demodulator
a stronger, more consistent signal reception because separates the ASCII data from the RF carrier. A dig-
the receiver can assemble the reproduced signal from ital-to-analog converter in a sound card reproduces
the many information fragments recovered from the the information. An amplifier then projects it into a
signal field. That process takes fractions of seconds speaker system, headphone, or earpiece. Software is
longer but greatly improves the sound quality and used in as much of the signal processing as possible
signal reliability. in SDR systems.
The SDR process begins with the microphone
where the initial audio data are created. As in analog implications
radio, an amplifier is fed the signal and strengthens SDR is perhaps best appreciated for its implications.
it for transmission. That signal is sent through an an- A single outfit might serve as a radio, certainly. But
alog-to-digital converter that recasts the information just by adding various software applications, it might
as ASCII data. ASCII is an encoding system that con- also provide cell phone reception, fax and ham radio
verts English language content into numbers. This capabilities, weather and traffic information, global
makes the transfer of the signal to another computer positioning, and web access. In addition, SDR could
possible. A modulator then presses that ASCII data greatly enhance business operations via videocon-
onto the designated RF carrier. Amplifiers strengthen ferencing. All of those functions use different fre-
the signal to the degree necessary to broadcast it quencies in different bands of the electromagnetic
from a software-defined antenna. A software-defined spectrum. SDR expands the radio’s ability to receive
263
and process those various frequencies. SDR is already Ewing, Martin. The ABCs of Software Defined Radio.
used for military operations and cellular networks. Hartford: Amer. Radio Relay League, 2012. Print.
Its versatility and flexibility may someday make SDR Grayver, Eugene. Implementing Software Defined Radio.
a cost-effective way for anyone to access virtually all New York: Springer, 2012. Print.
communication systems without greatly altering a Johnson, C. Richard, and William A. Sethares.
radio set’s physical parts. Telecommunications Breakdown: Concepts of
Communication Transmitted via Software-Defined
—Joseph Dewey
Radio. New York: Prentice, 2003. Print.
Pu, Di, and Alexander M. Wyglinski. Digital
Bibliography Communication Systems Engineering with Software-
Dillinger, Markus, Kambiz Madani, and Nancy Defined Radio. London: Artech, 2013. Print.
Alonistioti. Software Defined Radio: Architectures, Reed, Jeffrey H. Software Radio: A Modern Approach to
Systems, and Functions. Hoboken: Wiley, 2003. Radio Engineering. New York: Prentice, 2002. Print.
Print.
Speech-recognition software
Fields of Study speaker independent: describes speech software
that can be used by any speaker of a given lan-
Software Engineering; Applications; Algorithms
guage.
Abstract
The Basics of Speech Recognition
Speech-recognition software records, analyzes, and Speech-recognition software consists of computer
responds to human speech. The earliest such systems programs that can recognize and respond to human
were used for speech-to-text programs. Speech recog- speech. Applications include speech-to-text software
nition became commonplace in the 2010s through that translates speech into digital text for text mes-
automated assistants. Speech recognition depends saging and document dictation. This software is also
on complex algorithms that analyze speech pat- used by automated personal assistants such as Apple’s
terns and predict the most likely word from various Siri and Microsoft’s Cortana, which can respond to
possibilities. spoken commands. Speech-recognition software de-
velopment draws on the fields of linguistics, machine
Prinicipal Terms learning, and software engineering. Researchers first
began investigating the possibility of speech-recog-
deep learning: an emerging field of artificial in-
nition software in the 1950s. However, the first such
telligence research that uses neural network algo-
programs only became available to the public in the
rithms to improve machine learning.
1990s.
hidden Markov model: a type of model used to
Speech-recognition software works by recognizing
represent a dynamic system in which each state
the phonemes that make up words. Algorithms are
can only be partially seen.
used to identify the most likely word implied by the se-
neural network: in computing, a model of infor-
quence of phonemes detected. The English language
mation processing based on the structure and
has forty-four phonemes, which can be combined to
function of biological neural networks such as the
create tens of thousands of different words. A par-
human brain.
ticularly difficult aspect of speech recognition is dis-
phoneme: a sound in a specified language or dia-
tinguishing between homonyms (or homophones).
lect that is used to compose words or to distinguish
These are words that consist of the same phonemes
between words.
264
Pronunciation
Models
Spectral Probability
SPEECH Analysis Decode Estimate TRANSCRIPTION
Rules for
Grammar
Speech recognition software must perform a number of processes to convert the spoken word to the written word. A spoken sen-
tence must first go through spectral analysis to identify the unique soundwave, then the soundwaves are decoded into potential
words, and finally the words are run through probability algorithms that estimate their likelihood based on the rules of grammar and
pronunciation models. The end result is the most likely transcription of what was spoken. EBSCO illustration.
but are typically spelled differently. Examples in- HMM is an algorithm that evaluates a series of poten-
clude “addition” versus “edition” and “scent” versus tial outcomes to a problem and estimates the prob-
“cent.” Distinguishing between homonyms requires ability of each one. It is used to determine the “most
an understanding of context. Speech-recognition likely explanation” of a sequence of phonemes, and
software must be able to evaluate surrounding words thus the most likely word, given options taken from
to discern the most likely homonym intended by the a speaker’s phonemes. Together, HMMs and DTW
speaker. are used to predict the most likely word or words in-
Some speech-recognition software uses training, tended by an utterance.
in which the speaker first reads text or a list of vo- Speech recognition is based on predictive analysis.
cabulary words to help the program learn particu- An important part of developing a predictive algo-
larities of their voice. Training increases accuracy rithm is feature engineering. This is the process of
and decreases the error rate. Software that requires teaching a computer to recognize features, or rele-
training is described as speaker dependent. Speaker- vant characteristics needed to solve a problem. Raw
independent software does not require training, but speech features are shown as waveforms. Speech
it may be less accurate. Speaker-adaptive systems can waveforms are the 2-D representations of sonic sig-
alter some operations in response to new users. nals produced when various phonemes are said.
An emerging feature in speech recognition is the
speech-recognition Algorithms use of neutral networks. These computing systems are
Research into speech-recognition software began designed to mimic the way that brains handle compu-
in the 1950s. The first functional speech-recogni- tations. Though only beginning to affect speech rec-
tion programs were developed in the 1960s and ognition, neural networks are being combined with
1970s. The first innovation in speech-recognition deep learning algorithms, which make use of raw fea-
technology was the development of dynamic time tures, to analyze data.
warping (DTW). DTW is an algorithm that can ana-
lyze and compare two auditory sequences that occur Applications and Future directions
at different rates. Deep neural network algorithms and other ad-
Speech recognition advanced rapidly with the in- vancements have made speech recognition soft-
vention of the hidden Markov model (HMM). The ware more accurate and efficient. The most familiar
265
applications for speech-recognition technology commonplace, a wider range of users will be able to
include the voice-to-text and voice-to-type fea- use advanced computing features.
tures on many computers and smartphones. Such
—Micah L. Issitt
features automatically translate the user’s voice
into text for sending text messages or composing
documents or e-mails. Most speech-recognition Bibliography
programs rely on cloud computing, which is the Gallagher, Sean. “Cortana for All: Microsoft’s Plan
collective data storage and processing capability of to Put Voice Recognition behind Anything.” Ars
remote computer networks. The user’s speech is Technica. Condé Nast, 15 May 2015. Web. 21 Mar.
uploaded to the cloud, where computers equipped 2016.
with complex algorithms analyze the speech be- Information Resources Management Association, ed.
fore returning the data to the user. Automated as- Assistive Technologies: Concepts, Methodologies, Tools,
sistant programs such as Siri and Cortana can use and Applications. Vol. 1. Hershey: Information
an array of data collected from a user’s device to Science Reference, 2014. Print.
aid comprehension. For instance, if a user tells a “How Speech-Recognition Software Got So Good.”
speech-recognition program “bank,” the program Economist. Economist Newspaper, 22 Apr 2014.
uses the Internet and global positioning systems to Web. 21 Mar. 2016.
return data on nearby banks or banks that the user Kay, Roger. “Behind Apple’s Siri Lies Nuance’s
has visited in the past. Speech Recognition.” Forbes. Forbes. com, 24 Mar.
Experts predict that speech-recognition apps and 2014. Web. 21 Mar. 2016.
devices will likely become ubiquitous. Fast, accented, Manjoo, Farhad. “Now You’re Talking!” Slate. Slate
or impeded speech and slang words pose much less of Group, 6 Apr. 2011. Web. 21 Mar. 2016.
a challenge than they once did. Speech-recognition McMillan, Robert. “Siri Will Soon Understand You
software has become a basic feature in many new a Whole Lot Better.” Wired. Condé Nast, 30 June
versions of the Mac and Windows operating systems. 2014. Web. 21 Mar. 2016.
These programs also help make digital technology Pinola, Melanie. “Speech Recognition through the
more accessible for people with disabilities. In fu- Decades: How We Ended Up with Siri.” PCWorld.
ture, as voice recognition improves and becomes IDG Consumer & SMB, 2 Nov. 2011. Web. 21 Mar.
2016.
266
A model of a Turing Machine as seen at the Go Ask Alice exhibit at the Harvard Collection of Historical Scientific Instruments. By GabrielF
(Own work) [CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons
What Exactly is a Turing Machine? The Turing machine starts out in a specific state,
This simple machine is made up of a tape (a ribbon then a program is written, on the tape, consisting of a
of paper) containing an algorithm and a program- list of transitions, telling the head what the next state
mable read-write head (an instrument that can read should be and where it should move. The transition
the symbols on the tape, write a new symbol and tells the head to do three things: (1) print something
move, for example, left/right or up/down). These on the tape, (2) move to the right or left by one cell,
terms may seem a bit archaic, but they give a sense and (3) change to a new state. The machine can also
of what kinds of machines existed when Turing in- stop if there is no unique transition, for example,
vented this machine. The input on the tape must there is nothing on the tape.
consist of a finite number of symbols; however, the Even Turing himself did not think that this ma-
tape, ideally, is infinitely long. Turing imagined this chine would be the model one would use to actually
type of input to show that there are tasks that these build a practical computing machine. He called his
machines cannot perform, even with unlimited time idea a machine of the mind, a thought experiment,
and working memory. something that was created to explore problems in
268
logic and discover the limits of the human mind as it With this simple programming, the Turing machine
applied to machines. In fact, he himself did not pro- will print an endless tape full of alternating 1s and 0s,
mote his ideas about Turing machines very much in leaving a blank space in between each numeral.
the fields of computer science or mathematical logic.
Others, such as Martin Davis and Marvin Minksy, saw Why is a Turing Machine so Important?
the potential for this idea in mainstream logic and The advent of the Turing machine got people started
computer sciences. This idea gained further ground thinking about coding theory for computers, what
in the 1970s with complexity theory and in the 1980s kinds of problems computers are able to solve, and
with the development of quantum computing. what kinds of programming languages we can use to
communicate with them, such as Turing complete.
How does a Turing Machine Work? Any computer is, at its base, a Turing machine. It is
There are really only six operations that a basic a model of computation that captures the idea of
Turing machine can perform: what computability is very simply, without needing
to think about all the parts your computer currently
• Read the symbol that is under the head
contains. According to the Church-Turing thesis, no
• Write a symbol on the tape under the head
computing device is more powerful than a Turing ma-
• Move the tape one square left
chine. Some scientists even find examples of Turing
• Move the tape one square right
machines in nature; for example, our cells have ribo-
• Change its state
somes that translate RNA into proteins, using much
• Stop
the same process as a Turing machine.
How a Turing machine acts is completely depen- Alan Turing was a large part of the Enigma project
dent on (1) the current state of the machine, (2) the during World War II. This project was the subject of
symbol on the tape that is currently being read by the several movies such as The Imitation Game and Enigma.
head, and (3) a table of transition rules, or the pro-
—Marianne Moss Madsen, MS
gram, for the machine.
We could write this as Statecurrent, Symbol, Statenext,
Action. If the machine is in a Current State and the Bibliography
tape contains the recognized Symbol, the machine Bernhardt, Chris. Turing’s Vision: The Birth of Computer
will then move into the Next State and take Action. Science. MIT Press, 2016.
The tape serves as the memory of the machine Boyle, David. Alan Turing: Unlocking the Enigma.
while the head is the mechanism by which data is ac- CreateSpace Independent Publishing Platform, 2014.
cessed and updates the action of the machine. Dyson, George. Turing’s Cathedral: The Origins of the
Here is an example of a program for a Turing ma- Digital Universe. Vintage, 2012.
chine which starts with a blank, endless tape. This Hodges, Andrew. Alan Turing: The Enigma: The
function tells the machine to perform the process Book That Inspired the Film “The Imitation Game.”
of printing alternating characters, 0s and 1s, on the Princeton University Press, 2014.
tape, leaving a blank space in between each numeral. McKay, Sinclair. The Secret Lives of Codebreakers: The
The machine has four possible states, A, B, C, or D. Men and Women Who Cracked the Enigma Code at
Bletchley Park. Plume, 2012.
State Print Move Next State Nicolelis, Miguel A. and Ronald M. Cicurel. The
Relativistic Brain: How it works and why it cannot
A 0 R B be simulated by a Turing machine. CreateSpace
Independent Publishing Platform, 2015.
B R C
Petzold, Charles. The Annotated Turing: A Guided Tour
C 1 R D Through Alan Turing’s Historic Paper on Computability
and the Turing Machine. Wiley, 2008.
D R A Soare, Robert I. Turing Computability: Theory
and Applications (Theory and Applications of
Computability). Springer, 2016.
269
tUrIng test
Fields oF study respond to questions in such a way as to fool a
human judge into thinking it was human.
Computer Science; Robotics
can machines think?
AbstrAct
In 1950, British mathematician Alan Turing (1912–
The Turing test is a game proposed by computer 54) wrote a paper titled “Computing Machinery
scientist and mathematician Alan Turing in 1950 in and Intelligence” in which he asked, “Can machines
order to determine whether machines can think. think?” The question was too difficult to answer di-
Despite criticism, the test has shaped the develop- rectly, so instead he thought up a simple game to
ment and study of artificial intelligence ever since. compare a machine’s ability to respond in conversa-
tion to that of a human. If the machine could fool a
PriniciPAl terms human participant into believing it was human, then
it could be considered functionally indistinguishable
artificial intelligence: the intelligence exhibited by
from a thinking entity (i.e., a person). This game
machines or computers, in contrast to human, or-
later came to be known as the Turing test.
ganic, or animal intelligence.
In Turing’s time, digital computers and automata
automaton: a machine that mimics a human but is
already existed. However, the notion of developing
generally considered to be unthinking.
machines with programming sophisticated enough
chatterbot: a computer program that mimics
to engender something like consciousness was still
human conversation responses in order to interact
very new. What Turing envisioned would, within the
with people through text; also called “talkbot,”
decade, become the field of artificial intelligence
“chatbot,” or simply “bot.”
(AI): the quest for humanlike, or at least human-
imitation game: Alan Turing’s name for his pro-
equivalent, intelligence in a machine.
posed test, in which a machine would attempt to
Person A I love
blue
I love blue
Person B
The Turing test of artificial intelligence should allow person A to determine whether they are corre-
sponding via technology with a human or a machine entity. EBSCO illustration.
270
The Imitation Game Objections fall into two main camps. Some object to
To settle the question of whether or not machines can the idea that the Turing test is a reasonable test of the
think, Turing proposed what he called an imitation presence of intelligence, while others object to the
game. He based it on a party game of the time, played idea that machines are capable of intelligence at all.
by a man, a woman, and a third party (the judge). In With regard to the former, some critics have argued
the game, the judge stays in a separate room from the that a machine without intelligence could pass the
contestants and asks them questions, which they an- test if it had sufficient processing power and memory
swer via writing or an impartial intermediary. Based to automatically respond to questions with prewritten
on their answers, the judge must determine which answers. Others feel that the test is too difficult and
player is which. The man tries to fool the judge, while too narrow a goal to help guide AI research.
the woman attempts to help him or her.
In Turing’s game, instead of a man and a woman, Legacy of the Turing Test
the players would be a human and a machine. Despite objections, the Turing test has endured as a
Computer terminals would be used to facilitate anon- concept in AI research and robotics. Many similar,
ymous text-based communication. If the machine though not identical, tests are also informally called
could fool a human judge a sufficient percentage Turing tests. In 2014, sixty years after Turing’s death,
of the time, Turing argued, it would be functionally a program named Eugene Goostman made head-
equivalent to a human in terms of conversational lines for passing a version of the Turing test.
ability. Therefore, it must be considered intelligent. However, the Turing test’s lasting contribution to
Later versions of the game eliminated the need for AI is not its utility as a test, but the context in which
a human to compete against the machine. Instead, Turing proposed it. With his proposal, Turing be-
the judge is presented with a text-based interface and came the first major advocate for the idea that hu-
told to ask it questions to determine if he or she is manlike machine intelligence was indeed possible.
talking to a person or a machine. This version has Though he died before AI emerged as a proper field
been the basis of the Loebner Prize chatterbot com- of study, his ideas shaped its development for decades
petition since 1995. thereafter.
—Kenrick Vezina, MS
Natural Language Processing
Turing’s challenge spurred the development of a sub-
field of AI known as “natural language processing” Bibliography
(NLP), devoted to creating programs that can un- Ball, Phillip. “The Truth about the Turing Test.”
derstand and produce humanlike speech. The 1966 Future. BBC, 24 July 2015. Web. 18 Dec. 2015.
program ELIZA, written by German American com- Myers, Courtney Boyd, ed. The AI Report. Forbes.
puter scientist Joseph Weizenbaum (1923–2008), was Forbes.com, 22 June 2009. Web. 18 Dec. 2015.
very convincing in its ability to imitate a Rogerian Olley, Allan. “Can Machines Think Yet? A Brief
psychotherapist (“How does that make you feel?”). History of the Turing Test.” Bubble Chamber. U of
Programs like ELIZA are called “chatterbots,” or Toronto’s Science Policy Working Group, 23 June
simply “bots.” These programs became a feature of 2014. Web. 18 Dec. 2015.
early text-based Internet communication. With the Oppy, Graham, and David Dowe. “The Turing Test.”
advent of smartphones, both Apple and Google have Stanford Encyclopedia of Philosophy (Spring 2011
developed advanced NLP to underpin the voice- Edition). Ed. Edward N. Zalta. Stanford U, 26 Jan.
activated functions of their devices, most famously 2011. Web. 18 Dec. 2015.
Apple’s AI assistant Siri. Turing, Alan M. “Computing Machinery and
Intelligence.” Mind 59.236 (1950): 433–60. Web.
Criticism of the Turing Test 23 Dec. 2015.
The Turing test has been a point of contention among “Turing Test.” Encyclopædia Britannica. Encyclopædia
AI researchers and computer scientists for decades. Britannica, 23 Sept. 2013. Web. 18 Dec. 2015.
271
0020 0030 0040 0050 0060 0070 00A0 00B0 00C0 00D0 00E0 00F0
0021 0031 0041 0051 0061 0071 00A1 00B1 00C1 00D1 00E1 00F1
0022 0032 0042 0052 0062 0072 00A2 00B2 00C2 00D2 00E2 00F2
0023 0033 0043 0053 0063 0073 00A3 00B3 00C3 00D3 00E3 00F3
0024 0034 0044 0054 0064 0074 00A4 00B4 00C4 00D4 00E4 00F4
0025 0035 0045 0055 0065 0075 00A5 00B5 00C5 00D5 00E5 00F5
0026 0036 0046 0056 0066 0076 00A6 00B6 00C6 00D6 00E6 00F6
0027 0037 0047 0057 0067 0077 00A7 00B7 00C7 00D7 00E7 00F7
0028 0038 0048 0058 0068 0078 00A8 00B8 00C8 00D8 00E8 00F8
0029 0039 0049 0059 0069 0079 00A9 00B9 00C9 00D9 00E9 00F9
002A 003A 004A 005A 006A 007A 00AA 00BA 00CA 00DA 00EA 00FA
002B 003B 004B 005B 006B 007B 00AB 00BB 00CB 00DB 00EB 00FB
002C 003C 004C 005C 006C 007C 00AC 00BC 00CC 00DC 00EC 00FC
002D 003D 004D 005D 006D 007D 00AD 00BD 00CD 00DD 00ED 00FD
002E > 003E 004E 005E 006E 007E 00AE 00BE 00CE 00DE 00EE 00FE
002F 003F 004F 005F 006F 007F 00AF 00BF 00CF 00DF 00EF 00FF
The Unicode Standard is a universally recognized coding system for more than 120,000 characters, using either 8-bit (UTF-8) or 16-bit
(UTF-16) encoding. This chart shows the character symbol and the corresponding hexadecimal UTF-8 code. For the first 127 characters,
UTF-8 and ASCII are identical. EBSCO illustration.
of U+0041 (which represents the grapheme for the are left undefined. One of these ranges includes all
letter A) might be provided to a web browser. The of the code points between U+E000 and U+F8FF.
browser might then render the glyph of the letter A Organizations may assign undefined code points to
using the Times New Roman font. their own private graphemes.
Unicode defines 1,114,112 code points. Each code One inherent problem with Unicode is that cer-
point is assigned a hexadecimal number ranging tain graphemes have been assigned to multiple
from 0 to 10FFFF. When written, these values are typi- code points. In an ideal system, each grapheme
cally preceded by U+. For example, the letter J is as- would be assigned to a single code point to sim-
signed the hexadecimal number 004A and is written plify text processing. However, in order to en-
U+004A. The Unicode Consortium provides charts courage the adoption of the Unicode standard,
listing all defined graphemes and their associated character encodings such as ASCII were supported
code points. In order to allow organizations to define in Unicode. This resulted in certain graphemes
their own private characters without conflicting with being assigned to more than one code point in the
assigned Unicode characters, ranges of code points Unicode standard.
273
Unicode also provides support for normaliza- Using Unicode to Connect Systems
tion. Normalization ensures that different code Worldwide
points that represent equivalent characters will be Since its introduction in 1991, Unicode has been
recognized as equal when processing text. For ex- widely adopted. Unicode is supported by major op-
ample, normalization ensures that the character erating systems and software companies including
é (U+00E9) and the combination of characters e Microsoft and Apple. Unicode is also implemented
(U+0065) and (U+0301) are treated as equivalent on UNIX systems as well. Unicode has become an
when processing text. important encoding system for use on the Internet.
It is widely supported by web browsers and other
Internet-related technologies. While older systems
Sample Problem such as ASCII are still used, Unicode’s support for
multiple languages makes it the most important
Using a hexadecimal character chart as a ref- character-encoding system in use. New languages,
erence, translate the following characters into pictographs, and symbols are added regularly. Thus,
their Unicode code point values: <, 9, ?, E, and Unicode remains poised for significant growth in the
@. decades to come.
Then select an undefined code point to
store a private grapheme. —Maura Valentino, MSLIS
Answer: Bibliography
Unicode uses the hexadecimal character Berry, John D. Language Culture Type: International
code preceded by a U+ to indicate that the Type Design in the Age of Unicode. New York: Graphis,
hexadecimal value refers to a Unicode char- 2002. Print.
acter. Using the chart, <, 9, ?, E, and @ are Gillam, Richard. Unicode Demystified: A Practical
associated with the following hexadecimal Programmer’s Guide to the Encoding Standard. Boston:
values: 003C, 0039, 003F, 0045, and 0040. Addison-Wesley, 2002. Print.
Their Unicode code point values are there- Graham, Tony. Unicode: A Primer. Foster City: M&T,
fore: U+003C, U+0039, U+003F, U+0045, and 2000. Print.
U+0040. Korpela, Jukka K. Unicode Explained. Sebastopol:
A private grapheme may be assigned any O’Reilly Media, 2006. Print.
code point value within the ranges U+E000 to “The Unicode Standard: A Technical Introduction.”
U+F8FF, U+F0000 to U+FFFFF, and U+100000 Unicode.org. Unicode, 25 June 2015. Web. 3 Mar.
to U+10FFFD. These code points are left un- 2016.
defined by the Unicode standards. “Unicode 8.0.0.” Unicode.org. Unicode, 17 June 2015.
Web. 3 Mar. 2016.
“What Is Unicode?” Unicode.org. Unicode, 1 Dec.
2015. Web. 3 Mar. 2016.
274
UNIX
Fields of Study Computing Service (Multics) project in collabora-
tion with the Massachusetts Institute of Technology
Operating Systems; Computer Science; Information
and General Electric. The group had focused on cre-
Technology
ating systems that allowed multiple users to access a
computer at once. After AT&T left the project, Bell
Abstract
programmers Ken Thompson and Dennis Ritchie
UNIX is a computer operating system originally de- began work on an OS. Thompson coded the bulk of
veloped by researchers at Bell Laboratories in 1969. the system, which consisted of 4,200 lines of code,
The term is also used to refer to later operating sys- in the summer of 1969, running it on an outdated
tems based in part on its source code. Several of the PDP-7 computer.
original UNIX operating system’s features, such as The OS was initially named the Unmultiplexed
its hierarchical file system and multiuser support, be- Information and Computing Service, a play on the
came standard in later systems. name of the Multics project. That name was later
shortened to UNIX. Thompson, Ritchie, and their
Prinicipal Terms colleagues continued to work on UNIX over the next
several years. In 1973 they rewrote the OS in the new
command-line interpreter: an interface that inter-
programming language C, created by Ritchie. UNIX
prets and carries out commands entered by the
gained popularity outside of Bell Laboratories in the
user.
mid-1970s. It subsequently inspired the creation of
hierarchical file system: a directory with a treelike
many UNIX variants and UNIX-like OSs.
structure in which files are organized.
kernel: the central component of an operating
Understanding UNIX
system.
While different editions of UNIX vary, the majority
multitasking: capable of carrying out multiple
of UNIX OSs have some common essential charac-
tasks at once.
teristics. UNIX’s kernel is the core of the OS. The
multiuser: capable of being used by multiple users
kernel is responsible for executing programs, allo-
at once.
cating memory, and otherwise running the system.
operating system (OS): a specialized program that
The user interacts with what is known as the “shell.”
manages a computer’s functions.
The shell is an interface that transmits the user’s com-
mands to the kernel. The original UNIX shell was a
Origin of UNIX
command-line interpreter, a text-based interface into
As computer technology rapidly developed in the
which the user types commands. Over time program-
mid-twentieth century, programmers sought to
mers developed a variety of different shells for UNIX
create means of interfacing with computers and
OSs. Some of these shells were graphical user inter-
making use of their functions in a more straightfor-
faces that enabled the user to operate the computer
ward, intuitive way. Chief among the goals of many
by interacting with icons and windows. Files saved to a
programmers was the creation of an operating system
computer running UNIX are stored in a hierarchical
(OS). OSs are specialized programs that manage all
file system. This file system used a treelike structure
of computers’ processes and functions. Although
that allowed folders to be saved within folders.
many different OSs were created over the decades,
UNIX proved to be one of the most influential.
Using UNIX
UNIX inspired numerous later OSs and continues to
In keeping with its origins as a project carried out by
be used in various forms into the twenty-first century.
former Multics researchers, UNIX was designed to
Development of the original UNIX OS began
have multiuser capabilities. This enabled multiple
in 1969 at Bell Laboratories, a research facility
people to use a single computer running UNIX at
then owned by AT&T. Researchers at Bell had
the same time. This was an especially important fea-
been working on the Multiplexed Information and
ture in the late 1960s and early 1970s. At this time,
275
The creators of UNIX were Dennis Ritchie (standing) and Ken Thompson (sitting). By Peter Hamer, CC
BY-SA 2.0 (http://creativecommons.org/licenses/by-sa/2.0), via Wikimedia Commons.
computers were not personal computers but large, unable to sell its researchers’ creation. Instead, the
expensive mainframes that took up a significant company licensed UNIX’s source code to various in-
amount of space and power. Multiuser capabilities stitutions. Programmers at those many institutions
made it possible for the organization using the UNIX rewrote portions of the OS’s code, creating UNIX
OS to maximize the functions of their computers. variants that suited their needs. Perhaps the most in-
UNIX is also a multitasking system, meaning it can fluential new form of UNIX was the Berkeley Software
carry out multiple operations at once. One of the first Distribution variant, developed at the University of
programs designed for UNIX was a text-editing pro- California, Berkeley, in the late 1970s.
gram needed by the employees of Bell Laboratories. In the early twenty-first century, the multitude of
Over time, programmers wrote numerous programs UNIX variants and UNIX-derived OSs are divided
compatible with the OS and its later variants, in- into two main categories. Those that conform to
cluding games, web browsers, and design software. standards established by an organization known as
the Open Group, which holds the trademark to the
UNIX Variants and UNIX-Like Operating UNIX name, may be referred to as “certified UNIX
Systems operating systems.” Systems that are similar to UNIX
At the time that UNIX was first developed, AT&T was but do not adhere to the Open Group’s standards are
prohibited from selling products in fields other than typically known as “UNIX-like operating systems.”
telecommunications. The company was therefore The latter category includes Apple’s OS X and the
276
free, open-source system Linux. The mobile OSs Raymond, Eric S. “Origins and History of Unix,
Android and Apple iOS also fall under this category 1969–1995.” The Art of UNIX Programming. Boston:
and account for hundreds of millions of users, argu- Pearson Education, 2004. Print.
ably making UNIX-derived OSs the most widely used Stonebank, M. “UNIX Introduction.” University of
systems ever. Surrey. U of Surrey, 2000. Web. 28 Feb. 2016.
Toomey, Warren. “The Strange Birth and Long Life
—Joy Crelin
of Unix.” IEEE Spectrum. IEEE, 28 Nov. 2011. Web.
28. Feb. 2016.
Bibliography “What Is Unix?” Knowledge Base. Indiana U, 2015.
Gancarz, Mike. The UNIX Philosophy. Woburn: Web. 28 Feb. 2016.
Butterworth, 1995. Print. Worstall, Tim. “Is Unix Now the Most Successful
“History and Timeline.” Open Group. Open Group, Operating System of All Time?” Forbes. Forbes.
n.d. Web. 28 Feb. 2016. com, 7 May 2013. Web. 7 Mar. 2016.
277
278
Social media
Get source code optimization
Generate sitemap
Usage analytics
Check competition
Google SERP position
Responsive check
Web design tools available through outside experts may provide the solutions needed to design a su-
perior website. Such tools include usage analytics, source-code generators, search engine optimiza-
tion, sitemap generators, competitive analysis, layout responsiveness, and social media optimization.
EBSCO illustration.
elements and emphasizes the message itself. The lack • Navigation: how website information is located.
of complex elements makes alternate layouts easier Good navigation makes it easy for users to move
to design and allows them to load faster. through the site and find what they need.
• Organization: how information is pre-
Why Web Design Matters sented. Ideally, information should be pre-
While it is important for websites to look appealing sented in order from most important to least
to users, web design includes more than just aes- important.
thetics. The designer’s role is to make a website as • Appearance. A site that looks appealing, with
user-friendly as possible. The elements of good web proper use of color, space, type, and images,
design include: builds trust and engagement.
279
Good web design creates an environment in which this, web designers should label images and other
users are comfortable, can find what they need, and decorative elements with “alt text”—alternative text
feel that their time was well spent. that describes these elements for those who cannot
see them. This text is also displayed on the screen if
Powerful Tools Make Website Design the element it describes fails to load.
Easier
The Internet is where business is conducted, learning The Future of Web Design
takes place, and connections are made. Businesses As web technology advances, web design tools will
and organizations need to have a web presence so be developed to take advantage of new possibilities,
their customers can learn about their products and as seen with wearable technology, cloud computing,
services. The development of web design program- and smartphone applications. Programming tools
ming tools has made it possible for professional de- will use artificial intelligence to determine the pur-
signers to create attractive and user-friendly websites pose of content and automatically alter the design for
in much less time, and thus at a lower cost. optimal results or for specific users’ needs. The way
Tools such as website builders also allow amateurs people interact with computers will continue to dras-
with no knowledge of coding to successfully create tically change, just as it has done from the beginning.
and launch their own websites without having to learn
—Teresa E. Schmidt
HTML or CSS. As of 2016, popular cloud-based web-
site builders include Squarespace, Webflow, Weebly,
Jimdo, WordPress, and Wix. Each of these tools uses Bibliography
HTML5, the fifth version of the HTML standard. Brownlee, John. “The History of Web Design
Many feature a variety of predesigned, customizable Explained in 9 GIFs.” Co.Design. Fast Co., 5 Dec.
templates. Templates simplify the entire process by 2014. Web. 22 Feb. 2016.
allowing users to plug their content into a preexisting “Choose a Website Builder: 14 Top Tools.” Creative
layout. Web designers have already completed both Bloq. Future, 8 Feb. 2016. Web. 22 Feb. 2016.
the visible design and the invisible coding that makes “Designing for Screen Reader Compatibility.”
everything work. Using a website template may have WebAIM. Center for Persons with Disabilities, Utah
some disadvantages, such as a limit on customization. State U, 19 Nov. 2014. Web. 22 Feb. 2016.
However, the ease and cost savings of these tools and “HTML Tutorial.” Tutorials Point. Tutorials Point,
templates appeal to many consumers. 2016. Web. 22 Feb. 2016.
Laszlo, Arp. “Why Is Website Design So Important?”
Making the Web More Accessible Sunrise Pro Websites & SEO. Sunrise Pro Websites,
Because the Internet is a primarily visual experi- 22 Jan. 2016. Web. 22 Feb. 2016.
ence, it is important that web designers make web- Luenendonk, Martin. “Top Programming Languages
sites more accessible for people with impaired vision. Used in Web Development.” Cleverism. Cleverism,
Screen-reading programs translate on-screen text 21 June 2015. Web. 22 Feb. 2016.
and output it to a text-to-speech system or a refresh- “Pros & Cons of Website Templates.” Entheos. Entheos,
able braille display. Text-to-speech programs can also n.d. Web. 22 Feb. 2016
improve accessibility for those who are illiterate or Weller, Nathan. “A Look into the Future of Web
learning disabled. Design: Where Will We Be in 20 Years?” Elegant
In addition to textual content, screen-reading pro- Themes Blog. Elegant Themes, 9 May 2015. Web. 22
grams can convey visual elements as well. To facilitate Feb. 2016.
280
MESSAGE
DESIGN
FUNCTIONALITY
A L
C A
C
ES PE
USABILITY
P
CONTENT
SI A
B L
IL A
IT S U
Y
VI
A quality website design ensures that the message gets across. Good web design incorporates accessible con-
tent, provided in a visually appealing way, through strong website back-end functionality and front-end us-
ability. EBSCO illustration.
image galleries, add functions such as drop-down popularity during the late 1990s. It provides further
menus, and make websites respond visually when options for making web pages interactive. When
a user clicked on text or images. Flash, developed used with HTML, PHP allows websites to create new
in 1996, allowed designers to add animated ele- content based on user information and to collect in-
ments to websites. However, not all browsers sup- formation from visitors.
ported Flash, so it was not as universally useful as In the 2010s, most web design is still based on
JavaScript. a combination of CSS and HTML. Programming
The next major step in web graphic design was in PHP and the database server software MySQL
the introduction of tableless web design. This ap- provides options for greater flexibility and interac-
proach to web design does not rely on HTML tables. tivity. New versions of web design languages, such
Instead, it uses style sheets to format pages. The as CSS4 and HTML5, offer more ways of incorpo-
Cascading Style Sheets (CSS) language, first intro- rating multimedia, better support for multilingual
duced in 1996, allows designers to separate the vi- websites, and a wider array of aesthetic options for
sual elements of the design from the content. CSS designers.
can determine the appearance and spacing, while
individual elements are still described in HTML. user-Generated Web design
Personal Home Page (PHP), another language used The popular website WordPress is actually a con-
in web design, was developed in 1994 but gained in tent management system (CMS) built on PHP and
282
MySQL. It debuted in 2003 as a blogging website, and user-influenced design in order to open up to
offering users templates and tools to design blogs. broader audiences.
The site soon became popular as a basic web de-
—Micah L. Issitt
sign system, allowing users with limited knowledge
of HTML or other coding to build basic and func-
tional, if aesthetically rudimentary, websites. Soon Bibliography
web designers began tailoring WordPress sites for Allanwood, Gavin, and Peter Beare. User Experience
customers. This has essentially served as a shortcut Design: Creating Designs Users Really Love. New York:
for the web design industry. As of 2015, WordPress re- Fairchild, 2014. Print.
mained among the most popular web design systems Cezzar, Juliette. “What Is Graphic Design?” AIGA.
in the world, accounting for about half of all CMS- Amer. Inst. of Graphic Arts, 2016. Web. 16 Mar.
based websites on the Internet. 2016.
The debut of WordPress launched a new era in Hagen, Rebecca, and Kim Golombisky. White Space Is
DIY web graphic design. Other websites such as Not Your Enemy: A Beginner’s Guide to Communicating
Squarespace, Wix, and Weebly soon began offering Visually through Graphic, Web & Multimedia Design.
users the ability to design websites quickly and easily, 2nd ed. Burlington: Focal, 2013. Print.
without the need to understand programming lan- Malvik, Callie. “Graphic Design vs. Web Design:
guages. Most such sites provide users templates in the Which Career Is Right for You?” Rasmussen College.
form of wireframes. Wireframes are structural layouts Rasmussen Coll., 25 July 2013. Web. 16 Mar. 2016.
that specify the location of images, text, and interac- Schmitt, Christopher. Designing Web & Mobile Graphics:
tive elements on a web page but are not themselves Fundamental Concepts for Web and Interactive Projects.
interactive. Users can then insert their own images Berkeley: New Riders, 2013. Print.
and text and, depending on the underlying program, Williams, Brad, David Damstra, and Hal Stern.
also rearrange the layout of the wireframe. Like Professional WordPress: Design and Development. 3rd
most elements of online commerce and marketing, ed. Indianapolis: Wiley, 2015. Print.
web graphic design is moving toward user-generated
283
Registry
DOS VM System VM
Architecture of Windows 95 as depicted by Ruud Koot. The development of Windows 95 improved upon MS-DOS by incorporating a 32-bit
multitasking architecture. By Ruud Koot, CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0), via Wikimedia Commons
284
version of Windows in 1985. Windows 1.0 was an op- OS also enables users to adjust OS settings for mul-
erating system shell that could be installed over the tiple accounts, essentially creating multiple versions
MS-DOS system. Windows featured one of the first of the OS on the same computer. It is also a multi-
GUIs. Windows was based on a model called WIMP tasking system in which more than one processing
(windows, icons, menus, pointer objects). GUIs allow job can run at a time. The Windows 10 system intro-
users to navigate a virtual desktop with a mouse that duced a new automated assistant called Cortana in an
controls a pointer icon. GUIs also enable users to effort to compete with the popularity of Apple’s Siri.
click on text and graphic icons to activate programs.
For instance, in Windows 1.0, clicking on a folder Dominance and Reinvention
icon activated the underlying DOS command “dir” to More than 90 percent of PCs worldwide ran some ver-
display the contents of a directory. sion of Windows in 2015. The majority (52 percent)
A new version, Windows 95, introduced the run Windows 7, which, as of 2016, was the compa-
company’s Internet Explorer browser. Windows 95 ny’s most popular product. The release of Windows
also introduced the Start button and taskbar. The 10 in 2015 had little impact, accounting for 12 per-
Windows 95 kernel (basic underlying programming) cent of the market in February 2016. Windows is sold
remained the standard for additional versions of around the world and comes formatted for a variety
Windows until 2001, with the release of Windows XP. of languages. In addition, language interface packs
Windows 7, released in 2009, was one of the compa- are available for free download and offer support for
ny’s most popular versions of the interface. Windows languages not found in full versions. Each pack re-
7 featured a new, more intuitive layout. Windows 8 quires a base language that can be activated within
introduced a completely redesigned interface with the OS after installation.
tiles that are easier for users with touch-screen tab- Given the rising popularity of handheld com-
lets. In 2015, Microsoft debuted Windows 10, the first puting devices, such as tablets and smartphones, the
version of their OS to be offered as a free upgrade. global computer market is no longer based solely on
Windows 10 also introduced a new service model in the PC market. While Microsoft continues to domi-
which the OS would continually receive updates to nate the PC market, the company controls only 14
various features and functions. This model is similar percent of the global market across all computing
to that employed by Microsoft’s competitor Apple. devices. Looking at smartphone OSs specifically,
Windows 10 was also the first version of Windows that Windows controls less than 3 percent of that market,
had a universal application architecture. This means falling far behind Android and Apple iOS. As a re-
apps on Windows 10 can be used on smartphones, sult, with the release of Windows 10, Microsoft has
tablets, and the Xbox One gaming system as well. made changes to its basic strategy. The company has
reduced its focus on proprietary software. Instead it is
Features of Windows increasingly embracing the potential of open-source
In computing, a platform can be defined as the com- software. Future versions of Windows will likely show
puter system that a program uses. A platform can an increased focus on cloud-based computing, intui-
be the hardware architecture or an OS. The earliest tive touch-screen technology, and alternative inter-
versions of the Windows OS were cross-platform and face controls such as voice activation and multitouch
could be used with different types of architecture. gestures.
In 2016, the Windows OS is one of the primary plat-
—Micah L. Issitt
forms for software. The Windows OS is designed to
be compatible with the X86-64 computer architec-
ture, a 64-bit processor system created by AMD in Bibliography
2000. Windows 10 can also be implemented on older Bishop, Todd. “Microsoft Exec Admits New Reality:
x86 (32-bit) computers. Market Share No Longer 90%— It’s 14%.”
Windows OS is designed to be a multiuser environ- Geekwire. GeekWire, 14 July 2014. Web. 30 Jan.
ment in which more than one users can use the same 2015.
OS. The Remote Desktop Connection system allows
multiple users to use Windows at once. The Windows
285
Gibbs, Samuel. “From Windows 1 to Windows 10: 29 Protalinski, Emil. “Windows 10 Ends 2015 under 10%
Years of Windows Evolution.” Guardian. Guardian Market Share.” VentureBeat. VentureBeat, 1 Jan.
News and Media, 2 Oct. 2014. Web. 2 Jan. 2016. 2016. Web. 26 Feb. 2016.
“A History of Windows.” Microsoft. Microsoft, 2016. Warren, Tom. “Windows Turns 30: A Visual History.”
Web. 2 Jan. 2016. Verge. Vox Media, 19 Nov. 2015. Web. 26 Feb. 2016.
McLellan, Charles. “The History of Windows: A
Timeline.” ZDNet. CBS Interactive, 14 Apr. 2014.
Web. 15 Feb. 2016.
Wireframes
Fields of Study What Is a Wireframe?
A wireframe is a visual, noninteractive representation
Computer Science; Graphic Design; Digital Media
of a proposed website. A web designer may use a wire-
frame to determine how best to lay out the elements
Abstract of the site. If the site is being designed for a client,
A wireframe visually represents the basic elements the designer may show the client a wireframe to get
of a proposed website before a web designer actually approval for the final product.
builds it. Creating a wireframe ensures that both the A website is essentially a sophisticated informa-
designer and the client can agree on the basic layout tion storage bank. Ultimately, it is designed for the
and functionality of the site. It also allows them to end users, who will need easy, efficient access to the
map out how the end user will ultimately interact information it contains. To that end, a web designer
with the site. will block out the basic elements of the proposed
website first, most often drawing them on paper.
Prinicipal Terms This drawing is the wireframe. Though it may be
no more than a set of squares, circles, columns, and
high-fidelity wireframe: an image or series of im- lines that represent the individual elements of the
ages that represents the visual elements of the web- pages, it allows the designer and the client to re-
site in great detail, as close to the final product as view the site concept together before it is built. Any
possible, but still does not permit user interaction. changes in the website format can be easily made at
information hierarchy: the relative importance of this stage.
the information presented on a web page. A wireframe also allows the designer to sort the
interaction design: the practice of designing a user content of the proposed website into an information
interface, such as a website, with a focus on how to hierarchy. The designer can then determine how
facilitate the user’s experience. best to arrange it on the page. Part of web design is
portlet: an independently developed software knowing what information users expect to find and
component that can be plugged into a website to where they are most likely to look for it. Eye-tracking
generate and link to external content. studies have determined that upon accessing a web-
prototype: a simplified, but visually very similar, site, a user will first look at the top-left corner of the
version of the final website that simulates how the page, scan across the top, then look down the left side
user will interact with the site. and scan partway across the screen. This essentially
typography: the style, arrangement, and overall forms an F-shape. Thus, crucial information should
appearance of text on a website. be concentrated mainly in the upper left portion of
widget: an independently developed segment of the page. Such insights into how users interact with
code that can be plugged into a website to display and experience websites are an important part of the
information retrieved from other sites. design field known as interaction design.
286
2. Hero 3. Ad 2. Hero
2.2 Hero Call 2.1 Hero Feature
2.1 Hero Feature
to Action
2.2 Hero Call to Action
4. Body 5. Sidebar 4. Body
3. Ad
4.1 Article Feature
6. Footer
5. Sidebar
Bootstrap Thumb Smartphone
5.1 Sidebar Feature
1. Header
1.1 Brand 6. Footer
1.2 Global Nav 1.3 Tools
2. Hero
2.2 Hero Call to Action
4. Body
3. Ad
6. Footer
Wireframes of a website in three different screen layouts show how the same content can be presented in different ways to
best fit the device. These high-fidelity wireframes indicate what type of content is presented in which locations as a first step
in designing for responsiveness. EBSCO illustration.
287
288
Wireless networks
Fields of Study devices in more places. Wireless networks provide
the same connectivity and access as traditional net-
Information Technology; Network Design
works without the need for physical cables.
Most wireless networks transmit signals using radio
Abstract waves, the lowest-frequency waves in the electromag-
Wireless networks allow computers and other Internet- netic spectrum. A computer sends data across a wire-
enabled devices to connect to the Internet without less network through nodes, which are all the hubs,
being wired directly to a modem or router. They switches, and devices connected to the network. The
transmit signals across radio waves instead. Wireless net- data are translated into a radio signal and transmitted
works make communication services available almost to the wireless router. The router then sends the in-
anywhere, without the need for wired connections. formation to the Internet through an Ethernet cable.
Multiple devices can access the same wireless router
Prinicipal Terms to connect to the Internet.
289
Client 5
Wired
Internet
MN2
Client 4
MN3
MN1
Router
MN7
MN6 Client 6
Router
MN4
MN5
Client 3
Client 1
Client 7
Wired connections
High-speed wireless connections Client 2
290
to the antenna or be connected to another node that for personal or political reasons. From young
does. A WWAN may be either point-to-point (P2P) or voters in the United States to the political uprisings
point-to-multipoint (P2MP). P2P, the simplest type, throughout the Middle East during the Arab Spring
connects one node to another. P2MP connects mul- of 2011, social media has become an important force
tiple nodes to one central access point. for political awareness and connection over shared
Finally, a mesh network is a wireless network in interests.
which all devices connect to each other and relay sig-
nals from device to device, without a wired infrastruc- The Evolution of Wireless Networks
ture. In a mesh network, all nodes—that is, all devices Businesses are increasingly moving to cloud-based
connected to the network—transmit signals. networks, which eliminate on-site hardware and
move all infrastructure, administration, and pro-
Pros and Cons of Wireless cesses to remote servers. Communities are creating
WLANs gained popularity over regular LANs because mesh networks with their own infrastructure to
of their convenience and cost savings. In fact, wireless share resources and connect through their mobile
networks became so prolific that Apple phased out devices. Such mesh networks provide more reliable
Ethernet connection ports on its MacBook laptops. communication and connection during emergencies
By investing in wireless networking hardware, busi- or natural disasters. At home, consumers are taking
nesses can avoid the trouble and expense of installing advantage of new technology to make wireless con-
cables throughout a building. They can quickly ex- nection to the Internet easier and more convenient.
pand the network when needed. Consumers can It is clear that the proliferation of wireless networks
easily set up home networks for use with laptops, tab- has changed the way the world learns, communi-
lets, and smartphones. Users can be more productive cates, and conducts business. As the cost of wireless
by accessing the Internet wherever they are. technology decreases, the benefits will spread even
However, wireless networks have drawbacks as further.
well. Their smaller range makes additional equip-
—Teresa E. Schmidt
ment, such as repeaters, necessary for larger build-
ings. In addition, radio waves are prone to interfer-
ence, making reliability an issue. Security is also a Bibliography
concern. Since data are transmitted through the air, “Computer—Networking.” Tutorials Point. Tutorials
wireless networks involve greater risk. Point, 2016. Web. 22 Feb. 2016.
“DCN—Computer Network Types.” Tutorials Point.
A Big Impact from Invisible Radio Waves Tutorials Point, 2016. Web. 22 Feb. 2016.
Wireless networks have allowed more people around De Filippi, Primavera. “It’s Time to Take Mesh
the world to access the Internet from more locations Networks Seriously (and Not Just for the Reasons
than ever. In business, wireless networks enable com- You Think).” Wired. Condé Nast, 2 Jan. 2014. Web.
panies to operate with more speed, flexibility, and 22 Feb. 2016.
connection. In health care, they allow physicians to Lander, Steve. “Disadvantages or Problems for
consult with faraway specialists or to check in with pa- Implementing Wi-Fi Technology.” Small Business—
tients in rural areas. For individuals, wireless networks Chron.com. Hearst Newspapers, n.d. Web. 22 Feb.
bring friends and families closer, enabling them to 2016.
keep in more frequent contact and allow users to Smith, Matt. “Wi-Fi vs. Ethernet: Has Wireless Killed
stream entertainment or download books while on Wired?” Digital Trends. Designtechnica, 18 Jan.
the go. News is delivered as it happens. People im- 2013. Web. 22 Feb. 2016.
mediately share their reactions, while families and “Types of Wireless Networks.” Commotion. Open
friends can check on those affected. Technology Inst., n.d. Web. 3 Mar. 2016.
Without wireless technology, there would be no “Wireless History Timeline.” Wireless History
smartphones and no texting, and there would be less Foundation. Wireless Hist. Foundation, 2016. Web.
access to social media. Social media enables people 22 Feb. 2016.
all over the world to express themselves, whether
291
Workplace monitoring
Fields of Study to improve workplace monitoring. For example,
packet sniffers are computer programs that can
Information Technology
analyze communication flow across networks and
intercept malicious files. Many businesses monitor
Abstract
all network traffic passing through their servers.
Modern technology makes it possible for firms to Automatic programs can alert managers if a net-
monitor many aspects of the workplace, particu- worked computer connects to a malicious domain,
larly employee activities and performance. Most block particular websites, and scan e-mails for
monitoring systems used are electronic, including spam.
computer terminals, e-mail, Internet, telephone Many organizations monitor their workers in
and smartphone systems, GPS, drones, and others. order to protect their property and information, pro-
Challenges to workplace monitoring appear in the tect employees, and measure the quality of their work
arena of employee rights and privacy legislation. and productivity. However, employers must also be
mindful of legal and ethical considerations of work-
Prinicipal Terms
place monitoring. Employers must work to maintain
packet sniffers: a program that can intercept data a sense of trust in their employees when engaging in
or information as it moves through a network. monitoring. Monitoring practices can generate nega-
real-time monitoring: a process that grants admin- tive feeling among employees and create legal prob-
istrators access to metrics and usage data about a lems for the employer if they are not implemented
software program or database in real time. carefully.
remote monitoring: a platform that reviews the Further complicating the issue is the increasingly
activities on software or systems that are located fluid nature of workplace boundaries. For instance,
off-site. work is often spread across geographical spaces.
silent monitoring: listening to the exchanges be- Many employers have a large number of employees
tween an incoming caller and an employee, such who work away from headquarters, either because
as a customer service agent. they travel or work remotely. This has led to remote
transparent monitoring: a system that enables em- monitoring by way of varied technologies and de-
ployees to see everything that the managers moni- vices, including GPS and drones.
toring them can see. Moreover, a growing amount of work is comput-
erized, through intranet and Internet networks.
Monitoring Technologies As a result, employers face real risks of employee
The practice of monitoring employees at work is misuse of these systems. However, these same systems
known as “workplace monitoring.” According to have led to improvements in workplace monitoring
the US Office of Technology Assessment, work- technology.
place monitoring is the collection, storage, anal-
ysis, and reporting of information about workers’ Benefits of Workplace Monitoring
activities. Because of the growing instances of hacking and
The introduction of computers and other tele- information theft, employers have legitimate con-
communication technologies in the workplace cerns about the security of workplace information.
brought great changes to monitoring practices. They may also want to conduct quality controls and
Workplace monitoring includes a wide variety of monitor employee productivity. For example, it is
technologies, such as hidden or overt video cam- a common practice for call centers to record cus-
eras, global positioning systems (GPS), landline tomer service calls, in a system commonly known as
telephones, cell phones and smartphones, com- silent monitoring. Another type of system, real-time
puter software and systems, the Internet, and monitoring, allows managers to analyze usage on
drones. Many techniques have been developed computer systems as it occurs. Real-time monitoring
292
WHY WHAT
USE COMPUTER MONITORING SOFTWARE? CAN PROGRAMS DO?
• Record Screenshots
Workplace monitoring software is designed to monitor employees’ computer use in order to protect against external threats, limit
distractions, prevent and track information leaks, and support productivity online and offline. These objectives can be accom-
plished through a number of possible software configurations. EBSCO illustration.
helps track not only employee activity but also other order to measure employee performance by mea-
firm processes, such as sales data and other trends. It suring time spent at the computer or keystroke speed.
is often used in conjunction with remote monitoring.
Remote monitoring involves tracking the activity of Legal and Ethical Considerations
employees who work off-site. The increasing breadth of workplace monitoring has
Hundreds of software programs and other technol- raised ethical and legal concerns. On the balance are
ogies are available to monitor the workplace. Some the privacy rights of workers. Electronic workplace
of these programs are free. Companies can establish monitoring has become so common that labor rights
their own monitoring systems. Others prefer to hire advocates have raised concerns about the abuse or
firms that provide the technology and analyze the inappropriate use of monitoring practices. On the
data. The data retrieved by monitoring technologies other hand, employers are concerned about liability
may be used to identify information leaks or theft, costs and legal consequences.
evaluate employee performance, detect malware, or In the opinion of some experts, electronic work-
analyze business trends. Among the latest monitoring place monitoring is subject to insufficient govern-
technologies are drones. Drones are mainly used in ment regulation. This may be due to its constant in-
real estate, construction, and agriculture. novations and its relatively new status. Technically,
There are many ways in which electronic work- employers are legally allowed to listen to, watch over,
place monitoring is used. According to the American record, and read all work-related forms of communi-
Management Association, 78 percent of major com- cation. However, federal law stipulates that personal
panies in the United States reported monitoring calls cannot be monitored.
employee use of e-mail, Internet, or phone in 2015. Experts recommend companies ensure their mon-
Some employers also use monitoring technology in itoring practices are fair and consistent. It is crucial
293
to implement measures to prevent managers from Plumb, Charles. “Drones in the Workplace.”
engaging in abuse of power and other illegal activi- EmployerLINC. McAfee and Taft, 14 Dec. 2015.
ties using monitoring technologies. Staff in charge of Web. 21 Jan. 2016.
workplace monitoring must be adequately trained. Smith, Eric N. Workplace Security Essentials: A Guide for
Some organizations implement transparent moni- Helping Organizations Create Safe Work Environments.
toring in order to make employees feel more at ease Oxford: Butterworth-Heinemann, 2014. Print.
with the process. Transparent monitoring welcomes Stanton, Jeffrey, and Kathryn R. Slam. The Visible
the participation of employees in the process. Finally, Employee: Using Workplace Monitoring and Surveillance
when employers suspect employees of engaging in to Protect Information Assets without Compromising
criminal action, experts recommend they alert the Employee Privacy or Trust. Medford: Information
authorities rather than try to set up a sting operation Today, 2006. Print.
on their own. Tabak, Filiz, and William Smith. “Privacy and
Debate continues about what employers should Electronic Monitoring in the Workplace: A Model
be allowed to monitor and to what extent employees of Managerial Cognition and Relational Trust
have the right to know they are being monitored. Development.” Employee Responsibilities and Rights
Nevertheless, employees should always assume that Journal 17.3 (2005): 173–89. Print.
they are being monitored and keep all private or Yakowitz, Will. “When Monitoring Your Employees
personal communication in separate accounts and Goes Horribly Wrong.” Inc. Mansueto Ventures, 14
devices. Feb. 2016. Web. 21 Feb. 2016.
Yerby, Jonathan. “Legal and Ethical Issues of
—Trudy Mercadal, PhD
Employee Monitoring.” Online Journal of Applied
Knowledge Management 1.2 (2013): 44–54. Web. 21
Bibliography Jan. 2016.
Alton, Larry. “Email Security in 2016: What You Need
to Know.” Inc. Mansueto Ventures, 18 Feb. 2016.
21 Feb. 2016.
294
295
996 1300
Persian astronomer, Abu Rayhan al-Bırunı, invented Ramon Llull invented the Lullian Circle: a notional
the first geared mechanical astrolabe, featuring eight machine for calculating answers to philosophical
gear-wheels. questions via logical combinatorics. This idea was
taken up by Leibniz centuries later, and is thus one
circa 1000 of the founding elements in computing and informa-
Abu Rayhan al-Bırunı invented the Planisphere, an tion science.
analog computer as well as the first mechanical lu-
nisolar calendar—an early example of a fixed-wired circa 1400
knowledge processing machine. Kerala school of astronomy and mathematics in
South India invented the floating point number
circa 1015 system.
Arab astronomer, Abu Ishaq Ibrahım al-Zarqalı
(Arzachel) of al-Andalus, invented the Equatorium, a circa 1400
mechanical analog computer device used for finding Jamshıd al-Kashı invented the “Plate of
the longitudes and positions of the Moon, Sun and Conjunctions”, an analog computer instrument
planets without calculation. used to determine the time of day at which planetary
conjunctions will occur, and for performing linear
1020 interpolation.
The mechanical geared astrolabe earlier developed
by Abu Rayhan al-Bırunı perfected by Ibn Samh. This circa 1400
can be considered an ancestor of the mechanical Ahmad al-Qalqashandi gives a list of ciphers in his
clock. “Subh al-a’sha” which include both substitution and
transposition, and for the first time, a cipher with
circa 1100 multiple substitutions for each plaintext letter. He
Arab astronomer, Jabir ibn Aflah (Geber), invented also gives an exposition on and worked example of
the Torquetum, an observational instrument and cryptanalysis, including the use of tables of letter fre-
mechanical analog computer device used to trans- quencies and sets of letters which cannot occur to-
form between spherical coordinate systems. It was gether in one word.
designed to take and convert measurements made
in three sets of coordinates: horizon, equatorial, and 1492
ecliptic. Leonardo da Vinci produced drawings of a device
consisting of interlocking cog wheels which can be
1206 interpreted as a mechanical calculator capable of ad-
Arab engineer, Al-Jazari, designed a humanoid- dition and subtraction. Da Vinci also made plans for
shaped mannequin which may have been the first sci- a mechanical man: an early design for a robot.
entific plan for a robot. His “castle clock” considered
one of the earliest programmable analog computers, 1588
displayed the zodiac and solar and lunar orbits. The Joost Buerghi discovered natural logarithms.
length of day and night could be re-programmed
every day in order to account for the changing 1614
lengths of day and night throughout the year. Scotsman John Napier reinvented a form of loga-
rithms and an ingenious system of movable rods (re-
1235 ferred to as Napier’s Rods or Napier’s bones). These
Persian astronomer Abi Bakr of Isfahan invented a rods were based on lattice or gelosia multiplication
brass astrolabe with a geared calendar movement algorithm and allowed the operator to multiply, di-
based on the design of Abu Rayhan al-Bırunı’s me- vide and calculate square and cube roots by moving
chanical calendar analog computer.
296
the rods around and placing them in specially con- 1694 (it was discovered in an attic in 1879), and one
structed boards. in 1706.
1622 1685
William Oughtred developed slide rules based on nat- Germany
ural logarithms as developed by John Napier. In an article titled “”Machina arithmetica in qua non
additio tantum et subtractio sed et multiplicatio nullo,
1623 diviso vero paene nullo animi labore peragantur””,
German polymath Wilhelm Schickard drew a device Gottfried Leibniz described a machine that used
that he called a “Calculating Clock” on two letters wheels with movable teeth which, when coupled to a
that he sent to Johannes Kepler; one in 1623 and the Pascaline, could perform all four mathematical op-
other in 1624. A fire later destroyed the machine as it erations. There is no evidence that Leibniz ever con-
was being built in 1624 and he decided to abandon structed this pinwheel machine.
his project. This machine became known to the
world only in 1957 when the two letters were discov- 1709
ered. Some replicas were built in 1961. This machine Italy
had no impact on the development of mechanical Giovanni Poleni was the first to build a calculator that
calculators. used a pinwheel design. It was made of wood and was
built in the shape of a “calculating clock”.
1642
France 1726
French polymath Blaise Pascal invented the me- United Kingdom
chanical calculator. Called “machine arithmétique”, Jonathan Swift described (satirically) a machine (“en-
Pascal’s calculator and eventually Pascaline, its public gine”) in his “Gulliver’s Travels”. The “engine” con-
introduction in 1645 started the development of me- sisted of a wooden frame with wooden blocks con-
chanical calculators first in Europe and then in the taining parts of speech. When the engine’s 40 levers
rest of the world. It was the first machine to have a are simultaneously turned, the machine displayed
controlled carry mechanism. Pascal built 50 proto- grammatical sentence fragments.
types before releasing his first machine (eventually
twenty machines were built). The Pascaline inspired 1774
the works of Gottfried Leibniz (1671), Thomas de Germany
Colmar (1820) and Dorr E. Felt (1887). Philipp Matthäus Hahn, in what is now Germany,
made a successful portable calculator able to perform
1668 all four mathematical operations.
United Kingdom
Sir Samuel Morland (1625–1695), of England, pro- 1775
duced a non-decimal adding machine, suitable for use United Kingdom
with English money. Instead of a carry mechanism, it Charles Stanhope, 3rd Earl Stanhope, of England, de-
registered carries on auxiliary dials, from which the signed and constructed a successful multiplying calcu-
user re-entered them as addends. lator similar to Leibniz’s.
1671 1786
Germany Germany
German mathematician, Gottfried Leibniz designed J. H. Müller, an engineer in the Hessian army, first
a machine which multiplied, the ‘Stepped Reckoner’. conceived of the idea of a difference engine.
It could multiply numbers of up to 5 and 12 digits to
give a 16 digit result. Two machines were built, one in
297
298
1848 1869
United Kingdom United Kingdom
British Mathematician George Boole developed The first practical logic machine was built by William
binary algebra (Boolean algebra) which has been Stanley Jevons.
widely used in binary computer design and opera-
tion, beginning about a century later. 1871
United Kingdom
1851 Babbage produced a prototype section of the
France Analytical Engine’s mill and printer.
After 30 years of development, Thomas de Colmar
launched the mechanical calculator industry by 1875
starting the manufacturing of a much simplified Sweden
Arithmometer (invented in 1820). Aside from its Martin Wiberg produced a reworked difference-en-
clones, which started thirty years later, it was the only gine-like machine intended to prepare logarithmic
calculating machine available anywhere in the world tables.
for forty years (Dorr Felt|Dorr E. Felt only sold one
hundred comptometers and a few comptographs 1878
from 1887 to 1890). Its simplicity made it the most Spain
reliable calculator to date. It was a big machine (a 20 Ramon Verea, living in New York City, invented a
digit arithmometer was long enough to occupy most calculator with an internal multiplication table; this
of a desktop). Even though the arithmometer was was much faster than the shifting carriage, or other
only manufactured until 1915, twenty European com- digital methods of the time. He wasn’t interested in
panies manufactured improved clones of its design putting it into production, however; it seems he just
until the beginning of WWII ; they were Burkhardt, wanted to show that a Spaniard could invent as well
Layton, Saxonia, Gräber, Peerless, Mercedes-Euklid, as an American.
XxX, Archimedes, etc...
1879
1853
United Kingdom
Sweden A committee investigated the feasibility of com-
To Babbage’s delight, the Scheutzes completed the pleting the Analytical Engine, and concluded that it
first full-scale difference engine, which they called a would be impossible now that Babbage was dead. The
Tabulating Machine. It operated on 15-digit numbers project was then largely forgotten, except by a very
and 4th-order differences, and produced printed few; Howard Aiken was a notable exception.
output just as Babbage’s would have. A second ma-
chine was later built to the same design by the firm of
1884
Bryan Donkin of London.
United States
Dorr Felt, of Chicago, developed his Comptometer.
1858
This was the first calculator in which operands are en-
United States tered by pressing keys rather than having to be, for
The first Tabulating Machine (see 1853) was bought example, dialled in. It was feasible because of Felt’s
by the Dudley Observatory in Albany, New York, and invention of a carry mechanism fast enough to act
the second by the British government. The Albany while the keys return from being pressed. Felt and
machine was used to produce a set of astronomical ta- Tarrant started a partnership to manufacture the
bles; but the Observatory’s director was fired for this comptometer in 1887.
extravagant purchase, and the machine never seri-
ously used again, eventually ending up in a museum.
The second machine had a long and useful life.
299
1885 1892
United States, Sweden, Russia United States
A multiplying calculator more compact than the William S. Burroughs of St. Louis, invented a ma-
Arithmometer entered mass production. The design chine similar to Felt’s (see 1884) in 1885 but unlike
was the independent, and more or less simultaneous, the comptometer it was a ‘key-set’ machine which
invention of Frank S. Baldwin, of the United States, only processed each number after a crank handle
and Willgodt Theophil Odhner, a Swede living in was pulled. The true manufacturing of this machine
Russia. Fluted drums were replaced by a “variable- started in 1892 even though Burroughs had started
toothed gear” design: a disk with radial pegs that his” American Arithmometer Company” in 1886 (it
could be made to protrude or retract from it. later became Burroughs Corporation and is now
called Unisys).
1886
United States 1896
Herman Hollerith developed the first version of his United States
tabulating system in the Baltimore Department of Herman Hollerith introduced an Integrating
Health. Tabulator that could add numbers encoded on
punched cards to one of several 7-digit counters. His
1889 earlier tabulators simply incremented counters based
United States on whether a hole was punched or not.
Dorr Felt invented the first printing desk calculator.
1901
1890 United States
United States The Standard Adding Machine Company released
The 1880 US census had taken 7 years to complete the first 10-key adding machine in between 1901 and
since all processing had been done by hand from 1903. The inventor, William Hopkins, filed his first
journal sheets. The increasing population suggested patent on October 4, 1892. The 10 keys were set on a
that by the 1890 census, data processing would take single row.
longer than the 10 years before the next census—so
a competition was held to find a better method. It 1902
was won by a Census Department employee, Herman United States
Hollerith, who went on to found the Tabulating Remington advertised the Dalton adding machine as
Machine Company, later to become IBM. He in- the first 10-key printing adding machine. The 10 keys
vented the recording of data on a medium that could were set on two rows. Six machines had been manu-
then be read by a machine. Prior uses of machine factured by the end of 1906
readable media had been for control (Automatons,
Piano rolls, looms, ...), not data. “After some initial 1906
trials with paper tape, he settled on punched cards...” United Kingdom
His machines used mechanical relays (and solenoids) Henry Babbage, Charles’s son, with the help of the
to increment mechanical counters. This method was firm of R. W. Munro, completed the ‘mill’ from his
used in the 1890 census and the completed results father’s Analytical Engine, to show that it would have
(62,622,250 people) were “... finished months ahead worked. It does. The complete machine was not
of schedule and far under budget”. The inspiration produced.
for this invention was Hollerith’s observation of rail-
road conductors during a trip in the western US; they 1906
encoded a crude description of the passenger (tall, United States
bald, male) in the way they punched the ticket. Vacuum tube (or thermionic valve) invented by Lee
De Forest.
300
1906 1931
United States Austria
Herman Hollerith introduces a tabulator with a plug- Kurt Gödel of Vienna University, Austria, published
board that can be rewired to adapt the machine for a paper on a universal formal language based on
different applications. Plugboards were widely used arithmetic operations. He used it to encode arbi-
to direct machine calculations until displaced by trary formal statements and proofs, and showed
stored programs in the 1950s. that formal systems such as traditional mathematics
are either inconsistent in a certain sense, or contain
1919 unprovable but true statements. This result is often
United Kingdom called the fundamental result of theoretical com-
William Henry Eccles and F. W. Jordan published the puter science.
first flip-flop circuit design.
1931
1924 United States
Germany IBM introduced the IBM 601 Multiplying Punch,
Walther Bothe built an “‘AND’” logic gate - the “co- an electromechanical machine that could read two
incidence circuit”, for use in physics experiments, for numbers, up to 8 digits long, from a card and punch
which he received the Nobel Prize in Physics 1954. their product onto the same card.
Digital circuitries of all kinds make heavy use of this
technique. 1934
United States
1926 Wallace Eckert of Columbia University connects an
United States IBM 285 Tabulator, an 016 Duplicating Punch and
Westinghouse AC Calculating board. A Network ana- an IBM 601 Multiplying Punch with a cam-controlled
lyzer (AC power) used for electrical transmission line sequencer switch that he designed. The combined
simulations up until the 1960s. system was used to automate the integration of dif-
ferential equations.
1928
United States 1936
IBM standardizes on punched cards with 80 columns United Kingdom
of data and rectangular holes. Widely known as IBM Alan Turing of Cambridge University, England, pub-
Cards, they dominate the data processing industry lished a paper on ‘computable numbers’ which re-
for almost half a century. formulated Kurt Gödel’s results (see related work by
Alonzo Church). His paper addressed the famous
1930 ‘Entscheidungsproblem’ whose solution was sought
United States in the paper by reasoning (as a mathematical device)
Vannevar Bush built a partly electronic difference en- about a simple and theoretical computer, known
gine capable of solving differential equations. today as a Turing machine. In many ways, this device
was more convenient than Gödel’s arithmetics-based
universal formal system.
1930
United Kingdom
1937
Welsh physicist C. E. Wynn-Williams<!--- (1903-1979)
--->, at Cambridge, England, used a ring of thyra- United States
tron tubes to construct a binary digital counter that George Stibitz of the Bell Telephone Laboratories
counted emitted Alpha particles. (Bell Labs), New York City, constructed a demon-
stration 1-bit binary adder using relays. This was
one of the first binary computers, although at this
301
stage it was only a demonstration machine; improve- State University), Ames, Iowa, completed a prototype
ments continued leading to the “Complex Number 16-bit adder. This was the first machine to calculate
Calculator” of January 1940. using vacuum tubes.
1937 1939
United States Nazi Germany
Claude E. Shannon published a paper on the imple- Konrad Zuse completed the ‘Z2’ (originally ‘V2’),
mentation of symbolic logic using relays as his MIT which combined the Z1’s existing mechanical
Master’s thesis. memory unit with a new arithmetic unit using relay
logic. Like the Z1, the Z2 lacked loop capabilities.
1938 The project was interrupted for a year when Zuse was
Nazi Germany drafted, but continued after he was released.
Konrad Zuse of Berlin, completed the ‘Z1’, the first
mechanical binary programmable computer. It was 1939
based on Boolean Algebra and had some of the basic Nazi Germany
ingredients of modern machines, using the binary Helmut Schreyer completed a prototype 10-bit adder
system and floating-point arithmetic. Zuse’s 1936 using vacuum tubes, and a prototype memory using
patent application (Z23139/GMD Nr. 005/021) neon lamps.
also suggested a ‘von Neumann’ architecture (re-
invented about 1945) with program and data modifi- 1940, Jan
able in storage. Originally the machine was called the United States
‘V1’ but retroactively renamed after the war, to avoid At Bell Labs, Samuel Williams and George Stibitz
confusion with the V-1 flying bomb. It worked with completed a calculator which could operate on com-
floating point numbers (7-bit exponent, 16-bit man- plex numbers, and named it the ‘Complex Number
tissa, and sign bit). The memory used sliding metal Calculator’; it was later known as the ‘Model I Relay
parts to store 16 such numbers, and worked well; but Calculator’. It used telephone switching parts for
the arithmetic unit was less successful, occasionally logic: 450 relays and 10 crossbar switches. Numbers
suffering from certain mechanical engineering prob- were represented in ‘plus 3 bceD’; that is, for each
lems. The program was read from holes punched in decimal digit, 0 is represented by binary 0011, 1 by
discarded 35 mm movie film. Data values could have 0100, and so on up to 1100 for 9; this scheme re-
been entered from a numeric keyboard, and outputs quires fewer relays than straight bceD. Rather than
were displayed on electric lamps. The machine was requiring users to come to the machine to use it,
not a general purpose computer (i.e., Turing com- the calculator was provided with three remote key-
plete) because it lacked loop capabilities. boards, at various places in the building, in the form
of teletypes. Only one could be used at a time, and
1939 the output was automatically displayed on the same
United States one. On 9 September 1940, a teletype was set up at
William Hewlett and David Packard established the a Dartmouth College in Hanover, New Hampshire,
Hewlett-Packard Company in Packard’s garage in with a connection to New York, and those attending
Palo Alto, California with an initial investment of the conference could use the machine remotely.
$538; this was considered to be the symbolic founding
of Silicon Valley. HP would grow to become one of 1940, Apr 1
the largest technology companies in the world today. GER|Nazi
In 1940 Zuse presented the Z2 to an audience
1939, Nov of the {{lang|de|”Deutsche Versuchsanstalt für
United States Luftfahrt”}} (“German Laboratory for Aviation”) in
John Vincent Atanasoff and graduate student Berlin-Adlershof.
Clifford Berry of Iowa State College (now the Iowa |}
302
303
304
first reasonably complete design of a stored-program used in the control structure and 150 registers of
computer. However, because of the strict and long- slower memory.”
lasting secrecy around his wartime work at Bletchley
Park, he was prohibited (having signed the Official 1948, Jul 21
Secrets Act) from explaining that he knew that his United Kingdom
ideas could be implemented in an electronic device. SSEM, Small-Scale Experimental Machine or ‘Baby’
was built at the University of Manchester. It ran its
1946 first program on this date. It was the first computer to
United Kingdom store both its programs and data in RAM, as modern
The trackball was invented as part of a radar plotting computers do. By 1949 the ‘Baby’ had grown, and
system named Comprehensive Display System (CDS) acquired a magnetic drum for more permanent
by Ralph Benjamin when working for the British storage, and it became the Manchester Mark 1.
Royal Navy Scientific Service. Benjamin’s project
used analog computers to calculate the future posi- 1948
tion of target aircraft based on several initial input United States
points provided by a user with a joystick. Benjamin ANACOM from Westinghouse was an AC-energized
felt that a more elegant input device was needed and electrical analog computer system used up until the
invented a “ball tracker” system called the “roller early 1990s for problems in mechanical and struc-
ball” for this purpose in 1946. The device was pat- tural design, fluidics, and various transient problems.
ented in 1947 but only a prototype was ever built and
the device was kept as a secret outside military. 1948
United States
1947, Dec 16 IBM introduced the ‘604’, the first machine to fea-
United States ture Field Replaceable Units (FRUs), which cut
Invention of the transistor at Bell Laboratories, USA, downtime as entire pluggable units can simply be re-
by William B. Shockley, John Bardeen and Walter placed instead of troubleshot.
Brattain.
1948
1947 The first Curta handheld mechanical calculator was
United States sold. The Curta computed with 11 digits of decimal
Howard Aiken completed the Harvard Mark II. precision on input operands up to 8 decimal digits.
The Curta was about the size of a handheld pepper
1947 grinder.
United States
The Association for Computing Machinery (ACM), 1949, Mar
was founded as the world’s first scientific and educa- United States
tional computing society. It remains to this day with a John Presper Eckert and John William
membership currently around 78,000. Its headquar- Mauchly construct the BINAC for Northrop
ters are in New York City. Corporation|Northrop.
305
306
Year Microprocessors
1974 General Instrument CP1600; Intel 4040, 8080; Mostek 5065; Motorola 6800; National
IMP-4, IMP-8, ISP-8A/500, PACE; Texas Instruments TMS 1000; Toshiba TLCS-12
1975 Fairchild F-8; Hewlett Packard BPC; Intersil 6100; MOS Technology 6502; RCA CDP 1801;
Rockwell PPS-8; Signetics 2650
1976 RCA CDP 1802; Signetics 8x300; Texas Instruments TMS9900; Zilog Z-80
1982 Hewlett Packard FOCUS; Intel 80186, 80188,; 80286; Berkeley RISC-I
1985 DEC MicroVax II; Harris Novix; Intel 80386; MIPS R2000
1987 Acorn ARM2; DEC CVAX 78034; Hitachi Gmicro/200; Motorola 68030; NEC V70
307
1994 DEC Alpha 21064A; Hewlett Packard PA-7100LC, PA-7200; IBM PowerPC 603, PowerPC
604; Motorola 68060; QED R4600
1995 DEC Alpha 21164; HAL Computer SPARC64; Intel Pentium Pro; Sun UltraSPARC
1996 AMD K5; DEC Alpha 21164A; HAL Computer SPARC64 II; Hewlett Packard PA-8000; IBM
P2SC; MTI R10000; QED R5000
1997 AMD K6; IBM PowerPC 620, PowerPC 750,; RS64, ES/390 G4; Intel Pentium II; Sun
UltraSPARC IIs
1998 DEC Alpha 21264; HAL Computer SPARC64 III; Hewlett Packard PA-8500; IBM POWER3,
RS64-II; ES/390 G5; QED RM7000; SGI MIPS R12000
1999 AMD Athlon; IBM RS64-III; Intel Pentium III; Motorola PowerPC 7400
2000 AMD Athlon XP; Duron; Fujitsu SPARC64 IV; IBM RS64-IV; z900; Intel Pentium 4
2001 IBM POWER4; Intel Itanium; Motorola PowerPC 7450; SGI MIPS R14000; Sun
UltraSPARC III
2005 AMD Athlon 64 X2; Opteron Athens; IBM PowerPC 970MP; Xenon; Intel Pentium D; Sun
UltraSPARC IV; UltraSPARC T1
2007 AMD Opteron Barcelona; Fujitsu SPARC64 VI; IBM POWER, PowerPC BGP; Sun
UltraSPARC T2; Tilera TILE64
2008 AMD Opteron Shanghai, Phenom; Fujitsu SPARC64 VII; IBM PowerXCell 8i; IBM z10;
Intel Atom, Core i7; Tilera TILEPro64
2010 AMD Opteron Magny-cours; Fujitsu SPARC64 VII+; IBM POWER7; z196; Intel Itanium
Tukwila, Westmere; Xeon, Nehalem-EX; Sun SPARC T3
2011 AMD FX Bulldozer, Interlagos, Llano; Fujitsu SPARC64 VIIIfx; Freescale PowerPC e6500;
Intel Sandy Bridge, Xeon E7; Oracle SPARC T4
2012 Fujitsu SPARC64 IXfx; IBM POWER7+, zEC12; Intel Itanium Poulson
308
al-Khwarizmı The term “algorithm” is derived from the algorism, c. 780 – c. 850
the technique of performing arithmetic with Hindu-
Arabic numerals developed by al-Khwarizmi. Both
“algorithm” and “algorism” are derived from the
Latinized forms of al-Khwarizmi’s name, Algoritmi
and Algorismi, respectively.
John Atanasoff Built the first electronic digital computer, the b. 1903
Atanasoff–Berry Computer, though it was neither pro- d. 1995
grammable nor Turing-complete (1939).
Charles Babbage Originated the concept of a programmable general- 1822
purpose computer. Designed the Analytical Engine 1837
and built a prototype for a less powerful mechanical
calculator.
John Warner Backus Invented FORTRAN (“For”mula “Tran”slation), b. 1924
the first practical high-level programming language d. 2007
(1954), and he formulated the Backus–Naur form
that described the formal language syntax (1963).
Jean Bartik One of the first computer programmers, on ENIAC b. 1924
(1946). Worked with John Mauchly toward BINAC d. 2011
(1949), EDVAC (1949), UNIVAC (1951) to develop
early “stored program” computers.
Sir Timothy John Invented worldwide web. With Robert Cailliau, sent b. 1955
Berners-Lee first HTTP communication between client and server
(1989).
George Boole Formalized Boolean algebra (1854) in The Laws of b. 1815
Thought, the basis for digital logic and computer d. 1864
science.
Per Brinch Hansen |Developed the RC 4000 multiprogramming system in- |1969
troducing the concept of an operating system kernel
and the separation of policy and mechanism (1967).
Co-developed the monitor with Tony Hoare (1973),
and created the first monitor implementation (1975).
Implemented the first form of remote procedure call
in the RC 4000 (1978)
Nikolay Brusentsov Built ternary computer Setun (1958). b. 1925
d. 2014
Vannevar Bush Originator of the Memex concept (1930), which led to b. 1890
the development of Hypertext. d. 1974
David Caminer Developed the LEO computer the first business com- b. 1915
puter with John Pinkerton, for J. Lyons and Co. (1951) d. 2008
309
Vinton Gray Cerf With Bob Kahn, designed the Transmission Control b. 1943
Protocol and Internet Protocol (TCP/IP), the pri-
mary data communication protocols of the Internet
and other computer networks (1978).
Avrom Noam Chomsky Responsible for Chomsky hierarchy (1956), a dis- b. 1928
covery which has directly impacted Programming lan-
guage theory and other branches of computer science.
Alonzo Church Contributions to theoretical computer science, specif- B, 1903
ically for the development of the lambda calculus and d. 1995
the discovery of the undecidability problem within it
(1936).
Wesley Allison. Clark Designed LINC, the first functional computer scaled b. 1927
down and priced for the individual user (1963) with d. 2016
many of its features prototypes of what became essen-
tial elements of personal computers.
Edmund Melson Developed model checking and formal verification of b. 1945
Clarke, Jr. software and hardware with E. Allen Emerson (1981).
Edgar Frank “Ted” Proposed and formalized the relational model of data b. 1923
Codd management, the theoretical basis of relational data- d. 2003
bases (1970).
Stephen Cook Formalized the notion of NP-completeness, inspiring b. 1939
a great deal of research in computational complexity
theory (1971).
James William Cooley Created the Fast Fourier Transform (FFT) with John b. 1926
W. Tukey (1965). d. 2016
Ole-Johan Dahl With Kristen Nygaard, invented the proto-object ori- b. 1931
ented language SIMULA (1962). d. 2002
Edsger Wybe Dijkstra Made advances in algorithms (1965), the semaphore, b. 1930
rigor, and pedagogy (1968). d. 2002
John Adam Presper Designed and built the ENIAC (1943) with John b. 1919
“Pres” Eckert, Jr. Mauchly, the first all electronic, Turing-complete) d. 1995
computer, and the UNIVAC I, the first commercially
available computer (1951).
Enest Allen Emerson II Developed model checking and formal verification b. 1954
of software and hardware together with Edmund M.
Clarke (1981).
Douglas Carl Engelbart Invented the computer mouse with Bill English b. 1925
(1963); a pioneer of human-computer interaction d. 2013
whose Augment team developed hypertext, networked
computers, and precursors to GUIs (1968).
310
Thomas “Tommy” Designed and built the Mark 1 (1943) and the im- 1943
Harold Flowers proved Mark 2 (1944) Colossus computers, the world’s b. 1905
first programmable, digital, electronic, computing d. 1998
devices.
Friederich Ludwig Developed first-order predicate calculus, a crucial
Gottlob Frege precursor requirement to developing computation b. 1848
theory (1879). d. 1935
Seymour Ginsburg Proved “don’t-care” circuit minimization does not nec- b. 1927
essarily yield optimal results (1958); ALGOL program- d. 2004
ming language is context-free (thus linking formal
language theory to the problem of compiler writing.
1966); invented AFL Theory (1967).
Kurt Friedrich Gödel Proved Peano axiomatized arithmetic could not be b. 1906
both logically consistent and complete in first-order d. 1978
predicate calculus (1931). Church, Kleene, and
Turing developed the foundations of computation
theory based on corollaries to Gödel’s work.
Lois Haibt Was a member of the ten person team that invented b. 1934
Fortran (1954) and among the first women to play a
crucial role in the development of computer science.
Margaret Heafield Credited with coining the phrase “Software engi- b. 1936
Hamilton neering”; developed the concepts of asynchronous
software, priority scheduling, end-to-end testing, and
human-in-the-loop decision capability which became
the foundation for ultra reliable software design
(1965).
Sir Charles Anthony Developed the formal language Communicating b. 1934
Richard “C.A.R.” Hoare Sequential Processes (CSP) and Quicksort (1960).
Herman Hollerith Widely regarded as the father of modern machine b. 1860
data processing. Invented punched card evaluating d. 1929
machine (1889) which began the era of automatic
data processing systems.
Grace Brewster Murray Pioneered work on the necessity for high-level pro- b. 1906
Hopper gramming languages, which she termed “automatic d. 1992
programming”; her A-O compiler (written in 1952)
influenced the COBOL language.
Cuthbert Corwin Hurd Helped the International Business Machines b. 1911
Corporation develop its first general-purpose com- d. 1996
puter, the IBM 701 (1952).
Kenneth Eugene Assisted in establishing and taught the first graduate b. 1920
Iverson course in computer science at Harvard (1955); in- d. 2004
vented the APL programming language (1962); made
contributions to interactive computing.
311
Joseph Marie Jacquard Built and demonstrated the Jacquard loom, a pro- b. 1752
grammable mechanized loom controlled by punch d. 1834
cards (1801).
Maurice Karnaugh Inventor of the Karnaugh map, used for logic function b. 1924
minimization (1953).
Jacek Karpiń ski Developed the first differential analyzer that used tran- b. 1927
sistors; one of the first machine learning algorithms d. 2010
for character and image recognition; inventor of one
of the first minicomputers, the K-202 (1973)
Alan Curtis Kay Pioneered ideas at the root of object-oriented pro- b. 1940
gramming languages (1966), led the team that devel-
oped Smalltalk (1976), and made fundamental contri-
butions to personal computing.
Stephen Cole Kleene Pioneered work with Alonzo Church on the Lambda b. 1909
Calculus that first laid down the foundations of com- d. 1994
putation theory (1935).
Donald Ervin Knuth Wrote The Art of Computer Programming (1968) and cre- 1968
ated TeX (1978). b. 1938
Leslie B. Lamport Formulated algorithms to solve fundamental prob- b. 1941
lems in distributed systems (e.g. the bakery algorithm.
1974); logical clock (1978), enabling synchroniza-
tion between distributed entities based on the events
through which they communicate; created LaTeX
(1985)
Developed the concept of a. 1978
Sergei Alexeyevich Independently designed the first electronic computer b. 1902
Lebedev in the Soviet Union, MESM, in Kiev, Ukraine (1951). d. 1974
Gottfried Wilhelm Advances in symbolic logic, such as the Calculus ra- b. 1646
Leibniz tiocinator, heavily influential on Gottlob Frege. Made d. 1716
developments in first-order predicate calculus, crucial
for the theoretical foundations of computer science.
(1670s)
Joseph Carl Robnett Began the investigation of human-computer interac- b. 1915
“J. C. R.” Licklider tion (1960), leading to many advances in computer d. 1990
interfaces as well as in cybernetics and artificial
intelligence.
Ramon Llull Pioneer of computational theory whose notions of b. c.1232
symbolic representation and manipulation to produce d. c. 1315-1316
knowledge were major influences on Leibniz.
312
Ada Lovelace (Augusta Began the study of scientific computation, analyzing b. 1815
Ada King-Noel, Babbage’s work in her “Sketch of the Analytical d. 1852
Countess of Lovelace Engine” (1842). Namesake for the Ada programming
(née Byron) language.
John William Mauchly
Designed and built the ENIAC (1946) with J. Presper b. 1907
Eckert (all electronic, Turing-complete) computer. d. 1980
Also worked on BINAC (1949), EDVAC (1949),
UNIVAC (1951) with Grace Hopper and Jean Bartik,
to develop early “Stored program” computers.
John McCarthy Invented LISP, a functional programming language b. 1927
(1958). d. 2011
Marvin Lee Minsky Co-founder of Artificial Intelligence Lab at b. 1927
Massachusetts Institute of Technology (1963), author d. 2016
of several texts on AI and philosophy.
Peter Naur Edited the ALGOL 60 Revised Report, introducing b. 1928
Backus-Naur form (1960). d. 2016
Maxwell Herman Instigated the production of the Colossus com- b. 1897
Alexander “Max” puters at Bletchley Park (1941). Established the d. 1984
Neumann Computing Machine Laboratory at the University of
Manchester (1946) where the Manchester Small-Scale
Experimental Machine was invented (1948).
John von Neumann Formulated the von Neumann architecture upon b. 1903
which most modern computers are based (1945). d. 1957
Kristen Nygaard With Ole-Johan Dahl, invented the proto-object ori- b. 1926
ented language SIMULA (1962). d. 2002
Blaise Pascal Invented the mechanical calculator (1642). b. 1623
d. 1662
Emil Leon Post Developed the Post machine (1936). Known also for 1936
developing truth tables, the Post correspondence b. 1897
problem (1946) and Post’s theorem. d. 1954
Dennis MacAlistair Created the C programming language with Ken b. 1941
Ritchie Thompson and the Unix computer operating system d. 2011
at Bell Labs (1970s).
Saul Rosen Designed the software of the first transistor-based b, 1922
computer (1957). Also influenced the ALGOL pro- d., 1991
gramming language (1958–1960).
Bertrand Arthur Worked on Mathematical logic (example: Truth b. 1872
Russell function). Introduced the notion of Type theory. d. 1979
Introduced Type system with Alfred North Whitehead
in Principia Mathematica (1910).
313
314
1-bit watermarking: a type of digital watermark that algorithm: a set of step-by-step instructions for per-
embeds one bit of binary data in the signal to be forming computations.
transmitted; also called “0-bit watermarking.”
American National Standards Institute (ANSI): a
3-D rendering: the process of creating a 2-D anima- nonprofit organization that oversees the creation
tion using 3-D models. and use of standards and certifications such as those
offered by CompTIA.
3D Touch: a feature that senses the pressure with
which users exert upon Apple touch screens. amplifier: a device that strengthens the power,
voltage, or current of a signal.
abstraction: a technique used to reduce the struc-
tural complexity of programs, making them easier to analog signal: a continuous signal whose values or
create, understand, maintain, and use. quantities vary over time.
accelerometer IC: an integrated circuit that mea- analytic combinatorics: a method for creating precise
sures acceleration. quantitative predictions about large sets of objects.
access level: in a computer security system, a designa- Android Open Source Project: a project undertaken
tion assigned to a user or group of users that allows by a coalition of mobile phone manufacturers and
access a predetermined set of files or functions. other interested parties, under the leadership of
Google. The purpose of the project is to develop the
actuator: a motor designed to control the movement Android platform for mobile devices.
of a device or machine by transforming potential en-
ergy into kinetic energy. animation variables (avars): defined variables used in
computer animation to control the movement of an
Additive White Gaussian Noise (AWGN): a model animated figure or object.
used to represent imperfections in real communica-
tion channels. anthropomorphic: resembling a human in shape or
behavior; from the Greek words anthropos (human)
address space: the amount of memory allocated for a and morphe (form).
file or process on a computer.
app: an abbreviation for “application,” a program de-
adware: software that generates advertisements to signed to perform a particular task on a computer or
present to a computer user. mobile device.
affinity chromatography: a technique for separating application program interface (API): the code that
a particular biochemical substance from a mix- defines how two pieces of software interact, particu-
ture based on its specific interaction with another larly a software application and the operating system
substance. on which it runs.
agile software development: an approach to soft- application suite: a set of programs designed to work
ware development that addresses changing require- closely together, such as an office suite that includes
ments as they arise throughout the process, with pro- a word processor, spreadsheet, presentation creator,
gramming, implementation, and testing occurring and database application.
simultaneously.
315
application-level firewalls: firewalls that serve as backdoor: a hidden method of accessing a computer
proxy servers through which all traffic to and from system that is placed there without the knowledge of
applications must flow. the system’s regular user in order to make it easier to
access the system secretly.
application-specific GUI: a graphical interface de-
signed to be used for a specific application. base-16: a number system using sixteen symbols, 0
through 9 and A through F.
artificial intelligence: the intelligence exhibited by
machines or computers, in contrast to human, or- base-2 system: a number system using the digits 0
ganic, or animal intelligence. and 1.
autonomous: able to operate independently, without biomechanics: the various mechanical processes such
external or conscious control. as the structure, function, or activity of organisms.
autonomous agent: a system that acts on behalf of an- bioMEMS: short for “biomedical micro-electrome-
other entity without being directly controlled by that chanical system”; a microscale or nanoscale self-
entity. contained device used for various applications in
health care.
316
biometrics: measurements that can be used to distin- butterfly effect: an effect in which small changes in a
guish individual humans, such as a person’s height, system’s initial conditions lead to major, unexpected
weight, fingerprints, retinal pattern, or genetic changes as the system develops.
makeup.
byte: a group of eight bits.
bionics: the use of biologically based concepts and
techniques to solve mechanical and technological caching: the storage of data, such as a previously ac-
problems. cessed web page, in order to load it faster upon fu-
ture access.
biosignal processing: the process of capturing the
information the body produces, such as heart rate, carrier signal: an electromagnetic frequency that
blood pressure, or levels of electrolytes, and ana- has been modulated to carry analog or digital
lyzing it to assess a patient’s status and to guide treat- information.
ment decisions.
cathode ray tube (CRT): a vacuum tube used to
bit: a single binary digit that can have a value of ei- create images in devices such as older television and
ther 0 or 1. computer monitors.
bit rate: the amount of data encoded for each second central processing unit (CPU): electronic circuitry
of video; often measured in kilobits per second that provides instructions for how a computer han-
(kbps) or kilobytes per second (Kbps). dles processes and manages data from applications
and programs.
bit width: the number of bits used by a computer or
other device to store integer values or other data. channel capacity: the upper limit for the rate at which
information transfer can occur without error.
black-box testing: a testing technique in which func-
tion is analyzed based on output only, without knowl- character: a unit of information that represents a
edge of structure or coding. single letter, number, punctuation mark, blank space,
or other symbol used in written language.
blotting: a method of transferring RNA, DNA, and
other proteins onto a substrate for analysis. chatterbot: a computer program that mimics human
conversation responses in order to interact with
bootstrapping: a self-starting process in a computer people through text; also called “talkbot,” “chatbot,”
system, configured to automatically initiate other pro- or simply “bot.”
cesses after the booting process has been initiated.
circular wait: a situation in which two or more pro-
bridge: a connection between two or more networks, cesses are running and each one is waiting for a re-
or segments of a single network, that allows the com- source that is being used by another; one of the nec-
puters in each network or segment to communicate essary conditions for deadlock.
with one another.
class: a collection of independent objects that share
broadcast: an audio or video transmission sent via a similar properties and behaviors.
communications medium to anyone with the appro-
priate receiver. class-based inheritance: a form of code reuse in
which attributes are drawn from a preexisting class to
building information modeling (BIM): the creation create a new class with additional attributes.
of a model of a building or facility that accounts
for its function, physical attributes, cost, and other clinical engineering: the design of medical devices to
characteristics. assist with the provision of care.
317
clock speed: the speed at which a microprocessor can computer technician: a professional tasked with the
execute instructions; also called “clock rate.” installation, repair, and maintenance of computers
and related technology.
coding theory: the study of codes and their use in cer-
tain situations for various applications. constraints: limitations on values in computer pro-
gramming that collectively identify the solutions to
combinatorial design: the study of the creation and be produced by a programming problem.
properties of finite sets in certain types of designs.
context switch: a multitasking operating system
command line: a text-based computer interface shifting from one task to another; for example,
that allows the user to input simple commands via a after formatting a print job for one user, the com-
keyboard. puter might switch to resizing a graphic for an-
other user.
command-line interpreter: an interface that inter-
prets and carries out commands entered by the user. context switching: pausing and recording the prog-
ress of a thread or process such that the process or
commodities: consumer products, physical articles of thread can be executed at a later time.
trade or commerce.
control characters: units of information used to con-
communication architecture: the design of computer trol the manner in which computers and other de-
components and circuitry that facilitates the rapid vices process text and other characters.
and efficient transmission of signals between dif-
ferent parts of the computer. control unit design: describes the part of the CPU
that tells the computer how to perform the instruc-
communication devices: devices that allow drones tions sent to it by a program.
to communicate with users or engineers in remote
locations. converter: a device that expands a system’s range of
reception by bringing in and adapting signals that
compliance: adherence to standards or specifications the system was not originally designed to process.
established by an official body to govern a particular
industry, product, or activity. cookies: small data files that allow websites to track
users.
component-based development: an approach to soft-
ware design that uses standardized software compo- cooperative multitasking: an implementation of mul-
nents to create new applications and new software. titasking in which the operating system will not ini-
tiate a context switch while a process is running in
compressed data: data that has been encoded such order to allow the process to complete.
that storing or transferring the data requires fewer
bits of information. core voltage: the amount of power delivered to
the processing unit of a computer from the power
computational linguistics: a branch of linguistics that supply.
uses computer science to analyze and model lan-
guage and speech. counter: a digital sequential logic gate that records
how many times a certain event occurs in a given
Computer Fraud and Abuse Act (CFAA): a 1986 leg- amount of time.
islative amendment that made accessing a protected
computer without authorization, or exceeding one’s coupling: the degree to which different parts of a
authorized level of access, a federal offense. program are dependent upon one another.
318
cracker: a criminal hacker; one who finds and deterministic algorithm: an algorithm that when
exploits weak points in a computer’s security given a particular input will always produce the same
system to gain unauthorized access for malicious output.
purposes.
device: equipment designed to perform a specific
crippleware: software programs in which key features function when attached to a computer, such as a
have been disabled and can only be activated after scanner, printer, or projector.
registration or with the use of a product key.
device fingerprinting: information that uniquely
crosstalk: interference of the signals on one circuit identifies a particular computer, component, or
with the signals on another, caused by the two circuits piece of software installed on the computer. This can
being too close together. be used to find out precisely which device accessed a
particular online resource.
cybercrime: crime that involves targeting a computer
or using a computer or computer network to commit dexterity: finesse; skill at performing delicate or pre-
a crime, such as computer hacking, digital piracy, cise tasks.
and the use of malware or spyware.
digital commerce: the purchase and sale of goods
data granularity: the level of detail with which data is and services via online vendors or information tech-
collected and recorded. nology systems.
data integrity: the degree to which collected data is digital legacy (digital remains): the online accounts
and will remain accurate and consistent. and information left behind by a deceased person.
data source: the origin of the information used in a digital literacy: familiarity with the skills, behaviors,
computer model or simulation, such as a database or and language specific to using digital devices to ac-
spreadsheet. cess, create, and share content through the Internet.
data width: a measure of the amount of data that can digital native: an individual born during the dig-
be transmitted at one time through the computer ital age or raised using digital technology and
bus, the specific circuits and wires that carry data communication.
from one part of a computer to another.
direct manipulation interfaces: computer interaction
datapath design: describes how data flows through format that allows users to directly manipulate graph-
the CPU and at what points instructions will be de- ical objects or physical shapes that are automatically
coded and executed. translated into coding.
declarative language: language that specifies the direct-access storage: a type of data storage in which
result desired but not the sequence of operations the data has a dedicated address and location on
needed to achieve the desired result. the storage device, allowing it to be accessed directly
rather than sequentially.
deep learning: an emerging field of artificial intelli-
gence research that uses neural network algorithms directed energy deposition: a process that deposits
to improve machine learning. wire or powdered material onto an object and then
melts it using a laser, electron beam, or plasma arc.
delta debugging: an automated method of debug-
ging intended to identify a bug’s root cause while distributed algorithm: an algorithm designed to run
eliminating irrelevant information. across multiple processing centers and so is capable
319
of directing a concentrated action between several electronic interference: the disturbance generated by
computer systems. a source of electrical signal that affects an electrical
circuit, causing the circuit to degrade or malfunc-
domain: the range of values that a variable may take tion. Examples include noise, electrostatic discharge,
on, such as any even number or all values less than and near-field and far-field interference.
−23.7.
embedded systems: computer systems that are incor-
domain-dependent complexity: a complexity that re- porated into larger devices or systems to monitor per-
sults from factors specific to the context in which the formance or to regulate system functions.
computational problem is set.
entanglement: the phenomenon in which two or
DRAKON chart: a flowchart used to model algo- more particles’ quantum states remain linked even if
rithms and programmed in the hybrid DRAKON the particles are later separated and become part of
computer language. distinct systems.
dual-mesh network: a type of mesh network in which enumerative combinatorics: a branch of combina-
all nodes are connected both through wiring and torics that studies the number of ways that certain
wirelessly, thus increasing the reliability of the system. patterns can be formed using a set of objects.
A node is any communication intersection or end-
point in the network (e.g., computer or terminal). Environmental Protection Agency (EPA): US govern-
ment agency tasked with combating environmental
dynamic balance: the ability to maintain balance pollution.
while in motion.
e-waste: short for “electronic waste”; computers and
dynamic random-access memory (DRAM): a form other digital devices that have been discarded by
of RAM in which the device’s memory must be re- their owners.
freshed on a regular basis, or else the data it contains
will disappear. false match rate: the probability that a biometric
system incorrectly matches an input to a template
dynamic testing: a testing technique in which soft- contained within a database.
ware input is tested and output is analyzed by exe-
cuting the code. fault detection: the monitoring of a system in order
to identify when a fault occurs in its operation.
edit decision list (EDL): a list that catalogs the reel or
time code data of video frames so that the frames can fiber: a small thread of execution using cooperative
be accessed during video editing. multitasking.
electromagnetic spectrum: the complete range of field programmable gate array: an integrated circuit
electromagnetic radiation, from the longest wave- that can be programmed in the field and can there-
length and lowest frequency (radio waves) to the fore allow engineers or users to alter a machine’s pro-
shortest wavelength and highest frequency (gamma gramming without returning it to the manufacturer.
rays).
filter: in signal processing, a device or procedure that
Electronic Communications Privacy Act: a 1986 law takes in a signal, removes certain unwanted elements,
that extended restrictions on wiretapping to cover and outputs a processed signal.
the retrieval or interception of information trans-
mitted electronically between computers or through firewall: a virtual barrier that filters traffic as it enters
computer networks. and leaves the internal network, protecting internal
resources from attack by external sources.
320
fixed point: a type of digital signal processing in frames per second (FPS): a measurement of the rate
which numerical data is stored and represented with at which individual video frames are displayed.
a fixed number of digits after (and sometimes be-
fore) the decimal point, using a minimum of sixteen free software: software developed by programmers
bits. for their own use or for public use and distributed
without charge; it usually has conditions attached
fixed-point arithmetic: a calculation involving num- that prevent others from acquiring it and then selling
bers that have a defined number of digits before and it for their own profit.
after the decimal point.
function: instructions read by a computer’s processor
flash memory: nonvolatile computer memory that to execute specific events or operations.
can be erased or overwritten solely through elec-
tronic signals, i.e. without physical manipulation of functional programming: a theoretical approach to
the device. programming in which the emphasis is on applying
mathematics to evaluate functional relationships that
flashing: a process by which the flash memory on are, for the most part, static.
a motherboard or an embedded system is updated
with a newer version of software. functional requirement: a specific function of a com-
puter system, such as calculating or data processing.
floating point: a type of digital signal processing in
which numerical data is stored and represented in game loop: the main part of a game program that al-
the form of a number (called the mantissa, or signifi- lows the game’s physics, artificial intelligence, and
cand) multiplied by a base number (such as base-2) graphics to continue to run with or without user
raised to an exponent, using a minimum of thirty-two input.
bits.
gateway: a device capable of joining one network to
floating-point arithmetic: a calculation involving another that has different protocols.
numbers that have a decimal point that can be placed
anywhere through the use of exponents, as is done in genetic modification: direct manipulation of an
scientific notation. organism’s genome, often for the purpose of engi-
neering useful microbes or correcting for genetic
flooding: sending information to every other node disease.
in a network to get the data to its appropriate
destination. genome-wide association study: a type of genetic
study that compares the complete genomes of in-
force-sensing touch technology: touch display that dividuals within a population to find which genetic
can sense the location of the touch as well as the markers, if any, are associated with various traits,
amount of pressure the user applies, allowing for a most often diseases or other health problems.
wider variety of system responses to the input.
gestures: combinations of finger movements used to
four-dimensional building information modeling interact with multitouch displays in order to accom-
(4-D BIM): the process of creating a 3-D model that plish various tasks. Examples include tapping the
incorporates time-related information to guide the finger on the screen, double-tapping, and swiping
manufacturing process. the finger along the screen.
Fourier transform: a mathematical operator that de- glyph: a specific representation of a grapheme, such
composes a single function into the sum of multiple as the letter A rendered in a particular typeface.
sinusoidal (wave) functions.
321
graph theory: the study of graphs, which are diagrams hashing algorithm: a computing function that con-
used to model relationships between objects. verts a string of characters into a different, usually
smaller string of characters of a given length, which is
grapheme: the smallest unit used by a writing system, ideally impossible to replicate without knowing both
such as alphabetic letters, punctuation marks, or the original data and the algorithm used.
Chinese characters.
Health Insurance Portability and Accountability Act
graphical user interface (GUI): an interface that al- (HIPAA): a 1996 law that established national stan-
lows users to control a computer or other device by dards for protecting individuals’ medical records and
interacting with graphical elements such as icons and other personal health information.
windows.
heavy metal: one of several toxic natural substances
graphical user interface (GUI): an interface that often used as components in electronic devices.
allows a user to interact with pictures instead of re-
quiring the user to type commands into a text-only heterogeneous scalability: the ability of a multipro-
interface. cessor system to scale up using parts from different
vendors.
Green Electronics Council: a US nonprofit organiza-
tion dedicated to promoting green electronics. hexadecimal: a base-16 number system that uses the
digits 0 through 9 and the letters A, B, C, D, E, and F
hacking: the use of technical skill to gain unauthor- as symbols to represent numbers.
ized access to a computer system; also, any kind of
advanced tinkering with computers to increase their hibernation: a power-saving state in which a computer
utility. shuts down but retains the contents of its random-
access memory.
hamming distance: a measurement of the difference
between two characters or control characters that ef- hidden Markov model: a type of model used to rep-
fects character processing, error detection, and error resent a dynamic system in which each state can only
correction. be partially seen.
hardware: the physical parts that make up a com- hierarchical file system: a directory with a treelike
puter. These include the motherboard and processor, structure in which files are organized.
as well as input and output devices such as monitors,
keyboards, and mice. high-fidelity wireframe: an image or series of images
that represents the visual elements of the website in
hardware interruption: a device attached to a com- great detail, as close to the final product as possible,
puter sending a message to the operating system to but still does not permit user interaction.
inform it that the device needs attention, thereby “in-
terrupting” the other tasks that the operating system homebrew: software that is developed for a device or
was performing. platform by individuals not affiliated with the device
manufacturer; it is an unofficial or “homemade” ver-
Harvard architecture: a computer design that has sion of the software that is developed to provide ad-
physically distinct storage locations and signal routes ditional functionality not included or not permitted
for data and for instructions. by the manufacturer.
hash function: an algorithm that converts a string hopping: the jumping of a data packet from one de-
of characters into a different, usually smaller, fixed- vice or node to another as it moves across the net-
length string of characters that is ideally impossible work. Most transmissions require each packet to
either to invert or to replicate. make multiple hops.
322
horizontal scaling: the addition of nodes (e.g., com- information technology: the use of computers and
puters or servers) to a distributed system. related equipment for the purpose of processing and
storing data.
host-based firewalls: firewalls that protect a specific
device, such as a server or personal computer, rather infrastructure as a service: a cloud computing plat-
than the network as a whole. form that provides additional computing resources
by linking hardware systems through the Internet;
HTML editor: a computer program for editing also called “hardware as a service.”
web pages encoded in hypertext markup language
(HTML). inheritance: a technique that reuses and repurposes
sections of code.
Human Brain Project: a project launched in 2013 in
an effort at modeling a functioning brain by 2023; Initiative for Software Choice (ISC): a consortium of
also known as HBP. technology companies founded by CompTIA, with
the goal of encouraging governments to allow com-
humanoid: resembling a human. petition among software manufacturers.
hybrid cloud: a cloud computing model that com- input/output instructions: instructions used by the
bines public cloud services with a private cloud plat- central processing unit (CPU) of a computer when
form linked through an encrypted connection. information is transferred between the CPU and a
device such as a hard disk.
identifiers: measurable characteristics used to iden-
tify individuals. integration testing: a process in which multiple units
are tested individually and when working in concert.
imitation game: Alan Turing’s name for his proposed
test, in which a machine would attempt to respond to interaction design: the practice of designing a user
questions in such a way as to fool a human judge into interface, such as a website, with a focus on how to
thinking it was human. facilitate the user’s experience.
immersive mode: a full-screen mode in which the interface: the function performed by the device
status and navigation bars are hidden from view driver, which mediates between the hardware of the
when not in use. peripheral and the hardware of the computer.
imperative language: language that instructs a com- interface metaphors: linking computer commands,
puter to perform a particular sequence of operations. actions, and processes with real-world actions, pro-
cesses, or objects that have functional similarities.
imperative programming: programming that pro-
duces code that consists largely of commands issued interference: anything that disrupts a signal as it
to the computer, instructing it to perform specific moves from source to receiver.
actions.
interferometry: a technique for studying biochem-
in-circuit emulator: a device that enables the debug- ical substances by superimposing light waves, typi-
ging of a computer system embedded within a larger cally one reflected from the substance and one re-
system. flected from a reference point, and analyzing the
interference.
information hierarchy: the relative importance of the
information presented on a web page. internal-use software: software developed by a
company for its own use to support general and
323
administrative functions, such as payroll, accounting, position and appearance of an object at the begin-
or personnel management and maintenance. ning of a sequence and at the end.
Internet of things: a wireless network connecting de- language interface packs: programs that translate
vices, buildings, vehicles, and other items with net- interface elements such as menus and dialog boxes
work connectivity. into different languages.
IRL relationships: relationships that occur “in real linear predictive coding: a popular tool for digital
life,” meaning that the relationships are developed speech processing that uses both past speech samples
or sustained outside of digital communication. and a mathematical approximation of a human vocal
tract to predict and then eliminate certain vocal fre-
jailbreak: the removal of restrictions placed on a mo- quencies that do not contribute to meaning. This al-
bile operating system to give the user greater control lows speech to be processed at a faster bit rate without
over the mobile device. significant loss in comprehensibility.
jailbreaking: the process of removing software restric- livelock: a situation in which two or more processes
tions within iOS that prevent a device from running constantly change their state in response to one an-
certain kinds of software. other in such a way that neither can complete.
JavaScript: a flexible programming language that is local area network (LAN): a network that connects
commonly used in website design. electronic devices within a limited physical area.
jQuery: a free, open-source JavaScript library. logic implementation: the way in which a CPU is de-
signed to use the open or closed state of combina-
kernel: the central component of an operating tions of circuits to represent information.
system.
logical copy: a copy of a hard drive or disk that cap-
keyframing: a part of the computer animation pro- tures active data and files in a different configuration
cess that shows, usually in the form of a drawing, the from the original, usually excluding free space and
324
artifacts such as file remnants; contrasts with a phys- material jetting: a process in which drops of liquid
ical copy, which is an exact copy with the same size photopolymer are deposited through a printer head
and configuration as the original. and heated to form a dry, stable solid.
logotype: a company or brand name rendered Medical Device Innovation Consortium: a nonprofit
in a unique, distinct style and font; also called a organization established to work with the US Food
“wordmark.” and Drug Administration on behalf of medical de-
vice manufacturers to ensure that these devices are
lossless compression: data compression that allows both safe and effective.
the original data to be compressed and reconstructed
without any loss of accuracy. medical imaging: the use of devices to scan a patient’s
body and create images of the body’s internal struc-
lossy compression: a method of reducing the size of tures to aid in diagnosis and treatment planning.
an audio file while sacrificing some of the quality of
the original file. memory dumps: computer memory records from
when a particular program crashed, used to pinpoint
lossy compression: a method of decreasing image file and address the bug that caused the crash.
size by discarding some data, resulting in some image
quality being irreversibly sacrificed. memristor: a memory resistor, a circuit that can
change its own electrical resistance based on the re-
low-energy connectivity IC: an integrated circuit that sistance it has used in the past and can respond to
enables wireless Bluetooth connectivity while using familiar phenomena in a consistent way.
little power.
mesh network: a type of network in which each node
LZW compression: a type of lossless compression that relays signal through the network. A node is any com-
uses a table-based algorithm. munication intersection or endpoint in the network
(e.g., computer or terminal).
magnetic storage: a device that stores information by
magnetizing certain types of material. meta-complexity: a complexity that arises when the
computational analysis of a problem is compounded
main loop: the overarching process being carried by the complex nature of the problem itself.
out by a computer program, which may then invoke
subprocesses. metadata: data that contains information about other
data, such as author information, organizational in-
main memory: the primary memory system of a com- formation, or how and when the data was created.
puter, often called “random access memory” (RAM),
accessed by the computer’s central processing unit method: a procedure that describes the behavior of
(CPU). an object and its interactions with other objects.
mastering: the creation of a master recording that microcontroller: a tiny computer in which all of the
can be used to make other copies for distribution. essential parts of a computer are united on a single
microchip—input and output channels, memory,
Material Design: a comprehensive guide for visual, and a processor.
motion, and interaction design across Google plat-
forms and devices. microcontroller: an integrated circuit that contains a
very small computer.
material extrusion: a process in which heated fila-
ment is extruded through a nozzle and deposited in micron: a unit of measurement equaling one mil-
layers, usually around a removable support. lionth of a meter; typically used to measure the width
325
of a core in an optical figure or the line width on a multiplexing: combining multiple data signals into
microchip. one in order to transmit all signals simultaneously
through the same medium.
microwaves: electromagnetic radiation with a fre-
quency higher than that of radio wave but lower than multiplier-accumulator: a piece of computer hard-
that of visible light. ware that performs the mathematical operation of
multiplying two numbers and then adding the result
middle computing: computing that occurs at the ap- to an accumulator.
plication tier and involves intensive processing of
data that will subsequently be presented to the user multiprocessing: the use of more than one central
or another, intervening application. processing unit to handle system tasks; this requires
an operating system capable of dividing tasks be-
million instructions per second (MIPS): a unit of tween multiple processors.
measurement used to evaluate computer perfor-
mance or the cost of computing resources. multitasking: in the mobile phone environment, al-
lowing different apps to run concurrently, much like
mixer: a component that converts random input the ability to work in multiple open windows on a PC.
radio frequency (RF) signal into a known, fixed fre-
quency to make processing the signal easier. multitasking: in computing, the process of executing
multiple tasks concurrently on an operating system
mixing: the process of combining different sounds (OS).
into a single audio recording.
multitenancy: a software program that allows mul-
modeling: the process of creating a 2-D or 3-D repre- tiple users to access and use the software from dif-
sentation of the structure being designed. ferent locations.
modulator: a device used to regulate or adjust some multi-terminal configuration: a computer configura-
aspect of an electromagnetic wave. tion in which several terminals are connected to a
single computer, allowing more than one person to
morphology: a branch of linguistics that studies the use the computer.
forms of words.
multitouch gestures: combinations of finger move-
multi-agent system: a system consisting of multiple ments used to interact with touch-screen or other
separate agents, either software or hardware systems, touch-sensitive displays in order to accomplish var-
that can cooperate and organize to solve problems. ious tasks. Examples include double-tapping and
swiping the finger along the screen.
multibit watermarking: a watermarking process
that embeds multiple bits of data in the signal to be multiuser: capable of being accessed or used by more
transmitted. than one user at once.
multicast: a network communications protocol in mutual exclusion: a rule present in some database
which a transmission is broadcast to multiple recipi- systems that prevents a resource from being accessed
ents rather than to a single receiver. by more than one operation at a time; one of the nec-
essary conditions for deadlock.
multimodal monitoring: the monitoring of several
physical parameters at once in order to better eval- near-field communication: a method by which two
uate a patient’s overall condition, as well as how dif- devices can communicate wirelessly when in close
ferent parameters affect one another or respond to a proximity to one another.
given treatment.
326
near-field communications antenna: an antenna that nondestructive editing: a mode of image editing in
enables a device to communicate wirelessly with a which the original content of the image is not de-
nearby compatible device. stroyed because the edits are made only in the ed-
iting software.
negative-AND (NAND) gate: a logic gate that pro-
duces a false output only when both inputs are true nonfunctional requirement: also called extrafunc-
tional requirement; an attribute of a computer
nervous (neural) system: the system of nerve path- system, such as reliability, scalability, testability, secu-
ways by which an organism senses changes in itself rity, or usability, that reflects the operational perfor-
and its environment and transmits electrochemical mance of the system.
signals describing these changes to the brain so that
the brain can respond. nongraphical: not featuring graphical elements.
network: two or more computers being linked in a nonlinear editing: a method of editing video in which
way that allows them to transmit information back each frame of video can be accessed, altered, moved,
and forth. copied, or deleted regardless of the order in which
the frames were originally recorded.
network firewalls: firewalls that protect an entire net-
work rather than a specific device. nonvolatile memory: computer storage that retains
its contents after power to the system is cut off, rather
networking: the use of physical or wireless connec- than memory that is erased at system shutdown.
tions to link together different computers and com-
puter networks so that they can communicate with nonvolatile random-access memory (NVRAM): a
one another and collaborate on computationally in- form of RAM in which data is retained even when the
tensive tasks. device loses access to power.
neural network: in computing, a model of informa- normalization: a process that ensures that different
tion processing based on the structure and function code points representing equivalent characters will
of biological neural networks such as the human be recognized as equal when processing text.
brain.
nuclear magnetic resonance (NMR) spectroscopy:
neuroplasticity: the capacity of the brain to change a technique for studying the properties of atoms or
as it acquires new information and forms new neural molecules by applying an external magnetic field to
connections. atomic nuclei and analyzing the resulting difference
in energy levels.
nibble: a group of four bits.
object: an element with a unique identity and a de-
node: any point on a computer network where com- fined set of attributes and behaviors.
munication pathways intersect, are redistributed, or
end (i.e., at a computer, terminal, or other device). object-oriented programming: a type of program-
ming in which the source code is organized into ob-
noise: interferences or irregular fluctuations af- jects, which are elements with a unique identity that
fecting electrical signals during transmission. have a defined set of attributes and behaviors.
noise-tolerant signal: a signal that can be easily distin- object-oriented user interface: an interface that al-
guished from unwanted signal interruptions or fluc- lows users to interact with onscreen objects as they
tuations (i.e., noise). would in real-world situations, rather than selecting
objects that are changed through a separate control
panel interface.
327
open-source software: software that makes its source peer-to-peer (P2P) network: a network in which all
code available to the public for free use, study, modi- computers participate equally and share coordina-
fication, and distribution. tion of network operations, as opposed to a client-
server network, in which only certain computers co-
operating system (OS): a specialized program that ordinate network operations.
manages a computer’s functions.
pen/trap: short for pen register or trap-and-trace de-
operating system shell: a user interface used to access vice, devices used to record either all numbers called
and control the functions of an operating system. from a particular telephone (pen register) or all
numbers making incoming calls to that phone (trap
optical storage: storage of data by creating marks in and trace); also refers to the court order that permits
a medium that can be read with the aid of a laser or the use of such devices.
other light source.
peripheral: a device that is connected to a computer
optical touchscreens: touchscreens that use optical and used by the computer but is not part of the com-
sensors to locate the point where the user touches be- puter, such as a printer, scanner, external storage de-
fore physical contact with the screen has been made. vice, and so forth.
packet filters: filters that allow data packets to enter a personal area network (PAN): a network generated
network or block them on an individual basis. for personal use that allows several devices to connect
to one another and, in some cases, to other networks
packet forwarding: the transfer of a packet, or unit or to the Internet.
of data, from one network node to another until it
reaches its destination. personally identifiable information (PII): informa-
tion that can be used to identify a specific individual.
packet sniffers: a program that can intercept data or
information as it moves through a network. pharmacogenomics: the study of how an individual’s
genome influences his or her response to drugs.
packet switching: a method of transmitting data
over a network by breaking it up into units called phased software development: an approach to
packets, which are sent from node to node along the software development in which most testing oc-
network until they reach their destination and are curs after the system requirements have been
reassembled. implemented.
parallel processing: the division of a task among sev- phishing: the use of online communications in order
eral processors working simultaneously, so that the to trick a person into sharing sensitive personal infor-
task is completed more quickly. mation, such as credit card numbers or social security
numbers.
parameter: a measurable element of a system that af-
fects the relationships between variables in the system. Phonebloks: a concept devised by Dutch designer
Dave Hakkens for a modular mobile phone intended
PATRIOT Act: a 2001 law that expanded the powers to reduce electronic waste.
of federal agencies to conduct surveillance and in-
tercept digital information for the purpose of investi- phoneme: a sound in a specified language or dialect
gating or preventing terrorism. that is used to compose words or to distinguish be-
tween words.
pedagogy: a philosophy of teaching that addresses
the purpose of instruction and the methods by which pipelined architecture: a computer design where dif-
it can be achieved. ferent processing elements are connected in a series,
328
with the output of one operation being the input of powder bed fusion: the use of a laser to heat layers of
the next. powdered material in a movable powder bed.
piracy: in the digital context, unauthorized repro- precoding: a technique that uses the diversity of a
duction or use of copyrighted media in digital form. transmission by weighting an information channel.
plug-in: an application that is easily installed (plugged printable characters: characters that can be written,
in) to add a function to a computer system. printed, or displayed in a manner that can be read
by a human.
polymerase chain reaction (PCR) machine: a ma-
chine that uses polymerase chain reaction to amplify printed circuit board: a flat copper sheet shielded
segments of DNA for analysis; also called a thermal by fiberglass insulation in which numerous lines
cycler. have been etched and holes have been punched,
allowing various electronic components to be con-
polymorphism: the ability to maintain the same nected and to communicate with one another and
method name across subclasses even when the with external components via the exposed copper
method functions differently depending on its class. traces.
port scanning: the use of software to probe a com- printed circuit board (PCB): a component of elec-
puter server to see if any of its communication ports tronic devices that houses and connects many smaller
have been left open or vulnerable to an unauthorized components.
connection that could be used to gain control of the
computer. Privacy Incorporated Software Agents (PISA): a
project that sought to identify and resolve privacy
portlet: an independently developed software com- problems related to intelligent software agents.
ponent that can be plugged into a website to gen-
erate and link to external content. process: the execution of instructions in a computer
program.
postproduction: the period after a model has been
designed and an image has been rendered, when processor coupling: the linking of multiple proces-
the architect may manipulate the created image by sors within a computer so that they can work together
adding effects or making other aesthetic changes. to perform calculations more rapidly. This can be
329
characterized as loose or tight, depending on the de- pseudocode: a combination of a programming lan-
gree to which processors rely on one another. guage and a spoken language, such as English, that is
used to outline a program’s code.
processor symmetry: multiple processors sharing ac-
cess to input and output devices on an equal basis public-key cryptography: a system of encryption that
and being controlled by a single operating system. uses two keys, one public and one private, to encrypt
and decrypt data.
programmable oscillator: an electronic device that
fluctuates between two states that allows user modifi- push technology: a communication protocol in which
cations to determine mode of operation. a messaging server notifies the recipient as soon as
the server receives a message, instead of waiting for
programming languages: sets of terms and rules of the user to check for new messages.
syntax used by computer programmers to create in-
structions for computers to follow. This code is then quantum bit (qubit): a basic unit of quantum com-
compiled into binary instructions for a computer to putation that can exist in multiple states at the
execute. same time, and can therefore have multiple values
simultaneously.
projected capacitive touch: technology that uses
layers of glass etched with a grid of conductive mate- quantum logic gate: a device that alters the behavior
rial that allows for the distortion of voltage flowing or state of a small number of qubits for the purpose
through the grid when the user touches the surface; of computation.
this distortion is measured and used to determine
the location of the touch. radio waves: low-frequency electromagnetic ra-
diation, commonly used for communication and
proprietary software: software owned by an indi- navigation.
vidual or company that places certain restrictions on
its use, study, modification, or distribution and typi- random access memory (RAM): memory that the
cally withholds its source code. computer can access very quickly, without regard to
where in the storage media the relevant information
protocol processor: a processor that acts in a is located.
secondary capacity to the CPU, relieving it from
some of the work of managing communication ransomware: malware that encrypts or blocks ac-
protocols that are used to encode messages on the cess to certain files or programs and then asks users
network. to pay to have the encryption or other restrictions
removed.
prototypal inheritance: a form of code reuse in which
existing objects are cloned to serve as prototypes. rapid prototyping: the process of creating physical
prototype models that are then tested and evaluated.
prototype: an early version of software that is still
under development, used to demonstrate what the raster: a means of storing, displaying, and editing
finished product will look like and what features it image data based on the use of individual pixels.
will include.
read-only memory (ROM): type of nonvolatile data
proxy: a dedicated computer server that functions as storage that is typically either impossible to erase and
an intermediary between a user and another server. alter or requires special equipment to do so; it is usu-
ally used to store basic operating information needed
proxy server: a computer through which all traffic by a computer.
flows before reaching the user’s computer.
330
real-time monitoring: a process that grants adminis- retriggerable single shot: a monostable multivibrator
trators access to metrics and usage data about a soft- (MMV) electronic circuit that outputs a single pulse
ware program or database in real time. when triggered but can identify a new trigger during
an output pulse, thus restarting its pulse time and ex-
real-time operating system: an operating system that tending its output.
is designed to respond to input within a set amount
of time without delays caused by buffering or other reversible data hiding: techniques used to conceal
processing backlogs. data that allow the original data to be recovered in its
exact form with no loss of quality.
receiver: a device that reads a particular type of trans-
mission and translates it into audio or video. RGB: a color model that uses red, green, and blue
to form other colors through various combinations.
recursive: describes a method for problem solving
that involves solving multiple smaller instances of the routing: selecting the best path for a data packet to
central problem. take in order to reach its destination on the network.
remote monitoring: a platform that reviews the activi- Sarbanes-Oxley Act (SOX): a 2002 law that requires
ties on software or systems that are located off-site. all business records, including electronic records and
electronic messages, to be retained for a certain pe-
render farm: a cluster of powerful computers that riod of time.
combine their efforts to render graphics for anima-
tion applications. scareware: malware that attempts to trick users into
downloading or purchasing software or applications
rendering: the process of transforming one or more to address a computer problem.
models into a single image; the production of a com-
puter image from a 2-D or 3-D computer model; the Scientific Working Group on Digital Evidence
process of selecting and displaying glyphs. (SWGDE): an American association of various aca-
demic and professional organizations interested in
resistive touchscreens: touchscreens that can locate the development of digital forensics systems, guide-
the user’s touch because they are made of several lines, techniques, and standards.
layers of conductive material separated by small
spaces; when the user touches the screen, the layers screen-reading program: a computer program that
touch each other and complete a circuit. converts text and graphics into a format accessible
to visually impaired, blind, learning disabled, or il-
resource allocation: a system for dividing computing literate users.
resources among multiple, competing requests so
that each request is eventually fulfilled. script: a group of written signs, such as Latin or
Chinese characters, used to represent textual infor-
resource distribution: the locations of resources avail- mation in a writing system.
able to a computing system through various software
or hardware components or networked computer scrubbing: navigating through an audio recording
systems. repeatedly in order to locate a specific cue or word.
resource holding: a situation in which one process is search engine optimization (SEO): techniques used
holding at least one resource and is requesting fur- to increase the likelihood that a website will appear
ther resources; one of the necessary conditions for among the top results in certain search engines.
deadlock.
331
self-star properties: a list of component and system software: the sets of instructions that a computer
properties required for a computing system to be follows in order to carry out tasks. Software may be
classified as an autonomic system. stored on physical media, but the media is not the
software.
self-star properties: a list of component and system
properties required for a computing system to be software as a service: a software service system in
classified as an autonomic system. which software is stored at a provider’s data center
and accessed by subscribers.
semantics: a branch of linguistics that studies the
meanings of words and phrases. software patches: updates to software that correct
bugs or make other improvements.
semiconductor intellectual property (SIP) block: a
quantity of microchip layout design that is owned by software-defined antennas: reconfigurable antennas
a person or group; also known as an “IP core.” that transmit or receive radio signals according to
software instructions.
sensors: devices capable of detecting, measuring, or
reacting to external physical properties. solid modeling: the process of creating a 3-D repre-
sentation of a solid object.
separation of concerns: a principle of software en-
gineering in which the designer separates the com- solid-state storage: computer memory that stores in-
puter program’s functions into discrete elements. formation in the form of electronic circuits, without
the use of disks or other read/write equipment.
shadow RAM: a form of RAM that copies code stored
in read-only memory into RAM so that it can be ac- sound card: a peripheral circuit board that enables
cessed more quickly. a computer to accept audio input, convert signals
between analog and digital formats, and produce
sheet lamination: a process in which thin layered sound.
sheets of material are adhered or fused together and
then extra material is removed with cutting imple- source code: the set of instructions written in a pro-
ments or lasers. gramming language to create a program.
shell: an interface that allows a user to operate a com- speaker independent: describes speech software that
puter or other device. can be used by any speaker of a given language.
Short Message Service (SMS): the technology under- special character: a character such as a symbol, emoji,
lying text messaging used on cell phones. or control character.
signal-to-noise ratio (SNR): the power ratio between spyware: software installed on a computer that allows
meaningful information, referred to as “signal,” and a third party to gain information about the computer
background noise. user’s activity or the contents of the user’s hard drive.
silent monitoring: listening to the exchanges be- state: a technical term for all of the stored informa-
tween an incoming caller and an employee, such as a tion, and the configuration thereof, that a program
customer service agent. or circuit can access at a given time; a complete de-
scription of a physical system at a specific point in
simulation: a computer model executed by a com- time, including such factors as energy, momentum,
puter system. position, and spin.
332
stateful filters: filters that assess the state of a connec- system agility: the ability of a system to respond to
tion and allow or disallow data transfers accordingly. changes in its environment or inputs without failing
altogether.
static random-access memory (SRAM): a form of
RAM in which the device’s memory does not need to system identification: the study of a system’s inputs
be regularly refreshed but data will still be lost if the and outputs in order to develop a working model of
device loses power. it.
static testing: a testing technique in which software is system software: the basic software that manages the
tested by analyzing the program and associated docu- computer’s resources for use by hardware and other
mentation, without executing its code. software.
substitution cipher: a cipher that encodes a message tableless web design: the use of style sheets rather
by substituting one character for another. than HTML tables to control the layout of a web page.
subtyping: a relation between data types where one TCO certification: a credential that affirms the sus-
type is based on another, but with some limitations tainability of computers and related devices.
imposed.
telecom equipment: hardware that is intended for
supercomputer: an extremely powerful computer use in telecommunications, such as cables, switches,
that far outpaces conventional desktop computers. and routers.
superposition: the principle that two or more waves, telemedicine: health care provided from a distance
including waves describing quantum states, can be using communications technology, such as video
combined to give rise to a new wave state with unique chats, networked medical equipment, smartphones,
properties. This allows a qubit to potentially be in two and so on.
states at once.
telemetry: automated communication process that
surface capacitive technology: a glass screen coated allows a machine to identify its position relative to ex-
with an electrically conductive film that draws cur- ternal environmental cues.
rent across the screen when it is touched; the flow of
current is measured in order to determine the loca- temporal synchronization: the alignment of signals
tion of the touch. from multiple devices to a single time standard, so
that, for example, two different devices that record
symmetric-key cryptography: a system of encryption the same event will show the event happening at the
that uses the same private key to encrypt and decrypt exact same time.
data.
terminals: a set of basic input devices, such as a key-
syntax: a branch of linguistics that studies how words board, mouse, and monitor, that are used to con-
and phrases are arranged in sentences to create nect to a computer running a multi-user operating
meaning. system.
syntax: rules that describe how to correctly structure third-party data center: a data center service pro-
the symbols that comprise a language. vided by a separate company that is responsible for
maintaining its infrastructure.
system: a set of interacting or interdependent com-
ponent parts that form a complex whole; a comput- thread: the smallest part of a programmed sequence
er’s combination of hardware and software resources that can be managed by a scheduler in an OS.
that must be managed by the operating system.
333
time-sharing: a strategy used by multi-user operating tuning: the process of making minute adjustments
systems to work on multiple user requests by switching to a computer’s settings in order to improve its
between tasks in very small intervals of time. performance.
time-sharing: the use of a single computing resource Turing complete: a programming language that can
by multiple users at the same time, made possible by perform all possible computations.
the computer’s ability to switch rapidly between users
and their needs. typography: the art and technique of arranging type
to make language readable and appealing.
topology: the way a network is organized, including
nodes and the links that connect nodes. ubiquitous computing: an approach to computing in
which computing activity is not isolated in a desktop,
toxgnostics: a subfield of personalized medicine and laptop, or server, but can occur everywhere and at
pharmacogenomics that is concerned with whether any time through the use of microprocessors em-
an individual patient is likely to suffer a toxic reaction bedded in everyday devices.
to a specific medication.
undervolting: reducing the voltage of a computer
trace impedance: a measure of the inherent resis- system’s central processing unit to decrease power
tance to electrical signals passing through the traces usage.
etched on a circuit board.
unmanned aerial vehicle (UAV): an aircraft that
transactional database: a database management system does not have a pilot onboard but typically operates
that allows a transaction— a sequence of operations to through remote control, automated flight systems, or
achieve a single, self-contained task—to be undone, or preprogrammed computer instructions.
“rolled back,” if it fails to complete properly.
user-centered design: design based on a perceived
transistor: a computing component generally made understanding of user preferences, needs, tenden-
of silicon that can amplify electronic signals or work cies, and capabilities.
as a switch to direct electronic signals within a com-
puter system. utility program: a type of system software that per-
forms one or more routine functions, such as disk
transmission medium: the material through which a partitioning and maintenance, software installation
signal can travel. and removal, or virus protection.
transmitter: a device that sends a signal through a variable: a symbol representing a quantity with no
medium to be picked up by a receiver. fixed value.
transparent monitoring: a system that enables em- vat photopolymerization: a process in which a laser
ployees to see everything that the managers moni- hardens layers of light-sensitive material in a vat.
toring them can see.
vector: a means of storing, displaying, and editing
transposition cipher: a cipher that encodes a message image data based on the use of defined points and
by changing the order of the characters within the lines.
message.
vertical scaling: the addition of resources to a single
trusted platform module (TPM): a standard used for node (e.g., a computer or server) in a system.
designing cryptoprocessors, which are special chips
that enable devices to translate plain text into cipher vibrator: an electronic component that vibrates.
text and vice versa.
334
video scratching: a technique in which a video se- web application: an application that is downloaded
quence is manipulated to match the rhythm of a either wholly or in part from the Internet each time
piece of music. it is used.
virtual device driver: a type of device driver used by white-box testing: a testing technique that includes
the Windows operating system that handles com- complete knowledge of an application’s coding and
munications between emulated hardware and other structure.
devices.
widget: an independently developed segment of code
virtual memory: memory used when a computer con- that can be plugged into a website to display informa-
figures part of its physical storage (on a hard drive, tion retrieved from other sites.
for example) to be available for use as additional
RAM. Information is copied from RAM and moved widgets: small, self-contained applications that run
into virtual memory whenever memory resources are continuously without being activated like a typical
running low. application.
virtual reality: the use of technology to create a sim- wireframe: a schematic or blueprint that represents
ulated world into which a user may be immersed the visual layout of a web page, without any interac-
through visual and auditory input. tive elements.
vision mixing: the process of selecting and combining word prediction: a software feature that recognizes
multiple video sources into a single video. words that the user has typed previously and offers
to automatically complete them each time the user
visual programming: a form of programming that al- begins typing.
lows a programmer to create a program by dragging
and dropping visual elements with a mouse instead worm: a type of malware that can replicate itself and
of having to type in text instructions. spread to other computers independently; unlike a
computer virus, it does not have to be attached to a
voice over Internet Protocol (VoIP): a set of param- specific program.
eters that make it possible for telephone calls to be
transmitted digitally over the Internet, rather than as zombie computer: a computer that is connected to
analog signals through telephone wires. the Internet or a local network and has been com-
promised such that it can be used to launch malware
volatile memory: memory that stores information or virus attacks against other computers on the same
in a computer only while the computer has power; network.
when the computer shuts down or power is cut, the
information is lost.
335
“3D Printing Processes: The Free Beginner’s Guide.” Amadeo, Ron. “The History of Android.” Ars Technica.
3D Printing Industry. 3D Printing Industry, 2015. Condé Nast, 15 June 2014. Web. 2 Jan. 2016.
Web. 6 Jan. 2016. Ambainis, Andris. “What Can We Do with a Quantum
“About Additive Manufacturing.” Additive Computer?” Institute Letter Spring 2014: 6–7.
Manufacturing Research Group. Loughborough U, Institute for Advanced Study. Web. 24 Mar. 2016.
2015. Web. 6 Jan. 2016. Ambinder, Marc. “What’s Really Limiting Advances
“About ANSI.” ANSI. American Natl. Standards Inst., in Computer Tech.” Week. The Week, 2 Sept. 2014.
2016. Web. 31 Jan. 2016. Web. 4 Mar. 2016.
“About Threads and Processes.” MSDN.Microsoft. Ambrose, Gavin, Paul Harris, and Sally Stone. The
Windows, n.d. Web. 15 Mar 2016. Visual Dictionary of Architecture. Lausanne: AVA,
Abramovich, Sergei, ed. Computers in Education. 2 2008. Print.
vols. New York: Nova, 2012. Print. Amer. Standards Assn. American Standard Code for
“A Catalog of Published Genome-Wide Association Information Interchange. Amer. Standards Assn., 17
Studies.” National Human Genome Research Institute. June 1963. Digital file.
Natl. Insts. of Health, 16 Sept. 2015. Web. 23 Dec. “An Introduction to Public Key Cryptography and
2015. PGP.” Surveillance Self-Defense. Electronic Frontier
Adams, Ty, and Stephen A. Smith. Communication Foundation, 7 Nov. 2014. Web. 4 Feb. 2016.
Shock: The Rhetoric of New Technology. Newcastle Anderson, Deborah. “Global Linguistic Diversity
upon Tyne: Cambridge Scholars, 2015. Print. for the Internet.” Communications of the ACM Jan.
Adee, Sally. “Thanks for the Memories.” IEEE 2005: 27. PDF file.
Spectrum. IEEE, 1 May 2009. Web. 10 Mar. 2016. Anderson, Gary H. Video Editing and Post Production: A
Adelman, L. M. Molecular computation of solutions Professional Guide. Woburn: Focal, 1999. Print.
to combinatorial problems, Science 226, 1021-1024 Anderson, James A, Edward Rosenfeld, and Andras
(1994). Pellionisz. Neurocomputing. Cambridge, Mass: MIT
Agrawal, Manindra, S. Barry Cooper, and Angsheng Press, 1990. Print.
Li, eds. Theory and Applications of Models of Anderson, Nate. “CompTIA Backs Down; Past Certs
Computation: 9th Annual Conference, TAMC 2012, Remain Valid for Life.” Ars Technica. Condé Nast,
Beijing, China, May 16–21, 2012. Berlin: Springer, 26 Jan. 2010. Web. 31 Jan. 2016.
2012. Print. Anderson, Thomas, and Michael Dahlin. Operating
Agrawal, Manish. Business Data Communications. Systems: Principles and Practice. West Lake Hills:
Hoboken: Wiley, 2011. Print. Recursive, 2014. Print.
“A History of Technology in the Architecture Office.” Andrews, Jean. A+ Guide to Hardware: Managing,
Architizer. Architizer, 23 Dec. 2014. Web. 31 Jan. Maintaining, and Troubleshooting. 6th ed. Boston:
2016. Course Tech., 2014. Print.
“A History of Windows.” Microsoft. Microsoft, 2016. Andrews, Jean. A+ Guide to Managing and Maintaining
Web. 2 Jan. 2016. Your PC. 8th ed. Boston: Course Tech., 2014. Print.
Alcorn, Paul. “SMR (Shingled Magnetic Recording) “Android: A Visual History.” Verge. Vox Media, 7 Dec.
101.” Tom’s IT Pro. Purch, 10 July 2015. Web. 7 Mar. 2011. Web. 2 Jan. 2016.
2016. “ANSI Accredits Four Personnel Certification
Allanwood, Gavin, and Peter Beare. User Experience Programs.” ANSI. American Natl. Standards Inst.,
Design: Creating Designs Users Really Love. New York: 8 Apr. 2008. Web. 31 Jan. 2016.
Fairchild, 2014. Print. Anthes, Gary. “Back to Basics: Algorithms.”
Alton, Larry. “Email Security in 2016: What You Need Computerworld. Computerworld, 24 Mar. 2008.
to Know.” Inc. Mansueto Ventures, 18 Feb. 2016. Web. 19 Jan. 2016.
21 Feb. 2016.
337
Ao, Sio-Iong, and Len Gelman, eds. Electrical Apps. Upper Saddle River: Addison-Wesley, 2014.
Engineering and Intelligent Systems. New York: Print.
Springer, 2013. Print. Baptiste, Philippe, Claude Le Pape, and Wim Nuijten.
“A Quantum Leap in Computing.” NOVA. WGBH/ Constraint-Based Scheduling: Applying Constraint
PBS Online, 21 July 2011. Web. 24 Mar. 2016. Programming to Scheduling Problems. New York:
Aravind, Alex A., and Sibsankar Haldar. Operating Springer, 2013. Print.
Systems. Upper Saddle River: Pearson, 2010. Print. Barski, Conrad. Land of Lisp. Learn to Program LISP
Ascher, Steven. The Filmmaker’s Handbook: A One Game at a Time. San Francisco, CA: No Starch
Comprehensive Guide for the Digital Age. New York: Press, 2011. Print.
Plume, 2012. Print. Basagni, Stefano, et al., eds. Mobile Ad Hoc Networking:
“A Short History of US Internet Legislation: Privacy Cutting Edge Directions. 2nd ed. Hoboken: Wiley,
on the Internet.” ServInt. ServInt, 17 Sept. 2013. 2013. Print.
Web. 28 Feb. 2016. Bass, Len, Paul Clements, and Rick Kazman. Software
“A Tutorial on Data Representation: Integers, Architecture in Practice. 3rd ed. Upper Saddle River:
Floating-Point Numbers, and Characters.” NTU. Addison, 2012. Print.
edu. Nanyang Technological U, Jan. 2014. Web. 20 Batchelor, Bruce. Intelligent Image Processing in
Feb. 2016. PROLOG. London, UK: Springer-Verlag, 1991.
Australian National University. Binary Representation Print.
and Computer Arithmetic. Australian National U, Beattie, Andrew. “Cloud Computing: Why the Buzz?”
n.d. Digital file. Techopedia. Techopedia, 30 Nov. 2011. Web. 21 Jan.
Aziz, Scott. “With Regulation Looming, It’s Time for 2016.
Industry to Raise the Bar for Software Quality.” Beeler, Robert A., How to Count: An Introduction to
Wired. Condé Nast, 28 Aug. 2014. Web. 31 Mar. Combinatorics. New York: Springer, 2015. Print.
2016. Bell, Tim, et al. “Algorithms.” Computer Science Field
Badilescu, Simona, and Muthukumaran Packirisamy. Guide. U of Canterbury, 3 Feb. 2015. Web. 19 Jan.
BioMEMS: Science and Engineering Perspectives. Boca 2016.
Raton: CRC, 2011. Print. Bell, Tom. Programming: A Primer; Coding for Beginners.
Bajarin, Tim. “Google Is at a Major Crossroads with London: Imperial Coll. P, 2016. Print.
Android and Chrome OS.” PCMag. Ziff Davis, 21 Belton, Padraig. “Coding the Future: What Will the
Dec. 2015. Web. 4 Jan. 2016. Future of Computing Look Like?” BBC News. BBC,
Bajo, Javier, et al., eds. Highlights of Practical Applications 15 May 2015. Web. 24 Feb. 2016.
of Agents, Multi-Agent Systems, and Sustainability. Bembenik, Robert, Łukasz Skonieczny, Henryk
Proc. of the International Workshops of PAAMS Rybinński, Marzena Kryszkiewicz, and Marek
2015, June 3–4, 2015, Salamanca, Spain. Cham: Niezgódka, eds. Intelligent Tools for Building a
Springer, 2015. Print. Scientific Information Platform: Advanced Architectures
Baldé, C. P., et al. E-waste Statistics: Guidelines on and Solutions. New York: Springer, 2013. Print.
Classification, Reporting and Indicators, 2015. Bonn: Ben-Ari, M. Principles of Concurrent and Distributed
United Nations U, 2015. United Nations University. Programming. 2nd ed. New York: Addison, 2006.
Web. 9 Feb. 2016. Print.
Ball, Phillip. “The Truth about the Turing Test.” Bergin, Michael S. “History of BIM.” Architecture
Future. BBC, 24 July 2015. Web. 18 Dec. 2015. Research Lab. Architecture Research Lab, 21 Aug.
Ballew, Joli, and Ann McIver McHoes. Operating 2011. Web. 31 Jan. 2016.
Systems DeMYSTiFieD. New York: McGraw, 2012. Berman, P. Gennady, Garu D. Doolen, Ronnie
Print. Mainieri, and Vladimir Tsifrinovich. (1998)
Balovich, David. “Sarbanes-Oxley Document Introduction to Quantum Computers. River Edge, NJ:
Retention and Best Practices.” Creditworthy News. World Scientific Publishing. Print.
3JM Company, 5 Sept. 2007. Web. 1 Apr. 2016. Bernal, Paul. Internet Privacy Rights: Rights to Protect
Banga, Cameron, and Josh Weinhold. Essential Mobile Autonomy. New York: Cambridge UP, 2014.
Interaction Design: Perfecting Interface Design in Mobile Print.
338
Bernhardt, Chris. Turing’s Vision: The Birth of Computer Boashash, Boualem, ed. Time-Frequency Signal Analysis
Science. MIT Press, 2016. and Processing: A Comprehensive Reference. 2nd ed.
Bernier, Samuel N., Bertier Luyt, Tatiana Reinhard, San Diego: Academic, 2016. Print.
and Carl Bass. Design for 3D Printing: Scanning, Bone, Simon, and Matias Castro. “A Brief History
Creating, Editing, Remixing, and Making in Three of Quantum Computing.” SURPRISE May–June
Dimensions. San Francisco: Maker Media, 2014. 1997: n. pag. Department of Computing, Imperial
Print. College London. Web. 24 Mar. 2016.
Berns, Andrew, and Sukumar Ghosh. “Dissecting Self- Booch, Grady, et al. Object-Oriented Analysis and Design
Properties.” SASO 2009: Third IEEE International with Applications. 3rd ed. Upper Saddle River:
Conference on Self-Adaptive and Self-Organizing Addison, 2007. Print.
Systems. Los Alamitos: IEEE, 2009. 10–19. Andrew “Book—Understanding Biometrics.” Griaule Biometrics.
Berns: Homepage. Web. 20 Jan. 2016. Griaule Biometrics, 2008. Web. 21 Jan. 2016.
Berry, John D. Language Culture Type: International Borkar, Shekhar, and Andrew A. Chien. “The Future
Type Design in the Age of Unicode. New York: Graphis, of Microprocessors.” Communications of the ACM.
2002. Print. ACM, May 2011. Web. 3 Mar. 2016.
Bessière, Pierre, et al. Bayesian Programming. Boca Boyle, David. Alan Turing: Unlocking the Enigma.
Raton: CRC, 2014. Print. CreateSpace Independent Publishing Platform,
Bibby, Joe. “Robonaut: Home.” Robonaut. NASA, 31 2014.
May 2013. Web. 21 Jan. 2016. Boyle, Randall, and Raymond R. Panko. Corporate
Biere, Armin, Amir Nahir, and Tanja Vos, eds. Computer Security. 4th ed. Boston: Pearson, 2015.
Hardware and Software: Verification and Testing. New Print.4 Science Reference Center™ Computer
York: Springer, 2013. Print. Security
Binh, Le Nguyen. Digital Processing: Optical Bradley, Tony. “Experts Pick the Top 5 Security
Transmission and Coherent Receiving Techniques. Boca Threats for 2015.” PCWorld. IDG Consumer &
Raton: CRC, 2013. Print. SMB, 14 Jan. 2015. Web. 12 Mar. 2016.
Biometric Center of Excellence. Federal Bureau of Brandom, Russell. “Google Survey Finds More than
Investigation, 2016. Web. 21 Jan. 2016. Five Million Users Infected with Adware.” The
“Biomedical Engineers.” Occupational Outlook Verge. Vox Media, 6 May 2015. Web. 12 Mar. 2016.
Handbook, 2016–2017 Edition. Bureau of Labor Brauer, Max. Logic Programming With Prolog. New
Statistics, US Dept. of Labor, 17 Dec. 2015. Web. York, NY: Springer, 2005. Print.
23 Jan. 2016. Briassouli, Alexia, Jenny Benois-Pineau, and
“Biotechnology.” ACS. Amer. Chemical Soc., n.d. Alexander Hauptmann, eds. Health Monitoring and
Web. 27 Jan. 2016. Personalized Feedback Using Multimedia Data. Cham:
Bird, Steven, Ewan Klein, and Edward Loper. Natural Springer, 2015. Print.
Language Processing with Python, 2nd ed. O’Reilly Bright, Peter. “Locking the Bad Guys Out with
Media, 2017. Asymmetric Encryption.” Ars Technica. Condé
Bishop, Owen (2011) Electronics. Circuits and Systems Nast, 12 Feb. 2013. Web. 23 Feb. 2016.
4th ed., New York, NY: E;sevier. Print. Brindley, Keith (2011) Starting Electronics 4th ed., New
Bishop, Todd. “Microsoft Exec Admits New Reality: York, NY: Elsevier. Print.
Market Share No Longer 90%— It’s 14%.” Brooks, R. R. Introduction to Computer and Network
Geekwire. GeekWire, 14 July 2014. Web. 30 Jan. Security: Navigating Shades of Gray. Boca Raton:
2015. CRC, 2014. Digital file.
Black, Jeremy. The Power of Knowledge: How Information Brown, Adrian. Graphics File Formats. Kew: Natl.
and Technology Made the Modern World. New Haven: Archives, 2008. PDF file. Digital Preservation
Yale UP, 2014. Print. Guidance Note 4.
Blanco, Xiomara. “Top Tablets with Expandable Brownlee, John. “The History of Web Design
Storage.” CNET. CBS Interactive, 25 Jan. 2016. Explained in 9 GIFs.” Co. Design. Fast Co., 5 Dec.
Web. 7 Mar. 2016. 2014. Web. 22 Feb. 2016.
339
Bryden, Douglas. CAD and Rapid Prototyping for Cervantes, Humberto, and Rick Kazman. Designing
Product Design. London: King, 2014. Print. Software Architectures: A Practical Approach. Upper
Bucchi, Massimiano, and Brian Trench, eds. Routledge Saddle River: Addison, 2016. Print.
Handbook of Public Communication of Science and Cezzar, Juliette. “What Is Graphic Design?” AIGA.
Technology. 2nd ed. New York: Routledge, 2014. Amer. Inst. of Graphic Arts, 2016. Web. 16 Mar.
Print. 2016.
Burger, John R. Brain Theory from a Circuits and Cha, Ariana Eunjung. “Health and Data: Can Digital
Systems Perspective: How Electrical Science Explains Fitness Monitors Revolutionise Our Lives?”
Neuro-Circuits, Neuro-Systems, and Qubits. New York: Guardian. Guardian News and Media, 19 May
Springer, 2013. Print. 2015. Web. 26 Feb. 2016.
Busch, David D. Mastering Digital SLR Photography. Chan, Melanie. Virtual Reality: Representations in
2nd ed. Boston: Thompson Learning, 2008. Contemporary Media. New York: Bloomsbury, 2014.
Print. Print.
Bwalya, Kelvin J., Nathan M. Mnjama, and Peter M. I. Chao, Loretta. “Tech Partnership Looks beyond the
I. M. Sebina. Concepts and Advances in Information Bar Code with Digital Watermarks.” Wall Street
Knowledge Management: Studies from Developing and Journal. Dow Jones, 12 Jan. 2016. Web. 14 Mar. 2016.
Emerging Economies. Boston: Elsevier, 2014. Print. Cheever, Erik. “Representation of Numbers.”
Calude, C. S., and Gheorge Paun, Computing with Swarthmore College. Swarthmore College, n.d. Web.
Cells and Atoms. (New York: Taylor & Francis, 2001. 20 Feb. 2016.
Print. Chen, Yufeng, and Zhiwu Li. Optimal Supervisory
Calude, Cristian S., ed. The Human Face of Computing. Control of Automated Manufacturing Systems. Boca
London: Imperial Coll. P, 2016. Print. Raton: CRC, 2013. Print.
Campbell-Kelly, Martin, William Aspray, Nathan Chivers, Ian, and Jane Sleightholme. Introduction to
Ensmenger, and Jeffrey R. Yost. Computer: A History Programming With Fortran, with Coverage of Fortran
of the Information Machine. Boulder: Westview, 2014. 90, 95, 2003, 2008 and 77. 3rd ed., New York, NY:
Print. Springer, 2015. Print.
Carlson, Wayne. “A Critical History of Computer “Choose a Website Builder: 14 Top Tools.” Creative
Graphics and Animation.” Ohio State University. Bloq. Future, 8 Feb. 2016. Web. 22 Feb. 2016.
Ohio State U, 2003. Web. 31 Jan. 2016. Christiano, Marie. “What Are Integrated
Case, Meredith A., et al. “Accuracy of Smartphone Development Environments?” All about Circuits.
Applications and Wearable Devices for Tracking EETech Media, 3 Aug. 2015. Web. 23 Feb. 2016.
Physical Activity Data.” Journal of the American Chua, Chee Kai, Kah Fai Leong, and Chu Sing
Medical Association 313.6 (2015): 625–26. Web. 2 Lim. Rapid Prototyping: Principles and Applications.
Mar. 2016. Hackensack: World Scientific, 2010. Print.
Cassell, Eric J. The Nature of Healing: The Modern Clark, Alexander, Chris Fox, and Shalom Lappin
Practice of Medicine. New York: Oxford UP, 2013. (eds.) The Handbook of Computational Linguistics
Print. and Natural Language Processing. Wiley-Blackwell,
“Categories of Free and Nonfree Software.” GNU 2012.
Operating System. Free Software Foundation, 1 Jan. Clark, Don. “Smart-Home Gadgets Still a Hard Sell.”
2016. Web. 31 Mar. 2016. Wall Street Journal. Dow Jones, 5 Jan. 2016. Web. 12
Cavanagh, Joseph (2013) X86 Assembly Language and Mar. 2016.
C Fundamentals Boca Raton, FL: CRC Press. Print. Clarke, Dave, James Noble, and Tobias Wrigstad,
Ceberio, Martine, and Vladik Kreinovich. Constraint eds. Aliasing in Object-Oriented Programming: Types,
Programming and Decision Making. New York: Analysis and Verification. Berlin: Springer, 2013.
Springer, 2014. Print. Print.
Celada, Laura. “What Are the Most Common Clements, Alan (2006) Principles of Computer Hardware
Graphics File Formats.” FESPA. FESPA, 27 Mar. 4th ed., New York, NY: Oxford University Press.
2015. Web. 11 Feb. 2016. Print.
340
Clements, Paul, et al. Documenting Software Costello, Vic, Susan Youngblood, and Norman E.
Architectures: Views and Beyond. 2nd ed. Upper Youngblood. Multimedia Foundations: Core Concepts
Saddle River: Addison, 2011. Print. for Digital Design. New York: Focal, 2012. Print.
Cline, Hugh F. Information Communication Technology Counihan, Martin Fortran 95. Londion, UK:
and Social Transformation: A Social and Historical University College Press. 1996. Print.
Perspective. New York: Routledge, 2014. Print. Couts, Andrew. “Drones 101: A Beginner’s Guide to
Coelho, Helder, and José C. Cotta. Prolog by Example: Taking Flight, No License Needed.” Digital Trends.
How to Learn, Teach and Use It. New York, NY: Designtechnica, 16 Nov. 2013. Web. 27 Jan. 2015.
Springer, 1996. Print. Cox, Ingemar J., Jessica Fridrich, Matthew L. Miller,
Coleman, E Gabriella. Coding Freedom: The Ethics and Jeffrey A. Bloom, and Ton Kalker. “Practical
Aesthetics of Hacking. Princeton: Princeton UP, Dirty-Paper Codes.” Digital Watermarking and
2013. Print. Steganography. 2nd ed. Amsterdam: Elsevier, 2008.
Collins, Lauren, and Scott Ellis. Mobile Devices: Tools 183–212. Digital file.
and Technologies. Boca Raton: CRC, 2015. Print. Cross, Mark. Audio Post Production for Film and
Collins, Mike. Pro Tools 11: Music Production, Recording, Television. Boston: Berklee, 2013. Print.
Editing, and Mixing. Burlington: Focal, 2014. Print. Crothers, Brooke. “Microsoft Explains Quantum
“Combinatorics.” Mathigon. Mathigon, 2015. Web. 10 Computing So Even You Can Understand.” CNET.
Feb. 2016. CBS Interactive, 25 July 2014. Web. 24 Mar. 2016.
Comer, Douglas E. Computer Networks and Internets. Dale, Nell, and John Lewis. Computer Science
6th ed. Boston: Pearson, 2015. Print. Illuminated. 6th ed. Burlington: Jones, 2016. Print.
“CompTIA A+.” CompTIA. Computing Technology Dancyger, Ken. The Technique of Film and Video Editing:
Industry Assn., 2015. Web. 31 Jan. 2016. History, Theory, and Practice. Burlington: Focal,
“Computer Crime Laws.” Frontline. WGBH Educ. 2013. Digital file.
Foundation, 2014. Web. 28 Mar. 2016. Dastbaz, Mohammad, Colin Pattinson, and Bakbak
“Computer-Aided Design (CAD) and Computer- Akhgar, eds. Green Information Technology: A
Aided Manufacturing (CAM).” Inc. Mansueto Sustainable Approach. Waltham: Elsevier, 2015.
Ventures, n.d. Web. 31 Jan. 2016. Print.
“Computer—Networking.” Tutorials Point. Tutorials Davies, Alan. An Introduction to Applied Linguistics: From
Point, 2016. Web. 22 Feb. 2016. Practice to Theory. 2nd ed. Edinburgh: Edinburgh
“Computer Fraud and Abuse Act (CFAA).” Internet UP, 2007. Print.
Law Treatise. Electronic Frontier Foundation, 24 Davis, Stephen R. (2015) Beginning Programming with
Apr. 2013. Web. 31 Mar. 2016. C++ for Dummies 2nd ed. Joboken, NJ: John Wiley &
Comstock, Jonah. “Eight Years of Fitbit News Leading Sons. Print.
Up to Its Planned IPO.” MobiHealthNews. HIMSS “DCN—Computer Network Types.” Tutorials Point.
Media, 11 May 2015. Web. 28 Feb. 2016. Tutorials Point, 2016. Web. 22 Feb. 2016.
Connolly, Thomas M., and Carolyn E. Begg. De Filippi, Primavera. “It’s Time to Take Mesh
Database Systems: A Practical Approach to Design, Networks Seriously (and Not Just for the Reasons
Implementation, and Management. 6th ed. Boston: You Think).” Wired. Condé Nast, 2 Jan. 2014. Web.
Pearson, 2015. Print. 22 Feb. 2016.
Cooper, Stephen. “Motherboard Design Process.” De George, Andy. “How to Autoscale an Application.”
MBReview.com. Author, 4 Sept. 2009. Web. 14 Mar. Microsoft Azure. Microsoft, 7 Dec. 2015. Web. 17
2016. Feb. 2016.
Corbet, Jonathan, Alessandro Rubini, and Greg Deitel, H.M. And Deitel, P.J. (2009) C++ for
Kroah-Hartman. Linux Device Drivers. 3rd ed. Programmers Upper Saddle River, NJ: Pearson
Cambridge: O’Reilly, 2005. Print. Education Incorporated. Print.
Cormen, Thomas H. Algorithms Unlocked. Cambridge: Delforge, Pierre. “America’s Data Centers Consuming
MIT P, 2013. Print. and Wasting Growing Amounts of Energy.” NRDC.
Cormen, Thomas H., et al. Introduction to Algorithms. Natural Resources Defense Council, 6 Feb. 2015.
3rd ed. Cambridge: MIT P, 2009. Print. Web. 17 Mar. 2016.
341
Delfs, Hans, and Helmut Knebl. Introduction to Duntemann, Jeff (2011) Assembly Language
Cryptography: Principles and Applications. 3rd ed. Programming Step-by-Step: Programming with Linux 3rd
Berlin: Springer, 2015. Print. ed., Hoboken, NJ: John Wiley & Sons. Print.
Dennis, Alan, Barbara Haley Wixom, and David Dutson, Phil. Responsive Mobile Design: Designing for
Tegarden. Systems Analysis and Design: An Object- Every Device. Upper Saddle River: Addison-Wesley,
Oriented Approach with UML. 5th ed. Hoboken: 2015. Print.
Wiley, 2015. Print. Dyson, George. Turing’s Cathedral: The Origins of the
Deransart, P., A. Ed-Dbali, and L. Cervoni. PROLOG: Digital Universe. Vintage, 2012.
The Standard Reference Manual. New York, NY: Edwards, Benj. “From Paper Tape to Data Sticks: The
Springer, 1996. Print. Evolution of Removable Storage.” PCWorld. IDG
“Design and Technology: Manufacturing Processes.” Consumer & SMB, 7 Feb. 2010. Web. 7 Mar. 2016.
GCSE Bitesize. BBC, 2014. Web. 31 Jan. 2016. Edwards, Jim. “Proof That Android Really Is for the
“Designing for Screen Reader Compatibility.” Poor.” Business Insider. Business Insider, 27 June
WebAIM. Center for Persons with Disabilities, Utah 2014. Web. 4 Jan. 2016.
State U, 19 Nov. 2014. Web. 22 Feb. 2016. Edwards, Paul N. A Vast Machine: Computer Models,
Devroye, N., P. Mitran, and V. Tarokh. “Limits on Climate Data, and the Politics of Global Warming.
Communications in a Cognitive Radio Channel.” Cambridge: MIT P, 2010. Print.
IEEE Communication Magazine 44.6 (2006): 4449. El-Rewini, Hesham, and Mostafa Abd-El-Barr.
Inspec. Web. 9 Mar. 2016. Advanced Computer Architecture and Parallel
Devroye, Natasha, Patrick Mitran and Vahid Tarokh. Processing. Hoboken: Wiley, 2005. Print.
On Cognitive Graphs: Decomposing Wireless Networks. Elahi, Ata, and Mehran Elahi. Data, Network, and
New York: Wiley Interscience, 2006. Print. Internet Communications Technology. Clifton Park:
Dey, Pradip, and Manas Ghosh. Computer Fundamentals Thomson, 2006. Print.
and Programming in C. 2nd ed. New Delhi: Oxford Elenkov, Nikolay. Android Security Internals: An In-
UP, 2013. Print. Depth Guide to Android’s Security Architecture. San
Dice, Pete. Quick Boot: A Guide for Embedded Firmware Francisco: No Starch, 2015. Print.
Developers. Hillsboro: Intel, 2012. Print. Enderle, John Denis, and Joseph D. Brozino.
“Differences between Multithreading and Introduction to Biomedical Engineering. 3rd ed.
Multitasking for Programmers.” NI. National Burlington: Elsevier, 2012. Print.
Instruments, 20 Jan. 2014. Web. 15 Mar 2016. Englander, Irv. The Architecture of Computer Hardware,
“Digital Evidence and Forensics.” National Institute of Systems Software, & Networking: An Information
Justice. Office of Justice Programs, 28 Oct. 2015. Technology Approach. 5th ed. Hoboken: Wiley, 2014.
Web. 12 Feb. 2016. Print.
Dillinger, Markus, Kambiz Madani, and Nancy Erben, Tony, Ruth Ban, and Martha E. Castañeda.
Alonistioti. Software Defined Radio: Architectures, Teaching English Language Learners through
Systems, and Functions. Hoboken: Wiley, 2003. Technology. New York: Routledge, 2009. Print.
Print. Esslinger, Bernhard, et al. The CrypTool Script:
Doeppner, Thomas W. Operating Systems in Depth. Cryptography, Mathematics, and More. 11th ed.
Hoboken: Wiley, 2011. Print. Frankfurt: CrypTool, 2013. CrypTool Portal. Web. 2
Dor, Daniel. The Instruction of Imagination: Language Mar. 2016.
as a Social Communication Technology. New York: Evans, Kirk. “Autoscaling Azure—Virtual Machines.”
Oxford UP, 2015. Print. .NET from a Markup Perspective. Microsoft, 20 Feb.
Drake, Joshua J. Android Hacker’s Handbook. 2015. Web. 17 Feb. 2016.
Indianapolis: Wiley, 2014. Print. Ewing, Martin. The ABCs of Software Defined Radio.
Duncan, Geoff. “Can the Government Regulate Hartford: Amer. Radio Relay League, 2012. Print.
Internet Privacy?” Digital Trends. Designtechnica, “Examples and Explanations of BME.” Biomedical
21 Apr. 2014. Web. 28 Mar. 2016. Engineering Society. Biomedical Engineering Soc.,
2012–14. Web. 23 Jan. 2016.
342
Fasano, Philip. Transforming Health Care: The Financial Friedman, Daniel P., and Mitchell Wand. Essentials of
Impact of Technology, Electronic Tools and Data Mining. Programming Languages. Cambridge: MIT P, 2006.
Hoboken: Wiley, 2013. Print. Print.
Faticoni, Theodore G., Combinatorics: An Introduction. Fuchs, Christian, and Marisol Sandoval, eds. Critique,
New York: Wiley, 2014. Digital file. Social Media and the Information Society. New York:
Feng, Wu-chun, ed. The Green Computing Book: Routledge, 2014. Print.
Tackling Energy Efficiency at Large Scale. Boca Raton: Gaffney, Alexander. “FDA Confirms It Won’t Regulate
CRC, 2014. Print. Apps or Devices Which Store Patient Data.”
“Fitbit Flex Teardown.” iFixit. iFixit, 2013. Web. 28 Regulatory Affairs Professionals Society. Regulatory
Feb. 2016. Affairs Professional Soc., 6 Feb. 2015. Web. 31 Mar.
Firtman, Maximiliano R. Programming the Mobile Web. 2016.
Sebastopol: O’Reilly Media, 2013. Print. Galer, Mark, and Philip Andrews. Photoshop CC
Fischer, Eric. The Evolution of Character Codes, 1874– Essential Skills: A Guide to Creative Image Editing.
1968. N.p.: Fischer, n.d. Trafficways.org. Web. 22 New York: Focal, 2014. Print.
Feb. 2016. Gallagher, Sean. “Cortana for All: Microsoft’s Plan
Flach, Peter. Machine Learning: The Art and Science to Put Voice Recognition behind Anything.” Ars
of Algorithms that Make Sense of Data. Cambridge Technica. Condé Nast, 15 May 2015. Web. 21 Mar.
University Press, 2012. 2016.
Follin, Steve. “Preparing for IT Infrastructure Gallagher, Sean. “‘Locky’ Crypto-Ransomware Rides
Autonomics.” IndustryWeek. Penton, 19 Nov. 2015. In on Malicious Word Document Macro.” Ars
Web. 20 Jan. 2016. Technica. Condé Nast, 17 Feb. 2016. Web. 16 Mar.
Foote, Steven. Learning to Program. Upper Saddle 2016.
River: Pearson, 2015. Print. Gallagher, Sean. “Though ‘Barely an Operating
Fountain, T J. Parallel Computing: Principles and System,’ DOS Still Matters (to Some People).” Ars
Practice. Cambridge: Cambridge University Press, Technica. Condé Nast, 14 July 2014. Web. 31 Jan.
1994. Print. 2016.
Fowler, Geoffrey, A. “The Drones on Autopilot That Galushkin, Alexander I. Neural Network Theory. New
Follow Your Lead (Usually).” Wall Street Journal. York, NY: Springer, 2007. Print.
Dow Jones, 23 Dec. 2014. Web. 20 Jan. 2016. Gancarz, Mike. The UNIX Philosophy. Woburn:
Fox, Richard. Information Technology: An Introduction Butterworth, 1995. Print.
for Today’s Digital World. Boca Raton: CRC, 2013. Garrido, José M., Richard Schlesinger, and Kenneth
Print. E. Hoganson. Principles of Modern Operating Systems.
France, Anna Kaziunas, comp. Make: 3D Printing— 2nd ed. Burlington: Jones, 2013. Print.
The Essential Guide to 3D Printers. Sebastopol: Maker Garza, George. “Working with the Cons of Object
Media, 2013. Print. Oriented Programming.” Ed. Linda Richter.
Franceschi-Bicchierai, Lorenzo. “Love Bug: The Virus Bright Hub. Bright Hub, 19 May 2011. Web. 6 Feb.
That Hit 50 Million People Turns 15.” Motherboard. 2016.
Vice Media, 4 May 2015. Web. 16 Mar. 2016. Gaudin, Sharon. “Quantum Computing May Be
Freedman, Jeri. Software Development. New York: Moving out of Science Fiction.” Computerworld.
Cavendish Square, 2015. Print. Computerworld, 15 Dec. 2015. Web. 24 Mar.
Freeman, Michael. Digital Image Editing & Special 2016.
Effects: Quickly Master the Key Techniques of Photoshop Gee, James Paul. Unified Discourse Analysis: Language,
& Lightroom. New York: Focal, 2013. Print. Reality, Virtual Worlds, and Video Games. New York:
“Frequently Asked Questions.” Digital Watermarking Routledge, 2015. Print.
Alliance. DWA, n.d. Web. 11 Mar. 2016. Gehrke, Wilhelm. Fortran 90 Language Guide. New
Frenzel, Louis E., Jr. Electronics Explained: The New York, NY: Springer, 1995. Print.
Systems Approach to Learning Electronics. Burlington: “Ghana: Digital Dumping Ground.” Frontline. PBS, 23
Elsevier, 2010. Print. June 2009. Web. 29 Jan. 2016.
343
Gibbs, Samuel. “From Windows 1 to Windows 10: 29 Gonzalez, Teofilo, and Jorge Díaz-Herrera, eds.
Years of Windows Evolution.” Guardian. Guardian Computing Handbook: Computer Science and Software
News and Media, 2 Oct. 2014. Web. 2 Jan. 2016. Engineering. 3rd ed. Boca Raton: CRC, 2014. Print.
Gibbs, Samuel. “Google’s Massive Humanoid Robot Goode, Lauren. “Fitbit Hit with Class-Action Suit
Can Now Walk and Move without Wires.” Guardian. over Inaccurate Heart Rate Monitoring.” Verge.
Guardian News and Media, 21 Jan. 2015. Web. 21 Vox Media, 6 Jan. 2016. Web. 28 Feb. 2016.
Jan. 2016. Goodman, Robert, and Patrick McGrath. Editing
Gibbs, W. Wayt. “Autonomic Computing.” Scientific Digital Video: The Complete Creative and Technical
American. Nature Amer., 6 May 2002. Web. 20 Jan. Guide. New York: McGraw, 2003. Print.
2016. Goodwins, Rupert. “The Future of Storage: 2015 and
Gibson, J.R. (2011) Electronic Logic Circuits 3rd ed., Beyond.” ZDNet. CBS Interactive, 1 Jan. 2015. Web.
New York, NY: Routledge. Print. 7 Mar. 2016.
Gibson, Jerry D., ed. Mobile Communications Handbook. Goriunova, Olga, ed. Fun and Software: Exploring
3rd ed. Boca Raton: CRC, 2013. Print. Pleasure, Paradox, and Pain in Computing. New York:
Gilder, Jules H. (1986) Apple Iic and Iie Assembly Bloomsbury, 2014. Print.
Language New York, NY: Chapman and Hall. Print. Govindjee, S. Internal Representation of Numbers. Dept.
Gillam, Richard. Unicode Demystified: A Practical of Civil and Environmental Engineering, U of
Programmer’s Guide to the Encoding Standard. Boston: California Berkeley, Spring 2013. Digital File.
Addison-Wesley, 2002. Print. Graham W. Seed (2012) An Introduction to Object-
Gillespie, Tarleton, Pablo J. Boczkowski, and Oriented Programming in C++ with Applications
Kirsten A. Foot, eds. Media Technologies: Essays on in Computer Graphics New York, NY: Springer
Communication, Materiality, and Society. Cambridge: Science+Business Media. Print.
MIT P, 2014. Print. Graham, Tony. Unicode: A Primer. Foster City: M&T,
Glanz, James. “Power, Pollution and the Internet.” 2000. Print.
New York Times. New York Times, 22 Sept. 2012. “Graphical User Interface (GUI).” Techopedia.
Web. 28 Feb. 2016. Techopedia, n.d. Web. 5 Feb. 2016.
Glaser, Anton. History of Binary and Other Nondecimal Graupe, Daniel. Principles of Artificial Neural Networks.
Numeration. Rev. ed. Los Angeles: Tomash, 1981. 2nd ed. Hackensack, NJ: World Scientific, 2007. Print.
Print. Grayver, Eugene. Implementing Software Defined Radio.
Glaser, J. D. Secure Development for Mobile Apps: How to New York: Springer, 2012. Print.
Design and Code Secure Mobile Applications with PHP Greenberg, Saul, et al. Sketching User Experiences: The
and JavaScript. Boca Raton: CRC, 2015. Print. Workbook. Waltham: Morgan, 2012. Print. 4 Science
Glaubitz, John Paul Adrian. “Modern Consumerism Reference Center™ Wireframes
and the Waste Problem.” ArXiv.org. Cornell U, 4 Griffiths, Devin C. Virtual Ascendance: Video Games and
June 2012. Web. 9 Feb. 2016. the Remaking of Reality. Lanham: Rowman, 2013.
Glink, Ilyce. “10 Smart Home Features Buyers Print.
Actually Want.” CBS News. CBS Interactive, 11 Apr. Guichard, David. “An Introduction to Combinatorics
2015. Web. 12 Mar. 2016. and Graph Theory.” Whitman. Whitman Coll., 4
Godbey, W. T. An Introduction to Biotechnology: Jan 2016. Web. 10 Feb. 2016.
The Science, Technology and Medical Applications. Gulchak, Daniel J. “Using a Mobile Handheld
Waltham: Academic, 2014. Print. Computer to Teach a Student with an Emotional
Goelker, Klaus. Gimp 2.8 for Photographers: Image and Behavioral Disorder to Self-Monitor
Editing with Open Source Software. Santa Barbara: Attention.” Education and Treatment of Children 31.4
Rocky Nook, 2013. Print. (2008): 567–81. PDF file.
Gogolin, Greg. Digital Forensics Explained. Boca Raton: Gupta, Shalene. “For the Disabled, Smart Homes
CRC, 2013. Print. Are Home Sweet Home.” Fortune. Fortune, 1 Feb.
Goldsborough, Reid. “Android on the Rise.” Tech 2015. Web. 15 Mar. 2016.
Directions May 2014: 12. Academic Search Complete. Gupta, Siddarth, and Vagesh Porwal. “Recent
Web. 2 Jan. 2016. Digital Watermarking Approaches, Protecting
344
Multimedia Data Ownership.” Advances in Computer Havens, John C. Hacking Happiness: Why Your Personal
Science 4.2 (2015): 21–30. Web. 14 Mar. 2016. Data Counts and How Tracking It Can Change the
Habiballah, N., M. Qjani, A. Arbaoui, and J. Dumas. World. New York: Tarcher, 2014. Print.
“Effect of a Gaussian White Noise on the Charge “Health Information Privacy.” HHS.gov. Dept. of
Density Wave Dynamics in a One Dimensional Health and Human Services, n.d. Web. 28 Mar.
Compound.” Journal of Physics and Chemistry of Solids 2016.
75.1 (2014): 153–56. Inspec. Web. 9 Mar. 2016. Heisler, Yoni. “The History and Evolution of iOS,
Haerens, Margaret, and Lynn M. Zott, eds. Hacking from the Original iPhone to iOS 9.” BGR. BGR
and Hackers. Detroit: Greenhaven, 2014. Print. Media, 12 Feb. 2016. Web. 26 Feb. 2016.
Hagan, Martin T., Howard B. Demuth, , Mark H. Henz, Martin. Objects for Concurrent Constraint
Beale, and Orlando de Jesús. Neural Network Design. Programming. New York: Springer, 1998. Print.
2nd ed. Martin Hagan, 2014. Print. Herlihy, Maurice, and Nir Shavit. The Art of
Hagen, Rebecca, and Kim Golombisky. White Space Is Multiprocessor Programming. New York: Elsevier,
Not Your Enemy: A Beginner’s Guide to Communicating 2012. Print.
Visually through Graphic, Web & Multimedia Design. Herrman, John. “How to Get Started: 3D Modeling
2nd ed. Burlington: Focal, 2013. Print. and Printing.” Popular Mechanics. Hearst Digital
Hamburg, Margaret A., and Francis S. Collins. “The Media, 15 Mar. 2012. Web. 31 Jan. 2016.
Path to Personalized Medicine.” New England Hey, Tony, and Gyuri Pápay. The Computing Universe: A
Journal of Medicine 363.4 (2010): 301–4. Web. 23 Journey through a Revolution. New York: Cambridge
Dec. 2015. UP, 2015. Print.
Hamm, Matthew J. Wireframing Essentials: An Higginbotham, Stacey. “5 Reasons Why the ‘Smart
Introduction to User Experience Design. Birmingham: Home’ Is Still Stupid.” Fortune. Fortune, 19 Aug.
Packt, 2014. Print. 2015. Web. 12 Mar. 2016.
Harbour, Jonathan S. Beginning Game Programming. Highfield, Roger. “Fast Forward to Cartoon Reality.”
4th ed. Boston: Cengage, 2015. Print. Telegraph. Telegraph Media Group, 13 June 2006.
Harel, Jacob. “SynthOS and Task-Oriented Web. 31 Jan. 2016.
Programming.” Embedded Computing Design. Hill, Mark D. “What Is Scalability?” Scalable Shared
Embedded Computing Design, 2 Feb. 2016. Web. Memory Multiprocessors. Ed. Michel Dubois and
7 Feb. 2016. Shreekant Thakkar. New York: Springer, 1992.
Harper, Robert. Practical Foundations for Programming 89–96. Print.
Languages. Cambridge: Cambridge UP, 2013. Hillis, W. Daniel. “Richard Feynman and the
Print. Connection Machine.” Phys. Today Physics Today
Harris, David Money, and Sarah L. Harris. Digital 42.2 (1989): 78. Web.
Design and Computer Architecture. 2nd ed. Waltham: Hirvensalo, Mike. Quantum Computing. New York,
Morgan, 2013. Print. NY: Springer, 2001. Print.
Harrison, Virginia, and Jose Pagliery. “Nearly 1 “History and Timeline.” Open Group. Open Group,
Million New Malware Threats Released Every n.d. Web. 28 Feb. 2016.
Day.” CNNMoney. Cable News Network, 14 Apr. History of Cryptography: An Easy to Understand History
2015. Web. 16 Mar. 2016. of Cryptography. N.p.: Thawte, 2013. Thawte. Web.
Hart, Archibald D., and Sylvia Hart Frejd. The Digital 4 Feb. 2016.
Invasion: How Technology Is Shaping You and Your Hodges, Andrew. Alan Turing: The Enigma: The
Relationships. Grand Rapids: Baker, 2013. Print. Book That Inspired the Film “The Imitation Game.”
Harth, Andreas, Katja Hose, and Ralf Schenkel, eds. Princeton University Press, 2014.
Linked Data Management. Boca Raton: CRC, 2014. Hof, Robert. “How Fitbit Survived as a Hardware
Print. Startup.” Forbes. Forbes.com, 4 Feb. 2014. Web. 28
Haug, Hartmut, and Stephan W. Koch. Quantum Feb. 2016.
Theory of the Optical and Electronic Properties of Hoffer, Jeffrey A., V. Ramesh, and Heikki Topi.
Semiconductors. New Jersey [u.a.]: World Scientific, Modern Database Management. 12th ed. Boston:
2009. Print. Pearson, 2016. Print.
345
Hoffstein, Jeffrey, Jill Pipher, and Joseph H. Silverman. Technica. Condé Nast, 27 Aug. 2013. Web. 6 Jan.
An Introduction to Mathematical Cryptography. 2nd 2016.
ed. New York: Springer, 2014. Print. Huth, Alexa, and James Cebula. The Basics of Cloud
Hofstedt, Petra. Multiparadigm Constraint Programming Computing. N.p.: Carnegie Mellon U and US
Languages. New York: Springer, 2013. Print. Computer Emergency Readiness Team, 2011. PDF
Holcombe, Jane, and Charles Holcombe. Survey file.
of Operating Systems. New York: McGraw, 2015. Hyde, Randall (2010) The Art of Assembly Language
Print. 2 nd ed., San Francisco, CA: No Starch Press.
Holland, Bill. “Software Testing: A History.” SitePoint. Print.
SitePoint, 15 Feb. 2012. Web. 9 Feb. 2016. Hyde, Randall. Write Great Code: Understanding the
Holleley, Douglas. Photo-Editing and Presentation: Machine. Vol. 1. San Francisco: No Starch, 2005.
A Guide to Image Editing and Presentation for Print.
Photographers and Visual Artists. Rochester: Information Resources Management Association, ed.
Clarellen, 2009. Print. Assistive Technologies: Concepts, Methodologies, Tools,
Holt, Thomas J., Adam M. Bossler, and Kathryn C. and Applications. Vol. 1. Hershey: Information
Seigfried-Spellar. Cybercrime and Digital Forensics: Science Reference, 2014. Print.
An Introduction. New York: Routledge, 2015. Print. Ingersoll, Grant S., Thomas S. Morton, and Drew
Hopfield, J. J. “Neural Networks and Physical Farris. Taming Text: How to Find, Organize, and
Systems with Emergent Collective Computational Manipulate It. Manning Publications, 2013.
Abilities.” Proceedings of the National Academy of Ingham, Kenneth, and Stephanie Forrest. A History
Sciences 79.8 (1982): 2554-558. Web. and Survey of Network Firewalls. Albuquerque: U of
Horspool, Nigel, and Nikolai Tillmann. Touchdevelop: New Mexico, 2002. PDF file.
Programming on the Go. New York: Apress, 2013. Iniewski, Krzysztof. Embedded Systems: Hardware,
Print. Design, and Implementation. Hoboken: Wiley, 2013.
Horvath, Joan. Mastering 3D Printing: Modeling, Print.
Printing, and Prototyping with Reprap- Style 3D “Internet Privacy.” ACLU. American Civil Liberties
Printers. Berkeley: Apress, 2014. Print. Union, 2015. Web. 28 Feb. 2016.
Hoskins, Stephen. 3D Printing for Artists, Designers and “Intro to Algorithms.” Khan Academy. Khan Acad.,
Makers. London: Bloomsbury, 2013. Print. 2015. Web. 19 Jan. 2016.
“How Firewalls Work.” Boston University Information “Introduction to Biometrics.” Biometrics.gov.
Services and Technology. Boston U, n.d. Web. 28 Feb. Biometrics.gov, 2006. Web. 21 Jan. 2016.
2016. “Introduction to Biotechnology.” Center for Bioenergy
“How Speech-Recognition Software Got So Good.” and Photosynthesis. Arizona State U, 13 Feb. 2006.
Economist. Economist Newspaper, 22 Apr 2014. Web. 20 Jan 2016.
Web. 21 Mar. 2016. “Introduction to Image Files Tutorial.” Boston
Hsu, John Y. (2002) Computer Logic Design Principles University Information Services and Technology.
and Applications New York, NY: Springer. Print. Boston U, n.d. Web. 11 Feb. 2016.
“HTML Tutorial.” Tutorials Point. Tutorials Point, Intro to Biotechnology: Techniques and Applications.
2016. Web. 22 Feb. 2016. Cambridge: NPG Educ., 2010. Scitable. Web. 20
Hughes, Cameron, and Tracey Hughes. Parallel Jan. 2016.
and Distributed Programming Using C++. Boston: “iOS: A Visual History.” Verge. Vox Media, 16 Sept.
Addison-Wesley, 2004. Print. 2013. Web. 24 Feb. 2016.
Hughes, John F. Computer Graphics: Principles and ITL Education Solutions. Introduction to Information
Practice. Upper Saddle River: Addison, 2014. Print. Technology. 2nd ed. Delhi: Pearson, 2012. Print.
Human Brain Project. Human Brain Project, 2013. Iversen, Jakob, and Michael Eierman. Learning Mobile
Web. 16 Feb. 2016. App Development: A Hands-On Guide to Building
Hutchinson, Lee. “Home 3D Printers Take Us on a Apps with iOS and Android. Upper Saddle River:
Maddening Journey into Another Dimension.” Ars Addison-Wesley, 2014. Print.
346
Ives, Mike. “Boom in Mining Rare Earths Poses Kay, Roger. “Behind Apple’s Siri Lies Nuance’s
Mounting Toxic Risks.” Environment 360. Yale U, Speech Recognition.” Forbes. Forbes. com, 24 Mar.
28 Jan. 2013. Web. 28 Feb. 2016. 2014. Web. 21 Mar. 2016.
Jacobson, Douglas, and Joseph Idziorek. Computer Kaye, Phillip, Raymond Laflamme, and Michele
Security Literacy: Staying Safe in a Digital World. Boca Mosea. An Introduction to Quantum Computing.
Raton: CRC, 2013. Print. New York, NU: Oxford University Press, 2007.
Jadhav, S.S. (2008) Advanced Computer Architecture & Print.
Computing. Pune, IND: Technical Publishers, 2008. Kefauver, Alan P., and David Patschke. Fundamentals
Print. of Digital Audio. Middleton: A-R Editions, 2007.
Jain, Anil K., Arun A. Ross, and Karthik Nandakumar. Print.
Introduction to Biometrics. New York: Springer, 2011. Kelly, Gordon, “Apple iOS 9: 11 Important New
Print. Features.” Forbes. Forbes.com, 16 Sept. 2015. Web.
Janert, Philipp K. Feedback Control for Computer Systems. 28 Feb. 2016.
Sebastopol: O’Reilly, 2014. Print. Kemeny, John G. and Thomas E. Kurtz. Back To
Jeannot, Emmanuel, and J. Žilinskas. High Performance BASIC: The History, Corruption, and Future of the
Computing on Complex Environments. Hoboken: Language. Boston, MA: Addison-Wesley, 1985.
Wiley, 2014. Print. Print.
Jennings, Tom. “An Annotated History of Some Kernighan, Brian W. and Dennis M. Ritchie. The
Character Codes.” World Power Systems. Tom C Programming Language. Englewood Cliffs, NJ:
Jennings, 29 Oct. 2004. Web. 16 Feb. 2016. Prentice-Hall, 1978. Print.
Johnson, C. Richard, and William A. Sethares. Khan, Gul N., and Krzysztof Iniewski, eds. Embedded
Telecommunications Breakdown: Concepts of and Networking Systems: Design, Software, and
Communication Transmitted via Software-Defined Implementation. Boca Raton: CRC, 2014. Print.
Radio. New York: Prentice, 2003. Print. Khan, Shafiullah, and Al-Sakib Khan Pathan, eds.
Johnson, Jeff. Designing with the Mind in Mind. 2nd ed. Wireless Networks and Security: Issues, Challenges and
Waltham: Morgan, 2014. Print. Research Trends. Berlin: Springer, 2013. Print.
Jones, M. Tim, Artificial Intelligence: A Systems Approach. Kilkelly, Michael. “Which Architectural Software
Sudbury, MA: Jones and Bartlett, 2009. Print. Should You Be Using?” ArchDaily. ArchDaily, 4 May
Jorgensen, Paul C. Software Testing: A Craftsman’s 2015. Web. 31 Jan. 2016.
Approach. 4th ed. Boca Raton: CRC, 2014. Print. Kilper, Daniel C., and Tucker, Rodney S. “Energy-
Jurafsky, Daniel, and James H. Martin. Speech and Efficient Telecommunications.” Optical Fiber
Language Processing: An Introduction to Natural Telecommunications. 6th ed. N.p.: Elsevier, 2013.
Language Processing, Computational Linguistics, and 747–91. Digital file.
Speech Recognition, PEL, 2008. Kim, Chang-Hun, et al. Real-Time Visual Effects for Game
Kale, Vivek. Guide to Cloud Computing for Business Programming. Singapore: Springer, 2015. Print.
and Technology Managers. Boca Raton: CRC, 2015. Kirk, David B, and Wen-mei Hwu. Programming
Print. Massively Parallel Processors: A Hands-on Approach.
Kaptelinin, Victor, and Mary P. Czerwinski, eds. Burlington, Massachusetts: Morgan Kaufmann
Beyond the Desktop Metaphor: Designing Integrated Elsevier, 2013. Print.
Digital Work Environments. Cambridge: MIT P, Kirkwood, Patricia Elaine, and Necia T. Parker-
2007. Print. Gibson. Informing Chemical Engineering Decisions
Katoh, Shigeo, Jun-ichi Horiuchi, and Fumitake with Data, Research, and Government Resources. San
Yoshida. Biochemical Engineering: A Textbook for Rafael: Morgan, 2013. Digital file.
Engineers, Chemists and Biologists. 2nd rev. and enl. Kizza, Joseph Migga. Ethical and Social Issues in the
ed. Weinheim: Wiley, 2015. Print. Information Age. 5th ed. London: Springer, 2013.
Katz, Jonathan, and Yehuda Lindell. Introduction to Print.
Modern Cryptography. 2nd ed. Boca Raton: CRC, Kizza, Joseph Migga. Guide to Computer Network
2015. Print. Security. 3rd ed. London: Springer, 2015. Print.
347
Klimczak, Erik. Design for Software: A Playbook for Kurose, James F., and Keith W. Ross. Computer
Developers. Hoboken: Wiley, 2013. Print. Networking: A Top-Down Approach. 6th ed. Boston:
“Knowledge Base: Technologies in 3D Printing.” Pearson, 2013. Print.
DesignTech. DesignTech Systems, n.d. Web. 6 Jan. Lackey, Ella Deon, et al. “Introduction to Public-Key
2016. Cryptography.” Mozilla Developer Network. Mozilla,
Köhler, Anna, and Heinz Bässler. Electronic Processes in 21 Mar. 2015. Web. 4 Feb. 2016.
Organic Semiconductors: An Introduction. Wiley-VHC Lafferty, Edward L, Marion C. Michaud, and Myra
Verlag, 2015. Print. J. Prelle. Parallel Computing: An Introduction.
Kojić, Miloš, et al. Computer Modeling in Bioengineering: Park Ridge: Noyes Data Corporation, 1993.
Theoretical Background, Examples and Software. Print.
Hoboken: Wiley, 2008. Print. Lakhtakia, A., and R. J. Martín-Palma. Engineered
Könenkamp, Rolf. Photoelectric Properties and Biomimicry. Amsterdam: Elsevier, 2013. Print.
Applications of Low-Mobility Semiconductors. Berlin: Lalanda, Philippe, Julie A. McCann, and Ada
Springer, 2000. Print. Diaconescu, eds. Autonomic Computing: Principles,
Korpela, Jukka K. Unicode Explained. Sebastopol: Design and Implementation. London: Springer, 2013.
O’Reilly Media, 2006. Print. Print.
Kosky, Philip, et al. Exploring Engineering: An Lande, Daniel R. “Development of the Binary
Introduction to Engineering and Design. 4th ed. Number System and the Foundations of Computer
Waltham: Academic, 2016. Print. Science.” Mathematics Enthusiast 1 Dec. 2014: 513–
Kramer, Bill. The Autocadet’s Guide to Visual LISP. 40. Print.
Laurence, KS: CMP Books, 2002. Print. Lander, Steve. “Disadvantages or Problems for
Krar, Steve, Arthur Gill, and Peter Smid. Computer Implementing Wi-Fi Technology.” Small Business—
Numerical Control Simplified. New York: Industrial, Chron.com. Hearst Newspapers, n.d. Web. 22 Feb.
2001. Print. 2016.
Krug, Steve. Don’t Make Me Think, Revisited: A Common Langer, Arthur M. Guide to Software Development:
Sense Approach to Web Usability. 3rd ed. Berkeley: Designing and Managing the Life Cycle. New York:
New Riders, 2014. Print. Springer, 2012. Print.
Kruk, Robert. “Public, Private and Hybrid Clouds: Lardinois, Frederic. “Ukrainian Students Develop
What’s the Difference?” Techopedia. Techopedia, Gloves That Translate Sign Language into
18 May 2012. Web. 21 Jan. 2016. Speech.” TechCrunch. AOL, 9 July 2012. Web. 19
Kshemkalyani, Ajay D., and Mukesh Singhal. Jan 2016.
Distributed Computing: Principles, Algorithms, and Laszlo, Arp. “Why Is Website Design So Important?”
Systems. New York: Cambridge UP, 2008. Print. Sunrise Pro Websites & SEO. Sunrise Pro Websites,
Kulisch, Ulrich. Computer Arithmetic and Validity: 22 Jan. 2016. Web. 22 Feb. 2016.
Theory, Implementation, and Applications. 2nd ed. Lathi, B. P. Linear Systems and Signals. 2nd rev. ed. New
Boston: De Gruyter, 2013. Print. York: Oxford UP, 2010. Print.
Kumar, Ela. Natural Language Processing. I K Law, Averill M. Simulation Modeling and Analysis. 5th
International Publishing House, 2011. ed. New York: McGraw, 2015. Print.
Kumari, Ramesh (2005) Computers and Their Lee, John D., and Alex Kirlik, eds. The Oxford
Applications to Chemistry. 2nd ed. Oxford, UK: Alpha Handbook of Cognitive Engineering. New York:
Science International. Print. Oxford UP, 2013. Print.
Kuo, Sen M., Bob H. Lee, and Wenshun Tian. Lee, Kent D. Foundations of Programming Languages.
Real-Time Digital Signal Processing: Fundamentals, Cham: Springer, 2014. Print.
Implementations and Applications. 3rd ed. Hoboken: Lee, Roger Y., ed. Applied Computing and Information
Wiley, 2013. Print. Technology. New York: Springer, 2014. Print.
Kupferschmid, Michael. Classical Fortran Programming Li, Han-Xiong, and XinJiang Lu. System Design and
for Engineering and Scientific Applications. Boca Control Integration for Advanced Manufacturing.
Raton, FL: CRC Press, 2009. Print. Hoboken: Wiley, 2015. Print.
348
Liang, Hualou, Joseph D. Bronzino, and Donald R. Hershey: Information Science Reference, 2016.
Peterson, eds. Biosignal Processing: Principles and Print.
Practices. Boca Raton: CRC, 2012. Print. Malvik, Callie. “Graphic Design vs. Web Design:
Lien, Tracey. “Virtual Reality Isn’t Just for Video Which Career Is Right for You?” Rasmussen College.
Games.” Los Angeles Times. Tribune, 8 Jan. 2015. Rasmussen Coll., 25 July 2013. Web. 16 Mar. 2016.
Web. 23 Mar. 2016. Mandl, H., and A. Lesgold, eds. Learning Issues for
Lipiansky, Ed. Electrical, Electronics, and Digital Intelligent Tutoring Systems. New York: Springer,
Hardware Essentials for Scientists and Engineers. 1988. Print.
Hoboken: Wiley, 2013. Print. Mangan, Dan. “There’s a Hack for That: Fitbit User
Lippman, Stanley B, Josee Lajoie, and Barbara E. Accounts Attacked.” CNBC. CNBC, 8 Jan. 2016.
Moo. C++ Primer 5th ed. Upper Saddle River, NJ: Web. 28 Feb. 2016.
Addison-Wesley, 2003. Print. Manjoo, Farhad. “Now You’re Talking!” Slate. Slate
Lipson, Hod, and Melba Kurman. Fabricated: The New Group, 6 Apr. 2011. Web. 21 Mar. 2016.
World of 3D Printing. Indianapolis: Wiley, 2013. Manjoo, Farhad. “Planet Android’s Shaky Orbit.” New
Print. York Times 28 May 2015: B1. Print.
Lipton, R. J., and E. B. Baum, eds., DNA Based Mara, Wil. Software Development: Science, Technology,
Computers, DIMACS Series in Discrete and Engineering. New York: Children’s, 2016. Print.
Mathematics, and Theoretical Computer Science, Marble, Scott, ed. Digital Workflows in Architecture.
27, American -Mathematical Society (1995). Basel: Birkhäuser, 2012. Print.
Liu, Shih-Chii, Tobi Delbruck, Giacomo Indiveri, Marchant, Ben. “Game Programming in C and C++.”
Adrian Whatley, and Rodney Douglas. Event-Based Cprogramming.com. Cprogramming.com, 2011.
Neuromorphic Systems. Chichester: Wiley, 2015. Web. 16 Mar. 2016.
Print. Marchewka, Jack T. Information Technology Project
Livingston, Steven, and Gregor Walter-Drop, eds. Management. 5th ed. Hoboken: Wiley, 2015. Print.
Bits and Atoms: Information and Communication Margush, Timothy S. (2012) Some Assembly Required.
Technology in Areas of Limited Statehood. New York: Assembly Language Programming with the AVR
Oxford UP, 2014. Print. Microcontroller Boca Raton, FL: CRC Press. Print.
Lohr, Steve. “Humanizing Technology: A History of Marsh, Joel. UX for Beginners: A Crash Course in 100
Human-Computer Interaction.” New York Times: Short Lessons. Sebastopol: O’Reilly, 2016. Print.
Bits. New York Times, 7 Sept. 2015. Web. 31 Jan. Marshall, Gary. “The Story of Fitbit: How a Wooden
2016. Box Became a $4 Billion Company.” Wareable.
Loo, Alfred Waising, ed. Distributed Computing Wareable, 30 Dec. 2015. Web. 28 Feb. 2016.
Innovations for Business, Engineering, and Science. Mason, Paul. Understanding Computer Search and
Hershey: Information Science Reference, 2013. Research. Chicago: Heinemann, 2015. Print.
Print. Mathews, Clive. An Introduction to Natural Language
Luenendonk, Martin. “Top Programming Languages Processing Through Prolog New York, NY: Routledge,
Used in Web Development.” Cleverism. Cleverism, 2014. Print.
21 June 2015. Web. 22 Feb. 2016. Matsudaira, Kate. “Scalable Web Architecture and
MacLennan, Bruce J. Principles of Programming Distributed Systems.” The Architecture of Open Source
Languages: Design, Evaluation, and Implementation. Applications. Ed. Amy Brown and Greg Wilson. Vol.
Oxford: Oxford UP, 1999. Print. 2. N.p.: Lulu, 2012. PDF file.
Madhav, Sanjay. Game Programming Algorithms and Matulka, Rebecca. “How 3D Printers Work.” Energy.
Techniques: A Platform-Agnostic Approach. Upper gov. Dept. of Energy, 19 June 2014. Web. 6 Jan.
Saddle River: Addison, 2014. Print. 2016.
Malcolme-Lawes, D.J. (1969) Programming – ALGOL McCauley, Renée, et al. “Debugging: A Review of
London, UK: Pergamon Press. Print. the Literature from an Educational Perspective.”
Mallick, Pradeep Kumar, ed. Research Advances in Computer Science Education 18.2 (2008): 67–92.
the Integration of Big Data and Smart Computing. Print.
349
McConnell, Robert, James Haynes, and Richard Mermin, David N. Quantum Computer Science: An in-
Warren. “Understanding ASCII Codes.” troduction. New York, NY: Cambridge University
NADCOMM. NADCOMM, 14 May 2011. Web. 16 Press, 2007. Print.
Feb. 2016. Metcalf, Michael, and John Reid. The F Programming
McCracken, Harry. “Ten Momentous Moments in Language. New York, NY: Oxford University Press,
DOS History.” PCWorld. IDG Consumer, n.d. Web. 1996. Print.
31 Jan. 2016. Metz, Sandi. Practical Object-Oriented Design in Ruby: An
McDonald, Nicholas G. “Past, Present, and Future Agile Primer. Upper Saddle River: Addison, 2012.
Methods of Cryptography and Data Encryption.” Print.
SpaceStation. U of Utah, 2009. Web. 4 Feb. 2016. “Microprocessors: Explore the Curriculum.” Intel.
McFedries, Paul. Fixing Your Computer: Absolute Intel Corp., 2015. Web. 11 Mar. 2016.
Beginner’s Guide. Indianapolis: Que, 2014. Print. “Microprocessors.” MIT Technology Review. MIT
McGrath, Mike (2015) C++ Programming in Easy Steps Technology Review, 2016. Web. 11 Mar. 2016.
4th ed. Leamington Spa, UK: Easy Steps Limited. Mihalcea, Rada and Radev Dragomir. Graph-based
Print. Natural Language Processing and Information
McKay, Sinclair. The Secret Lives of Codebreakers: The Retrieval. Cambridge University Press, 2011.
Men and Women Who Cracked the Enigma Code at “Milestones of Innovation.” American Institute for
Bletchley Park. Plume, 2012. Medical and Biological Engineering. Amer. Inst. for
McLellan, Charles. “The History of Windows: A Medical and Biological Engineering, 2016. Web.
Timeline.” ZDNet. CBS Interactive, 14 Apr. 2014. 25 Jan. 2016.
Web. 15 Feb. 2016. Mili, Ali, and Fairouz Tchier. Software Testing: Concepts
McMillan, Robert. “IBM Bets $3B That the Silicon and Operations. Hoboken: Wiley, 2015. Print.
Microchip Is Becoming Obsolete.” Wired. Condé Miller, Charles, and Aaron Doering. The New
Nast, 9 July 2014. Web. 10 Mar. 2016. Landscape of Mobile Learning: Redesigning Education
McMillan, Robert. “Siri Will Soon Understand You in an App-Based World. New York: Routledge, 2014.
a Whole Lot Better.” Wired. Condé Nast, 30 June Print.
2014. Web. 21 Mar. 2016. Miller, Michael J. “The Rise of DOS: How Microsoft
McMullan, Dawn. “What Is Personalized Medicine?” Got the IBM PC OS Contract.” PCMag.com. PCMag
Genome Spring 2014: n. pag. Web. 23 Dec. 2015. Digital Group, 10 Aug. 2011. Web. 31 Jan. 2016.
McNeill, Dwight. Using Person-Centered Health Analytics Miller, Michelle D. Minds Online: Teaching Effectively
to Live Longer: Leveraging Engagement, Behavior with Technology. Cambridge: Harvard UP, 2014.
Change, and Technology for a Healthy Life. Upper Print.
Saddle River: Pearson, 2015. Print. Miniman, Stuart. “Hyperscale Invades the
McNeill, Erin. “Even ‘Digital Natives’ Need Digital Enterprise.” Network Computing. UBM, 13 Jan.
Training.” Education Week. Editorial Projects in 2014. Web. 8 Mar. 2016.
Education, 20 Oct 2015. Web. 26 Jan. 2016. Mir, Nader F. Computer and Communication Networks.
McNicoll, Arion. “Phonebloks: The Smartphone for 2nd ed. Upper Saddle River: Prentice, 2015. Print.
the Rest of Your Life.” CNN. Cable News Network, Mishra, Umesh. Semiconductor Device Physics and
19 Sept. 2013. Web. 29 Jan. 2016. Design. Place of publication not identified:
Méndez, Luis Argüelles. A Practical Introduction to Springer, 2014. Print.
Fuzzy Logic Using LISP. New York, NY: Springer, Miszczak, Jarosław Adam. High-Level Structures for
2016. Print. Quantum Computing. Williston, VT: Morgan and
Menezes, Alfred J., Paul C. van Oorschot, and Scott Claypool, 2012. Print.
A. Vanstone. Handbook of Applied Cryptography. Mitchell, Jamie L., and Rex Black. Advanced Software
Boca Raton: CRC, 1996. Print. Testing. 2nd ed. 3 vols. Santa Barbara: Rocky Nook,
Mercer, Christina. “5 Best Storage Devices for 2015. Print.
Startups: Removable, SSD or Cloud, What Type Mitra, Tilak. Practical Software Architecture: Moving from
of Storage Should Your Business Use?” Techworld. System Context to Deployment. Indianapolis: IBM,
IDG UK, 22 Dec. 2015. Web. 7 Mar. 2016. 2015. Print.
350
Modi, Shimon K. Biometrics in Identity Management. Neiderreiter, Harald, and Chaoping Xing. Algebraic
Boston: Artech House, 2011. Print. Geometry in Coding Theory and Cryptography.
Mooallem, Jon. “The Afterlife of Cellphones.” New Princeton: Princeton UP, 2009. Print.
York Times Magazine. New York Times, 13 Jan. 2008. Netzley, Patricia D. How Serious a Problem Is Computer
Web. 9 Feb. 2016. Hacking? San Diego: ReferencePoint, 2014. Print.
Morreale, Patricia, and Kornel Terplan, eds. The CRC Neuburg, Matt. Programming iOS 8: Dive Deep into
Handbook of Modern Telecommunications. 2nd ed. Views, View Controllers, and Frameworks. Sebastopol:
Boca Raton: CRC, 2009. Print. O’Reilly Media, 2014. Print.
Morrison, Foster. The Art of Modeling Dynamic Systems: Newman, Jared. “Android Laptops: The $200 Price
Forecasting for Chaos, Randomness, and Determinism. Is Right, but the OS May Not Be.” PCWorld. IDG
1991. Mineola: Dover, 2008. Print. Consumer & SMB, 26 Apr. 2013. Web. 27 Jan.
Morselli, Carlo, ed. Crime and Networks. New York: 2016.
Routledge, 2014. Print. Newman, Jared. “With Android Lollipop, Mobile
Moss, Frank. The Sorcerers and Their Apprentices: Multitasking Takes a Great Leap Forward.” Fast
How the Digital Magicians of the MIT Media Lab Company. Mansueto Ventures, 6 Nov. 2014. Web.
Are Creating the Innovative Technologies That Will 27 Jan. 2016.
Transform Our Lives. New York: Crown Business, Nicolelis, Miguel A. and Ronald M. Cicurel. The
2011. Print. Relativistic Brain: How it works and why it cannot
Moynihan, Tim. “Things Will Get Messy If We Don’t be simulated by a Turing machine. CreateSpace
Start Wrangling Drones Now.” Wired. Condé Nast, Independent Publishing Platform, 2015.
30 Jan. 2015. Web. 30 Jan. 2016. Nielsen, Jakob. “F-Shaped Pattern for Reading Web
“MS-DOS: A Brief Introduction.” Linux Information Content.” Nielsen Norman Group. Nielsen Norman
Project. Linux Information Project, 30 Sept. 2006. Group, 17 Apr. 2006. Web. 4 Mar. 2016.
Web. 31 Jan. 2016. Noergaard, Tammy. Embedded Systems Architecture:
Mueller, Scott. Upgrading and Repairing PCs. 22nd ed. A Comprehensive Guide for Engineers and Programmers.
Indianapolis: Que, 2015. Print. 2nd ed. Boston: Elsevier, 2013. Print.
Murphy, Chris. “How to Save $150 Billion: Move All Norman, Don. The Design of Everyday Things. Rev. and
App Dev and Testing to the Cloud.” Forbes. Forbes. expanded ed. New York: Basic, 2013. Print.
com, 3 Feb. 2016. Web. 10 Feb. 2016. Northrup, Tony. “Firewalls.” TechNet. Microsoft, n.d.
Murphy, Michael P., and Metin Sitti. “Waalbot: Agile Web. 28 Feb. 2016.
Climbing with Synthetic Fibrillar Dry Adhesives.” Nystrom, Robert. Game Programming Patterns. N.p.:
2009 IEEE International Conference on Robotics and Author, 2009–14. Web. 16 Mar. 2016.
Automation. Piscataway: IEEE, 2009. IEEE Xplore. “Online Privacy: Using the Internet Safely.” Privacy
Web. 21 Jan. 2016. Rights Clearinghouse. Privacy Rights Clearinghouse,
Myers, Courtney Boyd, ed. The AI Report. Forbes. Jan. 2016. Web. 28 Feb. 2016.
Forbes.com, 22 June 2009. Web. 18 Dec. 2015. O’Regan, Gerard. A Brief History of Computing 2nd ed.,
Myers, Glenford J., Tom Badgett, and Corey Sandler. New York, NY: Springer-Verlag, 2012. Print.
The Art of Software Testing. Hoboken: Wiley, 2012. Ohanian, Thomas. Digital Nonlinear Editing: Editing
Print. Film and Video on the Desktop. Woburn: Focal, 1998.
Naraine, Ryan. “Metasploit’s H. D. Moore Releases Print.
‘War Dialing’ Tools.” ZDNet. CBS Interactive, 6 Olley, Allan. “Can Machines Think Yet? A Brief
Mar. 2009. Web. 15 Mar. 2016. History of the Turing Test.” Bubble Chamber. U of
Nayeem, Sk. Md. Abu, Jyotirmoy Mukhopadhyay, and Toronto’s Science Policy Working Group, 23 June
S. B. Rao, eds. Mathematics and Computing: Current 2014. Web. 18 Dec. 2015.
Research and Developments. New Delhi: Narosa, Oloruntoba, Samuel. “SOLID: The First 5 Principles
2013. Print. of Object Oriented Design.” Scotch. Scotch.io, 18
Neapolitan, Richard E. Foundations of Algorithms. 5th Mar. 2015. Web. 1 Feb. 2016.
ed. Burlington: Jones, 2015. Print. Openshaw, Stan, and Ian Turton. High Performance
Computing and the Art of Parallel Programming: An
351
Introduction for Geographers, Social Scientists, and Patel, Shuchi, and Avani Kasture. “E (Electronic)
Engineers. London: Routledge, 2005. Print. Waste Management Using Biological Systems—
Oppy, Graham, and David Dowe. “The Turing Test.” Overview.” International Journal of Current
Stanford Encyclopedia of Philosophy (Spring 2011 Microbiology and Applied Sciences 3.7 (2014): 495–
Edition). Ed. Edward N. Zalta. Stanford U, 26 Jan. 504. Web. 9 Feb. 2016.
2011. Web. 18 Dec. 2015. Pathak, Parth H., and Rudra Dutta. Designing for
Organick, E.I., Forsythe, A.I. and Plummer, R.P. Network and Service Continuity in Wireless Mesh
(1978) Programming Language Structures New York, Networks. New York: Springer, 2013. Print.
NY: Academic Press. Print. Patrizio, Andy. “The History of Visual Development
Orwick, Penny, and Guy Smith. Developing Drivers with Environments: Imagine There’s No IDEs. It’s
the Windows Driver Foundation. Redmond: Microsoft Difficult If You Try.” Mendix. Mendix, 4 Feb. 2013.
P, 2007. Print. Web. 23 Feb. 2016.
“Our Story.” CompTIA. Computing Technology Patterson, David A., and John L. Hennessy. Computer
Industry Assn., n. d. Web. 31 Jan. 2016. Organization and Design: The Hardware/Software
“Our Story.” Pixar. Pixar, 2016. Web. 31 Jan. 2016. Interface. 5th ed. Waltham: Morgan, 2013. Print.
Owen, Mark. Practical Signal Processing. New York: Pavel, M., et al. “The Role of Technology and
Cambridge UP, 2012. Print. Engineering Models in Transforming Healthcare.”
Paar, Christof, and Jan Pelzi. Understanding IEEE Reviews in Biomedical Engineering. IEEE, 2013.
Cryptography: A Textbook for Students and Practitioners. Web. 25 Jan. 2016.
Heidelberg: Springer, 2010. Print. “Personalized Medicine and Pharmacogenomics.”
Paddock, Catharine. “How Self-Monitoring Is Mayo Clinic. Mayo Foundation for Medical
Transforming Health.” Medical News Today. Education and Research, 5 June 2015. Web. 23
MediLexicon Intl., 15 Aug. 2013. Web. 26 Feb. Dec. 2015.
2016. Pele, Maria, and Carmen Cimpeanu. Biotechnology:
Pandolfi, Luciano. Distributed Systems with Persistent An Introduction. Billerica: WIT, 2012. Print.
Memory: Control and Moment Problems. New York: Pelleau, Marie, and Narendra Jussien. Abstract
Springer, 2014. Print. Domains in Constraint Programming. London: ISTE,
Pandzu, Abhujit S. and Robert B. Macy. Pattern 2015. Print.
Recognition with Neural Networks in C++. Boca Raton, Peterson, James L. Computer Organization and Assembly
FL: CRC Press, 1996. Print. Language Programming New York, NY: Academic
Parashar, Manish, and Salim Hariri, eds. Autonomic Press, 1978. Print.
Computing: Concepts, Infrastructure, and Applications. Peterson, Larry L., and Bruce S. Davie. Computer
Boca Raton: CRC, 2007. Print. Networks: A Systems Approach. 5th ed. Burlington:
Parent, Rick. Computer Animation: Algorithms and Morgan, 2012. Print.
Techniques. Waltham: Elsevier, 2012. Print. Petzold, Charles. The Annotated Turing: A Guided Tour
Parisi, Tony. Learning Virtual Reality: Developing Through Alan Turing’s Historic Paper on Computability
Immersive Experiences and Applications for Desktop, and the Turing Machine. Wiley, 2008.
Web, and Mobile. Sebastopol: O’Reilly, 2015. Print. Pinch, T. J., and Karin Bijsterveld. The Oxford
Parker, Jason, “The Continuing Evolution of iOS.” Handbook of Sound Studies. New York: Oxford UP,
CNET. CBS Interactive, 7 May 2014. Web. 26 Feb. 2013. Print.
2016. Pinola, Melanie. “Speech Recognition through the
“Part Two: Communicating with Computers—The Decades: How We Ended Up with Siri.” PCWorld.
Operating System.” Computer Programming for IDG Consumer & SMB, 2 Nov. 2011. Web. 21 Mar.
Scientists. Oregon State U, 2006. Web. 31 Jan. 2016. 2016.
Patel, Ruchika, and Parth Bhatt. “A Review Paper “Planned Obsolescence: A Weapon of Mass
on Digital Watermarking and Its Techniques.” Discarding, or a Catalyst for Progress?” ParisTech
International Journal of Computer Applications 110.1 Review. ParisTech Rev., 27 Sept. 2013. Web. 9 Feb.
(2015): 10–13. Web. 14 Mar. 2016. 2016.
352
Plumb, Charles. “Drones in the Workplace.” Rajaraman, V. Computer Programming in Fortran 77. 4th
EmployerLINC. McAfee and Taft, 14 Dec. 2015. ed., New Delhi, IND: Prentice-Hall of India Pvt.,
Web. 21 Jan. 2016. 2006. Print.
Pollitt, Mark. “A History of Digital Forensics.” Rajasekaran, Sanguthevar. Multicore Computing:
Advances in Digital Forensics VI. Ed. Kam-Pui Chow Algorithms, Architectures, and Applications. Boca
and Sujeet Shenoi. Berlin: Springer, 2010. 3–15. Raton: CRC, 2013. Print.
Print. Ramasubbu, Suren. “How Technology Can
Pourhashemi, Ali, ed. Chemical and Biochemical Help Language Learning.” Huffington Post.
Engineering: New Materials and Developed Components. TheHuffingtonPost.com, 3 June 2015. Web. 19
Rev. Gennady E. Zaikov and A. K. Haghi. Oakville: Jan. 2016.
Apple Acad., 2015. Print. Rao, M. Ananda, and J. Srinavas. Neural Networks.
Prandoni, Paolo, and Martin Vetterli. Signal Processing Algorithms and Applications. Pangbourne, UK:
for Communications. Boca Raton: CRC, 2008. Print. Alpha Science International, 2003. Print.
Prasad, Bhanu, and S.R. Mahadeva Prasanna, eds. Rasmussen, Nicolas. Gene Jockeys: Life Science and the
Speech, Audio, Image and Biomedical Signal Processing Rise of Biotech Enterprise. Baltimore: Johns Hopkins
Using Neural Networks. New York, NY: Springer, UP, 2014. Print.
2008. Print. Ravindranath, Mohana. “PCs Lumber towards the
“Precision (Personalized) Medicine.” US Food and Technological Graveyard.” Guardian. Guardian
Drug Administration. Dept. of Health and Human News and Media, 11 Feb. 2014. Web. 10 Mar. 2016.
Services, 18 Nov. 2015. Web. 23 Dec. 2015. Rawls, Rod. R., Paul F. Richard and Mark A. Hagen.
Priddy, Kevin L. and Keller, Paul E. Artificial Neural Visual LISP Programming: Principles and Techniques
Networks, An Introduction. Bellingham, WA: SPIE Tinley Park, IL: Goodheart-Willcox, 2007. Print.
Press, 2005. Print. Raymond, Eric S. “Origins and History of Unix,
Proakis, John G., and Dimitris G. Manolakis. Digital 1969–1995.” The Art of UNIX Programming. Boston:
Signal Processing: Principles, Algorithms, and Pearson Education, 2004. Print.
Applications. 4th ed. Upper Saddle River: Prentice, Reed, Jeffrey H. Software Radio: A Modern Approach to
2007. Print. Radio Engineering. New York: Prentice, 2002. Print.
Prokopenko, Mikhail. Advances in Applied Self- Reimer, Jeremy. “A History of the GUI.” Ars Technica.
Organizing Systems. London: Springer, 2013. Print. Condé Nast, 5 May 2005. Web. 31 Jan. 2016.
“Pros & Cons of Website Templates.” Entheos. Ribble, Mike. Digital Citizenship in Schools: Nine
Entheos, n.d. Web. 22 Feb. 2016 Elements All Students Should Know. Eugene: Intl.
“Protect Your Privacy on the Internet.” Safety and Soc. for Technology in Education, 2015. Print.
Security Center. Microsoft, n. d. Web. 28 Feb. 2016. Rice, Daniel M. Calculus of Thought: Neuromorphic
Protalinski, Emil. “Windows 10 Ends 2015 under 10% Logistic Regression in Cognitive Machines. Waltham:
Market Share.” VentureBeat. VentureBeat, 1 Jan. Academic, 2014. Print.
2016. Web. 26 Feb. 2016. Rieffel, Eleanor, and Wolfgang Polak. Quantum
Pu, Di, and Alexander M. Wyglinski. Digital Computing: A Gentle Introduction. Cambridge, MA:
Communication Systems Engineering with Software- MIT Press, 2011. Print.
Defined Radio. London: Artech, 2013. Print. Roberts, Fred S., and Barry Tesman. Applied
Pullen, John Patrick. “This Is How Drones Work.” Combinatorics. 2nd ed. Boca Raton: Chapman,
Time. Time, 3 Apr. 2015. Web. 27 Jan. 2016. 2012. Print.
Puryear, Martin. “Programming Trends to Look for Roberts, Richard M. Computer Service and Repair. 4th
This Year.” TechCrunch. AOL, 13 Jan. 2016. Web. 7 ed. Tinley Park: Goodheart, 2015. Print.
Feb. 2016. Roblyer, M. D., and Aaron H. Doering. Integrating
Quian, Quiroga R., and Stefano Panzeri. Principles of Educational Technology into Teaching. 6th ed. Boston:
Neural Coding. Boca Raton: CRC, 2013. Print. Pearson, 2013. Print.
Rahimi, Saeed K., and Frank S. Haug. Distributed Rockett, Angus. The Materials Science of Semiconductors.
Database Management Systems: A Practical Approach. New York, NY: Springer, 2010. Print.
Hoboken: Wiley, 2010. Print.
353
Rogers, Joey. Object-Oriented Neural Networks in C++. Sammons, John. The Basics of Digital Forensics:
New York, NY: Academic Press, 1997. Print. The Primer for Getting Started in Digital Forensics.
Rogers, Scott. Swipe This!: The Guide to Great Touchscreen Waltham: Syngress, 2012. Print.
Game Design. Chichester: Wiley, 2012. Print. Sandberg, Bobbi. Networking: The Complete Reference.
Roosta, Seyed H. Parallel Processing and Parallel 3rd ed. New York: McGraw, 2015. Print.
Algorithms: Theory and Computation. New York: Sanders, James. “Hybrid Cloud: What It Is, Why It
Springer, 2013. Print. Matters.” ZDNet. CBS Interactive, 1 July 2014. Web.
Rountree, Derrick, and Ileana Castrillo. The Basics 10 Jan. 2016.
of Cloud Computing. Waltham: Elsevier, 2014. Sarkar, Jayanta. Computer Aided Design: A Conceptual
Print. Approach. Boca Raton: CRC, 2015. Print.
Rouse, Margaret. “Sarbanes-Oxley Act (SOX).” Savage, Terry Michael, and Karla E. Vogel. An
TechTarget. TechTarget, June 2014. Web. 31 Mar. Introduction to Digital Multimedia. 2nd ed.
2014. Burlington: Jones, 2014. 256–58. Print.
Rozanski, Nick, and Eoin Woods. Software Systems Savischenko, Nikolay V. Special Integral Functions Used
Architecture: Working with Stakeholders Using in Wireless Communications Theory. N.p.: World
Viewpoints and Perspectives. 2nd ed. Upper Saddle Scientific, 2014. Digital file.
River: Addison, 2012. Print. Schmidt, Richard F. Software Engineering: Architecture-
Rubin, Michael. Nonlinear—A Field Guide to Digital driven Software Development. Waltham: Morgan,
Video and Film Editing. Gainesville: Triad, 2000, 2013. Print.
Print. Schmidt, Silke, and Otto Rienhoff, eds.
Rutishauer, Heinz (1967) “Description of ALGOL- Interdisciplinary Assessment of Personal Health
60” Chapter in Bauer, F.L., Householder, I.S., Monitoring. Amsterdam: IOS, 2013. Print.
Olver, F.W.J., Rutishauer, H., Samelson, K. and Schmitt, Christopher. Designing Web & Mobile Graphics:
Stiefel, E., eds. Handbook for Automatic Computation Fundamental Concepts for Web and Interactive Projects.
Berlin, GER: Springer-Verlag. Print. Berkeley: New Riders, 2013. Print.
Ryan, Janel. “Five Basic Things You Should Know Schou, Corey, and Steven Hernandez. Information
about Cloud Computing.” Forbes. Forbes.com, 30 Assurance Handbook: Effective Computer Security and
Oct. 2013. Web. 30 Oct. 2013. Risk Management Strategies. New York: McGraw,
Sabbatini, Renato M. E. “Imitation of Life: A History 2015. Print.
of the First Robots.” Brain & Mind 9 (1999): n. Schwartz, John. “In the Lab: Robots That Slink and
pag. Web. 21 Jan. 2016. Squirm.” New York Times. New York Times, 27 Mar.
Saffer, Dan. Designing Gestural Interfaces. Beijing: 2007. Web. 21 Jan. 2016.
O’Reilly, 2008. Print. Scott, Michael L. Programming Language Pragmatics.
Saltman, Dave. “Tech Talk: Turning Digital Natives 4th ed., Waltham, MA: Morgan Kaufmann, 2016.
into Digital Citizens.” Harvard Education Letter Print.
27.5 (2011): n. pag. Harvard Graduate School of Segall, Richard S., Jeffrey S. Cook, and Qingyu
Education. Web. 27 Jan. 2016. Zhang, eds. Research and Applications in Global
Saltzman, Steven. Music Editing for Film and Television: Supercomputing. Hershey: Information Science
The Art and the Process. Burlington: Focal, 2015. Reference, 2015. Print.
Print. Seibel, Peter. Practical Common LISP New York, NY:
Saltzman, W. Mark. “Lecture 1—What Is Biomedical Apress/Springer-Verlag. Print.
Engineering?” BENG 100: Frontiers of Biomedical Seidl, Martina, et al. UML@Classroom: An Introduction
Engineering. Yale U, Spring 2008. Web. 23 Jan. to Object-Oriented Modeling. Cham: Springer, 2015.
2016. Print.
Salz, Peggy Anne, and Jennifer Moranz. The Everything Serpanos, Dimitrios N., and Tilman Wolf. Architecture
Guide to Mobile Apps: A Practical Guide to Affordable of Network Systems. Burlington: Morgan, 2011. Print.
Mobile App Development for Your Business. Avon: “Shadow RAM Basics.” Microsoft Support. Microsoft, 4
Adams Media, 2013. Print. Dec. 2015. Web. 10 Mar. 2016.
354
Shahani, Aarthi. “Biometrics May Ditch the Password, Soare, Robert I. Turing Computability: Theory
But Not the Hackers.” All Things Considered. NPR, and Applications (Theory and Applications of
26 Apr. 2015. Web. 21 Jan. 2016. Computability). Springer, 2016.
Shakarian, Paulo, Jana Shakarian, and Andrew Ruef. Soares, Marcelo M., and Francisco Rebelo. Advances
Introduction to Cyber-Warfare: A Multidisciplinary in Usability Evaluation. Boca Raton: CRC, 2013.
Approach. Waltham: Syngress, 2013. Print. Print.
Shen, Jialie, John Shepherd, Bin Cui, and Ling Solnon, Christine. Ant Colony Optimization and
Liu. Intelligent Music Information Systems: Tools and Constraint Programming. Hoboken: Wiley, 2010.
Methodologies. Hershey: IGI Global, 2008. Print. Print.
Shenoi, Belle A. Introduction to Digital Signal Processing Solomon, Nancy B., ed. Architecture: Celebrating
and Filter Design. Hoboken: Wiley, 2006. Print. the Past, Designing the Future. New York: Visual
Shinder, Deb. “So You Want to Be a Computer Reference, 2008. Print.
Forensics Expert.” TechRepublic. CBS Interactive, Song, Dong-Ping. Optimal Control and Optimization of
27 Dec. 2010. Web. 2 Feb. 2016. Stochastic Supply Chain Systems. London: Springer,
Shustek, Len. “Microsoft MS-DOS Early Source 2013. Print.
Code.” Computer History Museum. Computer Sonmez, John Z. Soft Skills: The Software Developer’s Life
History Museum, 2013. Web. 31 Jan. 2016. Manual. Shelter Island: Manning, 2015. Print.
Silberschatz, Abraham, Peter B. Galvin, and Sottilare, R., Graesser, A., Hu, X., and Holden, H.
Greg Gagne. Operating Systems Concepts. 9th ed. (Eds.). (2013). Design Recommendations for Intelligent
Hoboken: Wiley, 2012. Print. Tutoring Systems: Volume 1 - Learner Modeling.
Silberschatz, Abraham, Peter B. Galvin, and Greg Orlando, FL: U.S. Army Research Laboratory.
Gagne. Operating System Concepts Essentials. 2nd ed. ISBN 978-0-9893923-0-3. Available at: https://gift-
Wiley, 2014. Print. tutoring.org/documents/42
Silver, H. Ward. “Digital Code Basics.” Qst 98.8 Sozański, Krzysztof. Digital Signal Processing in Power
(2014): 58–59. PDF file. Electronics Control Circuits. New York: Springer,
Simpson, James, ed. The Routledge Handbook of Applied 2013. Print.
Linguistics. New York: Routledge, 2011. Print. Spence, Ewan. “New Android Malware Strikes at
Singh, Amandeep. “Top 13 Tips for Writing Effective Millions of Smartphones.” Forbes. Forbes.com,
Test Cases for Any Application.” Quick Software 4 Feb. 2015. Web. 11 Mar. 2016.
Testing. QuickSoftwareTesting, 23 Jan. 2014. Web. “Spyware.” Secure Purdue. Purdue U, 2010. Web. 11
11 Feb. 2016. Mar 2016.
Sinnen, Oliver. Task Scheduling for Parallel Systems. St. Germain, H. James de. “Debugging Programs.”
Hoboken: Wiley, 2007. Print. University of Utah. U of Utah, n.d. Web. 31 Jan.
Sito, Tom. Moving Innovation: A History of Computer 2016.
Animation. Cambridge: MIT P, 2013. Print. “State Laws Related to Internet Privacy.” National
Smith, Bud E. Green Computing: Tools and Techniques Conference of State Legislatures. NCSL, 5 Jan. 2016.
for Saving Energy, Money, and Resources. Boca Raton: Web. 28 Mar. 2016.
CRC, 2014. Print. Stallings, William, and Lawrie Brown. Computer
Smith, Catharine. “Tim Cook Issues Apology for Security: Principles and Practice. 3rd ed. Boston:
Apple Maps.” Huffpost Tech. TheHuffingtonPost. Pearson, 2015. Print.
com, 28 Sept. 2012. Web. 11 Feb. 2016. Stallings, William. Operating Systems: Internals and
Smith, Eric N. Workplace Security Essentials: A Guide for Design Principles. Boston: Pearson, 2015. Print.
Helping Organizations Create Safe Work Environments. Stanley, Jay. “‘Drones’ vs ‘UAVs’—What’s behind a
Oxford: Butterworth-Heinemann, 2014. Print. Name?” ACLU. ACLU, 20 May 2013. Web. 27 Jan.
Smith, Matt. “Wi-Fi vs. Ethernet: Has Wireless Killed 2016.
Wired?” Digital Trends. Designtechnica, 18 Jan. Stanton, Jeffrey, and Kathryn R. Slam. The Visible
2013. Web. 22 Feb. 2016. Employee: Using Workplace Monitoring and Surveillance
Snoke, David W. Electronics: A Physical Approach. to Protect Information Assets without Compromising
Boston: Addison, 2014. Print.
355
Employee Privacy or Trust. Medford: Information Takahashi, Dean. “The App Economy Could Double
Today, 2006. Print. to $101 Billion by 2020.” VB. Venture Beat, 10 Feb.
Stein, N. L., and S.W. Raudenbush, eds. Developmental 2016. Web. 11 Mar. 2016.
Cognitive Science Goes to School. New York: Routledge, Talbot, James, and Justin McLean. Learning Android
2011. Print Application Programming: A Hands- On Guide to
Steiner, Craig (1990) The 8051/8052 Microcontroller: Building Android Applications. Upper Saddle River:
Architecture, Assembly Language and Hardware Addison, 2014. Print.
Interfacing Boca Raton, FL: Universal Publishers. Tan, Li, and Jean Jiang. Digital Signal Processing:
Print. Fundamentals and Applications. 2nd ed. Boston:
Sterling, Leon, ed. The Practice of Prolog. Boston, MA: Academic, 2013. Print.
MIT Press,1990. Print. Tanenbaum, Andrew S., and Herbert Bos. Modern
Stevens, Tim. “Fitbit Review.” Engadget. AOL, 15 Oct. Operating Systems. 4th ed. New York: Pearson, 2014.
2009. Web. 28 Feb. 2016. Print.
“Storage vs. Memory.” Computer Desktop Encyclopedia. Tarantola, Andrew. “Why Frame Rate Matters.”
Computer Lang., 1981–2016. Web. 10 Mar. 2016. Gizmodo. Gizmodo, 14 Jan. 2015. Web. 11 Mar.
Stokes, Jon. Inside the Machine: An Illustrated 2016.
Introduction to Microprocessors and Computer Tatnall, Arthur, and Bill Davey, eds. Reflections on
Architecture. San Francisco: No Starch, 2015. the History of Computers in Education: Early Use of
Print. Computers and Teaching about Computing in Schools.
Stokes, Jon. “RAM Guide Part I: DRAM and SDRAM Heidelberg: Springer, 2014. Print.
Basics.” Ars Technica. Condé Nast, 18 July 2000. Taylor, Ben. “Cloud Storage vs. External Hard Drives:
Web. 10 Mar. 2016. Which Really Offers the Best Bang for your Buck?”
Stonebank, M. “UNIX Introduction.” University of PCWorld. IDG Consumer and SMB, 10 July 2014.
Surrey. U of Surrey, 2000. Web. 28 Feb. 2016. Web. 7 Mar. 2016.
Streib, James T. (2011) Guide to Assembly Language. Taylor, Harriet. “How Your Home Will Know What
A Concise Introduction New York, NY: Springer. You Need Before You Do.” CNBC. CNBC, Jan 6
Print. 2016. Web. 11 Mar. 2016.
Streib, James T., and Takako Soma. Guide to Java: Taylor, Richard N., Nenad Medvidović, and Eric M.
A Concise Introduction to Programming. New York: Dashofy. Software Architecture: Foundations, Theory,
Springer, 2014. Print. and Practice. Hoboken: Wiley, 2010. Print
Stroustrup, Bjarne. The C++ Programming Language “The Digital Millennium Copyright Act of 1998.”
4th ed. Upper Saddle River, NJ: Addison-Wesley, Copyright. US Copyright Office, 28 Oct 1998. Web.
2013. Print. 23 Jan 2016.
Stuart, Allison. “File Formats Explained: PDF, PNG “The History of the Integrated Circuit.” Nobelprize.org.
and More.” 99Designs. 99Designs, 21 May 2015. Nobel Media, 2014. Web. 31 Mar. 2016.
Web. 11 Feb. 2016. “The Mind-Blowing Possibilities of Quantum
Sun, Jiming, Vincent Zimmer, Marc Jones, and Stefan Computing.” TechRadar. Future, 17 Jan. 2010.
Reinauer. Embedded Firmware Solutions: Development Web. 26 Mar. 2016.
Best Practices for the Internet of Things. Berkeley: “The Printed World.” Economist. Economist
ApressOpen, 2015. Print. Newspaper, 10 Feb. 2011. Web. 6 Jan. 2016.
Tabak, Filiz, and William Smith. “Privacy and “The Unicode Standard: A Technical Introduction.”
Electronic Monitoring in the Workplace: A Model Unicode.org. Unicode, 25 June 2015. Web. 3 Mar.
of Managerial Cognition and Relational Trust 2016.
Development.” Employee Responsibilities and Rights Thieman, William J., and Michael A. Palladino.
Journal 17.3 (2005): 173–89. Print. Introduction to Biotechnology. 3rd ed. San Francisco:
Tabini, Marco. “Hidden Magic: A Look at the Secret Benjamin, 2012. Print.
Operating System inside the iPhone.” MacWorld. “Timeline of Computer History: 1963.” Computer
IDG Consumer & SMB, 20 Dec. 2013. Web. 9 Mar. History Museum. Computer History Museum,
2016. 1 May 2015. Web. 23 Feb. 2016.
356
Toal, Ray. “Algorithms and Data Structures.” Ray “Unmanned Aircraft Systems (UAS) Frequently
Toal. Loyola Marymount U, n.d. Web. 19 Jan. Asked Questions.” Federal Aviation Administration.
2016. US Dept. of Transportation, 18 Dec. 2015.
Tomei, Lawrence A., ed. Encyclopedia of Information Web. 11 Feb. 2016.
Technology Curriculum Integration. 2 vols. Hershey: “Unretouched by Human Hand.” Economist.
Information Science Reference, 2008. Print. Economist Newspaper, 12 Dec. 2002. Web. 14 Mar.
Tomlinson, Brian, ed. Applied Linguistics and Materials 2016.
Development. New York: Bloomsbury, 2013. Print. “USA Patriot Act.” Electronic Privacy Information Center.
Tooley, Mike. Electronic Circuits: Fundamentals and EPIC, 31 May 2015. Web. 28 Mar. 2016.
Applications. 4th ed. New York: Routledge, 2015. “User Interface Design Basics.” Usability. US Dept. of
Print. Health and Human Services, 2 Feb. 2016. Web. 2
Toomey, Warren. “The Strange Birth and Long Feb. 2016.
Life of Unix.” IEEE Spectrum. IEEE, 28 Nov. 2011. Vacca, John R. Computer and Information Security
Web. 28. Feb. 2016. Handbook. Amsterdam: Kaufmann, 2013. Print.
Topol, Eric J. The Creative Destruction of Medicine: How Vacca, John, ed. Network and System Security. 2nd ed.
the Digital Revolution Will Create Better Health Care. Waltham: Elsevier, 2014. Print.
New York: Basic, 2013. Print. Van den Broek, Egon L. “Beyond Biometrics.” Procedia
Tosoni, Simone, Matteo Tarantino, and Chiara Computer Science 1.1 (2010): 2511–19. Print.
Giaccardi, eds. Media and the City: Urbanism, Van Roy, Peter. Concepts, Techniques, and Models of
Technology and Communication. Newcastle upon Computer Programming. Cambridge: MIT P, 2004.
Tyne: Cambridge Scholars, 2013. Print. Print.
Touretzky, David S. Common LISP. A Gentle Introduction Van Schuppen, Jan H., and Tiziano Villa, eds.
to Symbolic Computation Mineola, NY: Dover Coordination Control of Distributed Systems. Cham:
Publications. Print. Springer, 2015. Print
Treder, Marcin. “Wireframes vs. Prototypes: What’s Vella, Matt. “Nest CEO Tony Fadell on the Future of
the Difference?” Six Revisions. Jacob Gube, 11 Apr. the Smart Home.” Time. Time, 26 June 2014. Web.
2014. Web. 4 Mar. 2016. 12 Mar. 2016.
Tripathy, B. K., and D. P. Acharjya, eds. Global Trends Vetterli, Martin, Jelena Kovacevic, and Vivek K.
in Intelligent Computing Research and Development. Goyal. Foundations of Signal Processing. Cambridge:
Hershey: Information Science Reference, 2014. Cambridge UP, 2014. Print.
Print. Vick, Paul (2004) The Visual BASIC .NET Programming
Tucker, Allen B., Ralph Morelli, and Chamindra de Language. Boston, MA: Addison-Wesley. Print.
Silva. Software Development: An Open Source Approach. Wachter, Robert M. The Digital Doctor: Hope, Hype, and
Boca Raton: CRC, 2011. Print. Harm at the Dawn of Medicine’s Computer Age. New
Tucker, Allen B, Teofilo F. Gonzalez, and Jorge L. York: McGraw, 2015. Print.
Diaz-Herrera. Computing Handbook. Boca Raton, Wagner, Carl. “Choice, Chance, and Inference.”
FL: CRC Press, 2014. Print. Math.UTK.edu. U of Tennessee, Knoxville, 2015.
Tulchinsky, Theodore H., Elena Varavikova, Joan D. Web. 10 Feb. 2016.
Bickford, and Jonathan E. Fielding. The New Public Walker, Henry M. The Tao of Computing. 2nd ed. Boca
Health. New York: Academic, 2014. Print. Raton: CRC, 2013. Print.
Turing, Alan M. “Computing Machinery and Wang, Jason. “HIPAA Compliance: What Every
Intelligence.” Mind 59.236 (1950): 433–60. Web. Developer Should Know.” Information Week. UBM,
23 Dec. 2015. 11 July 2014. Web. 26 Feb. 2016.
“Turing Test.” Encyclopædia Britannica. Encyclopædia Wang, John, ed. Optimizing, Innovating, and
Britannica, 23 Sept. 2013. Web. 18 Dec. 2015. Capitalizing on Information Systems for Operations.
“Types of Wireless Networks.” Commotion. Open Hershey: Business Science Reference, 2013.
Technology Inst., n.d. Web. 3 Mar. 2016. Print.
“Unicode 8.0.0.” Unicode.org. Unicode, 17 June 2015. Warren, Tom. “Windows Turns 30: A Visual History.”
Web. 3 Mar. 2016. Verge. Vox Media, 19 Nov. 2015. Web. 26 Feb. 2016.
357
Watanabe, Shinji, and Jen-Tzung Chien. Bayesian White, Ron. How Computers Work: The Evolution of
Speech and Language Processing. Cambridge Technology. Illus. Tim Downs. 10th ed. Indianapolis:
University Press, 2015. Que, 2015. Print.
Watt, David A. Programming Language Design Concepts. Wieber, Pierre-Brice, Russ Tedrake, and Scott
West Sussex: Wiley, 2004. Print. Kuindersma. “Modeling and Control of Legged
Wei, Hung-Yu, Jarogniew Rykowski, and Sudhir Dixit. Robots.” Handbook of Robotics. Ed. Bruno Siciliano
WiFi, WiMAX, and LTE Multi- Hop Mesh Networks: and Oussama Khatib. 2nd ed. N.p.: Springer,
Basic Communication Protocols and Application Areas. n.d. (forthcoming). Scott Kuindersma—Harvard
Hoboken: Wiley, 2013. Print. University. Web. 6 Jan. 2016
Weisfeld, Matt. The Object-Oriented Thought Process. 4th Williams, Brad, David Damstra, and Hal Stern.
ed. Upper Saddle River: Addison, 2013. Print. Professional WordPress: Design and Development. 3rd
Weller, Nathan. “A Look into the Future of Web ed. Indianapolis: Wiley, 2015. Print.
Design: Where Will We Be in 20 Years?” Elegant Williams, Rhiannon. “Apple iOS: A Brief History.”
Themes Blog. Elegant Themes, 9 May 2015. Web. 22 Telegraph. Telegraph Media Group, 17 Sept. 2015.
Feb. 2016. Web. 25 Feb. 2016.
Wells, Chris. The Civic Organization and the Digital Williams, Rhiannon, “iOS 9: Should You Upgrade?”
Citizen: Communicating Engagement in a Networked Telegraph. Telegraph Media Group, 16 Sept. 2015.
Age. New York: Oxford UP, 2015. Print. Web. 25 Feb. 2016.
Wexelblat, Richard L. History of Programming Williams, Richard N. Internet Security Made Easy: Take
Languages. New York, NY: Academic Press, 1981. Control of Your Computer. London: Flame Tree,
Print. 2015. Print.
“What Is a Driver?” Microsoft Developer Network. Wills, Craig E. “Process Synchronization and
Microsoft, n.d. Web. 10 Mar. 2016. Interprocess Communication.” Computing
“What Is E-waste?” Step: Solving the E-waste Problem. Handbook: Computer Science and Software Engineering.
United Nations U/Step Initiative, 2016. Web. 9 Ed. Teofilo Gonzalez and Jorge Díaz-Herrera. 3rd
Feb. 2016. ed. Boca Raton: CRC, 2014. 52-1–21. Print.
“What Is Personally Identifiable Information (PII)?” Wilson, Peter. The Circuit Designer’s Companion. 3rd
U Health. U of Miami Health System, n.d. Web. 28 ed. Waltham: Newnes, 2012. Print.
Feb. 2016. Winder, Catherine, and Zahra Dowlatabadi. Producing
“What Is Pharmacogenomics?” Genetics Home Animation. Waltham: Focal, 2011. Print.
Reference. Natl. Insts. of Health, 21 Dec. 2015. Web. “Wireless History Timeline.” Wireless History
23 Dec. 2015. Foundation. Wireless Hist. Foundation, 2016. Web.
“What Is the CompTIA A+ Certification?” Knowledge 22 Feb. 2016.
Base. Indiana U, 15 Jan. 2015. Web. 31 Jan. 2016. Wolf, Marilyn. High Performance Embedded Computing:
“What Is Unicode?” Unicode.org. Unicode, 1 Dec. Architectures, Applications, and Methodologies.
2015. Web. 3 Mar. 2016. Amsterdam: Elsevier, 2014. Print.
“What Is Unix?” Knowledge Base. Indiana U, 2015. Wood, David. Interface Design: An Introduction to Visual
Web. 28 Feb. 2016. Communication in UI Design. New York: Fairchild,
“What Went Wrong? Finding and Fixing Errors 2014. Print.
through Debugging.” Microsoft Developer Network Wood, Lamont. “The 8080 Chip at 40: What’s Next
Library. Microsoft, 2016. Web. 31 Jan. 2016. for the Mighty Microprocessor?” Computerworld.
“What You Can Do.” Green Computing. U of California, Computerworld, 8 Jan. 2015. Web. 12 Mar. 2016.
Berkeley, n.d. Web. 28 Feb. 2016. Woods, Dan. “Why Adopting the Declarative
“When Healthcare and Computer Science Programming Practices Will Improve Your Return
Collide.” Health Informatics and Health Information from Technology.” Forbes. Forbes.com, 17 Apr.
Management. Pearson/U of Illinois at Chicago, 2013. Web. 2 Mar. 2016.
n.d. Web. 23 Dec. 2015. Worstall, Tim. “Is Unix Now the Most Successful
“Why Do You Need to Test Software?” BBC Academy. Operating System of All Time?” Forbes. Forbes.
BBC, 23 Feb. 2015. Web. 7 Feb. 2016. com, 7 May 2013. Web. 7 Mar. 2016.
358
Xue, Su. Data-Driven Image Editing for Perceptual Zeller, Andreas. Why Programs Fail: A Guide to Systematic
Effectiveness. New Haven: Yale U, 2013. Print. Debugging. Burlington: Kaufmann, 2009. Print.
Yakowitz, Will. “When Monitoring Your Employees Zeng, An-Ping, ed. Fundamentals and Application of
Goes Horribly Wrong.” Inc. Mansueto Ventures, 14 New Bioproduction Systems. Berlin: Springer, 2013.
Feb. 2016. Web. 21 Feb. 2016. Print.
Yamamoto, Jazon. The Black Art of Multiplatform Game Zetter, Kim. “California Now Has the Nation’s Best
Programming. Boston: Cengage, 2015. Print. Digital Privacy Law.” Wired. Condé Nast, 8 Oct.
Yerby, Jonathan. “Legal and Ethical Issues of 2015. Web. 28 Mar. 2016.
Employee Monitoring.” Online Journal of Applied Zhong, Jian-Jiang, ed. Future Trends in Biotechnology.
Knowledge Management 1.2 (2013): 44–54. Web. 21 Berlin: Springer, 2013. Print.
Jan. 2016. Zhou, Weichang, and Anne Kantardjieff, eds.
Yu, F. Richard, Xi Zhang, and Victor C. M. Leung, Mammalian Cell Cultures for Biologics Manufacturing.
eds. Green Communications and Networking. Boca Berlin: Springer, 2014. Print
Raton: CRC, 2013. Print.
Yu, P.Y, and M Cardona. Fundamentals of Semiconductors:
Physics and Materials Properties. Berlin: Springer,
2010. Print.
359
361
362
363
364
365
366
367
368
G H
game loop, 145 hackers, 82–83
game programming, 145–146 hacking, 102
career in, 146–147 Hakkens, Dave, 127
requirements, 146–147 Hamiltonian path problem, 190
gates, 65 hamming distance, 21–22, 43–44
gateway, 208 hardware, 23, 65, 154
General Federal Privacy Laws, 228–229 interruption, 65, 196, 198
Generalized Intelligent Framework for Tutoring security, 82
(GIFT), 159 as service, 54
genetic engineering, 42 Harvard architecture, 110
genetic modification, 40 hash function, 95–96
genome, 226 hashing algorithm, 130
genome-wide association study (GWAS), 226 hash value, 130, 132
gestures, 201 head, 7
GIF (Graphics Interchange Format), 151 statement, 234
gigaFLOP (GFLOP), 181 header, 288
glass-box/clear-box testing, 259 health care, 291
global positioning system (GPS), 189, 292 modern, 223
glyph, 272 Health Insurance Portability and Accountability Act
Google App Engine, 55 (HIPAA), 228–229, 256
Google search engine, 10 health-monitoring systems, 223
Google’s operating systems, 12 health-tracking devices, 223
Google Translate, 207 heat energy, 67
Goostman, Eugene, 271 heavy metal, 127
Go Pro Hero 4, 78 Hebbian learning, 86
graph, 57 heterogeneous scalability, 245
theory, 56–57 hexadecimal, 23, 272
grapheme, 272 number system, 34, 36
graphical interface, 105 hibernation, 152–153
graphical user interface (GUI), 117, 147, 148, 156, hidden Markov model (HMM), 264–265
259, 284–285 hidden watermarks, 114
elements of, 148 hierarchical file system, 275
graphics and interface basics, 147 higher-level programming languages, 230
interface design, 147–149 high-fidelity wireframe, 286
369
370
371
372
373
374
375
376
377
378
379
380
381