Professional Documents
Culture Documents
Communications200912 DL
Communications200912 DL
ACM
CACM.ACM.ORG OF THE 12/2009 VOL.52 NO.12
A Smart
Cyberinfrastructure
For Research
DNS Lies
Ready for Web OS?
A Threat Analysis of
RFID Systems
Association for
Computing Machinery
International Academic Research Conference
",5,2152)20376(4&,(1&(
Programme Chairs The proceedings will be published by BCS in their electronic proceedings series
www.bcs.org/ewic on the ACM Digital Library, while a special issue of The Computer
Derek McAuley (Nottingham) Journal http://comjnl.oxfordjournals.org will be dedicated to a collection of the best papers.
Simon Peyton-Jones (Microsoft)
ABCD springer.com
Easy Ways to Order for the Americas 7 Write: Springer Order Department, PO Box 2485, Secaucus, NJ 07096-2485, USA 7 Call: (toll free) 1-800-SPRINGER
7 Fax: 1-201-348-4505 7 Email: orders-ny@springer.com or for outside the Americas 7 Write: Springer Customer Service Center GmbH, Haberstrasse 7,
69126 Heidelberg, Germany 7 Call: +49 (0) 6221-345-4301 7 Fax : +49 (0) 6221-345-4229 7 Email: orders-hd-individuals@springer.com
7 Prices are subject to change without notice. All prices are net prices. 014092x
COMMUNICATIONS OF THE ACM
By Samuel Greengard
111 Puzzled
Solutions and Sources 20 Problem Solvers
By Peter Winkler This year’s Grace Hopper
Celebration focused on using About the Cover:
Artist Lee MacLeod, who
112 Future Tense technology for social good. has produced illustrations
Mightier Than the Pen By Leah Hoffmann for game companies
including Nintendo, Sega,
by Joe Haldeman and Activision Value,
fashioned a playful arcade
reflecting real games
and video characters
created by students of the
GamePipe Laboratory at
the University of Southern
Association for Computing Machinery
Advancing Computing as a Science & Profession
California.
58 The Bulk Multicore Architecture As with all magazines, page limitations often
for Improved Programmability prevent the publication of articles that might
Easing the programmer’s otherwise be included in the print edition.
To ensure timely publication, ACM created
burden does not compromise
Communications’ Virtual Extension (VE).
system performance or increase VE articles undergo the same rigorous review
the complexity of hardware process as those in the print edition and are
implementation. accepted for publication on their merit. These
By Josep Torrellas, Luis Ceze, articles are now available to ACM members in
James Tuck, Calin Cascaval, the Digital Library.
Pablo Montesinos, Wonsun Ahn,
and Milos Prvulovic Power and Trust in Global
Virtual Teams
66 Computer Science in Niki Panteli and Robert Tucker
the Conceptual Age
CS departments are incorporating Online Privacy, Government
game design to prepare students for Surveillance, and National ID Cards
38 A Threat Analysis of RFID Passports the game industry’s expectations. Sun Sun Lim, Hichang Cho
Do RFID passports make us By Michael Zyda and Milagros Rivera Sanchez
vulnerable to identity theft?
By Alan Ramos, Weina Scott, Security in Dynamic Web Content
William Scott, Doug Lloyd, Review Articles Management Systems Applications
Katherine O’Leary, and Jim Waldo Ganesh Vaidyanathan
74 Computer Games and and Steve Mautone
43 What DNS Is Not Traditional CS Courses
DNS is many things to many Integrating computer games into Assessing Open Source Software
people—perhaps too many things existing CS courses may help attract as a Scholarly Contribution
to too many people. students to the field, but there are Lou Hafer and Arthur E. Kirkpatrick
By Paul Vixie guidelines to be considered.
By Kelvin Sung Why Did Your Project Fail?
48 Maximizing Power Efficiency Narciso Cerpa and June Verner
with Asymmetric Multicore Systems
How do we develop software Research Highlights Visual Passwords:
to make the most of the promise Cure-All or Snake-Oil?
that asymmetric multicore systems 80 Technical Perspective Karen Renaud and Antonella De Angeli
use a lot less energy? Design Tools for the Rest of Us
By Alexandra Fedorova, By James A. Landay Positive Externality, Increasing
Juan Carlos Saez, Daniel Shelepov, Returns, and the Rise in Cybercrimes
and Manuel Prieto 81 Designing Plush Toys Nir Kshetri
with a Computer
Article development led by By Yuki Igarashi and Takeo Igarashi Technical Opinion
queue.acm.org Are Employees Putting Your
89 Technical Perspective Company At Risk By Not Following
A Graphical Sense of Touch Information Security Policies?
By Pat Hanrahan Mikko Siponen, M. Adam Mahmood,
and Seppo Pahnila
ILLUSTRATION BY A NDY GILMORE
Communications of the ACM is the leading monthly print and online magazine for the computing and information technology fields.
Communications is recognized as the most trusted and knowledgeable source of industry information for today’s computing professional.
Communications brings its readership in-depth coverage of emerging areas of computer science, new trends in information technology,
and practical applications. Industry leaders use Communications as a platform to present and debate various technology implications,
public policies, engineering challenges, and market trends. The prestige and unmatched reputation that Communications of the ACM
enjoys today is built upon a 50-year commitment to high-quality editorial content and a steadfast dedication to advancing the arts,
sciences, and applications of information technology.
Board Members
DOI:10.1145/1610252.1610255
I
N T H EI R P O I NT/COU N T E R POINT Unfortunately, teachers are divided, stream and communicating with JCL;
“CS Education in the U.S.: so combining theoretical CS expertise New algorithms. To improve the
Heading in the Wrong Direc- and practical experience in the same modules through new-algorithm re-
tion?” (July 2009), Robert Dew- person is rare, unlike in other engi- writes wherever possible; and
ar wrote that the CS curriculum neering disciplines. Educating the ed- New modules. To make it possible to
lacks important fundamentals, mostly ucators may well be a first priority. build modules as required.
of a mathematical nature, and Owen Raymond Boute, Ghent, Belgium ARC programmers each had five to
Astrachan wrote that “Studying more 10 years of experience (rare in 1965)
mathematics will not make software and advanced degrees in mathematics,
bugs disappear, although both [Edsger Modular Programming science, and engineering. They coded
W.] Dijkstra and Dewar seem to think Still a Challenge in Absolute and Assembler on ANL-
so,” concluding implicitly that more In Leah Hoffmann’s interview “Liskov built hardware (AVIDAC and GEORGE)
mathematics in the CS curriculum is on Liskov” (July 2009) Barbara Liskov and in FORTRAN on the IBM 704 and
not necessary. recalled research being conducted at the CDC 3600. Because OS/360 was
Astrachan apparently overlooked the time she was beginning her career so unstable (as shipped in 1965), they
the distinction between necessary (1970). “When I started,” she said, “the needed to be able to decipher dumps.
and sufficient conditions, a routine main way people thought about modu- Completion of the project would have
distinction in mathematics. As far as I larization was in terms of subroutines… been delayed without programmers ca-
know, neither Dijkstra nor Dewar ever But they didn’t have any way of linking pable of working close to the hardware
claimed that mathematics is a “silver a bunch of procedures together.” She and operating system.
bullet” guaranteeing reliable design, also said (in Karen A. Frenkel’s news The ARC system later became the
and both would likely agree with Fred item “Liskov’s Creative Joy,” also July platform for ANL reactor calculations
Brooks that indeed there is no silver 2009) “…the major challenge still is and was studied and used by other lab-
bullet. how to build large software systems.” oratories worldwide, though not before
Dijkstra’s and Dewar’s argument The definition of “module” inevita- it was shown to be portable.
that mathematics is an essential as- bly affects the building of large software On the first Earth Day (Apr. 22, 1970),
pect of a proper CS education mirrors systems, prompting our own recollec- a joint project with the Control Data
the fact that education in all engineer- tions and connections. For example, a Corporation aimed to port the ARC sys-
ing disciplines involves a solid math- counterexample to the use of subrou- tem to CDC hardware. We were aided
ematical foundation from the start, tines as the basic module existed in the in this effort by Richard Lee of CDC
then used in all (other) courses; see my form of a project that began in 1965 and Larry Atkins, a Northwestern Uni-
article “Teaching and Practicing Com- at Argonne National Laboratory (ANL) versity engineering student also known
puter Science at the University Level” and was reported at the Spring Joint for writing Chess 3.6, the winner of sev-
in Inroads, SIGCSE Bulletin 41, 2 (June Computer Conference (May 1969) to eral ACM North America Computer
2009), 24–30. develop the Argonne Reactor Compu- Chess Championships in the 1960s
As long as CS educators cannot tation System (ARC) from linked com- and 1970s. Once the modular environ-
agree about the fundamentals, prac- putational modules running on IBM ment was ported, the computational
tice will remain below the professional System 360 computers and OS/360. modules were easily ported. In fact,
standards common in classical engi- The modules were FORTRAN IV main after one computational module was
neering; see Allen Tucker et al.’s “Our programs where the output of one pro- ported, the remaining work was almost
Curriculum Has Become Math-Phobic” gram was analyzed to become the input automatic.
in SIGCSE Bulletin 33, 1 (Mar. 2001), for other programs. Reactor designers Louis C. Just, Lakewood, CO
243–247. This could be the result of wanted three main features: Gary K. Leaf, Argonne, IL
declining CS student enrollment, pos- Superprograms. To link programs Bert J. Toppel, Argonne, IL
sibly leading to the replacement of into superprograms directed by anoth-
mathematics with, say, trendy topics er FORTRAN IV main program while
apparently more appealing to fresh- the original programs could still run on A Quart of NFE Solution
men. However, even trendy topics can their own. They wanted all Assembler for a Pint CPU Problem
be combined with a solid mathemati- code and any direct communication In his article “Network Front-End Pro-
cal foundation, with the trendy topics with the manufacturer’s software to be cessors, Yet Again” (June 2009), Mike
included as illustrations. In any case, isolated for porting to other hardware. O’Dell seemed to be arguing what I say
the emphasis in teaching such topics Initially, the most important Assem- to colleagues in simpler terms, namely,
must be mathematical modeling, not bler code was for LINKing and LOAD- that using a network front-end (NFE)
mere description. ing modules for coordinating the I/O processor is (and always has been) a
bad idea for one basic reason: It must product (with uncompressed data). If means of shaping society. The other is
perform moderately complex compu- the data is compressed, the effective how motivation and peer-recognition
tation at least as fast as a computer’s bandwidth is much greater, depend- function in these communities; such
“main” CPU, yet manufacturers insist ing on compression ratio. (Jacobs’s ex- free-culture communities have much
it be cheap due to the cost “multiplier” periment would have run much faster in common with scientific communi-
effect when a computer includes many on the DM.) Multiple DMs can be con- ties, despite starting off with complete-
network links. To show that solving nected to increase data capacity, along ly different motivations.
this problem is impossible, consider with corresponding network/comput- My generation (born in the 1970s),
the following proof by contradiction: ing capacity. including many people in the free soft-
Assume an NFE processor with req- Oracle’s Automatic Storage Man- ware movement, has directly experi-
uisite attributes—moderately general- agement (ASM) is an integral part of enced the great shift computing and
purpose, fast, and cheap—with most DM, providing automatic load bal- networking have brought the world,
computer manufacturers using it as ancing across all nodes in the storage fully embracing the technologies. The
a main processor, not as a lowly NFE grid. ASM also provides fault-tolerance greatest difference between people
and so in need of even more network through dual or triple mirroring. The who are just users of computing and
bandwidth. Oracle database provides high-avail- those striving to make it better de-
Many computer engineers have ability and disaster-recovery features, pends on who has the opportunity to
long understood, as O’Dell wrote, that and ASM enables sequential I/Os appropriate it beyond, say, the distrac-
the most efficient way to implement a through its allocation strategies (such tion level, the blind Google syndrome,
network-protocol software stack is to as large allocations). or the simple digestion of “piles of data
use one or more CPUs of an N-way SMP, One of the best ways to improve que- and information [that] do not equate to
but users strongly resist this idea when ry performance (assuming the most greater knowledge and better decision
they discover they’ve paid big for what, optimal access method is used) is to making.”
from an application point of view, is avoid I/O altogether. The Oracle data- Thanks to Greengard for sparking
only an N-1-way computer; note, too, base provides rich partitioning strate- some useful thoughts.
popular “low-end” cases in which N = 2 or gies that enable skipping large chunks Gunnar Wolf, Mexico City
4. Apparently, Sun Microsystems (“the of data that do not qualify as a query
network is the computer”) hasn’t left scan. Communications welcomes your opinion. To submit a
much of an impression on IT manag- Moving data from production Letter to the Editor, please limit your comments to 500
words or less and send to letters@cacm.acm.org.
ers. The result is that NFE startups (OLTP systems) to a specialized data
continue to waste engineering talent store adds to a system’s total cost of © 2009 ACM 0001-0782/09/1200 $10.00
DOI:10.1145/1610252.1610257 http://cacm.acm.org/blogs/blog-cacm
Driven Research,
mon thought-chunk of research is a
12-month effort that fits in 12 pages.
We, as faculty advisors, are in a
!
"
#
$
%
&
&
&
'
(
))$$$*
* )
in the virtual extension
DOI:10.1145/1610252.1610256
Power and Trust in Global security may be used in an organization industry, we know that the password has
Virtual Teams to assess a short list of possible WMCS outlived its usefulness as an authenticator,
systems. This work focuses on security but no one has come up with a convincing
Niki Panteli and Robert Tucker issues in WCMS with the objective to and viable alternative. Visual passwords
understand the security issues as well as to have been researched for a decade now.
Although the current understanding of provide a generic security framework. The authors present the different kinds of
virtual teams has advanced in significantly visual passwords, their pros and cons, and
over the last few years, the authors contend debate whether they do indeed possess the
it has not taken sufficient account of Assessing Open Source Software potential to be a viable alternative to the
power dynamics within virtual teams nor as a Scholarly Contribution hated password.
sought to explore the nature of power
within geographically distributed teams. Lou Hafer and Arthur E. Kirkpatrick
The challenge is to be able to manage
In academic computer science, Positive Externality, Increasing
power differentials effectively in order Returns, and the Rise in
papers about software are considered
to allow collaboration to foster within a
virtual team environment. The question
scholarship but actual software is not. Cybercrimes
The authors propose “best practices”
addressed in this article is: How is power Nir Kshetri
for the evaluation of the scholarly
exercised in global virtual teams and how
contribution of open source software, The distinctive geography of cyberspace
can it effectively impact trust development
raising publication of code to a status provides an ideal environment for engag-
and overall team performance in such
comparable to publication of the ideas ing in opportunistic behavior. This article
distributed environments?
it embodies. Evaluating software as employs increasing returns and externali-
scholarship acknowledges the importance ties approaches to explain the escalation
Online Privacy, Government of the application of discoveries. The of cybercrimes. The author focuses on
Surveillance, and National ID Cards authors contend software instantiates three positive or self-reinforcing feedback
knowledge in a form that can be applied, systems to examine increasing returns in
Sun Sun Lim, Hichang Cho, and unlike the passive knowledge in an article. cybercrime-related activities. They are re-
Milagros Rivera Sanchez Considering software as scholarship lated to economic, sociopolitical and cog-
also advances the scientific principle of nitive systems. The author also examines
The authors explore how the online privacy reproducibility. Pseudo-code in an article three mechanisms that may give positive
concerns of Internet users are related is insufficient for replication; only actual feedback to cybercriminals: inefficiency
to their attitudes toward government code provides enough detail. and congestion in the law enforcement
surveillance and national ID cards. A survey
system, acceleration of the diffusion of
of Internet users in five multinational cities
Why Did Your Project Fail? cybercrime know-how and technology, and
(Bangalore, New York, Seoul, Singapore,
increase in potential criminals’ predisposi-
and Sydney) found that while positive Narciso Cerpa and June Verner tion toward cybercrimes.
attitudes toward ID cards raise online
privacy concerns, actual experiences Most research literature on failed software
using these cards appear to desensitize projects tends to deal with a few high- Technical Opinion:
Internet users to privacy intrusions. This is profile failures. The authors review Are Employees Putting Your
possibly due to the perceived convenience 70 failed projects to determine what
of these cards, the realization that privacy factors lead to project failure. Data was Company At Risk By Not Following
intrusions are not particularly significant, collected from a survey that considered Information Security Policies?
or a sense of resignation that the use of ID over 80 software development practices. Mikko Siponen, M. Adam Mahmood,
cards will inevitably be accompanied by Projects do not fail for a single reason and Seppo Pahnila
privacy intrusions. alone; they fail for multiple reasons,
including poor estimation and schedule, Careless employees who do not follow
poor risk management, and lack of staff information security policies constitute a
Security in Dynamic Web Content rewards. The failure factors are different serious threat to information privacy and
Management Systems Applications for in-house and outsourced projects, confidentiality. A field research, conducted
Ganesh Vaidyanathan and Steve Mautone and while organizations do not conduct to determine which issues are vital toward
post-mortem reviews software projects will employees’ compliance with these policies,
Web Content Management Systems continue to fail. indicates that the visibility of security
(WCMS) allow teams to maintain Web activities and expectations of peers have
content in a dynamic fashion. While this a positive impact on employees’ ability
“on-the-fly” content creation provides Visual Passwords: to assess the severity of security threats.
Web site authors several advantages, Cure-All or Snake-Oil? These precursor variables also affect
there are distinct disadvantages. Indeed, Karen Renaud and Antonella De Angeli employees’ beliefs that the security policies
organizations are adopting information compliance is an effective way to combat
technology without understanding such In our everyday lives we’re expected to these threats. In turn, if employees realize
security concerns. The authors illustrate remember a number of passwords and the severity of security threats, they often
how to evaluate open source systems and PINs. Since human memory is finite and have a strong intention to comply with
how an evaluation technique in terms of fallible, we often forget them. As an security policies.
ACM
Member
News
DOI:10.1145/1610252.1610258 David Roman
HALL WINS DUNCAN
cried science education in the U.S. and showed how “wisdom of the masses” is an and deploy cyberinfrastructure
as infrastructure: sustainable
oxymoron. It described how John Holdren, director of the White House Office of business models, appropriate
Science and Technology Policy, trades candor for political timidity when discuss- standards, low-barrier-to-access
ing science policy (www.newsweek.com/id/216505). “He must sell his ideas to user interfaces, and inter-
operability. The development
people who couldn’t pass high-school algebra—and who believe they know more of cyberinfrastructure as
than he does.” infrastructure truly constitutes a
Crowdsourcing empowers followers. It risks weakening leaders. grand challenge for our age.”
Self-Assembly
drug company might produce a time-
release drug by encapsulating tiny drug
droplets in structures, such as dodeca-
hedrons, that have certain desired prop-
Researchers are using tools from information theory and computer erties. The idea is to simplify the search
science to facilitate the automatic creation of nanoscale structures. for the proper materials and conditions
for self-assembly of such things.
S
The forces between particles deter-
BY which
EL F- A S S E M BLY, mine whether or not they will organize
atoms, molecules, or other into a stable and desired configura-
nanoscale components tion. Cohn and Kumar’s blueprints
spontaneously organize for self-assembly specify the required
into something useful, inter-particle forces and distances via
sounds so simple. Just mix a few chem- formulas called potential functions.
icals and wait for a new plastic, drug, Traditional approaches to this
or electronic component to form at the problem use complex potential func-
bottom of your test tube. tions with multiple potential wells, lo-
Unfortunately, it’s not so easy. Coax- cal energy minima that cause the par-
ing tiny particles to arrange themselves ticles to settle into certain positions.
in an orderly way, with desirable and But Cohn and Kumar devised a way to
repeatable properties, is enormously find potential functions that cause the
complex, typically involving a great particles to organize themselves more
deal of trial and error in the laboratory. The Schlegel diagram for a regular 120-cell directly, without relying on local min-
structure (with a dodecahedral facet in red)
But now two mathematicians, us- from Henry Cohn and Abhinav Kumar’s self- ima. The resulting formulas are sim-
ing tools from information theory and assembly research. pler and, hence, would be much easier
computer science, have found a new to implement in a lab or manufactur-
and relatively simple way to orches- tion theory—to produce their results. ing line, they say.
trate the assembly of nanostructures. Writing in a recent issue of Proceed- In the second part of the problem,
And they have devised algorithms that ings of the National Academy of Sciences, Cohn and Kumar go on to mathemati-
can produce mathematical proofs that Cohn and Kumar describe their suc- cally prove that the dodecahedron
their structures are optimum. cess in designing a system to direct 20 and several other structures built by
Henry Cohn, a principal researcher randomly placed particles on a sphere their methods are in fact the unique
at Microsoft Research New England and to form into a perfect dodecahedron ground states, or globally energy-min-
Abhinav Kumar, an assistant professor with 12 pentagonal faces, a structure imizing arrangements of particles.
of mathematics at Massachusetts In- that minimizes potential energy and, They do that using linear program-
stitute of Technology, have employed a hence, maximizes stability. ming bounds, a tool borrowed from
rich mix of techniques—including heu- Although the methods have yet to error-correction theory.
ristic algorithms, linear programming, be implemented in a lab, they may ul- The researchers find their optimal
search optimization, and error-correc- timately find use in such diverse fields potential functions using an iterative
process they call “simulation-guided and the kind you might be able to gen-
optimization,” which alternates be- erate, are basically functions with not
tween molecular dynamics simulation too many wiggles. We ask the question,
and linear programming. A trial poten- ‘Can you get a potential function with
tial function is chosen, and a number essentially no wiggles?’ ”
of simulations—with random starting
positions for the particles—are run, The Inverse Approach
allowing the particles to interact until Cohn and Kumar’s work builds on ear-
they settle into a structure. The result is lier research by Salvatore Torquato,
a list of possible candidate structures a professor of chemistry at Princeton
for the ground state. University. Starting with a paper writ-
Then linear programming looks for ten four years ago, Torquato pioneered
a new potential function that makes what he calls the inverse approach to
all the candidates rank worse than the self-assembly. In the traditional for-
target configuration, and the whole ward approach, known particle interac-
process is repeated. The researchers tions are used to predict a likely result-
call this process a heuristic algorithm ing structure. But the inverse method
because “it is not guaranteed to work.” starts with some desired configuration
They tested their potential function Princeton University professor of chemistry and derives the optimal inter-particle
1,200 times with different starting po- Salvatore Torquato, who pioneered an interactions that would spontane-
inverse approach to self-assembly. ously organize into that target struc-
sitions of the 20 particles, and all but
six converged to the dodecahedron. Cohn/Kumar solutions tend to be ture. Torquato has used pure theoreti-
Not surprisingly, a process that re- smooth, with particle interactions de- cal work as well as numeric computer
petitively applies simulation and linear creasing monotonically with distance. simulation to find potential functions
programming can be computationally But those for the more conventional ap- that can lead to the self-assembly of
very taxing. Indeed, a large part of the proaches—those that employ potential materials into squares, honeycombs,
mathematicians’ effort went into find- wells—are complex and bumpy, with diamond shapes, and lattices.
ing efficient search methods. “The numerous local maxima and minima. “This is a completely different way
problem is how not to get stuck at some “The problem with potential wells is of thinking about designing these
sub-optimal solution,” Cohn says. they are much harder to manufacture structures, and it’s tailor-made for self-
Graphs of potential functions in the lab,” Kumar explains. “But the assembly,” he says.
against inter-particle distances for kinds of functions you see in nature, Torquato says the inverse approach
B
ACK IN 1995, Netscape co- vice integration that continue to tilt tions to be developed. And Web appli-
founder Marc Andreessen the balance of power in favor of the cations will soon benefit from evolved
predicted that his fledgling desktop OS. Web standards, such as HTML5, fea-
Web browser would one For many average computer us- turing offline support, local storage,
day render Windows obso- ers, the browser has become their de geolocation capabilities, graphics ac-
lete. Fifteen years later, Netscape is facto OS—a tool of choice for e-mail, celeration, and perhaps access to cli-
long gone, and the traditional desk- personal finance, and other activities ent devices, such as a scanner or video
top operating system (OS) remains that were once the domain of desktop camera.
firmly established on most personal applications. Today’s Web has come a “With HTML5, we’re going to see a
computers. Meanwhile, Web brows- long way from its original incarnation new generation of rich Web applica-
ers still look a lot like they did in the as a collection of passive, hyperlinked tions,” says Adam Barth, a postdoctor-
mid-1990s, running inside applica- documents. Web developers now rou- al fellow at the University of California
tion windows. In hindsight, Andrees- tinely use sophisticated scripting lan- at Berkeley who focuses on privacy
sen may have spoken a bit too soon. guages and other active client-side and browser security. “But I suspect
But history may yet prove him right. technologies to provide users with it will take a while for application de-
The hegemony of the desktop OS rich experiences that approximate velopers to realize the full potential of
is starting to fracture with the emer- the performance of desktop applica- the various HTML5 technologies like
gence of a new generation of browsers tions, including features like drag- canvas, local storage, and video.”
that may finally herald the long-await- and-drop, keyboard shortcuts, and In a similar vein, experimental
ed convergence of Web and OS. An other desktop-like affordances that technologies, such as Xax and Na-
enormous amount of Web OS devel- have become commonplace. tive Client, allow Web publishers to
opment is currently under way, with The latest Web browsers include implement Web programs as native
the development of Web standards, powerful features that further close x86 code that executes directly and
such as HTML5, to add richer capa- the gap between Web applications safely on the client’s processor, elimi-
bilities and features; new technolo- and native desktop applications. Most nating the interpretation or compila-
FIGURE: CH RIS GRIER, SH UO TA NG, AND SA M UEL T. KING, “SECURE W EB BROWSING WIT H T HE O P WEB BROW S E R”, P ROCE E D IN GS OF T H E
gies like Microsoft’s Xax and Google’s major browsers have significantly in- tion overhead of scripted or byte-cod-
Native Client that make browsers and creased the speed of their JavaScript ed languages and frameworks such
their applications as capable and engines, allowing more complex and as Java, JavaScript, Silverlight, and
powerful as desktop applications; computationally demanding applica- Flash.
and architectural changes to brows- “I think we’re going to see a pro-
ers, making them process oriented,
liferation of different scripting lan-
which increases their robustness and guages in the browser,” says Barth.
security. “In the past, JavaScript had a mortal
A Web OS offers enormous prom-
lock as the lingua franca of the Web,
ise. Potentially, it could take the best
but now, with technologies like Xax
of the Web—the rapid deployment and Native Client, anyone can write
and updating of new applications, de- an interpreter for their favorite lan-
2 008 IEEE SYM POSIUM O N SECURIT Y A ND PRIVACY ( OA KL A ND) , MAY 2008.
vice independence, and the ease and guage and run the interpreter in the
convenience with which large com- browser without pestering the user to
munities can collaborate and share install the interpreter.”
information—and combine it with Sam King, assistant professor in
the advantages of desktop applica- the computer science department at
tions—operating at machine speed, the University of Illinois at Urbana-
rich and interactive interfaces, and Champaign, thinks JavaScript is too
access to local hardware—and side- entrenched in today’s Web ecosystem
step many of the security and compat- to cede its dominant position anytime
ibility issues currently plaguing desk- soon. “JavaScript is tightly integrated
To improve the performance and security of
top OSs. Before the Web OS becomes the OP Web browser, the main architecture into modern browsers and a funda-
a practical reality, however, browser is divided into five main subsystems: mental part of the current Web,” he
browser kernel, storage subsystem, network
developers must overcome several subsystem, user-interface subsystem, and says. “However, as technologies such
major obstacles to security and de- Web page instances. as Xax and Native Client show up in
browsers, Java, Silverlight, and Flash tablet, and various netbooks running
will certainly have new competition.” Google’s forthcoming Chrome OS,
As Web sites take all user interaction will take place
Multiple Concerns advantage of through a browser or Web-based ap-
As Web sites take advantage of im- plications. While each of these devic-
proved client-side technologies, improved client- es may still have a different OS pro-
browsers will need to start coping with side technologies, viding a scaffolding of background
a growing range of performance, reli- processes, users will increasingly
ability, and security concerns. “As we browsers must experience these devices through the
make Web browsers more powerful, cope with a filter of a Web interface.
we need to keep in mind how mali- As developers take advantage of
cious Web sites might abuse that addi- growing range these emerging technologies to craft
tional power,” says Barth. For example, of performance, Web-based experiences across a grow-
a truly secure browser should let users ing range of devices, the OS will likely
visit sites that contain buggy or mali- reliability, and continue to recede from users’ aware-
cious code without fearing about the security issues. ness—and perhaps eventually disap-
integrity of their OS, applications, or pear altogether. But even if the tradi-
private data. tional OS sticks around in some form
To address these concerns, re- for years to come, it may not matter
searchers are reconsidering the un- much to anyone except developers.
derlying architecture of the Web “I’m not sure users care that much
browser. New multiprocess browsers, as mashups and embedded widgets, about the computing platform,” says
such as Tahoma, Google Chrome, In- to prevent one program from stealing Barth. “Users seem to care much more
ternet Explorer 8, and the OP browser, information from or causing damag- about what they can do with technol-
place separate Web applications in ing side effects to other programs. ogy than how it gets done.”
their own operating system processes However, the techniques that accom-
or virtual machines, allowing the un- plish this often come at the expense
derlying host operating system or vir- of backward compatibility, making Further Reading
tual machine monitor to ensure that them more difficult to deploy. Barth, A., Jackson, C., Reis, C., and the Google
crashes and slowdowns in one Web Looking further ahead, questions Chrome team
application do not affect the perfor- of compatibility will continue to arise The Security Architecture of the Chromium
mance or robustness of other applica- Browser, http://seclab.stanford.edu/
as browsers must negotiate a growing
websec/chromium/, 2008.
tions. “By decomposing the browser, tangle of local computing resources
you can separate out the security logic such as offline storage, cameras, mi- Cox, R. S., Hansen, J. G., Gribble, S. D.,
from the implementation,” says King. crophones, geolocation, and graphics and Levy, H. M.
A safety-oriented platform for web
To improve security, browsers such acceleration hardware—all of which applications, Proceedings of the 2006
as Chrome and Internet Explorer 8 have their own security and perfor- IEEE Symposium on Security and Privacy,
have been refactored to run untrusted mance issues. Oakland, CA, May 2006.
components and Web code in a low- Geolocation provides an instruc-
Grier, C., Tang, S., and King, S.T.
privilege sandbox, limiting the expo- tive example of the types of challenges Secure web browsing with the OP web
sure of browser vulnerabilities and that browser developers will likely face browser, Proceedings of the 2008 IEEE
the damage that can be inflicted by a in the near future. “Geolocation is an Symposium on Security and Privacy,
malicious Web application. Mozilla is interesting case from a security point Oakland, CA, May 2008.
exploring a similar protection mecha- of view because we’re resorting to ask- Reis, C. and Gribble, S. D.
nism in its Electrosis project that will ing users to grant Web sites addition- Isolating web programs in modern
strengthen security features in a fu- al privileges to read location data,” browser architectures, Proceedings of
ture version of Firefox. Meanwhile, says King. Developers must negotiate the 4th ACM European Conference on
Computer Systems (EuroSys 2009),
Microsoft Research developers have delicate trade-offs in giving users an Nuremberg, Germany, March 2009.
taken this approach a step further with appropriate level of control without
the prototype Gazelle browser, which letting them also damage their sys- Wang, H. J., Grier, C., Moshchuk, A., King, S. T.,
Choudhury, P., and Vente, H.
separates different Web sites into dis- tems. “Developing a security policy
The multi-principal OS construction of
crete protection domains. With the OP for accessing local data and hardware the Gazelle web browser, Proceedings of
browser, researchers at the University is still an open, difficult, and impor- the 18th USENIX Security Symposium,
of Illinois at Urbana-Champaign ex- tant research problem,” he says. Montreal, Canada, August 2009.
plored applying OS principles to Web The continued proliferation of
browser design by breaking the brows- devices—each with its own OS and in- Alex Wright is a Brooklyn-based writer and information
architect. Charles Reis, Steve Gribble, and Hank Levy of
er program into smaller subsystems. terface—may provide further impetus Washington University contributed to the development
By isolating processes within a toward a consistent, predictable Web of this article.
browser, browsers can mediate inter- OS. With new devices like the Palm
actions between Web programs, such Pre smartphone, the CrunchPad Web © 2009 ACM 0001-0782/09/1200 $10.00
I
T ’S NO S E CRET that engineers
and designers constantly seek
to build safer and more con-
venient systems. And, over the
last century, planes, trains,
automobiles, and industrial machines
have become far more automated and
efficient. However, when a Metro sub-
way train rammed into another train in
Washington, D.C. last June, designers
had to confront the unpleasant real-
ity that automation may have been the
cause. The accident, which killed nine
people and injured 80, may have been
rooted in a computer malfunction and
the operator’s inability to manually ap-
ply the brakes quickly enough.
The Metro train accident lies at the
heart of what human factors experts re-
fer to as the “automation paradox.” As The June 22, 2009 Metro subway train crash in Washington, D.C., in which nine people died
automated systems become increas- and 80 were injured, is the deadliest accident in the Metro’s 33-year history.
ingly reliable and efficient, the more
likely it is that human operators will to build better systems? There are no fluid flow velocity, may have became
mentally “switch off” and rely upon the simple solutions. But as Donald Nor- blocked by ice. At that point, they may
automated system. And as the auto- man, professor of computer science at have stopped emitting signals, and ex-
mated system becomes more complex, Northwestern University, co-founder of perts say that the pilots could have en-
the odds of an accident or mishap may Neilson Norman Group, and author of countered false speed readings. In fact,
diminish, but the severity of a failure is The Design of Future Things, says, “De- the jet—which was coping with a series
often amplified. signers often make assumptions or act of storms, including a severe thunder-
As John D. Lee, a professor of indus- on incomplete information. They sim- storm—reportedly relayed a signal that
trial and systems engineering at the ply don’t anticipate how systems will its computer system no longer knew
University of Wisconsin at Madison be used and how unanticipated events the speed of the aircraft, and that auto-
told the Washington Post: “The better and consequences will occur.” matic pilot and thrust functions were
you make the automation, the more switched off. This may have forced the
difficult it is to guard against these cat- Human-Machine Interface pilots to take over manual control dur-
astrophic failures....” It’s clear that automation has provided ing chaotic, if not impossible, flying
Understanding how people and ma- enormous gains to society. Safer and conditions.
chines interact is infinitely complex. more efficient factories; faster police, There are also plenty of examples
Programming all the various possibili- emergency, and fire response; and of humans having trouble with auto-
ties and scenarios into a system can more user-friendly and safer automo- mation systems in everyday life. As au-
PHOTOGRA PH BY PABLO M ARTINEZ M ONSIVAIS/A P PH OTO
tax even the best design and engineer- biles are only a few of the benefits. tomobiles become more automated,
ing experts. What’s more, as technol- Yet, at the same time, it takes little new problems crop up. For instance,
ogy evolves, the entire process grows effort to find evidence of breakdowns motorists blindly follow the incorrect
more convoluted and iterative. In some between human and machine. directions provided by a navigation
cases, experts say, it’s wise to ask what The crash of Air France Flight 447 system, even though a glance at the
purpose automation serves and when that occurred over the Atlantic Ocean road would indicate there’s an obvious
it’s best to use it and eschew it. last June—killing all 228 people error. A few motorists have even driven
What is the fallout from automa- aboard—may have been caused by a off a cliff or into oncoming traffic after
tion glitches? Where do programmers, malfunction in a speed sensor. The following directions explicitly. What’s
designers, and engineers typically fall plane’s Pitot tubes, a pressure mea- more, studies show that many motor-
short? And what can technologists do surement instrument used to track ists use automation features, such as
adaptive cruise control, incorrectly. In the problem.” However, understand- the notion that when a problem or
some cases, Norman says, these auto- ing variables and identifying possible breakdown occurs it’s a result of “hu-
mated systems cause the car to speed exceptions and disruptions is para- man error.” She believes that univer-
up as motorists exit a highway because mount. For example, when the Metro sities must place a greater focus on
there’s suddenly no car in front. If a D.C. train crashed, it may have been human factors and that programmers
driver isn’t paying attention, an acci- due to wet leaves on the tracks and a and others must understand that, with-
dent can occur. computerized system that wasn’t pro- out a big picture view of what they are
In the case of airplane pilots and grammed for such a scenario. “The building, the end result will continu-
train operators, one solution is regular automation system functioned as it ally fall short.
training sessions in which the pilot or was designed,” Woods says. “The situ- Others, such as Dekker, argue that
operator is required to turn off their ation simply fell outside the model of society must examine larger issues,
automated system and operate every- what engineers envisioned.” including whether automation auto-
thing manually. This can help them re- matically translates into progress. “In
tain their skills and alertness. Beyond Failure reality, not every function or process
But even this is not likely to elimi- Make no mistake, human factors ex- is best automated,” he says. “In some
nate breakdowns. Human-machine perts constantly scrutinize automa- cases, automation simply creates new
interface failures occur for a number tion. Many believe that if human error or different tasks and doesn’t provide
of reasons, experts say. Sometimes, de- exists, it falls on the shoulders of those any real benefit.” Automation may also
signers rely on a wrong set of assump- engineering, designing, and program- change processes to the point where
tions to build a system. They simply ming technology. “In reality, there is no people are more confused and entirely
don’t understand the way people use such thing as operator error. Too often, new social dynamics take place. At that
technology or the cultural differences systems aren’t designed as whole and point, he says, designers may attempt
that occur. In some instances, thou- those creating them overlook impor- to add new features, which only ratchet
sands and sometimes millions of vari- tant factors,” argues Nancy Leveson, up confusion and complexity further.
ables exist and capturing everything professor of aeronautics and astronau- To be sure, imperfect people con-
in a single algorithm is exceedingly tics at Massachusetts Institute of Tech- tinue to build imperfect systems. The
difficult. In fact, Norman argues that nology and author of the forthcoming need to focus on human-machine in-
machine logic doesn’t necessarily jibe book Engineering a Safer World. terfaces has never been greater. “De-
with the human brain. “If you look at Yet, progress is taking place. Con- signers, engineers, programmers, and
‘human error’ it almost always occurs sider the airline industry: In 1989, others must take an expansive view of
when people are forced to think and 1.4 crashes per 1 million departures automation and understand all the
act like machines,” he says. occurred. By 2008, the number had possibilities and variables,” concludes
Worse, complex algorithms often dropped to 0.2 fatal accidents per 1 Norman. “Only then can we build sys-
prompt humans to relate to devices as million departures. In fact, crashes tems that improve performance and
if they were fellow human beings. As have steadily dropped over the de- solve real-world problems.”
a result, the autopilot on a plane, the cades while survivability has increased.
cruise control on a car, and automated Dekker, who is a pilot and has flown Further Reading
speed-control systems in mass transit various aircraft, including a Boeing
Bainbridge, L.
become either aids or crutches, de- 737, says that the industry has got-
Ironies of automation. New Technology and
pending the situation. ten serious about stamping out flaws, Human Error, J. Rasmussen, K. Duncan, J.
Too often, the sum of a system is not bugs, and oversights. Leplat (Eds.). Wiley, Chichester, U.K., 1987.
equal to the individual parts, says Sid- These improvements have taken
Dekker, S.
ney W. A. Dekker, director of research at place because the airline industry has The Field Guide to Understanding Human
the Leonardo da Vinci Center for Com- moved beyond studying ergonomics Error. Ashgate Publishing, Farnham, Surrey,
plexity and Systems Thinking at Lund and discreet processes. In fact, Leveson U.K., 2006.
University in Sweden. “There is often a says that researchers have put a micro- Dekker, S.
great deal of human intuition involved scope to cognitive functions, psycholo- The Field Guide to Human Error
in a process or activity and that’s not gy, cultural issues, and a variety of oth- Investigations. Ashgate Publishing,
something a machine can easily du- er components that comprise human Farnham, Surrey, U.K., 2002.
plicate,” says Dekker. “If you look at factors. “They have evolved toward a Norman, D.
delivering babies, there’s a reason we system view and worked to understand The Design of Future Things. Basic Books,
have midwives and nurses. Machines how everything—hardware, software, New York, 2009.
can monitor and help, but they can’t procedures, and humans—interact. Sarter, N. B., Woods, D. D., and Billings, C. E.
detect subtle signs and they’re unable It’s a model that other industries must Automation surprises. Handbook of Human
to adapt to situations as seamlessly.” embrace,” she says. Factors and Ergonomics (3rd ed.). Wiley,
New York, 2006.
David D. Woods, professor of cog- One thing is certain: Automation
nitive engineering at Ohio State Uni- disconnects won’t disappear anytime
Samuel Greengard is an author and freelance writer
versity, says that designers can eas- soon. Leveson believes that, ultimate- based in West Linn, OR.
ily succumb to the trap of thinking ly, the people designing systems must
“a little more technology will solve take a more holistic view and get past © 2009 ACM 0001-0782/09/1200 $10.00
Problem Solvers
This year’s Grace Hopper Celebration focused
on using technology for social good.
O
VER THE PAST 15 years, the
Grace Hopper Celebration
of Women in Computing
has become one of the in-
dustry’s premier forums for
women in computer science. Cofounded
in 1994 by Anita Borg and Telle Whitney
and inspired by the legacy of Grace Mur-
ray Hopper, the conference balances a
broad range of technical talks with pro-
fessional and personal programs. Once
a modest gathering of several hundred
women, it has since grown into a large,
four-day affair—held this past October
in Tucson, AZ—with a tightly packed
schedule and more than 1,600 attend-
ees from 23 countries.
Yet the experience remains both
powerful and intimate. “There’s al-
ways a lot of excitement,” says Valerie
Barr, chair of the computer science de-
partment at Union College. “There’s From left, clockwise, Carleton University Ph.D. candidate Natalia Villanueva-Rosales, ACM
an air of joy and celebration.” Barr President Dame Wendy Hall, and Google.org Vice President Megan Smith.
has attended all but one of the previ-
ous nine conferences. Like many at- and harnessing data to further projects ers.” There were résumé clinics, leader-
tendees, Barr cites the friends she has in science and engineering. Other tech- ship workshops, and panels on issues
made as one of the primary reasons nical topics included human-centered women face in industry and academia.
she comes back year after year. These design, communications security and The Computer Research Association’s
friendships are actively encouraged policy, and wireless ad hoc networks. Committee on the Status of Women
by the conference leadership, who “Grace Hopper demonstrates that you sponsored three career-building ses-
challenged women to introduce them- can approach computer science in a sions for undergraduates, grad stu-
selves to five new people each day and way that’s relevant to people—that ad- dents, and early-career researchers.
harnessed social media like Facebook, dresses hunger, poverty, environmen- Industry representatives were also
Twitter, and blogs to spread the mes- tal issues, and so on,” explains Barr. invited to set up booths in an exhibi-
sage. Last year’s innovative CONNECT Because of the breadth of its scope, tion hall to showcase their companies
program, which enables attendees Barr says, the conference is also a great and answer questions. “Grace Hopper
to use special scannable bar codes to opportunity to learn about breaking re- is a great place to recruit people,” says
PHOTOGRA PH BY GA IL CA RM ICH A EL / H T TP://C OMPSCIGA IL.BLOG SPOT.COM
automatically exchange contact infor- search that’s outside her specialty. Tessa Lau, a researcher at the IBM Al-
mation with people, was back again to One of the year’s best-received new maden Research Center. The women
facilitate further networking. features was a technical track that was at Grace Hopper, says Lau, are moti-
This year’s theme was “Creating devoted to robotics. “It spanned four vated, smart, and enthusiastic about
Technology for Social Good,” and pan- sessions on a single day and seemed to the field. The conference, meanwhile,
els, papers, and speeches showcased work quite well,” says conference chair gives them a unique opportunity to talk
diverse examples of collaboration and Heidi Kvinge, an Intel software engi- to corporate researchers rather than
accomplishment. Keynote speakers neering manager. professional recruiters.
Megan Smith, vice president of new Students comprise nearly half of the “I always come back energized and
business development at Google.org, attendees, and much of the non-tech- full of ideas,” says Kvinge. “It broadens
and Francine Berman, vice president nical program revolves around profes- my vision.”
for research at Rensselaer Polytechnic sional development. “We always focus
Leah Hoffmann is a Brooklyn-based technology writer.
Institute, spoke about increasing Inter- on the pipeline,” says Kvinge. “We want
net availability in developing countries to build the next generation of lead- © 2009 ACM 0001-0782/09/1200 $10.00
CTS 2010
Chicago, Illinois, USA
Important Dates:
Paper Submission Deadline ----------------------------------------- December 20, 2009
Workshop/Special Session Proposal Deadline ----------------- November 15, 2009
Tutorial/Demo/Panel Proposal Deadline ------------------------- January 8, 2010
Notification of Acceptance ------------------------------------------- February 1, 2010
Final Papers Due ------------------------------------------------------- March 1, 2010
For more information, visit the CTS 2010 web site at:
http://cisedu.us/cis/cts/10/main/callForPapers.jsp
Broadening Participation
Opening Remarks
Highlighting efforts and providing the rationale to increase the participation and
success of underrepresented groups in computing.
T
H I S IS T H Efirst in a new
Communications Viewpoints
Broadening Participation
column series that will be
edited by me. The purpose
of the column is inform, invigorate
conversation, and inspire action in the
computing community concerning is-
sues in broadening participation. This
column will tend to be U.S.-centric be-
cause broadening participation in the
U.S. is what I know best. What I mean
by broadening participation in the U.S.
is increasing the inclusion of individu-
als from underrepresented groups,
such as women, Native Americans, Af-
rican Americans, Hispanics, and per-
sons with disabilities, in the comput-
ing field at all levels. In other countries
University of Washington Computer Science Professor Richard Ladner, left, signs with
and regions of the world underrepre-
PHOTOGRA PH BY M ARY LEVIN, U NIVERSIT Y OF WASHINGTON
some of the participants in the first Summer Academy for Advancing Deaf and Hard of
sented groups would be defined differ- Hearing in Computing, held during the summer of 2007.
ently. I distinguish “broadening par-
ticipation” from “diversity,” which is a science doctorate degrees in the U.S. less, I have a particular sensitivity to
much broader concept. Diversity refers are earned by people from countries issues involving broadening participa-
to the variety of backgrounds and life other than the U.S. tion because of my life history as a son
experiences of individuals including of deaf parents who were part of the
geographical, cultural, economic, and My Qualifications deaf community. You might not think
other differences, regardless of under- Readers might wonder why I am quali- of deaf people as a minority group but
representation. The computing field fied to edit a column on broadening the construct of oppressed minority
has tremendous diversity. As an ex- participation: I am a white male, not group for the deaf community does fit
ample, more than half of the computer a minority and not disabled. Nonethe- in many ways, as brilliantly described
in Harlan Lane’s book The Mask of Be- U.S. Ph.D. demographics by gender, race and ethnicity, and disability.
nevolence: Disabling the Deaf Commu-
nity. It is an often-overlooked histori-
cal fact that in 1880 the International Computer Science STEM U.S. Population
Congress on Education of the Deaf es- Women 21% 40% 50%
sentially banned sign language from African American 2% 2% 12%
schools for the deaf worldwide in favor Native American 0% 0% 1%
of the oral method, which stressed only Asian 12% 4% 4%
lip-reading and speech. At that time Hispanic 1% 3% 15%
there was no realization that sign lan- White (Non-Hispanic) 29% 42% 74%
guage was a natural language with its Disabled 1% 1% 15%
own temporal/spatial grammar that Non-resident Alien 56% 26% 6%
was efficient and complete in its visual
modality. Those who banned sign lan-
guage were not deaf, but believed they
knew what was best for deaf people by of women and minorities in science, only masks our biases with a cloak of
promoting their integration into the technology, engineering, and math rationalization. Everyone has biases
hearing world. (STEM) fields. depending on their own upbringing
My parents were very successful as Social Justice. An important princi- and circumstances. Acting on those
teachers of deaf children and in most ple in a democratic society is equality, biases consciously or unconsciously
other aspects of life. They were bilin- that is, everyone enjoys the same rights may be discrimination, some of which
gual, fluent in American Sign Lan- and is obligated by the same responsi- could break anti-discrimination laws.
guage and English. They were able to bilities. The vast public education sys- The Project Implicit (https://implicit.
lip-read and their speech was distort- tem in the U.S. attempts to provide as harvard.edu/implicit) is a good starting
ed, but they were highly educated with many children as possible with a basic point to learn about implicit bias and
a remarkable command of English in education to help them become con- to take a test that demonstrates your
written form. Nonetheless, they always tributors to the social well being and own implicit biases.
felt the sting of paternalism when oth- to learn their rights and responsibili- Quality. The strongest reason for
ers treated them as if they couldn’t take ties as citizens. Through laws enacted broadening participation is quality.
care of themselves or were not qualified by legislatures and interpretations of The argument is similar for why diver-
for jobs held by hearing people who laws by courts, the U.S. adheres to the sity is important to quality. William W.
they knew were less qualified. Future principle of equal opportunity whereby Wulf, the former president of the Amer-
columns will explore people with dis- citizens should not be discriminated ican Academy of Engineers, explained
abilities in computing in more depth, against because of gender, minor- this very well: “I believe that engineer-
but in this first column my intent is to ity status, or disability. Preventing dis- ing is a highly creative profession. Re-
provide readers with an understanding crimination does not guarantee pro- search tells us that creativity does not
of background informing my perspec- portional participation, but it does at spring from nothing; it is grounded in
tive on broadening participation. least level the playing field. our life experiences, and hence limited
There is well-documented evidence by those experiences. Lacking diversity
Reasons for Broadening of implicit bias against women and mi- on an engineering team, we limit the
Participation norities in academia.1,2 Those of us in set of solutions that will be considered
There are a number of reasons why computer science are typically highly and we may not find the best, the ele-
broadening participation is important rational; perhaps having the belief gant solution.”3
to the computing field, the most signif- that our reasoning power makes us Better solutions are more likely to
icant of which include numbers, social immune to bias. Our reasoning power emerge if there is a diversity of points of
justice, and quality. view contributing to the solutions. This
Numbers. In spite of several down- is one of the reasons most major com-
turns in the economy since the inven- I distinguish panies try to diversify their work forces:
tion of computers and the dot-com it gives them a competitive advantage.
bust in the early 2000s the demand for “broadening Broadening participation helps our
computer professionals worldwide has participation” field because it brings in more people
continued to grow, sometimes extreme- with a variety of backgrounds, and at
ly rapidly and other times more slowly, from “diversity,” the same time levels the playing field
but always growing. The computing which is a much for those who are traditionally under-
field cannot continue to rely on getting represented.
the vast majority of its high-tech work- broader concept.
ers from a few demographic groups. As Demographics
an example, the America Competes Act It is important to understand the cur-
of 2007 has provisions and authorizes rent circumstances with broadening
spending to help increase the number participation, particularly at the end
of the pipeline when students receive ing. Some alliances partner research
their Ph.D.s. The table here gives some universities with minority-serving in-
approximate percentages for com- The computing field stitutions to get more undergraduates
puter science Ph.D.s, STEM Ph.D.s, cannot continue involved in research. Some alliances are
and the U.S. population. The computer regional, taking advantage of locality
science numbers, except for disabled, to rely on getting to strengthen the alliance, while oth-
come from the 2008 Taulbee Survey the vast majority ers are national, centered around one
(see http://www.cra.org/CRN/articles/ topic such as robotics or students with
may09/taulbee.html), the STEM num- of its high-tech disabilities. Demonstration projects
bers and disabled number for CS come workers from a few are more narrowly focused on develop-
from the 2007 Survey of Earned Doctor- ing specific interventions to enthuse
ates, and the U.S. population numbers demographic groups. and build the capacity of students from
come from the 2000 U.S. Census. All underrepresented groups in the com-
numbers are rounded to the nearest puting field. A new initiative in BPC that
full percent. started this year are the Leveraging, Scal-
As indicated in the table, there is ing, or Adapting (LSA) projects where a
underrepresentation at the Ph.D. level project does not have to be a new inter-
by women, African Americans, Na- puting Alliance (see http://www. vention, but can be an existing interven-
tive Americans, Hispanics, and per- washington.edu/accesscomputing) tion that has been proven for one group
sons with disabilities. There has been based at the University of Washing- and could be applied to another.
a steady growth in the percentage of ton is a primary resource for students
women earning Ph.D.s in computer with disabilities who are interested Conclusion
science from the early 1970s from ap- in computing and for computing I hope this premiere Broadening Par-
proximately 10% to now just over 20%. departments to make themselves ticipation has provided some back-
By contrast, during the same period the more welcoming for such students. ground while suggesting future col-
percentage of women earning Ph.D.s in Nevertheless, there is no organiza- umns. In this spirit, there have been
biology rose from less than 10% to now tion within the major computing some very encouraging developments
just over 50%. organizations (ACM, CRA, and IEEE over the past few years. Frances Allen
Computer Society) that advocates for (2006 recipient) and Barbara Liskov
Broadening Participation Efforts broadening participation for persons (2008 recipient) were the first women
The lack of women in computer science with disabilities. to win the ACM Turing Award after the
at all levels has motivated a number Since 1994, the CRA’s A. Nico Hab- award had been given to 50 men since
of efforts including ACM’s Commit- ermann Award has been awarded to its inception. The inaugural ACM-Info-
tee on Women in Computing (ACM- people who have “made outstanding sys Foundation Award in the Comput-
W), Computer Research Association’s contributions aimed at increasing the ing Sciences was awarded to a woman,
Committee on the Status of Women numbers and/or successes of under- Daphne Koller, in 2007. The Grace Hop-
in Computing Research (CRA-W), the represented members in the comput- per and Tapia conferences are growing
Anita Borg Foundation for Women ing research community.” The Super- and very successful. Broadening par-
and Technology (ABI), and the Nation- computer Conference (SC) is the only ticipation is beginning to appear as
al Center for Women and Information mainstream conference I know of that a theme in mainstream conferences,
Technology (NCWIT). These organiza- includes a section on “Broader Engage- and this column will contribute to call-
tions provide a number of programs ment” that is “aimed at increasing the ing attention to the importance of this
at all levels to promote and support involvement of individuals who have evolving topic in computing.
the inclusion of more women in the been traditionally underrepresented
computing field. The Grace Hopper in the high-performance computing References
Celebration of Women in Computing (HPC) field.” 1. Greenwald, A.G. and Krieger, L.H. Implicit bias:
Scientific foundations. California Law Review 94
brings women in the computing field (2006), 945–967.
together every year. Broadening Participation at the 2. Nosek, B.A. et al. National differences in gender-
science stereotypes predict national sex differences
The Coalition to Diversify Com- National Science Foundation in science and math achievement. In Proceedings
puting (CDC), which is sponsored by In 2006, the National Science Founda- of the National Academy of Sciences 106 (2009),
10593–10597.
ACM, CRA, and IEEE, has the goal to tion initiated a new program called 3. Wulf, W.A. How shall we satisfy the long-term
increase the participation of under- Broadening Participation in Comput- educational needs of engineers? In Proceedings of the
IEEE 88, 4 (2000), 593–596.
represented minorities in computing. ing (BPC) within the Division of Com-
The CDC organizes the Tapia confer- puter and Information Science and En-
Richard E. Ladner (ladner@cs.washington.edu) is a Boeing
ence every two years. gineering (CISE). This program funds a Professor in Computer Science and Engineering at the
The ACM Special Interest Group on small number of alliances and a larger University of Washington, Seattle, WA. He is a recipient
of the 2004 Presidential Award for Excellence in Science,
Accessible Computing (SIGACCESS) number of demonstration projects. All Mathematics, and Engineering Mentoring (PAESMEM), the
has as one of its missions to “educate the projects have the goal of trying to recipient of the 2008 Computing Research Association’s A.
Nico Habermann Award, and a winner of a 2008 Purpose Prize.
the public to support careers for dis- increase the participation and success
abled persons.” The AccessCom- of underrepresented groups in comput- Copyright held by author.
Emerging Markets
Israel’s Technology Industry as
an Economic Growth Engine
How government-industry collaboration can have far-reaching economic influences.
O
V E R T H E PAST40 years, Is-
rael’s economy has trans-
formed from being closed
and poor into one that is
open, developed, and driv-
en forward by a high-tech sector that is
well regarded around the world. Much
of the credit for this can be attributed
to successive Israeli governments for
realizing that a civilian research and
development industry could become
an engine of economic growth, and
then implementing policies to create
it and ensure its expansion. However,
the government’s actions vis-à-vis the
high-tech sector—and by extension
the wider Israeli economy—stand at
a critical juncture. As strong as the
industry is, concerns exist about its
sustainability in the face of the global Microsoft Corporation’s Israel Research and Development Center was inaugurated in 2006.
economic slowdown and a weakening
of the structural components under- programs that offer grants and other ernment achieved its goal of building
pinning its success. The government, assistance to high-tech companies. a robust high-tech sector. From a small
as the achievements of its policies over The state also provides tax breaks and base even as late as 1993, there are now
the last 40 years demonstrate, and par- additional benefits to attract overseas approximately 4,000 high-tech compa-
ticularly the previous 20, has the ability investment in technology firms and nies, one of the highest concentrations
to help surmount these challenges and encourage foreign companies to estab- of such firms outside of Silicon Val-
preserve Israel’s technological edge in lish operations in Israel. ley. These companies employ almost
order to ensure renewed progress in The success of government R&D 250,000 staff, while the segment’s share
the decades to come. policy can be seen in a number of ways. of business sector employment in 2007
On a quantitative basis, Saul Lach of was around 9%. An indicator of the
Policy Success the Hebrew University in Jerusalem strength of the industry is the presence
Israel has implemented numerous has demonstrated that the return to of multinational corporations such as
initiatives and policies to leverage the the economy of state investment in Intel, IBM, Motorola, and Microsoft,
PHOTOGRA PH BY A RDEN PENNELL
technology sector as a vehicle for eco- high-tech ranges from 473% to more which provide experience to their staff
nomic growth, beginning in 1969 with than 1,000%.a More broadly, the gov- in managing on a wide scale, complet-
the establishment of the Office of the ing big projects, marketing, and deal-
Chief Scientist (OCS), which has be- a The research was conducted by the research
ing with large customer accounts.
come the main instrument for foster- firm Applied Economics (http://www.applied. The growth in the high-tech sector
ing innovation and manages several co.il) with Saul Lach’s academic supervision. accelerated after 1993 following the
The Profession of IT
Computing’s Paradigm
Trying to categorize computing as engineering, science, or math is fruitless;
we have our own paradigm.
C
OMPUTING RIGHTFULLY COMES up gramming as the unifying theme. In
in many discussions of uni- recent times, this view has foundered
versity organization and cur- because the field has expanded and the
ricula, high school courses, public understanding of programmer
job qualifications, research has become so narrow (a coder).
funding, innovation, public policy, and The third wave was the NSF-spon-
the future of education. In repeated at- sored Computer Science and Engineer-
tempts to characterize our field in these ing Research Study (COSERS), led by
discussions, our leaders continue to en- Bruce Arden in the mid-1970s. It defined
counter sometimes contentious debate computing as automation of informa-
over whether computing is a field of en- tion processes in engineering, science,
gineering or science. Because it leaves and business. It produced a wonderful
others with a sense that we lack a clear report that explained many exotic as-
focus, that debate negatively influences pects of computing to the layperson.1
policies involving computing. itself. Some founders thought the new However, it did not succeed in reconcil-
There seems to be agreement that field a branch of science, others en- ing the engineering and science views
computing exemplifies engineering and gineering. Because of the sheer chal- of computing.
science, and that neither engineering lenge of building reliable computers,
nor science characterizes computing. networks, and complex software, the Peaceful Coexistence
What then does characterize comput- engineering view dominated for four In the mid-1980s, the ACM Education
ing? In this column, we will discuss decades. In the mid-1980s, the science Board was concerned about the lack of
computing’s unique paradigm and of- view began to assert itself again with a common definition of the field. The
fer it as a way to leave the debilitating the computational science movement, Board charged a task force to investigate;
debate behind. which claimed computation as a new its response was a report Computing as
The word “paradigm” for our pur- sub-paradigm of science, and stimu- a Discipline.4 The central argument of
poses means a belief system and its as- lated more experimental research in the report was that the computing field
sociated practices, defining how a field computing. was a unique combination of the tradi-
sees the world and approaches the solu- Along the way, there were three waves tional paradigms of math, science, and
tions of problems. This is the sense that of attempts to provide a unified view. engineering (see Table 1). Although all
Thomas Kuhn used in his famous book, The first wave was by Alan Perlis,9 Allen three had made substantial contribu-
The Structure of Scientific Revolutions. Newell,8 and Herb Simon,11 who argued tions to the field, no single one told the
Paradigms can contain sub-paradigms: that computing was unique among all whole story. Programming—a practice
thus, engineering divides into electri- sciences and engineering in its study of that crossed all three paradigms—was
cal, mechanical, chemical, civil; science information processes. Simon went so essential but did not fully portray the
divides into physical, life, and social sci- far as to call computing a science of the depth and richness of the field.
ences, which further divide into sepa- artificial. The report in effect argued for the
rate fields of science. The second wave started in the late peaceful coexistence of the engineer-
1960s. It focused on programming, ing, science, and math paradigms. It
Roots of the Debate seen as the art of designing information found a strong core of knowledge that
Whether computing is engineering or processes. Edsger Dijkstra and Donald supports all three paradigms. It called
science is a debate as old as the field Knuth took strong stands favoring pro- on everyone to accept the three and not
try to make one of them more important such as DNA transcription.2,6 The great
than the others. principles framework interprets com-
Around 1997, many of us began to puting through the seven dimensions There is an
think the popular label IT (information of computation, communication, co- interesting
technology) would reconcile these three ordination, recollection, automation,
parts under a single umbrella unique evaluation, and design (see http:// distinction between
to computing.3,7 Time has proved us greatprinciples.org). The relationships computational
wrong. IT now connotes technologi- framework interprets computing as a
cal infrastructure and its financial and dynamic field of many “implementa- expressions and the
commercial applications, but not the tion” and “influencing” interactions.10 normal language of
core technical aspects of computing. There is now a strong argument that
computing is a fourth great domain of engineering, science,
A Computing Paradigm science alongside the physical, life, and and mathematics.
There is something unsatisfying about social sciences.5
thinking of computing as a “blend of These newer frameworks all rec-
three sub-paradigms.” What new para- ognize that the computing field has
digm does the blend produce? expanded dramatically in the past
Recent thinking about this question decade. Computing is no longer just
has produced new insights that, taken about algorithms, data structures, nu- exciting new subjects including Inter-
together, reveal a computing paradigm. merical methods, programming lan- net, Web science, mobile computing,
A hallmark of this thinking has been guages, operating systems, networks, cyberspace protection, user interface
to shift attention from computing ma- databases, graphics, artificial intelli- design, and information visualization.
chines to information processes, in- gence, and software engineering, as it The resulting commercial applications
cluding natural information processes was prior to 1989. It now also includes have spawned new research challenges
in social networking, endlessly evolving
Table 1. Sub-paradigms embedded in computing.
computation, music, video, digital pho-
tography, vision, massive multiplayer
Math Science Engineering online games, user-generated content,
Initiation Characterize objects Observe a possible Create statements
and much more.
of study (definition) recurrence or pattern of about desired system The newer frameworks also recog-
phenomena (hypothesis) actions and responses nize the growing use of the scientific
(requirements)
(experimental) method to understand
Conceptualization Hypothesize possible re- Construct a model that Create formal statements computations. Heuristic algorithms,
lationships among objects explains the observation of system functions and
(theorem) and enables predictions interactions (specifica- distributed data, fused data, digital fo-
(model) tions) rensics, distributed networks, social
Realization Deduce which relation- Perform experiments and Design and implement networks, and automated robotic sys-
ships are true (proof) collect data (validate) prototypes (design) tems, to name a few, are often too com-
Evaluation Interpret results Interpret results Test the prototypes plex for mathematical analysis but yield
Action Act on results (apply) Act on results (predict) Act on results (build) to the scientific method. These scien-
tific approaches reveal that discovery is
as important as construction or design.
Discovery and design are closely linked:
Table 2. The computing paradigm. the behavior of many large designed
systems (such as the Web) is discovered
Computing
by observation; we design simulations
to imitate discovered information pro-
Initiation Determine if the system to be built (or observed) can be
represented by information processes, either finite (terminating) cesses. Moreover, computing has devel-
or infinite (continuing interactive). oped search tools that are helping make
Conceptualization Design (or discover) a computational model (for example, scientific discoveries in many fields.
an algorithm or a set of computational agents) that generates The newer frameworks also recog-
the system’s behaviors.
nize natural information processes in
Realization Implement designed processes in a medium capable of executing
its instructions. Design simulations and models of discovered
many fields including sensing and cog-
processes. Observe behaviors of information processes. nition in living beings, thought process-
Evaluation Test the implementation for logical correctness, consistency es, social interactions, economics, DNA
with hypotheses, performance constraints, and meeting original transcription, immune systems, and
goals. Evolve the realization as needed. quantum systems. Computing concepts
Action Put the results to action in the world. Monitor for continued enable new discoveries and understand-
evaluation.
ings of these natural processes.
The central focus of the comput-
ing paradigm can be summarized as
(often large) accumulation of instruc-
tions. Expressions can be artifacts, such
only a way of thinking, but a system of
practice.
as programs designed and created by
people, or descriptions of natural occur-
rences, such as DNA and DNA transcrip-
Conclusion
The distinctions discussed here offer
tion in biology. Expressions are not only
representational, they are generative:
a distinctive and coherent higher-level
description of what we do, permitting
they create actions when interpreted
(executed) by appropriate machines.
us to better understand and improve
our work and better interact with peo-
Since expressions are not directly ple in other fields. The engineering-
constrained by natural laws, we have science debates present a confusing
evolved various methods that enable us picture that adversely affects policies
to have confidence that the behaviors on innovation, science, and technology,
generated do useful work and do not the flow of funds into various fields for
create unwanted side effects. Some of education and research, the public per-
these methods rely on formal mathe- ception of computing, and the choices
matics to prove that the actions generat- young people make about careers.
ed by an expression meet specifications. We are well aware that the comput-
Many more rely on experiments to vali- ing paradigm statement needs to be
date hypotheses about the behavior of discussed widely. We offer this as an
actions and discover the limits of their opening statement in a very important
reliable operation. and much needed discussion.
Table 2 summarizes the computing
paradigm with this focus. While it con- References
1. Arden, B.W. What Can Be Automated: Computer
tains echoes of engineering, science, Science and Engineering Research Study (COSERS).
and mathematics, it is distinctively dif- MIT Press, 1983.
2. Denning, P. Computing is a natural science. Commun.
ferent because of its central focus on ACM 50, 7 (July 2007), 15–18.
information processes.5 It allows engi- 3. Denning, P. Who are we? Commun. ACM 44, 2 (Feb.
2001), 15–19.
neering and science to be present to- 4. Denning, P. et al. Computing as a discipline. Commun.
gether without having to choose. ACM 32, 1 (Jan. 1989), 9–23.
5. Denning, P. and P.S. Rosenbloom. Computing: The
There is an interesting distinction fourth great domain of science. Commun. ACM 52, 9
between computational expressions (Sept. 2009), 27–29.
6. Freeman, P. Public talk “IT Trends: Impact,
and the normal language of engineer- Expansion, Opportunity,” 4th frame; www.cc.gatech.
ing, science, and mathematics. Engi- edu/staff/f/freeman/Thessaloniki
7. Freeman, P. and Aspray, W. The Supply of Information
neers, scientists, and mathematicians Technology Workers in the United States. Computing
Research Association, 1999.
endeavor to position themselves as out- 8. Newell, A., Perlis, A.J., and Simon, H.A. Computer
side observers of the objects or systems science, letter in Science 157, 3795 (Sept. 1967),
1373–1374.
they build or study. Outside observers 9. Perlis, A.J. The computer in the university. In
are purely representational. Thus, tradi- Computers and the World of the Future, M.
Greenberger, Ed. MIT Press, 1962, 180–219.
tional blueprints, scientific models, and
mathematical models are not execut-
10. Rosenbloom, P.S. A new framework for computer
science and engineering. IEEE Computer (Nov. 2004),
31–36.
able. (However, when combined with
computational systems, they give auto-
11. Simon, H. The Sciences of the Artificial. MIT Press
(1st ed. 1969, 3rd ed. 1996).
12. Wing, J. Computational thinking. Commun. ACM 49, 3
matic fabricators, simulators of mod- (Mar. 2006), 33–35.
els, and mathematical software librar-
ies.) Computational expressions are not Peter J. Denning (pjd@nps.edu) is the director of the
constrained to be outside the systems Cebrowski Institute for Information Innovation and
Superiority at the Naval Postgraduate School in Monterey,
they represent. The possibility of self- CA, and is a past president of ACM.
reference makes for very powerful com- Peter A. Freeman (peter.freeman@mindspring.com) is
putational schemes based on recursive Emeritus Founding Dean and Professor at Georgia Tech
and Former Assistant Director of NSF for CISE.
designs and executions, and also for
very powerful limitations on comput- Copyright held by author.
Kode Vicious
Broken Builds
Frequent broken builds could be symptomatic
of deeper problems within a development project.
is a team- or project-wide problem. pressure. Anyone who checks in code shame them, and have them fix the
The belief of most of the workers on without compiling it first ought to feel build. Now multiply that number by
a project—those tasked with writing embarrassed by such a mistake, and the average hourly wage of each per-
and verifying code and systems—is if not, the other people around them son on the team, and you have an ap-
that project-wide problems need to should strongly encourage them to proximate idea of how much time and
be solved by Mommy (aka the project feel embarrassed. Shame, it turns out, money was wasted by not having peri-
Viewpoint
A “Smart” Cyberinfrastructure
for Research
A view of semantic computing and its role in research.
T
H E W EB H AS emerged as the software infrastructures. Schema and the edges capture a relationship,
largest distributed infor- languages, XML, Entity Data Models, characterized by a predicate and per-
mation repository on the Microformats, RSS, Atom, RDF (see haps other information, between the
planet. Human knowledge http://www.w3.org/RDF/), OWL (see linked data. For example, “Jane listens
is captured on the Web in http://www.w3.org/2007/OWL/), and to Santana every day” is a relation-
various digital forms: Web pages, news other technologies are being used to ship, in which “Jane” (the subject) and
articles, blog posts, digitized books, capture the information in data while “Santana” (the object) are the nodes,
scanned paintings, videos, podcasts, machine learning, entity extraction, “listens to” is the edge (the predicate),
lyrics, speech transcripts, and so forth. neural networks, clustering, and la- and “every day” is an attribute of the
Over the years, services have emerged tent semantics are approaches to ex- edge. Other tuples could add further
to aggregate, index, and enable the tracting information from that data information to the data mesh (for ex-
rapid searching of all this digital data and help reason about it. The field is ample, “Santana is an artist,” “Santa-
but the full meaning of that data may an active area of research and experi- na plays the guitar,” “Santana makes
only be interpretable by humans. In mentation and is still rapidly evolving music,” “Jane met Santana in 1995”
the common case, machines are inca- (see the sidebar “Semantic Comput- and so forth). Semantic Web’s RDF is
pable of understanding or reasoning ing” vs. “Semantic Web”). one, but not the only, technology that
about the vast amounts of data avail- can be used to represent such graphs
able on the Web. They are not able to Data Mesh or knowledge bases. Indeed, Cyc,4 Se-
interpret or infer new information At the center of our discussion is the mantic Networks, WordNet,7 Multi-
from the data and this has been a topic concept of a “data mesh,” a term we Net6 are examples of other such tech-
of active research interest for decades use to refer to the various information nologies/approaches. Scaling to the
within the artificial intelligence com- and knowledge representation tech- same level as the Web still remains a
munity. While the dream of artificial niques/technologies that have been challenge for these approaches.
intelligence—machines capable of developed over the years (see Figure We believe there is an opportunity
human-level reasoning and under- 2). In its simplest form, a data mesh to involve users, who are now equally
standing—may still not be within our looks like a directed graph in which producers as they are consumers of
grasp, we believe semantic technolo- the nodes represent data/informa- information on the Web, and not
gies hold the promise that machines tion captured in well-known formats just the very few experts in producing
will be able to meaningfully process,
combine, and infer information from
the world’s data in the not-too-distant Data Information Knowledge
future (see Figure 1).
The Web ecosystem of simple for-
Current technologies/infrastructure
mats and protocols is an example of
how we can effectively manage, share,
access, and represent large amounts Opportunities for innovation
of data. Companies like Microsoft and
Google are building large-scale servic-
Figure 1. Data, information, knowledge: While we are good at data management at scale (for
es (such as search and cloud services) example, Google, Amazon) we are still far away from supporting information representation
leveraging the existing hardware and and reasoning. Knowledge management at scale is a great opportunity for innovation.
computing vision. We should not only ward a plug-in for Word 2007 (part of
become early adopters of semantic the BioLit project; http://biolit.ucsd.
computing technologies and infra- Natural language edu/) that allows authors to annotate
structure in our research projects but may not always words or sentences with terms from
we should also actively develop and an ontology (for example, Gene Ontol-
evolve them. In Microsoft Research we be adequate ogy; http://www.geneontology.org/).
are taking some first steps toward this to convey the The annotations are stored as part of
vision, as we are investing in projects the Office Open XML (OOXML) repre-
that can demonstrate the benefits of meaning of a word sentation of the document (OOXML
semantic computing technologies in or an expression, has been accepted as an ISO standard.
research. We are therefore attempt- More information can be found at
ing to build an ecosystem of research especially in the http://openxmldeveloper.org/). Tools
tools and services as demonstrations scientific world. and services can now extract the an-
of these ideas and concepts. notations by just opening the OOXML
We focus here on the role of the re- package without human intervention
searcher as an “extreme information and there is not even a need for Word
worker” meaning a technology user to be installed. As a result, the docu-
with expectations and requirements ments will be able to be better catego-
at a scale not yet required by the busi- the best time to capture an author’s rized, indexed, and searched with the
ness community. We believe informa- intentions and to record the meaning author’s intent always closely associ-
tion representation, management, of the words as they are being writ- ated with the text.
and processing tools in combination ten. Natural language may not always The ability to easily annotate terms
with automation technologies will be adequate to convey the meaning from within Word is a first step in pro-
greatly help them in their research. of a word or an expression, especially ducing documents that semantically
We are therefore taking small steps in the scientific world. In many disci- relate to the body of knowledge in a
toward developing semantics-aware plines domain-specific ontologies are domain. In this way, information can
tools and services. Here, we describe therefore being created by experts to easily become part of a data mesh as it
some of the work we are doing in sup- address this issue but they have not so is being generated (see Figure 3). The
porting the scholarly communications far been incorporated with productiv- source code for the plugin is now avail-
life cycle through semantic computing ity tools like Microsoft Office. able as open source (see http://ucsdbi-
technologies. In collaboration with Phil Bourne olit.codeplex.com/) for the community
Semantic Annotations and Metadata and Lynn Fink at the University of to further extend or just use as the ba-
in Word. The authoring stage is perhaps California, San Diego, we worked to- sis for a new generation of semantics-
oriented authoring tools.
Chemistry in Word. We are inves-
tigating, in collaboration with Peter
Murray-Rust, Jim Downing, and Joe
Domain-‐speciĮc
ontology AnnotaƟons
travel
with
the
Townsend from the University of Cam-
document bridge, the introduction of chemistry
Can be
Can
be
used
used
to
improve
drawing functionality into Word docu-
domain-‐speciĮc
discovery
of
domain-‐speci ments (see http://research.microsoft.
informaƟon,
cross-‐linking,
com/en-us/projects/chem4word/).
and
so
forth. Rather than just having images of
Support
Suppport ffor or
aannotaƟons
nnotaƟons chemical structures, we would like to
straight
straight
t i ffrom
rom
w ithin
W
within ord
Word
preserve the chemistry-related seman-
Figure 3. Semantic annotations in Word. tics in a machine-processable man-
ner. For that reason, we are using the
<cml ...> Chemistry Markup Language (CML) in
<molecule ...>
our investigations; instances of CML
<atomArray>
<atom elementType=”C” ... /> would be embedded inside OOXML
<atom elementType=”H” ... /> documents. We believe an ecosystem
... of chemistry-related tools and services
</atomArray>
<bondArray>
can then emerge to enable the auto-
<bond ... /> matic processing of documents, mak-
<bond ... /> ing the authoring process an easy but
... increasingly valuable part of the re-
</bondArray>
</molecule> search life cycle.
</cml> As an example, consider the water
Figure 4. A simple “Chemistry Zone” in a Word document and the CML representation molecule (H2O). In a Word document,
(in pseudo-XML) stored inside the OOXML document. it appears as a series of characters,
A Threat
Analysis
of RFID
Passports
day when your plane touches down at
I T ’S A B EAU TIFU L
the airport. After a long vacation, you feel rejuvenated,
refreshed, and relaxed. When you get home, everything the bank statements, you suddenly
realize that someone has been charg-
is how you left it—the tables, the chairs, even the now- ing large amounts of money to an
moldy sandwich you forgot on the counter. Everything, account in your name from a credit
card company you’ve never heard of.
that is, but a pile of envelopes on the floor that jammed You’ve lost thousands of dollars, and
the door as you tried to swing it open. suddenly you aren’t feeling quite so
You notice a blinking light on your answering relaxed anymore.
How could someone have been
machine and realize you’ve missed dozens of stealing money from you like this while
messages. As you click on the machine and pick up you were away on vacation? The thiev-
ery actually began months before you
the envelopes, you find that most of the messages and even left home. Several months ago,
letters are from debt collectors. Most of the envelopes as you were casually walking through
are stamped “urgent,” and as you sift through the the airport en route to a business meet-
ing in Europe, someone was linger-
pile you can hear the messages from angry creditors ing close behind. As you approached
demanding that you call them immediately. Reading a security agent to have your passport
al data within, as the correct access key ate a new passport, use that passport col that proves knowledge of the pair
would not have been given. Since the to get a U.S. Social Security number of keys and derives a session key. If au-
attacker was merely intercepting the (http://www.ssa.gov/pubs/10002.html), thentication is successful, the passport
communication with an antenna, how- and then create credit card accounts in releases its data contents; otherwise,
ever, he was able to collect all of the your name, with your identity, and run the reader is deemed unauthorized and
data, albeit in an encoded form. Private amok with your finances. the passport refuses read access.”6
Additionally, newer passport cov- this as a series of hurdles that the per-
ers are being lined with materials that petrator must overcome, starting with
block RFID signals from being trans- data capture, moving onto data recov-
mitted when the passport is closed, ery, and finally data reproduction.
exposing the document to attack only
when it is opened and displayed for a Six pieces of Let us first focus on capturing the in-
formation from your passport, since it
security agent. Relatively inexpensive
signal-blocking sleeves (http://www.
information can is at that point in the event chain that
the vulnerabilities of the RFID technol-
rfid-shield.com/products.php) are also be stolen from ogy are exploited. For successful data
available for RFID passports. the RFID chip on retrieval the perpetrator’s antenna
must catch two different interactions:
What Information is Compromised? a U.S. passport: the forward channel, which is the signal
Six pieces of information can be stolen
from the RFID chip on a U.S. passport:
your name, being sent from the RFID reader to the
RFID token; and the backward channel,
your name, nationality, gender, date nationality, gender, which is the data being sent back from
of birth, place of birth, and a digitized
photograph.1 Numerous problems of date of birth, the RFID token to the RFID reader. Lab
demonstrations3 have shown that a
identity theft could arise from some- place of birth, successful eavesdrop (a capture of both
one taking that information, but this
article focuses on the financial risk. and a digitized channels) on an RFID tag can occur at
a distance of one meter with the use of
Banks in the U.S. require that ap-
plicants for credit cards submit their
photograph. an H-field antenna, a radio frequency
receiver, an oscilloscope to monitor the
Social Security numbers to be used for signals, and a computer to store, ana-
background credit checks. Although lyze, and manipulate the data.
the passport RFID tag does not carry In the lab this was done as a proof of
your Social Security number, a perpe- concept, but in the real world a perpe-
trator can use the information it does trator could use smaller, more discrete
contain to obtain your number. hardware. In our airport scenario, the
The Social Security Administra- perpetrator would need only an an-
tion’s Web site (http://www.ssa.gov/ tenna and an amplifier to boost the sig-
pubs/10002.html) requires one of three nal capture, a radio-frequency mixer
proofs of identity for a U.S. citizen to and filter, and a computer to store the
be issued a new Social Security card: a data. The amplifier itself would not
driver’s license, state-issued non-driver even need to be that powerful, since
identity card, or passport. With the data it would need to boost the signal over
stolen from your passport’s RFID chip, only a short distance of three to five
someone could create a copy of the meters. The antenna, mixer, and filter
passport, then use this counterfeit one can be homemade with cheap materi-
to access a real copy of your Social Secu- als or purchased as a set online. Some
rity card. With this card, the perpetra- Web sites (for example, http://www.
tor is free to apply for a real copy of your openpcd.org/openpicc.0.html) con-
credit card, not to mention opening new tain schematics, lists of materials, and
accounts in your name. This puts you steps on how to build your own RFID
at a serious financial risk, all because reader the size of a matchbox. These
someone was able to eavesdrop on your RFID “sniffers” can then be plugged
passport’s RFID communication. into a laptop via a USB port.
Once the perpetrator has success-
Technology Requirements fully eavesdropped on the communica-
To eavesdrop on your passport infor- tion between the RFID token and the
mation, a perpetrator needs hardware RFID reader, the next step is data recov-
to capture the signal as it is being ery. This requires two separate steps.
scanned by a legitimate RFID reader, The first is recovering the actual signal
such as those used by government of- between the RFID chip in the passport
ficials at airports. He or she would then and the RFID reader. This is a signal-
need the time and technical capacity to processing problem, essentially sepa-
decrypt the signal into a usable form. rating the actual signal from the noise
Finally, to reap any real benefits from of the background. Proof-of-concept
the stolen information, the attacker experiments3 have shown that data
must have all the materials necessary recovery is a brute-force problem that
to reproduce a passport. We can view can be solved with current hardware. A
perpetrator would need only to record is not impossible to crack.4 We assume In our airport scenario, a perpetra-
the data passed between the RFID and here that decryption is practical; if it tor would have to cover several costs
receiver on location, and then could is not, then the possibility of these at- before reaching the ultimate goal of
perform the time-consuming signal- tacks is minimized. financial gain. To begin with, there are
processing operations at home. A large After recovering the data, the per- the hardware costs. The combined cost
part of data recovery is extracting the petrator would have everything neces- of the antenna, amplifier, radio mix-
data from the electrical noise of the en- sary to make a new passport with the er, filter, USB connection, and laptop
vironment, which is simplified by tak- captured information. The steps re- would be on the order of $1,000. These
ing a noise profile of the environment. quired for this are beyond the scope of are all fixed costs, and the perpetrator
The same Web sites that provide sche- this article, but since counterfeiting of would presumably amortize these by
matics for readers also provide code passports has been demonstrated and using the hardware to execute numer-
for decoding the data, although the ef- documented, it is enough to say that ous attacks over a period of time.
fectiveness of their programs on new this is feasible. There is also cost associated with
passports has yet to be tested. access to the passport reader. It is rea-
Once the signal has been recov- Costs to the Perpetrator sonable to assume that the perpetra-
ered, it must be interpreted as data. What we have shown so far is that with tor would have to purchase an airline
The difficulty of this step depends the right equipment and skill, a perpe- ticket to enter the area where passports
entirely on whether and how well the trator can intercept the signal between are scanned.
data is encrypted. The encryption key a passport and RFID reader, then forge The cost of being caught must be
is generated from information on the the passport to use for identity theft. factored in. Compared with other tech-
passport—specifically, the name, date The more important question, howev- nologically intensive (for example, on-
of birth, and passport number. There er, is whether the cost of doing this can line) fraudulent attacks, theft of pass-
are reports that this key can be easily be justified by the return. port RFID data might involve greater
cracked (for example, http://www.mo- This question is predicated on the risk because of the physical proxim-
bilemag.com/2006/02/03/global-rfid- assumption that the encryption of the ity required to eavesdrop on the RFID
passport-encryption-standard-cracked- information held in the passport’s communication. The risk-adjusted
in-2-hours/) because the algorithm RFID tag can be broken. While there cost of being caught is quite significant
used to produce the key is predictable. is some evidence this has been true when you consider the prevalence of
An analysis published by the Interna- in the past, stronger encryption could security officers within airports and
tional Association of Cryptologic Re- increase the cost of the attack consid- the severity of the crime.
search indicates that the entropy of the erably, to the point of making it either Presuming that the attacker man-
resulting key is on the order of 52 bits, economically unattractive or techni- ages to escape with the raw data from
which, while something of a challenge, cally impossible. an eavesdropping operation, it still
PHOTOGRA PH BY A LEX GRIM M/ GETT Y IMAGES
EasyPass, a new automated border control system at Frankfurt International Airport, scans passenger biometric data and compares it
to data from the person’s e-passport.
has to be interpreted at home. The nent tag deactivation (“killing”), tem- ity of the attack, the difficulty of ob-
software costs are negligible (open porary tag deactivation (such as using taining the required high-priced blank
source code for this specific function Faraday cages or sleep/wake modes), passport, and the limited return the at-
is available on the Internet) as are the and access-control mechanisms (hash tack is likely to produce.
costs of the processing time. In one locks, pseudonyms, blocker tags). You It seems much more likely that most
example, it took less than an hour to could “kill” the RFID tag (hitting the perpetrators would resort to old-fash-
recover the passport signal, and this chip with a hammer does the trick), ioned means of stealing your passport
process can be automated.3 Although since, according to the State Depart- information, by stealing your physical
we have not verified this (since verifi- ment’s Web site, if the chip fails, the passport itself. We recommend that it
cation would require snooping a pass- passport remains valid; however, most is more important to be careful about
port in a noisy environment such as “killing” methods leave evidence of keeping your physical passport safely
an airport), the approach presented intentional damage. The other solu- in hand than to be wary of perpetrators
seemed plausible. tions would not prevent the intercep- lurking behind you in line at the air-
Jeroen van Beek of the University of tion of communications between tag port attempting to exploit the RFID tag
Amsterdam managed to forge a pass- and authorized reader, particularly at in your passport.
port RFID chip for $120.5 This cost is an airport.
not always necessary because a U.S. More effective countermeasures re-
passport remains valid even if it is not quire changes to current government Related articles
fitted with an RFID chip or if the chip policy. The government can take steps on queue.acm.org
has failed. (Since all passports issued to improve the security and privacy of Communications Surveillance:
after 2007 have an embedded RFID passports. The basic access-control Privacy and Security at Risk
chip and are valid for a maximum of 10 system of a U.S passport encrypts Whitfield Diffie and Susan Landau
http://queue.acm.org/detail.cfm?id=1613130
years, the ability to use a passport with- communication between it and the
out such a chip will end after 2017.) RFID reader with a key generated from Four Billion Little Brothers? Privacy, mobile
phones, and ubiquitous data collection
Rather, the most significant cost is information written on the passport; Katie Shilton
in obtaining or producing a realistic- the key containing the holder’s infor- http://queue.acm.org/detail.cfm?id=1597790
looking passport in which to print the mation is susceptible to brute-force
The Magic of RFID
information. The cost of a blank pass- attacks, however, since it has low en- Roy Want
port book is difficult to determine, but tropy.4 One countermeasure would be http://queue.acm.org/detail.cfm?id=1035619
there are some indications that it is to add a 128-bit secret, printed on the
not an insubstantial part of the cost of passport and unique to each passport, References
this form of identity theft. In 2008, for to the key derivation algorithm. 1. Broache, A. RFID passports arrive for
Americans. CNET News (Aug.14, 2006); http://
example, 3,000 blank U.K. passports The interception of communica- news.cnet.com/RFID-passports-arrive-for-
were stolen, and officials valued each tions between RFID tag and reader is Americans/2100-1028_3-6105534.html.
2. Claburn, T. Identity thieves face pay cut. Information
one at approximately $3,000. possible because no material capable Week (Feb. 11, 2009); http://www.informationweek.
com/news/security/privacy/showArticle.
Estimating the revenues that could of blocking RF signals surrounds the jhtml?articleID=213403976.
be generated also requires some in- passport-control area. Thus, another 3. Hancke, G. Eavesdropping attacks on high-frequency
RFID tokens. RFIDBlog (July 11, 2008); http://www.
ference. In the U.S., the mean fraud countermeasure would be to install rfidblog.org.uk/Hancke-RFIDSec2008-Talk.pdf.
amount per victim for identity theft-re- an enclosure to block RFID transmis- 4. Juels, A., Molnar, D., Wagner, D. Security and privacy
issues using e-passports. International Association
lated crimes in 2008 was $4,849.2 The sion outside of the immediate area. In- of Cryptologic Research Cryptology, ePrint Archive;
potential revenue from the passport creased security around the passport- http://eprint.iacr.org/2005/095.pdf.
5. Timmer, J. Faking passport RFID chips for $120.
identity theft example, however, could control area could also minimize the Ars Technica. (Aug. 7, 2008); http://arstechnica.com/
conceivably be higher because of the possibility of intrusion on the commu- security/news/2008/08/faking-passport-rfid-chips-
for-120.ars.
relative ease with which a passport nication between tag and reader. 6. U.S. Department of State. The U.S. Electronic
can be used to open new accounts and Passport Frequently Asked Questions. (Feb. 27, 2009);
http://travel.state.gov/passport/eppt/eppt_2788.
prove identity, in comparison with the The Final Analysis html#Twelve.
most common current forms of fraud Having looked at the potential attack,
using stolen credit cards, checks, or the costs of that attack, and the re- Alan Ramos graduated from Harvard University in June
2009 and is an independent media consultant.
mail. Nevertheless, comparing this fig- turns, we can now ask how concerned
ure to the $3,000 cost of a blank pass- we should be about such an exploit. Doug Lloyd graduated from Harvard University in
June 2009 and is starting law school at Northeastern
port (which is just one of the many Should you really be worried as you University, Evanston, IL.
costs of creating a fake passport) re- walk through the airport that someone
Katherine O’Leary, William Scott, and Weina Scott are
veals that the operation may not be as behind you might be stripping you of undergraduates at Harvard University, Cambridge, MA.
profitable as one might have thought. your passport information in a grand
Jim Waldo is Professor of the Practice at Harvard
scheme to rob you? University, Cambridge, MA, where he teaches distributed
Countermeasures The technical hurdles are surmount- computing and topics in the intersection of policy and
technology in the department of computer science. He
A number of countermeasures have able, at least in proof-of-concept dem- is also a Distinguished Engineer with Sun Microsystems
been suggested to protect against onstrations. It is possible that such an Laboratories, where he investigates next-generation large-
scale distributed systems.
RFID privacy risks (not specific to the attack could occur, but this possibility
passport example), including perma- must be balanced against the complex- © 2009 ACM 0001-0782/09/1200 $10.00
What
DNS
Is Not
A DOMAIN NAME SYSTEM (DNS) is a hierarchical,
distributed, autonomous, reliable database. The first and
only of its kind, it offers real-time performance levels to
a global audience with global contributors. Every TCP/IP
traffic flow including every Web page view begins with at
least one DNS transaction. DNS is, in a word, glorious.
lie was to treat DNS lookups as map- if things don’t go well. That DNS system
ping requests. Content distribution performance and stability must pay the
networks (CDNs), such as Akamai, and price for such liability shielding is at
Web optimizer products, such as Cisco best unfortunate. Given a CDN still re-
Distributed Director, treat incoming quires supernodes that will hear many
DNS lookups as opportunities to direct out-of-region requests, a gimmick-free
the activities of Web browsers. Using approach here would be to answer DNS
the IP source address of a DNS request, truthfully and let existing pseudoran-
these products and services try to guess dom distribution mechanisms do their
the proximity of the requester to each of work. Noting that there is no patent
many replicated content servers. Based on the existing pseudorandomization
on the measured load of each content technologies and that nobody ever got
server’s system and network, and on an fired for buying a CDN, we can expect
estimate of each content server’s prox- to see more content distributed this
imity to that requester, a DNS response way in the decades to come.
is crafted to direct that requester to the
closest or best content server for that NXDOMAIN Remapping
URI domain. Fairly often, as in millions of times per
Problems abound from this ap- second worldwide, somebody looks up
proach, but none affects the CDN op- a domain name in DNS that isn’t there.
erator’s revenue. First and foremost it Maybe this is a user at a Web browser
is necessary to defeat or severely limit making a typographical error, or may-
caching and reuse of this policy-based be there’s a broken link on a Web site,
data (“DNS lies”). Caching and reuse, or maybe a hardware or software error
which once were considered essential is causing nonexistent names to go
to the performance and scalability of into DNS requests. One way or another,
DNS, would allow a policy-based re- the answer is generally supposed to
sponse intended for requester A also be NXDOMAIN (sometimes written as
to be seen by requester B, which might RCODE=3). These negative answers are
not otherwise receive the same an- cacheable, as is any other kind of DNS
swer—for example, when server loads information, since DNS is designed to
have changed and there’s a new bal- express truth, not policy. A network ap-
ance. The effects of this noncaching plication (perhaps a Web browser, or
are a higher DNS request rate (perhaps mail server, or indeed anything at all
leading to higher revenue for CDNs that that uses TCP/IP flows to do its busi-
charge by the transaction) and more ness) that gets back one of these nega-
network load for access-side networks tive responses is supposed to treat it as Author Paul Vixie, noted by Wired magazine
and a slightly higher floor for average as “the godfather of DNS,” has been solving
an error and reject its own underlying DNS errors and mysteries for over 20 years.
transaction time. work item that led to this lookup. For a
Furthermore, it has never been Web browser, rejection takes the form
wise to assume that a DNS request’s of an “error page.” For a mail server, tion knows how to handle, if you ask for
IP source address gives any hint of an rejection takes the place of “bounced a name that does not exist, you’ll get a
end-system Web browser’s network lo- email.” Every TCP/IP application, large positive (deceptive; false; lying) answer
cation. This is because DNS requests or small, new or old, knows how to cope that your application also knows how
heard by a CDN come from recursive with NXDOMAIN. to handle.
DNS servers as a result of cache misses; The Web has changed the rules. For example, if I ask my own recur-
they do not come from end systems Though the Web is young—and though sive name server for a name that does
themselves. Some ISPs regionalize the Internet was here before the Web not exist, it will tell me NXDOMAIN. If
their recursive name servers, allowing and will be here after the Web and is I ask OpenDNS’s recursive name server
CDNs to encode rules improving the much larger than the Web—the fact for a name that does not exist, it will
quality of their estimates. Many recur- remains that the Web is what end us- send me a NOERROR response with an
sive name servers are per-country or ers are looking at. Advertisers have a answer pointing at an advertising serv-
per-continent or even per-hemisphere, whole language to describe the value er. Note that I’m using OpenDNS as a
however, so it’s always necessary for a of end users, with words such as “im- convenient example; it did not invent
CDN to deploy well-connected super- pressions,” “click-throughs,” and this technique. Indeed, Nominum and
nodes, and these always end up hear- “eyeballs.” Why on earth, these adver- other DNS vendors now sell an add-on
ing a lot of out-of-region requests. tisers ask, would you ever send back to their recursive name service prod-
The primary benefit of a CDN is the an NXDOMAIN if an impression was ucts to allow any ISP in the world to do
same as gimmick-free outsourcing: it possible? So it is, increasingly, that in this, and a growing number of ISPs are
gives a content owner somebody to sue place of the NXDOMAIN your applica- doing it. Why so many? The answer is
simply whoever remaps these NXDO- advertising server. The outcry from the MJHER.GOOGLE.COM, and the result-
MAIN responses gets the impression community (including your humble ing NXDOMAIN response is remapped
revenue. There are unverified claims narrator) was loud and long, and before into a positive answer to some advertis-
that some ISPs are blocking access to ICANN had a chance to file a lawsuit to ing server, then you’re going to send
OpenDNS and/or all non-ISP name stop this nonsense, many people had your Google.com cookie to that adver-
servers in order to force their custom- patched their recursive name servers to tising server when you send your HTTP
ers to use the ISP’s own name server. remap any response from a .COM name GET request there. Not such a bad
I say unverified, but I find the claims server that was not a delegation (for ex- thing for a Google.com cookie, but a
credible—ISPs have wafer-thin mar- ample, telling how to find the Google. real problem for a BANKOFAMERICA.
gins and if they see this kind of manna com name servers) back into an NXDO- COM cookie. (Thanks to Dan Kaminsky
going out the door, they can’t just let it MAIN. Some ISPs put logic into their for telling me about the “same origin
happen. policy-based routers to turn SiteFinder trust model” problem.)
To demonstrate the extreme desire responses into pointers to the ISP’s Remapping could also cause email
to capture this revenue, a true story: A own advertising server instead. to be captured if a mail exchanger
few years ago VeriSign, which operates (MX) request is captured in this way.
the .COM domain under contract to Damage Control Many NXDOMAIN remappers try to
ICANN (Internet Corporation for As- NXDOMAIN wasn’t designed to be a avoid this by triggering only on A
signed Names and Numbers), added a revenue hook—many applications de- (address) requests, but to make this
PHOTOGRA PH BY J OHN KEATLEY
wild card to the top of the .COM zone pend on accurate error signals from work they have to turn off caching,
(*.COM) so that its authoritative name DNS. For example, consider the “same since NXDOMAINs are not type spe-
servers would no longer generate NX- origin trust model” used for Web cific and since an SMTP initiator will
DOMAIN responses. Instead they cookies. If you’re holding a cookie for fall back to type=A if it gets no answer
generated responses containing the Google.com and you can be fooled into from type=MX. Similar protections (de-
address of SiteFinder’s Web site—an following a link to KJHSDFKJHSKJH- signed to keep lawsuits away while still
attracting revenue) include the idea of that as with any other kind of informa- and complexity, here’s how it’s sup-
triggering the remapping logic only if tion, spam opt-out is not as good for posed to work and how it may help cur-
the query domain begins with WWW.— the economy as opt-in, it’s valuable to tail the current market in DNS lies.
but as far as I know there are a lot of ty- the debate that this IETF draft’s au- In DNS, data producers are the au-
pographical errors beginning WW., or thors have said that Web cookies aren’t thoritative name servers, each of which
ending with .CM, so I do not hold out a good enough. Others may disagree but is the delegated authority for one or
lot of hope for it long term. Too much at least this point is now on the table. more zones. For today, think of a DNS
money is involved, and nobody wants This document also talks about “legally zone as everything at or below a certain
to leave it on the table (where, in this mandated” DNS redirection, which is name, so, for example, www.google.
case, it belongs). exactly the nightmare it sounds like it is com is in the Google.com zone. DNS-
and that we can all hope becomes a his- SEC allows these zones to be signed
Standard Bad Practices torical curiosity as rapidly as possible. and verified using public-key cryptog-
There is at the time of this writing an The absolutely best part of this IETF raphy. The private (signing) key is used
IETF draft (think: proto-RFC) on the draft is Section 10—DNSSEC Consid- by the editor of the zone to generate
recommended configuration and use erations—that ends as follows: “So the signature records for each set of real re-
of DNS redirect by service providers only case where DNS security exten- cords. The public key is used by recur-
(http://tools.ietf.org/html/draft-livin- sions cause problems for DNS Redirect sive name servers to verify that the data
good-dns-redirect-00). The goal of this is with a validating stub resolver. This they receive was signed by the holder of
document is to present some rules for case doesn’t have widespread deploy- the corresponding private key. Public
how DNS lies should be delivered in ment now and could be mitigated by (verification) keys are published using
order to give all the vendors and opera- using trust anchor, configured by the DNS itself, by including each zone’s
tors in this growing market a common applicable ISP or DNS ASP, that could key in the zone’s parent zone—so the
frame of service. Some Luddites may be used to sign the redirected answers. public key for the Google.com zone is
feel that the “standard best practice” As noted above in Section 9.7, such im- published in the COM zone and so on.
in this area is simply not to do it at all, proper redirection of valid responses I’m deliberately skipping a long and
but this being unrealistic, we now face may also cause DNSSEC trust verifica- unpleasant story about where the pub-
standards action. As a standard feature tion problems. lic key for COM is supposed to be pub-
of DNS technology we can expect a day lished, since it’s not germane to this
to come when all DNS services are de- A Rescue Being Thought Of article.
livered this way and our kids think of Fifteen years ago a bunch of ivory tower In theory, an end-system owner who
end-to-end DNS the way they think of theoreticians got together at IETF and does not like being lied to can work co-
eight-track tapes. said, “Let’s secure DNS.” The threat operatively with zone editors who don’t
This document makes a substantial model has evolved over time, and now like their zones getting lied about if
contribution to the debate around this this set of protocol enhancements each of them deploys DNSSEC. An ap-
feature area by suggesting that opt-out (DNSSEC) is more or less ready for de- plication that is supposed to receive an
for this service should be a network ployment and more or less allows for NXDOMAIN but that today receives a
layer attribute (in other words, asso- the possibility that DNS liars will be pointer to an advertising server would
ciated with one’s Ethernet [MAC] ad- caught and ignored. Noting that DNS- in a DNSSEC world receive a “signa-
dress or equipment port number) and SEC has taken too long and is a com- ture not present” error. This would be
not a transport layer attribute. Noting mittee-based horror in its inelegance an error because DNSSEC has a way
to inform a validator that a signature
should have been present. Note that in
the vast majority of cases zone editors
don’t care whether their zones are be-
ing lied about, and, therefore, DNSSEC
will remain silent most of the time.
Consider also that this was not the
original DNSSEC threat model; we re-
ally thought we had to stop on-the-wire
corruption such as that discovered by
Dan Kaminsky in 2008, and the idea of
stopping in-the-middlebox corruption
such as NXDOMAIN remapping really
is just gravy.
DNSSEC will complicate life for CDN
providers using Stupid DNS Tricks, but
it won’t end that war since it’s still pos-
sible to sign every policy-based answer
Looking for CACM? Should an inquiry inadvertently ask for cacm.com rather than cacm.org, and keep all the answers and signa-
the response will be redirected to this advertising scene as enabled by NXDOMAIN remapping. tures available, and still send different
Maximizing
A typical AMP consists of several fast
and powerful cores (high clock frequen-
cy, complex out-of-order pipeline, and
high power consumption) and a large
number of slower low-power cores (low
Power
clock frequency, simple pipeline, and
low power consumption). Complex and
powerful cores are good for running
single-threaded sequential applications
Efficiency
because these applications cannot ac-
celerate their performance by spread-
ing the computation across multiple
simple cores. Abundant simple cores,
energy trade-off). Specialization enables voltage and frequency scaling facili- AMPs as a result. To that end, we provide
maximizing the overall efficiency of the ties available on most modern CPUs) several examples demonstrating how to
system and as a result delivers better makes the CPU consume less power employ specialization on AMP systems
performance per watt and per area. and makes the system asymmetric. in order to maximize performance. One
Although single ISA AMP systems In that case it is crucial to understand area that will be of particular impor-
are not yet being built, much of the lit- how to get the maximum performance tance is the design of scheduling algo-
rithms for operating systems that wish plications, there is a hybrid type, where the simple-core processor. Since using
to take full advantage of AMPs. We also an application might have phases of additional threads results in a propor-
discuss our experience in investigating highly parallel execution intermixed tional performance improvement in
the design of such algorithms. We dis- with sequential phases. this application, we get twice as much
cuss a few surprising findings that we These two types of applications performance running on a simple-core
have discovered about the implemen- require different types of processing processor as on a complex-core proces-
tation of these scheduling strategies, cores to achieve the best trade-off in sor. Recalling that these two processors
which we think will be important to performance and energy consumption. use the same power budget, we achieve
those who are developing or adapting Suppose we have a scalable parallel ap- twice as much performance per watt.
an operating system for this upcoming plication with a choice of running it on Contrast this to running a sequen-
class of processor and platform. a processor either with a few complex tial application, which cannot increase
and powerful cores or with many simple its performance by using additional
Specialization on AMPs low-power cores. For example, suppose threads. Therefore, using a single
Efficiency of AMP systems could be we have a processor with four complex thread, it will run twice as slow on a
improved using two kinds of special- and powerful cores and another area- simple-core processor than on a com-
ization: the first caters to diversity in equivalent and power-budget-equiva- plex-core processor, meaning we get
thread-level parallelism; the second lent processor consisting of 16 simple/ twice as much performance per watt
caters to microarchitectural diversity of low-power cores. Suppose further that running on the complex-core system.
the workload. each simple core delivers roughly half An experienced reader will observe
Catering to diversity in thread-level the performance of one complex core. that power consumption on a simple-
parallelism. Diversity in thread-level (The numbers to estimate the conver- core system for this single-application
parallelism refers to the two broad cat- sion ratios of performance and power in workload could be reduced by turning
egories into which applications can be complex vs. simple cores were obtained off unused cores. Unfortunately, it is
classified: scalable parallel applica- from Hill and Marty.4) We configure the not always possible to turn off unused
tions and sequential applications. Scal- number of threads in the application cores completely, especially if they are
able parallel applications use multiple to equal the number of cores, which is located in the same power domain as
threads of execution, and increasing a standard practice for compute-inten- the active cores. Furthermore, an op-
the number of threads typically leads sive applications. If we run this paral- erating-system power manager may be
to reduced execution time or increased lel application on the processor with configured to avoid putting the unused
amount of work performed in a unit complex cores, then each thread will cores in a deep sleep state, because
of time. Sequential applications, on run roughly twice as fast as the thread bringing the cores up from this state
the other hand, typically use only one running on the processor with simple takes time. Thus, if a new application
or a small number of threads and it is cores (assuming that threads are CPU- begins running or if the operating sys-
difficult to structure the computation intensive and that synchronization and tem needs a core for execution, then ad-
such that it runs efficiently in a multi- other overhead is negligible), but we ditional latency will be incurred while
threaded environment. In addition to can use only four threads on the com- the dormant core is being brought up
purely parallel or purely sequential ap- plex-core processor vs. 16 threads on in the active power state.
This example demonstrates that ap-
Figure 1. Relative speedup experienced by applications from the SPEC CPU2000 plications with different levels of paral-
benchmark suite from running on a fast core (2.3GHz) vs. a slow core (1.15GHz) of an
emulated AMP system. The maximum achievable speedup is a factor of 2. The more
lelism require different types of cores to
memory-intensive the application is the less speedup it experiences. More details on the achieve the optimal performance-per-
experimental setup can be found in Shelepov.11 watt ratio. AMP systems offer the poten-
tial to resolve this dilemma by providing
the cores of both types. Another advan-
2.00 tage of having both “fast” and “slow”
cores in the system is that the fast ones
can be used to accelerate sequential
a 2.3GHz core vs. 1.15GHz core
1.75
phases of parallel applications, mitigat-
Speedup factor on
applu
apsi
art
bzip
crafty
eon
equake
facerec
fma3d
gap
gcc
gzip
lucas
mcf
mesa
mgrid
parser
perlb…
sixtrack
swim
twolf
vortex
vpr
vupw…
a single processor
fornia, San Diego and HP demonstrated
locality of memory accesses. As a result that AMP systems can offer up to 63%
they rarely access the main memory and
thus rarely stall the processor. We refer
enables optimizing better performance than can an SMP
that is comparable in area and power,
to these programs as CPU-intensive. performance per provided that the operating system em-
At the other extreme are programs
that use the CPU pipeline very ineffi-
watt for a wider ploys a scheduling policy that caters to
the microarchitectural diversity of the
ciently. They typically have a high pro- range of workloads. workload.6
cessor cache-miss rate and thus stall
the CPU pipeline, because they have to Having cores of Asymmetry-Aware Scheduling
wait while their data is being fetched different types Employing specialization is the key to
from main memory. We refer to these
programs as memory-intensive . (Note on an AMP enables realizing the potential of AMP systems.
Specialization on AMP systems will not
that this is not the same as an I/O-
bound application, which often relin-
us to employ be delivered by the hardware; it is up
to the software to employ asymmetry-
quishes the CPU when it must perform specialization. aware scheduling policies that tailor
device I/O. A memory-intensive applica- asymmetric cores to the instruction
tion might run on the CPU 100% of its streams that use them most efficiently.
allotted time, but it would use the CPU A thread scheduler must be aware of the
inefficiently.) asymmetric properties of the system
CPU-intensive programs use the and assign threads to cores in consid-
hardware of fast cores very efficiently; eration of the characteristics of both.
thus, they derive relatively large ben- In this section we report on our experi-
efits from running on fast cores relative ence in designing and implementing
to slow cores. Memory-intensive appli- such asymmetry-aware scheduling al-
cations, on the other hand, derive rela- gorithms in a real operating system. We
tively little benefit from running on fast first describe an algorithm that caters
cores. Figure 1 shows some example to diversity in thread-level parallelism
speedup ratios of applications in the and then an algorithm that caters to di-
SPEC CPU2000 suite on an emulated versity in the workload’s microarchitec-
AMP system. An SMP was used to emu- tural properties.
late this AMP system using dynamic A Scheduler Catering to Diversity in
frequency scaling. The fast core was Thread-Level Parallelism. The idea be-
emulated by running a core at 2.3GHz; hind our parallelism-aware (PA) sched-
the slow core was emulated by using the uler is simple: it assigns threads running
frequency of 1.15GHz. Note that some sequential applications or sequential
applications experience a 2× speedup, phases of parallel applications to run on
which is proportional to the differ- fast cores and threads running highly
ence in the CPU frequency between scalable parallel code to run on slow
the two processors. These are the CPU- cores. The following example demon-
intensive applications that have a high strates that the PA scheduling policy can
utilization of the processor’s pipeline achieve a much better system efficiency
functional units. Other applications than an asymmetry-unaware policy. We
experience only a fraction of the achiev- emphasize that the goal in using the PA
able speedup. These are the memory-in- policy is to maximize systemwide effi-
tensive applications that often stall the ciency, not to improve performance of
CPU as they wait for data to arrive from particular applications. As a result this
the main memory, so increasing the policy will be inherently unfair: some
frequency of the CPU does not directly threads will have a higher priority than
translate into better performance for others in running on fast cores. Impli-
them. For example, a memory-intensive cations of a policy that equally shares
application equake speeds up by only fast cores among all threads are demon-
25% when running on the fast core. strated in our earlier study.9
Consider an asymmetric processor we run a workload of one sequential cores among threads, each thread will
with one fast core and nine slow cores, application and one parallel applica- run on the fast core 10% of the time and
where the fast core delivers approxi- tion, and the parallel application has on the slow core 90% of the time. (Note
mately twice as much single-threaded nine threads. Under a naïve scheduling that existing operating-system schedul-
performance as the slow core. Let’s say policy that equally shares fast and slow ers would not share complex and simple
cores equally. Distribution of time on
Figure 2. An illustration of how a PA scheduler would accelerate a parallel application different core types would be arbitrary.
limited by a sequential bottleneck on an AMP processor.
We assume a policy that shares cores
equally to simplify the example.) To sim-
Sequential phase runs Sequential phase runs
on a SLOW core on a FAST core
plify comparison of different schedul-
ing policies, we use as our performance
Parallel phase
Parallel phase
measure the overall workload speedup
relative to running all threads on slow
Completion time
Completion time
cores the entire time. Under this naïve
policy, each thread will speed up by 1.1×
Sequential
relative to running on a slow core (to
phase work this out, consider that each thread
Sequential phase
RNA
wupwise
applu
swim
swaptions
TPC-C
FFTW
bodytrack
BLAST
40%
to 25% performance improvement to
30% that application (see Figure 2).
Figure 3 shows the performance of a
20% number of parallel applications on an
emulated AMP system with our imple-
10% mentation of a PA scheduler in OpenSo-
laris relative to the default asymmetry-
0%
agnostic scheduler in that operating
art ammp MG FT semphy system. To emulate AMP we use a real
multicore system (AMD Opteron with
16 cores), and we emulate fast cores by
using a high clock frequency (2.3GHz) In one scenario, an application might necks where one thread executes the
and slow cores by using a low frequency be susceptible to an external scalability code in a critical section while other
(1.15GHz). The implementation of the bottleneck—for example, as a result of threads wait. When threads wait they
algorithm and the experimental plat- memory bandwidth contention. In this may either block, relinquishing the
form are described in more detail in case the system memory bus is saturat- CPU, or busy-wait, spinning on the CPU
a previous work.10 In this experiment ed, and using additional threads does in a tight loop. If threads block, then
we use four fast and 12 slow cores. not speed up the application because the runnable thread count is reduced
The applications used in Figure 3 are those threads do not contribute to use- and any such reduction is visible to the
drawn from several benchmark suites, ful computation. A sensible way to solve operating system; but if threads busy-
such as SPEC OpenMP 2001, PARSEC, this problem is to reduce the number of wait, sequential phases might be hid-
MineBench, and NAS. RNA is a bioin- threads used in an application to the den from the operating system.
formatics application performing RNA point where the application operates Whether the application uses block-
sequence matching. at its peak efficiency. Essentially, this ing or busy-waiting depends on the
The figure shows a variety of speedup boils down to configuring the number implementation of the synchronization
values. Applications with significant se- of threads properly in a parallel appli- primitives, which are used to construct
quential phases (40%–60%) experience cation. Suleman et al. describe a tech- critical sections or barriers. Busy-waiting
a performance improvement of up to nique called feedback-driven thread- makes sense on a multiprocessor when
26% relative to an asymmetry-unaware ing, which allows you to dynamically the wait times are expected to be short.
scheduler. Applications with small se- determine the optimal thread count for Blocking a thread is an expensive opera-
quential phases (wupwise, for example) parallel applications.12 tion that should be avoided during short
experience no speedup from the PA pol- In another scenario, an applica- waiting periods. If the wait time is long,
icy, because they do not stand to benefit tion might be limited by internal scal- however, blocking is usually preferred
from acceleration of sequential phases ability bottlenecks: for example, there so as to avoid wasting CPU resources.
on fast cores. might be a load imbalance where some One of the most popular strategies used
Here, we discuss two main challeng- threads do more work than others or in synchronization libraries is the adap-
es involved in delivering the benefits
of the PA scheduling policy to applica- Figure 5. Two configurations of an AMP system. Large squares represent memory domains
with one or more cores and a last-level cache (LLC) inside the domain. “Fast” cores are
tions: effectively detecting sequential denoted by large red boxes, “slow” cores are denoted by small blue boxes.
and parallel phases and avoiding per-
formance overhead that may result
from cross-core migrations.
Detecting sequential and parallel
phases. The simplest way to detect par- LLC LLC LLC LLC
allel and sequential phases in an ap-
plication is to use the runnable thread
count as a heuristic. If an application
uses a large number of threads, then its
runnable thread count will be high, and LLC LLC LLC LLC
this application would be in a parallel
phase. Conversely, an application with
(a) (b)
a single runnable thread would be in a
sequential phase. The great property
of the runnable thread count is that in
Figure 6. Performance overhead relative to the default scheduler on a migration-unfriendly
modern multithreading environments there might
topology (likebe synchronization
in Figure bottle- tive mode,
5a) and on a migration-friendly where
topology (like a thread5b,busy-waits
in Figure but with
it is visible to the operating system, be- three slow cores in each memory domain). Lower numbers denote higher overhead.
cause these systems map application-
level threads to kernel-level threads. Migration-unfriendly topology Migration-friendly topology
Therefore, by monitoring the runnable
Speedup over Default Scheduler
RNA
wupwise
applu
swim
swaptions
TPC-C
FFTW
bodytrack
BLAST
for a while and then blocks. On an AMP sequential phases and accelerate them fortunately they can be quite expensive.
system, using the right synchronization on the fast core of the AMP. The AMP shown in Figure 5a consists of
waiting mode is crucially important. An alternative to using the adaptive several memory domains, as is usually
If busy-waiting is used, a PA scheduler mode would be to implement a new the case with modern multicore proces-
would not be able to detect and acceler- synchronization mode where the syn- sors. A memory domain is defined to
ate the bottleneck serial phases. chronization primitive explicitly noti- contain cores that share an LLC (last-
Figure 4 shows the performance of fies the scheduler when a thread begins level cache). LLC is the last “line of de-
selected OpenMP applications that to spin.10 Using this waiting mode will fense” on the frontier between the CPU
could be configured to use either the further ensure that spinning threads and the main memory. Thus, if the re-
adaptive or the busy-wait mode in the do not waste the resources of fast cores. quired data is not in the LLC, then the
synchronization library. We show the When making changes to the synchro- processor has to fetch it from the main
performance under the PA scheduler nization library is not an option, how- memory, which takes hundreds of CPU
relative to the default OpenSolaris ever, using adaptive synchronization cycles and slows down the computa-
scheduler. We use the same emulated mode will do the job. tion considerably. In contrast, fetching
AMP setup as described for Figure 3, Avoiding the overhead. A more diffi- data from an LLC takes only a few tens
but in this case we configure the system cult challenge in implementing PA or of processor cycles. Therefore, we want
with one fast core and 12 slow cores. other asymmetry-aware algorithms is to minimize the number of accesses to
For each application, we show the per- to avoid the overhead associated with the main memory and try to satisfy data
formance under the busy-wait and the migrating threads across the cores. requests from an LLC or other CPU
adaptive modes. Any asymmetry-aware algorithm relies caches as frequently as possible.
As the figure shows, the PA scheduler on cross-core migrations to deliver the In Figure 5a, the fast core is located
can deliver significant performance im- benefits of its policy. For example, the in a different memory domain from
provements (up to 40%) for applications PA algorithm must migrate a thread the slow cores, so every time the sched-
with large sequential phases but only if from a slow core to a fast core if it de- uler migrates a thread to the fast core,
sequential phases are exposed to the tects that the thread is executing a se- the thread loses the data accumulated
scheduler via the adaptive synchroniza- quential phase. in the LLC of the slow core’s memory
tion mode. When the busy-wait mode is Migrations are an essential tool of domain and must fetch the data from
used, the scheduler is unable to detect asymmetry-aware algorithms, but un- the main memory. (Depending on the
implementation of the processor, the
Figure 7. Process involved in modeling relative speedup. thread might have to fetch the data
from its old LLC, not from memory,
Obtain memory— but that is still more expensive than
reuse profile fetching it from the LLC in its current
Estimate relative Estimate LLC
memory domain.) As we will show
speedup miss rate later, this can cause significant perfor-
Modeling
relative
mance overhead.
speedup Consider now Figure 5b, which de-
picts a different AMP system where
each fast core is located in the same
Estimate performance at Estimate % of time memory domain as several slow cores.
different frequencies stalled on memory
This architecture makes it easier for the
scheduler to avoid cross-memory-do-
main migrations. In this case, a sched-
uler will try to migrate a thread to a fast
Figure 8. Performance degradation over the best static scheduling assignment from
two approaches used to determine relative speedup of threads on cores of different types. core that is within the same memory do-
The approach based on architectural signatures outperforms the direct measurement main as the slow core where the thread
approach due to a lower runtime overhead. was previously running, thus enabling
the thread to reuse the data in the LLC.
Arch. Signatures Direct Measurement Figure 6 shows performance over-
12%
head experienced by several applica-
Performance degradation
more profitable
classifying the applications. In a sched-
present, since our scheduler still mi- uling algorithm, a thread with a larger
grated threads across cores “thinking”
that the system is asymmetric.
to run CPU-bound relative speedup would be given prefer-
ence to run on a fast core, and a thread
Comparing the performance of appli- programs on with a lower relative speedup would be
cations under the PA scheduler and the
default scheduler, we can find out the mi-
fast cores and more likely to run on a slow core. Since
this approach relies on direct measure-
gration-related performance overhead. memory-intensive ment of relative speedup, we refer to it
In this case, performance degradation
under the PA scheduler is equivalent to programs on as the direct measurement approach.
A second approach, referred to as
migration overhead. As Figure 6 shows, slow cores. the modeling approach, is to model
performance overhead can be quite
significant on a migration-unfriendly This is what the speedup on a fast vs. slow core us-
ing a summary of an application’s run-
system, but it becomes negligible on a
migration-friendly system coupled with
catering to time properties obtained either offline
or online. Modeling is less accurate
a topology-aware scheduler. microarchitectural than direct measurement but does not
In summary, a parallelism-aware
scheduling policy can deliver real per-
diversity of require running each thread on each
type of core, thus avoiding potential
formance improvements on asymmet- the workload load imbalance and expensive cross-
ric hardware for parallel applications
limited by sequential phases. The key is all about. core migration (we elaborate on these
issues later). In an effort to build an
is to configure the synchronization li- asymmetry-aware algorithm that caters
brary to “reveal” the sequential phases to microarchitectural diversity, we have
to the scheduler. To avoid cross-mem- experimented with both methods.
ory-domain migration overhead, AMP The direct measurement approach
systems should be designed such that manifested several performance prob-
fast cores share a memory domain with lems. Consider a scenario where each
some of the slow cores and combined thread must be run on each core type
with a topology-aware scheduler that to determine its relative speedup. Given
minimizes cross-domain migrations. that a running thread may switch phas-
A Scheduler Catering to Microarchi- es of execution (that is, it may be doing
tectural Diversity. Remember that the different types of processing at different
idea of catering to microarchitectural points in time), this measurement must
diversity of the workload is to assign be repeated periodically; otherwise, the
CPU-intensive threads (or phases of exe- scheduler might be operating on stale
cution) to fast cores and memory-inten- data. Since the number of threads will
sive threads (or phases) to slow cores. typically be larger than the number of
Recall from Figure 1 that CPU-intensive fast cores, there will always be a high
code will experience a higher relative demand for running on fast cores for
speedup running on fast vs. slow cores the purpose of remeasuring relative
than memory-intensive code, so sched- speedup. As a result, threads that are
uling it on fast cores is more efficient “legitimately” assigned to run on fast
in a cost-benefit analysis. Just like the cores by the scheduling policy will ob-
PA policy, this policy will be inherently serve undue interference from threads
unfair: it may improve performance trying to measure their speedup there.
of some applications at the expense of Furthermore, having too many threads
others, but it will improve the efficiency “wanting” to run on scarce fast cores
of the system as a whole. may cause load imbalance, with fast
The biggest challenge in imple- cores being busy and slow cores being
menting such an algorithm is to clas- idle. When we used this direct measure-
sify threads or phases of execution as ment approach in an asymmetry-aware
CPU-intensive or memory-intensive at algorithm, we found that these prob-
scheduling time. Two approaches were lems made it difficult to deliver signifi-
cant performance improvement relative miss rate in the LLC, and using that
to an asymmetry-agnostic scheduler.9,11 miss rate, it estimates the approxi-
The modeling approach involved mate fraction of CPU cycles that this
predicting relative speedup on differ- program will spend waiting on main
ent core types using certain properties
of the running programs. Since we were The best static memory. The scheduler can then trivi-
ally estimate the speedup that each pro-
keen on evaluating this approach on
real hardware (simulators put limita-
assignment gram will experience running on a fast
core relative to a slow core (see Figure
tions on the length and number of ex- always results 7). Then the scheduler simply assigns
periments that can be performed), we
could experiment only with the asym-
in running the threads with higher estimated speed-
ups to run on fast cores and threads
metry that was caused by the differenc- CPU-bound with lower estimated speedups to run
es in the clock frequency of different
cores. As a result, our relative speedup
applications on the on slow cores, making sure to preserve
the load balance and fairly distribute
model was tuned to work for this spe- fast cores and the CPU cycles. The resulting scheduler
cific type of asymmetric hardware.
(This is the only type of AMP configura- memory-intensive is called HASS (heterogeneity-aware
signature-supported), and more details
tion available on today’s commercial applications about its implementation are available
hardware.) At the same time, we do not
see any fundamental reasons why our on the slow cores. in our earlier publication.11
To evaluate how well the approach
model could not be adapted to work on based on architectural signatures
other single-ISA asymmetric systems. helps the scheduler determine the op-
Recall that the main factor deter- timal assignment of threads to cores,
mining how much speedup a program we compare the resulting performance
would obtain from running on a fast with that under the best static assign-
core is how memory-intensive the pro- ment. A static assignment is one where
gram is. A good way to capture memory- the mapping of threads to cores is de-
intensity is via a memory reuse profile, termined at the beginning of execu-
a compact histogram showing how well tion of a particular workload and never
a program reuses its data.3 If a program changed thereafter. The best static
frequently reuses the memory loca- assignment is not known in advance,
tions it has touched in the past, then but can be obtained experimentally by
the memory reuse profile will capture trying all static assignments and pick-
the high locality of reference. If a pro- ing the one with the best performance.
gram hardly ever touches the memory The best static assignment is the the-
values used in the past (as would a vid- oretical optimum for our signature-
eo-streaming application, for example), supported algorithm, since it relies on
the memory reuse profile will capture static information to perform the as-
that as well. Memory reuse profiles are signment (the architectural signature)
so powerful that they can be used to and does not change an assignment
predict with high accuracy the cache- once it is determined.
miss rate of a program in a cache of any Figure 8 shows the performance ob-
size and associativity. This is precisely tained using our signature-supported
the feature that we relied on in evaluat- algorithm relative to the best static
ing memory-intensity of programs and assignment. We show the overall per-
building our estimation model. formance for seven workloads. Each
Without going into much detail, in workload is constructed of four SPEC
our scheduling system we associate a CPU2000 applications, two of which
memory reuse profile with each thread. are memory-intensive and two of which
We refer to this profile as the architec- are CPU-intensive. Each workload is
tural signature, since it captures how executed on an emulated AMP system
the program uses the architectural fea- with two fast cores and two slow cores,
tures of the hardware. The idea is that so one single-threaded application is
an architectural signature may contain running on each core. The fast cores
a broad range of properties needed to run at 2.3GHz, and the slow cores run
model performance on asymmetric at 1.15GHz. We used the AMD Opteron
hardware, but for our target AMP sys- (Barcelona) system for this experiment.
tem, using just a memory reuse pro- The best static assignment always
file was sufficient. Using that profile, results in running the CPU-intensive
the scheduler predicts each program’s applications on the fast cores and
Architecture
minimize the chance of (parallel) pro-
gramming errors.
In this article, we describe a
for Improved
novel, general-purpose multicore
architecture—the Bulk Multicore—
we designed to enable a highly pro-
Programmability
grammable environment. In it, the
programmer and runtime system
are relieved of having to manage the
sharing of data thanks to novel sup-
port for scalable hardware cache co-
herence. Moreover, to help minimize
the chance of parallel-programming
errors, the Bulk Multicore provides
to the software high-performance se-
quential memory consistency and also
introduces several novel hardware
MULTICORE CHIPS AS commodity architecture primitives. These primitives can be
for platforms ranging from handhelds to used to build a sophisticated program-
development-and-debugging environ-
supercomputers herald an era when parallel ment, including low-overhead data-
programming and computing will be the norm. race detection, deterministic replay
While the computer science and engineering of parallel programs, and high-speed
disambiguation of sets of addresses.
community has periodically focused on advancing The primitives have an overhead low
the technology for parallel processing,8 this time enough to always be “on” during pro-
duction runs.
around the stakes are truly high, since there is The key idea in the Bulk Multi-
no obvious route to higher performance other core is twofold: First, the hardware
than through parallelism. However, for parallel automatically executes all software
as a series of atomic blocks of thou-
computing to become widespread, breakthroughs sands of dynamic instructions called
are needed in all layers of the computing stack, Chunks. Chunk execution is invisible
to the software and, therefore, puts no
including languages, programming models, restriction on the programming lan-
compilation and runtime software, programming guage or model. Second, the Bulk Mul-
and debugging tools, and hardware architectures. ticore introduces the use of Hardware
Address Signatures as a low-overhead
At the hardware-architecture layer, we need to mechanism to ensure atomic and iso-
change the way multicore architectures are designed. lated execution of chunks and help
ticore design where the compiler ob- tion. Having to provide such state in hardware-only mechanism, invisible
serves the chunks, the compiler can a multiprocessor environment—even to the software running on the pro-
further improve performance by heav- if no other processor or unit in the cessor. Moreover, its purpose is not to
ily optimizing the instructions within machine needs it—contributes to the parallelize a thread, since the chunks
each chunk. Finally, the Bulk Multi- complexity of current system designs. in a thread are not distributed to other
core organization decreases hardware This is because, in such an environ- processors. Rather, the purpose is to
improve programmability and perfor- then the local chunk is squashed and addresses.
mance. must re-execute. In the Bulk Multicore, the hard-
Each chunk executes on the pro- To execute chunks atomically and ware automatically accumulates the
cessor atomically and in isolation. in isolation inexpensively, the Bulk addresses read and written by a chunk
Atomic execution means that none of Multicore introduces hardware ad- into a read (R) and a write (W) signa-
the chunk’s actions are made visible dress signatures.3 A signature is a ture, respectively. These signatures
to the rest of the system (processors or register of ≈1,024 bits that accumu- are kept in a module in the cache hi-
main memory) until the chunk com- lates hash-encoded addresses. Figure erarchy. This module also includes
pletes and commits. Execution in iso- 1 outlines a simple way to generate a simple functional units that operate
lation means that if the chunk reads a signature (see the sidebar “Signatures on signatures, performing such op-
location and (before it commits) a sec- and Signature Operations in Hard- erations as signature intersection (to
ond chunk in another processor that ware” for a deeper discussion). A sig- find the addresses common to two
has written to the location commits, nature, therefore, represents a set of signatures) and address membership
test (to find out whether an address
belongs to a signature), as detailed in
novel compiler optimizations that re- Figure 3. Parallel execution in the Bulk Multicore (a), with a possible
quire dynamic disambiguation of sets OrderOnly execution log (b) and PicoLog execution log (c).
of addresses (see the sidebar “Making
Signatures Visible to Software”).
Reduced Implementation
Complexity
The Bulk Multicore also has advan-
are statically specified in the code, group at the University of Illinois who Press, 2008, 289–300.
14. Musuvathi, M. and Qadeer, S. Iterative context
while chunks are created dynamically contributed through many discus- bounding for systematic testing of multithreaded
by the hardware. The second propos- sions, seminars, and brainstorming programs. In Proceedings of the Conference on
Programming Language Design and Implementation
al, called Implicit Transactions,19 is sessions. This work is supported by (San Diego, CA, June 10–13). ACM Press, New York,
a multiprocessor environment with the U.S. National Science Foundation, 2007, 446–455.
15. Narayanasamy, S., Pereira, C., and Calder, B.
checkpointed processors that regular- Defense Advanced Research Projects Recording shared memory dependencies using
ly take checkpoints. The instructions Agency, and Department of Energy and strata. In Proceedings of the International
Conference on Architectural Support for
executed between checkpoints consti- by Intel and Microsoft under the Uni- Programming Languages and Operating Systems
tute the equivalent of a chunk. No de- versal Parallel Computing Research (San Jose, CA, Oct. 21–25). ACM Press, New York,
2006, 229–240.
tailed implementation of the scheme Center, Sun Microsystems under the 16. Prvulovic, M. and Torrellas, J. ReEnact: Using
is presented. thread-level speculation mechanisms to debug data
University of Illinois OpenSPARC Cen- races in multithreaded codes. In Proceedings of the
Automatic Mutual Exclusion ter of Excellence, and IBM. International Symposium on Computer Architecture
(San Diego, CA, June 9–11). IEEE Press, 2003,
(AME)7 is a programming model in 110–121.
which a program is written as a group References
17. Sohi, G., Breach, S., and Vijayakumar, T. Multiscalar
processors. In Proceedings of the International
of atomic fragments that serialize in 1. Ahn, W., Qi, S., Lee, J.W., Nicolaides, M., Fang, X.,
Symposium on Computer Architecture (Santa
Torrellas, J., Wong, D., and Midkiff, S. BulkCompiler:
some manner. As in TCC, atomic sec- High-performance sequential consistency through
Margherita Ligure, Italy, June 22–24). ACM Press,
New York, 1995, 414–425.
tions in AME are statically specified cooperative compiler and hardware support. In
18. Tuck, J., Ahn, W., Ceze, L., and Torrellas, J. SoftSig:
Proceedings of the International Symposium on
in the code, while the Bulk Multicore Microarchitecture (New York City, Dec. 12–16). IEEE
Software-exposed hardware signatures for code
analysis and optimization. In Proceedings of the
chunks are hardware-generated dy- Press, 2009.
International Conference on Architectural Support
2. Ceze, L., Tuck, J., Montesinos, P., and Torrellas, J.
namic entities. BulkSC: Bulk enforcement of sequential consistency.
for Programming Languages and Operating Systems
(Seattle, WA, Mar. 1–5). ACM Press, New York, 2008,
The signature hardware we’ve in- In Proceedings of the International Symposium on
145–156.
Computer Architecture (San Diego, CA, June 9–13).
troduced here has been adapted for 19. Vallejo, E., Galluzzi, M., Cristal, A., Vallejo, F.,
ACM Press, New York, 2007, 278–289.
Beivide, R., Stenstrom, P., Smith, J.E., and Valero,
use in TM (such as in transaction- 3. Ceze, L., Tuck, J., Cascaval, C., and Torrellas,
M. Implementing kilo-instruction multiprocessors.
J. Bulk disambiguation of speculative threads
footprint collection and in address In Proceedings of the International Conference on
in multiprocessors. In Proceedings of the
Pervasive Services (Santorini, Greece, July 11–14).
disambiguation12,21). International Symposium on Computer Architecture
IEEE Press, 2005, 325–336.
(Boston, MA, June 17–21). IEEE Press, 2006,
Several proposals implement data- 20. Xu, M., Bodik, R., and Hill, M.D. A ‘flight data
227–238.
recorder’ for enabling full-system multiprocessor
race detection, deterministic replay of 4 Choi, J., Lee, K., Loginov, A., O’Callahan, R., Sarkar,
deterministic replay. In Proceedings of the
V., and Sridharan, M. Efficient and precise data-
International Symposium on Computer Architecture
multiprocessor programs, and other race detection for multithreaded object-oriented
(San Diego, CA, June 9–11). IEEE Press, 2003,
programs. In Proceedings of the Conference on
debugging techniques discussed here Programming Language Design and Implementation
122–133.
21. Yen, L., Bobba, J., Marty, M., Moore, K., Volos, H., Hill,
without operating in chunks.4,11,15,20 (Berlin, Germany, June 17-19). ACM Press, New
M., Swift, M., and Wood, D. LogTM-SE: Decoupling
York, 2002, 258–269.
Comparing their operation to chunk 5 Hammond, L., Wong, V., Chen, M., Carlstrom, B.D.,
hardware transactional memory from caches. In
Proceedings of the International Symposium on High
operation is the subject of future work. Davis, J.D., Hertzberg, B., Prabhu, M.K., Wijaya, H.,
Performance Computer Architecture (Phoenix, AZ,
Kozyrakis, C., and Olukotun, K. Transactional memory
Feb. 10–14). IEEE Press, 2007, 261–272.
coherence and consistency. In Proceedings of the
Future Directions International Symposium on Computer Architecture
(München, Germany, June 19–23). IEEE Press, 2004,
The Bulk Multicore architecture is a 102–113.
novel approach to building shared- 6. Herlihy M. and Moss, J.E.B. Transactional memory: Josep Torrellas (torrellas@cs.uiuc.edu) is a professor
Architectural support for lock-free data structures. and Willett Faculty Scholar in the Department of
memory multiprocessors, where the In Proceedings of the International Symposium on Computer Science at the University of Illinois at Urbana-
whole execution operates in atomic Computer Architecture (San Diego, CA, May 16–19). Champaign.
IEEE Press, 1993, 289–300.
chunks of instructions. This approach 7 Isard, M. and Birrell, A. Automatic mutual exclusion.
In Proceedings of the Workshop on Hot Topics Luis Ceze (luisceze@cs.washington.edu) is an assistant
can enable significant improvements professor in the Department of Computer Science and
in Operating Systems (San Diego, CA, May 7–9).
in the productivity of parallel pro- USENIX, 2007. Engineering at the University of Washington, Seattle, WA.
grammers while imposing no restric- 8. Kuck, D. Facing up to software’s greatest challenge:
Practical parallel processing. Computers in Physics
James Tuck (jtuck@ncsu.edu) is an assistant
tion on the programming model or 11, 3 (1997).
professor in the Department of Electrical and Computer
9. Lamport, L. How to make a multiprocessor computer
language used. that correctly executes multiprocess programs.
Engineering at North Carolina State University, Raleigh,
NC.
At the architecture level, we are ex- IEEE Transactions on Computers C-28, 9 (Sept.
1979), 690–691.
amining the scalability of this organi- 10. Lamport, L. Time, clocks, and the ordering of events Calin Cascaval (cascaval@us.ibm.com) is a research
zation. While chunk commit requires in a distributed system. Commun. ACM 21, 7 (July staff member and manager of programming models
1978), 558–565. and tools for scalable systems at the IBM T.J. Watson
arbitration in a (potentially distrib- 11. Lu, S., Tucek, J., Qin, F., and Zhou, Y. AVIO: Detecting Research Center, Yorktown Heights, NY.
uted) arbiter, the operation in chunks atomicity violations via access interleaving
invariants. In Proceedings of the International
is inherently latency tolerant. At the Conference on Architectural Support for Pablo Montesinos (pmontesi@samsung.com) is a staff
programming level, we are examin- Programming Languages and Operating Systems engineer in the Multicore Research Group at Samsung
(San Jose, CA, Oct. 21–25). ACM Press, New York, Information Systems America, San Jose, CA.
ing how chunk operation enables 2006, 37–48.
efficient support for new program- 12. Minh, C., Trautmann, M., Chung, J., McDonald, A.,
Wonsun Ahn (dahn2@uiuc.edu) is a graduate student in
Bronson, N., Casper, J., Kozyrakis, C., and Olukotun,
development and debugging tools, K. An effective hybrid transactional memory with the Department of Computer Science at the University of
strong isolation guarantees. In Proceedings of the Illinois at Urbana-Champaign.
aggressive autotuners and compilers,
International Symposium on Computer Architecture
and even novel programming models. (San Diego, CA, June 9–13). ACM Press, New York, Milos Prvulovic (milos@cc.gatech.edu) is an associate
2007, 69–80. professor in the School of Computer Science, College of
13. Montesinos, P., Ceze, L., and Torrellas, J. DeLorean: Computing, Georgia Institute of Technology, Atlanta, GA.
Acknowledgments Recording and deterministically replaying shared-
memory multiprocessor execution efficiently. In
We would like to thank the many pres- Proceedings of the International Symposium on
ent and past members of the I-acoma Computer Architecture (Beijing, June 21–25). IEEE © 2009 ACM 0001-0782/09/1200 $10.00
Computer
intellectual, social, and cultural force
behind the information age. Comput-
er researchers and developers spear-
headed widespread adoption of new
Science in the
technology and were paid well. Aca-
demic computer science departments
grew in terms of numbers of students,
faculty, and facilities; almost all ma-
Conceptual
jor universities received donations,
including new “computer science
buildings,” and enrollment was so
large that standardized tests had to
Age
be created for the field. These were
the fattest of times, when computer
science research drove the growth
in the national, as well as the global,
economy.
The dot-com crash closing out
the 20th century signaled the end of
the era. Computer science was now
viewed as an unstable career choice,
I N T EC HNOLOGY, T H E conceptual age is defined with corresponding drop in interest
by young people.8 Additionally, many
by cognitive or creative assets, including design, computer science departments heard
storytelling, artistry, empathy, play, and emotion. complaints from industry that their
recent graduates were unprepared to
Good engineering or good computer science is no be part of the modern work force. So,
longer enough; design must be just as good.7 following their economic self-inter-
The transition from information age to conceptual est, students migrated to other fields,
and the leading U.S. universities saw
age has been overlooked by most academics in major growth in undergraduate busi-
computer science, yet many of the consequences of ness programs.
We can hypothesize that the drop
the transition have been apparent for the past decade in interest in computer science was
at least, including a drop in undergraduate interest, part of the natural ebb and flow and
ILLUSTRATION BY A ND REA TSENG / CH IME RA GAM E STUDIOS
the outsourcing of U.S. programming jobs, and the fashion of career choice. But doing so
is to stick one’s head in the sand and
decline in research laboratories focused on advanced hope for the return of yesteryear. A
computer science research. Today, another aspect more progressive view is to focus on
the concurrent transition from infor-
of the transition is emerging: integration of game mation age to conceptual age. The old
development into computer science curricula. Here,
I discuss what it looks like, how it affects computer
Scene from the Artemis Chronicle PC game
science departments, and how it helps drive the built with Microsoft’s XNA toolkit and
the USC GamePipe Laboratory NitroX
overall transition. game engine.
focus on “tractable abstractions sepa- traditional computer science depart- will they transition into? The game
rate from real problems”2 is no longer ments produce. industry also wants graduates with a
acceptable. In the conceptual age, we The game industry wants gradu- strong background in computer sci-
need to change the direction of the ates who are strong programmers and ence. It does not want graduates with
field or continue an unwelcome slide system developers, skilled in game de- watered-down computer science de-
toward irrelevance. sign, and capable of and experienced grees, but rather an enhanced set of
in game development in large, cross- skills. This is good news for the de-
Cognitive and Creative Assets disciplinary collaborative teams. partments, meaning they can transi-
The conceptual age of technology is Some computer science departments tion some courses to new material
defined by cognitive and creative as- produce graduates who are strong or new foci, create new courses, and
sets, with the design side being just programmers and system developers, still not abandon decades of hard-
as good. We see harbingers in recent but most do not produce graduates won knowledge. The best way to think
business success. For example, Ap- skilled in game design. Moreover, about the transition to the conceptual
ple has done well with design-driven most do not produce graduates facile age is to make the focus the “big idea
products enabled by great engineer- in large, cross-disciplinary collabora- or big concept,” with a follow-on fo-
ing. On the other hand, Microsoft is tive teams. The typical computer sci- cus on how to build the concept and
a great engineering company that ence graduate has little experience with what technologies.
deemphasizes design at its own peril; with team software development be- Strong programming skills is the
the Vista operating system, despite yond one or two projects with three to first item on the list, meaning an
its technical success, was not built five other computer science students. undergraduate program’s first four
with user experience as its ultimate Computer science departments computer science courses—CS-101
goal and had great difficulty with re- can retool themselves to meet these Fundamentals of Computer Program-
spect to adoption. Much of the rest of challenges, but, for game develop- ming, CS-102 Data Structures, CS-
the traditional computing industry is ment, doing so requires a strong, ex- 105 Object Oriented Programming,
shrinking, but the game industry is a perienced champion and proper re- and CS-201 Principles of Software
segment that continues to grow due sources. Here, I discuss a particular Development—must be taught in a
to its focus on design backed up by approach we take at the University of rigorous manner by excellent practic-
great supporting engineering. The de- Southern California, outcomes from ing programmers. While computer
mand for computer scientists capable that program, and questions with re- programming languages abound,
of building games is high, with large spect to transitioning a mature field and the historic computer science at-
companies like Electronic Arts report- toward the conceptual age. titude “You learn one language, and
ing that 65% of their hiring demand it’s easy to pick up the next one” is not
is for programmers skilled in build- Game Development shared by industry. The game industry
ing games. Unfortunately, the kind and CS Education will also tell you that it wants the first
of computer scientist required by If computer science departments are four programming classes in C++, not
the game industry is not exactly what indeed to make the transition, what Java, according to M.M. McGill4 and
Game Engine
Data Network
Components
Control and
Processing
Communication
Systems
Devices
mester. The industry is basically say- Big Game Program or Baby Steps?
ing it wants strong programmers with Computer science departments
multiple courses in C++, its primary changing their focus toward game
development language. The USC ex- development is an obvious approach
perience is that 100% of its students toward preparing students for the
interviewed for programming posi- conceptual age. Many universities
tions are given three-to-four-hour- are building game-development pro-
long programming tests, with almost grams within or aligned with their com-
all companies administering the tests puter science departments.1,3,5,6,9,10
in C++. We had one company (NCSoft) The annual Foundations of Digital
test in C and another (Microsoft) indi- Games conference (http://www.foun-
cate the test could be done in C++, C, dationsofdigitalgames.org/) focuses
or C#. Programming interns/job seek- on this important transition.
ers from our program Spring 2009 (35 How does all this directly affect the
interviewed in the game industry) departments? Consider two separate
found no companies administering efforts: the USC GamePipe Laborato-
programming tests in Java. ry and the University of Washington,
Strong skills in system develop- Bothell, the latter covered in the arti-
ment is another must. The figure here cle “Computer Games and Computer
outlines the components that must be Science” by Kelvin Sung (on page 74).
juggled by a programmer developing a
typical networked game, touching on USC GamePipe Laboratory
much of computer science and then The USC Department of Computer
some. Moreover, the game software Science offers both a bachelor’s de-
must run multithreaded in a well-bal- gree in computer science (games) and
anced manner and provide an immer- a master’s degree in computer science
sive and entertaining experience to (game development).12 Students inter-
the game player. Game development ested in Ph.D.-level topics are encour-
is viewed by some as systems design. aged (for the moment) to apply to the
Programmers comfortable in cross- traditional computer science Ph.D.
disciplinary groups is third on the list. program. The bachelor’s in computer
Industry wants programmers who are science (games) program includes 37
able to generate software based on units of traditional computer science
the vision of designers, work with art- and 42 units of game-development
ists to generate the right display and courses. The computer science cours-
feel, and know how to participate in es are the same as those taken by
large-team development efforts. The regular students in USC’s bachelor’s
traditional computer science student computer-science program, except
is far from this. for the following modifications:
Computer science departments Programming courses. We rewrote
game industry technical directors of are invited to review the students’ tles at your fingertips on the iPhone.
the conceptual age. work; the accompanying screenshots Videos of the most recent Demo
Our approach to creating a cross- are indicative of the visual quality. Day are at http://gamepipe.usc.edu/
disciplinary program was to design Artemis Chronicle, a beautiful action- USC_GamePipe_Laboratory/R%26D/
courses that could be taken by non- adventure title (see page 67), demon- R%26D.html.
computer scientists, as well as by strates the powerful features of the At the end of each academic year,
computer science majors. First-se- NitroX Engine, a revolutionary, com- we now routinely place large numbers
mester undergraduates survey game plete development framework for of students (typically around 35) in
play, from the start of games to using creating XNA games. Both the game internships/jobs in the game indus-
(among other things) old consoles, and the NitroX engine were built in try where they are nearly instantly
old PC games, and emulators. Stu- the CS-491AB Final Games course productive. In the Fall semesters in
dents come out of the course hooked over two semesters. Air Guitar God, a 2007 and 2008, a team on Demo Day
on our degree program and wanting beat-matching iPhone game (below), was offered a commercial deal to turn
more. They then take a video-game incorporates a student-designed al- their game into a company for further
production course to build individual gorithm for automatically computing development or prepare to ship com-
games using GameMaker and hear beat detection from any song import- mercially. Spring 2009 included five
from industry speakers on game de- ed into the game. And Slice, an action student-built games under commer-
velopment. Next is CS-281 Pipelines role-playing game (below), puts bat- cial consideration.
for Games & Interactives in which they
learn how to create assets for games,
including 3D models and anima-
tions. One achievement is a pipeline
asset and source-code management
system we designed that is shared by
all game-development courses in the
program. We teach our students how
to use it early on, simplifying and en-
hancing their ability to develop games
in subsequent courses. We also place
all our students in a semester-long
character-animation course.
In their final one-and-a-half years
before graduation, our students be-
come ready for game development.
All take a course developing a serious
game in a large team for an interested
sponsor. Their last year before gradu-
ation is in CS-491A/B Final Game Proj-
ects building games in large cross-dis-
ciplinary teams from August to May, Opening screen from Air Guitar God, an iPhone beat-matching game
with game designs selected through developed by students in the USC GamePipe Laboratory’s mobile games course.
a design playoff the previous May.
The Final Game Projects course is
administered jointly by the School of
Cinematic Arts and has students from
computer science (bachelor’s and
master’s students), interactive media
(bachelor’s of fine arts and master’s of
fine arts), fine arts (bachelor’s of fine
arts), animation (bachelor’s of fine
arts), music composition, and film
scoring. Teams in this class include
from 11 to 25 students building sig-
nificant games over its two-semester
run, aiming for contest submission by
the end of the second semester.
Strong cross-disciplinary collabo-
ration occurs, with results presented
at the end of each semester on Demo Scene from Slice, an iPhone gesture-based fighting game developed
Day when game-industry executives by students in the USC GamePipe Laboratory.
,(((WK,QWHUQDWLRQDO&RQIHUHQFHRQ6HUYLFHV&RPSXWLQJ6&&
,Q W K H P R GH UQ VH U Y L FH VD Q G V RIW Z DU H LQ GX VW U \ 6H U Y L FH V & R PS X W LQ J K D VE H FR PH D
F U RV V G L V FL S O LQ H W K DW FRY H UV W K H V F LHQ F H D Q GW H FK Q R OR J \ RI E U LG J LQ J W K H J D S E H W Z HHQ
% X V LQ H V V 6H U YL F HV DQ G , 7 6 HU Y L FH V 7K H V FRS H RI 6 H U YL F HV & R PS X W LQ J FR YH UV W K H Z K RO H
O L IH F \ F OH R I VH U Y L FH V LQ Q R Y D W L RQ U HV H DU FK W K D W LQ F O X GH V E X V LQ HV V F R PS RQ H Q W L] DW LRQ V HU
Y L F H V P RG H OL Q J VHU Y L F HV F U H DW LRQ V HU Y L FH V UH D O L] D W L RQ VH U YL F HV DQ Q RW DW LR Q VHU Y L F HV
G H S O R \P HQ W V HU Y L FH V G LV F R YH U \ VH U YL F HV FR PS RV L W L R Q VH U Y LF HV GH O L YH U \ V HU Y L FH W R V HU Y L FH FR O O DE R
U D W LRQ V HU Y L FH V P RQ L W R UL Q J VH U Y L FHV RS W LP L] D W LRQ DV Z HO O DV VHU Y L F HV PD Q D J HP HQ W 7 K H JR D O RI 6 H U
Y L F H V & R PS X W LQ J LV W R HQ DE O H, 7 V HU Y L F HV DQ G FRP S X W LQ J W H FK Q R O R J \W R S H UI RU P E X V LQ HV V VH U Y L FHV
P R UH HI I L FL HQ W O \ D Q G HIIH F W L Y H O \
,(((WK,QWHUQDWLRQDO&RQIHU ,(((UG,QWHUQDWLRQDO&RQIHU
HQFHRQ:HE6HUYLFHV,&:6 HQFHRQ&ORXG&RPSXWLQJ
$ V D P DM RU L PS O H PHQ W D W LR Q W H FK &/28'
Q RO R J \ IR U P R GH UQ L ] L Q JV HU Y L F HV & O RX G & R PS X W L Q J L VE H FR P LQ J D
L Q GX VW U \ :H E VH U YL F HV D U H ,Q W HU V F D O D E O H VH U Y L FHV GH O L YH U\ D Q G F RQ
Q HW E D VH G DS S O L F DW LR Q F RP S R Q HQ W V V X P S W LRQ S O DW I RU P L Q W K H I L HO G R I
S X E O L VK H G X V LQ J VW DQ G DUG L Q W H UI D FH 6 H U YL F HV & R PS X W LQ J 7K H W H FK Q L F D O
G H V FU LS W L RQ O D Q JX D JH V D Q G X Q L YH UV D O O \ D Y D L O DE OH I RX Q G DW L RQ V R I & ORX G & R PS X W LQ J
Y L D X Q L IR U P F RP PX Q L F DW L RQ S URW R FR O V ,Q W K H L Q F OX GH 6 HU Y L FH 2 UL HQ W HG $ U FK LW H FW X UH 6 2 $
H L JK W K \ H DU W K HS UR J U DP RI , & : 6 Z LO O FRQ D Q G 9L UW X D O L] DW L RQ V R I K D U G Z DU H DQ G VR IW Z D UH
W LQ X H W R IH D W X U H UH VH D U FK S DS HU V Z L W K D Z L G H 7 K H J R DO R I & ORX G & R PS X W LQ J LV W R VK D UH U H
U D Q JH R IW RS L FV I R FX V LQ J RQ Y DU L RX V D VS H FW V RI V RX U FH V D PR Q J W K H F ORX G V HU Y L FH FRQ VX PH UV
L P S O H PHQ W D W L RQ DQ G LQ IUD V W UX F W X U H RI : HE E D VHG F O RX G S D UW Q H UV DQ G FO RX G Y HQ G RU V LQ W K H F OR X G
V HU Y L F HV ,& : 6 K D VE HHQ D S U L PH L Q W H UQ DW LR Q DO Y D O X H FK D LQ 0 D MR U W RS L FV F R YH U, Q IU D VW UX FW X UH
I RUX P I RU E R W K UH VH D U FK H UV DQ G LQ GX V W U \ S U D F W L & O RX G 6R IW Z D UH & O RX G $ S S O L F DW LR Q & O RX G D Q G
W LR Q H UV W R H [ FK DQ JH W K H O D W H VW IX Q G D PHQ W D O D G % X V LQ H V V & O RX G
Y D Q F HV LQ W K H V W DW H R I W K H D UW RQ :H E VH U YL F HV
6XEPLVVLRQ'HDGOLQHV
)RU$EVWUDFWVDQG3DSHUV
, &:6 )H E
6 && )H E
6( 59, &(6 0 D U F K
&/ 2 8' 0 D U F K
Computer
the 1990s included both pedagogical
changes and foci on real-world prob-
lems, while the Carl Wieman Science
Education Initiative at the University
Games and
of British Columbia has redesigned its
freshmen introductory physics course
such that:a
“As much as possible, the standard
Traditional CS
introductory physics material will be
presented in connection with real-world
situations and issues such as home
heating, transportation, and electricity
Courses
generation.”
In the CS education arena, the Media
Computation of Georgia Tech18 is an
excellent example where foundational
programming concepts are presented in
the context of popular digital multime-
dia applications. This contextualization
of computing education18 is an ongoing
effort and interactive computer video
games, being one of the most familiar
application areas for our students, is a
context favored by many CS educators.
This article presents the USC Game-
Pipe Laboratory effort where the entire
SINCE COMPUTING IS the foundation of modern CS curriculum is redesigned in the con-
society, a proficient computing work force is essential text of game development (Please refer
for maintaining the country’s leadership and to the USC GamePipe Laboratory effort
by Michael Zyda on page XXX where the
competitiveness in the global economy. The recent CS curriculum is designed in the con-
decline in enrollments across computer science (CS) text of game development). This article
examines the ongoing efforts to inte-
departments and the decrease in student diversity grate computer video games in existing
pose significant challenges to the continuation of traditional CS courses. The discussion
the nation’s prominent position in the global high- is divided into introductory program-
ming courses and elective CS courses,
technology arena. The CS education community and concludes with guidelines for con-
responded to this challenge with a general critical sidering integrating computer game
content into existing CS classes.
self-reexamination where the entire traditional
CS education system is being evaluated, from the Games and CS Classes
outreach to K–12 education, to the fundamental There are many types of games that
philosophies behind the curriculum design. One of a http://www.cwsei.ubc.ca/departments/physics-
the emerging results from these developments is astro courses.htm (Nov. 2007 update).
time performance.
2. Game programming classes.
These are classes (for example, Kuff-
ner’s CMU course37) designed specifi-
cally to study technical aspects and is-
sues involved in building games. For
example, topics covered may include
event loops, path planning algorithms,
and terrain representation. These
classes typically do not require building
an end product and the topics covered
are general and usually are applicable
to different domains. These classes
concentrate on covering the game pro-
gramming topic area in the IGDA cur-
riculum framework.
3. Game development client. These
are existing CS classes that creatively in-
tegrate games into their existing curric- effort required by faculty, existing work tees to arrive at consensus for signifi-
ulum. Typically, games are used as pro- done in this area can be classified into cant modifications to CS1/2 courses,
gramming assignments,1,3,5,22,25,33,34,37 three broad approaches: especially if the modifications involve
or to teach abstract concepts,11,15,30 Little or no game programming.9,17 In computer games. For these reasons,
or as an example application area to these courses students learn by playing to be widely adaptable, game-related
teach the concepts involved in an en- custom games but they do not actually CS1/2 materials should be designed
tire topic area.9 These are traditional program the games. with the following considerations:
CS classes that exist independent of Per-assignment game develop- 1. The materials should not demand
game programming. These classes are ment.3,21,32,33,38 All these classes devel- knowledge in computer games or
actually clients of game development oped games as part of individual pro- graphics.
where they use game development as a gramming assignments. In each case, 2. The materials should include in-
vehicle to deliver specific abstract con- isolated games are designed around dependent modules that are limited in
cepts. After these classes, students are technical topics being studied. curriculum scope.
expected to understand the abstract CS Extensive game development. For ex- 3. The materials should support se-
concepts, and not the details of game ample, faculty must design program- lective experimentation by individual
development. ming assignments based on custom faculty members in small-scale pilot
Courses in the first two categories are library,39 general game engines,4 dedi- demonstration projects in their exist-
new courses designed to teach students cated game engines,25 specialized pro- ing courses.
about game development. Over time, as gramming environments,22 custom Selective Gradual Adoption. Results
the game development field matures, it object-oriented class hierarchies,25 spe- from the extensive game development
is expected that these courses will evolve cific curricula,23 or new programming approach discussed previously typi-
and eventually some of the contents languages.11 cally include large amounts of adopt-
will become part of the standard CS Much of this work reported re- able/adaptable courseware materials.
curriculum. This is not unlike the early sounding successes with drastically in- However, using these materials often
years of many existing disciplines in CS creased enrollments and student suc- requires a significant investment of
(for example, software engineering13 or cesses.3,11,23 Based on these results, it is time, for example, understanding a
computer graphics8), where the syllabi well recognized that integrating com- game engine, or significant reworking
of pioneering courses consolidated as puter gaming into CS1 and CS2 (CS1/2) of an instructor’s existing curriculum.
the disciplines mature. Courses in the courses, the first programming courses Because of the considerable overhead,
third category, the “game development students encounter, is a promising results from this approach are typically
clients,” are traditional CS courses that strategy for recruiting and retaining po- not suitable for selective adoption.
can be found in existing CS curricula. tential students. With the enrollment In terms of suitability for selective
The earliest work in this area1,12 adapt- challenges faced by the CS discipline, adoption, we expect that results from
ed games almost anecdotally without it is desirable and important that this the per-assignment game development
holistic considerations; most of the strategy can be adopted widely by all in- approach will be most applicable. For
more recent work is structured around terested faculty and departments. example, one could selectively replace
addressing core competency areas with However, most of the existing work nongame assignments in existing
reference to the ACM Curriculum. Ac- in this area is based on pioneering ex- classes by the corresponding games
cordingly, courses in the “game devel- ploratory projects by faculty members assignments. However, because of the
opment clients” category can be divid- with expertise in computer graphics pioneering nature of work in this area,
ed into two broad efforts: introductory and gaming.3,23,28 With few exceptions, many of the results on per-assignment
programming classes (CS1/2) and ad- these projects are student-centric where game development are “anecdotal” and
vanced/elective classes. the main goals of study are student do not discuss the impact of such as-
engagement and various learning out- signments on the CS1/2 curriculum ho-
Games and Introductory comes. Adaptability and generality of listically. For example, the results from
Programming Classes the resulting materials are usually not Huang only involve turn-based strate-
Many CS educators recognized and main concerns. For the faculty mem- gic games,21 Ross only discusses puzzle
took advantage of younger generations’ bers teaching CS1/2 courses, most of games,32 and the discussion from Val-
familiarity and interests for computer which are without computer graphics or entine is based on a single game.38
video games and integrate related con- gaming background, it can be challeng- The Game-Themed Introductory Pro-
tents into their introductory program- ing to take advantage of these results. gramming Project at the University of
ming courses. Because these are the In addition, when considering ex- Washington, Bothellc is specifically de-
first courses students encounter, they perimentation with CS1/2 courses, it is signed to address these issues. In the
build excitement and enthusiasm for important to appreciate institutional first phase of our project, we have de-
our discipline.24, b Based on the type of oversight procedures. Though becom- signed and built general game-themed
ing less controversial in recent years, CS1/2 programming assignment mod-
many CS educators continue to be un- ules that demand no existing knowl-
b It is important to reiterate that, after these
classes students are expected to understand
sure about integrating gaming in for-
abstract programming concepts rather than mal educational settings.20 It can be c http://depts.washington.edu/cmmr/Research/
concepts specific to building games. challenging in departmental commit- XNA Games/index.php
edge of games or graphics from the members involved must develop large
faculty,33 and have demonstrated it re- amounts of software infrastructure to
quires minimum changes to existing facilitate and support students’ game
classes in order to successfully adopt development.
these materials. Currently in the sec-
ond phase of our project, we are build- While it is the Notice that all three of these topic ar-
eas have significant overlaps with com-
ing game-themed examples and tu-
torials designed to provide a pathway
case that proper puter games in general: intelligent be-
havior (AI) is one of the most important
for interested faculty to gradually in- integration of game attributes of modern games, SE meth-
corporate game-related materials into
their existing courses. Our project is
development and odologies are applicable in any soft-
ware product development, and topics
student-centric because our materials game content in CS in CG are the conceptual framework for
allow students to practice CS concepts
in a more real-world-like context. More
classes have the visualization in games. One can argue
that for these topic areas, it is relatively
importantly, the materials are also fac- potential to further straightforward to integrate game con-
ulty-centric because these materials are
the stepping-stones for faculty to begin engage students tent in a consistent manner. In general,
for topic areas that do not offer obvious
experimenting with a promising new resulting in higher overlaps with computer games or game
approach to teaching CS1/2 courses.
success rates, it is development (for example, compiler or
programming languages), dedication
Games and Elective CS Courses
As highlighted earlier, the CS education
not the case that and creativity would be required to de-
velop the elaborate infrastructure and
community has a sound understand- any game content to systematically integrate the new con-
ing of how to integrate visualization
and interactivity in delivering CS1/2
will result in having tents. In these cases, one should care-
fully examine the trade-offs between
content and has achieved impressive a positive impact. required efforts, expected benefits, and
successes. In comparison, there is a consider other perhaps more appro-
relatively modest amount of work done priate practical contexts (for example,
in integrating computer games into popular applications on the Internet).
existing traditional CS elective classes.
This is not surprising as a successful Guidelines for Consideration
systematic integration requires the de- While it is the case that proper integra-
livery of an entire technical topic area tion of game development and game
to lend itself well in visualization and content in CS classes have the potential
interactivity. There are anecdotal ex- to further engage students resulting in
amples of using game content in deliv- higher success rates, it is not the case
ering selective topic areas (for example, that any game content will result in
design patterns,16,27 or spatial search having a positive impact. In addition,
algorithms34). These are small-scale when exploring the potential for devel-
projects not meant to address entire opment or adoption of game content,
courses as identified in the standard we must work within the bounds of in-
CS curriculum. stitutional oversights and be conscious
Artificial intelligence (AI),9 software about the expertise areas of faculty
engineering (SE),5,10,37 and computer members. The following are some fac-
graphics (CG)36 are examples of elec- tors for consideration:
tive courses where published results ! Institutional oversight. Depart-
describe attempts at systematically in- mental committee consensus is often
tegrating game development. In all of required for significant changes to core
these cases, the stated student learning courses. Because of the potential im-
outcomes are similar to those from the pact, it can be especially challenging to
typical CS curriculum and do not in- arrive at a consensus for modifications
clude competencies involved in game to introductory-level courses like CS1/2.
development as defined by the IGDA A strategy is to design limited-curricu-
curriculum framework. In these class- lum-scope experiments to gain experi-
es, students study the core topic areas ence (and collect results) to assist the
and implement games to demonstrate committee’s decision-making process.
their understanding of the fundamen- ! Faculty background. Many faculty
tal CS concepts. This work reported members did not grow up playing com-
high student engagement and enthusi- puter games and most are not familiar
asm, while pointing out that the faculty with graphics programming. When
developing or evaluating materials for views of the National Science Founda- 21. Huang, T. Strategy game programming projects. In
Proceedings of the 6th Annual CCSC Northeastern
adoption, it is essential to pay attention tion or Microsoft. Conference on the Journal of Computing in Small
to the prerequisite knowledge. An ideal References
Colleges. Consortium for Computing Sciences in
Colleges, 2001, 205–213.
approach would be to clearly separate 1. Adams, J.C. Chance-It: An object-oriented capstone 22. Külling, M. and Henriksen, P. Game programming in
project for CS-1. In Proceedings of the 29th SIGCSE
and hide the graphical and user inter- Technical Symposium on Computer Science Education.
introductory courses with direct state manipulation.
In Proceedings of the 10th Annual SIGCSE
activity functionality. In this way, fac- ACM Press, NY, 1998, 10–14. Conference on Innovation and Technology in
2. Barnes, T., Richter, H., Powell, E., Chaffin, A., and Computer Science Education. ACM Press, NY, 2005.
ulty and students only need to concen- Godwin, A. Game2learn: Building CS1 learning games 23. Leutenegger, S. and Edgington, J. A games-first
trate on the core CS concepts. for retention. In Proceedings of the 12th Annual approach to teaching introductory programming. In
SIGCSE Conference on Innovation and Technology in Proceedings of the 38th SIGCSE Technical Symposium
! Gender and expertise neutrality. As
Computer Science Education. ACM, NY, 2007, 121–125. on Computer Science Education. ACM Press, NY, 2007,
with any powerful tool, inappropriate 3. Bayliss, J.D. The effects of games in CS1-3. Journal of 115–118.
Game Development 2, 2 (2007). 24. Lewis, M., Leutenegger, S., Panitz, M., Sung, K., and
use of games can backfire and result in 4. Bierre, K., Ventura, P., Phelps, A., and Egert, C. Wallace, S.A. Introductory programming courses and
further alienation of underrepresented Motivating OOP by blowing things up: An exercise in computer games. In Proceedings of the 40th SIGCSE
cooperation and competition in an introductory Java Technical Symposium on Computer Science Education.
groups.20 It is important that the gam- programming course. In Proceedings of the 37th Mar. 2009.
ing materials are gender and expertise SIGCSE Technical Symposium on Computer Science 25. Lewis, M.C. and Massingill, B. Graphical game
Education. ACM Press, NY, 2006, 354–358. development in CS2: A exible infrastructure for a
neutral. For example, it is important to 5. Chen, W-K and Cheng, Y.C. Teaching object-oriented semester long project. In Proceedings of the 37th
avoid violence and unnecessary com- programming laboratory with computer game SIGCSE Technical Symposium on Computer Science
programming. IEEE Transactions on Education 50, 3 Education. ACM Press, NY, 2006, 505–509.
petitions.26 The materials used should (Aug. 2007), 197–203. 26. Natale, M.J. The effect of a male-oriented computer
discourage the addition of superfluous 6. Clark, B., Rosenberg, J., Smith, T., Steiner, S., Wallace, gaming culture on careers in the computer industry.
S., and Orr, G. Game development courses in the SIGCAS Comput. Soc. 32, 2 (2002), 24–31.
“eye-candy” graphical enhancements, computer science curriculum. J. Comput. Small Coll. 27. Nguyen, D.Z. and Wong, S.B. Design patterns for
or user interaction programming by 23, 2 (2007), 65–66. games. In Proceedings of the 33rd SIGCSE Technical
7. Coleman, R., Krembs, M., Labouseur, A., and Weir, J. Symposium on Computer Science Education. ACM
students with extensive prior program- Game design and programming concentration within Press, NY, 2002, 126–130.
ming experience. Doing so will help to the computer science curriculum. In Proceedings of 28. Parberry, I., Kazemzadeh, M.B., and Roden, T. The art
the 36th SIGCSE Technical Symposium on Computer and science of game programming. In Proceedings of
avoid intimidating other less-experi- Science Education. ACM Press, NY, 545–550. the 37th SIGCSE Technical Symposium on Computer
enced students. 8. Cunningham, S., Brown, J.R. Burton, R.P., and Ohlson, Science Education. ACM Press, NY, 2006, 510–514.
M. Varieties of computer graphics courses in computer 29. Parberry, I., Roden, T., and Kazemzadeh, M.B.
! Infrastructure support. Free and science. In Proceedings of the 19th SIGCSE Technical Experience with an industry-driven capstone
Symposium on Computer Science Education. ACM course on game programming: Extended abstract.
simple are the keywords here. Given Press, NY, 1988. In Proceedings of the 36th SIGCSE Technical
the financial reality of most schools, 9. da Silva, F.S.C. Artificial intelligence for computer Symposium on Computer Science Education. ACM
games. University of Sao Paulo, Microsoft Academic Press, NY, 2005, 91–95.
all materials must be freely available; Alliance Repository Newsgroup, 2006; http://www. 30. Pulimood, S.M. and Wolz, U. Problem solving in
the associated institutional infrastruc- msdnaacr.net/curriculum/pfv.aspx?ID=6210. community: a necessary shift in CS pedagogy.
10. da Silva, F.S.C. Software engineering for computer In Proceedings of the 39th SIGCSE Technical
ture requirements must be modest and games. University of Sao Paulo, Microsoft Academic Symposium on Computer Science Education. ACM
straightforward. Alliance Repository Newsgroup, 2006; http://www. Press, NY, 2008, 210–214.
msdnaacr.net/curriculum/pfv.aspx?ID=6211. 31. Repenning, A. and Loannidou, A. Broadening
! Conceptual integrity. Our discus-
11. Dann, W., Cooper, S., and Pausch, R. Learning to participation through scalable game design.
sion focuses on the traditional CS cours- Program with Alice. Prentice Hall, Upper Saddle River, In Proceedings of the 39th SIGCSE Technical
NJ, 2006. Symposium on Computer Science Education. New
es. It is important to remember that 12. Faltin, N. Designing courseware on algorithms York, NY, USA, 2008.
ultimately, the goal is to facilitate stu- for active learning with virtual board games. In 32. Ross, J.M. Guiding students through programming
Proceedings of the 4th Annual SIGCSE/SIGCUE puzzles: Value and examples of Java game
dents’ learning about the core CS con- Conference on Innovation and Technology in assignments. SIGCSE Bull. 34, 4 (2002), 94-98.
cepts. Any dilution, even in favor of ac- Computer Science Education. ACM Press, NY, 1999, 33. Sung, K., Panitz, M., Wallace, S., Anderson, R.,
135–138. and Nordlinger, J. Game-themed programming
quiescing to some students’ desire and 13. Freeman, P. Software engineering education: Needs assignments: The faculty perspective. In Proceedings
motivation to become game developers, and objectives. In Proceedings of the ACM SIGCSE- of the 39th SIGCSE Technical Symposium on Computer
SIGCUE Technical Symposium on Computer Science Science Education. ACM Press, NY, 2008, 300–304.
would do the students a disservice. and Education. ACM Press, NY, 1976, 266. 34. Sung, K. and Shirley, P. Algorithm analysis for
! Textbook availability. As in all 14. Frost, D. Ucigame, A Java library for games. returning adult students. In Proceedings of the Sixth
In Proceedings of the 39th SIGCSE Technical Annual CCSC-NW Conference. J. Computing Sciences
pioneering work, mature and well- Symposium on Computer Science Education. ACM in Colleges 20, 2 (Dec. 2004) 62–72.
35. Sung, K., Shirley, P. and Baer, S. Essentials of
organized materials are mostly under Press, NY, 2008.
Interactive Computer Graphics: Concepts and
15. Gestwicki, P.V. Computer games as motivation for
development. Although there are some design patterns. In Proceedings of the 38th SIGCSE Implementation. A.K. Peters, Wellesley, MA, 2008.
36. Sung, K., Shirley, P. and Reed-Rosenberg, R.
textbooks available for specific ap- Technical Symposium on Computer Science Education.
Experiencing aspects of games programming in an
ACM Press, NY, 2007, 233–237.
proaches (for example, CS1/2,11 com- 16. Gestwicki, P.V. Computer games as motivation for introductory computer graphics class. In Proceedings
of the 38th SIGCSE Technical Symposium on Computer
puter graphics35), mostly, one must be design patterns. In Proceedings of the 38th SIGCSE
Science Education. ACM Press, NY, 2007, 249–253.
Technical Symposium on Computer Science Education.
ready to develop custom reading mate- ACM Press, NY, 2007, 233–237. 37. Sweedyk, E., deLaet, M., Slattery, M.C., and Kuffner,
17. Giguette, R. Pre-games: Games designed to J. Computer games and CS education: Why and
rial to guide students along. how. In Proceedings of the 36th SIGCSE Technical
introduce CS1 and CS2 programming assignments.
In Proceedings of the 34th SIGCSE Technical Symposium on Computer Science Education. ACM
Press, NY, 2005, 256–257.
Acknowledgments Symposium on Computer Science Education. ACM
38. Valentine, D.W. Playing around in the CS curriculum:
Press, NY, 2003, 288–292.
This work is supported in part by the 18. Guzdial, M. Contextulized computing education. Invited Reversi as a teaching tool. J. Comput. Small Coll. 20, 5
(2005), 214–222.
National Science Foundation grant Presentation, Microsoft Research Faculty Summit;
39. Wallace, S.A. and Nierman, A. Using the Java
http://home.cc.gatech.edu/guzdial/169 (July 2008).
DUE-0442420 and Microsoft Research instructional game engine in the classroom. J.
19. Haden, P. The incredible rainbow spitting chicken:
Comput. Small Coll. 23, 2 (2007), 47–48.
under the Computer Gaming Curricu- Teaching traditional programming skills through games
40. Zyda, M. Guest editor’s introduction: Educating the
programming. In Proceedings of the 8th Australian
lum in Computer Science RFP, Award next generation of game developers. IEEE Computer
Conference on Computing Education. Australian
39, 6 (June 2006), 30–34.
Computer Society, Darlinghurst, 2006, 81–89.
Number 15871 and 16531. All opinions, 20. Haller, S., Ladd, B., Leutenegger, S., Nordlinger, J.,
Kelvin Sung (ksung@u.washington.edu) is a professor in
findings, conclusions, and recommen- Paul, J., Walker, H., and Zander, C. Games: Good/
the department of Computing and Software Systems at
evil. In Proceedings of the 39th SIGCSE Technical
dations in this work are those of the au- Symposium on Computer Science Education. ACM
the University of Washington, Bothell, WA.
thors and do not necessarily reflect the Press, NY, 2008, 219–220. © 2009 ACM 0001-0782/09/1200 $10.00
P. 89 P. 90
Technical ThinSight: A Thin Form-Factor
Perspective Interactive Surface Technology
A Graphical
By Shahram Izadi, Steve Hodges, Alex Butler, Darren West,
Sense of Touch Alban Rrustemi, Mike Molloy and William Buxton
By Pat Hanrahan
Technical Perspective
Design Tools for the Rest of Us
By James A. Landay
D EC E MB E R 2 0 0 9 | VO L . 5 2 | N O. 1 2 | C OM M U N IC AT ION S O F T HE ACM 81
research highlights
D EC E MB E R 2 0 0 9 | VO L . 5 2 | N O. 1 2 | C OM M U N IC AT ION S O F T HE ACM 83
research highlights
Figure 9. Insertion of a seam line. (a) Before drawing a line, (b) after Figure 12. Pulling a 2D patch.
drawing a line, (c) the seam line’s two endpoints snap at other seam
lines, and (d) After pulling the seam line.
5. IMPLEMENTATION
This section briefly describes the implementation of
(a) (b) (c)
Plushie. A more detailed description is found in our original
paper.18 We use a standard triangle mesh for the represen-
tation of the 3D model and 2D patches. We use a relatively
patches. If the stroke starts or ends in the middle of a coarse mesh (1000–2000 vertices) to achieve interactive
patch, it becomes a dart. The 3D geometry does not change performance. Each vertex, edge, and face of the 3D mesh
immediately after the insertion of these seam lines, but the is associated with corresponding entities in the 2D mesh.
user can pull the seam line afterwards to modify the shape. A 3D mesh is always given as a result of applying a physical
This operation is very useful for creating a salient feature simulation to the assembled 2D pattern. To be more pre-
in the middle of a flat patch. Deletion is achieved by trac- cise, the physical simulation applied to the 3D mesh is gov-
ing the target seam line in the erasing mode. This merges erned by the rest length of each edge and the rest length is
the separated patches together and thus flattens the area defined in the 2D mesh. For each modeling operation, the
(Figure 10). system constructs the initial 2D patches and the 3D geom-
Operations on the 2D Pattern View: The 2D pattern view is etry corresponding to the input stroke, and then runs a
mainly used to preview the pattern to be printed for sewing, physical simulation to update the 3D geometry. The system
but it also works as an interface for advanced users to edit the then adjusts the patch shape so that the simulation results
pattern directly. The preview helps the user to understand match the input strokes.
the relationship between the 3D model and 2D patches and
gives a sense of the labor required for assembling the patches. 5.1. Physical simulation
The system can display how patches are connected by show- We use a simple static method for the physical simulation.
ing connectors or paired numbers (Figure 11). Connectors We examined other, more elaborate methods, such as
are useful for understanding the relationship on the screen finite element methods,8 dynamic simulation,5 and energy
and numbers are useful as a printed reference on each minimization,4 but we found that the simple approach is
pi n
ni
(a) (b) di
D EC E MB E R 2 0 0 9 | VO L . 5 2 | N O. 1 2 | C OM M U N IC AT ION S O F T HE ACM 85
research highlights
Figure 17. (a) Creation of a part. The system projects the input stroke Figure 18. Pulling a vertex on a seam line.
to a working plane and cuts the base mesh with either an elliptic
curve or a line (b). The 3D geometry is constructed by creating a
mesh between the projected stroke and the base curves (c).
hi
ui0 ui1
ni
they enjoyed the process. These toys were their own cre-
ations and one-of-a-kind designs. Participants also gave us
valuable feedback for future improvement. They wanted to
have some auxiliary functions such as the ability to design
symmetric parts and remove existing parts, but no one
complained about the quality of the visual simulation. A
perfectly accurate simulation is not necessary because
many small variations inevitably occur during the real sew-
ing and stuffing process.
7. CONCLUSION
We introduced a plush-toy design system as an example of
Figure 20. Example of texture changed. These models have many our efforts to make CAD and CAE accessible to end users.
thin parts. The system allows the user to design a plush toy quickly and
simply by combining simple sketching operations. The user
draws the desired silhouette on the canvas, and the system
automatically generates a 3D plush-toy model and a 2D cloth
pattern. The system runs a simple physical simulation in the
background so that the resulting 3D model is always a good
estimate of the final sewn result. The user can construct a
real plush toy by printing the pattern and sewing the result-
ing pieces together.
To demonstrate the effectiveness of the approach
even further, we also developed a system for the design of
knitted toys.13 A knitted toy is a toy made of knitted yarn
Figure 21. Example of original plush toys designed and created by
instead of cloth patches. One can construct a knitted
children in the workshop. toy by knitting according to a specific knitting pattern,
but it is difficult to produce an appropriate knitting pat-
tern for a desired 3D shape. The Knitty system allows the
user to design an original knitted toy by simply drawing the
desired silhouette (Figure 22). The system then generates a
3D knitted animal model and corresponding knitting dia-
gram. We ran a workshop using this system and observed
that children could use it to design their own knitted
animals.
Interactive 3D modeling assisted by concurrent physi-
cal simulation can be a powerful tool in many other
application domains. For example, if one could run an
aerodynamic simulation during the interactive design
of a paper airplane model, the entire geometry could be
adjusted in an intelligent manner in response to the user’s
children, approximately 10–14 years old, joined the work- simple deformation operations to produce a model that
shop accompanied by their parents. We gave a brief tuto- could actually fly. This kind of interaction would make it
rial at the beginning and had them design their own plush easier for designers to pursue aesthetic goals while satis-
toys using the system. It took about an hour for the design. fying engineering constraints. Real-time simulation does
They then printed the designed pattern and sewed a real require high-performance computing resources, but some
toy in a3 h. Figure 21 shows a couple of plush toys created meaningful support should be possible by carefully limit-
in the workshop. Participants quickly learned how to use ing the target task and designing appropriate interfaces as
the system and successfully designed the 3D models they shown in this paper. We hope that our work inspires more
wanted, with some help from volunteers. Furthermore, work in this direction.
D EC E MB E R 2 0 0 9 | VO L . 5 2 | N O. 1 2 | C OM M U N IC AT ION S O F T HE ACM 87
research highlights
IST Austria
Call for Ph.D. Students
The Graduate School at IST Austria invites applicants from all countries to its Ph.D. program.
IST Austria is a new institute located near Vienna dedicated to basic research in the natural sci-
ences and related disciplines. The language of the Institute and the Graduate School is English.
The Ph.D. program combines advanced coursework and research, with a focus on Biology, Com-
puter Science, and interdisciplinary areas. IST Austria offers internationally competitive Ph.D. sala-
ries supporting 4-5 years of study. Applicants holding either a BS or MS degree are welcomed.
The Institute offers Ph.D. student positions with the following faculty:
Additional faculty members will be announced on the IST website www.ist.ac.at | To apply online visit
www.ist.ac.at/gradschool | For enquiries, please contact gradschool@ist.ac.at | For students
wishing to enter the program in the fall of 2010, the deadline for applications is January 15, 2010.
IST Austria is committed to Equality and Diversity. In particular female applicants are encouraged to apply.
88 IST_Inserat_PHD-Students_ACM_177x121_RZ2.indd 1
COMMUNICATION S O F TH E AC M | DEC EM BE R 2009 | VO L. 5 2 | N O. 1 2 13.10.09 12:05
D OI:10.1145/ 1610252 . 1 6 1 0 2 76
Technical Perspective
A Graphical Sense of Touch
By Pat Hanrahan
ONE OF THE major innovations in com- ited input by providing context. An- sory modalities, including a micro-
puting was the invention of the graph- other strategy for enhancing input is phone, camera, accelerometer, and a
ical user interface at MIT, SRI, and to use pattern recognition to extract GPS receiver and compass. Relative to
Xerox PARC. The combination of com- as much information as possible from a modern desktop computer, it is sen-
puter graphics hardware with a mouse the stream of sensed data. sory rich and output poor.
and keyboard enabled a new class of Fortunately, this state of sensory de- The following paper by a team from
highly interactive applications based privation is beginning to change. Microsoft Research introduces a very
on direct manipulation of on-screen The biggest recent development is novel way to build a multitouch in-
displays. the commercial emergence of multi- terface—the ThinSight system. They
It is interesting to reflect on the rela- touch displays. Traditional display in- modify a flat-panel display to sense
tive rate of advance of input and output put technology only returns a single X, touch directly. Previously, touch was
technology since the very first systems. Y position at a time. As a result, the user sensed indirectly; for example, by
At the time, graphics hardware consist- can only point to a single location at a mounting a camera to look at the sur-
ed of single-bit framebuffers output- time and, consequently, use only one face of the display. The camera-based
ting to black-and-white displays. finger or one hand at a time. approaches require a fairly large space,
Moving forward, we now have In a multitouch display, multiple have problems with occlusion, and are
flat-panel, high-definition, full-color points are sensed simultaneously. difficult to calibrate. In the ThinSight
displays driven by inexpensive, high- This allows the application to sense system, the LED backlight that drives
performance graphics chips capable multiple fingers from both hands. the display is modified to include in-
of drawing three-dimensional virtual This in turn makes it possible to rec- frared LEDs and sensors interspersed
worlds in real time. ognize finger gestures or coordinated amid the visible light emitters.
Graphics hardware draws tens of mil- two-handed motion. The display surface can both emit
lions of polygons and tens of billions of Successful commercial examples light and sense position. Distribut-
pixels per second. In comparison, most of multitouch displays include the Ap- ing sensors throughout the display
personal computers ship with a mouse ple iPhone and the Microsoft Surface. substrate yields a compact, efficient
and keyboard similar to that used at Xe- The iPhone has a unique user inter- design.
rox PARC in the 1970s. face that is enabled by an embedded This paper is important because
The lack of progress in input tech- multitouch display. To zoom into a it proposes an innovative design that
nology has caused computers to be- map, the user simply moves their fin- addresses a long-standing problem.
come sensory deprived. They can gers apart. Beyond touch, the iPhone However, there is much more work to
output incredible displays of infor- has several additional built-in sen- do in this area. The authors have add-
mation, but they receive almost no ed the sense of touch to the display,
information from their surrounding but like real touch sensors it has lim-
environment. The following paper ited resolution and the sensed object
Contrast this situation to a living or- must be in contact with the display. In
ganism. Most organisms have extraor- by a team from Pierre Wellner’s pioneering work on
dinary abilities to sense their environ- Microsoft Research the digital desk, the computer sensed
ment, but limited ability to display remote hand positions as well as the
information (except by movement; a introduces a very position, type, and content of objects
few animals like the chameleon and novel way to build on the desk. Unfortunately, Wellner’s
the cuttlefish can change their skin system involved bulky cameras and
color). Perhaps this explains why we a multitouch projectors.
enjoy interacting with our pets more interface. They Hopefully HCI researchers will ex-
than with our computers. pand on the innovative sensing strategy
Stuart Card, a Senior Research Fel- modify a flat-panel proposed in this paper. We want com-
low at Xerox PARC, has observed that display to sense pact interactive devices that have rich
one of the breakthrough ideas in the sensory capabilities including touch,
graphical user interface was to am- touch directly. sight, and hearing.
plify input relative to output. One
mechanism is to enable input to be on Pat Hanrahan is the CANON Professor of Computer
output. Examples include on-screen Science and Electrical Engineering in the Computer
Graphics Laboratory at Stanford University, Stanford, CA.
buttons and menus. By leveraging
output technology, we augment lim- © 2009 ACM 0001-0782/09/1200 $10.00
D EC E MB E R 2 0 0 9 | VO L. 5 2 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 91
research highlights
Figure 3. Top: the front side of the sensor PCB showing the 7 × 5 array Figure 4. Typical LCD edge-lit architecture shown left. The LCD
of IR optosensors. The transistors that enable each detector are comprises a stack of optical elements. A white light source is
visible to the right of each optosensor. Bottom: the back of the typically located along one or two edges at the back of the panel.
sensor PCB has little more than a PIC microcontroller, a USB interface A white reflector and transparent light guide direct the light toward
and FETs to drive the rows and columns of IR emitting LEDs. Three the front of the panel. The films help scatter this light uniformly and
such PCBs are used in our ThinSight laptop while there are thirty in enhance brightness. However, they also cause excessive attenuation
the tabletop prototype. of IR light. In ThinSight, shown right, the films are substituted and
placed behind the light guide to minimize attenuation and also
reduce noise caused by LCD flexing upon touch. The sensors and
emitters are placed at the bottom of the resulting stack, aligned with
holes cut in the reflector.
LCD and
polarizers
Diffuser and brightness
Enhancing Film
Light guide
White light source
Neutral density filter
and Radiant Light Film
Reflector
IR LED USB interface Sensor Emitter
column drivers
4. THINSIGHT IN OPERATION
D EC E MB E R 2 0 0 9 | VO L . 5 2 | N O. 1 2 | C OM M U N IC AT ION S O F T H E ACM 93
research highlights
Figure 7. The raw ThinSight sensor data shown left and after
4.3. Communicating through the ThinSight display
interpolation and smoothing right. Note that the raw image is a very Beyond simple identification, an embedded IR transmit-
low resolution, but contains enough data to generate the relatively ter also provides a basis for supporting richer bidirectional
rich image at right. communication with the display. In theory any IR modula-
tion scheme, such as the widely adopted IrDA standard,
could be supported by ThinSight. We have implemented
a DC-balanced modulation scheme which allows retro-
reflective object sensing to occur at the same time as data
transmission. This required no additions or alterations to the
sensor PCB, only changes to the microcontroller firmware.
To demonstrate our prototype implementation of this, we
built a small embedded IR transceiver based on a low power
MSP430 microcontroller, see Figure 10. We encode 3 bits of
data in the IR transmitted from the ThinSight pixels to con-
Figure 8. Fingertips can be sensed easily with ThinSight. Left: the trol an RGB LED fitted to the embedded receiver. When the
user places five fingers on the display to manipulate a photo. Right: user touches various soft buttons on the ThinSight display,
a close-up of the sensor data when fingers are positioned as shown this in turn transmits different 3 bit codes from ThinSight
at left. The raw sensor data is: (1) scaled-up with interpolation, pixels to cause different colors on the embedded device to
(2) normalized, (3) thresholded to produce a binary image, and finally
(4) processed using connected components analysis to reveal the
be activated.
fingertip locations. It is theoretically possible to transmit and receive dif-
ferent data simultaneously using different columns on the
sophisticated IR illumination scheme. We have been experi- The Microsoft Surface and ReacTable12 also use rear-
menting with using an acrylic overlay on top of the LCD and projection, IR illuminant and a rear mounted IR camera to
using IR LEDs for edge illumination. This would allow us to monitor fingertips, this time in a horizontal tabletop form-
sense multiple touch points using standard Frustrated Total factor. These systems also detect and identify objects with
Internal Reflection (FTIR),5 but not objects. We have, how- IR-reflective markers on their surface.
ever, also experimented with a material called Endlighten The rich data generated by camera-based systems pro-
which allows this FTIR scheme to be extended to diffuse illu- vides extreme flexibility. However, as Wilson discusses28
mination, allowing both multitouch and object sensing with this flexibility comes at a cost, including the computa-
far fewer IR emitters than our current setup. The overlay can tional demands of processing high resolution images, sus-
also serve the dual purpose of protecting the LCD from flex- ceptibility to adverse lighting conditions and problems of
ing under touch. motion blur. However, perhaps more importantly, these
systems require the camera to be placed at some distance
6. RELATED WORK from the display to capture the entire scene, limiting their
The area of interactive surfaces has gained particular portability, practicality and introducing a setup and cali-
attention recently following the advent of the iPhone and bration cost.
Microsoft Surface. However, it is a field with over two decades
of history.3 Despite this sustained interest there has been an 6.2. Opaque embedded sensing
evident lack of off-the-shelf solutions for detecting multiple Despite the power of camera-based systems, the associ-
fingers and/or objects on a display surface. Here, we sum- ated drawbacks outlined above have resulted in a number
marize the relevant research in these areas and describe the of parallel research efforts to develop a non-vision-based
few commercially available systems. multitouch display. One approach is to embed a multi-
touch sensor of some kind behind a surface that can have
6.1. Camera-based systems an image projected onto it. A natural technology for this is
One approach to detecting multitouch and tangible input capacitive sensing, where the capacitive coupling to ground
is to use a video camera placed in front of or above the introduced by a fingertip is detected, typically by monitoring
surface, and apply computer vision algorithms for sens- the rate of leakage of charge away from conductive plates or
ing. Early seminal work includes Krueger’s VideoDesk13 wires mounted behind the display surface.
and the DigitalDesk,26 which use dwell time and a micro- Some manufacturers such as Logitech and Apple have
phone (respectively) to detect when a user is actually touch- enhanced the standard laptop-style touch pad to detect
ing the surface. More recently, the Visual Touchpad17 and certain gestures based on more than one point of touch.
C-Slate9 use a stereo camera placed above the display to However, in these systems, using more than two or three fin-
more accurately detect touch. The disparity between the gers typically results in ambiguities in the sensed data. This
image pairs determines the height of fingers above the constrains the gestures they support. Lee et al.14 used capac-
surface. PlayAnywhere28 introduces a number of addi- itive sensing with a number of discrete metal electrodes
tional image processing techniques for front-projected arranged in a matrix configuration to support multitouch
vision-based systems, including a shadow-based touch over a larger area. Westerman25 describes a sophisticated
detection algorithm, a novel visual bar code scheme, capacitive multitouch system which generates x-ray-like
paper tracking, and an optical flow algorithm for biman- images of a hand interacting with an opaque sensing sur-
ual interaction. face, which could be projected onto. A derivative of this work
Camera-based systems such as those described above was commercialized by Fingerworks.
obviously require direct line-of-sight to the objects being DiamondTouch4 is composed of a grid of row and col-
sensed which in some cases can restrict usage scenarios. umn antennas which emit signals that capacitively couple
Occlusion problems are mitigated in PlayAnywhere by with users when they touch the surface. Users are also
mounting the camera off-axis. A natural progression is to capacitively coupled to receivers through pads on their
mount the camera behind the display. HoloWall18 uses IR chairs. In this way the system can identify which antennas
illuminant and a camera equipped with an IR pass filter behind the display surface are being touched and by which
behind a diffusive projection panel to detect hands and user, although a user touching the surface at two points can
other IR-reflective objects in front of it. The system can accu- produce ambiguities. The SmartSkin21 system consists of
rately determine the contact areas by simply thresholding a grid of capacitively coupled transmitting and receiving
the infrared image. TouchLight27 uses rear-projection onto a antennas. As a finger approaches an intersection point,
holographic screen, which is also illuminated from behind this causes a drop in coupling which is measured to deter-
with IR light. A number of multitouch application scenarios mine finger proximity. The system is capable of supporting
are enabled including high-resolution imaging capabilities. multiple points of contact by the same user and generat-
Han5 describes a straightforward yet powerful technique ing images of contact regions of the hand. SmartSkin and
for enabling high-resolution multitouch sensing on rear- DiamondTouch also support physical objects, but can only
projected surfaces based on FTIR. Compelling multitouch identify an object when a user touches it. Tactex provide
applications have been demonstrated using this technique. another interesting example of an opaque multitouch sen-
The Smart Table22 uses this same FTIR technique in a table- sor, which uses transducers to measure surface pressure at
top form factor. multiple touch points.23
Take Advantage of
ACM’s Lifetime Membership Plan!
ACM Professional Members can enjoy the convenience of making a single payment for their
entire tenure as an ACM Member, and also be protected from future price increases by
taking advantage of ACM's Lifetime Membership option.
ACM Lifetime Membership dues may be tax deductible under certain circumstances, so
becoming a Lifetime Member can have additional advantages if you act before the end of
2009. (Please consult with your tax advisor.)
Lifetime Members receive a certificate of recognition suitable for framing, and enjoy all of
the benefits of ACM Professional Membership.
Boise State University and three reference letters to: Professor Franco degree in Information Systems. Applicants must
Assistant Professor of Computer Science Cerrina, Chair, Department of Electrical & Com- have a Ph.D. in Computer Science. Faculty are ex-
puter Engineering, Boston University, 8 Saint pected to commit to quality teaching, scholarship
The Department of Computer Science at Boise State Mary’s Street, Room 324, Boston, MA 02215. Ma- and service.
University is seeking a tenure-track faculty member terials may also be sent in PDF format via email to The University is a public mid-sized, compre-
at the assistant-professor level. Candidates special- rbell@bu.edu. Boston University is an Equal Op- hensive liberal arts-oriented institution. The Uni-
izing in the areas of databases, software engineer- portunity/Affirmative Action Employer. versity is located in Conway, South Carolina, just
ing, and visualization are especially encouraged to For additional information, please visit http:// nine miles from the Atlantic coastal resort of Myr-
apply, Additional details are found online at: http:// www.bu.edu/ece. tle Beach, one of the fastest-growing metropoli-
coen.boisestate.edu/cs/Opportunities.asp tan areas in the nation. It has an enrollment of
EEO/AA Institution, Veterans preference. 8,200 students and is expected to have continued
Carleton College growth for the next several years. The University
Computer Science Department is a part of the South Carolina system of public
Boston University Tenure-Track Faculty Position education and has close ties with its founders, the
Department of Electrical & Computer Horry County Higher Education Commission.
Engineering Faculty Positions Carleton College invites applications for a tenure- Interested candidates should apply online at:
track position in computer science, in any area of http://jobs.coastal/edu. Candidates are asked to
The Department of Electrical & Computer Engi- specialization, to begin September 1, 2010. More submit: a letter of application, curriculum vitae,
neering (ECE) at Boston University (BU) is seeking details on this position can be found at three letters of reference, and two conference
candidates for several anticipated faculty posi- cs.carleton.edu/hiring. proceedings or journal articles, along with a 4-5
tions at all ranks in signals and systems, commu- paragraph statement of teaching philosophy. Re-
nications, computer systems and networks, pho- Carleton is a highly selective liberal arts col- view of applications will begin immediately and
tonics, solid-state devices and nanostructures, lege with outstanding, enthusiastic students. We continue until the positions are filled.
and related areas. The Department is seeking to seek an equally enthusiastic computer scientist Applicants must have a Ph.D. in Computer
foster growth in the broad, interdisciplinary top- committed to excellence in teaching, curriculum Science. Faculty are expected to commit to qual-
ics of energy, health, and communications; can- design, ongoing research, and undergraduate re- ity teaching, scholarship and service.
didates with research interests that transcend search advising. To apply, send cover letter, CV, While special interest will be given to candi-
the traditional boundaries of ECE are strongly brief statements describing teaching philosophy dates specializing in data mining, computational
encouraged to apply. and research agenda, graduate transcript, and intelligence, biomedical applications, and em-
ECE at BU is a world-class, progressive de- three reference letters, at least one of which ad- bedded systems, qualified applicants from all ar-
partment with excellent resources that is steadily dresses your teaching, to cssearch@carleton.edu. eas of Computer Science are encouraged to apply.
gaining national and international prominence Electronic submissions (pdf) are preferred, or Preference will be given to candidates who can
for its exceptional research and education record. write to: Tenure-Track Search Committee, Com- work across multiple disciplines and collaborate
ECE is part of BU’s rapidly growing and innovative puter Science Department, Carleton College, One with other faculty, developing successful inter-
College of Engineering, and currently consists of North College Street, Northfield, MN 55057. Ap- disciplinary research proposals.
approximately 45 faculty members, 200 graduate plications completed by January 1, 2010 will re- Coastal Carolina University
students, and 200 undergraduates. Outstanding ceive full consideration. is an EO/AA employer.
collaboration opportunities are available with na- Carleton College is an affirmative action/
tionally recognized medical centers and universi- equal opportunity employer. We are committed
ties/colleges, nearby research centers, and industry to developing our faculty to better reflect the di- College of William & Mary
throughout the Boston area. Joint appointments versity of our student body and American society. Faculty Position – Assistant Professor
with other BU departments and with the newly Women and members of minority groups are
formed Divisions of Materials Science & Engineer- strongly encouraged to apply. We invite applications for a tenure-track assistant
ing and Systems Engineering are also possible. professor position in Computer Science for Fall
Qualified candidates must possess a relevant, 2010. We are interested in individuals with re-
earned PhD, and have a demonstrable ability to Coastal Carolina University search expertise in all areas of computer science.
teach effectively and develop funded programs in Assistant/ Associate Professors Applicants must hold a Ph.D. in computer science
their area of expertise that will contribute to the of Computer Science or a related field at the time of appointment, must
tradition of excellence in research characteristic have a strong research record, and should have an
of the ECE Department. Self-motivated individu- The Department of Computer Science & Informa- interest in teaching.
als who thrive on challenge and are eager to utilize tion Systems at Coastal Carolina University invites The College of William and Mary, consistently
their expertise to strengthen an ambitious pro- applications for two Assistant / Associate Profes- ranked in the elite group of the Best National Uni-
gram of departmental growth are desired. Women, sor positions beginning fall 2010. While special versities Doctoral by U.S. News and World Report,
minorities, and candidates from other underrepre- interest will be given to candidates specializing has committed to a multi-year effort to strength-
sented groups are especially encouraged to apply. in data mining, computational intelligence, bio- en its computer science research program. The
Beyond its research and academic activities, medical applications, and embedded systems, department currently consists of fourteen faculty
BU has a lively, urban campus situated along the qualified applicants from all areas of Computer members who support B.S., M.S., and Ph.D. pro-
banks of the Charles River in Boston’s historic Science are encouraged to apply. Preference grams. More information about the department
Fenway-Kenmore neighborhood. The campus and will be given to candidates who can work across and university can be obtained at:
surrounding areas offer limitless opportunities for multiple disciplines and collaborate with other http://www.cs.wm.edu.
recreational activities, from world-class art and faculty, developing successful inter-disciplinary
performances to sporting events and fine dining. research proposals. Applicants should submit a current resume,
Applicants should send their curriculum vi- The Department’s 11 faculty support an ABET research and teaching statements, the names of
tae, statements of teaching and research plans, accredited B.S. in Computer Science, and a B.S. at least three references, and supporting docu-
ments they consider most relevant. We prefer that disciplinary foundation and demonstrate prom- be received by December 31, 2009.
the application materials be submitted as PDF at- ise of outstanding scholarship in every respect, Duke University is an affirmative action, equal
tachments in email to 09search@CS.WM.EDU. If including research and teaching. Please refer to opportunity employer.
necessary, hard copy may be submitted to: www.cs.duke.edu for information about the de-
Faculty Search Committee partment and to www.provost.duke.edu/faculty/
Department of Computer Science for information about the advantages that Duke Earlham College
The College of William & Mary offers to faculty. Visiting Assistant Professor of Computer
P.O. Box 8795 Applications should be submitted online at Science
Williamsburg, VA 23187-8795 www.cs.duke.edu/facsearch. A Ph.D. in computer
science or related area is required. To guarantee One-year, full-time, non-tenure-track beginning
Review of applications will begin December full consideration, applications and letters of ref- Fall 2010. Review of applications begins January
15 and continue until the position is filled. The erence should be received by January 3, 2010. 15, 2010. CS at Earlham is a small, dynamic, inno-
College is an EEO/AA employer. Durham, Chapel Hill, and the Research Tri- vative, student-centered department. See http://
angle of North Carolina are vibrant, diverse, and cs.earlham.edu/ad.html
thriving communities, frequently ranked among
Duke University the best places in the country to live and work.
Department of Computer Science Duke and the many other universities in the area The George Washington University
offer a wealth of education and employment op- Department of Computer Science
The Department of Computer Science at Duke portunities for spouses and families. Three Faculty Positions
University invites applications and nominations Duke University is an affirmative action, equal
for tenure-track faculty positions at an assistant opportunity employer. The Department of Computer Science at The
professor level, to begin August 2010. We are in- George Washington University is seeking appli-
terested in strong candidates in all active research cants for three faculty positions. The first is (A) a
areas of computer science, both core and interdis- Duke University tenured senior position in security, at the rank of
ciplinary areas, including algorithms, artificial in- Tenure-track Faculty Associate or Full Professor. The second position
telligence, computational economics, computer is (B) a tenure-track position in the area systems
architecture, computer vision, database systems, The Department of Electrical and Computer En- security, and the third is (C) a tenure-track posi-
distributed systems, machine learning, network- gineering at Duke University invites applications tion in the area of Artificial Intelligence with a
ing, security, and theory. for tenure-track faculty positions at all levels. We focus on Robotics. Position B and C will be at the
The department is committed to increasing are interested in strong candidates in all areas of rank of Assistant or Associate Professor. The rank
the diversity of its faculty, and we strongly en- computer engineering. for all positions will depend on experience. Suc-
courage applications from women and minority Applications should be submitted online at cessful candidates may start as early as Fall 2010.
candidates. www.ee.duke.edu/employment. Basic Qualifications: All applicants must have
A successful candidate must have a solid Applications and letters of reference should a Ph.D degree in Computer Science or a closely
INFORMATION SCIENCE
7KH8QLYHUVLW\RI1HZ0H[LFR Cornell University (Ref: ISF#3)
&RUQHOO
V ,QIRUPDWLRQ 6FLHQFH 3URJUDP
*UHDWSHRSOHGRLQJJUHDWWKLQJV ZZZLQIRVFLFRUQHOOHGX LVVHHNLQJWRILOORQH
RUPRUHWHQXUHWUDFNIDFXOW\SRVLWLRQV
Computer Science Assistant Professor Position ,QIRUPDWLRQ6FLHQFHDW&RUQHOOEULQJVWRJHWKHU
WKRVH LQWHUHVWHG LQ VWXG\LQJ LQIRUPDWLRQ
7KH 'HSDUWPHQW RI &RPSXWHU 6FLHQFH LQYLWHV DSSOLFDWLRQV IRU RQH SUREDWLRQDU\ V\VWHPV LQ WKHLU VRFLDO FXOWXUDO HFRQRPLF
DSSRLQWPHQWOHDGLQJWRDWHQXUHGHFLVLRQDWWKH$VVLVWDQW3URIHVVRUOHYHO:HVHHN KLVWRULFDOOHJDODQGSROLWLFDOFRQWH[WV:HDUH
DSSOLFDQWV IURP DFURVV FRPSXWHU VFLHQFH LQFOXGLQJ EXW QRW OLPLWHG WR ODUJH GDWD HVSHFLDOO\LQWHUHVWHGLQWKHDUHDVRI
V\VWHPVQHWZRUNVVRIWZDUHGHVLJQDQGHQJLQHHULQJJUDSKLFVDQGYLVXDOL]DWLRQDQG ODUJHLQIRUPDWLRQQHWZRUNVDQGFRPPXQLWLHV
$,DQGDGDSWLYHV\VWHPV:HDUHDVWURQJO\LQWHUGLVFLSOLQDU\GHSDUWPHQWDQGDUH ZLWK D IRFXV RQ PHWKRGV IRU WKHLU GHVLJQ
DQDO\VLVRUYLVXDOL]DWLRQ
SDUWLFXODUO\ LQWHUHVWHG LQ DSSOLFDQWV SXVKLQJ WKH ERXQGDULHV RI FRPSXWHU VFLHQFH
ZLWKRWKHUILHOGV DQDO\VLV RI VRFLRWHFKQLFDO V\VWHPV ZLWK D
IRFXV RQ WKHLU JRYHUQDQFH RU WKH SUDFWLFHV
)RUPRUHLQIRUPDWLRQUHIHUWRIXOOMREDGDWKWWSZZZFVXQPHGXMREV WKDWHPHUJHZLWKLQWKHP
&DQGLGDWHVPXVWKDYHFRPSOHWHGDGRFWRUDWHLQ&6RUDUHOHYDQWDUHDE\$XJXVW :HZLOODOVRFRQVLGHUFDQGLGDWHVLQRWKHUDUHDV
$SSOLFDQWVVKRXOGGHPRQVWUDWHDVWURQJFRPPLWPHQWWRXQGHUJUDGXDWHDQG RI,QIRUPDWLRQ6FLHQFH7KHLGHDODSSOLFDQWZLOO
KDYHDVWURQJPL[RIERWKWHFKQLFDODQGVRFLDO
JUDGXDWH HGXFDWLRQ KDYH D UHVHDUFK SURILOH LQ RQH RI WKH JHQHUDO &6 DUHDV VFLHQFH UHVHDUFK VNLOOV DQG DFFRPSOLVKPHQWV
HQXPHUDWHG DERYH DQG GHPRQVWUDWH WKH DELOLW\ WR HVWDEOLVK D QDWLRQDOO\ YLVLEOH 3OHDVHVHHZZZLQIRVFLFRUQHOOHGXMREV IRUD
UHVHDUFKSURJUDP IXOOGHVFULSWLRQRIWKHSRVLWLRQV
)RUEHVWFRQVLGHUDWLRQFRPSOHWHDSSOLFDWLRQVPXVWEHUHFHLYHGE\-DQXDU\ 7RHQVXUHIXOOFRQVLGHUDWLRQDSSOLFDWLRQVVKRXOG
7KHSRVLWLRQZLOOUHPDLQRSHQXQWLOILOOHG(DFKDSSOLFDWLRQPXVWLQFOXGHDFRYHU EH UHFHLYHG E\ -DQXDU\ EXW ZLOO EH
DFFHSWHGXQWLODOOSRVLWLRQVDUHILOOHG$SSOLFDQWV
OHWWHUVXPPDUL]LQJWKHDSSOLFDQW·VH[SHULHQFHFXUULFXOXPYLWDUHVHDUFKVWDWHPHQW VKRXOGVXEPLWDFXUULFXOXPYLWDEULHIVWDWHPHQWV
WHDFKLQJ VWDWHPHQW DQG WKUHH OHWWHUV RI UHIHUHQFH ,W LV WKH DSSOLFDQW·V RI UHVHDUFK DQG WHDFKLQJ LQWHUHVWV WKURXJK WKH
UHVSRQVLELOLW\ WR HQVXUH WKDW WKH OHWWHUV RI UHIHUHQFH DUH VXEPLWWHG EHIRUH WKH ZHE DW KWWSZZZLQIRVFLFRUQHOOHGXDSSO\
DSSOLFDWLRQGHDGOLQH DQG DUUDQJH WR KDYH DW OHDVW WKUHH OHWWHUV RI
UHIHUHQFHXSORDGHGRQWKH:HE
$SSOLFDWLRQV PXVW EH VXEPLWWHG RQOLQH WKURXJK KWWSV810-REVXQPHGX E\
UHIHUHQFLQJ SRVWLQJ 5HIHUHQFH OHWWHUV VKRXOG EH HPDLOHG GLUHFWO\ WR
IDFXOW\BVHDUFK#FVXQPHGX
,QTXLULHVVKRXOGEHVHQWWRIDFXOW\BVHDUFK#FVXQPHGX &RUQHOO8QLYHUVLW\LVDQ$IILUPDWLYH$FWLRQ
(TXDO2SSRUWXQLW\(PSOR\HUDQG(GXFDWRU
The University of New Mexico is an Equal Opportunity/Affirmative Action Employer and Educator.
For additional information about UNM see http://www.unm.edu
3$*('HFHPEHULVVXH
100 COMM UNICATION S O F T H E ACM | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2
5(9,6('3')
related field. (A) Applicants to the tenured senior Indiana University Southeast five years, with a possible, but not automatic, re-
position in security must currently have well- Assistant Professor of Informatics newal for two additional years. Before the end of
funded research programs, must be a recognized this period, the scientist will be considered for an
scholar in the research community, and must be Tenure-track Informatics position for Fall 2010. indefinite appointment as a Professor at IST Aus-
prepared to take on a leading research role within Applications accepted until January 15, 2010 or tria, the decision being based on merit only (as is
the department and in the field. (B and C) ABD until position is filled. For further position de- the case for a “Tenure-Track Assistant Professor”
candidates may apply for the Assistant Professor scription and how to apply go to www.ius.edu/hr/ at U.S. universities).
rank, but they must complete their Ph.D degree employment_opportunities.cfm The selected candidates will receive a com-
by August 15, 2010. Applicants for the Assistant petitive salary and a substantial annual research
Professor rank must demonstrate a potential for budget, covering operating expenses and the
developing an advanced research program and IST Austria is looking for cost of Ph.D. students, postdoctoral fellows, and
for attracting significant research funding. Appli- Professors and Assistant Professors technical staff. Additional costs of starting a new
cants for the Associate Professor rank must have laboratory, including instruments and infrastruc-
well-established and well-funded research pro- IST Austria (Institute of Science and Technology ture, will be offered separately. Scientists are also
grams. All applicants must have demonstrated Austria) is a new Institute located near Vienna, expected to apply for external research grants.
teaching excellence or potential at both under- dedicated to basic research at the highest inter- Applications and nominations should be sent
graduate and graduate levels. national level. The Institute invites applications to professor@ist.ac.at or assistant.professor@ist.
The George Washington University is the larg- and nominations for Professors and Assistant ac.at, depending on the relevant position. Appli-
est academic institution in the nation’s capital Professors in Life Sciences, Physical Sciences, cations must include a CV, a list of publications
with close access to many Federal funding agen- Mathematics and Computer Science, as well as in and a research plan. Nominations should include
cies and research laboratories. The University any multidisciplinary field. an appraisal of the achievements and scientific
offers comprehensive programs of undergradu- The Institute (www.ist.ac.at), established by qualifications of the nominee.
ate and graduate liberal arts studies as well as the Austrian Government, opened its campus in IST Austria is committed to Equality and Di-
degrees in engineering, law, medicine, public 2009. Its funding is substantial, allowing for over versity. In particular female applicants are en-
health, education, business and international 500 employees and graduate students by 2016. couraged to apply.
affairs. A private institution, GW prides itself on IST Austria is entitled to award Ph.D. degrees and
excellent research, quality education, and low includes an English-language Graduate School.
student-teacher ratio. The exceptional location It aims to achieve an international mix of scien- The Johns Hopkins University
affords the GW community unique cultural and tists and recruit them solely on the basis of their Tenure-track Faculty Positions
intellectual opportunities. In the high-tech sec- individual excellence and potential contribution
tor, the Washington, DC Metropolitan area is one to research. The Department of Computer Science at The Johns
of the largest IT areas in the nation, putting us in The Institute is recruiting leaders of inde- Hopkins University is seeking applications for
the center of activities such as security and bio- pendent research groups. Professors will have tenure-track faculty positions at the Assistant Pro-
technology. indefinite contracts and Assistant Professors will fessor level, as well as applications for a focused
The Department of Computer Science of- have fixed-term contracts for an initial period of search at the Associate or Full Professor level.
fers an accredited Bachelor of Science program,
a Bachelor of Arts program, and Master’s and
Ph.D degrees. The Department has 18 faculty
members, numerous affiliated and adjunct fac-
ulty members, and over 425 students. The Depart- Faculty Positions
ment has educational and research programs in
security, networks, graphics, biomedical appli-
in Computer Science
cations, search and data mining, human com- Ecole polytechnique fédérale de Lausanne
puter interaction, and machine intelligence, with
funding from various agencies; a NSA-designated
Center of Academic Excellence and Center of Aca-
demic Excellence-Research in security, with fund- The School of Computer and Communi- To apply, please follow the application
ing from NSF, DOD, and other agencies; and NIH- cation Sciences at EPFL invites applica- procedure at http://icrecruiting.epfl.ch.
funded collaborations with the medical school tions for faculty positions in computer The following documents are requested in
in the biomedical areas. For further information science. We are primarily seeking candi- PDF format: curriculum vitae, including
please refer to http://www.cs.gwu.edu.
dates for tenure-track assistant pro- publication list, brief statements of re-
Review of applications will begin on Decem-
ber 1, 2009, and will continue through the Spring
fessor positions, but suitably qualified search and teaching interests, names and
2010 semester, until the position is filled. Appli- candidates for senior positions will also addresses (including e-mail) of 3 refe-
cation Procedure: To be considered, applicants be considered. rences for junior positions, and 6 for
must send a letter containing (i) a brief statement senior positions. Screening will start on
that clearly indicates the position and rank of in- Successful candidates will develop an
January 15, 2010. Further questions can
terest, (ii) a curriculum vita, (iii) a statement of re- independent and creative research pro-
search and teaching interests, and (vi) complete
be addressed to :
gram, participate in both undergraduate
contact information for at least three references. and graduate teaching, and supervise PhD Professor Willy Zwaenepoel
These and other relevant supporting materials
should be sent to: Chair, Faculty Search Commit-
students. Dean
tee, Department of Computer Science, PHIL 703, School of Computer and
Candidates from all areas of computer
The George Washington University, Washington Communication Sciences EPFL
science will be considered, but preference
D.C. 20052. Electronic submissions are preferred, CH-1015 Lausanne, Switzerland
and can be sent to cssearch@gwu.edu. Only com- will be given to candidates with interests
recruiting.ic@epfl.ch
plete applications will be considered. Inquiries in algorithms, bio-informatics, machine
about applying will be accorded the utmost dis- learning and verification. For additional information on EPFL, please
cretion. For complete instructions on the applica- consult: http://www.epfl.ch or
tion process, please visit the department website EPFL offers internationally competitive
http://ic.epfl.ch
www.cs.gwu.edu. salaries, significant start-up resources,
The George Washington University is an equal and outstanding research infrastructure. EPFL is an equal opportunity employer.
opportunity/affirmative action employer.
At the Assistant Professor level all areas will be Lawrence Technological University considered. Applicants should have an interest in
considered, but candidates with research agen- Assistant Professor of Computer Science teaching core courses in computer science as well
das in computational genomics, computer sys- as courses in their research area. The successful
tems, and health-related applications will receive For appointment in August 2010. The ideal can- applicant will be expected to contribute directly
special attention. At the Associate or Full Profes- didate will have a Ph.D. degree in computer sci- to Lehigh’s bioengineering program.
sor level we are seeking outstanding applicants in ence, be primarily committed to the development The faculty of the Computer Science and En-
the security area. All applicants must have a Ph.D. of undergraduate and professional graduate gineering (CSE) department includes IEEE and
in computer science or a related field and are ex- computer science students through teaching, ap- ACM fellows, and four NSF CAREER award win-
pected to show evidence of an ability to establish plied projects and scholarship, be able to work ners. We offer B.A., B.S., M.S., and Ph.D. degrees
a strong, independent, multidisciplinary, inter- effectively in interdisciplinary teams, and believe in Computer Science and jointly oversee B.S.,
nationally recognized research program. strongly in the value of both theory and applica- M.S., and Ph.D. degree programs in Computer
Commitment to quality teaching at the un- tion. Applicants should email a cover letter, cur- Engineering with the department of Electrical
dergraduate and graduate levels will be required riculum vitae, statement of teaching philosophy and Computer Engineering. We also offer a B.S.
of all candidates considered. The department and research interests, and three letters of recom- in Computer Science and Business with the Col-
webpage at http://www.cs.jhu.edu provides infor- mendation. lege of Business and Economics. Lehigh offers
mation about the department, including links to a degree in Bioengineering and has a variety of
research laboratories and centers. research programs related to bioinformatics and
Applicants should apply using the online ap- Lehigh University medical informatics, including biomedical image
plication which can be accessed from https:// Department of Computer Science and processing, biopharmaceuticals, algorithms for
academicjobsonline.org/ajo/JHU/CS/201 (for full Engineering mining large genomic databases, and assistive
consideration, by January 4 2010). Questions Faculty Opening robotics. Lehigh is developing a biotech cluster
should be directed to fsearch@cs.jhu.edu. The that includes a vibrant undergraduate program,
Department is committed to building a diverse Applications are invited for a tenure-track Assis- a new graduate program in bioengineering, both
educational environment; women and minorities tant Professor position in Bioinformatics in the parts of a university-level initiative in healthcare
are strongly encouraged to apply. The Johns Hop- Computer Science and Engineering Department research. The bioengineering program draws as-
kins University is an EEO/AA employer. (http://www.cse.lehigh.edu) of Lehigh University. sociated faculty from nearly all engineering and
Faculty Search The position starts in August 2010. several science departments and will provide
Johns Hopkins University The potential to establish a successful re- opportunities for the successful applicant to de-
Department of Computer Science search program and teach effectively at both the velop collaborative research projects.
Room 224 New Engineering Building undergraduate and graduate level are essential Lehigh is a private institution that is consis-
Baltimore, MD 21218-2694 prerequisites. The successful applicant will hold a tently ranked among the top 40 national research
Fax: 410-516-6134 Ph.D. in Computer Science, Computer Engineer- universities by U.S. News & World Report and is
Phone: 410-516-8775 ing, Bioinformatics, or a closely related field. Out- rated “most selective” by both Barron’s and Pe-
fsearch@cs.jhu.edu standing candidates in areas of computer science terson’s guides. Located in Bethlehem, Pennsyl-
http://www.cs.jhu.edu/apply with a direct connection to bioinformatics will be vania, Lehigh is 80 miles west of New York City
and 50 miles north of Philadelphia, providing an
accessible and convenient location that offers an
appealing mix of urban and rural lifestyles.
7KH8QLYHUVLW\RI1HZ0H[LFR Applications can be submitted online at
http://www.cse.lehigh.edu/faculty-search, and
*UHDWSHRSOHGRLQJJUHDWWKLQJV should include a cover letter, vita, and both teach-
ing and research statements. In addition, please
Dean, School of Engineering provide the names and email addresses of at least
three references. Applications will be evaluated
7KH8QLYHUVLW\RI1HZ0H[LFRLVVHHNLQJDYLVLRQDU\OHDGHUIRUWKHSRVLWLRQRI'HDQRIWKH6FKRRO until the position is filled, but materials should
RI(QJLQHHULQJ62(/RFDWHGLQ$OEXTXHUTXH810LVD&DUQHJLH9HU\+LJK5HVHDUFK8QLYHUVLW\ be received by January 15, 2010 for full consider-
DQGDIHGHUDOO\GHVLJQDWHG+LVSDQLF6HUYLQJ,QVWLWXWLRQ)RXQGHGLQ810LVWKHODUJHVWDQG ation. Lehigh University is an Equal Opportunity/
PRVWFRPSUHKHQVLYHRIWKHVWDWH·VLQVWLWXWLRQVRIKLJKHUHGXFDWLRQ7KH'HDQZKRUHSRUWVGLUHFWO\ Affirmative Action Employer. Lehigh University
WRWKH3URYRVW([HFXWLYH9LFH3UHVLGHQWIRU$FDGHPLF$IIDLUVSURYLGHVDFDGHPLFDQGDGPLQLVWUD provides comprehensive benefits including do-
WLYHOHDGHUVKLSWRWKH62($VWKHSULPDU\DFDGHPLFDQGDGPLQLVWUDWLYHRIILFHURIWKHIDFXOW\RIWKH mestic partner benefits (see http://www.lehigh.
6FKRRORI(QJLQHHULQJWKH'HDQZLOODVVXPHDFHQWUDOOHDGHUVKLSUROHLQFRQWLQXLQJGHYHORSPHQW edu/~insloan). Questions concerning this search
RIWKH62(·VGLVFLSOLQHVWRZDUGQDWLRQDOHPLQHQFHZLWKDFRPPLWPHQWWRUHVHDUFKDQGWHDFKLQJ
may be sent to faculty-search@cse.lehigh.edu.
7KH'HDQLVUHVSRQVLEOHIRULPSURYLQJDQGSURPRWLQJWKH62(LQDUHDVRILQVWUXFWLRQUHVHDUFKILV
FDOPDQDJHPHQWGHYHORSPHQWDQGSHUVRQQHO7KH6FKRRORI(QJLQHHULQJ62(KDVRYHUIDF
XOW\ LQ ILYH DFDGHPLF GHSDUWPHQWV &KHPLFDO DQG 1XFOHDU (QJLQHHULQJ &LYLO (QJLQHHULQJ
&RPSXWHU6FLHQFH(OHFWULFDODQG&RPSXWHU(QJLQHHULQJDQG0HFKDQLFDO(QJLQHHULQJ$PRQJWKH Massachusetts Institute of Technology
LQWHUQDWLRQDOO\UHFRJQL]HGFHQWHUVDVVRFLDWHGZLWKWKHVFKRRODUHWKH&HQWHUIRU+LJK7HFKQRORJ\ Faculty Positions
0DWHULDOV WKH &HQWHU IRU 0LFURHQJLQHHUHG 0DWHULDOV WKH &HQWHU IRU $GYDQFHG 5HVHDUFK
&RPSXWLQJWKH0LQG5HVHDUFK1HWZRUNWKH&HQWHUIRU%LRPHGLFDO(QJLQHHULQJDQGWKH&HQWHU The Department of Electrical Engineering and Com-
IRU(PHUJLQJ(QHUJ\7HFKQRORJLHV810LVDOVRDPHPEHULQVWLWXWLRQRIWKH:(5&$ &RQVRUWLXP puter Science (EECS) seeks candidates for faculty
IRU(QYLURQPHQWDO(GXFDWLRQ 7HFKQRORJ\'HYHORSPHQW7KH62(LVUDQNHGQDWLRQDOO\IRUERWK
positions starting in September 2010. Appointment
LWVXQGHUJUDGXDWHDQGJUDGXDWHSURJUDPV
would be at the assistant or untenured associate
0LQLPXP TXDOLILFDWLRQV IRU WKH SRVLWLRQ LQFOXGH DQ HDUQHG 3K' LQ (QJLQHHULQJ RU &RPSXWHU professor level. In special cases, a senior faculty ap-
6FLHQFHRUGRFWRUDOGHJUHHLQDUHODWHGGLVFLSOLQHDUHFRUGRIDFFRPSOLVKPHQWRUFUHGHQWLDOVWKDW
pointment may be possible. Faculty duties include
ZRXOGPHULWDSSRLQWPHQWDWWKHUDQNRIWHQXUHGIXOOSURIHVVRULQDQDFDGHPLFGHSDUWPHQWRI810·V
6FKRRORI(QJLQHHULQJDQGWKUHH\HDUVRIPDQDJHPHQWDQGDGPLQLVWUDWLYHH[SHULHQFHDWWKHOHYHO teaching at the graduate and undergraduate levels,
RIGHSDUWPHQWKHDGFKDLUUHVHDUFKGLUHFWRUFHQWHUGLUHFWRUGHDQRUWKHHTXLYDOHQW research, and supervision of student research. We
)RUDFRPSOHWHOLVWLQJRIWKHSRVLWLRQGHVFULSWLRQLQFOXGLQJGHVLUHGTXDOLILFDWLRQVDQGDSSOLFDWLRQ will consider candidates with backgrounds and
SURFHGXUHV DFFHVV WKH MRE SRVWLQJ RQ 810·V RQOLQH DSSOLFDWLRQ V\VWHP 810-REVXQPHGX E\ interests in any area of electrical engineering and
UHIHUHQFLQJSRVWLQJQXPEHU)RUEHVWFRQVLGHUDWLRQDSSOLFDWLRQVVKRXOGEHVXEPLWWHGE\ computer science. Faculty appointments will com-
-DQXDU\DQGWKHSRVLWLRQLVRSHQXQWLOILOOHG5HTXHVWDFRS\RIWKHSRVLWLRQDQQRXQFHPHQW mence after completion of a doctoral degree.
IURP%RQQLH/HLJK5HLIVWHFN6HDUFK&RRUGLQDWRUERQQLHF#XQPHGXSKRQH Candidates must register with the EECS
search website at https://eecs-search.eecs.mit.
The University of New Mexico is an Equal Opportunity/Affirmative Action Employer and Educator. edu, and must submit application materials elec-
For additional information about UNM see http://www.unm.edu
tronically to this website. Candidate applications
tees will be offered competitive salaries and startup Search No. 00050140 terested in attracting researchers who will enable
packages, with affordable housing within a short Department of Communication Studies interdisciplinary collaboration. Areas of interest
walking distance of the department. New York Uni- 2240 Campus Drive are broad and include bioinformatics, computa-
versity is located in Greenwich Village, one of the Evanston, Il 60208 tional biology, parallel computing, modeling and
most attractive residential areas of Manhattan. tsb-search@northwestern.edu simulation, computational science, databases/
The department has 33 regular faculty mem- data mining, but all strong applications will be
bers and several clinical, research, adjunct, and considered.
visiting faculty members. The department’s cur- Old Dominion University Interested candidates should submit a curric-
rent research interests include algorithms, cryp- Richard T. Cheng Endowed ulum vitae, a statement of research activities and
tography and theory; computational biology; dis- Chair in Computer Science future research plans, contact information for
tributed computing and networking; graphics, four references and a statement of teaching phi-
vision and multimedia; machine learning; natu- Applications are invited for the Richard T. Cheng losophy. Applicants should specify the position
ral language processing; scientific computing; Chair at the tenured rank of full professor. The and level for which they are applying. Electronic
and verification and programming languages. Computer Science Department offers BS, MS and applications are preferred and should be sent to
Collaborative research with industry is facili- PhD degrees and features research programs in searchcommittee@cs.odu.edu. Paper applica-
tated by geographic proximity to computer sci- the areas of bioinformatics, computational sci- tions can be sent to:
ence activities at AT&T, Google, IBM, Bell Labs, ence, digital libraries, computer and wireless Search Committee, Department of Computer
NEC, and Siemens. networking, security, and computer simulation. Science, Old Dominion University, Norfolk, VA
Please apply at Old Dominion University has major collabora- 23529-0162.
https://webern.cs.nyu.edu/faculty_ tive opportunities with the Virginia Modeling and Applicants from dual-career couples are wel-
applications/ Simulations Center, NASA Langley, the Thomas come. Review of applicants will begin immediate-
Jefferson National Laboratory, the Eastern Vir- ly and continue until the positions are filled.
To guarantee full consideration, applica- ginia Medical School, and the DoD Joint Training Old Dominion University is an affirmative ac-
tions should be submitted no later than January Analysis and Simulation Center. tion, equal opportunity institution and requires
4, 2010; however, this is not a hard deadline, as We are seeking an internationally recognized compliance with the Immigration Reform and
all candidates will be considered to the full extent scholar with a significant ongoing externally Control Act of 1986.
feasible, until all positions are filled. Visiting po- funded research program to fill this endowed po-
sitions may also be available. sition. The Cheng Chair will be expected to play
New York University is an equal opportunity/ a leadership role in departmental research and Rochester Institute of Technology
affirmative action employer. to mentor junior faculty, post doctoral fellows Computing and information sciences
and graduate students. The department is par- Faculty Openings for Fall 2010
ticularly interested in attracting scholars who will
Northwestern University enable interdisciplinary collaboration. Minimum Rochester Institute of Technology’s B. Thomas
Tenure-Track Position in Technology and requirements include a PhD in Computer Science Golisano College of Computing and Information
Social Behavior or a closely related field. Sciences (GCCIS) invites applications and nomi-
Applicants should submit a letter of interest nations for the following positions:
The Department of Communication Studies in and curriculum vitae that includes contact infor- A tenure-track faculty position in the Net-
the Northwestern University School of Commu- mation for four references. Applications, nomina- working, Security, and Systems Administration
nication seeks to hire for a tenure-track appoint- tions or inquiries should be sent to: chengsearch@ department (www.nssa.rit.edu) primarily in the
ment beginning September 1, 2010. Rank will be cs.odu.edu or to: Chair, Cheng Chair Committee, area of network/computer security and informa-
at the level of assistant professor. Computer Science Department, 3300 E & CS Bldg, tion assurance. Additionally, experience in com-
We are looking for a candidate who can con- Old Dominion University, Norfolk, VA 23529-0223. puter networking and/or systems administration
tribute to a strong interdisciplinary program in Screening of applicants will begin immedi- is preferred (IRC#34428)
technology and social behavior. Possible areas of ately and continue until the position is closed. A tenure-track faculty position in the Interac-
expertise include but are not limited to: human- Old Dominion University is an affirmative action, tive Games and Media department (igm.rit.edu/
computer interaction, computer-mediated com- equal opportunity institution and requires com- jobs) in the areas of computer games and interac-
munication and information infrastructures, lan- pliance with the Immigration Reform and Con- tive entertainment (IRC#34427).
guage and behavior in virtual communities, and trol Act of 1986. Successful candidates must demonstrate ex-
media and social networks. cellence in teaching and scholarship and have
The Department of Communication Studies the ability to contribute in meaningful ways to
supports a popular undergraduate major and Old Dominion University RIT’s commitment to cultural diversity and plu-
graduate programs in Media, Technology, and Computer Science Faculty Positions ralism. A Ph.D. in computing or a closely related
Society, Interaction and Social Influence, and field or other terminal degree (such as an MFA
Rhetoric and Public Culture, as well as the inter- The College of Sciences at Old Dominion Univer- for IRC#34427) with equivalent experience is
disciplinary Ph.D. program in Technology and So- sity is undergoing a major expansion to increase required, as is a record of publicly disseminated
cial Behavior. Scholarship includes leading work research activities of faculty and to support the scholarly and/or creative work and demonstrated
on new media, social networks, and the cultural recruiting of outstanding graduate and under- potential for future scholarship.
determination of the public sphere. Through spe- graduate students. The Department of Computer The Golisano College of Computing and In-
cial resources for research support and scholarly Science has recently hired a new chair and seeks formation Sciences is home to the Computer
event programming, the department is able to of- candidates for multiple tenure track/tenured po- Science, Software Engineering, Information Sci-
fer rich opportunities for scholarly development. sitions at senior and junior levels. ences and Technologies, Interactive Games &
For full consideration, please send a letter of Candidates for full or associate professor Media, and Networking, Security, and Systems
application with a curriculum vitae, evidence of must show evidence of strong, active research Administration departments, as well as the Ph.D.
teaching effectiveness, and three letters of refer- programs as evidenced by publications and peer- program in Computer and Information Sciences.
ence to Professor Daniel O’Keefe at the address reviewed funding and demonstrate a strong teach- The college has 105 faculty and over 2400 under-
below by November 15. ing record. Candidates at the assistant professor graduate and 600 graduate students.
Northwestern University is an equal opportu- level must demonstrate the ability to build strong Candidates should visit https://mycareer.rit.
nity, affirmative action educator and employer. research programs and perform quality teaching. edu and refer to the IRC number listed above for
Women and minorities are encouraged to apply. The department offers competitive salaries and specific information about the positions and
Hiring is contingent on eligibility to work in the substantial start-up packages. The Department the application process. Refer to www.rit.edu
United States. of Computer Science is well supported by peer- for information about RIT and the B. Thomas
Technology and Social Behavior Search Chair: reviewed grants from NSF, NASA, DOE and other Golisano College of Computing and Informa-
Daniel O’Keefe funding agencies. Department is particularly in- tion Sciences.
theory) with priority consideration given to candi- research that spans two or more of these areas with a statement of teaching philosophy, and arrange to
dates in database systems and software engineer- preference given to those who can collaborate with have at least three reference letters sent to:
ing & programming languages. current faculty. Candidates should have a strong Dr. Ken Barker
Applicants should hold or be completing a potential for excellence in research, the ability to Department of Computer Science
Ph.D. in CSE or a closely related field, and have a develop and sustain an externally funded research University of Calgary
commitment to and demonstrated record of ex- program, and the ability to contribute to our grad- Calgary, Alberta, Canada, T2N 1N4
cellence in research as well as a commitment to uate and undergraduate teaching mission. Or via email to: search@cpsc.ucalgary.ca
excellence in teaching. The Department offers undergraduate de-
To apply, please submit your application via grees in Information Systems and Business Tech- The applications will be reviewed beginning
the online database. The link can be found at: nology Administration as well as both the MS and November 2009 and will continue until the posi-
http://www.cse.ohio-state.edu/department/ PhD in Information Systems. In addition, the tion is filled.
positions.shtml Department offers an MS and PhD in Human- All qualified candidates are encouraged to ap-
Centered Computing, and was ranked 8th in the ply; however, Canadians and permanent residents
Review of applications will begin in January nation in 2007 for scholarly productivity by Aca- will be given priority. The University of Calgary re-
and will continue until the positions are filled. demic Analytics. Consistent with the UMBC vi- spects, appreciates, and encourages diversity.
The Ohio State University is an Equal Op- sion, the Department has excellent technical sup-
portunity/Affirmative Action Employer. Women, port and teaching facilities as well as outstanding
minorities, or individuals with disabilities are en- laboratory space and state of the art technology. University of Delaware
couraged to apply. UMBC’s Technology Center, Research Park, and Software Engineering Faculty Position
Center for Entrepreneurship are major indicators Department of Computer and Information
of active research and outreach. Further details Sciences Bioinformatics and Computational
Toyota Technological Institute on our research, academic programs, and faculty Biology
at Chicago (TTI-C) can be found at http://www.is.umbc.edu/. Under- Faculty Position Center for Bioinformatics &
Faculty Positions at All Levels represented groups including women and minor- Computational Biology
ities are especially encouraged to apply.
Toyota Technological Institute at Chicago (TTI-C) Applications will not be reviewed until the Applications are invited for a tenure-track fac-
is a philanthropically endowed degree-granting following materials are received: a cover letter, a ulty position in Software Engineering to begin
institute for computer science located on the Uni- one-page statement of teaching interests, a one- Fall 2010. More information is available at http://
versity of Chicago campus. The Institute is expect- page statement of research interests, one or more www.cis.udel.edu/SEposition.
ed to soon reach a steady-state of 12 traditional sample research papers, and a curriculum vitae. Applications are invited for a tenure-track as-
faculty (tenure and tenure track), and 12 limited Applicants should also arrange to have three let- sistant professor position to begin Fall 2010. We
term faculty. Applications are being accepted in ters of recommendation sent to the department seek applicants from any area of bioinformatics
all areas, but we are particularly interested in: as soon as possible. Electronic submission of and computational biology, but encourage appli-
Theoretical computer science materials as PDF documents is preferred. Elec- cants with interests in computational genomics.
Speech processing tronic copies should be sent to bmorris@umbc. More information is available at http://bioinfor-
Machine learning edu. Copies can also be sent to: Dr. Andrew Sears, matics.udel.edu/facultysearch.
Computational linguistics Chair of Faculty Search Committee, Information
Computer vision Systems Department, UMBC, 1000 Hilltop Circle,
Scientific computing Baltimore, MD 21250-5398. For inquiries, please University of Houston-Downtown
Programming languages contact Barbara Morris at (410) 455-3795 or bmor- Assistant Professor
ris@umbc.edu.
Positions are available at all ranks, and we Review of applications will begin immediately The University of Houston-Downtown invites
have a large number of limited term positions and will continue until the position is filled. This applications for a tenure-track Assistant Profes-
currently available. position is subject to the availability of funds. sor position in Computer Science starting Fall
For all positions we require a Ph.D. Degree or UMBC is an Affirmative Action/Equal Opportu- 2010. Successful candidates must have a PhD in
Ph.D. candidacy, with the degree conferred prior nity Employer and welcomes applications from mi- Computer Science or closely related field in hand
to date of hire. Submit your application electroni- norities, women and individuals with disabilities. by the time of appointment, a promising research
cally at: profile, and a commitment to excellence in teach-
http://ttic.uchicago.edu/facapp/ ing. For more information about the position
University of Calgary please visit http://jobs.uhd.edu. Only online ap-
Toyota Technological Institute at Chicago Assistant Professor, Information Security plications will be forwarded to the hiring commit-
is an Equal Opportunity Employer ting for review. AA/EOE
The Department of Computer Science at the Uni-
versity of Calgary seeks an outstanding candidate
UMBC for a tenure-track position at the Assistant Profes- The University of Michigan, Ann Arbor
University of Maryland Baltimore County sor level, in the Information Security area. Details Department of Electrical Engineering and
An Honors University in Maryland for the position appear at: www.cpsc.ucalgary.ca/ Computer Science
Information Systems Department career. Applicants must possess a doctorate in Computer Science and Engineering Division
Computer Science or a related discipline at the Faculty Position
The Information Systems Department at UMBC time of appointment, and have a strong potential
invites applications for a tenure-track faculty po- to develop an excellent research record. Applications and nominations are solicited for a
sition at the Assistant Professor level in the area The Department of Computer Science is one faculty position in the Computer Science and En-
of human-centered computing (HCC) starting of Canada’s leaders as evidenced by our commit- gineering (CSE) Division as part of an interdisci-
August 2010. Outstanding candidates in other ar- ment to excellence in research and teaching. It plinary cluster hire funded by the University Pres-
eas will also be considered. has an expansive graduate program and extensive ident to strengthen expertise in the area of Data
Candidates must have an earned PhD in Infor- state-of-the-art computing facilities. Calgary is a Mining, Learning, and Discovery with Massive
mation Systems or a related field no later than Au- multicultural city that is the fastest growing city Datasets across multiple departments. Expertise
gust 2010. Applicants engaged in interdisciplinary in Canada. Calgary enjoys a moderate climate is particularly sought in visual analytics and infor-
research addressing accessibility (broadly defined located beside the natural beauty of the Rocky mation visualization.
to include issues associated with disabilities, age, Mountains. Further information about the De- Candidates with a focus in this area are encour-
culture, and other relevant topics), human-infor- partment is available at www.cpsc.ucalgary.ca/. aged to apply. However, all computer science and
mation interaction, or social computing are of pri- Interested applicants should send a CV, a con- engineering applications will be considered. Ap-
mary interest. Ideal candidates will be engaged in cise description of their research area and program, plications must be received by January 11, 2010.
individuals with disabilities are encouraged to Successful applicants who join the University of an excellent reputation in pure and applied re-
apply. Applications must be submitted by email Waterloo are expected to develop and maintain a search and houses a diverse research program of
in PDF format to fsearch@cs.utsa.edu. productive program of research, attract and de- international stature. Because of its recognized
Chair of Faculty Search Committee velop highly qualified graduate students, provide capabilities, the School attracts exceptionally
Department of Computer Science a stimulating learning environment for under- well-qualified students at both undergraduate
The University of Texas at San Antonio graduate and graduate students, and contribute and graduate levels. In addition, the University
One UTSA Circle to the overall development of the School. A Ph.D. has an enlightened intellectual property policy
San Antonio, TX 78249-0667 in Computer Science, or equivalent, is required, which vests rights in the inventor: this policy
Phone: 210-458-4436 Fax: 210-458-4437 with evidence of excellence in teaching and re- has encouraged the creation of many spin-off
fsearch@cs.utsa.edu search. Rank and salary will be commensurate companies including iAnywhere Solutions Inc.,
with experience, and appointments are expected Maplesoft Inc., Open Text Corp and Research in
to commence during the 2010 calendar year. Motion. Please see our website for more informa-
University of Waterloo With over 70 faculty members, the University tion: http://www.cs.uwaterloo.ca.
David R. Cheriton School of Computer Science of Waterloo’s David R. Cheriton School of Com- To submit an application, please register at
Cheriton Chairs in Software Systems puter Science is the largest in Canada. It enjoys the submission site: http://www.cs.uwaterloo.ca/
an excellent reputation in pure and applied re- faculty-recruiting. Once registered, instructions
Applications are invited for one or two David R. search and houses a diverse research program of will be provided regarding how to submit your ap-
Cheriton Chairs in Software Systems. These are international stature. Because of its recognized plication. Applications will be considered as soon
senior positions and include substantial research capabilities, the School attracts exceptionally as possible after they are complete, and as long as
support and teaching reduction. Candidates with well-qualified students at both undergraduate positions are available.
outstanding research records in software systems and graduate levels. In addition, the University The University of Waterloo encourages appli-
(very broadly defined) are encouraged to apply. has an enlightened intellectual property policy cations from all qualified individuals, including
Successful applicants who join the University of which vests rights in the inventor: this policy women, members of visible minorities, native
Waterloo are expected to be leaders in research, has encouraged the creation of many spin-off peoples, and persons with disabilities. All quali-
have an active graduate student program and con- companies including iAnywhere Solutions Inc., fied candidates are encouraged to apply; however,
tribute to the overall development of the School. Maplesoft Inc., Open Text Corp and Research in Canadian citizens and permanent residents will
A Ph.D. in Computer Science, or equivalent, is Motion. Please see our website for more informa- be given priority.
required, with evidence of excellence in teaching tion: http://www.cs.uwaterloo.ca.
and research. Rank and salary will be commen- To submit an application, please register at
surate with experience, and appointments are the submission site: http://www.cs.uwaterloo.ca/ University of Wisconsin - Platteville
expected to commence during the 2010 calendar faculty-recruiting. Once registered, instructions Assistant Professor
year. The Chairs are tenured positions. will be provided regarding how to submit your ap-
With over 70 faculty members, the University plication. Applications will be considered as soon The Department of Computer Science and Soft-
of Waterloo’s David R. Cheriton School of Com- as possible after they are complete, and as long as ware Engineering at the University of Wisconsin-
puter Science is the largest in Canada. It enjoys positions are available. Platteville invites applications for two tenure-
an excellent reputation in pure and applied re- The University of Waterloo encourages appli- track faculty positions starting fall, 2010.
search and houses a diverse research program of cations from all qualified individuals, including One position will be in Computer Science, the
international stature. Because of its recognized women, members of visible minorities, native other in Software Engineering. Candidates apply-
capabilities, the School attracts exceptionally peoples, and persons with disabilities. All quali- ing for the Software Engineering position must
well-qualified students at both undergraduate fied candidates are encouraged to apply; however, have a Ph.D. in Software Engineering, Computer
and graduate levels. In addition, the University Canadian citizens and permanent residents will Science, or closely related field. The primary duty
has an enlightened intellectual property policy be given priority. for this position will be teaching courses in an
which vests rights in the inventor: this policy ABET-accredited software engineering program.
has encouraged the creation of many spin-off Candidates applying for the Computer Science
companies including iAnywhere Solutions Inc., University of Waterloo position must have a Ph.D. in Computer Science
Maplesoft Inc., Open Text Corp and Research in David R. Cheriton School of Computer Science or closely related field such as Information Sys-
Motion. Please see our website for more informa- Faculty Positions in Health Informatics tems. The primary duty for this position will be
tion: http://www.cs.uwaterloo.ca. teaching courses in Computer Science.
To submit an application, please register at The University of Waterloo invites applications for Candidates must have excellent verbal and
the submission site: http://www.cs.uwaterloo.ca/ one or two tenure-track or tenured faculty posi- written communication skills and a strong com-
faculty-recruiting. Once registered, instructions tions in the David R. Cheriton School of Computer mitment to teaching. Commitment to scholarly
will be provided regarding how to submit your ap- Science, in the area of Health Informatics. We de- and professional activities is also required. The
plication. Applications will be considered as soon fine health informatics broadly to include medical candidate must have a demonstrated commit-
as possible after they are complete, and as long as informatics and biomedical systems. The School ment to or experience with racially diverse popu-
positions are available. plans to start a new graduate degree program in lations. Salary will be competitive and commen-
The University of Waterloo encourages appli- health informatics in September 2010. surate with experience and qualifications. In
cations from all qualified individuals, including Candidates at all levels of experience are en- addition, there are consulting opportunities with
women, members of visible minorities, native couraged to apply. Successful applicants who local companies.
peoples, and persons with disabilities. All quali- join the University of Waterloo are expected to Send a letter of application, undergraduate &
fied candidates are encouraged to apply; however, develop and maintain a productive program of graduate transcripts, a statement illustrating your
Canadian citizens and permanent residents will research, attract and develop highly qualified commitment to fostering campus racial diversity,
be given priority. graduate students, provide a stimulating learn- and a vita including references to Search and Screen
ing environment for undergraduate and graduate Committee, Department of Computer Science and
students, and contribute to the overall develop- Software Engineering, 207 Ullrich Hall, 1 University
University of Waterloo ment of the School. A Ph.D. in Computer Science, Plaza, Platteville, WI 53818-3099 or to stutenbm@
David R. Cheriton School of Computer Science or equivalent, is required, with evidence of excel- uwplatt.edu. Visit our web site at http://www.uw-
Faculty Position in Software Engineering lence in teaching and research. Rank and salary platt.edu/~csse for more information. Review of
will be commensurate with experience, and ap- applications will start January 4, 2010 and will con-
The University of Waterloo invites applications for pointments are expected to commence during tinue until suitable candidates are found.
a tenure-track or tenured faculty position in the the 2010 calendar year. UW-Platteville, an equal opportunity, affirma-
David R. Cheriton School of Computer Science, in With over 70 faculty members, the University tive action employer, seeks to build a diverse faculty
the area of Software Engineering. Candidates at of Waterloo’s David R. Cheriton School of Com- and staff and encourages applications from women
all levels of experience are encouraged to apply. puter Science is the largest in Canada. It enjoys and persons of color. The names of all nominees
Indiana University
School of Informatics and Computing
Faculty Positions
The School of Informatics and Computing
at Indiana University, Bloomington, invites
applications for faculty positions. We are
particularly interested in tenure-track
candidates in the areas of:
s (EALTH )NFORMATICS
s #YBER
INFRASTRUCTURE
s 3OFTWARE AND 3YSTEMS
s $ATA -INING -ACHINE ,EARNING
and Search
s !RTIlCIAL )NTELLIGENCE
s (UMAN
#OMPUTER )NTERACTION
s 'RAPHICS AND 6ISUALIZATION AND
s !LGORITHMS
-OST POSITIONS ARE EXPECTED TO BE lLLED
AT THE JUNIOR LEVEL BUT OUTSTANDING SENIOR
CANDIDATES WILL BE CONSIDERED PARTICULARLY
IN THE BROAD AREA OF CYBER
INFRASTRUCTURE
SOFTWARE AND SYSTEMS
The IU Bloomington School of Informat-
ICS AND #OMPUTING IS THE lRST OF ITS KIND
AND AMONG THE LARGEST IN THE COUNTRY WITH
a faculty of more than 60 full time mem-
BERS MORE THAN GRADUATE STUDENTS AND
WIDELY SUBSCRIBED UNDERGRADUATE PROGRAMS
It offers undergraduate degrees in Computer
3CIENCE AND IN )NFORMATICS -3 DEGREES IN
#OMPUTER 3CIENCE "IOINFORMATICS (UMAN
#OMPUTER )NTERACTION $ESIGN AND 3ECURITY
)NFORMATICS AND 0H$ DEGREES IN #OMPUTER
Science and in Informatics. The School has
RECEIVED PUBLIC RECOGNITION AS A hTOP
TEN PRO-
GRAM TO WATCHv #OMPUTERWORLD THANKS TO
ITS EXCELLENCE AND LEADERSHIP IN ACADEMIC
programs, interdisciplinary research, place-
MENT AND OUTREACH 4HE SCHOOL OFFERS EX-
CELLENT WORK CONDITIONS INCLUDING ATTRACTIVE
SALARIES AND RESEARCH SUPPORT LOW TEACHING
LOADS AND WORLD
CLASS COMPUTING AND LIBRARY
facilities. The school continues strong stu-
DENT GROWTH OVER IN THE LAST TWO YEARS
4HE SCHOOL HIRED NEW FACULTY LAST YEAR AND
PLANS TO HIRE A SIMILAR NUMBER THIS YEAR
,OCATED IN THE WOODED ROLLING HILLS OF
southern Indiana, Bloomington is a culturally
THRIVING COLLEGE TOWN WITH A MODERATE COST ! "
OF LIVING )T IS RENOWNED FOR ITS TOP
RANKED
MUSIC SCHOOL PERFORMING AND lNE ARTS
historic campus, cycling traditions, active
LIFESTYLE AND NATURAL BEAUTY
!PPLICANTS SHOULD SUBMIT A CURRICULUM
vitae, a statement of research and teaching,
AND THE NAMES OF THREE REFERENCES SIX FOR
#
$
ASSOCIATE AND FULL PROFESSOR CANDIDATES
using the recruit link at http://informatics.
INDIANAEDUHIRING PREFERRED OR BY MAIL TO
Chair, Faculty Search Committee !""#$%&&%& '()
*
School of Informatics and Computing + % %&%&","" '-*
919 E 10th Street
"LOOMINGTON ). ./ + % %0$$ # !
1UESTIONS MAY BE SENT TO 1 !#" 2$#" 3 4
hiring@informatics.indiana.edu. 4 35
To receive full consideration completed 6 (7
APPLICATIONS MUST BE RECEIVED BY $ECEMBER
(OWEVER APPLICATIONS RECEIVED
)8
AFTER THIS DATE WILL BE CONSIDERED UNTIL ALL - 9::
POSITIONS ARE lLLED 9 ;/ #"<<<
Indiana University is an Equal Opportunity/
!FlRMATIVE !CTION EMPLOYER !PPLICATIONS FROM = >? => ""!<2"<<< ()
WOMEN AND MINORITIES ARE STRONGLY ENCOURAGED
Puzzled
Solutions and Sources
Last month (November 2009, p. 112) we posted a trio of brain teasers,
including one as yet unsolved, concerning the covering of a plane.
1. Identical Coins on
Rectangular Table.
Solution. Let us observe that if we dou-
2. Two Sets of Parallel Lines on
Infinite Plane.
Solution. The puzzle asked whether
used transfinite induction know that
details have been omitted (but easily
supplied). More significant, there is no
ble the radius (say, from one to two we could cover each point of the plane way we can do this construction in a
inches) of each of the original coins, exactly twice using a set of lines that useful manner. Does this mean there
the result would be to cover the whole contains lines in more than two dif- isn’t some clever, effective, or at least
table. Why? Well, if a point P isn’t cov- ferent directions. imaginable way to double-cover the
ered, it must be two inches or more The solution will disappoint some plane with lines, other than by two par-
from any coin center; thus a one-inch of us. The answer is yes, assuming the allel classes? I haven’t found one. Nei-
coin placed with its center at P would Axiom of Choice, which allows us to ther has Shlosman. Perhaps you can.
fit in the original configuration. make choices at every step of an infi-
3.
If we could replace each big coin nite process. But the proof presented
with four small coins covering the here requires transfinite induction(!), Colored Discs on
same area, we’d be done… but we can’t leaving us without any geometry we Infinite Plane.
cover a big coin with four small coins. can wrap our mind around. The prob- Conjecture. This open puzzle sup-
Instead, let us note that rectangles lem (and its solution) were provided to posed that we were given a collection
have the property that they can be par- me by mathematical physicist Senya of open-unit discs that is a thousand-
titioned into four copies of themselves. Shlosman of the Centre de Physique fold cover of the plane; that is, every
So, we shrink the whole picture (of big Theorique, Marseille, France, who is point of the plane is covered by at
coins covering the table) by a factor of unaware of its origin. least 1,000 discs. Our job was to prove
two in each dimension and use four Nonetheless, the solution appeals (or disprove) that we can color each
copies of the new picture to cover the to me as an example of an easy applica- disc red or blue in such a way that the
original table. tion of a powerful tool. The idea is that red discs cover the plane and the blue
Surprisingly (perhaps), this lovely we start off with three lines that cross discs also cover the plane.
but seemingly crude argument gives one another (so we already have three No solutions have been offered so
the best possible factor: Replace the directions). Roughly speaking, at each far. Maybe this is just fundamentally
factor 4 with anything smaller, say 3.99, moment in our algorithm we have con- very difficult to prove. Maybe it isn’t
and the statement of the puzzle (with structed a finite or countable number even true. But it seems reasonable,
100 and 400 replaced by n and 3.99n) is of lines, with no point covered twice; don’t you think?
no longer true. we then pick a point on the plane that
All readers are encouraged to submit prospective
The puzzle came to me by way of is not doubly covered and add a line puzzles for future columns to puzzled@cacm.acm.org.
computer scientist Guy Kindler of the through that point. How do we know
School of Computer Science and En- we can do this without triple-covering Peter Winkler (puzzled@cacm.acm.org) is Professor of
Mathematics and of Computer Science and Albert Bradley
gineering in the Hebrew University of some other point? Because the number Third Century Professor in the Sciences at Dartmouth
Jerusalem during a marvelous visiting of pairs of lines so far constructed is College, Hanover, NH.
year (2003–2004) by each of us at the countable, only countably many points
Institute for Advanced Study in Princ- are double-covered, and we have an un-
eton, NJ. countable number of angles at which
the new line can be placed.
Does this seem like cheating? It
should. First, those of us who have
Future Tense, one of the revolving features on this page, presents stories and
essays from the intersection of computational science and technological speculation,
their boundaries limited only by our ability to imagine what will and could be.
the International Conference on the
Foundations of Digital Games
www.flickr.com/people/vasculata
(cc) (by \
Learning in Games
Infrastructure (Databases,
Networks, Security) Game Design
Graphics & Interfaces
SASDG
Workshops Chair: Michael Mateas, University of California, Santa Cruz
Panels Chair: Ian Bogost, Georgia Institute of Technology
Tutorials Chair: Robin Hunicke, That Game Company
Industrial Relations Chair: Hiroko Osaka, Northwestern University
FDG 2010 Supported by:
Local Arrangements Chair: Marilyn Walker, University of California, Santa Cruz
Webmaster: Karl Cheng-Heng Fua, Northwestern University
© SASDG