Download as pdf or txt
Download as pdf or txt
You are on page 1of 116

COMMUNICATIONS

ACM
CACM.ACM.ORG OF THE 12/2009 VOL.52 NO.12

Finding the Fun


in Computer Science
Education

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&( 

The University of Edinburgh


&("&+6eg^a'%&%
First call for papers; submission 18 December 2009
+(342*4$00(&200,66(( +( /*24,6+05$1'203/(:,6;2*,&$1'
552&,$6,21)2420376,1*$&+,1(4; (0$16,&5@2156$1'$4'2'(/52)
$1' +(+$46(4('156,676( 20376$6,21@42*4$00,1*(6+2'5
)24 $4('(/,*+6('62,18,6(;2762 $1'$1*7$*(5@2)69$4(1*,1((4,1*
6+(-2,16 <",5,2152) $1';56(0(5,*1 22/57$16,6$6,8(
20376(4&,(1&(=&21)(4(1&(62 8$/7$6,212)/*24,6+05;56(05
%(+(/'$66+(1)240$6,&52470 $1'(6924.5@46,>&,$/16(//,*(1&(
',1%74*+!1,8(45,6;
 34,/ *(165$1'$&+,1(($41,1*
 +,5?$*5+,3(8(16$,0562 (6924.5@,564,%76('$1'(48$5,8(
(1(4*,5(6+(&20376,1*&20071,6; ;56(05@4,'20376,1*$1'
Programme $1'%4,1*,662*(6+(4$4271'520( (&,(1&(,*,6$/&2120;@$6$%$5(5
325,6,8($1',153,4,1*8,5,2152)274 1)240$6,21(64,(8$/$1'$6$,1,1*
Committee ',5&,3/,1($1')2//2956+(+,*+/; #(%%$5('20376$6,21@70$1
57&&(55)7/<",5,2152)20376(4 20376(416(4$&6,21@2%26,&5$1'
Michel Beaudouin-Lafon (LRI)
&,(1&(=&21)(4(1&(,1   20376(4",5,21@,2,1)240$6,&5
Mic Bowman (Intel) ;16+(6,&,2/2*;$1';16+(6,&
Matthew Chalmers (Glasgow) 7%0,55,215$4(%(,1*52/,&,6(',1
+(0,564;@(',&$/33/,&$6,215
Fabrizio Gagliardi (Microsoft) $//$4($52)4(5($4&+&28(4,1*6+(
%42$'>(/'2)20376(4&,(1&( $3(454(/$6('626+(&744(16!
Carole Goble (Manchester) $1'1*,1((4,1* +(;,1&/7'( 4$1'+$//(1*(5,120376,1*
Matt Grossglauser (Nokia) %76$4(126/,0,6('62 @20376(4 www.ukcrc.org.uk/grand-challenge
David Hutchinson (Lancaster) 4&+,6(&674(5$1',*,6$/;56(05 2))(4,1*1(9,15,*+6524$3342$&+(5
Jane Hillston (Edinburgh) +(24(6,&$/20376(4&,(1&(  $4(9(/&20(
Matt Jones (Swansea)
Ross King (Aberystwyth)
Marina Kirotka (Oxford) The relevant dates for authors are:
Mounia Lalmas (Glasgow)
Michael Luck (Kings College) ™hjWb^hh^dc/ &-9ZXZbWZg'%%.
Julie McCann (Imperial) ™cdi^ÒXVi^dc/ &.;ZWgjVgn'%&%
Ursula Martin (Queen Mary) ™XVbZgV"gZVYn/ *BVgX]'%&%
Simon Moore (Cambridge)
Instructions for authors and the required paper layout can be found at
Colin Runciman (York)
lll#WXh#dg\$k^h^dch'%&% ; the strict limit for submissions is 12 A4-pages in 10pt two-
Nigel Shadbolt (Southampton)
column style, including figures and references. Authors may include a clearly-marked
Susan Stepney (York) appendix, which referees may or may not take into account. Submissions to be made at
Alexander Wolf (Imperial) lll#ZVhnX]V^g#dg\$Xdc[ZgZcXZh$4Xdc[2WXh&%

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

Noteworthy LNCS Titles


Pattern The Challenge Transactions on
Recognition in of Anticipation Data Hiding
Bioinformatics A Unifying and Multimedia
Third IAPR Framework for the Security III
International Analysis and Design Y. Q. Shi, New Jersey
Conference, PRIB of Artificial Cognitive Institute of Technology,
2008, Melbourne, Systems Newark, NJ, USA (Ed.)
Australia, October G. Pezzulo, Istituto di Besides, two related
15-17, 2008. Proceedings Scienze e Tecnologie della Cognizione – CNR, disciplines, steganalysis and data forensics, are
Rome, Italy; M. V. Butz, Universität Würzburg, increasingly attracting researchers and
M. Chetty, A. Ngom, S. Ahmad (Eds.)
Germany; C. Castelfranchi, R. Falcone, Istituto becoming another new research field of
This book constitutes the refereed proceedings di Scienze e Tecnologie della Cognizione – CNR, multimedia security. This journal, LNCS
of the International Workshop on Pattern Rome, Italy (Eds.) Transactions on Data Hiding and Multimedia
Recognition in Bioinformatics, PRIB 2008, held
This book proposes a unifying approach for the Security, aims to be a forum for all researchers
in Melbourne, Australia, in October 2008. The
analysis and design of artificial cognitive in these emerging fields, publishing both
39 revised full papers presented were carefully
systems: The Anticipatory Approach. In 11 original and archival research results.
reviewed and selected from 121 submissions.
coherent chapters, the authors of this state-of-
The papers discuss the applications of pattern 2008. IX, 91 p. (Lecture Notes in Computer Science
the-art survey propose a foundational view of
recognition methods in the field of bioinfor- / Transactions on Data Hiding and Multimedia
the importance of dealing with the future, of
matics to solve problems in life sciences. Security, Volume 4920) Softcover
gaining some autonomy from current
ISBN 978-3-540-69016-0 7 $79.95
2008. XVI, 472 p. (Lecture Notes in Computer environmental data, and of endogenously
Science / Lecture Notes in Bioinformatics, generating sensorimotor and abstract
Volume 5265) Softcover representations.
Web and Wireless
ISBN 978-3-540-88434-7 7 $92.95
2008. XVI, 288 p. (Lecture Notes in Computer Geographical
Science / Lecture Notes in Artificial Intelligence,
Information
Volume 5225) Softcover
Transactions on Systems
ISBN 978-3-540-87701-1 7 $69.95
Computational 7th International
Systems Biology Symposium, W2GIS
VIII Transactions on 2007, Cardiff, UK,
C. Priami, University of Aspect-Oriented November 28-29,
Trento, Povo, Italy (Ed.) Software 2007, Proceedings
The LNCS journal Development III J. M. Ware, G. E. Taylor, University of
Transactions on Glamorgan, UK (Eds.)
A. Rashid, Lancaster
Computational Systems Biology is devoted to University, UK; M. Aksit, This book constitutes the refereed proceedings
inter- and multidisciplinary research in the University of Twente, The of the 7th International Symposium on Web
fields of computer science and life sciences and Netherlands (Eds.) and Wireless Geographical Information
supports a paradigmatic shift in the techniques Systems, W2GIS 2007, held in Cardiff, UK, in
The LNCS Journal “Transactions on Aspect-
from computer and information science to November 2007. The 21 revised full papers
Oriented Software Developmen”t is devoted to
cope with the new challenges arising from the presented were carefully reviewed and selected
all facets of aspect-oriented software
systems oriented point of view of biological from 45 submissions.
development (AOSD) techniques in the context
phenomena.
of all phases of the software life cycle, from 2007. XI, 293 p. (Lecture Notes in Computer
2007. VII, 103 p. (Lecture Notes in Computer requirements and design to implementation, Science / Information Systems and Applications,
Science / Transactions on Computational Systems maintenance and evolution. incl. Internet/Web, and HCI, Volume 4857)
Biology, Volume 4780) Softcover Softcover
2007. IX, 201 p. (Lecture Notes in Computer
ISBN 978-3-540-76638-4 7 $69.95 ISBN 978-3-540-76923-1 7 $69.95
Science / Transactions on Aspect-Oriented
Software Development, Volume 4620) Softcover
ISBN 978-3-540-75161-8 7 $69.95

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

Departments News Viewpoints

5 CSTA Letter 22 Broadening Participation


It is a Pivotal Time for Opening Remarks
K–12 Computer Science Highlighting efforts and providing the
By Chris Stephenson rationale to increase the participation
and success of underrepresented
6 Letters To The Editor groups in computing.
In CS Education, Educate By Richard E. Ladner
the Educators First
25 Emerging Markets
8 BLOG@CACM Israel’s Technology Industry
CS Woes: Deadline-Driven Research, as an Economic Growth Engine
Academic Inequality How government-industry
Jeannette M. Wing writes collaboration can have
about the negative effects far-reaching economic influences.
of deadline-driven research By Orna Berry and Yigal Grayeff
and Mark Guzdial discusses Grace Hopper Attendee Natalia Villanueva-Rosales
the role of computer science 28 The Profession of IT
faculty in fostering inequality. 13 Blueprints for Self-Assembly Computing’s Paradigm
Researchers are using tools from Trying to categorize computing as
11 In the Virtual Extension information theory and computer engineering, science, or math is
science to facilitate the automatic fruitless; we have our own paradigm.
12 CACM Online creation of nano-scale structures. By Peter J. Denning and Peter A. Freeman
Crowdsourcing and By Gary Anthes
the Question of Expertise 31 Kode Vicious
by David Roman 16 Ready for a Web OS? Broken Builds
A new generation of browsers Frequent broken builds could be
14 Report from the may finally herald the long-awaited symptomatic of deeper problems
ACM Nominating Committee convergence of the Web and within a development project.
Slate of Nominees for operating system. By George V. Neville-Neil
ACM General Election By Alex Wright
33 Viewpoint
27 Calendar 18 Making Automation Work A “Smart” Cyberinfrastructure
Today’s automated systems provide for Research
99 Careers enormous safety and convenience. A view of semantic computing
However, when glitches, problems, and its role in research.
or breakdowns occur, the results can By Savas Parastatidis, Evelyne Viegas,
Last Byte be catastrophic. and Tony Hey
PHOTOGRA PH BY GA IL CA RM ICH A EL / H T TP://C OMPSCIGA IL.BLOG SPOT.COM

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.

2 COMM UNICATION S O F TH E AC M | D EC EM BER 2009 | VO L. 5 2 | NO. 1 2


12/2009 VOL. 52 NO. 12

Practice Contributed Articles Virtual Extension

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

90 ThinSight: A Thin Form-Factor


Interactive Surface Technology
By Shahram Izadi, Steve Hodges,
Alex Butler, Darren West,
Association for Computing Machinery
Alban Rrustemi, Mike Molloy Advancing Computing as a Science & Profession
and William Buxton

DECE MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N IC AT IONS O F THE ACM 3


COMMUNICATIONS OF THE ACM
Trusted insights for computing’s leading professionals.

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.

ACM, the world’s largest educational STA F F EDITORIAL BOARD


and scientific computing society, delivers
resources that advance computing as a GROUP P U BL ISH ER E DITOR -IN - C HIE F
science and profession. ACM provides the Scott E. Delman Moshe Y. Vardi ACM Copyright Notice
computing field’s premier Digital Library publisher@cacm.acm.org eic@cacm.acm.org Copyright © 2009 by Association for
and serves its members and the computing Executive Editor NE W S Computing Machinery, Inc. (ACM).
profession with leading-edge publications, Diane Crawford Co-chairs Permission to make digital or hard copies
conferences, and career resources. Managing Editor Marc Najork and Prabhakar Raghavan of part or all of this work for personal
Thomas E. Lambert Board Members or classroom use is granted without
Executive Director and CEO Senior Editor Brian Bershad; Hsiao-Wuen Hon; fee provided that copies are not made
John White Andrew Rosenbloom Mei Kobayashi; Rajeev Rastogi; or distributed for profit or commercial
Deputy Executive Director and COO Senior Editor/News Jeannette Wing advantage and that copies bear this
Patricia Ryan Jack Rosenberger notice and full citation on the first
Director, Office of Information Systems Web Editor VIE W P OINTS page. Copyright for components of this
Wayne Graves David Roman Co-chairs work owned by others than ACM must
Director, Office of Financial Services Editorial Assistant Susanne E. Hambrusch; John Leslie King; be honored. Abstracting with credit is
Russell Harris Zarina Strakhan J Strother Moore permitted. To copy otherwise, to republish,
Director, Office of Membership Rights and Permissions Board Members to post on servers, or to redistribute to
Lillian Israel Deborah Cotton P. Anandan; William Aspray; lists, requires prior specific permission
Director, Office of SIG Services Stefan Bechtold; Judith Bishop; and/or fee. Request permission to publish
Donna Cappo Art Director Stuart I. Feldman; Peter Freeman; from permissions@acm.org or fax
Andrij Borys Seymour Goodman; Shane Greenstein; (212) 869-0481.
ACM CO U N C I L Associate Art Director Mark Guzdial; Richard Heeks;
President Alicia Kubista Rachelle Hollander; Richard Ladner; For other copying of articles that carry a
Wendy Hall Assistant Art Director Susan Landau; Carlos Jose Pereira de Lucena; code at the bottom of the first or last page
Vice-President Mia Angelica Balaquiot Helen Nissenbaum; Beng Chin Ooi; or screen display, copying is permitted
Alain Chesnais Production Manager Loren Terveen provided that the per-copy fee indicated
Secretary/Treasurer Lynn D’Addesio in the code is paid through the Copyright
Barbara Ryder Director of Media Sales P R AC TIC E Clearance Center; www.copyright.com.
Past President Jennifer Ruzicka Chair
Stuart I. Feldman Marketing & Communications Manager Subscriptions
Stephen Bourne
Chair, SGB Board Brian Hebert An annual subscription cost is included
Board Members
Alexander Wolf Public Relations Coordinator in ACM member dues of $99 ($40 of
Eric Allman; Charles Beeler; David J. Brown;
Co-Chairs, Publications Board Virgina Gold which is allocated to a subscription to
Bryan Cantrill; Terry Coatta;
Ronald Boisvert, Holly Rushmeier Publications Assistant Communications); for students, cost
Mark Compton; Benjamin Fried;
Members-at-Large Emily Eng is included in $42 dues ($20 of which
Pat Hanrahan; Marshall Kirk McKusick;
Carlo Ghezzi; is allocated to a Communications
George Neville-Neil
Anthony Joseph; Columnists subscription). A nonmember annual
Mathai Joseph; Alok Aggarwal; Phillip G. Armour; The Practice section of the CACM
subscription is $100.
Kelly Lyons; Martin Campbell-Kelly; Editorial Board also serves as
Bruce Maggs; Michael Cusumano; Peter J. Denning; the Editorial Board of .
ACM Media Advertising Policy
Mary Lou Soffa; Shane Greenstein; Mark Guzdial; Communications of the ACM and other
C ONTR IB U TE D A RTIC LES
Fei-Yue Wang Peter Harsha; Leah Hoffmann; ACM Media publications accept advertising
Co-chairs
SGB Council Representatives Mari Sako; Pamela Samuelson; in both print and electronic formats. All
Al Aho and Georg Gottlob
Joseph A. Konstan; Gene Spafford; Cameron Wilson advertising in ACM Media publications is
Board Members
Robert A. Walker; at the discretion of ACM and is intended
CO N TACT P O IN TS Yannis Bakos; Gilles Brassard; Alan Bundy;
Jack Davidson to provide financial support for the various
Copyright permission Peter Buneman; Ghezzi Carlo;
PUB LICATI O N S BOA R D permissions@cacm.acm.org Andrew Chien; Anja Feldmann; activities and services for ACM members.
Co-Chairs Calendar items Blake Ives; James Larus; Igor Markov; Current Advertising Rates can be found
Ronald F. Boisvert and Holly Rushmeier calendar@cacm.acm.org Gail C. Murphy; Shree Nayar; Lionel M. Ni; by visiting http://www.acm-media.org or
Board Members Change of address Sriram Rajamani; Jennifer Rexford; by contacting ACM Media Sales at
Jack Davidson; Nikil Dutt; Carol Hutchins; acmcoa@cacm.acm.org Marie-Christine Rousset; Avi Rubin; (212) 626-0654.
Ee-Peng Lim; Catherine McGeoch; Letters to the Editor Abigail Sellen; Ron Shamir; Marc Snir;
M. Tamer Ozsu; Vincent Shen; letters@cacm.acm.org Larry Snyder; Veda Storey; Single Copies
Mary Lou Soffa; Ricardo Baeza-Yates Manuela Veloso; Michael Vitale; Single copies of Communications of the
W E B S IT E Wolfgang Wahlster; ACM are available for purchase. Please
ACM U.S. Public Policy Office http://cacm.acm.org Andy Chi-Chih Yao; Willy Zwaenepoel contact acmhelp@acm.org.
Cameron Wilson, Director
AUT HO R G UID E L IN ES RESEARC H HIG HLIG H TS COMMU N ICATION S OF THE AC M
1100 Seventeenth St., NW, Suite 50 http://cacm.acm.org/guidelines Co-chairs (ISSN 0001-0782) is published monthly
Washington, DC 20036 USA
David A. Patterson and by ACM Media, 2 Penn Plaza, Suite 701,
T (202) 659-9711; F (202) 667-1066
A DVE RT IS IN G Stuart J. Russell New York, NY 10121-0701. Periodicals
Computer Science Teachers Board Members postage paid at New York, NY 10001,
ACM ADVERT ISIN G D EPARTM E NT Martin Abadi; Stuart K. Card;
Association and other mailing offices.
Chris Stephenson 2 Penn Plaza, Suite 701, New York, NY Deborah Estrin; Shafi Goldwasser;
Executive Director 10121-0701 Monika Henzinger; Maurice Herlihy; POST MAST ER
2 Penn Plaza, Suite 701 T (212) 869-7440 Norm Jouppi; Andrew B. Kahng; Please send address changes to
New York, NY 10121-0701 USA F (212) 869-0481 Gregory Morrisett; Linda Petzold; Communications of the ACM
T (800) 401-1799; F (541) 687-1840 Michael Reiter; Mendel Rosenblum; 2 Penn Plaza, Suite 701
Director of Media Sales New York, NY 10121-0701 USA
Ronitt Rubinfeld; David Salesin;
Association for Computing Machinery Jennifer Ruzicka
Lawrence K. Saul; Guy Steele, Jr.;
(ACM) jen.ruzicka@hq.acm.org
Gerhard Weikum; Alexander L. Wolf
2 Penn Plaza, Suite 701 Media Kit acmmediasales@acm.org
New York, NY 10121-0701 USA WE B
T (212) 869-7440; F (212) 869-0481 Co-chairs
Marti Hearst and James Landay 

 


Board Members





Jason I. Hong; Jeff Johnson;





Greg Linden; Wendy E. MacKay Printed in the U.S.A.




 


4 C OMMUNIC ATIONS O F TH E ACM | D ECEM BE R 2009 | VO L . 5 2 | NO. 1 2


csta letter

DOI:10.1145/1610252.1610253 Chris Stephenson

It is a Pivotal Time for


K–12 Computer Science
For many, the recent news that enrollments in undergraduate
computer science programs are no longer on a downward slide
is reassuring, but I seriously hope that it doesn’t begin to undo
the good that has come out of our mutual fear, most
especially that it does not diminish the the JETT and TECS programs, CSTA has programs because they understand that
commitment across all educational lev- held more than 96 professional devel- waiting for students to come to them is
els to address the serious issues in K–12 opment workshops for teachers across a recipe for disaster. Interest in comput-
computer science education. the U.S. The annual Computer Science er science must begin long before stu-
Creating real, sustainable change in & Information Technology symposium dents sign up for their first university or
any area of education is a frustratingly is the closest thing we have to an annual college courses. It begins in K–12 where
slow process. Public education is a com- national conference for K–12 computer other academic disciplines first sow the
plex bureaucracy where competing ide- science and information technology seeds of interest and engagement.
ologies, philosophies, ontologies, and educators. CSTA’s white paper The New This increased interest in direct
pedagogies vie for attention and con- Educational Imperative: Improving High outreach to K–12 has also prompted
trol. It is subject to extreme pressures. School Computer Science Education pro- a greater level of understanding and a
As a profession, teaching is simultane- vides a cogent, research-supported ar- spirit of cooperation across educational
ously professionalized and devalued. gument for the role that computer sci- levels that will benefit us greatly in the
And, in most cases, the employees are ence must play in the K–12 academic long run, but only if we do not lose sight
overworked, underpaid, and severely canon. Careers in computing resources of what we are doing and return to our
under-resourced. developed by CSTA and the ACM Edu- former isolated complacency.
But change is possible. Five years cation Board have now made their way The next year will be a pivotal one for
ago, ACM founded the Computer Sci- into every school in the U.S. and sev- us. Talk (and hopes) of a new, relevant,
ence Teachers Association (CSTA) with eral other countries as well. Finally, rigorous, and more engaging sequence
the goal of addressing serious concerns CSTA’s new report on teacher certifica- of high school computer science courses
in K–12 computer science education, tion (Ensuring Exemplary Teaching in (including a new gold standard Advance
including the lack of curriculum stan- an Essential Discipline) proposes a new Placement computing course) and an
dards, poor professional development framework for guaranteeing we have ambitious plan for teacher professional
for teachers, common misunderstand- the teachers we require with the skills development could mean a real renais-
ings about computer science, student we need in our classrooms. sance for our discipline and field.
and parent perceptions that there are But something equally important As we begin to work toward these
no jobs in the computing field, and the came out of the enrollment crisis. Col- goals, the challenges will be enormous
complete mess that is computer science leges and universities facing dwindling as will the temptation to circle the wag-
teacher certification. class sizes began reaching out to K–12 ons and fire inward. I hope our com-
Today, CSTA stands as an example computer science educators and stu- munity has the vision to rise above frag-
that faith, funding, and a whole lot of dents in order to recruit students direct- mentation and discord so we can work
volunteer support from the top to the ly into their programs, and in doing so, together to do something important
bottom can achieve something close many faculty learned that the assump- and valuable. We did it when we formed
to miracles. The guidelines in the ACM tions they had been making about what CSTA and I think we can do it again to
Model Curriculum for K–12 Computer Sci- it is like to teach computer science in reframe computer science education.
ence are now recognized as the defacto K–12 were misguided at best and pater-
Chris Stephenson (chris.stephenson@comcast.net)
national computer science curriculum nalistic at worst. is the executive director of Computer Science Teachers
standards. Thanks to its partnership Many colleges and universities now Association.
with colleges and universities through have ongoing outreach and mentoring © 2009 ACM 0001-0782/09/1200 $10.00

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | COM M U N I C AT ION S OF THE ACM 5


letters to the editor

DOI:10.1145/1610252.1610255

In CS Education, Educate the Educators First

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

6 C OMMUNICATION S O F TH E ACM | D EC EM BER 2009 | VO L . 5 2 | NO. 1 2


letters to the editor

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

by trying to pour a quart of technology ownership, as one would otherwise


into this particular pint jar. be managing two different data stores Coming Next Month in
Scott Marovich, Palo Alto, CA with poor or no integration. DM solves
the big-data problem without a special
COMMUNICATIONS
data store just for data analysis; DM
How to Address Big Data provides a single view of the data. Can Automated Agents
I want to thank Adam Jacobs for cata- Though I am a technical member of Negotiate with Humans?
loging the important issues in the man- the Oracle Exadata development team,
agement of large volumes of data in his my aim here is not to plug the product
MapReduce and Parallel
article “The Pathologies of Big Data” but report that the big-data problem is
(Aug. 2009). But please know that in- indeed being tackled, particularly by Database Management
novations are also being made by rela- relational database vendors. Systems: Friend or Foe?
tional database vendors. One recently Umesh Panchaksharaiah, Richmond, CA
released product is the HP Oracle Data- MapReduce: A Flexible Data
base Machine (http://www.oracle.com/
Processing Tool
database/database-machine.html) that My Generation
processes large volumes of data using Samuel Greengard’s news story “Are
massive horizontal parallelism across We Losing Our Ability to Think Criti- What Should We Teach New
a shared-nothing storage grid. Pipe- cally” (July 2009) is inspiring as a basis Software Developers?
line (vertical) parallelism is enabled by for future work. I am coordinating an
offloading data processing to a storage interdisciplinary seminar on the collec-
grid, so the amount of data that must tive construction of knowledge (http:// Next-Generation Search
be shipped back from the storage grid seminario.edusol.info in Spanish), in-
to the database grid is reduced as well. cluding two topics Greengard might be Cross-Language Translation
The storage grid and database grid are able to bridge: One is free software in
connected through a high-speed Infini- a democratic society, inciting people to
And the latest news on e-heritage,
band interconnect. be more politically active and involved,
computer museums, and technology
A single DM has an I/O bandwidth despite being (usually) independent of strategy and management.
of 14GB/sec in the first version of the political parties and other traditional

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S OF THE ACM 7


The Communications Web site, http://cacm.acm.org,
features more than a dozen bloggers in the BLOG@CACM
community. In each issue of Communications, we’ll publish
excerpts from selected posts.

Follow us on Twitter at http://twitter.com/blogCACM

DOI:10.1145/1610252.1610257 http://cacm.acm.org/blogs/blog-cacm

CS Woes: Deadline- with our current culture in computing.


We are now in a state where the com-

Driven Research,
mon thought-chunk of research is a
12-month effort that fits in 12 pages.
We, as faculty advisors, are in a

Academic Inequality bind: Do we say to our student, “Yes, go


ahead and submit to that conference
[whose due date is looming]” or “No,
Jeannette M. Wing writes about the negative effects don’t waste your time writing for that
of deadline-driven research and Mark Guzdial discusses conference. Your work is not ready.
Spend the time developing the work”?
the role of computer science faculty in fostering inequality. Do we give in to the peer pressure our
students feel, making them potentially
less competitive when they are on the
From Jeannette M. intense. And presumably the more the job market? We need to promote a cul-
Wing’s “Breaking the better. To accommodate the research ture that encourages faculty and stu-
Cycle” capacity of our field, new workshops dent researchers to take the time need-
How can we break the cy- and conferences (and journals) prolif- ed to work out their ideas so that when
cle of deadline-driven re- erate, resulting today in extensive Web they feel ready, they can submit based
search? In computer sci- sites maintaining double-digit rank- on the import of their contribution.
ence, there has been a growing trend ings of conferences. It is now common Moreover, conservatism tends to
in the past decade or so for researchers practice to see the conference success win out in program committees, when
to publish in workshops and confer- rate included with each publication submissions are competing for a fi-
ences in order to increase the length listed on a candidate’s résumé. (I will nite number of conference slots, and
of their publication list. This situation not repeat the cogent arguments that in panel reviews for funding agencies,
is especially true of junior faculty, wor- others have given on the subject of when proposals are competing for fi-
ried about getting tenure; graduate journals vs. conferences, published nite resources. This attitude leaves less
students, worried about getting job in Communications,1–3 but they are rel- room for the bold, creative, risk-taking,
interviews; and now even undergradu- evant to this topic as well.) visionary ideas, especially those that
ates, worried about getting into gradu- We are now in a state where our ju- are not fully fleshed out with all the i’s
ate school. In promotions and tenure nior faculty are mentoring graduate dotted and t’s crossed. Note that I have
committee meetings at some schools, students with this deadline-driven ap- nothing against conferences: they are
discussion of the number of papers proach to research. It’s the only value important for the expeditious exchange
can overshadow discussion of the qual- system they know and they are passing of technical ideas, as well as network-
ity and impact of the candidate’s work. it onto the next generation. When one ing among researchers and between
We have successfully trained deans of my own graduate students, after we academia and industry. I have noth-
and provosts that, in computer sci- agreed that we would submit a journal ing against (high-quality) incremental
ence, papers in premier conferences version of our conference paper, said to research: some research agendas are
count as much as or more than papers me, “Jeannette, the author guidelines long-term in vision, but rely on making
in journals. So, the pressure to publish for Journal X don’t specify a page lim- progress step by step, building on prior
in conferences is even that much more it,” I knew something was very wrong research results.

8 COMMUNICATION S O F TH E ACM | D EC EM BE R 2009 | VO L . 5 2 | NO. 1 2


blog@cacm

The consequences of this deadline- tion has collected a mountain of data


driven research are potentially bad for on growing educational inequality. As
the field. Our focus should be on the “It’s easy to pick he points out, universities have done
quality of the research we do. Our goal the ‘best and a wonderful job educating affluent
should be advancing the frontiers of kids since 1980. But they ‘have done
science and engineering. brightest’ who look a terrible job of including those from
So how can we break this cycle? One like us, act like us, the bottom half of the family income
place to start is with the department distribution. In this respect, higher
heads. At hiring time, among other fac- and learn like us. education is now causing most of the
tors, we should look for a candidate’s The challenge is to growing inequality and strengthening
big idea (or two), not number of publi- class structure of the United States.’ ”
cations. In mentoring junior faculty, we identify the students CS faculty play a role in this phe-
need to stress the importance of quality who are even brighter nomenon. No one who looks at CS1 fail-
and impact. At faculty evaluation time, ure rates could argue that CS doesn’t
we should promote and grant tenure and better than us, contribute to failing grades. Richard
based on quality and impact. but don’t look Tapia, in his forward to Jane Margo-
Hopefully, we in the community can lis’ Stuck in the Shallow End, makes the
at least start a dialogue on this topic. It like us, act like us, argument explicitly starting from his
is for the good of our field—to keep it or learn like us.’’ title, “Computer Science is Widening
healthy, exciting, and vibrant. the Education Gap.” He wrote:
—Mark Guzdial “Over the years, I have developed
References an extreme dislike for the expression
1. Crowcroft, J., Keshav, S. and McKeown, N.
Scaling the academic publication process to Internet ‘the best and the brightest,’ so the au-
scale. Commun. ACM 52, 1 (Jan. 2009), 27–30. thors’ discussion of it in the conclud-
2. Vardi, M. Y.
Conferences vs. journals in computing research. ing chapter particularly resonated with
Commun. ACM 52, 5 (May 2009), 5. me. I have seen extremely talented and
3. Birman, K. and Schneider, F. B.
Program committee overload in systems. Commun. the Times has made this argument, creative underrepresented minority
ACM 52, 5 (May 2009), 34–37. though. The first time I read the claim undergraduate students aggressively
that higher-education faculty are a excluded from this distinction. While
Reader’s comment significant cause of the widening gap serving on a National Science review
A key challenge that our community needs between the haves and have-nots was panel years back, I learned that to be
to address is how to detect, from an ocean in a column in 2005 by David Brooks included in this category you had to
of papers, the key innovative ones that of the New York Times. He explicitly ar- have been doing science by the age of
need to be widely distributed. The new gued that colleges, rather than being a 10. Of course, because of lack of oppor-
Communications is a very good step in this ladder to improving one’s life, are ac- tunities, few underrepresented minori-
direction, but I think that Communications tually reducing the opportunities for ties qualified.”
will not be sufficient and we’ll need the poor. Brooks wrote: No one is arguing that we should not
innovative techniques to efficiently and “As you doubtless know, as the in- seek the actual “best and the bright-
quickly detect the most innovative papers formation age matures, a new sort of est.” The real question is how we make
in each CS subfield. stratification is setting in, between that determination and how we devel-
—Olivier Bonaventure those with higher education and those op those students. It’s easy to pick the
without. College graduates earn nearly “best and brightest” who look like us,
From Mark Guzdial’s twice as much as high school gradu- act like us, and learn like us. The chal-
“CS Faculty Cause ates, and people with professional lenge is to identify the students who
Inequality” degrees earn nearly twice as much as are even brighter and better than us, but
An article in the Sept. 8, those with college degrees. But worse, don’t look like us, act like us, or learn
2009 edition of the New this economic stratification is translat- like us. With declining enrollment and
York Times argues that ing into social stratification. Only 28% a population of computer scientists
“Colleges Are Failing in Graduation of American adults have a college de- who increasingly have the same gender
Rates.” Specifically, the article claims gree, but most of us in this group find and represent only a few ethnic groups,
“[t]he United States does a good job ourselves in workplaces in social mi- we must look beyond the simple defi-
enrolling teenagers in college, but only lieus where almost everybody has been nitions, find those terrific students
half of students who enroll end up with to college… The most damning indict- whom we might have missed in our
a bachelor’s degree. Among rich coun- ment of our university system is that first glance, and help them to develop
tries, only Italy is worse. That’s a big these poorer kids are graduating from in the ways that best suit them.
reason inequality has soared, and pro- high school in greater numbers. It’s
ductivity growth has slowed.” when they get to college that they be- Jeannette M. Wing is a professor at Carnegie Mellon
That’s a strong claim, that the fail- gin failing and dropping out. Thomas University. Mark Guzdial is a professor at the Georgia
Institute of Technology.
ing rates in college are actually caus- Mortenson of the Pell Institute for the
ing inequality. This isn’t the first time Study of Opportunity in Higher Educa- © 2009 ACM 0001-0782/09/1200 $10.00

DECE MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S O F TH E ACM 9


 


 


 

   
 

      


 
  
 
  
  
  

 
 
 

    


   
 

  
 

 


 

  
 
       
        

 
           
  
      

   
 
    
    
              
       
    
 !     " 
     
#
 

    
  
  
 
 

      
      $     
    

 %  

  
     &  
    &

  
&  
 
 
  

 
       
 
  
    '    
(  

 ))$$$*
* )
 
in the virtual extension

DOI:10.1145/1610252.1610256

In the Virtual Extension


Communications’ Virtual Extension brings more quality articles to ACM
members. These articles are now available in the ACM Digital Library.

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.

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 11


cacm online

ACM
Member
News
DOI:10.1145/1610252.1610258 David Roman
HALL WINS DUNCAN

Crowdsourcing and DAVIES MEDAL


ACM President Dame Wendy

the Question of Expertise


Hall received the Duncan Davies
Medal, which is awarded annually
by the Research and Development
Society to an individual who
has made an outstanding
contribution toward making
There is an in inherent weakness to the United Kingdom the world’s
crowdsourcing that should bother best-performing research and
development environment.
computer scientists and computer
users alike. It’s the fact there is no BERMAN HONORED WITH
clear difference between “the wis- KEN KENNEDY AWARD
dom of the crowd” and “the mob that Francine
Berman was
rules.” What’s missing is a measure
awarded the
of discernment. inaugural Ken
The Internet is awash in informa- Kennedy Award
tion that demands selectivity, leading from ACM and
IEEE Computer
Newsweek among others to predict Society for “her influential
the rise of online experts and reli- leadership in the design,
able information (http://www.news- development, and deployment
week.com/id/119091). The assess- of national-scale cyber-
infrastructure.” A vice president
ment seems overly optimistic. There for research at Rensselaer
are some efforts to rate expertise on Polytechnic Institute, Berman
the Internet (http://cacm.acm.org/ was recognized for her work as a
pioneer in grid computing and a
news/42206), but most of us are left with coping strategies that limit where you leading advocate for the
go, what you see, and who you trust. It is not the kind of open investigation that development of a national-scale
promotes learning or understanding. cyberinfrastructure for the
Crowdsourcing doesn’t really help sort through or synthesize information, in access, use, stewardship, and
preservation of the digital data.
fact, it might do the opposite. Research shows that it favors popular opinion and In an email interview,
therefore reinforces homogeneity (http://cacm.acm.org/news/42525). That’s not Berman discussed the current
hospitable to unconventional or idiosyncratic views. challenges and opportunities
in cyberinfrastructure. “There
There is an upside, for sure. Luis von Ahn’s GWAP (http://www.gwap.com/
are immense opportunities
gwap/about/) uses computer games “to solve problems for humans all over the that focus on the development
world.” And Galaxy Zoo tapped about 250,000 visitors to classify nearly one mil- of cyberinfrastructure to drive
lion galaxies (http://cacm.acm.org/magazines/2009/10/42492). innovative solutions for some
of the most complex and
Now the downside: The limitations of crowdsourcing are becoming appar- compelling societal challenges
ent, even to its defenders. Blogger Josh Berkus summarizes key weaknesses, of our age: health care, energy,
saying the term is “evil” and carries too much baggage (http://it.toolbox.com/ the environment, safety, and
blogs/database-soup/never-say-crowdsourcing-34331). In the end he concludes economic stability,” said
Berman. “Some of the greatest
that the problem is mainly about improper usage. But the issue is bigger than breakthroughs we are now
that. The problem with crowdsourcing is that there is no verity. In fact, “cor- seeing in these areas come from
rectness [is]…anathema to crowdsourced systems” (http://cacm.acm.org/maga- the innovative use of computers,
information, sensors, networks,
zines/2009/7/32094). That’s a small concern when rating movies, but researchers scientific instruments, and other
and scientists need something more. 21st century tools. The challenge
Science needs higher standards. This was illustrated by Newsweek when it de- is to develop a system to support
PHOTOGRA PH BY PABLO T WOSE VA LL

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.”

12 C OMM UNICATION S O F TH E AC M | D EC EM BE R 2009 | VO L. 5 2 | N O. 1 2


N
news

Science | DOI:10.1145/1610252.1610259 Gary Anthes

Blueprints for as electronics, communications, and


medicine. For example, Cohn says, a

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

DECE MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 13


news

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

Report from the ACM Nominating Committee

Slate of Nominees for ACM General Election


In accordance with the SECRETARY/TREASURER elected offices of the ACM may Segal, c/o ACM Headquarters.
Constitution and Bylaws of the (7/1/10–6/30/12): also be nominated by petition All candidates nominated by
ACM, the Nominating Committee of one percent of the Members petition are reminded of the
Alexander L. Wolf,
hereby submits the following slate who as of November 1 are eligible
PHOTOGRA PH BY BRIA N WILSON, PRINC ETON UNIVERSIT Y, OF F IC E OF COM MUNICATIONS
Imperial College London requirements stated in the Policy
of nominees for ACM’s officers. to vote for the nominee. Such
Carlo Ghezzi, petitions must be accompanied and Procedures on Nominations
In addition to the officers of the
ACM, two Members at Large will Politecnico di Milano by a written declaration that and Elections that a candidate for
be elected. The names of the the nominee is willing to stand high office must meet in order to
candidates for each office are MEMBERS AT LARGE for election. The number of serve with distinction. Copies of
presented in random order below: (7/1/10–6/30/14): Member signatures required this document are available from
Vinton G. Cerf, for the offices of President, Vice Rosemary McGuinness, Office
PRESIDENT (7/1/10–6/30/12): Google President, Secretary/Treasurer of Policy and Administration,
Alain Chesnais, and Members at Large, is 687.
Fei-Yue Wang, The Bylaws provide that such ACM Headquarters. Statements
SceneCaster.com Chinese Academy of Sciences- and biographical sketches of all
petitions must reach the Elections
Institute of Automation/ Committee before January 31. candidates will appear in the May
Joseph A. Konstan,
University of Arizona Original petitions for ACM offices 2010 issue of CACM.
University of Minnesota
Satoshi Matsuoka, are to be submitted to the ACM The Nominating Committee
Tokyo Institute of Technology Elections Committee, c/o Pat Ryan, would like to thank all those who
VICE PRESIDENT (7/1/10–6/30/12): COO, ACM Headquarters, 2 Penn
Salil Vadhan, helped us with their suggestions
Barbara G. Ryder, Plaza, Suite 701, New York, NY
Harvard University 10121, USA, by January 31, 2010. and advice.
Virginia Tech
Duplicate copies of the petitions Stuart Feldman, Chair, Fabrizio
Norman P. Jouppi, The Constitution and Bylaws should also be sent to the Chair of Gagliardi, Susan Graham, Mathai
Hewlett Packard provide that candidates for the Elections Committee, Gerry Joseph, Lucy Sanders.

14 COMM UNICATION S O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


news

driven by theoretical and computation- Milestones


al methods is the most direct way to de-
sign materials that can be produced by
self-assembly. Some such substances
The research of Cohn
and Kumar may
CS Awards
have counterintuitive properties, such
as materials that shrink when heated have applications IBM’s Blue Gene supercomputers
and members of the computer
or that, when stretched, expand at for fields such science community were
honored for their innovative
right angles to the direction of stretch.
The latter property might be useful in as electronics, research.

a foam designed to provide a tight seal communications, NATIONAL MEDAL OF


TECHNOLOGY AND
between two surfaces, for example.
“The game is to show that in fact you and medicine. INNOVATION
In a special ceremony at the
are not limited to what you get from mo- White House, President Obama
lecular interactions,” Torquato says. honored IBM’s Blue Gene line
of supercomputers with the
“What kinds of interesting structures, National Medal of Technology
that typically nature doesn’t make, can and Innovation in recognition
you make computationally? We ask of its lasting contributions to
America’s competitiveness,
the fundamental questions: What’s repel each other and stay as far apart as
standard of living, and quality
permitted? What’s not? We still don’t possible. Cohn says he was able to ap- of life through technological
know the answers to those questions.” ply some of the theory of error-correc- innovation.
While researchers using the inverse tion coding to the self-assembly prob- JIM GRAY eSCIENCE AWARD
method increasingly rely on concepts lem by using it to tell particles how to University of California, Santa
from information theory, those em- stay far apart. Barbara
professor
ploying the forward approach are more “Some of the most interesting ar-
Jeff Dozier
Edisonian, relying more on hands- eas for research are where there is an was awarded
on, trial-and-error laboratory work, imbalance between two fields, where Microsoft
Torquato says. “They synthesize new each field knows something that the Research’s
second annual
[substances] and they get what they get other field hasn’t figured out yet,” Jim Gray eScience Award.
at the end of the day,” he says. “But the Cohn says. “If you can make the con- Dozier was cited for “his
most direct way to get self-assembly is, nection, you can engage in arbitrage pioneering research on remote
OK, you want a particular target config- and transfer some information in each sensing, water resources,
and climate change, and his
uration, then let’s design the interac- direction.” contributions to the integration
tions to get those.” of environmental science and
But Torquato says it’s not a battle computer science.”
between Edisonians and computer sci- Further Reading SEYMOUR CRAY AWARD
entists. “The idea would be to combine Cohn, H. and Kumar, A. IEEE Computer Society bestowed
our computational theoretical approach its 2009 Seymour Cray Computer
Algorithmic design of self-assembling
Engineering Award to Kenichi
with experimental synthesis technol- structures, Proceedings of the National
Miura, a professor at the National
ogy, and that, I think, is the way material Academy of Sciences 106, 24, June 16, Institute of Informatics in Tokyo,
2009. for “unique contributions to the
science will be done in the future.”
Cohn, H. and Kumar, A. field of computer engineering by
Torquato hails as a “wonderful con- bringing a strong background
Universally optimal distribution of points on
tribution” Cohn and Kumar’s methods in numerical algorithms and
spheres, Journal of the American Mathematical
for mathematically proving theorems Society 20, 1, Sept. 5, 2006. applications to the task of
about their potential functions. That designing systems that deliver
Torquato, S. high performance on real
was feasible, he said, because the spaces Inverse optimization techniques for scientific applications.”
they considered, such as spheres, were fi- targeted self-assembly, Soft Matter 5, 6,
nite and bounded. “Can their approach March 21, 2009. SIDNEY FERNBACH AWARD
IEEE Computer Society presented
scale to Euclidian space?” he asks. Rechtsman, M. C., Stillinger, F. H., Torquato, S. the 2009 Sidney Fernbach Award
“There is no reason to think one can’t do Synthetic diamond and Wurtzite structures to Roberto Car and Michele
that. Until they came along, there was self-assemble with isotropic pair Parrinello, developers of the Car
interactions, Physical Review E 75, 3, id. Parrinello Molecular Dynamics
no rigorous proof of any kind.” approach. Car, a professor of
031403, March 26, 2007.
Cohn and Kumar found inspiration chemistry at Princeton University,
in some unlikely recesses of informa- Cohn, H. and Kumar, A. and Parrinello, a professor of
Counterintuitive ground states in soft-core computational science at ETH
tion science, such as the theory be- models, Physical Review E 78, 6, id. 061113, Zurich, were recognized for laying
hind the error-correction codes used Dec. 12, 2008. “the foundation for a modern
in communication systems. In a noisy approach to the chemistry and
communication channel, one wants to physics of materials. Their
Gary Anthes is a technology writer and editor based in methodology was revolutionary,
keep multiple signals as well separated Arlington, VA.
increasing the speed of
as possible so they don’t get confused. simulations and propelling a
Similarly, in chemistry, particles often © 2009 ACM 0001-0782/09/1200 $10.00 major force in science.”

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 15


news

Technology | DOI:10.1145/1610252.1610260 Alex Wright

Ready for a Web OS?


A new generation of browsers may finally herald the long-awaited
convergence of the Web and operating system.

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

16 COMM UNICATION S OF TH E AC M | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2


news

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S OF T HE ACM 17


news

Society | DOI:10.1145/1610252.1610261 Samuel Greengard

Making Automation Work


Today’s automated systems provide enormous safety and convenience.
However, when glitches, problems, or breakdowns occur, the results can be catastrophic.

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

18 COM MUNICATION S OF TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


news

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 19


news

Conference | DOI:10.1145/1610252.1610262 Leah Hoffmann

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

20 COMM UNIC ATION S O F TH E ACM | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2


CALL FOR PARTICIPATION

CTS 2010
Chicago, Illinois, USA

The 2010 International Symposium on


Collaborative Technologies and Systems
May 17 – 21, 2010
The Westin Lombard Yorktown Center Hotel
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

In cooperation with the ACM, IEEE, IFIP


V
viewpoints

DOI:10.1145/1610252.1610263 Richard E. Ladner

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

22 C OMMUNICATION S O F TH E AC M | D ECEM BE R 2009 | VO L. 5 2 | N O. 1 2


viewpoints

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I C AT ION S OF T HE ACM 23


viewpoints

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.

24 C OMMUNIC ATION S O F TH E ACM | D EC EM BE R 2009 | VO L . 5 2 | N O. 1 2


V
viewpoints

DOI:10.1145/1610252.1610264 Orna Berry and Yigal Grayeff

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I CAT ION S O F T HE ACM 25


viewpoints

implementation of Yozma, a program to a failure to create large companies,


designed to create a venture capital ensure diversity and spread the ben-
industry and make large-scale start-up A major reason efits of Israel’s high-tech success to the
financing readily available for the first why there are so wider economy and society. Moreover,
time. Since then, VC firms have raised Israel’s tertiary education system is
$13 billion, mostly from overseas, and few big high-tech declining, threatening the basis of the
backed companies that have account- companies in Israel country’s technological edge and eco-
ed for $35 billion in exits. Most exits nomic growth—its work force.
have been in the form of initial public is that many are
offerings on exchanges abroad or sales sold, often to foreign Addressing the Challenges
to foreign acquirers, with the latter ac- As great as the challenges facing Is-
celerating the increase in the presence acquirers, before rael are, there is much it can do to ne-
of overseas companies in Israel. These they become large. gate the effects of these difficulties. A
successes have provided VCs with the policy paper for the Israel Democracy
returns that have enabled them to raise Institute (IDI) formulated by a team
further funds and invest in more high- chaired by Arnon Bentur of the Tech-
tech businesses, thus ensuring the con- nion-Israel Institute of Technology,
tinued development of the sector. and comprising government econom-
In addition, the high-tech industry, Wi-Fi chips, and the disk-on-key flash ic advisors, high-tech business lead-
as per the government’s aim, has be- memory device. The caliber of the work ers, leading academics, Chief Scientist
come an engine of economic growth. force has also played an important role Eli Opper and one of the writers of this
Between 1995 and 2007, while Israel’s in drawing multinational corporations column, Orna Berry, has called on the
gross domestic product increased two- and international investment to Israel. country’s ruling coalition to reinvigo-
and-a-half times to $164 billion, high- rate the government’s involvement
tech GDP more than tripled to approxi- Challenges in the high-tech sector with the aim
mately $18 billion, or more than 10% However, the high-tech sector is vul- of helping it overcome the economic
of the total figure. From 1995–2008, nerable despite its apparent strength. crisis. Such involvement has become
high-tech exports jumped more than Among the greatest concerns is the static in recent years, as pointed out
fourfold from $5 billion to $23 billion, global economic crisis, which has led in the report The Future of Growth Pro-
with their contribution to total exports to a reduction in the sources of credit motion in Israel: A Return to Boosting
growing from 20% to 32% respectively. and equity capital. The IPO market Avant-Garde Industries and Scientific-
Furthermore, the expansion of the has stagnated, with not a single Israeli Technological Innovation,b the OCS’s
technology sector has helped create of company listing on a foreign exchange 2009 budget is only two-thirds of what
tens of thousands of jobs in ancillary since 2007, a notable fact given that Is- it was in 2000. While the authors of
fields such as law firms and accoun- rael has more firms traded on Nasdaq the paper understand the spending
tancy practices. than any other country outside North constraints on the government, Israel
America. With revenues falling, busi- should do its utmost to reverse this
The Work Force nesses of all sizes and types are feeling trend as a strategic priority, especial-
There are many reasons why Israel’s the effects of the slowdown, leading to ly given that state investment in the
innovation industries have become an layoffs and company closures, and sty- high-tech sector has been shown to
integral part of the economy. One fac- mieing R&D projects and the establish- create wealth and generate returns for
tor is the work force: per capita, Israel ment of new firms. the economy.
is among the leading countries in the Israel is particularly exposed to the To help stave off job losses, for ex-
world for the number of engineers, slump because of its reliance on exports ample, and ensure a continuation of
Ph.D.s, patents, and citizens with a and foreign capital, especially with the the innovation that is so vital to Israel’s
tertiary education, as well as for the dollar weakening against the shekel. In prosperity, the report recommends
standard of its research institutions as 2008, sales abroad accounted for 40% that the government increase its as-
ranked by the World Economic Forum. of GDP, while from 1999–2008, the di- sistance to companies in reducing the
In addition, Israelis enter the work rect share of overseas financing in to- costs of R&D projects. To lower the
force at a higher average age than in tal VC investments was approximately dependence on foreign capital, the
other countries after having completed 60%, although the overall foreign par- authorities should encourage local in-
compulsory national service, where ticipation was much greater because stitutional investment in the high-tech
they develop problem-solving, leader- Israeli VCs raise the vast majority of sector, which is minimal, through the
ship and teamwork skills, and take on their funds from abroad. Much of this loosening of prohibitive regulation and
significant responsibilities. These ele- capital goes toward early-stage compa- via the provision of tax incentives.
ments have fostered a culture of inno- nies in the software, communications, Another goal that the policy paper
vation that has led to the pioneering of networking, and semiconductors sec- identifies is the need to encourage
widely used technology such as Voice tors and not enough to firms at a later
over Internet Protocol (VoIP), Internet stage of development or in other indus- b See http://www.idi.org.il/sites/english/events/
firewalls, voicemail, Intel’s Centrino tries. These trends have contributed TheAnnualEconomicForum/Documents/

26 COMMUNICATION S O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


viewpoints

the development of large companies,


defined as employing over 450 work-
This fostering of links between the
private and tertiary sectors should also Calendar
ers and generating annual sales of
more than $100 million. Just 1% of
high-tech businesses in Israel belong
be widened as part of an overall strat-
egy aimed at reversing a decline in the
education system that threatens the
of Events
to this category, and since 1995, only quality of Israel’s future work force December 2009
four companies have been created and hence the long-term status of its
that have remained independent and high-tech industry. Major problems December 16–18
International Conference
now satisfy the second criterion. This include a relative decline in the num- on Frontiers of Information
is significant, because the advantages ber of R&D university personnel at a Technology,
of large companies to the economy are time that this is rising in Europe and Abbottabad, Pakistan,
manifold. One of the most important Asia, an aging faculty that is not being Contact: Muhammad, Sarfraz,
Email: prof.m.sarfrax@
advantages is that because they often adequately replaced, high staff-student gmail.com
locate some of their manufacturing ratios, a “brain drain” to the U.S., and a
in different regions in Israel and em- fall in the proportion of undergradu- December 16–19
ploy workers withall types of back- ates in science and engineering—sub- International Conference on
High Performance Computing,
grounds, they spread the benefits of jects that are vital for entry into high- Kochi, India,
the high-tech sector socially and geo- tech positions. Contact: Manish Parashar,
graphically. In addition, job creation Immediate action that Israel should Phone: 732-445-5388,
Email: parashar@rutgers.edu
at big corporations is higher than at take to offset these trends, in addition
small firms, with OCS figures demon- to that noted above, includes expand- December 16–19
strating that a company experiences a ing the higher-education budget in SIGGRAPH Asia 2009,
substantial growth in the number of order to recruit new faculty members Yokohama, Japan,
Sponsored: SIGGRAPH,
its employees—from dozens to hun- and attract researchers back to Israel
Contact: Masahiko Inakage,
dreds—after it crosses the threshold from abroad; increasing grants for Phone: 81-467-32-7641,
of $100 million in sales a year. Large doctorates and post-doctorate stud- Email: inakage@
firms are also more likely to be profit- ies; promoting a return to academic media-studio.co.jp
able, contribute to the tax base, less study among high-tech workers who
likely to close, and have greater re- have recently lost their jobs; and wid- January 2010
sources for development. ening the scope of scientific research
A major reason why there are so few funds. As with other areas of govern- January 3–7
23rd International Conference
big high-tech companies in Israel is ment policy, a strengthening of the on VLSI Design & 9th
that many are sold, often to foreign ac- education system would help spread International Conference on
quirers, before they become large. This the benefits of the high-tech sector Embedded Systems,
Bangalore, India,
is partly a consequence of VC financing by facilitating the drawing in of more Contact: Srivaths Ravi,
being such a prominent source of cap- of those from Israel’s lower socioeco- Email: srivaths.ravi@ti.com
ital in Israel, and is the disadvantage nomic echelons.
of a model that has otherwise brought As has been demonstrated, Israel’s January 9–14
ACM SIGPLAN Principles and
the country huge benefits. Further- high-tech sector constitutes a major Practice of Parallel Computing,
more, the size of most Israeli VC part of its economy, so despite a sur- Bangalore, India,
funds means that late-stage financing feit of problems the government faces, Sponsored: SIGPLAN,
is mostly beyond their scope, because it should give high priority to helping Contact: David Padua,
Phone: 217-333-4223,
much larger sums of money are need- solve the difficulties the industry is Email: dapadua@gmail.com
ed than at earlier junctures. There is experiencing. The government should
also an almost total lack of post-VC not wait for this growth engine of the January 18–22
funding, and in particular, private- economy to splutter to a halt, especially The Twelfth Australasian
Computing Education
equity mezzanine capital. The result with international competition for in- Conference,
is that growth companies find it diffi- vestment increasing as countries such Brisbane, Australia,
cult to raise the cash required to build as China, India, Finland, and South Ko- Contact: Tony G Clear,
Phone: 64-9-917-9999,
the operational infrastructure—such rea execute strategies to promote their Email: tony.clear@aut.ac.nz
as in finance, management, manufac- own high-tech sectors.
turing, sales, and marketing—that en- January 20–23
able them to expand. The government Orna Berry (orna@gemini.co.il) is a venture partner International Conference
at Gemini Israel Funds, the former chair of the Israel on Biomedical Engineering
should fill in this gap by providing the Venture Association, and the former chief scientist of the
Israeli government.
Systems
necessary resources and reducing the and Technologies,
risks involved, especially in regard to Yigal Grayeff (yigal@gemini.co.il) is a communications Valencia, Spain,
manager for Gemini Israel Funds and was formerly a Contact: Joaquim B. Filipe,
the building of large plants and other journalist, working for the Jerusalem Post in Israel and
Phone: 351-91-983-3996,
advanced projects, while simplifying Dow Jones Newswires in the U.K.
Email: jfilipe@insticc.org
the prohibitive bureaucracy associ-
ated with these processes. Copyright held by author.

DECE MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S O F T H E ACM 27


V
viewpoints

DOI:10.1145/1610252.1610265 Peter J. Denning and Peter A. Freeman

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

28 COMM UNICATIO NS O F THE ACM | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


viewpoints

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I C AT ION S O F T HE ACM 29


viewpoints

information processes—natural or ing, such as the noncomputability of


constructed processes that transform halting problems. Self-reference is com-
information. They can be discrete or mon in natural information processes;
continuous. the cell, for example, contains its own
Computing represents informa- blueprint.
tion processes as “expressions that do The interpretation “computational

 work.” An expression is a description of


the steps of a process in the form of an
thinking”12 embeds nicely into this
paradigm. The paradigm describes not


 (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.

30 COMMUNIC ATION S O F THE ACM | D EC EM BER 2009 | VO L. 5 2 | N O. 1 2


V
viewpoints

DOI:10.1145/1610252.1610266 George V. Neville-Neil


Article development led by
queue.acm.org

Kode Vicious
Broken Builds
Frequent broken builds could be symptomatic
of deeper problems within a development project.

Dear KV, is a strong motivator for avoiding an-


Is there anything more aggravating to tisocial behavior. Like many—or per-
programmers than fellow team mem- haps all—of KV’s suggestions, sham-
bers checking in code that breaks a ing can be taken too far, but I suggest
build? I find myself constantly track- you try it and see how it works.
ing down minor mistakes in other Depending on Mommy to tell off the
people’s code simply because they misbehaving kids becomes tiresome
didn’t check that their changes didn’t both for you and the project manage-
break the build. The worst part is when ment after a while. What you want to
someone has broken the build and see is a good working culture develop,
they get indignant about my pointing one in which people know that break-
it out. Are there any better ways to pro- ing the build is like taking a nap in the
tect against these types of problems? middle of the break room; funny once,
Made to be Broken but usually unacceptable.
Poor infrastructure can also lead
to suffering with frequently broken
Dear Made, builds. One thing that continues to
I know you, and everyone else, are ex- amaze me is how computer hardware
pecting me simply to rant about how gets cheaper, and yet companies con-
you should cut off the tips of the pin- tinue to coast along without a nightly,
kies of the offending parties as a les- or more frequent, build system. For
son to them and a warning to others the price of a single desktop comput-
about carelessness. While that might er and a few days of scripting, most
be satisfying, it’s illegal in most places teams can have a system that periodi-
and, I’m told, morally wrong. cally updates a test build of their code,
A frequently broken build is a lead or the manager). Unfortunately, builds it, and sends email to the team
symptom of a disease, but it is not the Mommy can remind people only so if the build fails. The amount of time
disease itself. It indicates problems in often to clean up their rooms, to tie saved by such a system is easily mea-
any of the following three areas: man- their shoes, and not to check in bro- surable: subtract 1 from the number
agement, infrastructure, or software ken code. of programmers on a team and multi-
architecture. One of the best solutions to the ply the resulting number by the num-
Management is the area that most problem of people not checking their ber of hours it usually takes to figure
quickly comes to mind when there code before they check it in is peer out who broke the build, find them,
PHOTOGRA PH BY ROB BRUCKER

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-

DECE MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 31


viewpoints
CACM_TACCESS_one-third_page_vertical:Layout 1 6/9/09 1:04 PM Page 1

tate to use the word architecture since


overuse of the term has led to the un-
If all the fortunate proliferation of the job title
components of a software architect, which is far too of-
ten a misnomer.
software system If all the components of a software
are too inter- system are too interdependent, then a
ACM dependent, then
change to one can result in an injury
to all. A lack of sufficient modulariza-
Transactions on a change to one tion is often a problem when software
ships, but it is definitely a problem
can result in
Accessible an injury to all.
when the software is being compiled.
When a change to an include file in

Computing one area leads to the build breaking


in another area, then your software is
probably too heavily interlinked, and
the team should look at breaking the
pieces apart. Often such links come
odic builds. I won’t get into periodic from careless reuse of some part of
testing, which can save even more the system. Careless reuse is when you
time and money, because if your build look at a large abstraction and think,
is always broken, you clearly have not “Oh, I really want this version of meth-
achieved a sufficient level of sophisti- od X,” where X is a small part of the
cation to move on to nightly tests. overall abstraction, and then you wind
Even though the broken code will up making your code depend not just
still get into the system, with a peri- on the small part you want, but on all
odic build system the offending per- of the parts that X is associated with.
son will find out fairly quickly that he If you get to the point where you know
or she broke the build and hopefully it’s neither carelessness nor poor in-
will admit it in an email message (“I frastructure that is leading to frequent
broke the build, hang on a second)” build failures, then it’s time to look at
and then repair the error. While this the software architecture.
is still suboptimal, it is far better than Now you know the three most basic
what you had before. ways to alleviate frequent build break-
     Sometimes it is the build system it- age: shaming your teammates, adding
self that is the source of the problem. some basic infrastructure, and finally
 ! $ !   
Many modern build systems depend improving the software architecture.
! $ !   ! heavily on caching derived objects, That ought to keep you out of jail, for
    ! as well as the parallelization of the now.
 !        build process. While a parallel build KV
"   #    process can provide you results more
quickly, it can often lead to build fail-
 ! #    ! ures that are false positives. Trying to Related articles
   
   build an object that requires another on queue.acm.org
      %  object to be created first, such as an Kode Vicious: Facing the Strain
automatically created include file, http://queue.acm.org/detail.cfm?id=1160442
     #
always leads to trouble. Maintaining Making Sense of Revision-Control Systems
       $ Bryan O’Sullivan
the list of dependencies by hand is an
 error-prone, but often necessary, pro- http://queue.acm.org/detail.cfm?id=1595636
     cess. If you are using a build system A Conversation with Steve Bourne,
www.acm.org/taccess that depends on caching and uses par- Eric Allman, and Bryan Cantrill
http://queue.acm.org/detail.cfm?id=1454460
allel builds, then your problems may
www.acm.org/subscribe lie here.
Now we come to the final area that George V. Neville-Neil (kv@acm.org) is the proprietor of
Neville-Neil Consulting and a member of the ACM Queue
is the cause of build problems. The editorial board. He works on networking and operating
way in which a piece of software is put systems code for fun and profit, teaches courses on
various programming-related subjects, and encourages
together, frequently referred to as its your comments, quips, and code snips pertaining to his
architecture, often impacts not only Communications column.

how the software performs when it


runs, but also how it is built. I hesi- Copyright held by author.

32 C OMM UNICATION S O F TH E ACM | D ECEM BE R 2009 | VO L. 5 2 | N O. 1 2


V
viewpoints

DOI:10.1145/1610252.1610267 Savas Parastatidis, Evelyne Viegas, and Tony Hey

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.

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N IC AT ION S OF T HE ACM 33


viewpoints

that would be able to reason, many


times using probabilistic-based tech-
niques, over the diverse set of facts.
We are already witnessing the emer-
gence of data mesh instances on the
Web, especially as they relate to social
networks. The Zune Social (http://so-
cial.zune.net/) is an example of how a
social network can be combined with
information about music preferences,
recommendations, and an online mar-
ketplace. Facebook (http://www.face-
book.com/) is another example of how
connections between identities can
help in aggregating user-oriented pref-
Figure 2. All data/information can be linked in a mesh through relationships. Common, erences and then inferring behavior
machine-processable formats are used to represent every aspect of a data mesh. and preference statistics. Finally, Pow-
erset (http://www.powerset.com/) is an
structured data at Web scale. Recent workflow inside my organization?,” example of a search service that lever-
success stories in the application of “Have Evelyne and Savas been at the ages existing structured information,
knowledge representation to specific same conference, at the same time in for example, Freebase (http://www.
domains, as in the myGrid (see http:// any point in time?,” “What’s the de- freebase.com/) or generates it from un-
www.mygrid.org.uk/) work in BioIn- gree of separation in terms of citations structured sources (such as by applying
formatics research,10 demonstrate the between my paper and the seminal natural language processing technolo-
potential benefits of semantic com- work by Jim Gray?” and so on. gies on Wikipedia content) to improve
puting technologies. Here, we use the While data mesh instances can the quality of the query results.
term “data mesh” to encompass the be built in isolation (as in many of We believe that over time, a huge
various concepts and approaches that today’s social networks), we believe ecosystem of services and tools will
could be used or combined to sup- the potential value of aggregating all emerge around data mesh instances.
port a semantics-rich ecosystem of re- of them and combining them in one Such tools and services will allow us to
search tools and services. It is not our huge network of facts is tremendous. move beyond current practice of infor-
intention to suggest there would be This idea is similar to Tim Berners- mation management by incorporating
one single data mesh that would rep- Lee’s more recent rhetoric around more automation. Recommendation
resent all human knowledge. the ‘Giant Global Graph of Facts’ (see engines will be the norm and our in-
We expect a great number of vocab- http://dig.csail.mit.edu/breadcrumbs/ teractions with computers will always
ularies to emerge, many of which will node/215). Please note that we are not be context-aware (for example, “since
overlap, for representing every aspect suggesting there would be a single re- the topic of the paper being written is
of a data mesh (such as geo-location, pository of facts or that there would about botany, a query about ‘bush’ is
mood, reviews, personal information, even be universal agreement on what unlikely to be about a person’s name”
domain-specific concepts and terms). is represented. We do expect, however, or “the search about papers on orchid
Ontologies will support an evolving to see machine-based technologies will take into consideration the opin-
ecosystem of facts, vocabularies, and ion of people in the user’s professional
relationships in specific domains. social network”). While today we can
We are already witnessing a plethora We are already search for information over the global
of emerging efforts to standardize on graph of linked Web pages consisting
such vocabularies, such as microfor- witnessing the of predominately unstructured data,
mats (http://www.microformats.org/), emergence of data in the future we will be able to search
data portability (http://www.dataport- over all types of semantically enriched
ability.org/), gene ontology (http:// mesh instances information, which will in turn enable
www.geneontology.org/), and others. on the Web, a wide range of new applications to
Programs will consume, combine, emerge such as recommendation ser-
and correlate everything in the uni- especially as vices, information management auto-
verse of structured information and they relate to mation, information inferencing, and
help users reason over it. They will al- so forth.
low them to ask questions against this social networks.
(global) collection of facts—informa- Tools and Services to
tion access policies permitting—such Support Research
as “Which is the most popular book We believe the research community
among my friends today?,” “Who is will play a central role in supporting
the expert on aspect A of my business and further evolving the semantic

34 COMM UNICATIO NS O F THE ACM | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


viewpoints

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,

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N IC AT ION S OF T HE ACM 35


viewpoints

one of which is a subscript. Through


this project, it will be possible to also
store the structured representation of
water so that programs can discover
it. Figure 4 shows how some part of a
document can be identified as chemis-
try. The tool will automatically save the
CML representation of the identified
region (1D and 2D representations
and authoring functionality will also
be supported; see Figure 5). The use of
a semantically rich data format to rep-
resent domain-specific information is
another step in producing structured
data that automatically becomes part
of the data mesh.
Zentity—A Repository Platform. The
need for quality, well-engineered, and
documented software infrastructures
to support institutional repositories,
archives, and digital libraries is in-
creasing, especially in the context of
the global initiative toward Open Ac- Figure 5. A more complicated chemical structure from an early prototype of our tool.
cess.2,5 We have developed a platform,
called Zentity, to support repository nization. However, Zentity has been mentation promotes the graph repre-
systems based on product-quality designed to support the data models sentation principles discussed earlier
technologies like SQL Server, .NET 3.5, of arbitrary domains (for example, and illustrated in Figure 2.
and the Entity Framework (see http:// museums, art collections, research Social Networking and Data Meshes.
research.microsoft.com/en-us/proj- data, and so forth). As a final example, we examine the
ects/zentity/). Interoperability is a major focus of relationship between social networks
The Zentity platform supports a the project and we are implementing and other structured information. We
graph-based representation of the support for popular Semantic Web consider the former a special case of
data in a repository. It provides an technologies, like RDF and RDFS. We a data mesh (in which the nodes are
easy-to-use application programming are also building a number of tools people and the edges between them
interface that abstracts the use of the and services to operate against the represent human relationships, such
underlying relational system to man- data mesh created and we hope that as “friend” or “colleague”). A social
age digital resources and the rela- more will be developed by the com- network can provide context for the
tionships between them and creates munity as we make the platform freely interactions between people (for ex-
a data mesh. Initially, the platform available. ample, “the botany domain-specific
will be targeted toward the “research In addition to supporting the re- social network”); it can be used to infer
output repository” domain, offering pository community through prod- information about a community (for
a data model capable of capturing uct-quality technologies, our work on example, “the botany community has
the research-related resources (for Zentity attempts to demonstrate some been actively looking at orchids over
example, papers, reports, theses, pre- of the principles of data meshes. The the last week”); it can be used to pro-
sentations, and data sets) of an orga- data model employed for the imple- vide recommendations (for example,
“the most read article about orchids
can be found at location X”); it can be

“Semantic Computing” used to change or supplement the way


peer reviewing is done and merit is giv-

vs. “Semantic Web” en (for example, “the article posted on-


line on orchids last week has received
great reviews from the experts of the
We make a distinction between the general approach of computing based on
semantic technologies (machine learning, neural networks, ontologies, inference, botany community”).
and so forth) and the “Semantic Web” as described in Berners-Lee et al.1 and One can therefore imagine an
Shadbolt et al.9 and which is the term used to refer to a specific ecosystem of ecosystem of tools and services that
technologies, like RDF and OWL. The Semantic Web has gained a lot of attention
lately, bringing more awareness of the importance of semantics. However, we takes advantage of the relationships
consider the Semantic Web technologies to be just some of the many tools at our between researchers in the context of
disposal when building semantics-based solutions. a particular research discipline, col-
laboration or research project and
their activities, documents, and opin-

36 C OMMUNIC ATION S O F TH E ACM | D EC EM BE R 2009 | VO L . 5 2 | N O. 1 2


viewpoints

ions. Typical research-related pro- of unstructured data out there already.


cesses could be augmented or even Data-mining technologies are neces-
completely supplanted. For example, We need to sary to automatically extract as much
researchers could automatically get invest significant semantically rich information as pos-
recommendations of papers and con- sible. For example, Microsoft’s Live
tacts based on what they are currently resources to Labs has worked on machine learn-
doing; experts might be automatically making the semantic ing-based technologies to extract en-
identified in a domain based on dis- tities from the unstructured Web (see
cussions around their papers and blog computing vision http://livelabs.com/projects/entity-
entries; peer reviewing could evolve to a reality. extraction/). The research world needs
take into consideration the new social similar technologies to be deployed at
media and Web-based interactions; scale that can aggregate, index, and
and even ‘impact factors’ for institu- mine research-related information.
tions might incorporate electronic We believe such an ecosystem of
analysis of all types of information semantics-aware tools and services
and not just citations to publications need to deal with meaningful and rel- will ultimately become the norm in our
and research grants. evant information within the context day-to-day interactions with comput-
Our support of the myExperiment of one’s actions is growing. There is an ers, constituting a global “smart cy-
(http://www.myexperiment.org/) proj- immense opportunity for the research berinfrastructure.” However, if the big
ect is a demonstration of our belief that community to bring its expertise and companies are to invest in implement-
scientific collaboration and informa- experience together in accelerating ing these ideas and technologies in
tion sharing can be supported through the development of semantic comput- their offerings (products and services),
social networking. The myExperiment ing technologies. We need to invest the research community must test and
project brings together social net- significant resources to making the se- demonstrate their potential as part of
works and workflows in a single infor- mantic computing vision a reality by: the community’s attempt to build a
mation graph—a data mesh—that can ! investing in semantics-aware in- smart cyberinfrastructure for research.
be browsed, analyzed, and searched. frastructure; Ultimately, this vision of a data mesh
! increasing awareness of the po- and smart cyberinfrastructure will go
Conclusion tential of semantics-based computing; some way toward realizing the visions
As researchers and scientific instru- and of the early pioneers like Vannevar
ments can now produce and publish ! training more researchers on se- Bush3 and J.C.R. Licklider.8
large amounts of data and informa- mantics-based computing and related
tion more easily than at any other technologies. References
point in history, there is an increasing The discussion on data meshes 1. Berners-Lee, T., Hendler, J.A., and Lasilla, O. The
Semantic Web. Scientific American (May 2001).
requirement for automation tools to shows the potential value of aggregat- 2. Borgman, C.L. Scholariship in the Digital Age:
help manage and navigate the deluge ing information in a (semi-)structured, Information, Infrastructure, and the Internet. MIT
Press, 2007.
of research data. For example, projects machine-interpretable manner. We 3. Bush, V. As we may think. The Atlantic Monthly (1945);
like Pan-STARRS (http://pan-starrs.ifa. believe an ecosystem of desktop tools, www.theatlantic.com/doc/194507/bush
4. Cycorp. Cyc Knowledge Base; www.cyc.com/
hawaii.edu/) and the HLC (http://lhc. cloud services, and data formats will 5. Dirks, L. and Hey, T., Eds. CTWatch Quarterly: The
web.cern.ch/) will generate many peta- emerge to support “information and Coming Revolution in Scholarly Communications &
Cyberinfrastructure 3, 3 (Aug. 2007).
bytes of data. The emergence of folk- knowledge management,” namely, the 6. Fellbaum, C., Ed. WordNet. The MIT Press, 1998.
7. Helbig, H. Knowledge Representation and the
sonomies on the Web is one example (automatic) acquisition, representa- Semantics of Natural Language. Springer, Berlin,
of how user-driven categorization can tion, aggregation, indexing, discovery, 2006.
8. Licklider, J.C.R. Libraries of the Future. MIT Press,
help with information discovery. The consumption, correlation, manage- 1965.
ment, and inference of information. 9. Shadbolt, N., Berners-Lee, T., and Hall, W. The
Semantic Web revisited. IEEE Intelligent Systems 21,
Doing so at scale would significantly 3 (Mar. 2006), 96–101.
There is an increasing improve the way we discover and share 10. Wroe, C. et al. A suite of DAML+ OIL ontologies
to describe bioinformatics Web services and data.
information and how we collaborate.
requirement for We have described a representa-
International Journal of Cooperative Information
Systems 12 (2003), 197–224.

automation tools tive set of investments we are making


to ease the transition of researchers Savas Parastatidis (Savas.Parastatidis@microsoft.
to help manage and toward a world where information is
com) is a principal developer with Microsoft Technical
Computing and a visiting fellow at the University of
navigate the deluge produced and consumed in a struc- Newcastle upon Tyne, U.K.

tured and semantics-rich manner


of research data.
Evelyne Viegas (evelynev@microsoft.com) is a senior
program manager responsible for the Online Technologies
(more information about the work and and Web Cultures initiative at Microsoft Research in
research tools offered by Microsoft Re- Redmond, WA.
search for scientists can be found at Tony Hey (Tony.Hey@microsoft.com) is a corporate vice
http://research.microsoft.com/en-us/ president of the External Research Division of Microsoft
Research in Redmond, WA.
collaboration/about/). However, this
will not happen instantly. There is a lot Copyright held by author.

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 37


practice
DOI:10.1145/ 1610252.1610268

Article development led by


queue.acm.org

Do RFID passports make us vulnerable


to identity theft?
BY ALAN RAMOS, WEINA SCOTT, WILLIAM SCOTT, DOUG LLOYD,
KATHERINE O’LEARY, AND JIM WALDO

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

38 COMMUNICATION S O F TH E AC M | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2


checked, this individual used a small information, including not only basic An RFID-passport attack of this
antenna connected to a computer in information about your identity but nature is more plausible than other
his backpack to eavesdrop on the radio even a digitized photograph, had been methods, such as skimming the RFID
communication between the security stolen from you at a moment when you information. Although simple to do,
agent’s reader, which has the capac- thought your passport was safely in the skimming will not yield the informa-
ity to decrypt the highly sensitive and hands of a government official. You tion needed to enable identity theft be-
secured data on the passport, and the moved on without any clue as to how cause of preventive measures integrat-
RFID-enabled passport itself. deeply your privacy had been violated ed into the system. The first of these
If the attacker had tried to skim in an attack that you had no idea was measures is encryption. According to
the information off your passport by occurring. the U.S. Department of State: “When a
imitating a legitimate reader, the chip At that point, all the perpetrator reader attempts to scan the passport, it
would never have provided the person- needed to do was use the data to cre- engages in a challenge-response proto-
PHOTOGRA PH BY BRENT HA RD INGE

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

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 39


practice

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

40 C OM MUNICATIONS O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


practice

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.

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 41


practice

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

42 C OMMUNIC ATION S O F TH E ACM | D EC EM BE R 2009 | VO L . 5 2 | N O. 1 2


D OI:10.1145/ 1610252 . 1 6 1 0 2 6 9

Article development led by


queue.acm.org

DNS is many things to many people—


perhaps too many things to too many people.
BY PAUL VIXIE

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.

To underline our understanding of one can ask approximate questions and


what DNS is, we must differentiate it get approximate answers. Think of a
from what it is not. The Internet econ- printed telephone white pages directo-
omy rewards unlimited creativity in the ry here: users often find what they want
monetization of human action, and in the printed directory not by knowing
fairly often this takes the form of some exactly what the listing is but by start-
kind of intermediation. For DNS, mon- ing with a guess or a general idea. DNS
etized intermediation means lying. The has nothing like that: all questions and
innovators who bring us such mon- all answers are exact. But DNS has at
etized intermediation do not call what least two mechanisms that can be mis-
they sell lies, but in this case it walks used to support approximate matching
like a duck and quacks like one, too. at some considerable cost to everybody
Not all misuses of DNS take the form else, and a lot of that goes on.
of lying. Another frequently seen abuse
is to treat DNS as a directory system, Stupid DNS Tricks
which it is not. In a directory system The first widespread form of a DNS

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I CAT ION S O F T HE ACM 43


practice

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

44 COM MUNIC ATIONS O F TH E ACM | D EC EM BER 2009 | VO L. 5 2 | N O. 1 2


practice

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 45


practice

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

46 COMM UNICATION S O F THE AC M | D EC EM BE R 2009 | VO L . 5 2 | N O. 1 2


practice

answers to the same question based on term (COM.CNN.WWW). This would


requester identity and policy, and have allow partial name completion just
the signatures all be perfectly valid. as happens in graphical file system
DNSSEC will also complicate life for browsers. Absent a complete redesign,
sys admins and application develop-
ers. We (ISC—the BIND people) are do- DNSSEC will which won’t happen in our lifetime
because of the size and usefulness of
ing what we can to improve on that in complicate life for the installed base, all we can do is ask

CDN providers using


BIND 9.7, and there are plenty of other browser implementers to be smarter
service and technology providers in the and prepare for more DNS traffic on
space as well. The killer app for DNS-
SEC will be a Web browser and Web
Stupid DNS Tricks, our networks.

server that can authenticate to each but it won’t end Conclusion


other without using X.509 (volunteers
are hereby encouraged to get together
that war since it’s What DNS is not is a mapping service
or a mechanism for delivering policy-
and try to make that happen). still possible to sign based information. DNS was designed

Directory Services every policy-based to express facts, not policies. Because


it works so well and is ubiquitous,
Browser implementers including Mi- answer and keep however, it’s all too common for en-
crosoft and Mozilla have begun do-
ing DNS queries while collecting URIs all the answers trepreneurs to see it as a greenfield
opportunity. Those of us who work to
from their graphical front end in order
to do fancy “autocompletion.” This
and signatures implement, enhance, and deploy DNS
and to keep the global system of name
means that during the typing time of a available, and still servers operating will continue to find
URI such as http://www.cnn.com/, the
browser will have asked questions such
send different ways to keep the thing alive even with
all these innovators taking their little
as W, WW, WWW, WWW.C, WWW.CN, answers to the bites out of it.
WWW.CNN, and so on. It’s not quite
that bad, since the browsers have a
same question These are unhappy observations
and there is no solution within reach
precompiled idea of what the top-level based on requester because of the extraordinary size of the
domains are. They won’t actually ask
for WWW.C, for example, but they are identity and policy, installed base. The tasks where DNS
falls short, but that people neverthe-
now asking for WWW.CN, which is in
China, and WWW.CNN.CO, which is in
and have the less want it to be able to do, are in most
cases fundamental to the current de-
Colombia. signatures all be sign. What will play out now will be an
Although one simple-sounding so-
lution is for Microsoft and Firefox to
perfectly valid. information war in which innovators
who muscle in early enough and gain
buy some name-server hardware and enough market share will prevent oth-
network links for China and Colombia ers from doing likewise—DNS lies vs.
(and no doubt many other affected top- DNS security is only one example.
level domain operators), that won’t stop
the information leak or remove this stu-
pid and useless traffic from the rest of Related articles
the network. Since the truly best solu- on queue.acm.org
tion is, as usual, stop doing this stupid DNS Complexity
thing—and we all know that isn’t going Paul Vixie
http://queue.acm.org/detail.cfm?id=1242499
to happen—perhaps this behavior can
be made optional, and then we can just Improving Performance on the Internet
argue about what the default (opt-in Tom Leighton
vs. opt-out) should be. This is the first http://queue.acm.org/detail.cfm?id=1466449
time in the history of DNS that some-
one has used it prospectively, to find Paul Vixie is president of Internet Systems Consortium
(ISC), a nonprofit company that operates the DNS F
out if what has been typed is or isn’t a root name server and publishes the BIND software used
valid domain name, in order to support by 80% of the Internet for DNS publication. He is also
chairman of American Registry for Internet Numbers
something like autocompletion. As in (ARIN), a nonprofit company that allocates Internet
so many other novel uses of DNS, this number resources in the North American and Caribbean
regions. Previously, he was a founder and president of
is not what it was designed for. PAIX, the first neutral commercial Internet exchange;
Had DNS been designed with this in SVP/CTO of AboveNet; and founder of the first anti-spam
company (MAPS LLC) in 1996.
mind, one of the ways we would be able
to tell is that domain names would be
written from highest- to lowest-order © 2009 ACM 0001-0782/09/1200 $10.00

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N IC AT ION S O F T HE ACM 47


practice
DOI:10.1145/ 1610252.1610270 and have different power characteris-
Article development led by
tics. Using the same ISA on all cores
queue.acm.org means running the same binary on all
cores without the need to compile code
with a different compiler for each core
How do we develop software to make type. This stands in contrast to hetero-
the most of the promise that asymmetric geneous-ISA systems, such as IBM’s
multicore systems use a lot less energy? Cell or Intel’s Larrabee, where the cores
expose different ISAs, so the code must
be compiled separately for each core
BY ALEXANDRA FEDOROVA, JUAN CARLOS SAEZ,
type. Heterogeneous-ISA systems are
DANIEL SHELEPOV, AND MANUEL PRIETO
not the focus of this article.

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,

with Asymmetric on the other hand, are good for running


highly scalable parallel applications.
Because of performance/power

Multicore Systems trade-offs between complex and simple


cores, it turns out to be much more ef-
ficient to run a parallel application on
a large number of simple cores than
on a smaller number of complex cores
that consume the same power or fit
into the same area. In a similar vein,
complex and powerful cores are good
IN COMPUTING SYSTEMS, a CPU is usually one of the for running CPU-intensive applications
that effectively use those processors’
largest consumers of energy. For this reason reducing advanced microarchitectural features,
CPU power consumption has been a hot topic in such as out-of-order super-scalar pipe-
the past few years in both the academic community lines, advanced branch prediction fa-
cilities, and replicated functional units.
and the industry. In the quest to create more power- At the same time, simple and slow
efficient CPUs, several researchers proposed an cores deliver a better trade-off between
energy consumption and performance
asymmetric multicore architecture that promises to for memory-intensive applications that
save a significant amount of power while delivering spend a majority of their execution time
similar performance as conventional symmetric fetching data from off-chip memory
and stalling the processor.
multicore processors. A symmetric multicore processor
An asymmetric multicore processor (AMP) (SMP) includes the cores of only one
type: either the complex and power-
consists of cores that use the same instruction set ful ones, as in the Intel Xeon or AMD
architecture (ISA) but deliver different performance Opteron processors, or the simple and

48 COMM UNICATION S O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


lower-power ones, as in Sun’s Niagara. erature investigating the properties of on this asymmetric system in order to
So in terms of providing the optimal these systems has originated from ma- minimize performance losses associ-
performance/power, an SMP is ideally jor hardware players such as Intel1,7 and ated with running some cores at a lower
suited for some applications but not HP,5,6 indicating that within the indus- Hertz.
all. Having cores of different types in try there is interest in this architecture. Given the emergence of AMPs, how
a single processor enables optimizing Furthermore, existing SMP systems can can you best exploit them to maximize
performance per watt for a wider range be configured to be asymmetric if one power efficiency (performance per
of workloads. Having cores of different wants to reduce the amount of power watt)? Our goal is to shed light on some
types on an AMP enables us to employ consumed by the processor. For exam- of the challenges software developers
specialization (that is, we can use each ple, configuring some of the cores of an will likely face while trying to achieve
type of core for the type of computation SMP to run at a lower-than-maximum this, and to provide some practical ad-
where it delivers the best performance/ voltage and frequency (via the dynamic vice on how to maximize exploitation of
ILLUSTRATION BY A NDY GILMORE

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-

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 49


practice

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

ing the effect of sequential bottlenecks


1.50
and reducing effective serialization. Hill
and Marty demonstrated that for paral-
lel applications with sequential phases
1.25 AMPs can potentially offer performance
significantly better than SMPs, as long
as sequential phases constitute as little
1.00 as 5% of the code.4
ammp

applu
apsi
art
bzip
crafty
eon
equake
facerec
fma3d

gap
gcc
gzip
lucas
mcf
mesa
mgrid
parser
perlb…
sixtrack
swim
twolf
vortex
vpr
vupw…

Catering to microarchitectural diver-


sity of the workload. The relative benefit
that an application derives from run-
ning on a fast core rather than a slow

50 C OM MUNICATION S O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


practice

one depends on the microarchitectural For systemwide efficiency, it is


properties of the program.2,5,6,11 Some more profitable to run CPU-intensive
programs are very efficient at using the programs on fast cores and memory-
CPU pipeline: they have a high amount intensive programs on slow cores. This
of instruction-level parallelism, mean-
ing that a processor can issue many in- Having cores of is what catering to microarchitectural
diversity of the workload is all about.
structions in parallel without running
out of work. These programs show good
different types in Recent work from the University of Cali-

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 51


practice

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

runs at a speed of 2× for 10% of the time


and at a speed of 1× for 90% of the time),
and the workload-wide speedup will also
Completion time be 1.1×. Note that when computing the
reduced by 25% speedup for a parallel application we as-
sume that the speedup for the entire ap-
plication is close to the average speedup
Figure 3. Speedup achieved with a PA algorithm over the asymmetry-agnostic default of its threads rather than the aggregate
scheduler on an emulated AMP system. speedup—this assumption is reasonable
if threads of a parallel computation are
30%
working on a common task as opposed
to performing unrelated tasks requiring
25% no inter-thread communication.
Speedup over Default Scheduler

Under a PA policy, the single-thread-


20% ed application will run on the fast core
for the entire time, and the threads of
15% the parallel application will run on slow
cores. As a result, the single-threaded
10% application will speed up by a factor of
2×, and the parallel application will have
5%
no speedup (1×). The average speedup
for the two applications will be 1.5×, or
0%
40% better than under the naïve policy.
vips

RNA

wupwise

applu

swim

swaptions

TPC-C

FFTW

bodytrack

BLAST

As another example, consider a par-


allel application with 50% of its code
executing sequentially. An asymmetry-
unaware scheduler may fail to assign
the bottleneck sequential phase to run
Figure 4. Speedup achieved with a PA algorithm over the asymmetry-agnostic default
scheduler using the busy-wait and adaptive synchronization modes. on a fast core, but a PA scheduler would
make sure to accelerate it. Suppose the
fast core runs twice as fast as the slow
PA (busy-wait mode) PA (adaptive mode)
core: the PA scheduler would deliver up
Speedup over Default Scheduler

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

52 C OMM UNIC ATION S O F TH E AC M | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2


practice

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

thread count an operating system can


distinguish between parallel and se- –5%
quential phases in applications.
Unfortunately, in some situations –15%
using the runnable thread count for
detection of sequential phases might –25%
not work. In particular, an application
could be running nonscalable code
vips

RNA

wupwise

applu

swim

swaptions

TPC-C

FFTW

bodytrack

BLAST

while still using a large number of run-


nable threads. We describe two sce-
narios where this might happen and
discuss potential remedies.

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 53


practice

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

10% tions on two emulated AMP systems:


over Best Static

8% one is a migration-unfriendly system


6%
configured like the system in Figure 5a;
and another is the migration-friendly
4%
system configured like the system in
2% Figure 5b, except that each domain has
0% only three slow cores because of the
Workload 1 Workload 2 Workload 3 Workload 4 Workload 5 Workload 6 Workload 7 limitations of the experimental hard-
ware. Our PA scheduler is designed to
be topology-aware, meaning that it at-

54 COMM UNICATION S O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


practice

tempts to avoid cross-memory-domain proposed in the research community


migrations whenever possible. We mea- to address this challenge. The first ap-
sured the overhead by making the des- proach entails running each thread on
ignated fast cores on these two systems cores of different types, registering the
run at the same frequency as the slow
cores—so no performance gains were For systemwide speedup obtained on a fast core rela-
tive to a slow core and using the result-
to be expected from asymmetry-aware
scheduling, but the overhead was still
efficiency, it is ing relative speedup as the measure for

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-

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I CAT ION S O F T HE ACM 55


practice

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

56 COMM UNICATION S O F TH E AC M | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2


practice

the memory-intensive applications memory reuse profiles.13 This online References


on the slow cores. As Figure 8 shows, approach would not have the same 1. Annavaram, M., Grochowski, E., Shen, J. Mitigating
Amdahl’s law through EPI throttling. ISCA, 2005.
the signature-supported algorithm is performance overhead as the direct 2. Becchi, M., Crowley, P. Dynamic thread assignment
always able to match the best static measurement approach, because it on heterogeneous multiprocessor architectures. In
Proceedings of Computing Frontiers (2006).
assignment within a couple of per- would not require running each thread 3. Berg, E., Hagersten, E. StatCache: A probabilistic
centage points. In that figure we also on each core type; a profile is collected approach to efficient and accurate data locality
analysis. In Proceedings of the International
report the performance of the direct while the thread is running on a single Symposium on Performance Analysis of Systems and
measurement approach mentioned core and thus would not create the as- Software (2004).
4. Hill, M.D., Marty, M.R. Amdahl’s law in the multicore
earlier. It struggles to do as well as the sociated load imbalance. era. IEEE Computer 41, 7, (2008) 33–38.
signature-supported algorithm. Finally, there may be another prom- 5. Kumar, R., Farkas, K.I., Jouppi, N., et al.. Single-ISA
heterogeneous multicore architectures: the potential
Although the signature-supported ising approach for online estimation for processor power reduction. In Proceedings of the
scheduler performs rather well, using of relative speedup. Recall that our International Symposium on Microarchitecture (2003).
6. Kumar, R., et al. Single-ISA heterogeneous multicore
it in a real scheduler involves an impor- architectural signature method de- architectures for multithreaded workload performance.
In Proceedings of the International Symposium of
tant challenge: obtaining the memory termines relative speedup based on Computer Architecture (2004).
reuse profile needed for construction the estimated LLC miss rates. Instead 7. Li, T., Baumberger, D., Koufaty, D.A., Hahn, S. Efficient
operating system scheduling for performance-
of the architectural signature. We are of estimating these miss rates from asymmetric multicore architectures. In Proceedings of
aware of two methods of obtaining the memory reuse profiles, we could also the Conference on Supercomputing (2007).
8. Luk, C.-K., Cohn, R., Muth, R., Patil, H., Klauser, A.,
memory reuse profile: offline (used in measure the miss rates online using Lowney, G., Wallace, S., Reddi, V.J., Hazelwood, K.
our experiments) and online. hardware performance counters. Our Pin: building customized program analysis tools
with dynamic instrumentation. In Proceedings of
Using an offline method we can ob- preliminary results indicate this is a Programming Language Design and Implementation
tain a profile by running the applica- fruitful method for determining rela- (2005).
9. Saez, J.C., Shelepov, D., Fedorova, A., Prieto,
tion through a profiler that is capable tive speedup online. We believe this M. Leveraging workload diversity through OS
of monitoring and summarizing its method will be an effective way of es- scheduling to maximize performance on single-ISA
heterogeneous multicore systems. Submitted to
memory-access patterns (for x86 ex- timating the relative speedup dynami- Transactions on Parallel and Distributed Systems,
ecutables we used the Pin binary in- cally while avoiding the drawbacks of 2009.
10. Saez, J.C., Fedorova, A., Prieto, M., Vegas, H. Submitted
strumentation tool;8 this approach is the direct measurement technique to a conference for blind review. Details omitted to
described in more detail in our earlier preserve anonymity.
and the complexity associated with 11. Shelepov, D., Saez, J.C., Jeffery, S., Fedorova, A., Perez,
work11). The offline-generated profile generation of memory reuse profiles. N., Huang, Z.F., Blagodurov, S., Kumar, V. HASS: A
scheduler for heterogeneous multicore systems. ACM
must be somehow attached to the pro- Operating System Review, 43, 2 (2009), 66-75.
gram binary (for example, by embed- Conclusion 12. Suleman, M.A., Qureshi, M.K., Patt, Y.N. Feedback-
driven threading: power-efficient and high-performance
ding it into the binary itself). Further- Asymmetric multicore systems prom- execution of multithreaded workloads on CMPs.
more, it requires cooperation on the ise to deliver higher performance per SIGARCH CAM 36, 1 (2008): 277–286.
13. Tam, D. K., Azimi, R., Soares, L.B., Stumm, M.
part of the developer, who must be re- watt than conventional symmetric pro- RapidMRC: Approximating L2 miss rate curves on
sponsible for generating the memory cessors. To realize these benefits, how- commodity systems for online optimizations. In
Proceedings of Architectural Support for Programming
reuse profile for typical executions of ever, the workload must have sufficient Languages and Operating Systems (2009).
the program. diversity (in terms of either parallelism
The benefit of using offline-gen- or microarchitectural properties), and Alexandra Fedorova is an assistant professor of computer
erated profiles is that they require no the operating-system scheduler must science at Simon Fraser University, Vancouver, Canada,
where she co-founded the SYNAR (Systems, Networking
runtime overhead in the scheduling be designed to leverage this diversity and Architecture) research lab. Her research focuses on
algorithm associated with their gen- on asymmetric hardware. Our experi- multicore systems, with a particular emphasis on operating
system scheduling for improving the efficiency of multicore
eration. The drawback of offline pro- ence with designing asymmetry-aware systems.
files is that it may be difficult to gener- schedulers demonstrates that these al-
Juan Carlos Saez is a Ph.D. student in computer science
ate them accurately for multithreaded gorithms can be feasibly implemented at the Complutense University, Madrid. His recent research
programs, and it may be tricky to ac- on real systems and used to unleash focuses on operating-system scheduling on heterogeneous
multicore processors, exploring new techniques to deliver
count for different program phases. the potential of AMP systems without better performance per watt, and quality of service on
If a program changes its architectural these systems. His work is supported by the Spanish
significant overhead. government through an FPU fellowship grant.
properties according to the phase
Daniel Shelepov is a member of the Internet Explorer
that it executes, one needs to associ- team at Microsoft, Redmond, WA.
ate multiple profiles with a single pro-
Manuel Prieto-Matias is an associate professor in the
gram. Furthermore, if the behavior of department of computer architecture at Complutense
Related articles
the program changes depending on on queue.acm.org
University, Madrid. His current research addresses
emerging issues related to chip multiprocessors, with a
the input, profiles obtained offline special emphasis on the interaction between the system
Powering Down
may turn out to be inaccurate. Matthew Garrett
software and the underlying architecture.
The other method involves gener- http://queue.acm.org/detail.cfm?id=1331293 This research was supported by the National Science
ating a memory reuse profile online. and Engineering Research Council of Canada through
The Price of Performance a Strategic Project Grant STPSC 356815-07, Sun
Although we have not experimented Luis André Barroso Microsystems, and the Spanish government through
with the online approach ourselves, a http://queue.acm.org/detail.cfm?id=1095420 Research Contract CICYT-TIN 2008/508 and Consolider
Ingenio2010 2007/2011.
group from the University of Toronto Modern System Power Management
has recently proposed an efficient on- Andrew Grover
line method for generating accurate http://queue.acm.org/detail.cfm?id=957774 © 2009 ACM 0001-0782/09/1200 $10.00

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I C AT ION S O F T HE ACM 57


contributed articles
DOI:10.1145/ 1610252.1610271
In the past, architectures were de-
Easing the programmer’s burden does not signed primarily for performance or
for energy efficiency. Looking ahead,
compromise system performance or increase one of the top priorities must be for
the complexity of hardware implementation. the architecture to enable a program-
mable environment. In practice, pro-
BY JOSEP TORRELLAS, LUIS CEZE, JAMES TUCK, grammability is a notoriously difficult
CALIN CASCAVAL, PABLO MONTESINOS, WONSUN AHN, metric to define and measure. At the
AND MILOS PRVULOVIC hardware-architecture level, program-
mability implies two things: First, the
architecture is able to attain high ef-

The Bulk Multicore


ficiency while relieving the program-
mer from having to manage low-level
tasks; second, the architecture helps

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

58 COM MUNICATION S OF TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


maintain hardware cache coherence. design complexity by freeing proces- ment, memory-system accesses take
The programmability advantages of sor designers from having to worry many cycles, and multiple loads and
the Bulk Multicore do not come at the about many corner cases that appear stores from both the same and dif-
expense of performance. On the con- when designing multiprocessors. ferent processors overlap their execu-
trary, the Bulk Multicore enables high tion.
performance because the processor Architecture In the Bulk Multicore, the default
hardware is free to aggressively reor- The Bulk Multicore architecture elim- execution mode of a processor is to
der and overlap the memory accesses inates one of the traditional tenets of commit chunks of instructions at a
of a program within chunks without processor architecture, namely the time.2 A chunk is a group of dynami-
risk of breaking their expected behav- need to commit instructions in order, cally contiguous instructions (such as
ior in a multiprocessor environment. providing the architectural state of the 2,000 instructions). Such a “chunked”
Moreover, in an advanced Bulk Mul- processor after every single instruc- mode of execution and commit is a
ILLUSTRATION BY A NDY GILMORE

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I C AT ION S O F T HE ACM 59


contributed articles

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

Signatures and Signature the sidebar.


Atomic chunk execution is sup-

Operations in Hardware ported by buffering the state gener-


ated by the chunk in the L1 cache.
Figure 1 in the main text shows a simple implementation of a signature. The bits of an No update is propagated outside the
incoming address go through a fixed permutation to reduce collisions and are then cache while the chunk is executing.
separated in bit-fields Ci. Each field is decoded and accumulated into a bit-field Vj in the When the chunk completes or when a
signature. Much more sophisticated implementations are also possible.
A module called the Bulk Disambiguation Module contains several signature dirty cache line with address in the W
registers and simple functional units that operate efficiently on signatures. These signature must be displaced from the
functional units are invisible to the instruction-set architecture. Note that, given a cache, the hardware proceeds to com-
signature, we can recover only a superset of the addresses originally encoded into the mit the chunk. A successful commit
signature. Consequently, the operations on signatures produce conservative results.
The figure here outlines five signature functional units: intersection, union, test involves sending the chunk’s W sig-
for null signature, test for address membership, and decoding (δ). Intersection finds nature to the subset of sharer proces-
the addresses common to two signatures by performing a bit-wise AND of the two sors indicated by the directory2 and
signatures. The resulting signature is empty if, as shown in the figure, any of its bit-
fields contains all zeros. Union finds all addresses present in at least one signature
clearing the local R and W signatures.
through a bit-wise OR of the two signatures. Testing whether an address a is present The latter operation erases any record
(conservatively) in a signature involves encoding a into a signature, intersecting the of the updates made by the chunk,
latter with the original signature and then testing the result for a null signature. though the written lines remain dirty
Decoding (δ) a signature determines which cache sets can contain addresses
belonging to the signature. The set bitmask produced by this operation is then passed in the cache.
to a finite-state machine that successively reads individual lines from the sets in the The W signature carries enough
bitmask and checks for membership to the signature. This process is used to identify information to both invalidate stale
and invalidate all the addresses in a signature that are present in the cache.
Overall, the support described here enables low-overhead operations on sets of
lines from the other coherent caches
addresses.3 (using the δ signature operation on W,
as discussed in the sidebar) and en-
force that all other processors execute
Operations on signatures.
their chunks in isolation. Specifically,
to enforce that a processor executes a
 
chunk in isolation when the processor
receives an incoming signature Winc,
 its hardware intersects Winc against
 the local Rloc and Wloc signatures. If any
of the two intersections is not null, it
  means (conservatively) that the local
ˆ 
 !" chunk has accessed a data element

written by the committing chunk.
  

 Consequently, the local chunk is
 squashed and then restarted.


! Figure 2 outlines atomic and iso-


 ! 
# lated execution. Thread 0 executes
 a chunk that writes variables B and
‰  #
   C, and no invalidations are sent out.
Signature W0 receives the hashed ad-
dresses of B and C. At the same time,
Thread 1 issues reads for B and C,
which (by construction) load the non-

60 COM MUNIC ATION S O F TH E ACM | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2


contributed articles

speculative values of the variables— Figure 1. A simple way to generate a signature.


namely, the values before Thread 0’s
updates. When Thread 0’s chunk com-
  
mits, the hardware sends signature W0
to Thread 1, and W0 and R0 are cleared.
At the processor where Thread 1 runs,
 
the hardware intersects W0 with the
ongoing chunk’s R1 and W1. Since W0
∩ R1 is not null, the chunk in Thread 1
   
is squashed.
The commit of chunks is serial-
...
ized globally. In a bus-based machine,
serialization is given by the order in
which W signatures are placed on the
bus. With a general interconnect, seri-
     

alization is enforced by a (potentially
distributed) arbiter module.2 W sig-
natures are sent to the arbiter, which
quickly acknowledges whether the
chunk can be considered committed.
Since chunks execute atomically Figure 2. Executing chunks atomically and in isolation with signatures.
and in isolation, commit in program
order in each processor, and there is    
a global commit order of chunks, the
Bulk Multicore supports sequential
consistency (SC)9 at the chunk level.
As a consequence, the machine also ld X

 BC st B   ld B
supports SC at the instruction level.  XY st C st T
 T
More important, it supports high- ld Y ld C  BC


performance SC at low hardware com-
plexity. 
ˆ ›
ˆ

The performance of this SC imple-
mentation is high because (within
a chunk) the Bulk Multicore allows
memory access reordering and over-
lap and instruction optimization. As coherence event. Consequently, load or runtime system. However, it does
we discuss later, synchronization in- queues, L1 caches, and other critical enable a highly programmable envi-
structions induce no reordering con- processor components must be aug- ronment by virtue of providing two
straint within a chunk. mented with extra hardware. features: high-performance SC at the
Meanwhile, hardware-implementa- In the Bulk Multicore, SC enforce- hardware level and several novel hard-
tion complexity is low because memo- ment and violation detection are per- ware primitives that can be used to
ry-consistency enforcement is largely formed with simple signature inter- build a sophisticated program-devel-
decoupled from processor structures. sections outside the processor core. opment-and-debugging environment.
In a conventional processor that is- Additionally, caches are oblivious to Unlike current architectures, the
sues memory accesses out of order, what data is speculative, and their tag Bulk Multicore supports high-per-
supporting SC requires intrusive pro- and data arrays are unmodified. formance SC at the hardware level.
cessor modifications. For example, Finally, note that the Bulk Mul- If we generate code for the Bulk Mul-
from the time the processor executes ticore’s execution mode is not like ticore using an SC compiler (such as
a load to line L out of order until the transactional memory.6 While one the BulkCompiler1), we attain a high-
load reaches its commit time, the could intuitively view the Bulk Multi- performance, fully SC platform. The
hardware must check for writes to L core as an environment with transac- resulting platform is highly program-
by other processors—in case an in- tions occurring all the time, the key mable for several reasons. The first is
consistent state was observed. Such difference is that chunks are dynamic that debugging concurrent programs
checking typically requires sending, entities, rather than static, and invis- with data races would be much easier.
for each external coherence event, a ible to the software. This is because the possible outcomes
signal up the cache hierarchy. The sig- of the memory accesses involved in
nal snoops the load queue to check for High Programmability the bug would be easier to reason
an address match. Additional modifi- Since chunked execution is invisible about, and the debugger would in
cations involve preventing cache dis- to the software, it places no restriction fact be able to reproduce the buggy
placements that could risk missing a on programming model, language, interleaving. Second, most existing

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 61


contributed articles

software correctness tools (such as order of data dependences observed


Microsoft’s CHESS14) assume SC. Veri- among the multiple threads. The log
fying software correctness under SC is effectively captures the “interleaving”
already difficult, and the state space of the program’s threads. Then, in the
balloons if non-SC interleavings need
to be verified as well. In the next few The Bulk Multicore replay step, while the parallel program
is re-executed, the system enforces
years, we expect that correctness-veri-
fication tools will play a larger role as
supports the interleaving orders encoded in the
log.
more parallel software is developed. high-performance In most proposals of determinis-
Using them in combination with an
SC platform would make them most
sequential memory tic replay schemes, the log stores in-
dividual data dependences between
effective. consistency at threads or groups of dependences
A final reason for the program-
mability of an SC platform is that it
low hardware bundled together. In the Bulk Multi-
core, the log must store only the total
would make the memory model of complexity. order of chunk commits, an approach
safe languages (such as Java) easier we call DeLorean.13 The logged infor-
to understand and verify. The need to mation can be as minimalist as a list
provide safety guarantees and enable of committing-processor IDs, assum-
performance at the same time has re- ing the chunking is performed in a
sulted in an increasingly complex and deterministic manner; therefore, the
unintuitive memory model over the chunk sizes can be deterministically
years. A high-performance SC memo- reproduced on replay. This design,
ry model would trivially ensure Java’s which we call OrderOnly, reduces the
safety properties related to memory log size by nearly an order of magni-
ordering, improving its security and tude over previous proposals.
usability. The Bulk Multicore can further re-
The Bulk Multicore’s second fea- duce the log size if, during the record-
ture is a set of hardware primitives ing step, the arbiter enforces a certain
that can be used to engineer a sophis- order of chunk commit interleaving
ticated program-development-and- among the different threads (such as
debugging environment that is always by committing one chunk from each
“on,” even during production runs. processor round robin). In this case
The key insight is that chunks and of enforced chunk-commit order, the
signatures free development and de- log practically disappears. During the
bugging tools from having to record replay step, the arbiter reinforces the
or be concerned with individual loads original commit algorithm, forcing
and stores. As a result, the amount of the same order of chunk commits as
bookkeeping and state required by in the recording step. This design,
the tools is substantially reduced, as which we call PicoLog, typically incurs
is the time overhead. Here, we give a performance cost because it can
three examples of this benefit in the force some processors to wait during
areas of deterministic replay of paral- recording.
lel programs, data-race detection, and Figure 3a outlines a parallel execu-
high-speed disambiguation of sets of tion in which the boxes are chunks
addresses. and the arrows are the observed cross-
Note, too, that chunks provide an thread data dependences. Figure 3b
excellent primitive for supporting shows a possible resulting execution
popular atomic-section-based tech- log in OrderOnly, while Figure 3c
niques for programmability (such as shows the log in PicoLog.
thread-level speculation17 and trans- Data-race detection at production-
actional memory6). run speed. The Bulk Multicore can
Deterministic replay of parallel pro- support an efficient data-race detec-
grams with practically no log. Hard- tor based on the “happens-before”
ware-assisted deterministic replay method10 if it cuts the chunks at syn-
of parallel programs is a promising chronization points, rather than at
technique for debugging parallel arbitrary dynamic points. Synchroni-
programs. It involves a two-step pro- zation points are easily recognized by
cess.20 In the recording step, while hardware or software, since synchro-
the parallel program executes, spe- nization operations are executed by
cial hardware records into a log the special instructions. This approach

62 COMMUNICATION S O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


contributed articles

is described in ReEnact16; Figure 4 in-


cludes examples with a lock, flag, and
barrier.
Each chunk is given a counter
Making Signatures
value called ChunkID following the
happens-before ordering. Specifi-
Visible to Software
cally, chunks in a given thread receive We propose that the software interact with some additional signatures through three
main primitives:18
ChunkIDs that increase in program The first is to explicitly encode into a signature either one address (Figure 1a) or all
order. Moreover, a synchroniza- addresses accessed in a code region (Figure 1b). The latter is enabled by the bcollect
tion between two threads orders the (begin collect) and ecollect (end collect) instructions, which can be set to collect only
reads, only writes, or both.
ChunkIDs of the chunks involved in
The second primitive is to disambiguate the addresses accessed by the processor
the synchronization. For example, in in a code region against a given signature. It is enabled by the bdisamb.loc (begin
Figure 4a, the chunk in Thread 2 fol- disambiguate local) and edisamb.loc (end disambiguate local) instructions (Figure 1c),
lowing the lock acquire (Chunk 5) and can disambiguate reads, writes, or both.
The third primitive is to disambiguate the addresses of incoming coherence
sets its ChunkID to be a successor of messages (invalidations or downgrades) against a given local signature. It is enabled
both the previous chunk in Thread 2 by the bdisamb.rem (begin disambiguate remote) and edisamb.rem (end disambiguate
(Chunk 4) and the chunk in Thread 1 remote) instructions (Figure 1d) and can disambiguate reads, writes, or both. When
that released the lock (Chunk 2). For disambiguation finds a match, the system can deliver an interrupt or set a bit.
Figure 2 includes three examples of what can be done with these primitives: Figure
the other synchronization primitives, 2a shows how the machine inexpensively supports many watchpoints. The processor
the algorithm is similar. For exam- encodes into signature Sig2 the address of variable y and all the addresses accessed in
ple, for the barrier in Figure 4c, each function foo(). It then watches all these addresses by executing bdisamb.loc on Sig2.
Figure 2b shows how a second call to a function that reads and writes memory in
chunk immediately following the bar- its body can be skipped. In the figure, the code calls function foo() twice with the same
rier is given a ChunkID that makes it a input value of x. To see if the second call can be skipped, the program first collects
successor of all the chunks leading to all addresses accessed by foo() in Sig2. It then disambiguates all subsequent accesses
the barrier. against Sig2. When execution reaches the second call to foo(), it can skip the call if two
conditions hold: the first is that the disambiguation did not find a conflict; the second
Using ChunkIDs, we’ve given a (not shown in the figure) is that the read and write footprints of the first foo() call do not
partial ordering to the chunks. For overlap. This possible overlap is checked by separately collecting the addresses read
example, in Figure 4a, Chunks 1 and in foo() and those written in foo() in separate signatures and intersecting the resulting
signatures.
6 are ordered, but Chunks 3 and 4 are
Finally, Figure 2c shows a way to detect data dependences between threads running
not. Such ordering helps detect data on different processors. In the figure, collect encodes all addresses accessed in a
races that occur in a particular execu- code section into Sig2. Surrounding the collect instructions, the code places disamb.
tion. Specifically, when two chunks rem instructions to monitor if any remotely initiated coherence-action conflicts with
addresses accessed locally. To disregard read-read conflicts, the programmer can
from different threads are found to collect the reads in a separate signature and perform remote disambiguation of only
have a data-dependence at runtime, writes against that signature.
their two ChunkIDs are compared. If
the ChunkIDs are ordered, this is not Figure 1. Primitives enabling software to interact with additional signatures:
collection (a and b), local disambiguation (c), and remote disambiguation (d).
a data race because there is an inter-
vening synchronization between the
chunks. Otherwise, a data race has
 
 
 
 
 
been found.   
A simple way to determine when   
two chunks have a data-dependence        
   
 
is to use the Bulk Multicore signa-    
tures to tell when the data footprints
of two chunks overlap. This opera-
tion, together with the comparison Figure 2. Using signatures to support data watchpoints (a), skip execution of
functions (b), and detect data dependencies between threads running on
and maintenance of ChunkIDs, can
different processors (c).
be done with low overhead with hard-
ware support. Consequently, the Bulk
  
Multicore can detect data races with-

out significantly slowing the program,    
making it ideal for debugging produc-    
 
   
   
  
tion runs.  
    
Enhancing programmability by mak-  
     
   
ing signatures visible to software. Final-  

      
ly, a technique that improves program-      
mability further is to make additional    
  
signatures visible to the software. This   
support enables inexpensive monitor-
ing of memory accesses, as well as

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S OF T HE ACM 63


contributed articles

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- 
 

tages in performance and in hardware 


simplicity. It delivers high perfor- 
 
 
mance because the processor hard- 
ware can reorder and overlap all mem-     

ory accesses within a chunk—except,
of course, those that participate in 


  
    
single-thread dependences. In partic-
ular, in the Bulk Multicore, synchroni-
zation instructions do not constrain
memory access reordering or overlap. Figure 4. Forming chunks for data-race detection in the presence
of a lock (a), flag (b), and barrier (c).
Indeed, fences inside a chunk are
transformed into null instructions.
Fences’ traditional functionality of 
 
 
 
 
 

delaying execution until certain ref-
 
erences are performed is useless; by
construction, no other processor ob-

  
serves the actual order of instruction 
     
execution within a chunk. 
Moreover, a processor can concur-
rently execute multiple chunks from          
the same thread, and memory access- 

es from these chunks can also overlap.
Each concurrently executing chunk       
in the processor has its own R and W 
signatures, and individual accesses
update the corresponding chunk’s
signatures. As long as chunks within 

     
a processor commit in program order
(if a chunk is squashed, its succes-
sors are also squashed), correctness is
guaranteed. Such concurrent chunk which cores and accelerators are de- and undo and detection of cross-
execution in a processor hides the signed without concern for how to sat- thread conflicts. However, they also
chunk-commit overhead. isfy a particular set of access-ordering have a different goal, namely simplify
Bulk Multicore performance in- constraints. This ability allows hard- code parallelization by parallelizing
creases further if the compiler gener- ware designers to focus on the novel the code transparently to the user
ates the chunks, as in the BulkCom- aspects of their design, rather than software in TLS or by annotating the
piler.1 In this case, the compiler can on the interaction with the target ma- user code with constructs for mutual
aggressively optimize the code within chine’s legacy memory-consistency exclusion in TM. On the other hand,
each chunk, recognizing that no other model. It also motivates the develop- the Bulk Multicore aims to provide a
processor sees intermediate states ment of commodity accelerators. broadly usable architectural platform
within a chunk. that is easier to program for while de-
Finally, the Bulk Multicore needs Related Work livering advantages in performance
simpler processor hardware than cur- Numerous proposals for multipro- and hardware simplicity.
rent machines. As discussed earlier, cessor architecture designs focus on Two architecture proposals in-
much of the responsibility for mem- improving programmability. In par- volve processors continuously execut-
ory-consistency enforcement is taken ticular, architectures for thread-level ing blocks of instructions atomically
away from critical structures in the speculation (TLS)17 and transactional and in isolation. One of them, called
core (such as the load queue and L1 memory (TM)6 have received signifi- Transactional Memory Coherence and
cache) and moved to the cache hierar- cant attention over the past 15 years. Consistency (TCC),5 is a TM environ-
chy where signatures detect violations These techniques share key primitive ment with transactions occurring all
of SC.2 For example, this property mechanisms with the Bulk Multicore, the time. TCC mainly differs from the
could enable a new environment in notably speculative state buffering Bulk Multicore in that its transactions

64 COMM UNICATION S O F THE AC M | D EC EM BE R 2009 | VO L . 5 2 | N O. 1 2


contributed articles

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 65


contributed articles
DOI:10.1145/ 1610252.1610272
The last quarter of the 20th cen-
University CS departments are incorporating tury saw the U.S. economy transition
from the industrial age to the infor-
game design and development to prepare their mation age, a move characterized
students for the game industry’s expectations. by major changes in profession, as
many people chose to be knowledge
BY MICHAEL ZYDA workers, rather than manual labor-
ers. Computer science was the driving

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.

66 C OM MUNICATION S O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


contributed articles

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

Components of a networked game.

Real-Time Collision Other Time and Event App. Layer Inter-


AI Interface Latency Bandwidth
Rendering Detection Computation Ordering Protocol operability

Game Engine
Data Network
Components

Networked Game Some crossover

Control and
Processing
Communication
Systems
Devices

Game Shared State Multi- Failure


Keyboard Headset Hybrid EEG Scalability Heterogeneity
Controller Management Threaded Management

68 COM MUNICATION S O F TH E AC M | D EC EM BE R 2009 | VO L . 5 2 | N O. 1 2


contributed articles

my own private communications with must provide the necessary experi-


directors of human resources in major ence so game programmers are in-
game-development companies. Many dustry-ready on graduation day. This
universities switched to Java with the means that graduates must have built
Internet boom, as it is easy to resource
a programming laboratory for Java, Programming a significant game by collaborating
with other students, not all of whom
and Java support for the user interface interns/job seekers have backgrounds in computer sci-

from our program


is extensive. But the game industry ence. Grads should also be familiar
programs mainly in C++. Many game with the pipeline-development pro-
companies say they will not interview
or hire someone whose first program-
Spring 2009 (35 cess and asset-management systems,
both aspects of game-industry devel-
ming language is Java. Computer interviewed in the opment potentially useful throughout
scientists might argue about the vir-
tues of programming languages, but
game industry) the program. Such experience is very
different from traditional computer
most console and PC games are built found no companies science-degree programs in which
in C++. From a C++ perspective, our
students can teach themselves other administering software-development teams are
small, and there is no strong require-
useful languages, learning Objective- programming tests ment for asset management or source-
C for iPhone game development or
C# for games with XNA in a single se- in Java. code base sharing or versioning.

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I C AT ION S O F T HE ACM 69


contributed articles

three of the first four programming No foreign languages. General edu-


courses to be in C++ and created game- cation requirements for the bach-
oriented examples and exercises. The elor’s degree in computer science
game focus helps motivate students, (games) are approximately the same
getting them excited about program-
ming. For Fall 2008, results showed We felt that parallel as for USC’s regular computer sci-
ence degree. The degree lacks a four-
a 28% increase in the number of stu- programming was course foreign-language requirement
as in all other USC College degrees,
highly relevant to
dents with letter grade A in the games-
oriented CS-101 Introduction to the an accident of planning rather than a
Fundamentals of Programming and
for Spring 2009 a 49% increase (http://
the multithreaded recommendation.
When we began planning the de-
gamepipe.usc.edu/~zyda/GamePipe/ nature of modern gree, the dean of engineering said,
Ghyam-Final-MS-Study-2009.pdf). Fur-
ther analysis of the results is under-
game development “I don’t want a weak degree.” So we
made these changes to the computer
way to determine whether they reflect and multicore science component of the program
superior skills, superior understand-
ing of programming, superior motiva- processors. and are confident we offer an aca-
demically strong and industry-viable
tion, or some other cause; undergraduate degree.
Replaced EE with CS. We replaced For the games-side of the bach-
four electrical-engineering courses elor’s degree, we replaced 42 units of
on circuit design with computer-sci- electives from the general computer
ence-focused EE-352 Computer Orga- science degree with a full course in
nization & Architecture and parallel- game development. Hence, the degree
programming-focused EE-452 Game looks more like a double major than a
Hardware Architecture. The removed specialization. We also have a set of
courses represent an older style of courses on game engineering, game
computer-science-degree program. design, and game cross-disciplinary.
We felt it more important that stu- Game engineering covers video-
dents learn how computer architec- game programming, parallel pro-
tures affect programming rather than gramming on consoles and graphics
how to make such architectures. We processing units, and programming
also felt that parallel programming game engines, all of which are
was highly relevant to both the multi- straightforward software-develop-
threaded nature of modern game de- ment courses and all important for
velopment and multicore processors; game development.
Added EE. We added EE-450 Intro- For game design, we send our
duction to Computer Networks as a students to a three-course Game De-
degree requirement. Networking is sign Workshop sequence in the USC
offered as an elective in the regular School of Cinematic Arts Interactive
computer science curriculum. Be- Media Program. Engineers are im-
cause games need networking, all our mersed in gameplay design as taught
students take it; by master game designers. The first
Cut compiler courses. We eliminated course in the sequence—CTIN-488
the two compiler courses taken by reg- Game Design Workshop—teaches
ular computer science students. ACM students how to prototype gameplay
eliminated compilers as a require- using cardboard and hand-drawn art;
ment from the CS core in 1979. The they basically build board games. We
USC Computer Science Department get an interesting response from the
uses the two courses as large program- engineers we send there. Some rave
ming-project capstone courses, so we about it, saying it’s the best thing
felt we would rather have our students they’ve ever taken. Some hate it, feel-
build games. The replacement for the ing frustrated they cannot immedi-
games curriculum is the two-semes- ately code-up a game. Some hate the
ter CS-491A/B Final Game Projects first few weeks but in the end come
course. An interesting result is that back and say it was a great course.
the Computer Science Department Ultimately, the students who under-
is weighing whether to allow general stand the importance of the course
computer science students to take the and express satisfaction end up with
Final Game Projects course instead of great internships/jobs in the game
the compiler sequence; and industry. It’s where we see the future

70 C OM MUNICATION S O F TH E ACM | D EC EM BER 2009 | VO L. 5 2 | N O. 1 2


contributed articles

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.

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S OF T HE ACM 71


contributed articles

ulty to speak at conferences and pub-


lish in traditional venues, and other
universities desiring to copy USC’s
success. In Fall 2008, the director of
the USC GamePipe Laboratory was ap-
pointed an ACM Distinguished Speak-
er (http://www.dsp.acm.org/) in recog-
nition of the program’s achievement.
Hiring managers and developers in
the games industry now regard us as
one of the “best games programs,”
though we are only in our fourth year
of operation. Moreover, traditional
USC computer science faculty not cur-
rently involved in the games program
have begun to ask how they can partic-
ipate, some have changed their course
projects to be game-related, and many
ask how we can draft proposals to-
gether. The computer science faculty
realizes that something important is
Industry wants programmers comfortable in cross-disciplinary teams. happening, with some beginning to
also guide their own programs toward
Effect on the USC CS Department tion of a creative-design component the conceptual age.
How has the game-degree program and making it student-driven and stu-
affected USC’s Computer Science De- dent-dependent is key to this success. References
1. Barnes, T., Powell, E., Chaffin, A., and Lipford, H.
partment, nudging it along toward the Students take ownership of their edu- Game2Learn: improving the motivation of CS1
conceptual age? First, I must say we cational program and aspire to make students. ACM Game Development in Computer
Science Education (Miami, FL, Feb. 26–Mar. 3, 2008).
have not dismantled the traditional everything they do shine. 1–5.
bachelor’s program in computer sci- Another component worth men- 2. Brooks, Jr., F.P. The computer scientist as toolsmith
II. Commun. ACM 39, 3 (Mar. 1996), 61–68.
ence, and students continue to enroll tioning is the commitment of the pro- 3. Horswill, I. and Novak, M. Evolving the artist-
in it. Computer science and games gram’s faculty and instructors. The technologist. IEEE Computer 39, 6 (June 2006),
62–69.
students share almost the same core students are in small classes where 4. McGill, M.M. Defining the expectation gap: A
computer science curriculum. they have much say in direction and comparison of industry needs and existing game
development curricula. ACM Foundations of Digital
Enrollment concerns were part of result. The faculty is available to pro- Games (Orlando, FL, 2009), 129–136.
our original motivation with respect vide technical guidance, mentorship, 5. Parberry, I., Roden, T., and Kazemzadeh, M.B.
Experience with an industry-driven capstone course on
to the games program, though they motivation, and support. It is physi- game programming. ACM SIG on Computer Science
Education (Houston, TX, 2005), 91–95.
have eased, as they have for many cally draining if done properly, but if 6. Phelps, A., Egert, C., and Bierre, K. Games first
departments, according to the Com- the students recognize their passion pedagogy: Using games and virtual worlds to
enhance programming education. Journal of Game
puting Research Association’ annual for games, they cannot help but be Development 1, 4 (May 2006), 45–64.
Taulbee Survey (http://www.cra.org/ passionate game developers as well. 7. Pink, D.H. A Whole New Mind: Moving from the
Information Age to the Conceptual Age. Riverhead
statistics/). For the Fall 2009 semes- Faculty working directly with our pro- Books, New York, 2005.
ter, 29% of the students in the USC gram are the executive producers of 8. Thibodeau, P. Computer science graduating class of
2007 smallest this decade. Computerworld Online
bachelor’s in computer science pro- some 12 to 14 games per semester. (Mar. 5, 2008); http://www.computerworld.com/
gram are in the games program, rep- The results of these efforts are visible action/article.do?command=viewArticleBasic&article
Id=9066659.
resenting an important influence on on the USC GamePipe Web site (http:// 9. Whitehead, J. Introduction to game design in the large
the department. gamepipe.usc.edu). classroom. ACM Game Development in Computer
Science Education (Miami, FL, 2008), 61–65.
While we have not measured it, We have also been able to create 10. Wolz, U. and Pulimood, S.M. An integrated approach to
project management through classic CS III and video
PHOTOGRA PH BY M ICHA EL ZYDA/USC GA MEPIPE L A BORATORY

probably the greatest effect we see is a line of research funding based on


game development. ACM SIG on Computer Science
an apparent “joy of computing” feel- and around games.11 It is more than Education (Covington, KY, 2007), 322–326.
ing by our students who come to class difficult to build an R&D program on 11. Zyda, M., Spraragen, M., and Ranganathan, B. Testing
behavioral models with an online game. IEEE
highly motivated, pour their best games without a pipeline of students Computer 42, 4 (Apr. 2009), 103–105.
12. Zyda, M., Lacour, V., and Swain, C. Operating a
ideas into their projects, and produce learning to build them. Today, we have computer science game degree program. ACM Game
spectacularly creative results, some both. The games program has addi- Development in Computer Science Education (Miami,
FL, 2008), 71–75.
of which the game industry wants to tionally strengthened the reputation
commercialize. The graduating stu- of USC’s Computer Science Depart-
Michael Zyda (zyda@usc.edu) is the director of the USC
dents who move into positions in the ment in terms of increased R&D fund- GamePipe Laboratory and a professor of engineering
game industry return to subsequent ing, improved hiring rates for gradu- practice in the Department of Computer Science at the
University of Southern California, Los Angeles, CA.
Demo Days, bring their bosses, and ates, attention to the games program
hire more of our graduates. The addi- in the press, invitations to games fac- © 2009 ACM 0001-0782/09/1200 $10.00

72 C OMM UNIC ATION S OF TH E ACM | D ECEM BE R 2009 | VO L. 5 2 | N O. 1 2



, ( ( (   7 + : 2 5 / '  & 2 1 * 5 ( 6 6 
2 1  6 ( 59 , & ( 6  6 ( 59 , & ( 6        
-XO\      0 L DPL  )OR ULG D 86 $ KW W S  ZZZ VH UY LFH VFR QJ UHV VR UJ  
)XQGUDLVHU7LWOH
0RGHUQL]DWLRQRIDOOYHUWLFDOVHUYLFHVLQGXVWULHVLQFOXGLQJILQDQFHJRY
HUQPHQWPHGLDFRPPXQLFDWLRQKHDOWKFDUHLQVXUDQFHHQHUJ\DQG

,(((WK,QWHUQDWLRQDO&RQIHUHQFHRQ6HUYLFHV&RPSXWLQJ 6&& 
,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         

&R Q WD FW /L DQJ -L H =K DQJ /- D W 


] KDQJ OM# LH H H RUJ 
6 WH HU LQJ &RPP L W WH H &KDLU 
review articles
DOI:10.1145/ 1610252.1610273
the push for presenting abstract CS
Integrating computer games into existing CS concepts in the context of familiar real-
world applications.
courses may help attract students to the field, Relating abstract principles to real-
but there are guidelines to be considered. world experience has become increas-
ingly prominent in mathematics and
BY KELVIN SUNG general science education. For exam-
ple, the Calculus Reform movement of

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).

74 COMM UNICATION S O F TH E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


are suitable for teaching CS subjects
including many noncomputer games
or games that are based on dedicated
devices (for example, Lego robots). Our
focus is on interactive graphical com-
puter games. It is important to recog-
nize that in the CS education arena the
term “computer game” is often used to
refer to the attempts at, and the results
of, effective and meaningful integra-
tion of animated graphical visualization
and various degrees of interactivity. Be-
cause of the unknown entertainment
value, strictly speaking, much of these
are interesting and innovative teaching
materials and are not computer games
in a commercial sense.
As discussed in Sung et al.,33 when
examining recent efforts in integrating
computer games into CS classes, we
observe three general categories.
1. Game development classes. These
are entire curricula,7,40 individual
classes,4,6,14,31,39 or capstone projects2,29
designed specifically to develop new
games as an end product. The educa-
tion committee of the main profession-
al organization for the games industry,
The International Game Developer As-
sociation (IGDA), has proposed a com-
prehensive curriculum framework
conveying the industry’s articulated
desires for well-trained college gradu-
ates seeking jobs in the game industry.
When evaluated against the IGDA cur-
riculum framework, we see that these
classes cover all the major core topic
areas. Students in these classes must
be concerned with all aspects of pro-
ducing a real game including enter-
tainment value, visual quality, audio
effects, physics simulations, and real-
VISUA LIZATION OF A DECODED NINT ENDO GAM E BY BEN F RY (H T TP://BE NFRY.COM /M A RIO SO UP)

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-

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I C AT ION S O F T HE ACM 75


review articles

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

76 COMM UNICATION S O F TH E ACM | D ECEM BE R 2009 | VO L. 5 2 | N O. 1 2


review articles

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

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 77


review articles

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

78 COM MUNICATION S O F TH E ACM | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


research highlights
P. 80 P. 81
Technical Designing Plush Toys
Perspective
Design Tools for with a Computer
the Rest of Us By Yuki Igarashi and Takeo Igarashi
By James A. Landay

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

DECE MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I C AT ION S O F T HE ACM 79


research highlights
DOI:10.1145/ 1610252.1 6 1 0 2 74

Technical Perspective
Design Tools for the Rest of Us
By James A. Landay

who believe we are


T HE R E A RE M A N Y and font families, and it is another to instructions to assemble the requisite
on the verge of the biggest change in define the exact shape, color, patterns, pieces to create the finished product.
the way products are made since the and working mechanisms of a 3D part The system described here is tech-
Industrial Revolution kicked into high or a complete product. Training most nically sophisticated. By making the
gear over 150 years ago. This is not a of the public in the skills of industrial modeling and simulation phases con-
revolution where factories will make design is simply not viable. current, the underlying model is always
products faster or more efficiently, as Design tools that can be used by maintained as a realizable product.
with the earlier manufacturing revolu- everyday users to create customized This sophisticated computing makes
tion; it is one where individuals will be products is the solution to the speci- it much easier for the designer, as they
in control of personal or customized fication problem in personalized will never get into the trap of creating
production. This idea, often referred to fabrication. In fact, it is probably the something that simply cannot be built.
as personal fabrication,6 is that people most important technical problem This paper is the first of what I hope
will have the means at home and in that must be solved before the vision will be a series of design tools that will
their offices to “print” new physical ob- of personal fabrication can come into one day allow the public to realize their
jects to their exact specifications. This being. This is why the work of Igarashi own personally designed products.
is no longer simply a far-fetched idea and Igarashi described in the fol-
of science fiction. The ever-decreasing lowing article is so important to the References
1. Alvarado, C. and Davis, R. Resolving ambiguities
price of 3D printers as well as the dem- future—not only for computing, but to create a natural computer-based sketching
onstration of printable plastic elec- for production. Many in the research environment. IJCAI (2001), 1365–1374.
2. Bailey, B.P., Konstan, J.A., and Carlis, J.V. DEMAIS:
tronics and other such fabrication ma- community have worked to bring pow- Designing multimedia applications with interactive
storyboards. In Proceedings of ACM Multimedia
chines leads one to see that personal erful, sketch-based design tools to (Ottawa, Canada, 2001), 241–250.
fabrication is not far off. non-computing experts, for example, 3. Buxton, W., Sniderman, R., Reeves, V., Patel, S. and
Baecker, R. The evolution of the SSSP score editing
Some might question whether in- architects,7 students,1,10 musicians,3,5 tools. Computer Music J. 3, 4 (1979), 14–25.
dividuals will want to design and pro- interface designers,9,11 multimedia au- 4. Davis, R.C., Colwell, B., and Landay, J.A. K-sketch:
A ‘kinetic’ sketch pad for novice animators. In
duce new physical objects or even cus- thors,2 and amateur animators.4 Some Proceedings of the 26th Annual ACM SIGCHI
tomize existing objects. Although it is of the most innovative work in this Conference (Florence, Italy, 2008).
5. Forsberg, A., Dieterich, M., and Zeleznik, R. The
doubtful we will use these technolo- area has been accomplished over the music notepad. In Proceedings of the 11th Annual
gies for all of the physical objects we last 10 years by the University of Tokyo ACM Symposium on User Interface Software and
Technology. (San Francisco, CA, 1998).
own and use, the proliferation of cus- group led by Takeo Igarashi. The work 6. Gershenfeld, N., Fab: The Coming Revolution on Your
tomized t-shirts, shoes, posters, and has led the field in the design of 3D ob- Desktop—from Personal Computers to Personal
Fabrication. Basic Books, 2007.
other objects available via Web-based jects by non-experts by creating design 7. Gross, M.D. and Do, E.Y.-L. Ambiguous intentions: A
custom product shops gives credence tools that allow a user to simply sketch paper-like interface for creative design. In Proceedings
of the ACM Symposium on User Interface Software
to the idea that a large segment of the a 2D representation and then have the and Technology (1996), 183–192.
population will be interested in creat- system carry out the difficult underly- 8. Igarashi, T., Matsuoka, S., and Tanaka, H. Teddy:
A sketching interface for 3D freeform design. In
ing objects customized to their specifi- ing computation to build a reasonable Proceedings of ACM SIGGRAPH (1999), 409–416.
9. Landay, J.A. and Myers, B.A. Sketching interfaces:
cations. Whether personalized objects 3D model.8 Toward more human interface design. IEEE Computer
will come through these Web-based At first read, this paper on designing 34, 3 (2001), 56–64.
10. LaViola, J. Advances in mathematical sketching:
services or be created right at home plush toys may seem to address a nar- Moving toward the paradigm’s full potential. IEEE
on 3D fabrication devices is a question row portion of the family of 3D objects Computer Graphics and Applications 27, 1 (2007),
38–48.
only time will answer. that users will want to fabricate, but 11. Newman, M.W., Lin, J., Hong, J.I., and Landay, J.A.
One major problem often ignored these plush toys share many of the im- DENIM: An informal web site design tool inspired
by observations of practice. Human-Computer
by this view of the future is how the in- portant characteristics of other com- Interaction 18, 3 (2003), 259–324.
dividual will specify the design of the plex design objects: different patterns/
objects they wish to create with these colors for different parts, a non-rigid James A. Landay is an associate professor in computer
science and engineering at the University of Washington
technologies. It is one thing to stipu- filling that can change the shape of and a founder of its Design:Use:Build (DUB) Center.
late a phrase to go on a t-shirt in one of the object depending on how the out-
a large set of predefined layouts, colors, side fabric is sewn, the production of © 2009 ACM 0001-0782/09/1200 $10.00

80 COM MUNICATION S O F THE AC M | D EC EM BER 2009 | VO L. 5 2 | N O. 1 2


DOI:10.1145/ 1610252 . 1 6 1 0 2 75

Designing Plush Toys


with a Computer
By Yuki Igarashi and Takeo Igarashi

Abstract Figure 1. Overview of Plushie system.


We introduce Plushie, an interactive system that allows non-
professional users to design their own original plush toys.
To design a plush toy, one needs to construct an appropriate
two-dimensional (2D) pattern. However, it is difficult for non-
professional users to appropriately design a 2D pattern. Some
recent systems automatically generate a 2D pattern for a given
three-dimensional (3D) model, but constructing a 3D model
is itself a challenge. Furthermore, an arbitrary 3D model can-
not necessarily be realized as a real plush toy, and the final
sewn result can be very different from the original 3D model. We have provided a way for people to design their own toys
We avoid this mismatch by constructing appropriate 2D pat- using a simple but powerful modeling tool that tightly inte-
terns and applying simple physical simulation to it on the fly grates a sketching interface with physical simulation in the
during 3D modeling. In this way, the model on the screen is modeling process.
always a good approximation of the final sewn result, which Plushie allows the user to design a plush toy from scratch
makes the design process much more efficient. We use a by simple sketching operations.18 The user first draws the
sketching interface for 3D modeling and also provide various desired silhouette, and the system automatically generates
editing operations tailored for plush-toy design. Internally, a 3D plush-toy model and corresponding 2D cloth pattern.
the system constructs a 2D cloth pattern in such a way that The user can also edit the model, e.g., cut it or add a part,
the simulation result matches the user’s input stroke. We using a simple sketching interface, and the 3D model and
successfully demonstrated that nonprofessional users could 2D cloth pattern are automatically updated. The 3D model
design plush toys or balloon easily using Plushie. is the result of a physical simulation that mimics the infla-
tion of the sewn 2D cloth patch. Therefore, the model on
the screen is always a good estimate of the final sewn result
1. INTRODUCTION (Figure 1). When we ran workshops in a museum to have
A computer can be a powerful tool for designing real- novice users try our system, we observed that even children
world objects. One can build a virtual three-dimensional could design their own plush toys.
(3D) model on a computer using computer-aided design We first give an overview of sketching interfaces for 3D
(CAD) and use the model to run various simulations with modeling and previous efforts to enable end users to design
computer-aided engineering (CAE) without the need physical objects. We then describe the user interface and
to build or damage costly real objects. The benefits are implementation of the Plushie system, followed by results
evident in many areas from architecture to automobile and user experiences. Finally, we conclude the article with
design. However, these tools are mainly designed for pro- some discussion of future work.
fessional users and are not particularly accessible to the
ordinary person. The construction of a 3D model using a 2. SKETCHING INTERFACES FOR 3D MODELING
standard CAD system is tedious, and running a physical The sketching interface part of Plushie is an evolution of the
simulation using a standard CAE system requires a certain Teddy system we presented in 1999.11 That system allowed the
level of expertise. user to create an interesting 3D model simply by sketching a
Our goal is to bring the benefits of CAD and CAE to the silhouette of the target model (Figure 2, left). It was designed
hands of nonprofessional users including children. This for the modeling of free-form rotund models, a task that is
article introduces our plush-toy design system,18 Plushie, as particularly difficult using standard modeling interfaces.
an example of our efforts to achieve this goal. Plush toys are Figure 3 shows an example of a modeling sequence using
familiar objects in our daily lives, but their design is diffi- Teddy. The user’s strokes are shown in red, and everything
cult. One must design an appropriate two-dimensional (2D) else is inferred and drawn by the system. The user first draws
pattern to obtain a particular 3D shape, but the relation-
ship between the two is nontrivial, and intensive experience
A previous version of this paper appeared in Proceedings
and knowledge are required to achieve satisfactory results.
of SIGGRAPH 2007/ACM Transactions on Graphics 26,
As a result, most people simply buy ready-made plush toys
3 (2007), 45.
and do not enjoy the design and construction of their own.

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

Figure 2. Screenshot of Teddy and sample 3D models created using


modeling to create only models that are physically realiz-
the system. able. In this way, the user can more efficiently explore the
design dimensions within realistic constraints. From the
user’s point of view, the model generated by the system
may not correspond exactly to the shape that was input,
but it will be a physically realizable shape reflecting the
input shape.
Some recent systems have tried to incorporate fast physi-
cal simulation into an interactive design process. Igarashi
and Hughes developed a mark-based interface for putting
clothing on a virtual character,10 and Decaudin et al. pro-
posed a system for designing an original garment via sketch-
ing.6 Both used simple geometric simulations to represent
Figure 3. Modeling session in Teddy. The user can create a 3D model the physical properties of cloth material. Masry and Lipson
using simple sketching operations. described a system in which the user can quickly build a CAD
model by sketching and immediately apply a finite element
analysis to the model.15 However, the model construction is
computed before the simulation in these systems, and no
dynamic feedback loop exists between the simulation result
and the original user input.
Several efforts have also been made to support the design
of physical objects by end users in the computer graphics
research community. Mitani and Suzuki16 and Shatz et al.22
presented automatic segmentation of a 3D model into sur-
face patches that can be perfectly flattened onto a plane
without distortion for constructing paper craft models.
the silhouette of the base primitive, and the system gener- Similarly, Julius et al. proposed similar method for plush
ates the corresponding 3D geometry. The user then draws toys14 allowing small distortion. Pillow system17 facilitates
a stroke across the model and the system cuts the model at the manual segmentation of a model by providing automatic
the line. The user can also add parts to the base model by flattening and by showing the result of physical simulation.
drawing two strokes. Figure 2 right shows several 3D models These systems make plush-toy design more accessible, but
created using the system. the fundamental challenge of creating an original plush toy
Several sketching systems for free-form shapes were devel- is still unresolved.
oped after Teddy. The original Teddy system used polygonal
meshes, but some later systems experimented with other 4. THE PLUSHIE SYSTEM
representations such as voxels20 and implicit surfaces.2 The system consists of two windows: one shows the 3D
Some systems extended the interface to support subsequent plush-toy model being constructed and the other shows
editing by direct manipulation. ShapeShop21 represents the corresponding 2D pattern (Figure 4). The user works on
a model as a collection of blob primitives and allows the the 3D view, interactively building the 3D model by using a
user to move or scale each primitive. Fibermesh19 keeps the sketching interface. The 2D view is mainly for reference but
original stroke as a control curve on the model surface and the user can also edit the 2D pattern directly when desired.
allows the user to adjust the shape by deforming the curves. The 3D model is produced from a physical simulation of
However, all these systems are designed for purely virtual 3D the assembled 2D pattern. After each input from the user,
models without consideration of the physical properties of
materials. Plushie is innovative in that it shows the feasibil- Figure 4. A screen snapshot of the Plushie system.
ity of using a sketching interface for free-form shapes in the
design of physical objects.

3. DESIGNING PHYSICAL MODELS WITH


A COMPUTER
Another key aspect of our work is the tight integration of
physical simulation into the 3D modeling process. In tra-
ditional applications, modeling and simulation are com-
pletely separate. A virtual model is created in 3D modeling
software without considering any physical constraints,
and it is then passed to a simulation environment. If the
simulation result reveals a problem, the user returns to
the model to fix the problem. We made this process more
efficient by running the simulation concurrently with the

82 COMM UNICATION S O F TH E AC M | DEC EM BE R 2009 | VO L . 5 2 | N O. 1 2


the system updates the 2D pattern so that the simulation Figure 7. User interface of part creation. (a) The user draws a stroke
result matches the user input. This guarantees that the and (b) the system suggests two different possibilities. The user
model is always realizable as a real plush toy and that the chooses one (c, d).
2D pattern is readily usable as a template for cutting and
sewing real fabric.
The modeling operations are based on the Teddy sys-
tem.11 The user interactively draws free-form strokes on the
canvas as gestures and the system automatically generates
(c)
a 3D model and corresponding 2D cloth pattern. We also
provide some special editing operations tailored for plush-
toy design.
Creating a New Model: Starting with a blank canvas, the user (a) (b)
creates a new plush-toy model by drawing its silhouette as a (d)
closed free-form stroke. The system automatically generates
two cloth patches corresponding to the stroke and visual-
izes the shape of the resulting plush toy by applying a simple
physical simulation (Figure 5). Figure 8. User interface of the pull operation.
Cut: The user can cut the model by drawing a stroke that
starts outside of the model, crosses it, and ends outside of
the model (Figure 6). The model is cut at the intersection and
flat patch is generated at the cross-section. This operation is
useful for creating relatively flat surfaces, such as those in a
foot or belly.
Creation of a Part: The user can add protruding parts such
as the ears and arms to the base model by drawing a single
stroke that defines the silhouette of the part. The stroke
should start and end on the base model (Figure 7a). The sys- thumbnail and the system updates the main model accord-
tem generates two candidate shapes and presents them to ingly. We found that the ability to create thin parts with a
the user as suggestions9 (Figure 7b). One is for fat, rounded single stroke is particularly useful. They are frequently seen
parts like the body, arm, and leg (Figure 7c). Their base is in real toys and are difficult to design using standard model-
connected to the base model with an open hole. The other ing software. Figure 20 shows a couple of example models
candidate shape is for thin parts like ears and the tail with thin parts.
whose base is closed (Figure 7d). The user clicks the desired Pull: The user can grab a seam line and pull it to modify
the shape. For example, the user can pull an ear to make it
larger when it is smaller than the other (Figure 8). The pull-
Figure 5. Creating a new model.
ing operation begins when the user starts dragging on the
background region near a seam line. The system changes
the mouse cursor when it approaches a seam line to indi-
cate that the user can start pulling. We use the peeling inter-
face introduced by Igarashi et al.12 to adjust the size of the
region to be deformed, that is, the larger area is deformed
as the user pulls more. The system continuously updates the
2D cloth pattern during pulling and shows the simulation
result in the 3D view.
Insertion and Deletion of Seam Lines: The modeling opera-
tions performed thus far automatically generate 2D patches
according to predefined algorithms and seam lines (patch
boundaries) appear on the 3D model surface without the
Figure 6. Cut operation. user’s explicit control. However, it is sometimes desir-
able for knowledgeable users to design seam lines manu-
ally, for more detailed control. This is especially important
when using nonstretchy cloth as in balloon models because
one needs to divide a rounded surface into many almost-
developable small patches (Figure 19 bottom).
The user can add a new seam in the seam line drawing
mode by drawing a free-form stroke on the model surface
(Figure 9). The corresponding cloth patch is then auto-
matically cut along the new seam line. If the stroke crosses
the entire patch, the patch is divided into two separate

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.

(a) (b) (c) (d)

Figure 13. Opening a dart line.


Figure 10. Deletion of a seam line.

patch. The system provides an automatic layout and manual


arrangement interface for preparing the final pattern to be
printed.
The system also allows the user to edit the patches directly
by using the pulling interface. The user can grab the bound-
ary of a patch and pull it to deform the shape.12 We again use
Figure 11. Patches connected to each other using connectors (b) and
a peeling interface to adjust the size of area to be deformed.
numbers (c).
The effect of 2D deformation immediately appears in the
3D view because of the physical simulation. The ability to
deform an individual patch is useful for designing asym-
metric shapes such as a penguin belly (Figure 12). The pull
operation is also useful for opening a dart line to make a flat
patch swell more (Figure 13).

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

84 COMM UNICATION S O F TH E AC M | DEC E M BE R 2009 | VO L . 5 2 | N O. 1 2


Figure 14. Our simple model to mimic stuffing effect. Internal Figure 15. Adjustment process after creation. The system enlarges
pressure pushes vertices outwards (a) and edge springs pull the 2D pattern so that the simulation result matches the input
them back (b). stroke. The 2D boundary vertex (u) moves in its normal direction by
the amount proportional to the distance between the corresponding
3D vertex and the input stroke.

pi n

ni
(a) (b) di

best suited for our purpose. It is easy to implement, fast


enough for interactive modeling, and sufficiently robust
ui
for dealing with adverse user operations. More impor- di
tantly, it produces a reasonable estimation of the result-
ing plush-toy shape. As shown in Figure 14, it successfully
reproduces characteristic behaviors seen in the stuffed
cloth. This algorithm is also used in a garment capture
system.3
In each simulation cycle, the system first moves each This simple algorithm works well in practice for our
face slightly in its normal direction to mimic the effect of application. Figure 16 shows some examples in which our
internal pressure (Figure 14a). The system then adjusts the algorithm successfully found appropriate 2D patches that
length of each edge to preserve the integrity of the cloth yielded the desired 3D shapes. In some situations, the
material5 (Figure 14b). We decided to prevent stretching input shape is not realizable as a plush-toy model con-
only and tolerate compression because plush toys’ rotund sisting of two patches. For example, a sharp concavity is
shape is generated from compression (small wrinkles) not realizable without causing self-intersection in the 2D
along the seam lines. The second part (adjustment of edge patch. In these cases, the system terminates the optimiza-
length) runs 10 times in each cycle to prevent excessive tion process, leaving a gap between the input stroke and
stretch. It takes a30 simulation cycles (2 s) to converge in the 3D model. This indicates that the desired shape is not
our typical examples. Although it is possible to show the possible with two patches. The user must add additional
result only after the convergence, we decided to show the seam lines to obtain more control.
intermediate shape because test users preferred to see the Cut: The system constructs a curved surface by sweep-
inflation process. ing the cutting stroke on the screen to the viewing
direction and dividing the mesh along the surface. The
5.2. 3D modeling operations right-hand side of the surface is removed and a new mesh
Creating a New Model: The input stroke is projected onto an is created on the cross-section. The cross-section is always
invisible plane at the center of the world facing the screen, developable, so the system simply flattens it and uses it as
and the system generates an initial two-sided mesh inside of a 2D patch. The system then applies the inflation process
the closed region. Each side of the mesh is used directly as a to the model. Note that the silhouette of the inflated 3D
2D patch for the model. The system then applies the physical model does not exactly matches with the input cut stroke
simulation to the mesh. It inflates the mesh to the direction because we do not apply any adjustment as in the initial
perpendicular to the viewing direction, but its silhouette creation.
actually becomes smaller as it inflates (Figure 15). The sys-
tem waits until the simulation converges and then starts to Figure 16. Physical simulation and shape adjustment. The red
adjust the 2D pattern so that the simulation result matches lines indicate the input strokes. The top row shows the result
of converting the input into patterns directly, and the bottom
the input stroke. Specifically, the system calculates the dis-
row shows the outcome when the adjustment process is applied
tance di from a vertex vi of the 3D mesh along the seam line to the patterns. The green shapes in the middle show the simulation
to the corresponding point pi in the projected input stroke results and the brown ones on the right show the real fabric
along its normal direction, and moves the corresponding models, both resulting from the 2D pattern on the left.
2D vertex ui on the patch boundary to its normal direction
by that amount di. After modifying the patch boundary, the
system updates the 2D mesh so that vertices are uniformly
distributed inside of the patch. The length of the edges in
the updated 2D mesh is then used as the new rest length
in the simulation. The system repeats this adjustment pro-
cess and the physical simulation until convergence. It takes
approximately 20 iterations (2 seconds) to converge in our
typical examples.

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

the original position vi to the target position hi, and moves


the corresponding vertices ui0 and ui1 in the 2D mesh in
(a) (b) (c)
their local coordinate frames by that amount di. These 3D
and 2D coordinate frames are defined by the pulled ver-
Creation of a Part: The system first projects the two end- tex’s normal vector and the direction of the seam line. The
points of the input stroke onto the base model surface. system iterates this displacement process with physical
A plane that passes through these 3D points and is facing simulation until it converges. To achieve a smooth defor-
toward the screen is constructed and the input stroke is mation, the system also moves the surrounding vertices
projected onto it. The system then draws an ellipse on the in the 2D mesh using the curve manipulation method
model surface for constructing a fat part and draws a line for introduced in Igarashi et al.12 It enlarges the region to be
creating a thin part (Figure 17). The ellipse or the line (what deformed proportional to the displacement of the pulled
we call base curves) is also projected to the plane. The sys- vertex.
tem generates a 2D mesh on the projection plane in the area Insertion and Deletion of Seam Lines: Insertion of a new
enclosed by the projected input stroke and the projected seam line is straightforward. The system simply cuts the
base curve. The 2D mesh is duplicated and serves as 2D pat- patch along the added seam line, and basically does not
tern and as the initial 3D geometry for the added part. As in change the result of simulation. Deletion is more compli-
the initial model creation case, the flat two-sided 3D mesh is cated because the merged patch is not necessarily devel-
inflated by physical simulation. The silhouette of the added opable. The system applies an approximate flattening
part gradually shrinks and the system enlarges the 2D pat- operation23 to the merged 3D surface to obtain the geometry
tern so that the silhouette matches the input stroke as in of the new 2D patch.
initial creation.
In case of a part with an elliptic base curve, the system 6. RESULTS
cuts open the base surface and stitches it with the newly cre- Plushie is implemented as a Java™ program. Construction
ated mesh. The result is a single connected mesh, and phys- of 2D patterns and a physical simulation run in real-time
ical simulation is applied uniformly to the entire mesh. On on a 1.1 GHz Pentium M PC. We designed a couple of
the other hand, the system does not open the base mesh plush toys using our system and created a real toy based
in case of the linear base curve. The new part is created as on the printed pattern. A modeling session typically takes
an independent closed mesh and the simulation is applied 10–20 min and sewing takes 3–5 h. Figure 19 shows a plush
separately to the base mesh and the new part. The base toy and balloon model designed in our system. It shows
mesh inflates independently of the part mesh, and the base that the physical simulation successfully captures the over-
curve is treated as a positional constraint in the simulation all shape of the real objects. We interviewed with profes-
of the part mesh (we simply do not move these vertices in sional balloon designers and they supported our system,
the simulation cycle). saying that it can significantly reduce the time necessary
Pull: The pull operation is a bit involved because the sys- for designing original balloon.
tem cannot directly modify the 3D mesh and must do so The user can assign different textures to individual
indirectly by deforming the corresponding 2D pattern. As patches (Figure 20). Therefore the user can explore various
the user starts pulling a vertex on a seam line, the system design possibilities before actuary sewing the real fabric
first constructs a projection plane that passes through (such as Figure 20 right). These models also demonstrate
the seam line (Figure 18). The mouse cursor position on the effectiveness of thin parts.
the screen is projected onto the projection plane, and it is We ran four small workshops to test the usability of the
used as a target position for the pulled vertex during subse- system and found that novice users, mainly children, can
quent dragging. The system computes the displacement di successfully create original plush toys using our system.
in the local coordinate frame on the projected plane from Here is an observation from one of these workshops. Nine

86 COM MUNICATION S O F TH E AC M | DEC EM B E R 2009 | VO L . 5 2 | N O. 1 2


Figure 19. A plush toy and a balloon designed in our system. Figure 22. Knitty system allows the user to design an original knitted
toy by simply drawing the desired silhouette.

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

Conference Proceedings (ISSN 19. Nealen, A., Igarashi, T., Sorkine,


References 1017–4656) (2008), 187–190. O., Alexa, M. FiberMesh: Designing
1. Agrawala, M., Doantam, P., Heiser, J., 7. Desbrun, M., Schroder, P., Barr, A. 14. Julius, D., Kraevoy, V., Sheffer, A. freeform surfaces with 3D curves,
Haymaker, J., Klingner, J., Hanrahan, Interactive animation of structured D-Charts: quasi developable mesh ACM Trans. Comp. Graph. (In
P., Tversky, B. Designing effective deformable objects. In Proceedings segmentation. Comp. Graph. Forum. Proceedings of SIGGRAPH 2007), 26,
step-by-step assembly instructions. of Graphics Interface 1999 (1999), (In Proceedings of Eurographics 3 (2007), 41.
ACM Trans. Graph. (In Proceedings 1–8. 2005), 24, 3 (2005), 981–990. 20. Owada, S., Nielsen, F., Nakazawa, K.,
of SIGGRAPH 2003), 22, 3 (2003), 8. Grinspun, E., Krisl, P., Schroder, P. 15. Masry, M., Lipson, H. A sketch- Igarashi, T. A Sketching Interface
828–837. CHARMS: A simple framework for based interface for iterative for Modeling the Internal Structures
2. Alexe, A., Barthe, L., Cani, M., adaptive simulation. ACM Trans. design and analysis of 3D objects. of 3D Shapes, Smart Graphics 2003,
Gaildrat, V. Shape modeling by Graph. 21, 3 (2002), 281–290. In Proceedings of Eurographics Lecture Notes in Computer Science
sketching using convolution surfaces. 9. Igarashi, T., Hughes, J.F. A Workshop on Sketch-Based (LNCS) 2733, Springer-Verlag, 49–57.
In Proceedings of Pacific Graphics suggestive interface for 3D drawing. Interfaces (2005), 109–118. 21. Schmidt, R., Wyvill, B., Sousa, M.C.,
2005 (2005). 14th Annual Symposium on User 16. Mitani, J., Suzuki, H. Making Jorge., J.A. ShapeShop: Sketch-
3. Bradley, D., Popa, T., Sheffer, A., Interface Software and Technology. papercraft toys from meshes using based solid modeling with BlobTrees.
Heidrich, W., Boubekeur, T. Markerless (In ACM UIST 2001) (2001), strip-based approximate unfolding. 2nd Eurographics Workshop on
garment capture. ACM Trans. Comp. 173–181. ACM Trans. Graph 23, 3 (2004), Sketch-Based Interfaces and
Graph. (In Proceedings of SIGGRAPH 10. Igarashi, T., Hughes, J.F. Clothing 259–263. Modeling (2005), 53–62.
2008), 27, 3 (2007), 99. manipulation. 15th Annual 17. Igarashi, Y., Igarashi, T. Pillow: 22. Shatz, I., Tal, A., Leifman, G. Paper
4. Breen, D.E., House, D.H., Wozny, Symposium on User Interface Interactive flattening of a 3D model craft models from meshes. The
M.J. Predicting the drape of woven Software and Technology. for plush toy design. Smart Graphics Visual Computer. Int. J. Comp.
cloth using interacting particles. (In ACM UIST 2002) (2002), 91–100. 2008. Lecture Notes in Computer Graph. (In Proceedings of Pacific
In Proceedings of SIGGRAPH 1994 11. Igarashi, T., Matsuoka, S., Tanaka, Science (LNCS) 5166, Springer- Graphics 2006), 22, 9 (2006),
(1994), 365–372. H. Teddy: A sketching interface for Verlag, 1–7. 825–834.
5. Choi, K.-J., Ko, H.-S. Stable but 3D freeform design. ACM SIGGRAPH 18. Mori, Y., Igarashi, T. Plushie: An 23. Sheffer, A., Levy, B., Mogilnitsky,
responsive cloth. ACM Trans. Graph. 1999 (1999), 409–416. interactive design system for M., Bogomyakov, A. ABF++: Fast
(In Proceedings of SIGGRAPH 2002), 12. Igarashi, T., Moscovich, T., Hughes, plush toys. ACM Trans. Graph. (In and robust angle based flattening.
21, 3 (2002), 81–97. J.F. As-rigid-as-possible shape Proceedings of SIGGRAPH 2007), ACM Trans. Graph. 24, 2 (2005),
6. Decaudin, P., Julius, D., Wither, J., manipulation. ACM Trans. Comp. 26, 3 (2007), 45. 311–330.
Boissieux, L., Sheffer, A., Cani, M.-P. Graph. (In ACM SIGGRAPH 2005),
Virtual garments: A fully geometric 24, 3 (2005), 1134–1141.
approach for clothing design. Comp. 13. Igarashi, Y., Igarashi, T., Suzuki, Yuki Igarashi Takeo Igarashi
Graph. Forum. (In Eurographics H. Knitty: 3D Modeling of Knitted The University of Tokyo The University of Tokyo, JST/ERATO
2006 Proceedings), 25, 3 (2006), Animals with a Production.
625–634. Eurographics 2008 Annex to the © 2009 ACM 0001-0782/09/1200 $10.00

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:

Nick Barton Evolutionary Genetics, Mathematical Biology


Jonathan Bollback Evolutionary Genetics, Experimental Evolution
Krishnendu Chatterjee Computer-aided Verification, Game Theory
Herbert Edelsbrunner Algorithms, Computational Geometry and Topology
Calin Guet Systems and Synthetic Biology
Carl-Philipp Heisenberg Cell and Developmental Biology, Biophysics
Thomas A. Henzinger Computer-aided Verification, Concurrent and Embedded Systems

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

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 89


research highlights
DOI:10.1145/ 1610252.16 1 0 2 77

ThinSight: A Thin Form-Factor


Interactive Surface Technology
By Shahram Izadi, Steve Hodges, Alex Butler, Darren West, Alban Rrustemi, Mike Molloy and William Buxton

ABSTRACT systems generate rich sensor data which can be processed


ThinSight is a thin form-factor interactive surface technol- using established computer vision techniques to prototype a
ogy based on optical sensors embedded inside a regular wide range of interactive surface applications.
liquid crystal display (LCD). These augment the display As shown in Figure 1, the shapes of many physical objects,
with the ability to sense a variety of objects near the sur- including fingers, brushes, dials, and so forth, can be “seen”
face, including fingertips and hands, to enable multitouch when they are near the display, allowing them to enhance
interaction. Optical sensing also allows other physical items multitouch interactions. Furthermore, ThinSight allows
to be detected, allowing interactions using various tan- interactions close-up or at a distance using active IR point-
gible objects. A major advantage of ThinSight over existing ing devices, such as styluses, and enables IR-based commu-
camera and projector-based systems is its compact form- nication through the display with other electronic devices.
factor, making it easier to deploy in a variety of settings. We We believe that ThinSight provides a glimpse of a future
describe how the ThinSight hardware is embedded behind where display technologies such as LCDs and organic light
a regular LCD, allowing sensing without degradation of dis- emitting diodes (OLEDs) will cheaply incorporate optical
play capability, and illustrate the capabilities of our system sensing pixels alongside red, green and blue (RGB) pixels in
through a number of proof-of-concept hardware prototypes
and applications. Figure 1. ThinSight brings the novel capabilities of surface computing
to thin displays. Top left: photo manipulation using multiple fingers on
a laptop prototype (note the screen has been reversed in the style of
a Tablet PC). Top right: a hand, mobile phone, remote control and reel
1. INTRODUCTION
of tape placed on a tabletop ThinSight prototype, with corresponding
Touch input using a single point of contact with a display sensor data far right. Note how all the objects are imaged through the
is a natural and established technique for human computer display, potentially allowing not only multitouch but tangible input.
interaction. Research over the past decades,3 and more Bottom left and right: an example of how such sensing can be used
recently products such as the iPhone and Microsoft Surface, to support digital painting using multiple fingertips, a real brush and
a tangible palette to change paint colors.
have shown the novel and exciting interaction techniques
and applications possible if multiple simultaneous touch
points can be detected.
Various technologies have been proposed for multitouch
sensing in this way, some of which extend to detection of
physical objects in addition to fingertips. Systems based
on optical sensing have proven to be particularly powerful
in the richness of data captured and the flexibility they can
provide. As yet, however, such optical systems have predom-
inately been based on cameras and projectors and require
a large optical path in front of or behind the display. This
typically results in relatively bulky systems—something that
can impact adoption in many real-world scenarios. While
capacitive overlay technologies, such as those in the iPhone
and the Dell XT Tablet PC, can support thin form-factor mul-
titouch, they are limited to sensing only fingertips.
ThinSight is a novel interactive surface technology which
is based on optical sensors integrated into a thin form-factor
LCD. It is capable of imaging multiple fingertips, whole
Original versions of this paper appeared in Proceedings
hands, and other objects near the display surface as shown
of the 2007 ACM Symposium on User Interface Software
in Figure 1. The system is based upon custom hardware
and Technology as “ThinSight: Versatile Multi-touch
embedded behind an LCD, and uses infrared (IR) light for
Sensing for Thin Form-factor Displays” and in
sensing without degradation of display capability.
Proceedings of the 2008 IEEE Workshop on Horizontal
In this article we describe the ThinSight electronics and the
Interactive Human Computer Systems as “Experiences
modified LCD construction which results. We present two pro-
with Building a Thin Form-Factor Touch and Tangible
totype systems we have developed: a multitouch laptop and a
Tabletop.”
touch-and-tangible tabletop (both shown in Figure 1). These

90 COMM UNICATION S O F THE ACM | DEC EM B E R 2 0 0 9 | VO L. 5 2 | N O. 1 2


a similar manner, resulting in the widespread adoption of 2.2. Further features of ThinSight
such surface technologies. ThinSight is not limited to detecting fingertips in con-
tact with the display; any suitably reflective object will
2. OVERVIEW OF OPERATION cause IR light to reflect back and will therefore generate a
“silhouette.” Not only can this be used to determine the loca-
2.1. Imaging through an LCD using IR light tion of the object on the display, but also its orientation and
A key element in the construction of ThinSight is a device shape, within the limits of sensing resolution. Furthermore,
known as a retro-reflective optosensor. This is a sensing ele- the underside of an object may be augmented with a visual
ment which contains two components: a light emitter and mark—a barcode of sorts—to aid identification.
an optically isolated light detector. It is therefore capable In addition to the detection of passive objects via their
of both emitting light and, at the same time, detecting the shape or some kind of barcode, it is also possible to embed
intensity of incident light. If a reflective object is placed in a very small infrared transmitter into an object. In this way,
front of the optosensor, some of the emitted light will be the object can transmit a code representing its identity, its
reflected back and will therefore be detected. state, or some other information, and this data transmission
ThinSight is based around a 2D grid of retro-reflective can be picked up by the IR detectors built into ThinSight.
optosensors which are placed behind an LCD panel. Each Indeed, ThinSight naturally supports bidirectional IR-based
optosensor emits light that passes right through the entire data transfer with nearby electronic devices such as smart-
panel. Any reflective object in front of the display (such as a phones and PDAs. Data can be transmitted from the dis-
fingertip) will reflect a fraction of the light back, and this can play to a device by modulating the IR light emitted. With a
be detected. Figure 2 depicts this arrangement. By using a suit- large display, it is possible to support several simultaneous
ably spaced grid of retro-reflective optosensors distributed uni- bidirectional communication channels in a spatially multi-
formly behind the display it is therefore possible to detect any plexed fashion.
number of fingertips on the display surface. The raw data gen- Finally, a device which emits a collimated beam of IR light
erated is essentially a low resolution grayscale “image” of what may be used as a pointing device, either close to the display
can be seen through the display, which can be processed using surface like a stylus, or from some distance. Such a pointing
computer vision techniques to support touch and other input. device could be used to support gestures for new forms of
A critical aspect of ThinSight is the use of retro-reflective interaction with a single display or with multiple displays.
sensors that operate in the infrared part of the spectrum, for Multiple pointing devices could be differentiated by modu-
three main reasons: lating the light generated by each.
– Although IR light is attenuated by the layers in the LCD
panel, some still passes through the display.5 This is
largely unaffected by the displayed image. 3. THE THINSIGHT HARDWARE
– A human fingertip typically reflects around 20% of inci-
dent IR light and is therefore a quite passable “reflective 3.1. The sensing electronics
object.” The prototype ThinSight circuit board depicted in Figure
– IR light is not visible to the user, and therefore does not 3 uses Avago HSDL-9100 retro-reflective infrared sensors.
detract from the image being displayed on the panel. These devices are especially designed for proximity sensing
—an IR LED emits infrared light and an IR photodiode gener-
ates a photocurrent which varies with the amount of incident
Figure 2. The basic principle of ThinSight. An array of retro-reflective light. Both emitter and detector have a center wavelength of
optosensors is placed behind an LCD. Each of these contains two
940 nm.
elements: an emitter which shines IR light through the panel; and
a detector which picks up any light reflected by objects such as A 7 × 5 grid of these HSDL-9100 devices on a regular
fingertips in front of the screen. 10 mm pitch is mounted on custom-made 70 × 50 mm
4-layer printed circuit board (PCB). Multiple PCBs can be
LCD panel tiled together to support larger sensing areas. The IR detec-
tors are interfaced directly with digital input/output lines on
a PIC18LF4520 microcontroller.
The PIC firmware collects data from one row of detec-
Emitter tors at a time to construct a “frame” of data which is then
transmitted to the PC over USB via a virtual COM port. To
connect multiple PCBs to the same PC, they must be syn-
Detector chronized to ensure that IR emitted by a row of devices on
one PCB does not adversely affect scanning on a neighbor-
Optosensor array ing PCB. In our prototype we achieve this using frame and
row synchronization signals which are generated by one
of the PCBs (the designated “master”) and detected by the
others (“slaves”).
Note that more information on the hardware can be
found in the full research publications.7, 10

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.

Standard edge-lit LCD Standard edge-lit LCD


with ThinSight

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

be placed between the light guide and the LCD. Brightness


enhancing film (BEF) “recycles” visible light at suboptimal
angles and polarizations and a diffuser smoothes out any
local nonuniformities in light intensity.

3.3. Integration with an LCD panel


IR LED row drivers
PIC micro We constructed our ThinSight prototypes using a variety of
desktop and laptop LCD panels, ranging from 17" to 21".
Two of these are shown in Figures 5 and 6. Up to 30 PCBs
were tiled to support sensing across the entire surface. In
3.2. LCD technology overview instances where large numbers of PCBs were tiled, a cus-
To understand how the ThinSight hardware is integrated tom hub circuit based on an FPGA was designed to collect
into a display panel, it is useful to understand the construc- and aggregate the raw data captured from a number of tiled
tion and operation of a typical LCD. An LCD panel is made sensors and transfer this to the PC using a single USB chan-
up of a stack of optical components as shown in Figure 4. At nel. These tiled PCBs are mounted directly behind the light
the front of the panel is a thin layer of liquid crystal material guide. To ensure that the cold cathode does not cause any
which is sandwiched between two polarizers. The polarizers stray IR light to emanate from the acrylic light guide, we
are orthogonal to each other, which means that any light placed a narrow piece of IR-blocking film between it and
which passes through the first will naturally be blocked by the backlight. We cut small holes in the white reflector
the second, resulting in dark pixels. However, if a voltage is behind the light guide to coincide with the location of every
applied across the liquid crystal material at a certain pixel IR emitting and detecting element.
location, the polarization of light incident on that pixel is During our experiments we found that the combination
twisted through 90° as it passes through the crystal struc- of the diffuser and BEF in an LCD panel typically caused
ture. As a result it emerges from the crystal with the correct excessive attenuation of the IR signal. However, removing
polarization to pass through the second polarizer. Typically, these materials degrades the displayed image significantly:
white light is shone through the panel from behind by a without BEF the brightness and contrast of the displayed
backlight and red, green, and blue filters are used to create image is reduced unacceptably; without a diffuser the image
a color display. In order to achieve a low profile construction appears to “float” in front of the backlight and at the same
while maintaining uniform lighting across the entire display time the position of the IR emitters and detectors can be
and keeping cost down, the backlight is often a large “light seen in the form of an array of faint dots across the entire
guide” in the form of a clear acrylic sheet which sits behind display.
the entire LCD and which is edge-lit from one or more sides. To completely hide the IR emitters and detectors we
The light source is often a cold cathode fluorescent tube required a material that lets IR pass through it but not vis-
or an array of white LEDs. To maximize the efficiency and ible light, so that the optosensors could not be seen but
uniformity of the lighting, additional layers of material may would operate normally. The traditional solution would be

92 COM MUNICATION S OF TH E AC M | DEC E M BE R 2 0 0 9 | VO L. 5 2 | N O. 1 2


a lack of IR transparency or because the optosensors can
Figure 5. Our laptop prototype. Top: Three PCBs are tiled together
and mounted on an acrylic plate, to give a total of 105 sensing be seen through them to some extent. The solution we set-
pixels. Holes are also cut in the white reflector shown on the tled on was the use of Radiant Light Film by 3M (part num-
far left. Bottom left: an aperture is cut in the laptop lid to allow ber CM500), which largely lets IR light pass through while
the PCBs to be mounted behind the LCD. This provides sensing reflecting visible light without the disadvantages of a true
across the center of the laptop screen. Bottom right: side views
cold mirror. This was combined with the use of a grade “0”
of the prototype—note the display has been reversed on its
hinges in the style of a Tablet PC. neutral density filter, a visually opaque but IR transparent
diffuser, to even out the distribution rear illumination and
at the same time prevent the “floating” effect. Applying the
Radiant Light Film carefully is critical since minor imper-
fections (e.g. wrinkles or bubbles) are highly visible to the
user—thus we laminated it onto a thin PET carrier. One
final modification to the LCD construction was to deploy
these films behind the light guide to further improve the
optical properties. The resulting LCD layer stack-up is
depicted in Figure 4 right.
Most LCD panels are not constructed to resist physical
pressure, and any distortion which results from touch inter-
actions typically causes internal IR reflection resulting in
“flare.” Placing the Radiant Light Film and neutral density
filter behind the light guide improves this situation, and
we also reinforced the ThinSight unit using several lengths
of extruded aluminum section running directly behind
the LCD.

4. THINSIGHT IN OPERATION

4.1. Processing the raw sensor data


Each value read from an individual IR detector is defined
as an integer representing the intensity of incident light.
These sensor values are streamed to the PC via USB where
the raw data undergoes several simple processing and fil-
tering steps in order to generate an IR image that can be
Figure 6. The ThinSight tabletop hardware as viewed from used to detect objects near the surface. Once this image is
the side and behind. Thirty PCBs (in a 5 × 6 grid) are tiled with generated, established image processing techniques can be
columns interconnected with ribbon cable and attached to
a hub board for aggregating data and inter-tile communication.
applied in order to determine coordinates of fingers, recog-
This provides a total of 1050 discrete sensing pixels across nize hand gestures, and identify object shapes.
the entire surface. Variations between optosensors due to manufacturing
and assembly tolerances result in a range of different values
across the display even without the presence of objects on
the display surface. To make the sensor image uniform and
the presence of additional incident light (reflected from
nearby objects) more apparent, we subtract a “background”
frame captured when no objects are present, and normalize
relative to the image generated when the display is covered
with a sheet of white reflective paper.
We use standard bicubic interpolation to scale up the
sensor image by a predefined factor (10 in our current imple-
mentation). For the larger tabletop implementation this
results in a 350 × 300 pixel image. Optionally, a Gaussian
filter can be applied for further smoothing, resulting in a
to use what is referred to as a “cold mirror.” Unfortunately grayscale “depth” image as shown in Figure 7.
these are made using a glass substrate which means they are
expensive, rigid and fragile and we were unable to source a 4.2. Seeing through the ThinSight display
cold mirror large enough to cover the entire tabletop dis- The images we obtain from the prototype are quite rich, par-
play. We experimented with many alternative materials ticularly given the density of the sensor array. Fingers and
including tracing paper, acetate sheets coated in emulsion hands within proximity of the screen are clearly identifiable.
paint, spray-on frosting, thin sheets of white polythene Examples of images captured through the display are shown
and mylar. Most of these are unsuitable either because of in Figures 1, 7 and 8.

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

Figure 9. An example 2" diameter visual marker and the resulting


ThinSight image after processing.

Fingertips appear as small blobs in the image as they


approach the surface, increasing in intensity as they get
closer. This gives rise to the possibility of sensing both touch
and hover. To date we have only implemented touch/no-
touch differentiation, using thresholding. However, we can
reliably and consistently detect touch to within a few milli-
meters for a variety of skin tones, so we believe that disam-
biguating hover from touch would be possible. Figure 10. Using ThinSight to communicate with devices using IR.
In addition to fingers and hands, optical sensing allows Top left: an embedded microcontroller/IR transceiver/RGB LED
us to observe other IR reflective objects through the display. device. Bottom left: touching a soft button on the ThinSight display
Figure 1 illustrates how the display can distinguish the shape signals the RGB LED on the embedded device to turn red (bottom
right). Top right: A remote control is used to signal from a distance
of many reflective objects in front of the surface, including the display whichin turn sends an IR command to the RGB device to
an entire hand, mobile phone, remote control, and a reel turn the LED blue.
of white tape. We have found in practice that many objects
reflect IR.
A logical next step is to attempt to uniquely identify
objects by placement of visual codes underneath them. Such
codes have been used effectively in tabletop systems such as
the Microsoft Surface and various research prototypes12, 28 to
support tangible interaction. We have also started prelimi-
nary experiments with the use of such codes on ThinSight,
see Figure 9.
Active electronic identification schemes are also feasible.
For example, cheap and small dedicated electronic units
containing an IR emitter can be stuck onto or embedded
inside objects that need to be identified. These emitters will
produce a signal directed to a small subset of the display
sensors. By emitting modulated IR it is possible to transmit
a unique identifier to the display.

94 COM MUNICATION S OF TH E ACM | DEC EM B E R 2 0 0 9 | VO L . 5 2 | N O. 1 2


display surface, thereby supporting spatially multiplexed described some of its potential; here we discuss a number of
bidirectional communications with multiple local devices additional observations and ideas which came to light dur-
and reception of data from remote gesturing devices. Of ing the work.
course, it is also possible to time multiplex communications
between different devices if a suitable addressing scheme is 5.1. Fidelity of sensing
used. We have not yet prototyped either of these multiple- The original aim of this project was simply to detect fin-
device communications schemes. gertips to enable multi-touch-based direct manipulation.
However, despite the low resolution of the raw sensor data,
4.4. Interacting with ThinSight we still detect quite sophisticated object images. Very small
As shown earlier in this section, it is straightforward to sense objects do currently “disappear” on occasion when they are
and locate multiple fingertips using ThinSight. In order to midway between optosensors. However, we have a num-
do this we threshold the processed data to produce a binary ber of ideas for improving the fidelity further, both to sup-
image. The connected components within this are isolated, port smaller objects and to make object and visual marker
and the center of mass of each component is calculated identification more practical. An obvious solution is to
to generate representative X, Y coordinates of each finger. increase the density of the optosensors, or at least the den-
A very simple homography can then be applied to map these sity of IR detectors. Another idea is to measure the amount
fingertip positions (which are relative to the sensor image) of reflected light under different lighting conditions—for
to onscreen coordinates. Major and minor axis analysis or example, simultaneously emitting light from neighboring
more detailed shape analysis can be performed to deter- sensors is likely to cause enough reflection to detect smaller
mine orientation information. Robust fingertip tracking objects.
algorithms or optical flow techniques28 can be employed to
add stronger heuristics for recognizing gestures. 5.2. Frame rate
Using these established techniques, fingertips are In informal trials of ThinSight for a direct manipulation
sensed to within a few millimeters, currently at 23 frames/s. task, we found that the current frame rate was reasonably
Both hover and touch can be detected, and could be disam- acceptable to users. However, a higher frame rate would not
biguated by defining appropriate thresholds. A user there- only produce a more responsive UI which will be important
fore need not apply any force to interact with the display. for some applications, but would make temporal filtering
However, it is also possible to estimate fingertip pressure by more practical thereby reducing noise and improving sub-
calculating the increase in the area and intensity of the fin- pixel accuracy. It would also be possible to sample each
gertip “blob” once touch has been detected. detector under a number of different illumination condi-
Figure 1 shows two simple applications developed using tions as described above, which we believe would increase
ThinSight. A simple photo application allows multiple fidelity of operation.
images to be translated, rotated, and scaled using estab-
lished multifinger manipulation gestures. We use distance 5.3. Robustness to lighting conditions
and angle between touch points to compute scale factor The retro-reflective nature of operation of ThinSight com-
and rotation deltas. To demonstrate some of the capabili- bined with the use of background substitution seems to give
ties of ThinSight beyond just multitouch, we have built an reliable operation in a variety of lighting conditions, includ-
example paint application that allows users to paint directly ing an office environment with some ambient sunlight.
on the surface using both fingertips and real paint brushes. One common approach to mitigating any negative effects
The latter works because ThinSight can detect the brushes’ of ambient light, which we could explore if necessary, is to
white bristles which reflect IR. The paint application also emit modulated IR and to ignore any nonmodulated offset
supports a more sophisticated scenario where an artist’s in the detected signal.
palette is placed on the display surface. Although this is vis-
ibly transparent, it has an IR reflective marker on the under- 5.4. Power consumption
side which allows it to be detected by ThinSight, whereupon The biggest contributor to power consumption in ThinSight
a range of paint colors are rendered underneath it. The user is emission of IR light; because the signal is attenuated in
can change color by “dipping” either a fingertip or a brush both directions as it passes through the layers of the LCD
into the appropriate well in the palette. We identify the pres- panel, a high intensity emission is required. For mobile
ence of this object using a simple ellipse matching algo- devices, where power consumption is an issue, we have
rithm which distinguishes the larger palette from smaller ideas for improvements. We believe it is possible to enhance
touch point “blobs” in the sensor image. Despite the lim- the IR transmission properties of an LCD panel by optimiz-
ited resolution of ThinSight, it is possible to differentiate a ing the materials used in its construction for this purpose—
number of different objects using simple silhouette shape something which is not currently done. In addition, it may
information. be possible to keep track of object and fingertip positions,
and limit the most frequent IR emissions to those areas. The
5. DISCUSSION AND FUTURE WORK rest of the display would be scanned less frequently (e.g. at
We believe that the prototype presented in this article is an 2–3 frames/s) to detect new touch points.
interesting proof-of-concept of a new approach to multi- One of the main ways we feel we can improve on power
touch and tangible sensing for thin displays. We have already consumption and fidelity of sensing is to use a more

D EC E MB E R 2 0 0 9 | VO L . 5 2 | N O. 1 2 | COM M U N I CAT ION S O F T HE ACM 95


research highlights

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

96 COMM UNICATION S O F TH E ACM | DEC EM BE R 2 0 0 9 | VO L. 5 2 | N O. 1 2


6.3. Transparent overlays visible light, but this time based on polymer LEDs and pho-
The systems above share one major disadvantage: they all todiodes. A 1" diagonal sensing polymer display has been
rely on front-projection for display. The displayed image demonstrated.2
will therefore be broken up by the user’s fingers, hands and Planar1 and Toshiba24 were among the first to develop
arms, which can degrade the user experience. Also, a large LCD prototypes with integrated visible light photosensors,
throw distance is typically required for projection which which can detect the shadows resulting from fingertips or
limits portability. Furthermore, physical objects can only styluses on the display. The photosensors and associated
be detected in limited ways, if object detection is supported signal processing circuitry are integrated directly onto the
at all. LCD substrate. To illuminate fingers and other objects,
One alternative approach to address some of the issues either an external light source is required—impacting on
of display and portability is to use a transparent sensing the profile of the system—or the screen must uniformly
overlay in conjunction with a self-contained (i.e., not pro- emit bright visible light—which in turn will disrupt the dis-
jected) display such as an LCD panel. DualTouch19 uses played image.
an off-the-shelf transparent resistive touch overlay to The motivation for ThinSight was to build on the con-
detect the position of two fingers. Such overlays typically cept of intrinsically integrated sensing. We have extended
report the average position when two fingers are touching. the work above using invisible (IR) illuminant to allow
Assuming that one finger makes contact first and does simultaneous display and sensing, building on current
not subsequently move, the position of a second touch LCD and IR technologies to make prototyping practical
point can be calculated. An extension to this is provided in the near term. Another important aspect is support
by Loviscach.16 for much larger thin touch-sensitive displays than is
The Philips Entertaible15 takes a different “overlay” provided by intrinsically integrated solutions to date,
approach to detect up to 30 touch points. IR emitters and thereby making it more practical to prototype multitouch
detectors are placed on a bezel around the screen. Breaks in applications.
the IR beams detect fingers and objects. The SMART DViT 22
and HP TouchSmart6 utilize cameras in the corners of a 7. CONCLUSION
bezel overlay to support sensing of two fingers or styluses. In this article we have described a new technique for
With such line of sight systems, occlusion can be an issue optically sensing multiple objects, including fingertips,
for sensing. through thin form-factor displays. Optical sensing allows
The Lemur music controller from JazzMutant11 uses a rich “camera-like” data to be captured by the display and
proprietary resistive overlay technology to track up to 20 this is processed using computer vision techniques. This
touch points simultaneously. More recently, Balda AG supports new types of human computer interfaces that
and N-Trig20 have both released capacitive multitouch exploit zero-force multi-touch and tangible interaction
overlays, which have been used in the iPhone and the on thin form-factor displays such as those described in
Dell XT, respectively. These approaches provide a robust Buxton.3 We have shown how this technique can be inte-
way for sensing multiple fingers touching the surface, grated with off-the-shelf LCD technology, making such
but do not scale to whole hand sensing or tangible interaction techniques more practical and deployable in
objects. real-world settings.
We have many ideas for potential refinements to the
6.4. The need for intrinsically integrated sensing ThinSight hardware, firmware, and PC software. In addi-
The previous sections have presented a number of multi- tion to such incremental improvements, we also believe
touch display technologies. Camera-based systems produce that it will be possible to transition to an integrated “sens-
very rich data but have a number of drawbacks. Opaque sens- ing and display” solution which will be much more straight-
ing systems can more accurately detect fingers and objects, forward and cheaper to manufacture. An obvious approach
but by their nature rely on projection. Transparent overlays is to incorporate optical sensors directly onto the LCD
alleviate this projection requirement, but the fidelity of sens- backplane, and as reported earlier early prototypes in this
ing is reduced. It is difficult, for example, to support sensing area are beginning to emerge.24 Alternatively, polymer pho-
of fingertips, hands and objects. todiodes may be combined on the same substrate as poly-
A potential solution which addresses all of these mer OLEDs2 for a similar result. The big advantage of this
requirements is a class of technologies that we refer to as approach is that an array of sensing elements can be com-
“intrinsically integrated” sensing. The common approach bined with a display at very little incremental cost by simply
behind these is to distribute sensing across the display adding “pixels that sense” in between the visible RGB dis-
surface, integrating the sensors with the display elements. play pixels. This would essentially augment a display with
Hudson8 reports on a prototype 0.7" monochrome display optical multitouch input “for free,” enabling truly wide-
where LED pixels double up as light sensors. By operating spread adoption of this exciting technology.
one pixel as a sensor while its neighbors are illuminated,
it is possible to detect light reflected from a fingertip close Acknowledgments
to the display. The main drawbacks are the use of visible We thank Stuart Taylor, Steve Bathiche, Andy Wilson,
illuminant during sensing and practicalities of using LED- Turner Whitted and Otmar Hilliges for their invaluable
based displays. SensoLED uses a similar approach with input.

D EC E MB E R 2 0 0 9 | VO L . 5 2 | N O. 1 2 | COM M U N I CAT ION S O F T H E ACM 97


research highlights

a solution for social gaming manipulation on interactive surfaces.


References
experiences. In Tangible Play In Proceedings of the SIGCHI
1. Abileah, A., Green, P. Optical sensors emitting diode arrays as touch- Workshop, IUI Conference (2007). Conference on Human Factors in
embedded within AMLCD panel: sensitive input and output devices. 16.
Loviscach, J. Two-finger input with a Computing Systems: Changing
design and applications. In In Proceedings of the 17th Annual standard touch screen. In Proceedings Our World, Changing Ourselves
Proceedings of EDT’07 (San Diego, ACM Symposium on User Interface of the 20th Annual ACM Symposium (Minneapolis, MN, Apr. 20–25, 2002),
California, August 04, 2007), ACM, Software and Technology (Santa Fe, on User Interface Software and CHI ‘02. ACM, NY, 113–120.
New York, NY. NM, Oct. 24–27, 2004), UIST ‘04. Technology (Newport, RI, USA, 22. Smart Technologies, http://smarttech.
2. Bürgi, L. et al. Optical proximity ACM, NY, 287–290. October 07–10, 2007). UIST '07. ACM, com (2009).
and touch sensors based on 9. Izadi, S. et al. C-Slate: A multi-touch New York, NY, 169–172. 23. Tactex Controls Inc. Array Sensors.
monolithically integrated polymer and object recognition system for 17.
Malik, S., Laszlo, J. Visual touchpad: http://www.tactex.com/products_
photodiodes and polymer LEDs. Org. remote collaboration using horizontal A two-handed gestural input array.php.
Electron. 7 (2006). surfaces. In IEEE Workshop on device. In Proceedings of the 24. Matsushita, T. LCD with Finger Shadow
3. Buxton, B. Multi-Touch Systems Horizontal Interactive Human- 6th International Conference Sensing, http://www3.toshiba.co.jp/
That I Have Known and Loved Computer Systems (Rhode Island, on Multimodal Interfaces (State tm_dsp/press/2005/05-09-29.htm.
(2007), http://www.billbuxton.com/ Oct. 2007), IEEE Tabletop 2007, College, PA, Oct. 13–15, 2004), 25. Westerman, W. Hand Tracking,
multitouchOverview.html. IEEE, 3–10. ICMI ‘04. ACM, NY, 289–296. Finger Identification and Chordic
4. Dietz, P., Leigh, D. DiamondTouch: a 10. Izadi, S. et al. Experiences with 18.
Matsushita, N., Rekimoto, J. 1997. Manipulation on a Multi-Touch
multi-user touch technology. building a thin form-factor touch and HoloWall: Designing a finger, hand, Surface. PhD thesis, University of
In Proceedings of the 14th tangible tabletop. In IEEE Workshop body, and object sensitive wall. In Delaware (1999).
Annual ACM Symposium on User on Horizontal Interactive Human- Proceedings of the 10th Annual 26. Wellner, P. Interacting with Paper
Interface Software and Technology Computer Systems (Amsterdam, ACM Symposium on User Interface on the Digital Desk. CACM 36, 7
(Orlando, FL, Nov. 11–14, 2001), Holland, Oct. 2008), Tabletop 2008, Software and Technology (Banff, (1993) 86–96.
UIST ‘01. ACM, NY, 219–226. IEEE, 181–184. Alberta, Canada, Oct. 14–17, 1997), 27. Wilson, A.D. TouchLight: An imaging
5. Han, J.Y. Low-cost multi-touch 11. JazzMutant Lemur. http:// UIST ‘97. ACM, NY, 209–210. touch screen and display for gesture-
sensing through frustrated www.jazzmutant.com/ 19.
Matsushita, N., Ayatsuka, Y., based interaction. In Proceedings of
total internal reflection. In lemur_overview.php. Rekimoto, J. 2000. Dual touch: A the 6th International Conference on
Proceedings of the 18 Annual
th
12. Jordà, S., Geiger, G., Alonso, M., two-handed interface for pen-based Multimodal Interfaces (State College,
ACM Symposium on User Interface Kaltenbrunner, M. The reacTable: PDAs. In Proceedings of the 13th PA, Oct. 13–15, 2004), ICMI ‘04.
Software and Technology (Seattle, Exploring the synergy between live Annual ACM Symposium on User ACM, NY, 69–76.
WA, Oct. 23–26, 2005), UIST ‘05. music performance and tabletop Interface Software and Technology 28. Wilson, A.D. PlayAnywhere: A
ACM, NY, 115–118. tangible interfaces. In Proceedings of (San Diego, California, US, compact interactive tabletop
6. HP TouchSmart, http://www.hp.com/ the 1st International Conference on Nov. 06–08, 2000), UIST ‘00. ACM, projection-vision system. In
united-states/campaigns/touchsmart/. Tangible and Embedded Interaction New York, NY, 211–212. Proceedings of the 18th Annual
7. Hodges, S., Izadi, S., Butler, A., (Baton Rouge, LA, Feb. 15–17, 2007). 20.
N-trig, duo-touch sensor, http:// ACM Symposium on User Interface
Rrustemi, A., Buxton, B. ThinSight: TEI ‘07. ACM, NY, 139–146. www.n-trig.com/. Software and Technology (Seattle,
Versatile multi-touch sensing for 13. Krueger, M. Artificial Reality 2, 21.
Rekimoto, J. SmartSkin: An WA, Oct. 23–26, 2005), UIST ‘05.
thin form-factor displays. In Addison-Wesley Professional (1991). infrastructure for freehand ACM, NY, 83–92.
Proceedings of the 20th Annual ISBN 0-201-52260-8
ACM Symposium on User Interface 14. Lee, S., Buxton, W., Smith, K.C. 5. A Shahram Izadi, Steve Hodges, Alex Butler, Darren West, Alban Rrustemi,
Software and Technology (Newport, multi-touch three dimensional touch- Mike Molloy, and William Buxton ( {shahrami, shodges, dab}@microsoft.com), Microsoft
CACMRI, Oct. 07–10, 2007),
lifetime mem UISThalf
‘07. sensitive tablet. 1
page ad:Layout SIGCHI Bull 16, 4 3:57
8/13/09 PM Cambridge,
Research Page 1U.K.
ACM, NY, 259–268. (Apr. 1985), 21–25.
8. Hudson, S.E. 2004. Using light 15. van Loenen, E. et al. Entertaible: © 2009 ACM 0001-0782/09/1200 $10.00

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.

Learn more and apply at:


http://www.acm.org/life

98 COMM UNIC ATION S O F TH E AC M | DEC EM BE R 2 0 0 9 | VO L. 5 2 | N O. 1 2


CAREERS

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-

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S O F T HE ACM 99


CAREERS

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.

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N I C AT ION S O F T H E ACM 101


CAREERS

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(QJLQHHULQJ 62( /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(QJLQHHULQJ 62( 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#XQPHGX SKRQH  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

102 C O MM UNICATION S O F TH E AC M | D EC EM BER 2009 | VO L. 5 2 | N O. 1 2


should include a description of professional in- from outstanding researchers regardless of nation- appointment starting in the Fall semester 2010.
terests and goals in both teaching and research. al origin or citizenship. The working language is We are particularly interested in candidates with
Each application should include a curriculum English; knowledge of the German language is not expertise in database management systems, data
vita and the names and addresses of three or required for a successful career at the institute. mining or related areas. Applications from wom-
more individuals who will provide letters of rec- The institute is located in Kaiserslautern and en and members of traditionally under-represent-
ommendation. Letter writers should submit their Saarbruecken, in the tri-border area of Germany, ed groups are particularly encouraged. Salary and
letters directly to MIT, preferably on the website France and Luxembourg. The area offers a high start-up package will be competitive and com-
or by mailing to the address below. Please submit standard of living, beautiful surroundings and mensurate with qualifications and experience.
complete application by December 15, 2009. easy access to major metropolitan areas in the The minimum qualifications are a Ph.D. de-
Send all materials not submitted on the web- center of Europe, as well as a stimulating, com- gree in Computer Science or in a closely-related
site to: petitive and collaborative work environment. In discipline by the time of appointment, along with
Professor W. Eric L. Grimson immediate proximity are the MPI for Informatics, demonstrated evidence of excellence in teaching
Department Head, Electrical Engineering Saarland University, the Technical University of and research. We particularly solicit applications
and Computer Science Kaiserslautern, the German Center for Artificial from candidates with attitude for collaborative re-
Massachusetts Institute of Technology Intelligence (DFKI), and the Fraunhofer Insti- search, whose research foci can complement the
77 Massachusetts Avenue, Room 38-401 tutes for Experimental Software Engineering and existing expertise in the department; we are also
Cambridge, MA 02139 for Industrial Mathematics. interested in individuals that can promote inter-
Qualified candidates should apply online at disciplinary research initiatives. The successful
M.I.T. is an equal http://www.mpi-sws.org/application. The review candidate will be expected to develop an indepen-
opportunity/affirmative action employer. of applications will begin on January 4, 2010, and dent research program and teach graduate and
applicants are strongly encouraged to apply by undergraduate courses in Computer Science.
that date; however, applications will continue to
Max Planck Institute for Software be accepted through January 2010.
Systems (MPI-SWS) The institute is committed to increasing the rep- New York University/Courant Institute
Tenure-track openings resentation of minorities, women and individuals of Mathematical Sciences
with physical disabilities in Computer Science. We Department of Computer Science
Applications are invited for tenure-track and particularly encourage such individuals to apply.
tenured faculty positions in all areas related to The department expects to have several regular
the design, analysis and engineering of software faculty positions beginning in September 2010
systems, including programming languages, for- New Mexico State University and invites candidates at all levels. We will consid-
mal methods, security, distributed, networked Assistant Professor er outstanding candidates in any area of computer
and embedded systems, databases and informa- science with systems being high-priority area.
tion systems, and human-computer interaction. The Computer Science Department at New Mexico Faculty members are expected to be outstand-
A doctoral degree in computer science or related State University invites applications for a tenure- ing scholars and to participate in teaching at all lev-
areas and an outstanding research record are track position at the assistant professor level, with els from undergraduate to doctoral. New appoin-
required. Successful candidates are expected to
build a team and pursue a highly visible research
agenda, both independently and in collaboration
with other groups. Senior candidates must have
demonstrated leadership abilities and recog-
nized international stature.
MPI-SWS, founded in 2005, is part of a net-
work of eighty Max Planck Institutes, Germany’s
premier basic research facilities. MPIs have an
established record of world-class, foundational TEMASEK RESEARCH FELLOWSHIP
research in the fields of medicine, biology, chem-
istry, physics, technology and humanities. Since The Temasek Research Fellowship (TRF) is a prestigious
1948, MPI researchers have won 17 Nobel prizes. scheme aimed at recruiting outstanding young researchers
MPI-SWS aspires to meet the highest standards of
excellence and international recognition with its
at the post-doctoral level to undertake research as Principal
research in software systems. Investigators and lead teams to undertake defence-related
To this end, the institute offers a unique envi- research in the National University of Singapore (NUS).
ronment that combines the best aspects of a uni-
The TRF is a 3-year Fellowship with an option to extend
versity department and a research laboratory:
a) Faculty receive generous base funding to build
up to 3 years. The Temasek Research Fellow (TRF-RF)
and lead a team of graduate students and post- may be offered a faculty appointment with NUS at the end
docs. They have full academic freedom and of their term.
publish their research results freely.
In addition to an attractive remuneration package that
b) Faculty have the opportunity to supervise doc-
toral theses, teach graduate and undergradu- will commensurate with qualification and experience, the
ate courses, and have the flexibility to incorpo- TRF-RF will be provided a research grant to pursue his/
rate teaching into their research agenda. her research at Temasek Laboratories at NUS or other
c) Faculty are provided with outstanding techni- research entities at NUS.
cal and administrative support facilities as
well as internationally competitive compensa- For more information and application procedure, please
tion packages. visit NUS at
http://www.nus.edu.sg/dpr/funding/fellowship.htm
Funds have been committed to grow the insti-
tute to a strength of 17 tenured and tenure-track fac- Closing date: 22 December 2009
ulty, and about 100 doctoral and post-doctoral posi- Short-listed candidates will be invited for an interview and
tions. Additional growth through outside funding is scientific presentation expected to be held in March 2010
expected. We maintain an open, international and
diverse work environment and seek applications

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | COM M U N I C AT ION S O F T H E ACM 103


CAREERS

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.

104 COM MUNICATION S O F TH E ACM | D EC EM BE R 2009 | VO L . 5 2 | N O. 1 2


Rutgers University Stanford University orous, funded research program and to teach at
Tenure-Track Position Department of Computer Science both the undergraduate and graduate levels.
Faculty Opening – Assistant or untenured Stevens Institute of Technology is a private
The Department of Computer Science at Rutgers Associate Professor university located in Hoboken, New Jersey. The
University invites applications for tenure-track 55-acre campus is on the Hudson River across
faculty positions at the rank of Assistant, Associ- The Department of Computer Science at Stanford from midtown Manhattan within a few minutes
ate or full Professor, with appointments starting University invites applications for a tenure-track from NYC via public transportation. Hoboken is
in September 2010, subject to the availability of faculty position at the junior level (Assistant or a small upscale city, the residence of New Jersey’s
funds. All areas in experimental computer sys- untenured Associate Professor). We give higher governor, and the residence of choice for many
tems will be considered, but special emphasis priority to the overall originality and promise of professionals working in NYC. Faculty live in
will be given to pervasive computing and com- the candidate’s work than to the candidate’s sub- Hoboken, NYC, and in suburban communities in
puter architecture. area of specialization within Computer Science. Northern New Jersey along commuter train lines
Applicants for this research/teaching posi- We are seeking applicants from all areas of to Hoboken and NYC. Stevens’ location offers
tion must, at minimum, be in the process of com- Computer Science, spanning theoretical founda- excellent opportunities for collaborations with
pleting a dissertation in Computer Science or a tions, systems, software, and applications. We nearby universities such as NYU, Princeton, Co-
closely related field, and should show evidence are also interested in applicants doing research lumbia, and Rutgers/DIMACS as well as industri-
of exceptional research promise, potential for de- at the frontiers of Computer Science with other al research laboratories such as Bell Labs, AT&T
veloping an externally funded research program, disciplines, especially those with potential con- Labs, IBM Research, Google New York, Siemens,
and commitment to quality advising and teaching nections to Stanford’s main multidisciplinary and the Sarnoff Corporation.
at the graduate and undergraduate levels. Hired initiatives: Energy, Human Health, Environment Applications should be submitted electroni-
candidates who have not defended their Ph.D. by and Sustainability, the Arts and Creativity, and cally at http://www.cs.stevens.edu/Search. Ap-
September will be hired at the rank of Instructor, the International Initiative. plications should include a curriculum vitae,
and must complete the Ph.D. by December 31, Applicants must have completed (or be com- teaching and research statements, and contact
2010 to be eligible for tenure-track title retroac- pleting) a Ph.D., must have demonstrated the information for at least three references. Candi-
tive to start date. ability to pursue a program of research, and must dates should ask their references to send letters
Applicants should go to http://www.cs.rutgers. have a strong commitment to graduate and un- directly to the search committee. PDF is preferred
edu/employment/ and submit their curriculum dergraduate teaching. A successful candidate for all application materials and reference letters.
vitae, a research statement addressing both past will be expected to teach courses at the graduate Further information is provided at the web site.
work and future plans and a teaching statement and undergraduate levels, and to build and lead a Review of applications will begin on Decem-
along with three letters of recommendation. team of graduate students in Ph.D. research. Fur- ber 1, 2009.
Applications should be received by January 2, ther information about the Computer Science De- Stevens is an Affirmative Action/Equal Oppor-
2010 for full consideration. partment can be found at http://cs.stanford.edu. tunity employer.
Rutgers subscribes to the value of academic The School of Engineering website may be found
diversity and encourages applications from indi- at http://soe.stanford.edu.
viduals with varied experiences, perspectives, and Applications should include a curriculum Swarthmore College
backgrounds. Females, minorities, dual-career vita, brief statements of research and teaching in- Computer Science Department
couples, and persons with disabilities are encour- terests, and the names of at least four references.
aged to apply. Candidates are requested to ask references to Applications are invited for a two-year Visiting
Rutgers is an affirmative action/equal oppor- send their letters directly to the search committee. Assistant Professor position beginning August
tunity employer. Applications and letters should be sent to: Search 2010.
Committee Chair, c/o Laura Kenny-Carlson, via Swarthmore College is a small, selective lib-
electronic mail to search@cs.stanford.edu. eral arts college located in a suburb of Philadel-
Santa Clara University The review of applications will begin on Janu- phia. The Computer Science Department offers
Assistant Professor in Scientific ary 4, 2010, and applicants are strongly encour- majors and minors in computer science at the
Computation/Statistics aged to submit applications by that date; however, undergraduate level. Applicants must have teach-
applications will continue to be accepted until the ing experience and should be comfortable teach-
The Department of Mathematics and Computer position is filled, but no later than May 1, 2010. ing a wide range of courses at the introductory
Science at Santa Clara University invites applica- Stanford University is an equal opportunity and intermediate level. We are particularly inter-
tions for a tenure-track Assistant Professor position employer and is committed to increasing the ested in candidates who specialize in theory and
starting in September 2010 from candidates with diversity of its faculty. It welcomes nominations algorithms or in systems areas, however, we will
expertise in scientific computation or statistics and of and applications from women and members consider candidates from all areas of CS. A Ph.D.
interest in mathematical biology, computational of minority groups, as well as others who would in CS by or near the time of appointment is pre-
physics or chemistry, or environmental science. bring additional dimensions to the university’s ferred (ABD is required). We expect to begin inter-
Application deadline is January 20, 2010. For research and teaching missions. viewing in early February 2010.
more information regarding application submis- See http://cs.swarthmore.edu/jobs for appli-
sions, see www.scu.edu/hr/careers/faculty.cfm cation submission information and more details
Stevens Institute of Technology about the position. Swarthmore College is an
Assistant Professor of Computer Science equal opportunity employer. Applications from
Southern Polytechnic State University women and members of minority groups are en-
Tenure-track positions in Computing The Computer Science Department at Stevens couraged. Applications will be accepted until the
Institute of Technology invites applications for a position is filled.
We are seeking to fill up to four tenure-track Assis- tenure-track position beginning in August 2010.
tant Professor positions (other ranks considered) Special consideration will be given to candidates
in Information Technology, Computer Game De- in computer vision, computer graphics, and ma- The Ohio State University
sign and Development, and Software Engineer- chine learning at the assistant professor level. Assistant Professor
ing, and a Lecturer position in Computer Science. However, outstanding applicants at other levels
For the tenure-track positions, applicants must and/or in other areas of Computer Science may The Department of Computer Science and Engi-
hold a relevant Ph.D., be committed to excellence also be considered. neering (CSE), The Ohio State University, invites
in teaching, and have substantial research poten- Applicants are expected to have a Ph.D. in applications for two tenure-track positions at the
tial. SPSU is located in the metro Atlanta area, Computer Science or a closely related field, a Assistant Professor level. The positions are open
which offers excellent quality of life. For more demonstrated record of excellence in research, to all CSE areas (artificial intelligence, graphics
details, including specializations of interest, go and a strong commitment to teaching. A success- and animation, networking, software engineer-
to http://www.spsu.edu/hr/faculty.html. ful candidate will be expected to conduct a vig- ing and programming languages, systems, and

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I CAT ION S O F T H E ACM 105


CAREERS

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.

106 COMM UNICATION S O F T H E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


Qualifications include an outstanding aca- cord of scholarship, leadership, and funding. The Department is particularly interested in
demic record, a doctorate or equivalent in com- The Department of Computer Science is one receiving applications from minorities and wom-
puter engineering or computer science, and a of the best small, research-oriented departments en. The University of South Carolina is an affirma-
strong commitment to teaching and research. in the nation, with an unusually collaborative cul- tive action, equal opportunity employer.
To apply please complete the form at: http:// ture and strong ties to cognitive science, linguis-
www.eecs.umich.edu/eecs/jobs/csejobs.html tics, and electrical and computer engineering.
Electronic applications are strongly preferred, Over the past decade, a third of its PhD graduates The University of Texas at San Antonio
but you may alternatively send resume, teach- have won tenure-track faculty positions, and its Faculty Positions in Computer Science
ing statement, research statement and names of alumni include leaders at major research labora-
three references to: tories such as Google, Microsoft, and IBM. The Department of Computer Science at The
Professor Karem A. Sakallah, Chair, CSE The University of Rochester is a private, Tier I University of Texas at San Antonio invites appli-
Faculty Search research institution located in western New York cations for tenure/tenure-track positions at the
Department of Electrical Engineering and state. The University of Rochester consistently Assistant, Associate or Professor level, starting
Computer Science ranks among the top 30 institutions, both public Fall 2010. All areas of computer science will be
University of Michigan and private, in federal funding for research and considered. We are particularly interested in can-
2260 Hayward Street development. Half of its undergraduates go on didates in systems software and algorithms.
Ann Arbor, MI 48109-2121 to post-graduate or professional education. The Required qualifications: Applicants for an As-
university includes the Eastman School of Music, sistant Professor position must have earned a Ph.D.
The University of Michigan is a Non-Discrimina- a premiere music conservatory, and the Univer- prior to September 1, 2010, in Computer Science or
tory/Affirmative Action Employer with an Active sity of Rochester Medical Center, a major medical in a related field and must demonstrate a strong po-
Dual-Career Assistance Program. The college is school, research center, and hospital system. The tential for excellence in research and teaching.
especially interested in candidates who can con- Rochester area features a wealth of cultural and Applicants for an Associate Professor position
tribute, through their research, teaching, and/or recreational opportunities, excellent public and must have a Ph.D. in Computer Science or related
service, to the diversity and excellence of the aca- private schools, and a low cost of living. field and should have an established research
demic community. Candidates should apply online at http:// program in their area of specialization.
www.cs.rochester.edu/recruit. Review of appli- Applicants for a Full Professor position must
cations will begin on Dec. 1, 2009, and continue have a Ph.D. in Computer Science or a related
University of North Texas until all interview openings are filled. The Uni- field and previous experience in graduate and
Department of Computer Science and versity of Rochester has a strong commitment undergraduate teaching and academic program
Engineering to diversity and actively encourages applications development as well as a recognized and well-
Department Chair from candidates from groups underrepresented funded program of research.
in higher education. The University is an Equal Responsibilities include research, teaching at
Applications and nominations are invited for Opportunity Employer. the graduate and undergraduate levels, and pro-
the Chair position in the Department of Com- gram development. Salary and start-up supporting
puter Science and Engineering at the University packages for the positions are highly competitive.
of North Texas. Candidates must have an earned University of South Carolina The Department of Computer Science cur-
doctorate in Computer Science and Engineering Department Chair - Computer Science and rently has 24 faculty members and offers B.S.,
or a closely related field with a record of signifi- Engineering M.S., and Ph.D. degrees supporting a dynamic
cant and sustained research funding and schol- The Department of Computer Science and and growing program with 450 undergraduate
arly output that qualifies them to the rank of full Engineering and 120 graduate students. The research activi-
professor. Candidates must also demonstrate a ties and experimental facilities have been well-
record of teaching, research accomplishments, Department Chair - Computer Science and En- supported by various federal research and infra-
and professional leadership. Preferred: Adminis- gineering The Department of Computer Science structure grants. See http://www.cs.utsa.edu for
trative experience as a department chair or direc- and Engineering (www.cse.sc.edu) in the Col- additional information on the Department of
tor of personnel working in computer science and lege of Engineering and Computing, University Computer Science and its faculty.
engineering; experience in curriculum develop- of South Carolina, seeks nominations and ap- With over 29,000 students UTSA is the largest
ment; and demonstrated experience mentoring plications for the position of Department Chair. university in South Texas. The city of San Antonio
junior faculty. A record of strategic planning and The Department offers bachelor’s degrees in has a population of over one million and is known
organizational adaptation as well as knowledge Computer Engineering, Computer Information for its rich Hispanic culture, historic attractions,
of academic standards and procedures required Systems, and Computer Science, M.S., M.E. and affordable housing, and excellent medical facili-
of accrediting agencies is also preferred. Ph.D. degrees in Computer Science and Engi- ties. The Austin-San Antonio corridor is a high-tech
The committee will begin its review of the ap- neering, a Master of Software Engineering, and center that serves as the home of many major com-
plications on November 1, 2009 and will continue a Certificate of Graduate Studies in Information puter companies. Nearby higher education and re-
until the search is closed. For additional informa- Assurance and Security. This is an active and en- search institutions include the UT Health Science
tion and to apply please visit: http://facultyjobs. gaged Department with 21 faculty members, in- Center and the Southwest Research Institute.
unt.edu/applicants/Central?quickFind=50503. cluding 20 with current research funding and 8 Applicants must submit a letter of applica-
Additional information about the department NSF CAREER award winners. Enrollment is over tion that identifies the level(s) of the position for
is available at www.cse.unt.edu. 300 undergraduate and 90 graduate students, in- which they wish to be considered. Applications
UNT is an AA/ADA/EOE. cluding more than 50 doctoral students. must also include a complete dated curriculum
Applicants must have outstanding leadership vitae (including employment, peer-reviewed pub-
and administrative skills, and credentials (in- lications and grants in chronological order), a
University of Rochester cluding a Ph.D. in computer science, computer statement of research interests, and the names,
Assistant to Full Professor of Computer engineering, or related field) commensurate addresses (postal and e-mail), and telephone
Science with appointment as a full professor with tenure. numbers of at least three references. Applicants
Nomination letters should include statements who are selected for interviews must be able to
The UR Department of Computer Science seeks regarding the nominee’s relevant credentials. Ap- show proof that they will be eligible and qualified
applicants for a tenure-track position for 2010. plicants should submit a current resume, a state- to work in the US by the time of hire. These posi-
Candidates in computer vision, machine learning, ment of professional interests and vision, and the tions are pending budget approval. Screening of
networks, security, or algorithms are of particular names, affiliations, and contact information of applications will begin on January 15, 2010 and
interest, but strong applicants from all areas of com- professional references. Applications will be ac- will continue until all positions are filled or the
puter science are welcome. Candidates must have cepted until the position is filled and should be search is closed. The University of Texas at San
a PhD in computer science or related discipline. sent by email to Antonio is an Affirmative Action/Equal Opportu-
Senior candidates should have an extraordinary re- cse-chair-search@cec.sc.edu. nity Employer. Women, minorities, veterans, and

DEC E MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | COM M U N I CAT ION S O F T H E ACM 107


CAREERS

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

108 COMM UNICATION S O F T H E AC M | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2


and applicants who have not requested in writing cant screening will begin January 15, 2010 and date is expected to build an externally-supported
that their identities be kept confidential, and of all continue until the position is filled. Inquiries research program, teach and mentor students at
finalists, will be released upon request. Employ- should be directed to Dennis Kafura, Hiring Com- the graduate and undergraduate levels, and fos-
ment will require a criminal background check. mittee Chair, kafura@cs.vt.edu. ter interdisciplinary interactions with colleagues
throughout the university. Candidates who would
contribute to enhancing diversity at the depart-
University of Wisconsin – Milwaukee Washington University in Saint Louis mental and university levels are strongly encour-
Health Informatics Professor Multiple tenure-track/tenured faculty positions aged to apply. Applications from academic cou-
ples are welcomed and encouraged.
9-month tenure-track Assistant, Associate or Full The Department of Computer Science and Engi- Qualified applicants should submit a com-
Professor. Program planning and management, neering (CSE) and the School of Medicine (WUSM) plete application (cover letter, curriculum vita,
teaching, advising students, developing and are jointly searching for multiple tenure-track research statement, teaching statement, and
maintaining an active line of research and seeking faculty members with outstanding records of names of at least three references) electronically
extramural funding. Apply URL: http://www.jobs. computing research and a serious interest in col- by following the directions provided at http://cse.
uwm.edu/applicants/Central?quickFind=50785 laborative research on problems related to biol- wustl.edu/faculty-recruiting/. Other communica-
ogy and/or medicine. Appointments may be made tions may be directed to Prof. Michael Brent, De-
wholly within CSE or jointly with the Departments partment of Computer Science and Engineering,
Ursinus College of Medicine or Pathology & Immunology. Campus Box 1045, Washington University, One
Assistant Professor of Computer Science A key initiative in the CSE Department’s stra- Brookings Drive, St. Louis, MO 63130-4899.
tegic plan is Integrating Computing and Science. Applications submitted before January 31,
Ursinus College, a liberal arts college located in As part of that initiative, we expect to make syn- 2010 will receive full consideration. Washington
the suburbs of Philadelphia, invites applications ergistic hires with a combined research portfolio University is an equal opportunity/affirmative ac-
for a tenure-track position in Computer Science. spanning the range from fundamental computer tion employer.
Please see http://www.ursinus.edu/NetCommu- science/engineering to applied research focused
nity/Page.aspx?pid=390 for more information. on science or medicine. Specific areas of interest
include, but are not limited to: Wellesley College
! Analysis of complex genetic, genomic, pro- Computer Science Department
Virginia Tech teomic, and metabolomic datasets; Norma Wilentz Hess Visiting Assistant
Department of Computer Science ! Theory/Algorithms with the potential for bio- Professor
Artificial Intelligence/Machine Learning medical applications;
Senior Position ! Image analysis or visualization with the poten- Wellesley College invites applications for a two-
tial for biomedical applications; year Norma Wilentz Hess Fellowship in the De-
The Department of Computer Science at Vir- ! Databases, medical informatics, clinical or partment of Computer Science. Funded at the
ginia Tech (www.cs.vt.edu) invites applications public-health informatics; Visiting Assistant Professor level, this fellowship
for a full-time tenured position at the Professor ! Computer engineering with applications to will help Wellesley maintain a flexible Computer
or Associate Professor rank from candidates in medicine or the natural sciences; Science curriculum that explores interdisciplin-
artificial intelligence with particular interests in ! All areas of computational biology and biomed- ary learning and new directions of special prom-
machine learning, knowledge representation, ical informatics ise. With a teaching load of one course per semes-
or data mining. Candidates should have an es- ter, the Hess Fellow will have ample opportunity
tablished record of scholarship, leadership, and These positions will continue a successful, for innovative course development and collabora-
collaboration in computing and interdisciplin- ongoing strategy of collaborative research be- tive teaching and research projects with Wellesley
ary areas; demonstrated ability to contribute to tween CSE and the School of Medicine, which faculty and students. The fellowship also includes
teaching at the undergraduate and graduate lev- is consistently ranked among the top 3 medi- support for travel, research, equipment, confer-
els in AI and related subjects; sensitivity to issues cal schools in the United States. CSE currently ence attendance, and other academic activities.
of diversity in the campus community; and the consists of 24 tenured and tenure-track faculty For more information about the department and
skills needed to establish and grow a multidisci- members, 71 Ph.D. students, and a stellar group the college, please visit http://cs.wellesley.edu.
plinary research group. of undergraduates with a history of significant Applicants should have a Ph.D (or be close
CS@VT has over 40 tenure-track research-ori- research contributions. The Department seeks to to completion) in Computer Science or a related
ented faculty. PhD production is among the top build on and complement its strengths in biologi- discipline. Strong candidates in any area of spe-
30 in the US and annual research expenditures cal sequence analysis, biomedical image analysis, cialty will be considered. We especially encour-
exceed $6 million. There are rich opportunities in and biomedical applications of novel computing age applicants in interdisciplinary fields such as
a highly collaborative department with strengths architectures. Exceptional candidates conduct- artificial intelligence, bioinformatics, human/
in HCI, HPC, CS education, digital libraries, com- ing research in other areas of Computer Science computer interaction, and ethical, educational,
putational biology and bioinformatics. Active are also encouraged to apply. social, and legal aspects of computing.
interdisciplinary research also explores Cyber- Washington University is a private university Interested applicants are requested to sub-
Arts, digital government, problem-solving envi- with roughly 6,000 full-time undergraduates and mit a letter of application, curriculum vitae, and
ronments. Emphases on security and personal 6,000 graduate students. It has one of the most at- names and email addresses of three references
health informatics are underway in collaboration tractive university campuses anywhere, and is locat- through our on-line application system at https://
with the newly formed VT-Carilion Research In- ed in a lovely residential neighborhood, adjacent to career.wellesley.edu. Include a statement dis-
stitute associated with the VT-Carilion School of one of the nation’s largest urban parks, in the heart cussing teaching philosophy and ideas for course
Medicine, opening in Fall 2010. of a vibrant metropolitan area. St. Louis is a won- development and research projects. Applications
CS@VT is part of the College of Engineering derful place to live, providing access to a wealth of will be reviewed starting January 11, 2010. If cir-
(www.eng.vt.edu) in a comprehensive research cultural and entertainment opportunities without cumstances make it impossible to submit any
university with more than 26,000 students. The the everyday hassles of the largest cities. materials electronically, you may email work-
main campus is in Blacksburg, which is consis- We anticipate appointments at the rank of ing@wellesley.edu for assistance. Questions con-
tently ranked among the country’s best places to Assistant Professor; however, in the case of ex- cerning the position should be directed by email
live (http://www.liveinblacksburg.com/). ceptionally qualified candidates appointments to Randy Shull at rshull@wellesley.edu.
Salary for suitably qualified applicants is com- at any rank may be considered. Applicants must Wellesley College is an Affirmative Action/
petitive and commensurate with experience. Vir- have a Ph.D. in computer science, computer en- Equal Opportunity Employer, and we are com-
ginia Tech is an Equal Opportunity/Affirmative gineering, electrical engineering, biomedical en- mitted to increasing the diversity of the college
Action Institution. gineering, or a closely related field and a record community and the curriculum. Candidates who
Applications must be submitted online to of excellence in teaching and research appropri- believe they can contribute to that goal are en-
https://jobs.vt.edu for posting #090529. Appli- ate to the appointment level. The selected candi- couraged to apply.

DECE MB E R 2 0 0 9 | VO L. 52 | N O. 1 2 | C OM M U N IC AT ION S O F T HE ACM 109


CAREERS

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

110 CO MM UNICATION S O F T H E AC M | D ECEM BE R 2009 | VO L . 5 2 | N O. 1 2


last byte

DOI:10.1145/1610252.1610278 Peter Winkler

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

DEC E MB E R 2 0 0 9 | VO L . 52 | N O. 1 2 | C OM M U N I C AT ION S OF T H E ACM 111


last byte

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.

DOI:10.1145/1610252.1610279 Joe Haldeman

Future Tense 1980, when the Apple II came out. I


bought one of the first, along with a
printer about the size and weight of a VW

Mightier Than the Pen Beetle. It used Doctor Memory as a word


processor; the letters were all scream-
ing capitals, with actual caps showing in
The computer reconfigures me. eye-straining white-on-black.
By today’s standards it was crude
I’VE BEEN A writer for 40 years, and my material for scholars—so they’ll write and slow, and it took a half-dozen big
attitude toward writing machines has papers on you and force their students fragile floppy disks to store a novel. But
never been simple. Right now I’m sit- to buy your books. what a feeling of power.
ting in a quiet one-room cabin in the I get a lot of esthetic, or at least craft, At least when it worked. You heard
Maine woods, writing in natural light pleasure out of writing an actual book. horror stories about a person touch-
with a fountain pen into a bound blank In front of my window in this little cabin ing the wrong key and losing an entire
book. I could have done that in the 19th is a cup holding a dozen different foun- novel. I once lost a chapter by hitting
century—or 5,000 years ago, if you trade tain pens and four different bottles of “Backspace” at the wrong time. I told
the fountain pen for a quill or stylus. ink. Each combination has its own per- my friends that this new machine was
But when the day’s writing is done, I sonality, and it’s fun to start out the day really great; no mere electric typewriter
pull out my featherweight MacBook Air making that small decision. could leap off your desk into a filing
and type the words from the book into a I’ve written about 20 books with this cabinet and eat a chapter of your novel.
text file. Then I port it over to NeoOffice collaboration between pen and com- One triumphant day I forced the
to get a word count for the day. puter, and although I love my pens and top off the Apple II, I think voiding the
I have various reasons to make it blank books with hobbyist zeal, if I had warranty, and swapped out a couple of
this complicated, but the main one is to choose between them and the com- chips and soldered in a third-party com-
simple: that hand-written draft is a true puter there would be no contest. The ponent—and suddenly I had lower-case
first draft. You can name a computer pens would have to go, even though letters, black on white, just like a type-
file “first draft,” but there’s no way to they’re so familiar they’re like part of writer but infinitely malleable. From
prove it was first. In fact, you would be a my hand. The computer is part of my then on I was crawling up the beach, the
very strange writer if you didn’t go back brain. It has reconfigured me. fish gulping air becoming the lizard be-
and forth, changing things, long before When I started writing, there weren’t coming the mammal and then the ape.
you finished the draft. any out-of-the-box word processors with- Sometime during the Age of Primates
Why should that make any differ- in the budget of a freelance writer. (Ste- the Internet and Web got into the evolu-
ence? Well, as a practical matter, some- phen King had an industrial-strength tionary stroll, and the computer was no
times you do get something right the Wang with a screen on a robot arm com- more a fancy typewriter than a human
first time. After a book’s gone through ing down from the ceiling.) If you were is a fancy chimp.
a half-dozen rewrites, it doesn’t hurt to good with hobbyist electronics, you About 15 discarded machines litter
look back and see whether the changes could cobble something together from that evolutionary beach, and it’s a long
were all for the better. Ohio Scientific or Radio Shack. But like way from the Sinclair that whistled into
There’s also the archival and finan- most writers, I had to wait until around a tape recorder to the superlight Frisbee
cial value of the physical document it- of a Mac Air that talks to satellites and
self. Even for a moderately well-known brings a huge and complex universe
writer like myself, the holographic Sometime during the into my rustic little shack.
(handwritten) manuscript of a novel is Evolution doesn’t end. The ape be-
worth thousands or tens of thousands Age of Primates the came the human, and now the human
of dollars. I’ve twice put handwritten Internet got into the is drawing pictures in the sand.
drafts of short stories up on eBay, and
collectors paid more than I got from evolutionary stroll. Joe Haldeman (haldeman@earthlink.net) is an adjunct
professor in the Program in Writing and Humanistic Studies
the magazine that printed them. In ad- at the Massachusetts Institute of Technology, Cambridge,
dition, if you’re egotistical enough to MA. His most recent novel is Marsbound. His novel
Camouflage won the Nebula Award for Best Novel in 2005.
want your work to last after you die, it’s
not a bad strategy to leave behind lots of © 2009 ACM 0001-0782/09/1200 $10.00

112 C O MM UNICATIONS O F T H E AC M | D EC EM BER 2009 | VO L . 5 2 | N O. 1 2


 http://fdg2010.org
http:

 


  
 

the International Conference on the
Foundations of Digital Games

(cc) (by =) Veronica Vale


June 19 - 21
2010
www.flickr.com/people/vbv/
Submission Deadlines
Papers & Posters: 5th Feb
www.flickr.com/people/fitzhugh

www.flickr.com/people/vasculata
(cc) (by \

Doctoral Consortium: 12th Feb


(cc) (by \$ =) Andrew Fitzhugh

Demos: 2nd April


$ =) Steve Schwartz

Asilomar Conference Grounds


Monterey, California, USA.

Learning in Games
Infrastructure (Databases,
Networks, Security) Game Design
Graphics & Interfaces

Artificial Intelligence Game Studies


Computer Science &
Games Education

Conference Chair: Ian Horswill, Northwestern University An Official Conference of the


Program Chair: Yusuf Pisan, University of Technology, Sydney Society for the Advancement of
Doctoral Consortium Chair: Zoran Popovic, University of Washington the Science of Digital Games

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

You might also like