Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
12
Computing Is the
Secret Ingredient
The Death of Big Software
Bitcoins Academic Pedigree
Q&A with John Hennessy
Association for
Computing Machinery
32nd IEEE May 21-25, 2018
International Parallel and Vancouver, British Columbia
Distributed Processing CANADA
Symposium
5 Editors Letter
Computing Is the Secret Ingredient
(well, not so secret)
By Andrew A. Chien
7 Cerfs Up
Now for Something
Entirely Different
By Vinton G. Cerf
14 33
8 BLOG@CACM
Building Tools to Help Students
Learn to Program 11 Perovskites Boost Solar-Cell Potential 20 The Profession of IT
Philip Guo summarizes his first New materials could allow cheaper, The Forgotten Engineer
three years of research into building more efficient solar cells for both Engineering has been marginalized by
tools to support those learning traditional and novel applications. the unhealthy belief that engineering
computer programming. By Don Monroe is the application of science.
By Peter J. Denning
23 Calendar 14 Gaming Machine Learning
Game simulations are driving 24 Broadening Participation
98 Careers improvements in machine learning Community Colleges: A Resource
for autonomous vehicles and for Increasing Equity and Inclusion
other devices. in Computer Science Education
Last Byte By Samuel Greengard Challenging a simplistic
pathway metaphor.
112 Q&A 17 Parallel Computational Thinking By Louise Ann Lyon and Jill Denner
Grooming the Leaders of Tomorrow Applications must be programmed
By Leah Hoffmann to process instructions in 27 Kode Vicious
parallel to take full advantage Cold, Hard Cache
of the new multicore processors. On the implementation and
By Keith Kirkpatrick maintenance of caches.
By George V. Neville-Neil
29 Viewpoint
The Death of Big Software
We are past the tipping point in
the transition away from 20th-century
big software architectures.
By Stephen J. Andriole
IMAGES BY ROCKSTA R GAM ES; A KUM A- PH OTO
33 Viewpoint
Lousy Advice to the Lovelorn
The 37% rule is rarely applicable
in real-world situations.
It is certainly entirely wrong-headed
Association for Computing Machinery
Advancing Computing as a Science & Profession as advice for getting married.
By Ernest Davis
Research Highlights
36 52
78 Technical Perspective
36 Bitcoins Academic Pedigree 52 Cybersecurity, Nuclear Security, Pricing Information
The concept of cryptocurrencies Alan Turing, and Illogical Logic (and Its Implications)
is built from forgotten ideas in Cyber deterrence, like nuclear By Aaron Roth
research literature. deterrence, depends on our
By Arvind Narayanan and Jeremy Clark adversaries being rational enough 79 A Theory of Pricing Private Data
to be deterred by our threats By Chao Li, Daniel Yang Li,
46 XML and JSON Are Like Cardboard but us not by theirs. Gerome Miklau, and Dan Suciu
Cardboard surrounds and protects By Martin E. Hellman
stuff as it crosses boundaries. 87 Technical Perspective
By Pat Helland Watch the author discuss A Simple, Elegant Approach
his work in this exclusive
Communications video.
to Non-Numeric Parallelization
48 Research for Practice: https://cacm.acm.org/videos/ By James Larus
cybersecurity-nuclear-
Vigorous Public Debates in security-alan-turing-and-
Academic Computer Science illogical-logic 88 Automatically Accelerating
Expert-curated guides to Non-Numerical Programs by
the best of CS research. 60 Technology-Driven Changes Architecture-Compiler Co-Design
By John Regehr in Work and Employment By Simone Campanoni,
Even when surrounded by Kevin Brownell, Svilen Kanev,
Articles development led by ubiquitous computing, humans Timothy M. Jones, Gu-Yeon Wei,
queue.acm.org
should be encouraged to do what and David Brooks
they do better than machines.
By Ramiro Montealegre
and Wayne F. Cascio
IMAGES BY INK ED PIXELS; A NDRIJ BORYS ASSO CIATES
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 todays 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 worlds largest educational STA F F EDITORIAL BOARD ACM Copyright Notice
and scientific computing society, delivers DIRECTOR OF PU BL ICATIONS E DITOR- IN- C HIE F Copyright 2017 by Association for
resources that advance computing as a Scott E. Delman Andrew A. Chien Computing Machinery, Inc. (ACM).
science and profession. ACM provides the cacm-publisher@cacm.acm.org eic@cacm.acm.org Permission to make digital or hard copies
computing fields premier Digital Library of part or all of this work for personal
and serves its members and the computing Deputy to the Editor-in-Chief or classroom use is granted without
Executive Editor Lihan Chen
profession with leading-edge publications, fee provided that copies are not made
Diane Crawford cacm.deputy.to.eic@gmail.com
conferences, and career resources. or distributed for profit or commercial
Managing Editor
advantage and that copies bear this
Thomas E. Lambert S E NIOR E DITOR
Executive Director and CEO notice and full citation on the first
Senior Editor Moshe Y. Vardi
Bobby Schnabel page. Copyright for components of this
Andrew Rosenbloom
Deputy Executive Director and COO work owned by others than ACM must
Senior Editor/News NE W S
Patricia Ryan be honored. Abstracting with credit is
Lawrence M. Fisher Co-Chairs
Director, Office of Information Systems permitted. To copy otherwise, to republish,
Web Editor William Pulleyblank and Marc Snir
Wayne Graves to post on servers, or to redistribute to
David Roman Board Members
Director, Office of Financial Services lists, requires prior specific permission
Rights and Permissions Monica Divitini; Mei Kobayashi;
Darren Ramdin and/or fee. Request permission to publish
Deborah Cotton Michael Mitzenmacher; Rajeev Rastogi;
Director, Office of SIG Services from permissions@hq.acm.org or fax
Editorial Assistant Franois Sillion
Donna Cappo (212) 869-0481.
Jade Morris
Director, Office of Publications
Scott E. Delman VIE W P OINTS For other copying of articles that carry a
Art Director Co-Chairs code at the bottom of the first or last page
Andrij Borys Tim Finin; Susanne E. Hambrusch; or screen display, copying is permitted
ACM CO U N C I L John Leslie King; Paul Rosenbloom
Associate Art Director provided that the per-copy fee indicated
President Board Members
Margaret Gray in the code is paid through the Copyright
Vicki L. Hanson Stefan Bechtold; Michael L. Best;
Assistant Art Director Clearance Center; www.copyright.com.
Vice-President Judith Bishop; Mark Guzdial;
Cherri M. Pancake Mia Angelica Balaquiot
Production Manager Richard Ladner; Carl Landwehr; Subscriptions
Secretary/Treasurer Beng Chin Ooi; Loren Terveen;
Bernadette Shade An annual subscription cost is included
Elizabeth Churchill Marshall Van Alstyne; Jeannette Wing
Advertising Sales Account Manager in ACM member dues of $99 ($40 of
Past President
Ilia Rodriguez which is allocated to a subscription to
Alexander L. Wolf
Communications); for students, cost
Chair, SGB Board P R AC TIC E
is included in $42 dues ($20 of which
Jeanna Matthews Columnists Chair is allocated to a Communications
Co-Chairs, Publications Board David Anderson; Phillip G. Armour; Stephen Bourne and Theo Schlossnagle subscription). A nonmember annual
Jack Davidson and Joseph Konstan Michael Cusumano; Peter J. Denning; Board Members subscription is $269.
Members-at-Large Mark Guzdial; Thomas Haigh; Eric Allman; Samy Bahra; Peter Bailis;
Gabriele Anderst-Kotis; Susan Dumais; Leah Hoffmann; Mari Sako; Terry Coatta; Stuart Feldman; Nicole Forsgren; ACM Media Advertising Policy
Elizabeth D. Mynatt; Pamela Samuelson; Pamela Samuelson; Marshall Van Alstyne Camille Fournier; Benjamin Fried; Communications of the ACM and other
Eugene H. Spafford Pat Hanrahan; Tom Killalea; Tom Limoncelli; ACM Media publications accept advertising
SGB Council Representatives Kate Matsudaira; Marshall Kirk McKusick;
C O N TAC T P O IN TS in both print and electronic formats. All
Paul Beame; Jenna Neefe Matthews; Erik Meijer; George Neville-Neil;
Copyright permission advertising in ACM Media publications is
Barbara Boucher Owens Jim Waldo; Meredith Whittaker
permissions@hq.acm.org at the discretion of ACM and is intended
Calendar items to provide financial support for the various
BOARD C HA I R S
calendar@cacm.acm.org C ONTR IB U TE D A RTIC LES activities and services for ACM members.
Education Board Co-Chairs Current advertising rates can be found
Change of address
Mehran Sahami and Jane Chu Prey James Larus and Gail Murphy by visiting http://www.acm-media.org or
acmhelp@acm.org
Practitioners Board Board Members by contacting ACM Media Sales at
Letters to the Editor
Terry Coatta and Stephen Ibaraki William Aiello; Robert Austin; (212) 626-0686.
letters@cacm.acm.org
Elisa Bertino; Gilles Brassard; Kim Bruce;
REGIONA L C O U N C I L C HA I R S Alan Bundy; Peter Buneman; Carl Gutwin; Single Copies
W E B S IT E
ACM Europe Council Yannis Ioannidis; Gal A. Kaminka; Single copies of Communications of the
http://cacm.acm.org
Dame Professor Wendy Hall Ashish Kapoor; Kristin Lauter; Igor Markov; ACM are available for purchase. Please
ACM India Council Bernhard Nebel; Lionel M. Ni; Adrian Perrig; contact acmhelp@acm.org.
Srinivas Padmanabhuni AU T H O R G U ID E L IN ES
Marie-Christine Rousset; Krishan Sabnani;
ACM China Council http://cacm.acm.org/about-
Ron Shamir; Alex Smola; Josep Torrellas; COMMUN ICATION S OF THE ACM
Jiaguang Sun communications/author-center
Michael Vitale; Hannes Werthner; (ISSN 0001-0782) is published monthly
Reinhard Wilhelm by ACM Media, 2 Penn Plaza, Suite 701,
PUB LICATI O N S BOA R D New York, NY 10121-0701. Periodicals
ACM ADVERTISIN G DEPARTM E NT
Co-Chairs RES E A R C H HIGHLIGHTS postage paid at New York, NY 10001,
2 Penn Plaza, Suite 701, New York, NY
Jack Davidson; Joseph Konstan Co-Chairs and other mailing offices.
10121-0701
Board Members Azer Bestavros and Gregory Morrisett
T (212) 626-0686
Phoebe Ayers; Karin K. Breitman; Board Members POSTMASTER
F (212) 869-0481
Terry J. Coatta; Anne Condon; Nikil Dutt; Martin Abadi; Amr El Abbadi; Sanjeev Arora; Please send address changes to
Roch Guerrin; Chris Hankin; Carol Hutchins; Michael Backes; Maria-Florina Balcan; Communications of the ACM
Yannis Ioannidis; Michael L. Nelson; Advertising Sales Account Manager Andrei Broder; Doug Burger; Stuart K. Card; 2 Penn Plaza, Suite 701
M. Tamer Ozsu; Eugene H. Spafford; Ilia Rodriguez Jeff Chase; Jon Crowcroft; Alexei Efros; New York, NY 10121-0701 USA
Stephen N. Spencer; Alex Wade; ilia.rodriguez@hq.acm.org Alon Halevy; Sven Koenig; Steve Marschner;
Keith Webster; Julie R. Williamson Tim Roughgarden; Guy Steele, Jr.;
Printed in the U.S.A.
Media Kit acmmediasales@acm.org Margaret H. Wright; Nicholai Zeldovich;
ACM U.S. Public Policy Office Andreas Zeller
1701 Pennsylvania Ave NW, Suite 300,
Washington, DC 20006 USA WEB
T (202) 659-9711; F (202) 667-1066 Association for Computing Machinery Chair
(ACM) James Landay
Computer Science Teachers Association 2 Penn Plaza, Suite 701 Board Members A
SE
REC
Y
Deborah Seehorn, New York, NY 10121-0701 USA Marti Hearst; Jason I. Hong;
E
CL
PL
Interim Executive Director T (212) 869-7440; F (212) 869-0481 Jeff Johnson; Wendy E. MacKay
NE
TH
S
I
Z
I
M AGA
P
ERHAPS YOU REMEMBER the and now an explosion of change. An ini- promote high-quality STEM and com-
iconic theme of the globally tial burst of innovation around electronic puter science education curriculum
popular Kung Fu Panda currencies that improve Bitcoin to create and programs in high schools.
movies, You are the secret currencies with different properties con- While these are just three, there are
ingredient! This meant that tinues to make waves, sparking new ac- doubtless many more, and I would love
self-belief is important and with it tivity, government regulation, and in to hear about them!
great things can be achievedPo, for some cases outright bans. Over time, in- Computing is more important than
example, became the Dragon Warrior. novation has matured and broadened ever and driving disruptive change. But
My meaning here is that computer sci- into a staggering breadth of applications its also moving faster than ever because
ence is both a powerful enabler of rap- based on the core disruptions that de- of so many creative and innovative com-
id advances in all intellectual fields centralized trust represents. Reformu- puting professionals, huge capabilities
and a disruptor driving furious revolu- lated business and government activities in chips and massive clouds, and com-
tions in commerce and society world- around a distributed, trusted ledger panies with extraordinary scope and
wide. Computer science is more impor- abound, including new approaches to ability to drive innovation. One of the
tant and potent than ever! provenance, decentralized markets, and giants of our field, the late Jim Gray,
Computing is driving unprecedent- a host of financial applications, but few said in his 1999 Turing lecture, Boy,
ed rapid change. One cluster of revolu- examples of the structural disruptions we thought computing was moving
tions is around artificial intelligence from centralized to distributed trust that fast in the 70s and 80s, but its really
(AI) and machine learning. Every day blockchain is driving. moving fast now. I believe the rate of
brings evidence of the rapidly growing Equally exciting are efforts to recast change that computer science is ad-
capabilities in AI, driven by a host of al- foundational Internet services such as vancing more rapidly and driving
gorithmic advances, but notably ma- DNS on blockchain ideas. The Internet more change in society today and
chine learning, to perform tasks here- was conceived as the decentralized net- with dramatically broader scope.
tofore exclusively the province of work of peers, but the design of core ser- So, sit back for a moment these holi-
humankind. With high-profile applica- vices, such as DNS, have always depended days as a computing professional and
tions such as speech, question and an- on trusted servicesand organizations. revel in where we are, and think about
swer systems, image and face recogni- Reinventing these services decentralized the exciting opportunitiesand re-
tion, robotics with growing autonomy trust presents a radical new future for sponsibilitieswe have before us!
and flexibilityincluding self-driving these and perhaps many types of Internet
cars, deep ocean exploration, and services and distributed systems. Andrew A. Chien, EDITOR-IN-CHIEF
space explorationsociety is broadly While these two clusters of revolu-
aware of AIs growing capabilities. And tions are enabled by generations of Andrew A. Chien is the William Eckhardt Distinguished
Service Professor in the Department of Computer Science
worldwide, industry is ablaze in virtu- Moores Law and large-scale distributed at the University of Chicago, Director of the CERES Center
ally every sector with the specter of dis- systems, its notable that the essence of for Unstoppable Computing, and a Senior Scientist at
Argonne National Laboratory.
ruptive, radical new opportunities. each is algorithmic advances and break-
Further, as AI capabilities push throughs. Algorithms are in the essen-
References
computing into new domains, there is tial core of the field of computer science. 1. ACM and Partners Release Framework for Computer
growing concern2 in economic, policy, A third revolution is the growing rec- Science Education in U.S. K12 Schools, Oct. 18, 2016.
2. De Lange Conference on Humans, Machines, and the
and computing communities about ognition that computer science is a Future of Work, Dec. 5, 2016
the potential impact on employment, fundamental element of secondary ed- 3. United Kingdom Department of Education. Statutory
Guidance: National Curriculum in England: Computing
types of work, and global competition. ucation. Recent signs include formal Programmes of Study, Sept. 11, 2013
A second cluster of revolution is adoption of computer science educa- 4. U.S.A. Presidential Memorandum on Creating
Pathways to Jobs by Increasing Access to
around blockchain and decentralized tion guidelines for primary and sec- High-Quality Science, Technology, Engineering, and
trust. The advent of Bitcoin has produced ondary education in the U.K.,3 an ACM- Mathematics and Computer Science Education.
Sept. 25, 2017.
a cascade of academic research, startup Industry vision,1 and a $200M U.S.
experimentation, industrial innovation, Department of Education program1 to Copyright held by author.
DOI:10.1145/3155226
L
A M E N T I N G T H AT CS students reading code for such tests. 15 other individuals established The
are often not exposed to best Focus on reading, understanding, Pledge of the Computing Professional
practices in the classroom, and adding value to existing systems, a (http://computing-professional.org/)
software engineer Thomas A. practice much more common in software to recognize graduates of computing
Limoncelli offered advice for engineering than greenfield develop- programs as professionals in service
serving students better in his article ment. ESaaS includes a two-part home- to society, as the Order of the Engineer
Four Ways to Make CS and IT More work assignment on enhancing legacy (http://www.order-of-the-engineer.
Immersive (Oct. 2017). We agree code, but, more valuable for students, org/) does with graduates of U.S. engi-
with that sentiment, as we reported an increasing fraction of available neering programs. Today, 38 institu-
in our Viewpoint Crossing the Soft- team projects for nonprofits under- tions in the U.S. conduct the Pledges
ware Education Chasm (May 2012), taken in Berkeleys version of the rite-of-passage ceremony as part of
describing development of a course course10 of 11 projects in Summer their graduation activities. Graduates
very much in line with Limoncellis 2017 and 13 of 20 projects in Fall taking the Pledge sign a certificate
recommendations. We continue to 2017are functioning legacy systems both publicly and in the presence of
welcome instructors to use our course in need of additional features. Agile- their peers and are then presented
materials and approach for Engineer- Ventures, a U.K. nonprofit with which with a pin to remind them of their
ing Software as a Service, or ESaaS, we work closely and whose developer- commitment to self-accountability
originally developed at the University training programs closely follow the through ethical and moral behavior
of California, Berkeley, as a way to fol- ESaaS pedagogy and methodology, within the profession.
low Limoncellis guidelines: also curates a portfolio of such legacy The Pledge has been endorsed by
Use best-of-breed dev/ops tools from systems to support its mission of the Order of the Engineer, the ACM
the start. In our ESaaS course, stu- training developers to contribute to Special Interest Group on Computers
dents use Git from day one, including open-source projects in agile teams, and Society, and the ACM Committee
(in their open-ended design project) as do several other colleges using our on Professional Ethics. We would wel-
badges for coverage, CodeClimate, materials. come a more comprehensive collabora-
and continuous integration. We applaud Limoncelli for urging tion with ACM toward our mutual goal
Homework programs, even Hello CS instructors to more closely track of promoting the attributes of deep
World, should generate Web pages, not best practices in industry. We invite technical expertise, essential, valued,
text. This requires some minimum students and instructors to try our societal contribution, and the need to
understanding of SaaS architecture, free two-part (soon three-part) MOOC adhere to high ethical and technical
languages, and moving parts. ESaaSs sequencecalled Agile Development standards characteristic of the noblest
week-two assignment requires that Using Ruby on Railson edX and in- ambitions of the profession.
students modify and deploy to the vite instructors to avail themselves of For more on the Pledge, see http://
public cloud a simple SaaS app built the wealth of instructor materials computing-professional.org/ or con-
with the Sinatra framework. The goal available through http://www.saas- tact us directly.
is to get them thinking SaaS early on book.info/, including auto-graders to ohn K. Estell, Ada, OH, and
J
by addressing several questions: How relieve them of having to manually Ken Christensen, Tampa, FL
is state persisted? How does the app grade these realistic assignments.
interact with the user? How do routes Armando Fox and David Patterson,
and URIs map to actions the user Berkeley, CA, and Communications welcomes your opinion. To submit a
Letter to the Editor, please limit yourself to 500 words or
wants to take? And how can apps be Sam Joseph, Harrow, U.K. less, and send to letters@cacm.acm.org.
structured as a set of RESTful resourc-
es and operations?
Curricula should start with a work- Inspire Ethical Behavior
ing system that reflects best practices, Within the Profession
not just build from low-level to higher- In his Editors Letter Computing Is a
level abstractions. The same assign- Profession (Oct. 2017), Editor In
ment requires that students examine Chief Andrew A. Chien said those in
the code of a simple Sinatra app that computing should welcome, educate,
demonstrates good coding practices, and mentor new generations, not just
including integration and unit tests as programmers but as professionals.
before being introduced to creating or We agree. That is why, in 2010, we and 2017 ACM 0001-0782/17/12
D
E PA R T I N G F R O M M Y usual objects even weirder than they were filter good information from bad in all
stream of consciousness, when they were first predicted to ac- sources, but especially in our increas-
this column is about three count for conservation of mass/ener- ingly online world.
books I have just read: gy in subatomic interactions. While In Deep Future, Curt Stager, a cli-
Bullsh*t,a Future Babbleb Grant does not deal with neutrinos, matologist, lays out the consequenc-
and Deep Future.c The first two get at he does cope with endless examples es of global warming, citing credible
the proliferation of wrong but persua- of junk science, bogus claims, wacky reasons for human contribution to
sive assertions about the past, pres- theories, and general human stupid- increased greenhouse gases that
ent, or future. The last one appeals ity to quote the subtitle of his book. trap heat in the atmosphere. The au-
to logic and humility. I draw them to In Future Babble, Dan Gardner goes thors most interesting observations
your attention because I found them to great lengths to explain the dynam- takes us 55 million years into the
usefully thought-provoking and often ics and even fundamental aspects of past when the so-called Paleocene-
very clarifying. human nature that lead us to accept Eocene Thermal Maximum (PETM)f
In Bullsh*t, John Grant systemati- predictions that prove to be wrong. produced a warming period last-
cally demolishes a wide range of mis- He explains Paul Ehrlichs elevation ing about 200,000 years after which
taken beliefs and illustrates human and recognition (that is, many prizes Earth was returned to its previously
foibles that often lead us to believe and awards) for his Population Bombd scheduled ice age. Stager uses a sig-
the unbelievable because we want book and the subsequent failure of nificant body of scientific evidence
to, not because the arguments for most of his predictions to material- to show how increased atmospheric
somehow outweigh the arguments ize. Gardner presents examples of the carbon content produced measur-
against. In a world filled with mis- rationalizations that lead people to able and significant increases in
information (whether intentional or cling to favored theories and beliefs. average temperature and increased
out of ignorance), disinformation, He distinguishes hedgehogs from ocean acidity with consequences for
and scientific theories that have foxes in that the hedgehog knows flora and fauna. A surprise for me
been falsified by new experimental only one thing and is certain of it was his observation that the warm-
evidence, we need all the tools we (and conveys this conviction emphat- ing we have apparently launched
can muster to put claims to rigorous ically) and the foxes know they dont may actually postpone the next ice
test. This takes real work and even know everything and are prepared age (predicted to come in about
some pain as some favorite notion to cope with discovering error and 50,000 years based on detectable
is undermined by counterevidence. adapting to it. We learn what it is the cycles) for up to 400,000 years. He
Good science demands that we be hedgehogs project that induces some points out that ice ages may be far
prepared to abandon long-held be- to believe them and not others who more damaging to human society
liefs when confronted by new facts. have humility in the face of unknown than global warming despite the
Once it was thought that neutrinos unknowns.e We crave certainty and predicted and very negative side ef-
had no mass, now we find they have predictability and uncertainty makes fects of the latter.
very small, variable mass and the us uncomfortable. Even our brains try If you read any of these, let me know
various flavors of neutrinos oscillate hard to find patterns in noise to make what you think.
from one flavor to another while trav- sense of the world around us.
eling from their origins. Current evi- Both of these books should be re- f https://en.wikipedia.org/wiki/
dence makes extremely lightweight quired reading for people struggling to Paleocene%E2%80%93Eocene_Thermal_Max-
imum
DOI:10.1145/3148245 http://cacm.acm.org/blogs/blog-cacm
to Help Students
by female programmers when seek-
ing and providing help on the popular
Stack Overflow question-and-answer
2. Designing new kinds of a term called command-line BS-ery to rate, informative, and even contained
programming environments refer to these sources of extrinsic com- insights that expert instructors missed.
to support learners. plexity that demoralize novices. To Back to eliminating command-line
Current programming environments help remove these complexities, Jer- BS-ery, my student Alok Mysore and
are designed to maximize the produc- emy Warner and I created CodePilot,2 I created Torta4, a macOS app that al-
tivity of professionals who are already a programming environment that lets lows users to create step-by-step tu-
experts. Instead, Ive been creating new novices quickly get started with pair torials that span multiple command-
environments to address the unique programming and test-driven devel- line and GUI applications by simply
challenges faced by novice program- opment by integrating real-time col- demonstrating the intended actions
mers, which can hopefully ease their laborative coding, testing, bug report- on their computers. The Torta system:
path to eventually becoming experts. ing, and version control management a) automatically records a screencast
First, I built a series of tools to help into a single unified system. Similarly, video along with relevant operating
novices overcome a fundamental bar- my student Xiong Zhang and I created system events, b) generates a new kind
rier to learning programming: under- DS.js,5 which lets novices get started of mixed-media tutorial with the ben-
standing what happens under the learning data science by writing code efits of both video and text formats,
hood as the computer runs each line to analyze data directly on any web- and c) gives step-by-step feedback
of source code. These tools are all built page instead of needing to download to people who are following the tutorial
on top of the Python Tutor Web-based datasets and configure analysis soft- and automatically runs certain steps.
programming environment (http://py- ware on their own computers.
thontutor.com/) that I created in 2010.16 References
1. Guo, PJ. Older Adults Learning Computer Programming:
Python Tutor (despite its outdated 3. Designing new formats Motivations, Frustrations, and Design Opportunities, CHI
name!) lets users write code in lan- for programming-related 2017. (Honorable Mention Paper Award)
2. Warner, J., and Guo, P.J. CodePilot: Scaffolding End-to-
guages such as Python, Java, C, C++, instructional materials. End Collaborative Software Development for Novice
Programmers, CHI 2017.
Java-Script, TypeScript, and Ruby; it My third major research direction in- 3. Warner, J., and Guo, P.J. Hack.edu: Examining How
runs the users code and automatically volves studying the shortcomings of College Hackathons Are Perceived By Student
Attendees and Non-Attendees. ICER 2017.
visualizes what the computer is doing existing formats for programming-re- 4. Mysore, A., and Guo, P.J. Torta: Generating Mixed-
step-by-step. So far, over 3.5 million lated instructional materials and then Media GUI and Command-Line App Tutorials Using
Operating-System-Wide Activity Tracing. UIST 2017.
people from over 180 countries have designing new instructional formats 5. Zhang, X., and Guo, P.J. DS.js: Turn Any Webpage into
used Python Tutor to understand and that improve the user experience an Example-Centric Live Programming Environment
for Learning Data Science. UIST 2017. (Honorable
debug their code. for both creators and consumers of Mention Paper Award)
I extended Python Tutor with a those materials. 6. Kang, H., and Guo, P.J. Omnicode: A Novice-Oriented
Live Programming Environment with Always-On Run-
real-time collaborative mode called My students and I analyzed all of Time Value Visualizations. UIST 2017.
Codechella12, which lets multiple us- the discussion forum messages in a 7. Drosos, I., Guo, P.J., and Parnin, C. HappyFace:
Identifying and Predicting Frustrating Obstacles for
ers connect to the same visualization popular programming MOOC 14 and Learning Programming at Scale. VL/HCC 2017.
session and work together to solve also how people navigated a comput- 8. Ford, D., Smith, J., Guo, P.J., and Parnin, C. Paradise
Unplugged: Identifying Barriers for Female
programming problems and tutor one er programming digital textbook.15 Participation on Stack Overflow. FSE 2016.
another. I followed up on these ideas We found that people often wanted 9. Chilana, P.K., Singh, R., and Guo, P.J. Understanding
Conversational Programmers: A Perspective from the
with Codeopticon11, a real-time ac- to discuss runtime code execution Software Industry. CHI 2016.
10. Chilana, P.K., Alcock, C., Dembla, S., Ho, A., Hurst,
tivity monitoring dashboard that al- state but had lots of trouble doing so A., Armstrong, B., and Guo, P.J.Perceptions of Non-
lows a single tutor to simultaneously since forums are purely text-based. CS Majors in Intro Programming: The Rise of the
Conversational Programmer. VL/HCC 2015.
watch dozens of people working on From these findings, we propose 11. Guo, P.J. Codeopticon: Real-Time, One-To-Many Human
the Python Tutor website and jump that a better discussion forum for Tutoring for Computer Programming. UIST 2015.
12. Guo, P.J., White, J., and Zanelatto, R. Codechella:
in to tutor multiple learners at once. learning programming should in- Multi-User Program Visualizations for Real-Time
My student Hyeonsu Kang and I then tegrate automatically generated vi- Tutoring and Collaborative Learning. VL/HCC 2015.
13. Gordon, M., and Guo, P.J.Codepourri: Creating
morphed Python Tutor into Omni- sualizations of execution state and Visual Coding Tutorials Using A Volunteer Crowd Of
code,6 a live programming environ- enable inline annotations of source Learners. VL/HCC 2015.
14. Zhu, J., Warner, J., Gordon, M., White, J., Zanelatto,
ment that continually visualizes the code and output. R., and Guo, P.J.Toward a Domain-Specific
entire history of all program values to My student Mitchell Gordon and I Visual Discussion Forum for Learning Computer
Programming: An Empirical Study of a Popular MOOC
give programmers a birds-eye view of created Codepourri,13 a new tutorial Forum. VL/HCC 2015.
execution. With Chris Parnin and our format and crowdsourcing workflow 15. Warner, J., Doorenbos, J., Miller, B.N., and Guo, P.J.
How High School, College, and Online Students
student Ian Drosos, we created Happy- that lets Python Tutor users work to- Differentially Engage with an Interactive Digital
Face,7 a medically inspired pain scale gether to create step-by-step tutorials Textbook. EDM 2015.
16. Guo, P.J. Online Python Tutor: Embeddable Web-
embedded into Python Tutor to let us- by directly annotating runtime code Based Program Visualization for CS Education.
SIGCSE 2013.
ers self-report their frustration levels. visualizations. Since there are far more
The second set of challenges that I learners than experts, using learners
Philip Guo is an assistant professor of cognitive science
tackle here relates to the fact that nov- as a volunteer crowd of workers is a at the University of California, San Diego. His research
ices have trouble installing, configur- potentially more scalable way to create spans human-computer interaction, online learning, and
computing education. Learn more at http://pgbovine.net/
ing, and managing the complex array coding tutorials than relying solely on
of software tools required to become experts. We found that crowd-created
productive as programmers. I coined tutorials for simple code were accu- 2017 ACM 0001-0782/17/12 $15.00
Perovskites Boost
Solar-Cell Potential
New materials could allow cheaper, more efficient
solar cells for both traditional and novel applications.
O
VE R T H E PAST five years, rap-
id progress in photovoltaic
technology has been fur-
ther accelerated by materi-
als called perovskites. They
require only common ingredients and
relatively easy manufacturing meth-
ods, holding out the possibility of
cheap thin-film cells on a variety of sur-
faces or combined with silicon in large
panels. In the laboratory, small-area
cells made with these materials already
feature solar-conversion efficiencies as
high as 22%, rivaling those of tradition-
al silicon solar cells.
Ive been in the business since the
late 70s, said David Cahen, a chemist
and materials scientist at the Weiz- Material structure sketching the stacking of nanometer-thick layers of two-dimensional
mann Institute in Rehovot, Israel. This perovskite and organic spacing layers.
is a time of developments in solar cells
and photovoltaics that is unprecedent- toxicity from lead in the materials, they the octahedra. The octahedra can easily
IMAGE COURTESY OF LOS A L AM OS NATIONA L L ABORATORY
ed, including new materials, efficiency may not be able to avoid a public per- rotate while maintaining contact at
improvements, and cost reductions. ception of danger. their corners, giving perovskites unusu-
But there has not been anything like But perovskites potential is clearly al properties that have long been ex-
this one, he said. The perovskites shaking up the field. ploited in specialized applications.
have put all of those into shadow. Lithium niobate, for example, acts both
A practical technology will require A New Twist as a piezoelectric transducer between
further engineering for large-scale Perovskites are a well-known family of electrical and mechanical signals and
manufacture and long-term stability, materials whose crystals consist of a lat- in high-speed optical modulators for
and there are still open scientific ques- tice of octahedra, each comprising six telecommunications. In the new mate-
tions. Moreover, although researchers negative ions around a positive ion, with rials, the arrangement follows these
think they can avoid environmental a second positive ion in the gap between rules, but the ingredients are different.
The first hints of the solar-cell po- ate a negatively charged electron into structure of the material. In many semi-
tential of perovskite semiconductors the empty band, leaving behind a posi- conductors, he noted, one can regard
came from Japan in 2009, but research- tively charged hole. the bandgap as reflecting the energy
ers really took notice in 2012 with the If the electron and hole make their separation of bonding and anti-
report of cells having an efficiency of way to opposite electrodes connected to bonding combinations of states on
about 8%. In these hybrid organic-inor- the material, they provide that energy to neighboring atoms, so broken bonds at
ganic lead-halide perovskites, the sec- the outside world as an electric current. a defect create states with energy in the
ond positive ion is generally a large or- The voltage at which this current is sup- middle of the bandgap, where they are
ganic (carbon-containing) molecule, plied is limited by the bandgap (mea- most troublesome. In the perovskites,
while the octahedra consist of lead sured in electron-volts). If the photon by contrast, McGehee says the gap has a
(sometimes tin) surrounded by halo- has more energy than this, the excess is different origin, and defect states do
gen ions (from Group VII of the peri- lost as heat, while photons with too little not promote recombination.
odic table, commonly iodine). energy to span the bandgap simply pass Whatever the theoretical explana-
There are reasons why they escaped through without being absorbed. Be- tion, experimenters have already
peoples attention, said Michael McGe- cause sunlight includes photons with a pushed the efficiency of a single
hee, a professor of Materials Science and wide range of energies, the electrical perovskite cell above 22%, compared to
Engineering at Stanford University in power output of a single cell cannot ex- almost 27% achieved for the best crystal-
Palo Alto, CA. They have an inorganic as- ceed about 33% of the light energy. line silicon cells after decades of work.
pect to them and then they have an organ- However, the actual efficiency is al-
ic ion in there as well. The current work- ways lower than this theoretical limit. Cool Manufacturing
horse solar-cell material is silicon, carved One reason is that an electron can refill Beyond their high efficiency, hybrid
from large single-crystal wafers, although an empty state, locally recombining perovskites have other useful features:
other inorganic materials are also em- with a hole, rather than traversing the ex- their ingredients are abundant, and thin
ployed. Organic semiconductors, similar ternal circuit. This process occurs much films can be formed near room tempera-
to those in some LED displays, also make faster when there are electronic states in ture by either liquid- or vapor-based pro-
good solar cells, and can be deposited the bandgap, an energy range that would cessing. These properties should make
near room temperatures. But the hybrid ideally be empty. A key feature of the hy- them inexpensive to create compared to
perovskites are very different than ei- brid-perovskite materials is that they silicon crystals grown at very high tem-
ther of these, McGehee said. seem to have few electrically active de- peratures. Still, Henry Snaith, a physicist
Importantly, hybrid perovskites en- fects. The resulting long lifetime before at the University of Oxford, cautions that
compass a whole class of materials, de- recombination, together with speedy quality and uniformity are at least as im-
pending on which components are motion of electrons and holes, makes it portant as equipment cost for large-
combined in the crystal framework. By easier to approach the ideal efficiency. scale production.
combining different metal, halogen, Cahen suspects that defects are rare Low-temperature processing also
and organic components, researchers in perovskites because of their soft, allows deposition of thin-film photo-
can tune the materials optical and elec- floppy crystal structure, which he re- voltaics on surfaces that could not tol-
tronic properties, as well as the chemi- gards as dynamically disordered, and erate high heat. For example, emerging
cal interactions that form the complete possibly even self-healing. McGehee, applications known as building-inte-
device. There are many thousands of by contrast, said that the material is grated photovoltaics (BIPV) encom-
materials, McGehee said, and, ac- full of defects, but that the defects are pass solar cells deposited directly on
counting for electrode and interface not a problem because of the chemical roof shingles or on the window glass of
materials needed for a complete device, an office tower, where they generate
millions of combinations. power while letting some light through.
By combining These applications inspired Snaith to
Harvesting Photons start a company called Oxford Photovol-
Extraction of electrical energy from sun- different metal, taics in 2010 to develop dye-sensitized
light requires complex, highly engi- halogen, and organic organic photovoltaics, which use one
neered structures. Various layers are molecule to absorb the light and others
combined to first direct sunlight into components, to carry the electrical current (and which
the semiconductor layer and then to researchers can can also be deposited at low tempera-
pass the generated electricity to the out- tures). Yet after promising results from
side world, and to prevent water or air tune the materials his own university group and others, the
from reacting with the materials. But the optical and company rapidly shifted all activity to-
central role involves a semiconductor wards perovskites. The company also
property known as its bandgap, which is electronic properties. shifted from the tiny BIPV market to
the energy range separating low-energy mainstream solar panel applications,
states that are initially filled with elec- Snaith said. We recognized very early
trons from higher-energy empty states. on that perovskites could augment sili-
A photon, or quantum of light, that has con in a tandem device, taking advan-
more energy than the bandgap can liber- tage of the low-temperature processing
Gaming Machine
Learning
Game simulations are driving improvements in
machine learning for autonomous vehicles and other devices.
O
VER THE LAST few years, the
quest to build fully autono-
mous vehicles has shifted
into high gear. Yet, despite
huge advances in both the
sensors and artificial intelligence (AI) re-
quired to operate these cars, one thing
has so far proved elusive: developing al-
gorithms that can accurately and consis-
tently identify objects, movements, and
road conditions. As Mathew Monfort, a
postdoctoral associate and researcher at
the Massachusetts Institute of Technol-
ogy (MIT) puts it: An autonomous vehi-
cle must actually function in the real
world. However, its extremely difficult
and expensive to drive actual cars
around to collect all the data necessary
to make the technology completely re-
liable and safe.
All of this is leading researchers A scene from Rockstar Games Grand Theft Auto V, which is helping to revolutionize how
down a different path: the use of game researchers develop autonomous vehicles.
simulations and machine learning to
build better algorithms and smarter ve- Not only is it possible to better under- works (CNNs) suddenly made it possi-
hicles. By compressing months or stand machine behaviorincluding ble to explore scenes and scenarios in
years of driving into minutes or even how sensors view and read the sur- deeper and broader ways. By tossing
seconds, it is possible to learn how to rounding environmentit offers in- vast numbers of images at the artificial
better react to the unknown, the unex- sights into human behavior in different neural networkstop signs, traffic sig-
pected, and unforeseen, whether it is a situations. These games offer ex- nals, road markings, barriers, trees,
stop sign obscured by graffiti, a worn or tremely rich environments that allow dogs, pedestrians, other vehicles, and
missing lane marking, or snow cover- you to drive through a broad range of much moreand comparing actions
ing the road and obscuring everything. road conditions that would be difficult and reactions such as steering, brak-
A human could analyze a situation to duplicate in the physical world, says ing, and acceleration, its possible to
and adapt quickly. But an autonomous Artur Filipowicz, a recent graduate in cycle rapidly through an array of events
vehicle that doesnt detect something operations research and financial engi- and scenarios en route to more refined
correctly could produce a result ranging neering at Princeton University who algorithms and better performing self-
from annoying to catastrophic, ex- has used machine learning to advance driving cars.
plains Julian Togelius, associate profes- research on autonomous vehicles. Of course, the allure of this ap-
sor of computer science and engineer- proach is that in the virtual world, cars
ing at New York University (NYU). The Road Less Traveled never run out of fuel or need new tires,
The use of computer games and sim- Although the idea of using video game and theyre able to log millions of miles
IMAGE COURTESY OF ROCKSTAR GA MES
ulationsincluding the likes of open- simulations and AI to boost real-world in a single day. There are no fatigued
source TORCS (The Open Racing Car performance for autonomous vehicles drivers and no risk of real-world colli-
Simulator) and commercially available has been around for more than a de- sions or injuries. However, the benefits
Grand Theft Auto Valready is revolu- cade, the concept has zoomed forward dont stop there.
tionizing the way researchers develop over the last few years. The rise of One can say that the real world is
autonomous vehicles, as well as robots, graphics processing units (GPUs) and richer in terms of character than the
drones, and other machine systems. the advent of convolutional neural net- virtual world, but in the virtual world
stamped video captured by a single extract data from games and apply it
front-facing camera. With minimum to the real world is gaining momen-
training data from humans, the neural Researchers are tum. Not only do these simulations
net learned to drive in traffic on local increasingly attracted eliminate the cost, time, and human
roads and highways with or without resources involved with building and
lane markings or guardrails by using to video games operating complex machinesau-
the underlying mathematics of human and simulations to tonomous vehicles, robots, drones,
steering angles as the training signal. software agents and morethey make
Whats more, the project accomplished understand how to it possible to cycle through millions of
the task across a wide spectrum of road build better robots, possibilities and find subtle anoma-
and weather conditions in less than 100 lies and correlations that determine
hours. It also learned to operate in ar- drones, and agents. whether an autonomous vehicle ma-
eas with unclear visual guidance, such neuvers correctly for a dog on the road
as in parking lots and on unpaved and stops at a traffic light that is not
roads. Monfort describes the method, working, or simply crashes.
which led to a test on an actual vehicle, Says Kornhauser, Humans are very
as surprisingly powerful. from that study to the physical world. good at recognizing situations. In or-
Although Monforts research in- Katja Hofmann, chief researcher for der to build autonomous vehicles and
volved actual video and real-world the project, has stated that endless other devices that work correctly, we
data rather than game images, it dem- possibilities for experimentation ex- must understand and translate all the
onstrated the promise of deep learn- ist. Others, such as Googles Deep- factors and variables to a machine. Its
ing applied to game graphics and ac- Mind project, are also examining a challenge that AI can solve.
tual videosand how the two are games and how they can apply data to
closely related. For one thing, deep the physical world.
Further Reading
learning used for both synthetic and Togelius says the goal is to build
actual images could eliminate the smarter systems and agents that can Bainbridge, L.
Ironies of automation. New Technology and
need for a near infinite number of continue to tap data and adapt on the
Human Error, J. Rasmussen, K. Duncan, J.
ifthenelse statements, which are fly. Within this framework, humans Leplat (Eds.). Wiley, Chichester, U.K., 1987,
impractical to code when dealing with could learn from agents, agents could 271283.
the randomness of the road. For an- learn from humans, and agents could
Bojarski, M., Del Testa, D., Dworakowski, D.,
other, this type of data could be com- learn from other agents. He says a Firner, B., Flepp, B., Goyal, P., Jackel, L.D.,
bined with game data using a genera- competitive, co-evolutionary process Monfort, M., Muller, U., Zhang, J., Zhang, X.,
tive adversarial network (GAN), which could result in neural nets and learn- Zhao, J., and Zieba, K.
relies on two neural networks com- ing systems that are better adapted to End to End Learning for Self-Driving Cars,
April 25, 2016
peting with one another to boost ma- the increasingly blurry line between
https://arxiv.org/pdf/1604.07316v1.pdf
chine learning. This approach could silicon and carbon-based intelligence.
bridge the gap between data collected Within games, they would handle Chen, C., Seff, A., Kornhauser, A., and Xiao, J.
DeepDriving: Learning Affordance for Direct
from the synthetic world and data more of the unexpected features of the Perception in Autonomous Driving,
from the physical world, Filipowicz physical world, but also fuel real- Proceedings of 15th IEEE International
says. This may be the next phase of world gains by finding relationships Conference on Computer Vision (ICCV2015),
research. You could transfer the learn- and correlations that humans proba- May 2015
ing from one network to the other us- http://deepdriving.cs.princeton.edu
bly would not or could not notice.
ing either simulated or real-world im- Not surprisingly, there are limita- Loiacono, D., Lanzi, P.L., Togelius, J.,
ages, he explains. tions to how videogames can be used to Onieva, E., Pelta, D.A., Butz, M.V., Lnneker, T.D.,
Cardamone, L., Perez, D., Sez, Y.,
In addition, researchers are in- train robotic and autonomous systems. Preuss, M., and Quadflieg, J.
creasingly attracted to video games Software such as Grand Theft Auto V typ- The 2009 Simulated Car Racing
and simulations to understand how ically requires hundreds of millions of Championship, IEEE Transactions on
to build better robots, drones, and dollars to develop, yet these packages Computational Intelligence and AI in
agents. By applying the same type of are available commercially at a relative- Games, Vol. 2, No. 2, June 2010
http://julian.togelius.com/Loiacono2010The.pdf
deep learning techniques, they can ly low cost. Essentially, the game manu-
discover things that would have previ- facturer is footing the bill for research Filipowicz, A.
Virtual Environments as Driving Schools for
ously gone undetected. For example, and development that would be un- Deep Learning Vision-Based Sensors in
in 2015, Microsoft embarked on a achievable and unaffordable in a lab. Self-Driving Cars, June 2017.
project called Malmo, which created As a result, the use of games for ma- http://orfe.princeton.edu/~alaink/Theses/
an AI-based development platform re- chine learning will likely be limited to SeniorTheses17/Artur_Filipowicz_
volving around the popular world- specific fields, such as autonomous ve- VirtualEnvironmentsAsDrivingSchools.pdf
building game Minecraft. The goal of hicle and robotics research. Its diffi-
Samuel Greengard is an author and journalist based in
the project was to experiment with cult to envision a game for training sur- West Linn, OR.
and study complex virtual environ- gical robots, for example.
ments and apply the lessons learned Nevertheless, the idea of using AI to 2017 ACM 0001-0782/17/12 $15.00
Parallel Computational
Thinking
Applications must be programmed to process instructions in
parallel to take full advantage of the new multicore processors.
W
HEN LEARNING A new
skill, it is often advanta- Amdahls Law
geous to start out sim- 20
ply, and then incorpo-
18
rate greater complexity
Parallel portion
as the learner gains greater experience, 50%
16
expertise, and familiarity with the sub- 75%
ject at hand. 14 90%
Indeed, most computer science edu- 95%
cation has followed that line of thinking, 12
Speedup
16
32
64
128
256
512
1024
2048
4096
8192
16384
32768
65536
through inertia, still focused on the
Number of processors
computing paradigm of the 20th centu-
ry, which was one processor executing A chart illustrating Amdahls Law, which says the speed-up of a program from parallelization
instructions one after another, so al- is limited by how much of the program can be parallelized.
gorithmic problem-solving was mainly
oriented toward a sequential model, students to think and program in par- has run its course. We have added other
explains Charles (Chip) Weems, an as- allel will not only better prepare them forms of parallelism that do not hide the
sociate professor of computer science to code and program these devices, but issue as much for programmers.
at the University of Massachusetts. also helps to train their minds to think Computing societies have recog-
Today, however, nearly all applica- in abstractions to solve problems, rath- nized the need to incorporate parallel-
tions running on smartphones, tab- er than simply in terms of writing code. ism as part of a core collegiate comput-
lets, and PCs, are powered by multi- Computer architectures have been er science curriculum. The ACM and
core processors, which are necessary doing parallelism at the instruction level the IEEE jointly introduced new guide-
when working with the large datasets for decades in a way that the vast major- lines in 2013, and recommended inte-
that drive both consumer applications, ity of programmers can ignore that its grating parallel education throughout
such a Twitter or Facebook feed, as well there, says Dan Grossman, a professor the curriculum. Although these are
as business and commerce-related ap- at the Paul G. Allen School of Computer only guidelines, and most universities
IMAGE BY DA NIELS22 0/W IKIMEDIA CC BY- SA 3 .0
plications, such as travel deal sites, Science & Engineering at the University still tend to teach parallel program-
weather applications, and real-time of Washington, and a member of the ming concepts only to more advanced
traffic data. To take full advantage of ACM steering committee on computing students, there is a growing push to in-
these multicore processors, program- curricula, which concluded its work in corporate parallelism in college-level
ming applications to process instruc- 2013. If that had remained the only form programming courses from the start.
tions in parallelwhich allows multi- of parallelism, there would be a much In the last 15 years, systems have
ple instructions to be processed at the weaker argument for teaching parallel- gone almost entirely parallel, Weems
same timeis required. ism at the undergraduate level. But that says. Unless youre talking about
Teaching new computer science has not remained the dominant form; it small embedded systems, everything
Technology
The Profession of IT
The Forgotten
Engineer
Engineering has been marginalized by the unhealthy belief
that engineering is the application of science.
W
E L I VE IN a time that re- science. This slogan was an XL mis- Much the same happened with
veres science. It was not representation of how aviation came computing technology. The first digital
always this way: in much to be.8 electronic computer was built in Ger-
of the previous centu- The linear model of research and many in 1938 by Konrad Zuse, who
ries, engineers were he- development behind this slogan has was educated as a civil engineer. John
roes. In the late 20th century, however, been repeatedly challenged and dis- Atanasoff and Clifford Berry built a
the engineers image eroded because proved. Science advertised this popular digital computer that solved linear
science seemed to offer more hope with fallacy on a T-shirtwith the worst ex- equations and demonstrated it in
difficult problems and because technol- ample imaginable. 1942. The first digital computer ca-
ogy seemed to inflict collateral damage The Wright brothers did look pable of any computable function
through such issues as pollution, ex- to science for help in answering fun- ENIAC (1945)was built by electrical
ploitation of nature, weapons of mass damental questions about wings and engineers J. Presper Eckert and John
destruction, and massive surveillance. propellers.8 The premier institution of Mauchly under a U.S. Army contract.
Our modern fascination for science the day, the Smithsonian, was unable They spent many hours tinkering to
is marginalizing engineering. This is to help them. These bicycle mechan- find reliable electronic logic circuits.
especially bad for computer science ics and self-taught engineers conducted In 1945, they joined with Herman
and engineering. For instance, we rou- their own experiments, spending many Goldstine, Arthur Burks, and John von
tinely teach programming as a set of hours studying the flights of birds to Neumann to design a stored-program
abstractions to be applied rather than a understand what enabled them to soar, machine, which they demonstrated
skill of design to satisfy customers. We eventually concluding that wing warping would be more powerful and signifi-
routinely make claims about what com- would be a key to controlling gliders and cantly less complex than ENIAC.
puting can theoretically accomplish powered aircraft. Only when they had a Although Alan Turing, whom many
without knowing that we can deliver. sketch of a mechanical concept could computer scientists revere, proposed
Not long ago, Science magazine dis- they begin to apply science to its devel- his Turing machine model of compu-
tributed a subscription solicitation opment. Science did not bring us avia- tation in 1936, his work was known
that offered a T-shirt bearing on the tion. Rather, the Wright brothers built only to a handful of mathematical logi-
front the image of a Leonardo da Vinci working flying machines that opened cians, and completely unknown to the
flying machine and on the back the in- the possibility of aviation and gave birth engineers who built the first electronic
scription Aviation. Brought to you by to a new science, aeronautics. computers.2,5 It was not until the 1950s,
when the first academic programs were be analyzed by the engineer as scien- velopment is multiperson development
being born, that Turings work offered tist in as rigorous an application of the of multiversion programsin other
the theoretical basis to make computer scientific method that any scientist words, teams and organizations build-
science credible as a new department must make.7 What happened to the ing families of software. Curricula that
in universities. In other words, as im- idea that engineering is both science lack a strong emphasis on design can-
portant as Turings work is, it did not and art? not prepare their graduates for this.
inform or inspire the first electronic When I recently reviewed the status What happened to the engineering in
computers or the stored program con- of computational thinking in educa- software engineering?
cept. Instead, the success of the first tion,3 I noticed that the recommenda- Engineering has helped all the so-
stored-program electronic computers tions for curricula focus almost exclu- cial, life, and physical sciences advance
created the opening for Turings work sively about the science-math side of by providing tools and instruments.
to become important. Yet we have our computational thinking and have little Engineering has helped civilization ad-
own T-shirts proclaiming that Turing or nothing to say about architecture or vance by providing reliable infrastruc-
was the father of digital computing. design side. This seemed odd because tures such as electricity, transporta-
programs are designed to control ma- tion, water, and food. Since the 1980s,
Incongruities chines, and moreover most of the new the engineering of supercomputers
Most engineering associations and jobs in computing are in architecture and networks has given birth to a raft
the accrediting body ABET define en- and design. Why are architecture and of new branches of science, mostly
gineering as application of science design not showing on the computa- called computational X where X
and mathematics to finding practical tional thinking radars? names a traditional science. Most com-
solutions to problems, a definition Software pioneer David Parnas has puting professionals today are heavily
that makes engineering an applica- long been a critic of the adopted approach engaged in engineeringthey design
IMAGE BY AND RIJ BORYS ASSOCIAT ES
tion of science or a branch of science. to teaching software engineering, which systems for customers and experiment
Not that long ago, some engineering seemed to him to downplay an engineer- to find out what works. Why has the en-
associations defined engineering as ing view in favor of a math-theory view. gineering outlook lost favor in many CS
the science and art of designing and He wants students to get plenty of prac- departments?
making structures. Petroski com- tice programming and designing pro- Much engineering is oriented
ments, Once that design is articu- grams to meet customer requirements.6 around design of systems and struc-
lated by the engineer as artist, it must He notes that the crux of software de- tures that will be reliable, safe, and se-
cure. Aside from design of experiments The second main distinction is how
and models, scientists hardly ever dis- scientists and engineers regard knowl-
cuss design. How could engineering be Design in edge. Scientists treat knowledge as data
a subset of science when its main con- computing is and information that have been orga-
cern is not a concern of science? nized into a body of knowledge that
fundamentally is then available for anyone to use. The
Distinctions an engineering scientific method is a process of stan-
It is clear that science and engineer- dard, outside observers gathering and
ing are distinct enterprises with dif- practice. weighing evidence in support of claims
ferent ways of looking at the world. Yet that might be added to the body. Engi-
they cannot advance without interact- neers treat knowledge as skillful prac-
ing with each other. Historians Bowler tices that enable design and building
and Morus trace the evolution of the of tools and technologies. Engineers
steam engine and the telegraph in the are not disinterested outside observers;
1700s and 1800s.1 They debunked the particularly helpful. The first con- they are immersed in the communi-
modern myths of one-directional flow cerns the nature of their work. Engi- ties of use. They embody practices for
from science to technology. In those neers design and build technologies building, maintaining, and repairing
days, there was no practical differ- that serve useful purposes, whereas technologies; attending to reliability,
ence between science and technology. scientists search for laws explaining dependability, and safety in the context
It seems that the distinction between phenomena. Design is among the of use; and following engineering stan-
science and engineering is recent most common words of engineering, dards and codes of ethics.
introduced in the late 1940s when whereas it is uncommon in science. The third main distinction concerns
Vannevar Bush advocated the estab- Design in engineering is a process of the role of abstractions and models.
lishment of the U.S. National Science finding practical, safe, cost-effective Science emphasizes models, and en-
Foundation for government support implementations. Whereas scientists gineering machines. There is a funda-
of basic research. have a knack for finding recurrences, mental distinction between modeling
Given the contemporary defini- engineers have a knack for listening to machines and building them. Abstrac-
tions, I have found three distinctions clients and proposing technologies of tions are useful for what they leave out.
between engineering and science value to them. Machines are useful for what they leave
in. Hardware and software are inter-
Dispositions toward design in computing. changeable to the theorist, but not to
the engineer.
Science Engineering The familiar phrase devil is in the
A design is a plan or a blueprint for a model Design is a process of proposing systems that meet details is an engineers motto. Engi-
or an experiment customer concerns neers must get the details right for sys-
Designs aim to reveal causes Designers aim to harness naturally occurring effects tems to work. Scientists want to elimi-
nate the details so that the recurrences
Designers find and validate models Designers align software with user practices
stand out.
Designers work with proven abstractions and Designers know that every detail counts for a reliable
The accompanying table summa-
models that omit inessential details and safe product or system rizes, compares, and contrasts how
Designers are ultimately concerned with Designers are ultimately concerned with whether computer scientists and engineers
whether claims are true products or systems work tend to view design. These are disposi-
Designers are objective observers detached Designers are immersed in their communities tions and tendencies, not formal defi-
from communities nitions. Computer scientists need to
Designers aim to understand the world Designers aim for working implementations that can function with both worldviews.
change the world
Correctness and validation measure success Client satisfaction measures success
Engineering and Science
Mistakes can be eliminated with formal Mistakes and defects are inherent, the system must in Computing
verification tolerate them As we noted in 1989,4 science, engi-
Good designs can be formally verified so that Good designs are fault tolerant so that they continue neering, and mathematics are irrevo-
they will work the first time to be reliable and safe even when faults and defects cably interwoven in the fabric of com-
appear
puting. Every computing technology
Good designs rule out contingencies or Designers work with contingencies and surprises
has a science, an engineering, and a
surprises
mathematics aspect. Computing can-
Experiments validate hypotheses Tinkering is experimenting to find what works
not be dissected into the three com-
What we know is expressed as our body of What we know is expressed in our practices, ponents. It is not a branch of science,
knowledge standards, and lore about what works engineering, or mathematics. In
Engineering and technology will apply We build technologies to have something to apply computing, design means develop-
the science science to ing practical systems with the aid of
mathematical tools such as program
Broadening Participation
Community Colleges:
A Resource for Increasing
Equity and Inclusion in
Computer Science Education
Challenging a simplistic pathway metaphor.
I
N T H E L O N G - S TA N D I N G and
persistent lack of diversity in
computer science (CS), too
little attention has been paid
to the role that community
colleges (CCs) can play. Community
colleges are poised to provide an
important resource for preparing a
21st-century workforce begging for
more computer science graduates as
well as more diversity in those gradu-
ates. To broaden participation in CS,
CCs must be the focus of increased
study and intervention. As part of
this work, we revisit the current
metaphors that guide CS education
research and practicethe idea that
students follow a pipeline or even a
pathway is too simplistic to capture
the convoluted routes that many CC
students are constrained to follow.
In this column, we argue that there is
a misalignment between the existing
research and practice approaches
and institutional structures, which
are based on a traditional education- tion of the demographics in higher students through transfer to comple-
al pipeline metaphor, and the experi- education. As noted in an earlier Com- tion of a bachelors degree would be a
ences of students attempting to pur- munications Broadening Participation large step forward in helping diversify
sue a CS bachelors degree. column,8 there is a high participation the field.
IMAGE BY RAW PIXEL.COM
Community colleges are typically of minorities in CS at CCs; more than Despite these differences between
open access, lower-division institu- half of CC students are non-white, populations of students at CCs and
tions whose student population is and more than half of all Hispanic at four-year institutions, research
more diverse than that of four-year and Black undergraduates start at and institutional strategies continue
universities and reflect a transforma- community college.1 Efforts to retain to be informed by assumptions and
Technical
is such that the traditional education Diploma
Diploma
Training
Tested out Diploma
model is rarely attainable. In sum, of high school
GED
when decision makers implement High School High School High School
policies and procedures that rely on a
pipeline model, they unwittingly sup-
press diversity.
the challenges students face and build- likely to attain a CS bachelors degree; it
ing structural supports to keep them is likely that these students were more
moving forward. We advocate for sev- Research, familiar with the range of job opportu-
eral research-based strategies to be im- policy, and nities in technology.
plemented at educational institutions. We argue that research, policy, and
Advising and Support. Studies interventions interventions will be more effective
have shown the importance of advis- will be more if they are based on a realistic under-
ing and support from faculty, coun- standing of CC students experiences.
selors, and peers for the successful effective if We hope efforts to broaden participa-
transfer from a CC to a four-year uni- they are based tion in CS will increase their focus on
versity in a STEM field7 and to help CC students and faculty, and will lead
students remain on a CS pathway.5 on a realistic to new, research-based interventions
But these sources of support should understanding resulting in a marked increase in suc-
be based on an understanding of the cessful transfer and graduation and a
complex and prolonged paths that of CC students broader diversity of students.
CC students follow. experiences. References
Culturally Responsive Practices.
1. American Association of Community Colleges. Fact
Faculty can play a critical role in ensur- Sheet, 2016; http://bit.ly/2d3jnEI
ing policies and practices are tailored 2. Center for Community College Student Engagement.
Aspirations to Achievement: Men of Color and
to respond to challenges faced by low- Community Colleges, 2014; http://bit.ly/1mCjPrv
3. Denner, J. et al. Community college men and women:
income students and those from un- A test of three widely held beliefs about who pursues
derrepresented minority groups. In CS, computer science. Community College Review, 2014.
4. Jaggars, S.S. et al. A Longitudinal Analysis of
this requires providing extra support to facultys heightened awareness Community College Pathways to Computer Science
and flexibility in schedules, developing of impacts on transfer students of Bachelors Degrees. Google Inc., Mountain View, CA,
2016; http://bit.ly/2hOzEzW
clear CS transfer pathways, and build- program decisions. Statewide web- 5. Lyon, L.A. and Denner, J. Student Perspectives of
ing knowledge of CS careers.5 sites such as http://www.njtransfer. Community College Pathways to Computer Science
Bachelors Degrees. Google Inc., Mountain View, CA,
Gender Differences and Similari- org and http://www.assist.org help 2016; http://bit.ly/2yTqjC0
ties. Strategies should also be respon- students have transfer informa- 6. National Academies of Sciences, Engineering, and
Medicine. Barriers and Opportunities for 2-Year and
sive to gender differences and simi- tion at their fingertips, but should 4-Year STEM Degrees: Systemic Change to Support
larities. Studies show that while both be enhanced with individualized Students Diverse Pathways. National Academies
Press, 2016.
women and men benefit from peer study plans to take into account the 7. Packard, B.W. et al. Womens experiences in the STEM
encouragement, CC women are more unique pathway of each student. To community college pathway. Journal of Women and
Minorities in Science and Engineering 17, 2 (Feb. 2011),
likely to intend to persist in CS if they ease the transfer experience of CC 129147.
are confident and interested in solv- students, efforts should be made to 8. Taylor, V. and Ladner, R. Data trends on minorities and
people with disabilities in computing. Commun. ACM
ing challenging problems, while men familiarize them with the settings, 54, 12 (Dec. 2011), 3437.
are more likely to intend to persist if people, and events at receiving uni-
they have positive interactions with versities. Opening hackathons to Louise Ann Lyon (louAnn.lyon@etr.org) is a Senior
Research Associate at ETR (Education, Training, Research)
their instructors and value comput- CC student participation, univer- in Silicon Valley, CA.
ing.3 In addition, supports for men of sity open houses or regional con-
Jill Denner (jilld@etr.org) is a Senior Research Scientist
color in CCs should be based on per- ferences that include CC students, at ETR in Silicon Valley, CA.
sonal connections, engaged faculty direct mailings to CC students, and
and staff with high expectations, and access to university counselors and This material is based in part upon work supported by
opportunities to apply what they learn research faculty are all best practic- Google, Inc., and by the National Science Foundation
under grant 0936791. Any opinions, findings, and
in the real world.2 es in this area. conclusions or recommendations expressed in this
material are those of the authors and do not necessarily
Stronger Partnerships between Involvement from Industry. We also reflect the views of Google, Inc., or of the National
Four-year Institutions and CCs. advocate for the involvement of the Science Foundation.
Four-year institutions should reach CS industry in the call to enable stu- Diagrams of educational models adapted from the
out to CCs to build true partner- dentsparticularly from underrepre- Developing Computing Pathways presentation (http://
batec.org). Thank you to Cheryl Calhoun of Santa Fe
ships based on listening to CC fac- sented groupsto have the resources College, Pat Morreale of Kean University, and Cindy
ulty to make changes to streamline and information they need to efficiently Tucker, and Melanie Williamson from Bluegrass
Community, and Technical College for reviewing and
student pathways and increase flex- move through CCs to transfer, and then providing comments on a draft of this column.
ibility along those pathways. Cur- through four-year institutions to bach-
rent patterns of transfer indicate elors degrees. Our research5 found that
the importance of articulation and career knowledge early in CS postsec-
transfer agreements 6 and should be ondary pathways gave students the im-
enhanced by faculty exchanges on petus to persist in CS but that specific
advisory boards. At the University knowledge of job skills and preparation
of Washington, Tacoma campus for particular jobs was lacking. Jaggars
and at Kean University in New Jer- et al.4 found that students who grew up
sey, such reciprocal visits have led near a technology hub city were more Copyright held by authors.
Kode Vicious
Cold, Hard Cache
On the implementation and maintenance of caches.
Dear KV,
Our latest project at work requires a
large number of slightly different soft-
ware stacks to deploy within our cloud
infrastructure. With modern hardware,
I can test this deployment on a laptop.
The problem I keep encountering is
that our deployment system seems to
secretly cache some of my files and set-
tings and not clear them, even when I
repeatedly issue the command to do
so. I have resorted to repeatedly using
the find command so that I can blow
away the offending files. What I have
found is that the system caches data in
many placesnot in one single, easy-
to-find placeso I have started a list.
All of which brings me to my question: which must be carried out correctly room in the cache, an entry is added,
Who writes this stuff?! for the cache to be of any real use. hopefully, in a place that is quicker to ac-
Out of Cache The only reason to create a cache in cess the second time around. Accessing
the first place is that there is some piece an entry in the cache requires a lookup
of information that is frequently used operation, which can fail. Failing to find
Dear OOC, and that can be stored in a place where an entry in the cache is called a miss
I am not quite sure who writes this it is quicker to access. For example, a and is the caches way of telling you to
stuff, but I am pretty sure they do systems main memory can be thought go back where you came from and look
not know what they are doing. A wise of as a cache for files on disk, because up the data in the old, slow way.
person once said, There are only it is perfectly possible to read a file into The problems you are having with
two hard things in computer sci- memory, execute the instructions read your system come from its inability
ence: cache invalidation and naming from the file, and then immediately to invalidate stale data. If you change
things, and that wise guy was suppos- free the memory. No one builds sys- something in files that are being de-
edly Phil Karlton, but, no matter who tems like that because it is expensive ployed and your deployment system
said it, they are partially correct. Lets to keep copying the data from disk for does not notice that change, then it is
skip the naming problem for now and each execution, so we leave the data we going to think the data it has cached
go right into caching and the concerns have copied in memory until we need is fresh when, in fact, it is stale. Noth-
one might have while maintaining a the memory for some other purpose. ing stinks quite like stale data. Since I
cache. You will note I said, maintain- Your particular case seems like a cache have no idea how your system is judg-
ing, because plenty of people can of either settings or files, rather than a ing the freshness of your data, lets
build up a cachethat is just making memory, CPU, or chip-level cache, so I just assume for a moment that its us-
IMAGE BY MA RC DIETRICH
copies of stuff you might want later will narrow my remarks a bit more to ing the file modification timestamp,
and putting it in a place that is easier cover just this case, but the principles and then lets further assume that its
for you to find or faster for you to ac- apply to all sorts of caches. not looking at seconds, but instead,
cess. Maintaining a cache actually Adding to a cache is relatively minutes. That means if you are do-
has several distinct operations, all of straightforward. As long as there is ing a file save and then an immediate
Viewpoint
The Death of
Big Software
We are past the tipping point in the transition
away from 20 th-century big software architectures.
W
HY WOULD ANYONE
undertake a multi-
year software project
today? Or upgrade
an in-house-hosted
legacy application? Or buildor use
anything that behaved like a mono-
lithic software application? Big soft-
ware project failure data is legendary.11
There are myriad horror stories with
titles like 9 VERY Scary ERP and ERP
System Implementation Statistics.12
The Standish Group actually labels
their annual technology project analy-
ses as Chaos Reports.14 They report-
ed that 66% of all technology projects
completely or partially failed in 2015.
So assuming that management is
reasonably well informed, it knows
that big software projects are likely
to fail. Yet in the 1990s and early 21st
century there were still companies
willing to try their hand with big soft-
ware and prove they were unlike the
others who failed so spectacularly. In
spite of this unjustifiable optimism,
many of these companies also failed.
Even the U.S. Defense Department
failed spectacularly.6 problems with single, integrated plat- of assassins. Some were all business,
IMAGE BY ALICIA KUBISTA /A ND RIJ BORYS ASSOCIAT ES
So that no one thinks that failure forms fail. Failure crosses vertical and some were hiding in the governance
only plagues ERP applications, the functional areas as well, including re- trenches, some were up in the clouds
data suggests all kinds of big software tail, government, financial services, and some were architectural. Lets look
projects fail.13 Big customer relation- and even science.10 at the assassins in a little detail.
ship management (CRM) projects fail. The high rate of failure helped kill One of the business assassins was
Big database management systems big software. But there were other control. When a company embarks
(DBMS) projects fail. Big infrastructure causes of death. on a multiyear journey with a big soft-
projects fail. Big communications proj- ware vendor it cedes significantif not
ects fail. In fact, most software projects Causes of Death totalcontrol to that vendor and the
designed to address enterprisewide Big software is dead. There were lots business processes embedded in the
code. For example, ERP modules were The cloud also killed big software.
originally designed to eliminate proc- Years ago, companies would imple-
ess chaos. Remember when there were ment huge software systems in their
ACM Journal of no intra- or intercompany (or industry) own data centers. Armies of program-
Data and standardized processes? Remember
when software applications never in-
mers would work with armies and na-
vies of (happy) consultants to bring
Information Quality tegrated? Remember when 1970s and big systems to life. Some years later
1980s legacy software was a barrier to the software might launch with a
Providing Research and Tools scalability, not to mention how expen- switch thataccording to the data
for Better Data sive it was to customize and maintain? usually failed (at least the first time). So
ERP vendors came to the rescue by the armies and navies would go back
controlling the mess that homegrown to work to get it right (until they got it
applications created. But one of the right). Implementation cost was also
ACM JDIQ is a multi- side effects was the loss of process con- a killer. $10M often turned into $50M,
trol to the vendors who defined supply which often turned into $250M and
disciplinary journal chain management, financial report- sometimes into billions: the Standish
that attracts papers ing, and other business processes for Group reports that big technology proj-
the companies (and industries) they de ects run anywhere from 40%50% over
ranging from facto managed. budgetand deliver less than 50%
theoretical research While tightly bundled standardized 60% of the promised ROI.14 Cloud deliv-
software made some sense back in the ery changed all that: it is now possible
to algorithmic solutions day, it makes little or no sense in the era to access an enterprise application di-
to empirical research of digital transformation where disrup-
tive business processes and business
rectly from the cloud from any number
of providers.
to experiential models are seen as necessary paths to While implementation pain was
competitiveness: disruption and stan- avoided through cloud delivery, pro-
evaluations. Its dardized big software are not birds of a cess control was still ceded to the
mission is to publish feather. Of course, in 1995 would have big software vendors who owned the
seemed heretical. Companies were embedded business processes in the
high impact articles desperate to end the chaos of uncoor- cloud-delivered software (while some
contributing to the dinated business processes and rules. of the control went to the cloud provid-
Standardized processes incarnated in er who deployed the systems on behalf
field of data and software were the vitamin pills everyone of their clients). While it was almost
information quality (IQ). needed. But in retrospect it is not clear
that everyone understood exactly what
always cheaper (by total cost of owner-
ship [TCO] metrics) to move from on-
they were consuming. When business premise big software applications to
models moved slowly in the 20th cen- cloud hosted applications, companies
tury, slow-and-steady worked, but when were still denied access to the trans-
whole new disruptive business mod- formational and disruptive playing
els began to appear in the 21st century fields.4,18,a
(fueled by new and more powerful digi-
tal technologies), slow-and-steady be- a TCO debates around on-premise-versus-
cloud continue. There are all sorts of ways
came a clear threat to competitiveness.
to compare costs across services, and many
Governance also killed big software. of the results will vary depending on indi-
Big software projects that are stan- vidual services such as SaaS, IaaS, PaaS, and
dardizedthat is, requiredby cor- other cloud-based services. But a full com-
porate technology groups also usually parison should include variables like agility,
governance and long-term costs connected
failed, not because they did not work
with training, testing, upgrades and security,
as advertised (which they often did among others. If a company is looking to get
not) but because of the governance out of the technology business by moving its
that forced a one-size-fits-all approach operational and strategic technology to the
to technology use. Huge off-the-shelf cloud, it will find ways to justify the cost mod-
el. If there is a bias toward keeping everything
software packageslike ERP, CRM and
For further information DBMS packagesor even large custom
in-house then favorable on-premise cost
models can be developed. The larger ques-
or to submit your in-house developed applications man- tion is around core competency: Does the
dated by corporate ITusually failed company want to be in the technology acqui-
manuscript, under the weight of their own gover- sition, deployment and support businessor
not? The cloud offers opportunities to reas-
visit jdiq.acm.org nance which, to make matters worse, sess core competencies and enables rational
often resulted in increased Shadow for various cost models, though ideally the
IT spending.1,2 models are based on empirical evidence.
Transactions on
2015).
support is dead. 2. Andriole, S., Cox, T. and Khin, K. Technology Adoption
& Digital Transformation. CRC Press, 2017.
3. Annenko, O. Breaking down the monolithic:
Computing
IaaS. SherWeb, Sept. 2015; http://bit.ly/2z3Sg9l
5. Brown, S. What is agile software architecture,
Coding the Architecture, 2013; http://www.codingthe
architecture.com/2013/09/03/what_is_agile_
software_architecture.html
6. Charette, R.N. U.S. Air Force blows $1 billion on failed
ERP project. IEEE Spectrum, Nov. 2012; http://bit.
their cloud providers to another pro- ly/2zim1El
vider for any number of reasons. Con- 7. Clark, T. Microservices, SOA, and APIs: Friends
or enemies?: A comparison of key integration and
tainers enable clients to retain control application architecture concepts for an evolving
over their applications just as emerg- enterprise. IBM DeveloperWorks, Jan. 2016; https://
ibm.co/2zhsMWR
ing application architectures enable 8. DeRemer, F. and Kron, H.K. Programming-in-the-
them to retain control over their soft- large versus programming-in-the-small. IEEE
Transactions on Software Engineering, 2 (June 1976);
ware-enabled business processes.19 http://bit.ly/2xyLvZM
This means that dependencies are 9. Erl, T. et al. Next Generation SOA: A Concise
Introduction to Service Technology & Service-
shrinking. So the combination of Orientation. Prentice Hall, 2015.
microservice-based architectures and 10. Gorton, I. Cyberinfrastructures: Bridging the divide
between scientific research and software engineering,
container technology may be the re- Computer 47, 8 (Aug. 2014); 48, 55; http://bit.
sponse to monolithic applications. ly/2yWVjkf
11. Kimberling, E. Key Findings from the 2015 Report.
Will the big software vendors re- Panorama Consulting, Apr. 2015; http://bit.
ly/2hpGwWo
spond? Yes. 12. Lee, J. 9 VERY scary ERP and ERP system
They will milk the current big en- implementation statistics. ERP/VAR, Oct. 2014; http://
bit.ly/2yukxFj
terprise revenue streams for as long 13. Leibowitz, J. IT project failures: What management
as they can and then systematically can learn. IEEE IT Professional (Apr. 2016); http://bit.
ly/2ynZhlF
make their offerings to look more 14. Lynch, J. The Chaos Report. The Standish Group,
and more like their small software 2015; http://bit.ly/2zScMqv
15. Madan, A. 100 open source big data architecture
This quarterly publication is a competitors. Many of them, like SAP papers for data professionals. LinkedIn, (June 2015);
quarterly journal that publishes and Oracle, have already by neces- http://bit.ly/1UEZdRt
16. McLarty, M. Microservice architecture is agile
sity begun this process through small software architecture. Infoworld, May 2016; http://bit.
refereed articles addressing issues
business and mid-market cloud of- ly/24hvrnD
of computing as it impacts the ferings that are much cheaper than
17. Proctor, S. From monolith to microservices: Big
rewards from small software architecture. IT World
lives of people with disabilities. the gold-plated goliaths they sold for Canada, (Aug. 2016); http://bit.ly/2iglbgk
18. Tomkins, B. SaaS solutions 77% cheaper than on-
The journal will be of particular years. They began to cannibalize their premises. Information Week, (May 2010); http://ubm.
own products because they too know io/2z4wAd9
interest to SIGACCESS members 19. Townsend, K. Containers: The pros and the cons of
that the days of big software are num- these VM alternatives. TechRepublic, Feb. 2015; http://
and delegates to its aliated bered. But they have not fundamen- tek.io/2nfzjav
20. Wailgum, T. 10 famous ERP disasters, dustups and
conference (i.e., ASSETS), as well tally rearchitected their applications. disappointments. CIO Magazine (Mar. 2009); http://
bit.ly/2zv2mxK
as other international accessibility They have shrunken them.
conferences. Stephen J. Andriole (steve@andriole.com) is the Thomas
The Death and Resurrection G. Labrecque Professor of Business at the Villanova
of Software School of Business at Villanova University where he
big software vendors know it and next The author thanks the reviewers who significantly
generation software architects know it. improved the article. With their help, the death of big
software message was clarified especially regarding the
The implications are far-reaching and discussion of microservice-based architectures.
likely permanent. Business require-
ments, governance, cloud delivery and
architecture are the assassins of old Copyright held by author.
Viewpoint
Lousy Advice
to the Lovelorn
The 37% rule is rarely applicable in real-world situations. It is
certainly entirely wrong-headed as advice for getting married.
P
EOPLE SEEKING ADVICE on
getting married have recently
been directed to a decidedly
unromantic algorithm. The
algorithm has two stages. Let
N be the maximum number of people
you expect to be able to date before you
give up. In the first stage, you date and
dump N/e .37N people to get a sense
of the overall quality of the field. In
the second stage, you continue down
the list, and you marry the first person
that is better than everyone you met in
the first stage. (If you reach the end of
the list, and the last person is not the
best, then the algorithm is indifferent;
you can marry them or not.) There is a
theorem that supposedly states that fol-
lowing this strategy maximizes the like-
lihood of marrying the best possible
partner of those on your original list.
This algorithm is the subject of the
first chapter of Algorithms to Live By, by
Brian Christian and Tom Griffiths,1 and
has been repeated in recent articles in
The Washington Post,6 Business Insider,7
Slate,5 and NPR.4 The headline in Busi-
ness Insider makes the advice even sim-
pler: 26 is the perfect age to get married.
If this advice seems dubious, your
intuitions are working well. Taken lit-
erally, the advice is crazy, because the
assumptions of the underlying theo-
rem bear no relation to the real world
IMAGE BY AK UMA-P HOTO
bachelorettes. He is happy to date them to select one. At each stage, you must
all, so N = 100. Therefore, following the choose the current object or you can
algorithm, his plan is first to date 37 of pass on it, but either way, your decision
ACM Transactions them, and then to marry the next one is irrevocable. Suppose further that:
who is better than any of those 37. The only pertinent information
on Social Computing However, the course of following al- you get about the candidates is ordinal.
gorithms never did run smooth. Date That is, you can judge how the new can-
17 is Chloe, who is amazing. Strephon didate compares to the earlier ones,
is completely smitten. However, a the- but you cannot assign a meaningful
orem is a theorem, and Strephon can cardinal score.
ACM TSC seeks to publish easily calculate that the probability is Your goal is to maximize the prob-
work that covers the 0.83 that someone he has not met yet is ability of getting the best of the N can-
even better than Chloe. Goodbye Chloe. didates; you are indifferent between all
full spectrum of social The next 34 dates go by with no magic. other outcomes.
computing including Date 52 is Phoebe. Phoebe is even more In that case, the preceding algo-
theoretical, empirical, amazing than Chloe. Patting himself rithmpass on the first N/e, then
on the back for his wisdom and pa- choose the next one that is better than all
systems, and design tience in passing up Chloe, Strephon thoseis provably optimal. Following
research contributions. proposes to Phoebe. For Phoebe, that algorithm, the probability is about
TSC welcomes research Strephon is date #40 out of 75, so she 1/e that you will get the best partner.
employing a wide range is in her second stagea and she really The problem and its solution were
likes him. Sadly, though, she liked Co- first published in Martin Gardners
of methods to advance lin, her #15, even better, so no dice. Mathematical Games column.3 Chap-
the tools, techniques, Forty-five more women come and ter 1 of Christian and Griffiths1 and its
understanding, and go. Date 98 is Daphne. Daphne is as 15 pages of notes contain a thorough
amazing as Chloe except that she lis- discussion of the problems history,
practice of social tens to the controversial avant-garde variants, and applications; see also the
computing, particularly composer Karlheinz Stockhausen, but Wikipedia entry, Secretary Problem.8
research that designs, Strephon can live with that. The prob- Given the extreme restrictions, it is
ability that one of the remaining two easy to see that the optimal rule to fol-
implements or studies women is better than Daphne is only low must have the form, Pass on the
systems that mediate about 0.06. However, the goal of the first f (N), then choose the next one that
social interactions among algorithm is to marry the best partner, is better for some function f (N). Obvi-
users, or that develops and Daphne is definitely not the best
partner, since she is inferior to Chloe.
ously, a candidate that is not better than
all those seen so far cannot be chosen,
theory or techniques Strephon knows better than to contra- since it cannot be the best. Moreover, all
for application in those vene an algorithm endorsed by a pro- the information that you have in choos-
systems. fessor at Berkeley and published in the ing is the sequence of ordinals; and it is
Washington Post. Goodbye Daphne. easy to see that the order in which the
What the algorithm prescribes in ones you have passed on carries no use-
the case where Daphne is better than ful information.
Chloe but worse than Phoebe is not
clearly specified; it depends on whether
the goal is to marry the best partner of The assumptions
all those on the list, or to marry the best
partner who would have accepted you. of the theorem are
You might suppose that Strephon almost never even
could try calling Chloe and begging
for forgiveness; but the theorem that approximately
Strephon is relying on assumes that is satisfied in real-world
impossible. By assumption, Chloe has
already married someone else. situationsand are
For further information Enough of the melodrama; what is especially far-fetched
the math? The theorem is as follows:
or to submit your Suppose you will be presented with a se- in regard to dating.
quence of options, from which you are
manuscript,
visit tsc.acm.org a There is a dating service in Arcadia that matches
first-stagers with first-stagers and second-stag-
ers with second-stagers.
For example, suppose that for N = 100 are not even stochastic processes that
someone were to propose an alternative randomly accept or reject marriage
rule: Pass on the first 37, then wait un- It is not good to proposals. At least in our society, they
til someonecall her Aliceis better promote the view of are players engaged in much the same
than those 37, then continue to wait un- game as Strephon. Suppose that Phoe-
til someone elseBettyis better than romantic partners as bes and Strephons preferences are
Alice. Suppose that Strephon executes commodities that are uncorrellated; that is, Phoebes prefer-
this, meets Alice at 40, and meets Betty ences are independent of the fact that
at 51. Then all the useful information inspected and chosen Strephon proposed to her. Then, even
that he actually has is that Betty is better rather than people given that Phoebe is in stage 2, the prob-
than 50 women out of 100. Consider an ability that she prefers Strephon to all
alternative order in which Betty is still whom you woo and the men she met in stage 1 is only about
50, but Alice is now 17. Then Betty is now who woo you. e/N. Of course Strephon may have an-
the first person he has met better than other chance to propose; but the aver-
the first 37, so by the rule, he should age number of stage 2 candidates who
pass on Betty. But there is no significant are better than all the stage 1 candidates
difference between the first and second is only about e 1. There will be a lot of
situation in what Strephon knows, since unmarried people in Arcadia.
the ordering was random. Probably preferences between po-
The fact that f (N) converges to and of 0 if it is not. But the agent never tential partners are substantially cor-
N/e is, to my mind, cute, but not very knows whether the item he has chosen related, which makes things better;
profound. The proof is an exercise in is actually the best, and therefore does but they are also probably correlated
combinatorics, with nothing particu- not know his own utility. For instance, across rivals, which makes things
larly insightful. suppose that Strephon decides to ig- worse. In any case, the analysis in this
It seems to me the assumptions of nore the algorithm and marry Chloe situation would be completely differ-
the theorem are almost never even ap- even though she is only date number ent (and very difficult).
proximately satisfied in real-world situ- 17. Then his utility is 1 if she actually is Lovers are proverbially unwise, but
ationsand are especially far-fetched the best partner for him and 0 if there I think that most would have the good
in regard to dating. There are many is someone better, despite the fact that sense to ditch the algorithm when its ad-
problems. I will first mention a few that he has no idea which is the case and vice is obviously idiotic. So I am not actu-
seem to me comparatively superficial that his state of nuptial bliss is pre- ally very worried about Strephon and the
and open to technical solutions. The as- sumably unaffected. I cannot find any rest. However, it is not good to promote
sumption that you cannot go backthat axiom that prohibits this kind of utility the view of romantic partners as com-
Strephon cannot go back to Chloeis function, but it seems counter to the modities that are inspected and chosen
often false, but it is reasonable in cases general spirit of what is usually meant rather than people whom you woo and
like real-estate hunting or searching for by a utility.b who woo you. Moreover, publishing
a parking space where there is a lot of The assumption that there is only senseless advice as the unquestionable
competition for desirable resources. It ordinal information is also problem- dictate of mathematics strengthens the
is arguably reasonable as regards dat- atic. This is critical in Strephons deci- general view that mathematics and sci-
ing. The assumption that you know the sion to reject Chloe; it is assumed that ence are just theories that have nothing
value of N in advance is often dubious, there is no difference between her be- to do with the real world.
but certainly there are cases where N ing slightly better than the others he
can be reasonably estimated. The analy- has seen and her being enormously References
1. Christian, B. and Griffiths, T. Algorithms to Live By:
sis ignores transactional costs; dating better. In most real situations, once The Computer Science of Human Decisions. Henry
takes time and effort. you have seen a reasonable number Holt, 2016.
2. Davis, E. The 37% Rule. 2017; http://cs.nyu.edu/
Then there are more fundamental of options, you have some idea of the faculty/davise/Verses/ThirtySeven.html
problems. The assumption that seems ordinary range and you can spot an as- 3. Gardner, M. New Mathematical Diversions from
Scientific American. Simon and Schuster, 1966.
most far-fetched is the best or noth- tonishing outlier. 4. Krulwich, R. How to marry the right girl: A
mathematical solution. National Public Radio, May
ing assumption: you want to maxi- These objections apply in all cases of 15, 2014.
mize the probability of getting the best choice. For courtship specifically, there 5. Parker, M. The secretary problem: An algorithm for
deciding who to marry and other tough choices. Slate
option and are completely indifferent is another serious problem. Chloe, (Dec. 17, 2014).
between the other outcomes. Phoebe, and Daphne are not parking 6. Swanson, A. When to stop dating and settle down,
according to math. The Washington Post (Feb. 16, 2016).
I cannot think of any choice prob- spots, waiting there to be chosen; they 7. Weller, C. A mathematical theory says the perfect
lem where this is a reasonable as- age to get married is 26heres why. Business Insider
(Nov. 25, 2016).
sumption. This becomes clear if the b Richard Cole points out that the algorithm has 8. Wikipedia. Secretary problem; http://en.wikipedia.org/
assumption is cast in terms of maxi- the property that, regardless of the distribu- wiki/Secretary_problem
mum expected utility theory, the stan- tion of utilities over items, which is generally
poorly known and even poorly defined, the ex- Ernest Davis (davise@cs.nyu.edu) is Professor of
dard normative theory of choice. This pected value of the utility of the outcome over Computer Science at New York University.
assumption corresponds to assigning random orderings is at least 1/e of the optimal
a utility of 1 if the best item is chosen choice, assuming all utilities are non-negative. Copyright held by author.
Bitcoins
specific, complex way in which the un-
derlying components are put together.
This helps explain why bitcoin took so
long to be invented. Readers already
familiar with how bitcoin works may
gain a deeper understanding from this
Academic
historical presentation. (For an introduc-
tion, see Bitcoin and Cryptocurrency Tech-
nologies.36) Bitcoins intellectual history
also serves as a case study demonstrat-
ing the relationships among academia,
outside researchers, and practitioners,
Pedigree
and offers lessons on how these groups
can benefit from one another.
The Ledger
If you have a secure ledger, the process
to leverage it into a digital payment sys-
tem is straightforward. For example, if
Alice sends Bob $100 by PayPal, then
PayPal debits $100 from Alices ac-
count and credits $100 to Bobs ac-
count. This is also roughly what hap-
pens in traditional banking, although
the absence of a single ledger shared
IF YOU HAVE read about bitcoin in the press and have between banks complicates things.
some familiarity with academic research in the field of This idea of a ledger is the starting
point for understanding bitcoin. It is
cryptography, you might reasonably come away with a place to record all transactions that
the following impression: Several decades worth of happen in the system, and it is open
to and trusted by all system partici-
research on digital cash, beginning with David pants. Bitcoin converts this system
Chaum,10,12 did not lead to commercial success for recording payments into a curren-
because it required a centralized, bank-like server cy. Whereas in banking, an account
balance represents cash that can be
controlling the system, and no banks wanted to sign demanded from the bank, what does
on. Along came bitcoin, a radically different proposal a unit of bitcoin represent? For now,
assume that what is being transacted
for a decentralized cryptocurrency that did not need holds value inherently.
the banks, and digital cash finally succeeded. Its How can you build a ledger for use
IMAGE BY INK ED PIXELS
inventor, the mysterious Satoshi Nakamoto, was an in an environment like the Internet
where participants may not trust each
academic outsider, and bitcoin bears no resemblance other? Lets start with the easy part: the
to earlier academic proposals. choice of data structure. There are a
few desirable properties. The ledger pants. This contrasts with another ap- want to establish that the document was
should be immutable or, more precise- proach to decentralizing digital led- created at a certain point in time, and no
ly, append only: you should be able to gers,7,13,21 in which many participants later. Their notion of document is quite
add new transactions but not remove, maintain local ledgers and it is up to general and could be any type of data.
modify, or reorder existing ones. There the user querying this set of ledgers to They do mention, in passing, financial
should also be a way to obtain a suc- resolve any conflicts. transactions as a potential application,
cinct cryptographic digest of the state of Linked timestamping. Bitcoins ledger but it was not their focus.
the ledger at any time. A digest is a data structure is borrowed, with mini- In a simplified version of Haber
short string that makes it possible to mal modifications, from a series of pa- and Stornettas proposal, documents
avoid storing the entire ledger, know- pers by Stuart Haber and Scott Stornetta are constantly being created and
ing that if the ledger were tampered written between 1990 and 1997 (their broadcast. The creator of each docu-
with in any way, the resulting digest 1991 paper had another co-author, Dave ment asserts a time of creation and
would change, and thus the tampering Bayer).5,22,23 We know this because Naka- signs the document, its timestamp,
would be detected. The reason for moto says so in his bitcoin white paper.34 and the previously broadcast docu-
these properties is that unlike a regular Haber and Stornettas work addressed ment. This previous document has
data structure that is stored on a single the problem of document timestamp- signed its own predecessor, so the
machine, the ledger is a global data ingthey aimed to build a digital nota- documents form a long chain with
structure collectively maintained by a ry service. For patents, business con- pointers backwards in time. An out-
mutually untrusting set of partici- tracts, and other documents, one may side user cannot alter a timestamped
message since it is signed by the cre-
Figure 1. Chronology of key ideas found in bitcoin. ator, and the creator cannot alter the
message without also altering the en-
tire chain of messages that follows.
Linked Byzantine Public Thus, if you are given a single item in
Timestamping, Digital Proof Fault Keys as Smart the chain by a trusted source (for ex-
Verifiable Logs Cash of work Tolerance Identities Contracts ample, another user or a specialized
1980 Merkle Chaum timestamping service), the entire
Tree33 Ecash10
Byzantine Anonymous chain up to that point is locked in, im-
Generals27 Communication9
mutable, and temporally ordered.
Chaum Further, if you assume the system re-
1985 Security w/o jects documents with incorrect cre-
Identification11
ation times, you can be reasonably as-
Haber &
Offline Paxos28 sured that documents are at least as
Ecash32
stornetta22 old as they claim to be. At any rate, bit-
1990 Benaloh & Digicash coin borrows only the data structure
de mare6 from Haber and Stornettas work and
Anti-spam15
Bayer, haber, reengineers its security properties
Szabo
stornetta5
Essay41
with the addition of the proof-of-work
1995
scheme described later in this article.
Micro-
Haber & Mint40
In their follow-up papers, Haber
Hashcash2 B-money13
stornetta23 and Stornetta introduced other ideas
Client Pbft8 that make this data structure more ef-
Puzzles25 Goldberg
fective and efficient (some of which
2000 Paxos made Dissertation20
Simple29 were hinted at in their first paper).
Sybil attack14 First, links between documents can be
Bit Gold 42
created using hashes rather than signa-
tures; hashes are simpler and faster to
2005
Computational
compute. Such links are called hash
Bitcoin34
Impostors1 pointers. Second, instead of threading
documents individuallywhich might
be inefficient if many documents are
2010 Private created at approximately the same
Blockchains
timethey can be grouped into batch-
es or blocks, with documents in each
Ethereum block having essentially the same time-
2015 stamp. Third, within each block, docu-
ments can be linked together with a bi-
Nakamoto Consensus
nary tree of hash pointers, called a
Merkle tree, rather than a linear chain.
Incidentally, Josh Benaloh and Michael
de Mare independently introduced all state is one of the key functionalities cause of an adversary trying to disrupt
three of these ideas in 1991,6 soon after provided by the ledger in Ethereum, a the ledgers operation or simply be-
Haber and Stornettas first paper. new cryptocurrency. cause of network latency, resulting in
Merkle trees. Bitcoin uses essential- Bitcoin may be the most well- blocks occasionally being generated
ly the data structure in Haber and known real-world instantiation of near-simultaneously by different
Stornettas 1991 and 1997 papers, Haber and Stornettas data structures, nodes unaware of each others blocks.
shown in simplified form in Figure 2 but it is not the first. At least two com- Linked timestamping alone is not
(Nakamoto was presumably unaware paniesSurety starting in the mid- enough to resolve forks, as was shown
of Benaloh and de Mares work). Of 1990s and Guardtime starting in by Mike Just in 1998.26
course, in bitcoin, transactions take 2007offer document timestamping A different research field, fault-
the place of documents. In each services. An interesting twist present tolerant distributed computing, has
blocks Merkle tree, the leaf nodes are in both of these services is an idea studied this problem, where it goes
transactions, and each internal node mentioned by Bayer, Haber, and Stor- by different names, including state
essentially consists of two pointers. netta,5 which is to publish Merkle replication. A solution to this prob-
This data structure has two important roots periodically in a newspaper by lem is one that enables a set of nodes
properties. First, the hash of the latest taking out an ad. Figure 3 shows a to apply the same state transitions in
block acts as a digest. A change to any Merkle root published by Guardtime. the same ordertypically, the pre-
of the transactions (leaf nodes) will Byzantine fault tolerance. Of course, cise order does not matter, only that
necessitate changes propagating all the requirements for an Internet cur- all nodes are consistent. For a digital
the way to the root of the block, and rency without a central authority are currency, the state to be replicated is
the roots of all following blocks. Thus, more stringent. A distributed ledger the set of balances, and transactions
if you know the latest hash, you can will inevitably have forks, which means are state transitions. Early solutions,
download the rest of the ledger from that some nodes will think block A is including Paxos, proposed by Turing
an untrusted source and verify that it the latest block, while other nodes will Award winner Leslie Lamport in
has not changed. A similar argument think it is block B. This could be be- 1989,28,29 consider state replication
establishes another important prop-
erty of the data structurethat is, Figure 2. The ledger data structure in linked timestamping.
someone can efficiently prove to you
that a particular transaction is includ-
ed in the ledger. This user would have
to send you only a small number of
nodes in that transactions block (this
is the point of the Merkle tree), as well
as a small amount of information for
every following block. The ability to ef-
ficiently prove inclusion of transac-
tions is highly desirable for perfor-
mance and scalability.
Merkle trees, by the way, are named
for Ralph Merkle, a pioneer of asym-
metric cryptography who proposed the Merkle tree nodes hash pointers time intervals
idea in his 1980 paper.33 His intended
application was to produce a digest for
a public directory of digital certificates.
When a website, for example, presents
you with a certificate, it could also pres- Figure 3. Guardtime Merkle root published in newspaper.
ent a short proof that the certificate ap-
pears in the global directory. You could
efficiently verify the proof as long as
you know the root hash of the Merkle
tree of the certificates in the directory.
This idea is ancient by cryptographic
standards, but its power has been ap-
preciated only of late. It is at the core of
the recently implemented Certificate
Transparency system.30 A 2015 paper
proposes CONIKS, which applies the
idea to directories of public keys for
end-to-end encrypted emails.32 Effi-
cient verification of parts of the global
As the name suggests, in hashcash More coherent approaches to chews puzzle solutions themselves
Back viewed proof of work as a form of treating puzzle solutions as cash are having value. In fact, puzzle solutions
cash. On his webpage he positioned it found in two essays that preceded bit- are twice decoupled from economic
as an alternative to David Chaums coin, describing ideas called b-mon- value: the amount of work required to
DigiCash, which was a system that is- ey13 and bit gold43 respectively. These produce a block is a floating parame-
sued untraceable digital cash from a proposals offer timestamping servic- ter (proportional to the global mining
bank to a user.3 He even made compro- es that sign off on the creation power), and further, the number of
mises to the technical design to make (through proof of work) of money, and bitcoins issued per block is not fixed
it appear more cashlike. Later, Back once money is created, they sign off either. The block reward (which is
made comments suggesting that bit- on transfers. If disagreement about how new bitcoins are minted) is set
coin was a straightforward extension of the ledger occurs among the servers or to halve every four years (in 2017,
hashcash. Hashcash is simply not nodes, however, there isnt a clear way the reward is 12.5 bitcoins/block,
cash, however, because it has no pro- to resolve it. Letting the majority de- down from 50 bitcoins/block). Bit-
tection against double spending. cide seems to be implicit in both au- coin incorporates an additional re-
Hashcash tokens cannot be exchanged thors writings, but because of the ward schemenamely, senders of
among peers. Sybil problem, these mechanisms are transactions paying miners for the
Meanwhile, in the academic scene, not very secure, unless there is a gate- service of including the transaction
researchers found many applications keeper who controls entry into the in their blocks. It is expected the mar-
for proof of work besides spam, such network or Sybil resistance is itself ket will determine transaction fees and
as preventing denial-of-service at- achieved with proof of work. miners rewards.
tacks,25 ensuring the integrity of Web Nakamotos genius, then, was not
analytics,17 and rate-limiting pass- Putting It All Together any of the individual components of
word guessing online.38 Incidentally, Understanding all these predecessors bitcoin, but rather the intricate way in
the term proof of work was coined only that contain pieces of bitcoins design which they fit together to breathe life
in 1999 in a paper by Markus Jako- leads to an appreciation of the true ge- into the system. The timestamping
bsson and Ari Juels, which also in- nius of Nakamotos innovation. In bit- and Byzantine agreement researchers
cludes a nice survey of the work up un- coin, for the first time, puzzle solutions didnt hit upon the idea of incentiviz-
til that point.24 It is worth noting that dont constitute cash by themselves. ing nodes to be honest, nor, until
these researchers seem to have been Instead, they are merely used to secure 2005, of using proof of work to do
unaware of hashcash but indepen- the ledger. Solving proof of work is per- away with identities. Conversely, the
dently started to converge on hash- formed by specialized entities called authors of hashcash, b-money, and
based proof of work, which was intro- miners (although Nakamoto underes- bit gold did not incorporate the idea
duced in papers by Eran Gabber et al.18 timated just how specialized mining of a consensus algorithm to prevent
and by Juels and Brainard.25 (Many of would become). double spending. In bitcoin, a secure
the terms used throughout this para- Miners are constantly in a race with ledger is necessary to prevent double
graph did not become standard termi- each other to find the next puzzle solu- spending and thus ensure that the
nology until long after the papers in tion; each miner solves a slightly differ- currency has value. A valuable curren-
question were published.) ent variant of the puzzle so that the cy is necessary to reward miners. In
Proof of work and digital cash: A chance of success is proportional to turn, strength of mining power is nec-
catch22. You may know that proof of the fraction of global mining power essary to secure the ledger. Without it,
work did not succeed in its original ap- that the miner controls. A miner who an adversary could amass more than
plication as an anti-spam measure. solves a puzzle gets to contribute the 50% of the global mining power and
One possible reason is the dramatic next batch, or block, of transactions to thereby be able to generate blocks
difference in the puzzle-solving speed the ledger, which is based on linked faster than the rest of the network,
of different devices. That means spam- timestamping. In exchange for the ser- double-spend transactions, and effec-
mers will be able to make a small in- vice of maintaining the ledger, a miner tively rewrite history, overrunning the
vestment in custom hardware to in- who contributes a block is rewarded system. Thus, bitcoin is bootstrapped,
crease their spam rate by orders of with newly minted units of the curren- with a circular dependence among
magnitude. In economics, the natural cy. With high likelihood, if a miner con- these three components. Nakamotos
response to an asymmetry in the cost of tributes an invalid transaction or challenge was not just the design, but
production is tradethat is, a market block, it will be rejected by the majority also convincing the initial communi-
for proof-of-work solutions. But this of other miners who contribute the fol- ty of users and miners to take a leap
presents a catch-22, because that lowing blocks, and this will also invali- together into the unknownback
would require a working digital cur- date the block reward for the bad block. when a pizza cost 10,000 bitcoins and
rency. Indeed, the lack of such a cur- In this way, because of the monetary the networks mining power was less
rency is a major part of the motivation incentives, miners ensure each others than a trillionth of what it is today.
for proof of work in the first place. One compliance with the protocol. Public keys as identities. This arti-
crude solution to this problem is to de- Bitcoin neatly avoids the double- cle began with the understanding that
clare puzzle solutions to be cash, as spending problem plaguing proof-of- a secure ledger makes creating digital
hashcash tries to do. work-as-cash schemes because it es- currency straightforward. Lets revisit
this claim. When Alice wishes to pay way, and thus achieves pseudonymity
Bob, she broadcasts the transaction to (that is, public keys as identities) for
all bitcoin nodes. A transaction is sim- free. Chaum took these ideas much
ply a string: a statement encoding Al- further in a 1985 paper,11 where he
ices wish to pay Bob some value,
signed by her. The eventual inclusion The term presents a vision of privacy-preserving
e-commerce based on pervasive
of this signed statement into the led-
ger by miners is what makes the trans-
blockchain has no pseudonyms, as well as blind signa-
tures, the key technical idea behind
action real. Note that this doesnt re- standard technical his digital cash.
quire Bobs participation in any way.
But lets focus on whats not in the
definition but is a The public-keys-as-identities idea is
also seen in b-money and bit gold, the
transaction: conspicuously absent are loose umbrella term two precursor essays to bitcoin dis-
Alice and Bobs identities; instead, the
transaction contains only their re-
used by various cussed earlier. However, much of the
work that built on Chaums founda-
spective public keys. This is an impor- parties to refer tion, as well as Chaums own later
tant concept in bitcoin: public keys
are the only kinds of identities in the to systems that work on ecash, moved away from this
idea. The cypherpunks were keenly in-
system. Transactions transfer value bear varying levels terested in privacy-preserving commu-
from and to public keys, which are
called addresses. of resemblance nication and commerce, and they em-
braced pseudonyms, which they
In order to speak for an identity,
you must know the corresponding se-
to bitcoin and called nyms. But to them, nyms were
not mere cryptographic identities
cret key. You can create a new identity its ledger. (that is, public keys), but rather, usu-
at any time by generating a new key ally email addresses that were linked
pair, with no central authority or reg- to public keys. Similarly, Ian Gold-
istry. You do not need to obtain a user bergs dissertation, which became
name or inform others that you have the basis of much future work on
picked a particular name. This is the anonymous communication, recog-
notion of decentralized identity man- nizes Chaums idea but suggests
agement. Bitcoin does not specify how that nyms should be human-memo-
Alice tells Bob what her pseudonym rable nicknames with certificates to
isthat is external to the system. bind them.20 Thus Bitcoin proved to
Although radically different from be the most successful instantiation
most other payment systems today, of Chaums idea.
these ideas are quite old, dating back
to David Chaum, the father of digital The Blockchain
cash. In fact, Chaum also made semi- So far, this article has not addressed
nal contributions to anonymity net- the blockchain, which, if you believe
works, and it is in this context that he the hype, is bitcoins main invention.
invented this idea. In his 1981 paper, It might come as a surprise to you that
Untraceable Electronic Mail, Return Nakamoto doesnt mention that term
Addresses, and Digital Pseudonyms,9 at all. In fact, the term blockchain has
he states: A digital pseudonym is a no standard technical definition but
public key used to verify signatures is a loose umbrella term used by vari-
made by the anonymous holder of the ous parties to refer to systems that bear
corresponding private key. varying levels of resemblance to bit-
Now, having message recipients be coin and its ledger.
known only by a public key presents an Discussing example applications
obvious problem: there is no way to that benefit from a blockchain will
route the message to the right comput- help clarify the different uses of the
er. This leads to a massive inefficien- term. First, consider a database back-
cy in Chaums proposal, which can be end for transactions among a consor-
traded off against the level of ano- tium of banks, where transactions are
nymity but not eliminated. Bitcoin netted at the end of each day and ac-
is similarly exceedingly inefficient counts are settled by the central bank.
compared with centralized payment Such a system has a small number of
systems: the ledger containing every well-identified parties, so Nakamoto
transaction is maintained by every consensus would be overkill. An on-
node in the system. Bitcoin incurs this blockchain currency is not needed ei-
inefficiency for security reasons any- ther, as the accounts are denominated
search. Moreover, Nakamoto did not Grigg, Joseph Bonneau, Malte Mser, http://www.isoc.org/isoc/conferences/ndss/98/just.
pdf.
care for academic peer review and did Mike Just, Neha Narula, Steven Gold- 27. Lamport, L., et al. The Byzantine Generals Problem.
not fully connect it to its history. As a feder, and Stuart Haber for their valu- ACM Trans. Programming Languages and Systems
4, 3 (1982), 382401; https://dl.acm.org/citation.
result, academics essentially ignored able feedback. cfm?id=357176 .
bitcoin for several years. Many aca- 28. Lamport, L. The part-time parliament. Digital
Equipment Corp., 1989; https://computerarchive.org/
demic communities informally ar- References files/mirror/www.bitsavers.org/pdf/dec/tech_reports/
1. Aspnes, J., et al. Exposing computationally challenged SRC-RR-49.pdf.
gued that Bitcoin could not work, Byzantine imposters. Yale University Department 29. Lamport, L. Paxos made simple, 2001; http://lamport.
based on theoretical models or experi- of Computer Science, 2005; http://cs.yale.edu/ azurewebsites.net/pubs/paxos-simple.pdf.
publications/techreports/tr1332.pdf. 30. Laurie, B. Certificate transparency. acmqueue 12, 1
ences with past systems, despite the 2. Back, A. A partial hash collision based postage (2014); https://queue.acm.org/detail.cfm?id=2668154.
fact it was working in practice. scheme, 1997; http://www.hashcash.org/papers/ 31. Levy, K.E.C. Book-smart, not street-smart: blockchain-
announce.txt. based smart contracts and the social workings of law.
We have seen repeatedly that ideas 3. Back, A. Hash cash, 2001; https://web.archive.org/ Engaging Science, Technology, and Society 3 (2017),
in the research literature can be grad- web/20010614013848/http://cypherspace.org/ 115; http://estsjournal.org/article/view/107.
hashcash/. 32. Melara, M., et al. CONIKS: Bringing key transparency
ually forgotten or lie unappreciated, 4. Back, A. Hashcasha denial of service counter to end users. In Proceedings of the 24th Usenix
measure, 2002; http://www.hashcash.org/papers/
especially if they are ahead of their hashcash.pdf.
Security Symposium, 2015; https://www.usenix.org/
system/files/conference/usenixsecurity15/sec15-
time, even in popular areas of re- 5. Bayer, D., Haber, S. and Stornetta, W.S. Improving the paper-melara.pdf.
efficiency and reliability of digital time-stamping. In
search. Both practitioners and aca- Proceedings of Sequences (1991); https://link.springer.
33. Merkle, R.C. Protocols for public key cryptosystems.
In Proceedings of the IEEE Symposium on Security
demics would do well to revisit old com/chapter/10.1007/978-1-4613-9323-8_24. and Privacy, 1980; http://www.merkle.com/papers/
6. Benaloh, J., de Mare, M. Efficient broadcast
ideas to glean insights for present sys- timestamping, 1991; http://citeseerx.ist.psu.edu/
Protocols.pdf.
34. Nakamoto, S. Bitcoin: A peer-to-peer electronic cash
tems. Bitcoin was unusual and suc- viewdoc/summary?doi=10.1.1.38.9199. system, 2008; https://bitcoin.org/bitcoin.pdf.
7. Boyle, T.F. GLT and GLR: Component architecture for
cessful not because it was on the cut- general ledgers, 1997;https://linas.org/mirrors/www.
35. Nakamoto, S. Re: Bitcoin P2P e-cash paper, 2008;
http://satoshi.nakamotoinstitute.org/emails/
ting edge of research on any of its gldialtone.com/2001.07.14/GLT-GLR.htm. cryptography/11/.
8. Castro, M. and Liskov, B. Practical Byzantine fault 36. Narayanan, A., et al. Bitcoin and Cryptocurrency
components, but because it combined tolerance. In Proceedings of the Third Symposium Technologies: A Comprehensive Introduction.
old ideas from many previously unre- on Operating Systems Design and Implementation Princeton University Press, 2016; http://bitcoinbook.
(1999); http://pmg.csail.mit.edu/papers/osdi99.pdf. cs.princeton.edu/.
lated fields. This is not easy to do, as it 9. Chaum, D. Untraceable electronic mail, return 37. Pass, R., et al. Analysis of the blockchain protocol
requires bridging disparate terminol- addresses, and digital pseudonyms. Commun. ACM in asynchronous networks. In Proceedings
24, 2 (Feb. 1981), 8490; https://dl.acm.org/citation. of the 2017 International Conference on the
ogy, assumptions, and so on, but it is a cfm?id=358563. Theory and Applications of Cryptographic
valuable blueprint for innovation. 10. Chaum, D. Blind signatures for untraceable payments. Techniques; https://link.springer.com/
Advances in Cryptology, 1983, 199-203. chapter/10.1007/978-3-319-56614-6_22.
Practitioners would benefit from 11. Chaum, D. Security without identification: transaction 38. Pinkas, B. and Sander, T. Securing passwords against
systems to make Big Brother obsolete. Commun ACM
being able to identify overhyped tech- 28, 10 (Oct. 1985), 10301044; https://dl.acm.org/
dictionary attacks. In Proceedings of the Ninth ACM
Conference on Computer and Communications
nology. Some indicators of hype: diffi- citation.cfm?id=4373. Security, 2002, 161170; https://dl.acm.org/citation.
12. Chaum, D., et al. Untraceable electronic cash.
culty identifying the technical innova- Advances in Cryptology, 1988, 319327; https://
cfm?id=586133.
39. Reuters. Mind your wallet: Why the underworld loves
tion; difficulty pinning down the dl.acm.org/citation.cfm?id=88969. bitcoin, 2014; http://www.cnbc.com/2014/03/14/mind-
13. Dai, W. 1998; http://www.weidai.com/bmoney.txt.
meaning of supposedly technical 14. Douceur, J.R. The Sybil attack, 2002; https://dl.acm.
your-wallet-why-the-underworld-loves-bitcoin.html.
40. Rivest, R.L. and Shamir, A. PayWord and MicroMint:
terms, because of companies eager to org/citation.cfm?id=687813. Two simple micropayment schemes. In Proceedings
15. Dwork, C. and Naor, M. Pricing via processing or
attach their own products to the combatting junk mail, 1992; https://dl.acm.org/
of the 1996 International Workshop on Security
Protocols.
bandwagon; difficulty identifying the citation.cfm?id=705669. 41. Sirer, E.G. Bitcoin guarantees strong, not eventual,
16. Felten, E. Smart contracts: neither smart nor consistency. Hacking, Distributed, 2016; http://
problem that is being solved; and fi- contracts? Freedom to tinker, 2017; https://freedom- hackingdistributed.com/2016/03/01/bitcoin-
nally, claims of technology solving so- to-tinker.com/2017/02/20/smart-contracts-neither- guarantees-strong-not-eventual-consistency/.
smart-not-contracts/. 42. Szabo, N. Smart contracts, 1994; http://www.fon.hum.
cial problems or creating economic/ 17. Franklin, M.K. and Malkhi, D. Auditable metering and uva.nl/rob/Courses/InformationInSpeech/CDROM/
political upheaval. lightweight security, 1997; http://www.hashcash.org/ Literature/LOTwinterschool2006/szabo.best.vwh.net/
papers/auditable-metering.pdf. smart.contracts.html.
In contrast, academia has difficul- 18. Gabber, E., et al. Curbing junk e-mail via secure 43. Szabo, N. Bit gold. Unenumerated, 2008; https://
ty selling its inventions. For example, classiffication, 1998; http://www.hashcash.org/papers/ unenumerated.blogspot.com/2005/12/bit-gold.html.
secure-classification.pdf. 44. Vishnumurthy, S., Chandrakumar, S. and Sirer, E.G.
its unfortunate that the original 19. Garay, J A., et al. The bitcoin backbone protocol: Karma: A secure economuc framework for P2P
analysis and applications. Advances in Cryptology,
proof-of-work researchers get no 2015, 281310; https://eprint.iacr.org/2014/765.pdf.
resource sharing. In Proceedings of the Workshop on
the Economics of Peer-to-Peer Systems (Berkeley, CA,
credit for bitcoin, possibly because 20. Goldberg, I. A pseudonymous communications June 2003).
infrastructure for the Internet. Ph.D. dissertation.
the work was not well known outside University of California Berkeley, 2000; http://moria.
45. Wattenhofer, R. The Science of the Blockchain.
Inverted Forest Publishing, 2016.
academic circles. Activities such as freehaven.net/anonbib/cache/ian-thesis.pdf.
21. Grigg, I. Triple entry accounting, 2005; http://iang.org/
releasing code and working with papers/triple_entry.html.
Arvind Narayanan is an assistant professor of computer
practitioners are not adequately re- 22. Haber, S. and Stornetta, W.S. How to
science at Princeton University. He leads the Princeton
timestamp a digital document. J. Cryptology
warded in academia. In fact, the orig- 3, 2 (1991), 99111; https://link.springer.com/
Web Transparency and Accountability Project to uncover
how companies collect and use our personal information.
inal branch of the academic proof-of- chapter/10.1007/3-540-38424-3_32.
Twitter @random_walker.
23. Haber, S. and Stornetta, W.S. Secure names for bit-
work literature continues today strings. In Proceedings of the 4th ACM Conference on Jeremy Clark is an assistant professor at the Concordia
without acknowledging the existence Computer and Communications Security, 1997, 2835; Institute for Information Systems Engineering.
http://dl.acm.org/citation.cfm?id=266430. He has also worked with several municipalities on voting
of bitcoin! Engaging with the real 24. Jakobsson, M. and Juels, A. Proofs of work and bread technology and testified to the Canadian Senate on bitcoin.
world not only helps get credit, but pudding protocols, 1999; http://www.hashcash.org/ Twitter @PulpSpy.
papers/bread-pudding.pdf.
will also reduce reinvention and is a 25. Juels, A. and Brainard, J. Client puzzles: a
source of fresh ideas. cryptographic countermeasure against connection
completion attacks. In Proceedings of Networks and
Acknowledgments. Thanks to Adam Distributed Security Systems, 1999, 151165; https://
www.isoc.org/isoc/conferences/ndss/99/proceedings/
Back, Andrew Miller, Edward Felten, papers/juels.pdf.
Harry Kalodner, Ian Goldberg, Ian 26. Just, M. Some timestamping protocol failures, 1998; Copyright held by owners/authors.
Are Like
a trust boundary. XML and JSON are
more flexible and dynamic as they cap-
ture the information and its metadata.
This makes it easy and flexible to squirt
Cardboard
data across trust boundaries.
Self-defining and self-identifying.
Cardboard is usually self-describing.
Your new TV has printing on the out-
side of the box telling you whats inside
the box. As you move your old TV to
your new home, you write TV on the
outside of the moving box.
JSON and XML are usually self-
describing. This can be done by refer-
encing a schema or by examining the
attributes expressed within the docu-
IN TODAYS WORLD, cardboard is an ever-important ment/file itself.
Generic vs. custom. The last time we
part of life. Given the major investment of resources moved to a new home, I bought a bunch
and money, you might question whether its worth it. It of boxes of varying sizes, tape, wrap-
ping paper, and padding, and a bunch
turns out the efficiencies and savings from cardboard of marking pens. Like most other folks
outstrip the costs to manufacture and later recycle it. in the throes of packing and moving, we
Semi-structured representations of data are not worked hard to describe the contents
of every box we filled, but we occasion-
the cheapest format. There is typically a lot of extra ally messed up and omitted some items
stuff like angle brackets contained in it. JSON, XML, from the list as everything went into a
box. Most things fit well into one of the
and other semi-structured representations allow for standard boxes, although some of our
wonderful flexibility and dynamic interpretation. The household items involved really cre-
efficiencies and savings gained from flexibility more ative uses of cardboard, tape, and pad-
ding as we worked to protect our stuff.
than make up for the overhead. Manufactured items frequently have
Cardboard surrounds and protects stuff as it custom-made cardboard protection.
My wife loves the vacuum cleaners from
moves across boundaries. No one uses cardboard one particular manufacturer. Indeed,
to move parts around within a factory. Instead, they the shape, form, and workings of the
use custom-designed containers that are specially vacuums can be fun and surprising. To
me, half the fun is disassembling the
purposed for the parts being produced. Cardboard is cardboard protection used inside the
used to protect the stuff as it leaves the factory. cardboard box. There are dozens of spe-
Research
tence (Can we stop global warm-
ing?). Historically, as Galileos en-
counters with the Roman Inquisition
showed, unorthodoxy could have very
for Practice:
serious consequences. Recent scien-
tific debates have tended to be calmer,
but being on the wrong side of an issue
can still have career-altering conse-
Vigorous
quences (http://bit.ly/2xzYddN). Com-
puter science, perhaps because it is
young and well funded, seems to have
been relatively free of real schisms, but
Public Debates
it still inspires energetic debates.
Computer science does not have a
culture of retraction, and in any case
in Academic
many of these debates are not about
the kinds of mistakes that lead to re-
tractions. The useful debates, the ones
Computer Science
we can learn from, are those where
both sides are publicly available in
writing. These are a valuable instruc-
tional resource, and I sometimes as-
sign them as reading to my students.
They show an important part of sci-
ence that often gets swept under the
rugstudents enjoy seeing that things
are not as cut-and-dried as teachers of-
ten try to make them sound. It is useful
Research for Practice features
T H I S I N S TA L L M E N T O F to try to figure out who is right and who
is wrong. Alternatively, some debates
a special curated selection from John Regehr, who are more about personalities, and still
takes us on a tour of great debates in academic others feature researchers talking past
each other based on their different as-
computer science research. In case you thought sumptions and perspectives.
flame wars were reserved for Usenet mailing lists Considered harmful. An early de-
and Twitter, think again: the academic literature is bate, which feels a bit quaint now, be-
gan when Edsger Dijkstra published
full of dramatic, spectacular, and vigorous debates Go-To Statement Considered Harmful
spanning file systems, operating system kernel (1968), which argued against unstruc-
tured control flow in programming
design, and formal verification. Please enjoy! languages. Follow-ups included Go-
Peter Bailis To Considered Harmful Considered
Harmful and Go-To Considered Harm-
Peter Bailis is an assistant professor of computer science at Stanford University. His research
in the Future Data Systems group (futuredata.stanford.edu) focuses on the design and implementation
ful Considered Harmful Considered
of next-generation data-intensive systems. Harmful (1987).
Cybersecurity,
nology would allow a single-chip search
engine to check 106 keys per second, so
106 such chips could search the entire
key space in 105 seconds. That is ap-
Nuclear
proximately one day, and we estimated
the equivalent cost to be on the order of
$5,000 per recovered key. We also noted
that the decreasing cost of computa-
Security,
tionroughly a factor of 10 every five
yearswould rapidly reduce this cost.
Even an order-of-magnitude error in
our estimate would thus be erased in a
Alan Turing,
short time.3
We initially thought the inadequate
key size was a mistake that would be
corrected once we pointed it out, but
and
NBS resisted, claiming our estimates
were off by four orders of magnitude.
Our initial estimate had been a rough
order-of-magnitude approximation
Illogical Logic
that was adequate to show the need for
an increased key size. But NBSs esti-
mate was clearly wrong, and we came to
realize we were indirectly battling the
National Security Agency (NSA), in addi-
tion to NBS.
A larger key size would allow foreign
governments, criminals, and terrorists
to hide their communications from
THE 2015 ACM A.M. Turing Award recognized work I did NSA, while 56 bits would not. What we
had thought was a technical problem
40 years ago, so it is understandable that my interests
have changed significantly, with my most recent project key insights
being a book, A New Map for Relationships: Creating While revolutionary, public key
True Love at Home & Peace on the Planet, co-authored cryptography can also be viewed as
a natural step in the evolution
with my wife Dorothie. While, at first glance, the book of the field of cryptography.
IMAGE BY AND RIJ BORYS ASSOCIAT ES
might seem to have nothing in common with my work There is greater risk than is generally
recognized that a major advance in
on cryptography, my Turing Lecture drew a number of factoring and discrete logarithms might
parallels I will bring out in what follows. break existing public key systems.
The story starts in March 1975, when the U.S. In making ethical decisions, we need to
zealously guard against fooling ourselves
National Bureau of Standards (NBS), now known as about our real motivations.
turned out to be political. If we wanted from TDCs to public key.4 TDCs oc-
to improve the security of the standard, curred to us because, in the military,
we would have to treat it as a political you want a highly secure cipher for use
battle by seeking media coverage and by your own troops but do not want it to
Congressional hearingswhich we
did. While Diffie and I be used to keep secrets from you if it is
captured by your adversary. We realized
The fight that followed was part of
the first crypto war. While the media
saw a 56-bit key that a solution was to build trapdoor in-
formation into the cryptosystem that
and several members of Congress sup- as small, would allow the designer to break it
ported Diffies and my position, we lost
this part of it. DES, including its 56-bit
we now know easily if it was used against him, but
without that information his adversary
key, was the official encryption stan- it looked large would be unable to cryptanalyze his en-
dard from 1977 until 2002 when it was
superseded by the Advanced Encryp-
from NSAs crypted messages. While we never de-
veloped a workable TDC, the concept
tion Standard, or AES, which has a min- perspective. figured prominently in a later analysis
imum key size of 128 bits. of DES Diffie and I undertook, with oth-
Diffie and I recommended triple- ers.8 We found structures within DES
DES3 as a simple, albeit more expen- that looked like they might constitute a
sive, way to improve DES security, but trapdoor, although later developments
most implementations used the less- indicate they were probably due to ef-
secure approach. forts to strengthen the algorithm
against differential cryptanalysis.1
Public Key Cryptography and It is also noteworthy that half of the
the DES Controversy public key conceptpublic key ex-
Within a year of DES being proposed in changeoccurred independently to
1975, a developmentthe invention of three different groups within a short
public key cryptography by Diffie and period of time.
me4 and independently by Ralph Merk- According to documents declassi-
le12exacerbated NSAs concerns. fied years later,5 variations occurred
While Diffie and I saw a 56-bit key as in 1970, 1973, and 1974 to researchers
small, we now know it looked large James Ellis, Clifford Cocks, and Mal-
from NSAs perspective. Prior to DES, colm Williamson of the Government
most commercial encryption systems Communications Headquarters (GCHQ),
could be broken much faster than DES, the British agency responsible for
and most data was sent unencrypted, providing signals intelligence and in-
allowing access at no cryptanalytic cost. formation assurance to that nation,
In comparison, even $5,000 per re- though none of their work envisioned
covered key was a huge impediment to digital signatures.
NSAs communications-intelligence Ralph Merkle, then a student at the
operation. But it appears to have rea- University of California at Berkeley, de-
soned that cost would limit the fre- veloped the concept of a public key dis-
quency of key changes so a recovered tribution system in the fall of 1974 and
key would be useful for months, per- published it, along with a proof of con-
haps years. The invention of public key cept (Merkle puzzles), in Communica-
cryptography allowed keys to be tions, April 1978.12
changed as frequently as desired, mak- Unaware of the still-secret GCHQ
ing $5,000 per key a much more daunt- work and Merkles budding ideas, Dif-
ing barrier for an adversary. fie and I proposed a more general
frameworka public key cryptosys-
Evolution of Public Key temin the Spring of 1975. This ap-
Cryptography proach included digital signatures, as
While public key cryptography is seen well as public key exchange, with digital
as revolutionarya characterization I signatures being an entirely new idea,
loveafter the following explanation, even within the classified community.
one might wonder why it took Diffie, In May 1976, Diffie and I developed
Merkle, and me so long to discover. the first practical, unclassified system
Diffie and I had been talking about for public key exchange, publishing
trapdoor cryptosystems (TDCs) for both it and the public key cryptosystem
some time before we devised the public concept in our paper New Directions
key concept, and it is but a small step in Cryptography in IEEE Transactions
on Information Theory, November 1976.4 Born Classified? Project, the consequences of fooling
That public key exchange system is wide- NSAs concerns led it to try to control myself would have been far more grave,
ly known as Diffie-Hellman Key Ex- dissemination of our work.2 In January I vowed never to fool myself again, al-
change, but somewhat ironically, it is an 1976, soon after Diffie and I realized the though implementing that decision
implementation of Merkles public key need to treat DESs inadequate key size proved tricky during Stanford Univer-
distribution system concept, not our as a political rather than a technical sitys patent fight with RSA Data Secu-
public key cryptosystem concept. I there- problem, two high-level NSA employ- rity. Space does not allow me to provide
fore refer to it as the Diffie-Hellman- ees flew out to California and tried to the details here, but the interested
Merkle Key Exchange. dissuade us from pursuing the matter. reader can find a description on pages
In light of the frequent interactions They basically told us, Youre wrong, 4654 of our book;7 a free .pdf file is
Diffie and I had, I regard everything in but please be quiet. If you keep talk- also available at http://tinyurl.com/
New Directions as joint work, though ing this way, you will cause grave harm HellmanBook, expanding to http://
some scholars have noted (correctly) to national security. But that did not www-ee.stanford.edu/%7Ehellman/
that Diffie devised the public key cryp- compute. What they were really saying publications/book3.pdf. Those same
tosystem concept, while I discovered was, Youre right, but please be quiet. pages explain why I believe the Man-
the Diffie-Hellman-Merkle Key Ex- If you keep talking this way, you will hattan Project scientists fooled them-
change algorithm. Because those indi- cause grave harm to national security. selves about their motivation for work-
vidual insights were based on long- I went home that evening to decide ing on the bomb.
term joint work, I tend not to separate the right thing to do. NSA was telling The fight Diffie and I were having
credit. me the right thing was to be quiet, while with NSA came to a head on July 7,
A full, working public key cryptosys- my intellect told me the opposite, even 1977, when one of its employees wrote
tem was not realized until April 1977 from a purely national perspective. The to the IEEE, claiming it was breaking
when Ron Rivest, Adi Shamir, and U.S. was the worlds most computer- the law by publishing our papers.14 He
Leonard Adleman published their MIT ized nation, with the most to lose from cited the International Traffic in Arms
report that, in slightly modified form, insecure encryption. The Soviet Union Regulations (ITAR), which, at the time,
became their famous 1978 RSA paper had much less to lose and much more defined anything cryptographic as an
in Communications.17 to gain from leaving the DES key at 56 implement of war, requiring an export
While Merkles 1978 publication bits. Also, NSAs request occurred soon license. An export license was re-
datetwo years after New Direc- after the Watergate revelations had quired not only for physical devices
tionsgives the impression that it fol- shown that claims of national security but also for technical data related to
lowed in our footsteps, he submitted could be misused to the detriment of them. He claimed our papers consti-
his paper earlier than we did, in Au- the nation. tuted such technical data and they
gust 1975. Its publication was delayed As I was trying to decide the right were, of course, exported when pub-
by an editor who initially rejected it, thing to do, an idea popped into my lished internationally.
writing, on October 22, 1975, I was head: Forget about what is right and The IEEE wrote back, telling the
particularly bothered by the fact that wrong. You have a tiger by the tail and NSA employee it was aware of ITAR, but
there are no references to the litera- will never have as much chance to influ- the burden of obtaining any Govern-
ture. Has anyone else ever investigated ence events. Run with it! ment approval for publication of tech-
this approach?6 Somehow, what would normally be nical data [was] on the person or com-
In the editors defense, Merkle was a an unconscious shadow motivation pany seeking publication, namely me
student unfamiliar with how to write had managed to bubble to the surface and Stanford University.14 A copy of this
and adequately reference a technical and become a devil on my shoulder, reply was sent to me, and I took it to
paper; the person who reviewed it (de- like in the movies. At the time, I thought Stanfords General Counsel John
scribed by the editor as an experienced I had brushed the devil off my shoulder Schwartz both because Stanford was
cryptography expert) recommended and made a rational decision to go pub- potentially liable and because I wanted
against publishing it, noting that it . . . lic with our analysis of the standards to ensure it would defend me if I was
is not in the mainstream of present weakness. But five years later, in trying prosecuted.
cryptography thinking, and no one to understand the motivation of the Schwartz took a few days to review
else at Berkeley, where Merkle was Manhattan Project scientists who de- the matter, after which we had a second
then a student, appreciated his work. veloped the atom bomb during World meeting. He believed that publishing
Earlier, in the fall of 1974, a Berkeley War II, I realized I had fooled myself. my papers was lawful but noted there
professor discouraged him from pur- Instead of doing what was right, I had was at least one contrary view (ex-
suing public key distribution as a figured out what I wanted to do, and pressed by the NSA employee) and
term project, telling him, Project 2 [a then had come up with the rationaliza- should such view be adopted by the
much more mundane proposal] looks tion for doing it. Federal Government you could be sub-
more reasonable, maybe because your I was fortunate that my decision to jected to prosecution. He went on to
description of Project 1 is muddled go public was the right one, even assure me that, should that occur, the
terribly. Merkle dropped the course though I had fooled myself about my University would defray the reasonable
and pursued public key distribution motivation. But that was sheer luck. If I costs of your defense . . . nevertheless,
on his own. had been working on the Manhattan there would always remain a risk to you
personally of fine or imprisonment if ence, but NSA was able to keep DESs into friendship as we came to appreci-
the government prevailed in such a key size at 56 bits. ate one anothers concerns.
case.19 Commercial encryption did not be- The real break came in the mid-
Schwartz also advised me to change come truly secure until some parties 1990s when Congress requested the
my plans for having two students, on both sides of the battle learned a National Research Council undertake
Ralph Merkle and Stephen Pohlig, de- lesson my wife and I later emphasized a study of national cryptographic poli-
liver joint papers at the upcoming 1977 in our book7the need to get curious, cy. The study committee represented
IEEE Symposium on Information The- not furious. Since the emphasis here is all major stakeholders, including law
ory. He explained that a long court case cybersecurity, I refer those interested enforcement, national security, in-
might kill the career of a newly minted in more personal details to the books dustry, health care, and privacy. By
Ph.D., whereas I had tenure. I relayed Chapter 3, also called Get Curious, talking to one anotherand, more
this to Merkle and Pohlig, telling them I Not Furious. That same shift started a important, listening to one another
had no qualms about delivering the pa- process that led to the strong encryp- we were able to reach unanimous con-
pers but would leave the decision to tion available on todays commercial clusions that encouraged a significant
them. Both said they would deliver the products. It started in 1978 when I re- loosening of the export restrictions on
papers anyway but later changed their ceived a call from NSA saying its Direc- encryption products. This further ex-
minds to assuage fears expressed by tor, Admiral Bobby Inman, would like ample of getting curious instead of fu-
their parents. to visit me and asking if I was open to rious laid the foundation for wide-
Wanting these students to get the the idea. spread availability of strong
credit they deserved, when it was time Up to that point, we had fought encryption in commercial products,
for each paper to be delivered, I had the these battles indirectly, with no direct with export restrictions being signifi-
student co-author stand next to me at interchange, so I jumped at the oppor- cantly relaxed soon thereafter.
the podium. I then told the audience tunity. When Admiral Inman came to The value of adversaries talking and
that, on the advice of Stanfords coun- my office, he told me he was meeting listening can also be seen in a 2014 in-
sel, I would be delivering the papers, with me against the advice of all the terview with Admiral Inman conducted
but to give the student the credit he de- other senior people at the Agency but by Stanford cryptography student Hen-
served, they should consider the words saw no harm in talking. He was curi- ry Corrigan-Gibbs. When asked if he
coming from my mouth as if they were ous, not furious. He also said it was now would make the same decision he
coming from his. This gave Merkle and nice to see I did not have hornswhich did 40 years ago to try to suppress our
Pohlig even more credit for their work must have been how I was being de- work, Inman replied, Rather than be-
than if they had delivered the talks picted at the Agency. I returned the ing careful to make sure they [were not]
without any threats. compliment, since I had seen myself as going to damage [NSAs intelligence op-
Luke Skywalker to NSAs Darth Vader. I erations] . . . I would have been inter-
Get Curious, Not Furious was in my early 30s at the time, so the ested in how quickly they were going to
This first round of the crypto wars had young-hero model was more appropri- be able to make [encryption widely]
mixed results. We established that in- ate than it would be today, when I am available. He cited the theft of por-
dependent researchers could publish 72 years old. My relationship with In- tions of the F-35 jet fighter design as
papers free of government interfer- man was cautious at first but it grew proof that strong commercial encryp-
tion was in the U.S.s broader national
security interests.2
Cantors diagonalization argument. FOR i=1, i++ 10, 6 (June 1977), 7484; http://www-ee.stanford.
edu/%7Ehellman/publications/27.pdf
Assume there is an enumeration of the Compute bii the ith binary
{ 4. Diffie, W. and Hellman, M. New directions in
real numbers decimal place of the ith cryptography. IEEE Transactions on Information
Theory IT-22, 6 (Nov. 1976), 644654; http://www-ee.
c
omputable real number, and stanford.edu/%7Ehellman/publications/24.pdf
R1 = I1 . b11 b12 b13 print ~bii} 5. Ellis, J. The history of non-secret encryption.
Cryptologia 23, 3 (1999), 267273.
R2 = I2 . b21 b22 b23 6. Graham, S. Letter to Ralph C. Merkle (Oct. 22, 1975);
R3 = I3 . b31 b32 b33 and so on This reasoning, drawn from Section http://www.merkle.com/1974/RejectionLetter.pdf
7. Hellman, D. and Hellman M. A New Map for Relationships:
8 of Turings paper, is almost exactly Creating True Love at Home & Peace on the Planet.
where Ri is the (assumed) ith real num- the same as was used to prove the real New Map Publishing, Stanford, CA, 2016; http://tinyurl.
com/HellmanBook, expanding to http://www-ee.
ber, Ii is its integer part, and bij is its jth numbers are not countable. But there is stanford.edu/%7Ehellman/publications/book3.pdf
8. Hellman, M., Merkle, R., Schroeppel, R., Washington,
binary decimal place . To complete the a difference, as there must be, since the L., Diffie, W., Pohlig, S., and Schweitzer, P. Results
proof, consider the real number proof here produced a contradiction of an Initial Attempt to Cryptanalyze the NBS Data
Encryption Standard. Technical Report SEL 76-042
to a known fact: The computable real (available from NTIS). Electrical Engineering
R = 0 . ~b11 ~b22 ~b33 numbers are countable. Department, Stanford University, Stanford, CA, Sept.
9, 1976 (revised Nov. 10, 1976); http://tinyurl.com/nbs-
This line of reasoning involves a very des-analysis, expanding to http://www-ee.stanford.
where ~bjj is the complement of bjj. subtle, hidden assumptionthat there edu/~hellman/resources/1976_sel_des_report.pdf
9. Hellman, M. Risk analysis of nuclear deterrence. The
This real number R is different from exists a computable enumeration of the Bent of Tau Beta Pi 99, 2 (Spring 2008), 1422; http://
R1 since they differ at least in their first computable real numbers. An enumer- tinyurl.com/hellman74, expanding to http://www-ee.
stanford.edu/%7Ehellman/publications/74.pdf
binary decimal places. It is different from ation exists, but we can never compute 10. Hellman, M. How risky is nuclear optimism? Bulletin of
R2, since they differ at least in their it. In a sense, only God knows it, while the Atomic Scientists 67, 2 (Mar. 2011), 4756; http://
tinyurl.com/HowRisky, expanding to http://www-ee.
second binary decimal places. Similar we mortal humans cannot. stanford.edu/~hellman/publications/75.pdf
arguments apply to each Ri in the as- I was dumbfounded. If an incorrect 11. Lehmer, D. and Powers, R. On factoring large numbers.
Bulletin of the American Mathematical Society 37, 10
sumed list. We had assumed the list assumption can be that subtle, what (1931), 770776.
included all the reals, but R is not in others might have been missed in oth- 12. Merkle, R. Secure communication over insecure
channels. Commun. 21, 4 (Apr. 1978), 294299.
the enumeration, so the reals are not er proofs? Is mathematics itself on a 13. Merkle, R. A digital signature based on a conventional
encryption function. In Advances in Cryptology,
countably infinite. firm foundation? Might Cantors proof CRYPTO 1987, Lecture Notes in Computer Science,
So far, I was not too perturbed. But that the reals are uncountably infinite Vol. 293 (Santa Barbara, CA, Aug. 1620). Springer-
Verlag, Berlin, Heidelberg, Germany, 1988, 369378.
then the professor defined the comput- have a similar flaw? (I still wonder 14. Meyer, J. Letter to IEEE (July 7, 1977); https://stacks.
able real numbers, a concept first in- about that.) stanford.edu/file/druid:wg115cn5068/1977%20
0707%20Meyer%20letter.pdf and https://purl.
troduced by Turing in his brilliant 1936 My world was shaken in that course, stanford.edu/wg115cn5068
paper. 21 A computable real number but not enough for me to give up logic 15. Morrison, M. and Brillhart, J. A method of factoring
and the factorization of F7. Mathematics of
is one that can be computed to as as the primary basis for my personal Computation 29, 129 (Jan. 1975), 183205.
many decimal places as desired in a and professional life. That took 10 16. Pomerance, C. A tale of two sieves. Notices of the AMS
43, 12 (Dec. 1996), 14731485.
finite (though indeterminate) time more years and almost ruining my mar- 17. Rivest, R., Shamir, A., and Adleman, L. A method for
by a finite-length program. While, at riage before I finally accepted what obtaining digital signatures and public-key cryptosystems.
Commun. ACM 21, 2 (Feb. 1978), 120126.
first, this set might seem to depend Gdel and Turing had been implicitly 18. Sanger, D. U.S. must step up capacity for cyberattacks,
on the machine being used, that problem telling me: Logic is just one way of chief argues. The New York Times (Mar. 20, 2015), A4.
19. Schwartz, J. Memo to Martin Hellman (Oct. 7, 1977);
was removed by using a Universal Turing knowing about the world, and an in- https://stacks.stanford.edu/file/druid:wg115cn5068/
Machine that can simulate any other complete one at that. 1977%201007%20Schwartz2MH.pdf
20. Shor, P. Polynomial-time algorithms for prime
physical computer with only a finite I learned the limits of logic in time to factorization and discrete logarithms on a quantum
computer. SIAM Journal on Computing 26, 5 (1997),
increase in program size and run save my marriage. Will humanity learn 14841509.
time over what would be needed on the limits of its current logic in time 21. Turing, A. On computable real numbers, with an
application to the Entscheidungsproblem. Proceedings
the machine being simulated. to save the world and itself? Dorothie of the London Mathematical Society, Series 2 42
The set of finite-length programs and I wrote our book partly to increase (1936), 230265; https://www.cs.virginia.edu/~robins/
Turing_Paper_1936.pdf
can clearly be enumerated, as in 0, 1, those odds, even if just a bit. That pro-
00, 01, 10, 11, 000, and so on. Since not vides yet one more connection between
every finite-length program produces a the work that won me the ACM A.M. Martin E. Hellman (martydevoe@gmail.com) is Professor
Emeritus of Electrical Engineering at Stanford University,
computable real numbersome get Turing Award and the book. What is the Stanford, CA.
hung up in infinite loops and provide point of developing elegant algorithms
Copyright held by author.
no outputthe set of computable real (such as Diffie-Hellman-Merkle Key Ex- Publication rights licensed to ACM, $15.00
numbers is also countably infinite. But change) if no one is around in 100 years
the professor then seemed to prove that to use them?
the computable real numbers were un-
countably infinite by writing the follow- References
ing program: 1. Coppersmith, D. The Data Encryption Standard (DES)
and its strength against attacks. IBM Journal of
Research and Development 38, 3 (May 1994), 243250.
Print 0 and a (binary) decimal 2. Corrigan-Gibbs, H. Keeping secrets. Stanford Magazine Watch the author discuss
(Nov./Dec. 2014), 5864; http://tinyurl.com/cyptowar1, his work in this exclusive
point, so that what follows expanding to https://alumni.stanford.edu/get/page/ Communications video.
magazine/article/?article_id=74801 https://cacm.acm.org/videos/
is the binary expansion of a 3. Diffie, W. and Hellman, M. Exhaustive cryptanalysis cybersecurity-nuclear-security-
computable real number. of the NBS data encryption standard. Computer alan-turing-and-illogical-logic
Technology-
management of human talent.
The new wave of technological in-
novation features the emerging gen-
eral paradigm known as ubiquitous
Driven
computing,a or an environment
where computational technology per-
meates almost everything, enabling
new ways of connecting people, com-
Changes in
puters, and objects. Ever-cheaper
cost for computation has resulted in
the proliferation of computing de-
vices, including personal comput-
Work and
ers, embedded (enabled by micro-
miniaturization) and networked
industrial sensors and processors,
speech-recognition and eye-track-
Employment
ing devices, mobile devices, radio-
frequency-identification and near-
frequency-communication tags and
labels, global-positioning-systems-
enabled devices, smart televisions,
car navigation systems, drones, wear-
able sensors, robots, and 3D virtual
reality. The ubiquitous computing
infrastructure also enables collection
bility for understanding the effects of ductivity increases, any automation sources of energy become cheaper and
technology on work and employment. that reduces the need for labor will in- more readily available).
This article thus aims to interpret the crease business revenue and personal Unlike effective managers, how-
progress, direction, and managerial income. That will, in turn, generate ever, machines have not yet learned
implications of current research in demand for new products and services, to tolerate high levels of ambiguity or
work and employment. We begin with that will, likewise, create new jobs for to inspire people at every level in or-
three lessons for executives based on displaced workers. One explanation for ganizations. Consider ambiguity. The
our review of relevant literature. We this pattern is that advances in informa- bigger and broader the question to
then examine how technology affects tion and communications technology be addressed, the more likely human
six key areas of talent management as are destroying more jobs in developed synthesis will be required to address it
organizations move from traditional to economies than the advances are cre- because, although machines can pro-
ubiquitous computing. We conclude ating. Technological progress is thus vide many pieces of the solution, they
with a series of questions for managers eliminating the need for many types of cannot assemble the big picture.
in the six areas. jobs, leaving the typical worker worse The process of assembly entails dis-
off than before.10 According to one 2017 cerning why a company is doing what
Methodology study,18 approximately 47% of total U.S. it is doing, where it is trying to go, and
This article is part of a larger project employment is at risk of automation. how it proposes to get there. Success
aimed at examining how technology Not all researchers concur with this depends on the ability of executives to
is changing work and organizations.12 conclusion, however. Although labor tolerate ambiguity and synthesize and
Our conclusions are based on a com- economists generally agree that the integrate a variety of types and forms
prehensive review of the literature in digital revolution is opening a great of information. The big picture repre-
management, industrial/organization- divide between a skilled and wealthy sents the glue that holds a company
al psychology, labor economics, hu- few and everyone else, hollowing out together. Moreover, when it comes to
man-factors design, and information the middle class,7 it is not clear that engaging and inspiring people to move
and computer technology. all of it can be attributed to the effects in the same direction, empathizing
Lesson 1. The effect of ubiquitous of technology. The data is far from with customers, and developing talent,
computing on jobs is a process of creative conclusive. One result of the change humans will continue to enjoy a strong
destruction. Ubiquitous computing is the simultaneous increase in both comparative advantage over machines.
is not the first technology to affect job openings and unemployment rela- Even if todays information and
jobs. From steam engines to robotic tive to the early 2000s,17 suggesting the communication technologies limit the
welders to ATMs, technology has long types of skills in demand by employers potential growth of employment, his-
displaced human workers, often cre- today do not match up with those of the tory suggests it is a temporary, though
ating new and higher-skilled jobs in existing labor force. Other plausible painful, shock. As workers adjust their
its wake. Mass production of the au- explanations, including events related skills and entrepreneurs create oppor-
tomobile threw many blacksmiths to global trade and the financial crises tunities based on the new technolo-
out of work but also created far more of the early and late 2000s, could ac- gies, the number of jobs will rebound.
jobs building and selling cars. Over count for the relative slow pace of job At the same time, human ingenuity will
the past 30 years, the digital revolu- creation since the turn of the century. create new jobs, industries, and ways to
tion, coupled with global business The problem for researchers and ex- make a living, just has it has since the
markets, have displaced many of the ecutives is that it is difficult to separate dawn of the Industrial Revolution,41
middle-skill jobs behind 20th century the effects of technology from other following Joseph Schumpeters gale
middle-class life in Western indus- macroeconomic effects.39 of creative destruction.
trial countries. The number of typists, To be sure, the advent of machine Lesson 2. Ubiquitous computing can
cashiers, travel agents, bank tellers, learning, where computers teach be used to enable or constrain people
and production-line jobs has fallen themselves tasks and rules by analyz- at work. To illustrate how that works,
dramatically, particularly in the U.S. ing large datasets, will lead to large- consider electronic monitoring sys-
and Europe, but there are more com- scale worker dislocation, as automated tems, robots, and wearable computing
puter programmers and web design- areas (such as speech recognition, pat- devices. Each shares computer sci-
ers than ever before. Displaced work- tern recognition, and image classifica- ences expressed ubiquitous comput-
ers with obsolete skills are always tion) eliminate large numbers of white- ing vision of interweaving technology
hurt, but the total number of jobs has collar jobs.18 We agree that many jobs into everyday life, making technology
never declined over time.2 performed by humans today, notably pervasive, and facilitating physical and
Paradoxically, although productivity, bookkeepers, auditing clerks, finan- virtual interactions.
a key indicator of growth and wealth cre- cial analysts, graphic designers, and Electronic monitoring systems. Moni-
ation, is at record levels and technologi- medical transcribers, will be substan- toring refers to systems, people, and
cal innovation has never been greater, tially taken over by robots or digital processes used to collect, store, ana-
over the past several decades, median agents by 2025. Other jobs will disap- lyze, and report the actions or perfor-
wages in the U.S. have not risen.19 This pear as a result of structural changes mance of individuals or groups on the
pattern is inconsistent with economic in the economy (such as the long-term job.3,8 Our focus here is on electronic
theory, which holds that when pro- decline in demand for coal, as cleaner monitoring and surveillance systems.
as physical activity and sleep, as with Through Bluetooth connections to Lesson 3. Ubiquitous computing is
Fitbit and Jawbone); enhancement their phones, the younger workers changing the nature of competition,
technologies (such as Google Glass, could then transmit live video feeds of work, and employment in ways that are
prosthetic devices, and exoskeletons their actions back to a ground-based profound and that need active manage-
that help elderly people or those with command center staffed by veteran ment. Before it was possible to access
disabilities); and virtual reality devices older workers monitoring the videos inexpensive computational support,
(such as headsets and telepresence sys- and offering further guidance.20 hoarding information was a source of
tems), as with architects using them to
see what their designs will look like in Figure 1. Six areas of talent management supported by traditional and ubiquitous
computing technologies.
practice. Telepresence systems enable
executives to experience the feeling
of being there, attending meetings Technology is part of the Context-aware technology delivers
without having to travel. These devices Strategic context in which work is job-relevant information; technology
Work Design performed. is an integral component and feature
are now possible thanks to four devel- of jobs.
opments: improved computing power, Supervisors rely on past Digitized inventories of talent permit
increased speed of broadband access, patterns and expected changes geographically distributed teams
Workforce
the spread of sensors, and cloud com- Planning
in the business to develop to pool their knowledge to develop
puting.44 Smart vending machines are forecasts of talent supply and talent supply/demand forecasts that
demand. support what-if scenario planning.
another example of how the nature of
Managers attract, select, and Managers attract, select, and retain
work is changing. Embedded sensors, retain employees through top talent through social media,
combined with broadband access and advertising, broadcast mobile devices, and electronic
Recruitment
cloud computing, make it possible to postings, on-site testing, job boards while inspiring mutual
and Staffing
face-to-face interviews, on- awareness through timely
monitor them remotely for items out boarding, and background information.
of stock, temperature changes, and checks.
pilferage. While the promise of wear- New employees learn from Technology-delivered instruction
able computing devices is obvious, their experienced peers (such as virtual reality simulations,
there are potential drawbacks as well. through in-house, face-to- asynchronous training, gamification,
Training and face instruction, lectures, and knowledge-management
The first is distraction, as people are Development simulations, and programmed systems) support on-demand
cognitively half present and half ab- instruction, as well as development of skills and intellectual
sent, constantly checking their smart- apprenticeship programs abilities.
focusing on on-the-job training.
phones as they walk along or stand
Annual performance Software-enabled micro-feedback
in line. How often? They check them
appraisals are based on permits on-demand appraisal,
an average of 3.1 hours a day, accord- behavior checklists or guidance, and support. Software
Performance
ing to one study by Meeker.27 This can and
graphic rating scales; pay also helps manage job evaluations,
wreak havoc on work/life integration, systems based on manual job pay surveys, bonus and commission
Compensation
evaluation; and pay surveys structures, reports, and analytics.
as there is no boundary by time or ge- Management
and spreadsheets that analyze
ography as to when or where people bonus and commission
work.43 Another drawback is that digi- structures.
tal devices make human interaction Employees and employers Internet and intranets allow
jointly strive to identify and untethered workers to engage in
more difficult as the devices compete
implement career goals career-development tasks anywhere,
constantly for peoples attention. Career through career-path planning, anytime.
Management
Despite the drawbacks, many uses of in-house libraries, intranets for
wearable technology are emerging be- career self-service, and online
self-assessment.
yond consumer applications, becom-
ing popular in industries as varied as
construction, building maintenance,
medicine, manufacturing, energy,
and oilfield services. As an example, Supported by Supported by
traditional technology ubiquitous computing
consider how a company in building
Interactions based on Human-computer interactions are
maintenance might use wearables to keyboard, mouse, joystick, based on sensors and devices
preserve and transmit institutional and monitor assume a fixed embedded in products, processes,
memory. Workers nearing retirement physical relationship between individuals, and buildings. Unlimited
employees and the work access to computing, data, and
are not always well-suited to climbing
environment. Mobile devices communication networks is available
ladders or scaffolding to significant are not context-aware, possibly from any location at any time.
heights where mechanical equipment creating distractions since Context-aware technology monitors
might be located. They leave that task employees are preoccupied employees physical surroundings
with walking, driving, or other and cognitive and social states,
to younger workers wearing special activities. and makes decisions proactively,
safety glasses equipped with cameras, anticipating employees needs.
microphones, speakers, detachable
flash drives, and wireless antennas.
power, and information moved in one say, communicate instantaneously Technology and
direction onlyup the corporate hi- or asynchronously across time and Talent Management
erarchy. In todays business environ- space or access vast bodies of infor- The way technology is altering work
ment of ubiquitous computing, the mation without visiting a library or settings and the work people do, par-
contrast could not be starker. While other physical repository. ticularly in the new era of ubiquitous
the changes made possible by todays With the Internet, people have easy computing, affects the way organiza-
technology might be impressive, and access to information they previously tions manage their human talent and
digital innovation will continue for could not have found. Indeed, tech- raises compelling questions for man-
the foreseeable future, technology by nologies trigger change by altering agers. Consider pre-employment test-
itself does not ensure profitable busi- workers non-relational rolesthe ing. Traditionally, candidates would
ness performance. business-related tasks they perform take tests at an employers site, in a
A comprehensive 2014 review of and how they perform them. These quiet, distraction-free, comfortable
research at the junction of leader- changes may then lead to changes in place, where the employer could pre-
ship and technology concluded that the nature of the interactions work- vent breaches of security by checking
researchers tend to treat technology ers have with other members of their candidate identification, eliminat-
either as a contextual aspect of busi- role set, or fellow workers with whom ing opportunities for collusion, and
ness performance relevant to the they interact while doing their work, controlling test materials at all times.
leadership process or as a set of tools as well as others in their role set (such Now consider unproctored Internet
that leaders and followers can use to as co-bots). If role relations change testing, where candidates, not em-
communicate with each other.35 The in either way, then the social network ployers, decide what conditions are
complex, pliable, changing, and ever- is likely to change as well. If it does, best. Technology can deliver simu-
expanding portfolio of Internet tools, one can say technology has altered lations or pre-employment assess-
information, and media is altering the work system. Changes in role re- ments to any location at any time,
how consumers and businesses act lations are thus key to a broad range raising a number of other security
in situations where previously they of effects in work systems. To be sure, and trust issues that might influence
would have acted differently. Before technology is altering role relations in test outcomes of interest, including
the Internet, it was impossible to, profound ways. the reliability and validity of the mea-
sures, adverse impact, size of the ap-
Figure 2. Questions for managers when moving from traditional to ubiquitous computing in plicant pool, differences in means
six areas of talent management.
and standard deviations, applicant
reactions, and perceptions of proce-
dural justice.
How does unlimited access to computer-based resources change communication,
document sharing, knowledge exchange, and collaboration in work settings? There is certainly great potential
Work Design How can technology enable job design that advances, rather than threatens, for deepening managements under-
innovation, fulfilling work, and value creation? standing of and ability to predict be-
How might the design of work reduce stress associated with constant connectivity?
havior in the domain of technology
What are the desired and unintended effects of the increased ability to receive and
process rich streams of data about the organization and its environment?
and talent management. Figure 1 out-
Strategic How does ubiquitous computing affect workforce collaboration, cohesion, and lines how the shift from traditional
Workforce
Planning
performance? to ubiquitous computing technolo-
How might technology and ubiquitous computing help minimize risk in workforce
gies affects six conventional areas of
supply-and-demand forecasts?
talent management:11 work design,
Given the volume of digitized data, what legal, ethical, privacy, and fairness issues are
associated with screening and tracking individuals in and outside an organization? workforce planning, recruitment
Recruitment
How is the role of the recruiter changing in a world of constant connectivity? and staffing, training and develop-
and Staffing
What effect does technology-based staffing have on productivity at the individual and ment, performance management
the enterprise level?
and compensation management, and
How can technology-delivered instruction enhance employee and team training?
Just as there are smart cars and smart buildings, how can organizations enable
the management of careers. Figure
Training and and support smart workers? 2 outlines key questions for manag-
Development
How can new training technologies like virtual reality, e-learning, and gamification ers when moving from traditional to
enhance training outcomes? ubiquitous computing technology
What strategies promote sensible performance management and fair compensation in these areas. Note the relevance of
Performance in digital work environments?
and How do social ties and non-work-related communication affect performance in a
the lessons mentioned earlier, par-
Compensation world of unlimited connectivity? ticularly lesson 2that ubiquitous
Management What are the most effective ways to supervise employees in ubiquitous-technology computing can be used to enable or
work environments?
to constrain people at workas man-
What are the best ways to coach employees to self-manage their careers?
agers seek to address the questions in
What kinds of technology could enhance this process?
Career How might technology facilitate work/life fit? Figure 2.
Management
What roles do personal control, collaboration, and coordination of career
management play in the digital environment? Conclusion
Research on technology and organi-
zations provides valuable insight re-
Energy
up across the system, significantly af-
fecting battery life, performance, re-
sponsiveness, and temperature.a Cor-
porations that maintain datacenters
Efficiency:
struggle with soaring energy costs.
These costs can be attributed in part to
overprovisioning with servers constant-
ly operating under their maximum ca-
A New Concern
pacity (for example, U.S. datacenters are
wasting huge amount of energy15), and
to the developers of the apps running
for Application
on these datacenters generally not tak-
ing energy into consideration.36
Unfortunately, during the last de-
Software
cades, little attention has been placed
on creating techniques, tools, and pro-
cesses to empower software developers
to better understand and use energy
a https://developer.apple.com/library/content/
documentation/Performance/Conceptual/
T H E PR EVALENCE AND ubiquity of mobile computing powerefficiency guidelines osx/index.html#//
platforms, such as smartphones, tablets, smart apple ref/doc/fuid/TP40013929
sumption,36,45 the t of the equation. More interestingly, however, the au- evolving energy-efficient software appli-
However, chances are this reduction thors observed that none of them were cations. We organize the contributions
in execution time might increase the published before 2012. In 2012, three according to the Guide to the Software
number of CPU cycles (for example, us- papers were published, whereas six pa- Engineering Body of Knowledge (SWE-
ing multi-core CPUs) and, therefore, the pers were published in 2013 and 11 pa- BOK),1 a common practice in software
engineering studies (for example, Mur- 37 respondents have already faced en- ers (radios, CPU, memory, storage, ev-
phy-Hill et al.39). When conducing such ergy-related problems, as a respondent erything). These results not only cor-
review, we found the literature does not said: We have a limited energy enve- roborate with the findings of Pang et
cover effectively certain areas of the lope for the whole system and we must al.,42 but also reinforce that application-
SWEBOK. For these cases, we share our make sure even our power hungry com- level energy management is in high
visions of possible research avenues ponents dont cause the system to go demand among application software
that energy-aware researchers can fol- beyond this limit. Also, some respon- developers, although better support is
low to reduce this gap. dents are aware that energy inefficien- urgently needed.
We unveil the perceptions of mobile cies can impact on app popularity and, We also asked five leading research-
developers when dealing with energy therefore, revenue: Users will leave bad ers in the area of software energy con-
consumption issues, scratching their reviews if you drain the battery. sumption to identify the most signifi-
problems and possible solutions. We When asked if they found the root cant contributions and biggest open
acknowledge that most of the energy- cause for the energy-related problems, challenges in this area. All the research-
related problems, in fact, can be re- 50% of the respondents did not answer. ers agreed that tool support is still lack-
duced to two main problems: the lack For those who answered, background ing when it comes to energy measure-
of knowledge and the lack of tools and activities, GPS, and unnecessary re- ment, reengineering, refactoring, and
present recent literature to understand source usage are among the recurring other related activities. Even though
how software engineering researchers answers. Interestingly, these problems there is a recent interest from IDE build-
are tackling these two problems. were also observed in other studies.36,45 ers to provide an energy consumption
However, 31.81% of the respondents perspective of the software systems un-
did not observe any significant im- der development,b this finding suggests
provement in energy consumption af- there is still much to do.
ter applying their solutions. For those
who observed an improvement, only Energy-Related Problems
five of them made use of specialized As observed in our formative study, soft-
tools. The majority of them have the ware developers currently have to rely
perception of an improvement, for ex- on Q&A websites, blog posts, or You-
ample: The battery is lasting longer, Tube videos when trying to optimize en-
Less heat from device, or I really do ergy consumption, which are anecdotal,
not measure before and after. Its just not supported by empirical evidence, or
a perception. When we asked where even incorrect.24,36 The consequence of
they find reliable information about the lack of appropriate textbooks, guide-
what solutions can be used to save en- lines, and cookbooks for green software
A Formative Study ergy, seven of them refer to the official development is the lack of knowledge on
Energy consumption issues are now documentation, five of them use Stack- how to write, maintain, and evolve ener-
knocking on the door of application Over flow, and five use other channels gy-efficient software applications. Fur-
software developers. To shed light on (blogs, YouTube, open source reposi- thermore, our respondents also men-
this matter, similarly to Pang et al.,42 we tories). Unfortunately, the solutions tioned they believe that energy-related
conducted a survey with software devel- described in such sources of documen- features are very important to have in
opers to understand their perceptions tation often are not supported by em- well-known IDEs. In particular, energy
about software energy consumption is- pirical evidence.38,45 To make the mat- profiling techniques can be very help-
sues. Compared to previous research, ter worse, two respondents rely on trial ful. This lack of energy-related features
which surveyed a wide range of software and error, which is far from accurate. incurs in the lack of tools to find, refac-
developers, our target population is Moreover, 67% of the respondents tor, and fix energy-inefficient code.
more focused and consists of 62 soft- said that energy-related features are The lack of knowledge and the lack
ware developers who have performed important or very important to of tools to write energy-efficient soft-
at least one commit to a mobile open have in well known IDEs. Only eight ware is also discussed in the literature.
source application. of the overall respondents have actu- For instance, Pinto et al.45 noticed that
Among the respondents, 68.75% ally used software energy consumption a common misconception is to confuse
have more than eight years of software tools. Respondents said that the most concepts such as power and energy.
development experience, 57.81% have important energy-related features to Manotas et al.36 observed that develop-
more than two years of mobile develop- have in well-known IDEs are profiling ers believe in panaceas, that is, solu-
ment experience, and 77.41% have more tools (16 answers), varying from CPU, tions that are presented as universal
than two years of open source develop- network, method, wake locks, thread, but, in fact, only work in specific con-
IMAGE F RO M SH UTT ERSTOCK.CO M
ment experience. The majority of them and live profile. Indeed, one respondent texts. For instance, while one developer
(57.8%) are source code contributors or synthesize that well-known IDEs, such
project owners (35.9%). More interest- as Android Studio, lack these features:
b https://developer.apple.com/library/ios/
ingly, 70.31% of the respondents agree Android Studio needs a good energy documentation/Performance/Conceptual/
that energy consumption could be an profiler to check the Android power EnergyGuide-iOS/-MonitorEnergyWithXcode.
issue in their mobile applications. Also, consumption from all power consum- html
dent, and do not exhibit maturity, nor sults have a clear implication: Tools to tion. With a better understanding of the
the breadth of scope necessary for use aid developers in quickly refactoring whole program energy behavior, such
in real software development. One of programs can be useful if energy is im- visualization techniques can be useful
the main challenges for deriving static portant. to mitigate both lack of knowledge and
analysis tools for energy consumption Reengineering. Compared to refac- lack of tools.
is the need for a body of knowledge on toring tools, which are more localized, Software design and construction. Re-
how language constructs and design reengineering efforts can be broader in searchers have been studying different
decisions impact energy consumption. scope and have a systemwide impact strategies for designing and construct-
Due to the emerging character of the on the structure of an application. As ing energy-efficient software.16,25,29,31,43
field,48 we believe that new empirical en- mentioned, method reallocation10 and These studies focus on understanding
ergy consumption studies will be con- method offloading23 are two common how a particular programming practice
ducted in the following years, which in strategies to implement reengineer- or design implementation might im-
turn will help researchers to create such ing energy-aware methods. This is cor- pact on energy consumption. To gain
static analysis tools. roborated by the work of Othman et further confidence in the results, these
Software maintenance. We organize al., which found that up to 20% energy studies often analyze dozens (for ex-
our discussion of software maintenance savings can be achieved by uploading ample, Kambadur20), or even hundreds
in terms of refactoring, reengineering, tasks from mobile devices to fixed serv- (for example, Li et al.25), of software ap-
and visualization. ers.41 Using a different strategy, Mano- plications, and they mitigate the lack
Refactoring. Refactoring tools can tas et al.37 proposed SEEDS, a general of knowledge by providing high-level
take advantage of cutting-edge research decision making framework for opti- guidelines for designing energy-effi-
and incorporate such knowledge into mizing software energy consumption. cient software. We organize our discus-
refactoring engines. However, as a re- The SEEDS framework can identify sions of software design and construc-
searcher respondent said, There is a lot energy-inefficient uses of Java collec- tion in terms of mobile, network, data
of work showing how different program- tions, and automate the process of se- structures, and parallel programming
ming styles, techniques, structures in- lecting more efficient ones. Similarly, techniques.
fluence the consumption, but there is Fernandes et al.13 developed a tool that Mobile development. Linares-
still no real cataloging ... based on these leverages static and dynamic analy- Vasquez et al.31 investigated API calls
concrete software practices. Although sis to recommend the most energy- that might cause high-energy con-
researchers have been speculating on efficient data structures. Search-based sumption. For example, they observed
this subject during the last years,14 to software engineering approaches were that the method Activity.findViewById,
the best of our knowledge, there is only used to reengineer a software system in which is commonly used, is one of the
a handful of studies that deals with the order to minimize energy usage,6 yield- most energy-consuming among the
problem of introducing novel refactor- ing an energy reduction of up to 25%. Android APIs. Similarly, Malik et al.35
ing tools for improving the energy effi- These approaches mitigate the prob- found that the BroadcastReceiver
ciency of a software system.5,12 In one of lem of lack of tools. and the Location APIs are the most
these studies, the authors present a set Visualization techniques are useful often discussed among Android energy
of energy efficiency guidelines that are to support the understanding of soft- questions on StackOver flow. Further-
specifically tailored for Android apps, ware systems in order to discover and more, since the display is one of the
such as location updates and resource analyze their anomalies. Li et al.26 pro- smartphones most energy-intensive
leaks. When applied, the authors ob- posed a technique that overlays energy components,7 Li et al.29 discussed how
served improvements of up to 29% of consumption information with appli- to improve energy efficiency by favor-
the overall energy consumption. cations source code. This technique ing darker colors instead of lighter
This lack of contributions is not colors different amount of energy con- ones for smartphones with OLED dis-
related to a lack of opportunities. As sumed in a given line of codeblue plays. Using a search-based multi-ob-
mentioned, there are several opportu- lines describe low energy consumption jective approach, Linares-Vasquez et
nities for application software develop- whereas red lines indicate high-energy al.32 automatically optimized energy
ers to save energy by refactoring exist- consumption. This visualization tech- consumption and contrast, while using
ing systems.19,48 For example, Pinto et nique is fine-grained and works at the consistent colors with respect to the
al.47 observed that just updating from source code level. On the other hand, original color palette. Oliveira Jr. et al.19
Hashtable to Concurrent HashMap in a the study of Couto et al.11 focuses on a analyzed the energy consumption of
Java program can yield a 3.5x energy sav- coarser granularity: It identifies the en- Android app development approaches,
ings. In particular, this transformation ergy consumption per method, and ag- Java, JavaScript, and Java + C++, in both
yields a 1.4x and a 9.2x energy savings in gregates this energy in terms of classes, benchmarks and real apps. In both
CPU and DRAM, respectively. As anoth- packages, and the whole software sys- scenarios it was observed that different
er example, Pathak et al.43 observed that tem. The result is presented in a sun- approaches have different impacts on
I/O operations consume more energy burst diagram that allows developers to energy. In particular, combining differ-
partly because of the tail energy phe- easily and quickly identify the most en- ent approaches can yield more than an
nomenon. According to the authors, ergy-inefficient parts of the code. These order of magnitude energy savings in
bundling I/O operations together can studies combine art and technology compute-intensive apps.
mitigate this tail energy leak. These re- as a way to represent energy consump- Network usage. Li et al.25 analyzed
more than 400 real-world Android niques can lead to increased energy
apps, and found that an HTTP request consumption and performance loss,34
is the most energy-consuming op- the authors showed that important
eration of the network. In a follow-up energy savings can be achieved. Baner-
study, the same authors observed that jee et al.4 proposed a technique that
bulking HTTP requests is a good prac- generates test inputs that are likely to
tice for energy saving.28 Also regarding capture energy bugs. This technique
HTTP usage, Chowdhury et al.9 ob- focuses on creating tests that use I/O
served that HTTP/2 is more energy ef- components, which are one of the pri-
ficient than its predecessor, HTTP/1.1, mary sources of energy consumption
for networks with higher Round Trip in a smartphone.7,43
time (RTTs). Since most mobile apps Followed by these promising ini-
use network,25 we expect more con- tial results, we believe that new testing
tributions on this direction. Besides techniques will be evaluated in terms
of bulking requests, researchers can of energy consumption. At best, energy
evaluate the benefits of, for instance, testing will become a research area.
reducing transactions, compressing Several possible areas of interest can be
data, and appropriately handling er- envisioned. One of them is what we call
rors to conserve energy. green assertions, that is, the possibil-
Data structures. The energy behavior ity to define an energy budget where the
of different data structures, one of the test case asserts whether the computa-
building blocks of computer program- tion satisfies that budget. The test fails
ming, have been extensively studied in so, the whole chain of programming if the energy consumed is greater than
the last few years.16,30,37,47 Hasan et al.16 languages, software systems, and end- the suggested budget. For instance, the
investigated data structures grouped users that rely on the JVM can benefit code snippet double max- Energy
with three interfaces (List, Set, and from these findings. = 200; assertTrue(render(), ex-
Map). Among the findings, they found Although these studies provide a pected, maxEnergy); defines that
that the position where an element is in- comprehensive set of findings with the render() method should con-
serted in a list can greatly impact energy practical and timely implications and sume, at most, 200 Joules. This tech-
consumption. Pinto et al.47 studied the can be useful to mitigate the problem of nique can be further improved to cover
same group of interfaces, but focused lack of knowledge, they are far from cov- additional hardware characteristics, for
on thread-safe data structures. They ering the whole spectrum of program- instance, asserting whether the compu-
also observed that using a newer ver- ming language constructs and libraries. tation consumes 100 Joules due to net-
sion of a thread-safe data structure can Software quality and testing. Here work communication or 50 Joules due
yield a 2.19x energy savings when com- we organize our discussions in terms to the CPU.
pared to the old associative implemen- of software testing and software debug- Software debugging. Practitioners
tation. Lima et al.30 studied the energy ging techniques. commonly use debugging tools to
consumption of data structures in con- Software testing. Although there are catch bugs in program formulation.
current functional programs. Although several studies aimed at characteriz- However, debugging an energy-ineffi-
they found that there is no clear univer- ing energy bugs (for example, Pathak cient piece of code is more challenging
sal winner, in certain circumstances, et al.44), there are relatively few stud- than traditional debugging because
choosing one data sharing primitive ies that propose new energy-aware such inefficiencies depend on the
(MVar) over another (TMVar) can yield testing techniques.18,21,27 Ding et al.27 contextual information about where a
60% energy savings. presented an energy-efficient testing program is running, such as the state
Parallel programming. Parallel pro- suite minimization technique that can of the hardware devices. In this regard,
gramming techniques have also been be used to perform post-deployment Banerjee and colleagues5 propose a
the subject of several studies. Pinto et testing on embedded systems. Results framework for debugging energy con-
al.46 observed that a high-level, work- suggest the approach can promote a sumption-related field failures in mo-
stealing parallel framework is more reduction of over 95% of the energy bile apps. The authors found that tool
energy-friendly when performing fine- consumed by the original test suite. support could localize energy bugs in
grained CPU intensive computations Similarly, Jabbarvand et al.18 present a short amount of time, even for non-
PHOTO C REDIT: S. BONA IME/SH UT TERSTOCK.COM
than a thread-based implementation. another test suite minimization ap- trivial Android apps. The authors ob-
Still, Ribic and Liu proposed a set of run- proach, but focusing on Android apps. served energy savings of up to 29% after
time systems for improving the energy The authors reported a reduction of, patching the energy bug. Pathak et al.43
efficiency of fine-grained CPU-intensive on average, 84%, while maintaining the propose eprof, a fine-grained profiling
computations.49,50 To better leverage the effectiveness for revealing bugs. Kan21 energy consumption technique for ap-
energy savings reported by these stud- proposes a similar approach: To use plications running on smartphones.
ies, we believe they can be integrated DVFS to scale frequency down when Similar to the work of Banerjee and col-
with well-known runtime systems, such running the test suites. Although some leagues,4 Pathak et al. focus on under-
as the Java Virtual Machine (JVM). If researchers argued that DVFS tech- standing and monitoring system calls
that are related to I/O operations. As a factoring of android apps to enhance energy-efficiency. 32. Linares-Vasquez, M., Bavota, G., Bernal-Cardenas, C.,
In Proceedings of MOBILESoft, 2016, 139150. Oliveto, R., Di Penta, M., and Poshyvanyk, D. Optimizing
results, they found that most of the en- 6. Bruce, B.R., Petke, J., and Harman, M. Reducing energy consumption of GUIs in android apps: A multi-
ergy consumed in free apps is related energy consumption using genetic improvement. In objective approach. In Proceedings of ESEC/FSE,
Proceedings of GECCO, 2015, 13271334. 2015, 143154.
to third-party advertisement modules 7. Carroll, A. and Heiser, G. An analysis of power 33. Liqat, U., et.al. Energy consumption analysis of
(which can be responsible for up to consumption in a smartphone. In Proceedings of programs based on XMOS isa-level models. In
USENIX, 2010. Proceedings of the 23rd International Symposium on
75% of the overall energy consumed by 8. Chowdhury, S.A. and Hindle, A. Greenoracle: Estimating Logic-Based Program Synthesis and Transformation,
an app). Using a collaborative black- software energy consumption with energy measurement 2013, 7290.
corpora. In Proceedings of MSR, 2016, 4960. 34. Liu, K., Pinto, G., and Liu, Y.D. Data-oriented
box approach, Oliner et al40 propose 9. Chowdhury, S.A., Sapra, V, and Hindle, A. Client-side characterization of application-level energy
a method for diagnosing anomalies, energy efficiency of HTTP/2 for web and mobile app optimization. In Proceedings of FASE, 2015.
developers. In Proceedings of SANER, 2016, 529540. 35. Malik, H., Zhao, P., and Godfrey, M.W. Going green: An
estimating their severity, and identi- 10. Corral, L., Georgiev, A.B., Sillitti, A., and Succi, G. exploratory analysis of energy-related questions. In
Method reallocation to reduce energy consumption: Proceedings of MSR, 2015, 418421.
fying the device features that lead to 36. Manotas, I., et al. An empirical study of practitioners
anan implementation in android OS. In Proceedings of
the anomaly. Using feedback received SAC, 2014, 12131218. perspectives on green software engineering. In
11. Couto, M., Carcao, T., Cunha, J., Fernandes, J.P., and Proceedings of ICSE, 2016, 237248.
by the proposed tool, end users im- Saraiva, J. Detecting anomalous energy consumption in 37. Manotas, I., Pollock, L., and Clause, J. Seeds: A
proved their battery life by 21%. android applications. In Proceedings of SBLP, 2014, 7791. software engineers energy-optimization decision
12. Cruz, L., Abreu, R., and Rouvignac, J.-N. Leafactor: support framework. In Proceedings of ICSE, 2014,
We believe that debugging tools Improving energy efficiency of android apps via 503514.
will have the capability of inspect- automatic refactoring. In Proceedings of MobileSoft, 38. Moura, I., Pinto, G., Ebert, F., and Castor, F. Mining energy-
(Buenos Aires, Argentina, 2017). aware commits. In Proceedings of MSR, (2015), 5667.
ing the energy consumption of fine- 13. Fernandes, B., Pinto, G., and Castor, F. Assisting 39. Murphy-Hill, E., Zimmermann, T., and Nagappan, N.
grained program constructs during non-specialist developers to build energy-efficient Cowboys, ankle sprains, and keepers of quality: How
software. In Proceedings of the Companion to the 39th is video game development different from software
runtime, as well as their common International Conference on Software Engineering, development? In Proceedings of ICSE, 2014, 111.
ability to identify which value was at- (Buenos Aires, Argentina, 2017). 40. Oliner, A.J., Iyer, A.P., Stoica, I., Lagerspetz, E., and
14. Fraser, S., Murphy-Hill, E., Wild, W., Yoder, J., and Tarkoma, S. Carat: Collaborative energy diagnosis
tributed to a given variable. Debug- Zhu, B.Q. Going green with refactoring: Sustaining for mobile devices. In Proceedings of the 11th ACM
ging tools can go further and highlight the worldwide virtual machine. In Proceedings of Conference on Embedded Networked Sensor Systems,
OOPSLA, 2011, 171174. 2013, 10:110:14.
the CPU intensive lines of code, or the 15. Gelenbe, E. and Caseau, Y. The impact of information 41. Othman, M. and Hailes, S. Power conservation strategy
memory-intensive methods, in a way technology on energy consumption and carbon for mobile computers using load sharing. SIGMOBILE
emissions. Ubiquity, (June 2015) 115. Mob. Comput. Commun. Rev. 2, 1 (Jan. 1998), 4451.
that developers can refactor them in 16. Hasan, S., King, Z., Hafiz, M., Sayagh, M., Adams, B., 42. Pang, C., Hindle, A., Adams, B., and Hassan, A.E.
What do programmers know about software energy
an energy-savvy manner. Novel ener- and Hindle, A. Energy profiles of Java collections
consumption? IEEE Software 33, 3 (2016), 8389.
classes. In Proceedings of ICSE, 2016, 225236.
gy-related testing and debugging tools 17. Hindle, A., Wilson, A., Rasmussen, K., Barlow, E.J., 43. Pathak, A., Hu, Y.C., and Zhang, M. Where is the energy
spent inside my app? Fine grained energy accounting
can mitigate the lack of tools. Campbell, J.C., and Romansky, S. Greenminer: A
on smartphones with eprof. In Proceedings of
hardware based mining software repositories software
energy consumption framework. In Proceedings of EuroSys, 2012, 2942.
44. Pathak, A., Jindal, A., Hu, Y.C., and Midkiff, S.P. What
Conclusion MSR, 2014, 1221.
is keeping my phone awake? Characterizing and
18. Jabbarvand, R., Sadeghi, A., Bagheri, H., and Malek,
Energy consumption is a ubiquitous S. Energy-aware test-suite minimization for android detecting no-sleep energy bugs in smartphone apps.
apps. In Proceedings of ISSTA, 2016, 425436. In Proceedings of MobiSys, 2012, 267280.
problem and the years to come will re- 45. Pinto, G., Castor, F., and Liu, Y.D. Mining questions
19. Oliveira Jr., W.O.R., and Castor, F. A study on the
quire developers to be even more aware energy consumption of android app development about software energy consumption. In Proceedings
approaches. In Proceedings of MSR (Buenos Aires, of MSR, 2014, 2231.
of it. However, developers currently do Argentina, 2017). 46. Pinto, G., Castor, F., and Liu, Y.D. Understanding energy
not fully understand how to write, main- 20. Kambadur, M. and Kim, M.A. An experimental behaviors of thread management constructs. In
survey of energy management across the stack. In Proceedings of OOPSLA, 2014, 345360.
tain, and evolve energy-efficient soft- Proceedings of OOPSLA, 2014, 329344. 47. Pinto, G., Liu, K., Castor, F., and Liu, Y.D. A comprehensive
ware systems. In this study we suggest 21. Kan, E.Y.Y. Energy efficiency in testing and regression study on the energy efficiency of Java thread-safe
testingA comparison of DVFS techniques. In collections. In Proceedings of ICSME, 2016.
this is primarily due to two problems: Proceedings of QSIC 13, 2013, 280283. 48. Pinto G., Soares-Neto, F., and Castor, F. Refactoring for
the lack of knowledge and the lack of 22. Khalid, H., Shihab, E., Nagappan, M., and Hassan, A.E. energy efficiency: A reflection on the state of the art.
What do mobile app users complain about? IEEE In Proceedings of GREENS, 2015.
tools. With these problems in mind, Software 32, 3 (2015), 7077. 49. Ribic, H. and Liu, Y.D. Energy-efficient work-stealing
language runtimes. In Proceedings of ASPLOS, 2014,
this article reviewed most of the recent 23. Kwon, Y. and Tilevich, E. Reducing the energy
513528.
consumption of mobile applications behind the scenes.
energy-related contributions in the soft- In Proceedings of ICSM, 2013, 170179. 50. Ribic, H. and Liu, Y.D. Aequitas: Coordinated energy
management across parallel applications. In
ware engineering community. We dis- 24. Li, D. and Halfond, W.G.J. An investigation into energy-
Proceedings of the 2016 International Conference on
saving programming practices for android smartphone app
cuss how software energy consumption development. In Proceedings of GREENS 2014, 4653. Supercomputing, 2016, 4:14:12.
51. Saborido, R., Arnaoudova, V., Beltrame, G., Khomh, F.,
research is evolving to mitigate these 25. Li, D., Hao, S., Gui, J., and Halfond, W.G.J. An
and Antoniol, G. On the impact of sampling frequency
empirical study of the energy consumption of Android
two problems and, when appropriate, applications. In Proceedings of ICSME, 2014, on software energy measurements. PeerJ PrePrints,
2015, 3:e1219.
we highlight key research gaps that 121130.
26. Li, D., Hao, S., Halfond, W.G.J., and Govindan, R. Calculating
need better attention. source line level energy information for android Gustavo Pinto (gpinto@ufpa.br) is an assistant professor
applications. In Proceedings of ISSTA, 2013, 7889. at the Federal University of Par, Brazil.
27. Li, D., Jin, Y., Sahin, C., Clause, J., and Halfond, W.G.J.
References Integrated energy-directed test suite optimization. In Fernando Castor (castor@cin.ufpe.br) is an associate
1. Abran, A., Bourque, P., Dupuis, R., and Moore, J.W., Proceedings of ISSTA, 2014, 339350. professor at the Federal University of Pernambuco, Brazil.
editors. Guide to the Software Engineering Body of 28. Li, D., Lyu, Y., Gui, J., and Halfond, W.G.J. Automated
Knowledge (SWEBOK), 2001. energy optimization of http requests for mobile
2. Aggarwal, K., Hindle, A., and Stroulia, E. GreenAdvisor: applications. In Proceedings of ICSE, 2016, 249260. 2017 ACM 0001-0782/17/12 $15.00.
A tool for analyzing the impact of software evolution 29. Li, D., Tran, A.H., and Halfond, W.G.J. Making
on energy consumption. In Proceedings of ICSME web applications more energy efficient for OLED
(Sept. 2015), 311320. smartphones. In Proceedings of ICSE, 2014, 527538.
3. Aggarwal, K., Zhang, C., Campbell, J.C., Hindle, A., 30. Lima, L.G., Soares-Neto, F., Lieuthier, P., Castor, F.,
and Stroulia, E. The power of system call traces: Melfe, G., and Fernandes, J.P. Haskell in green land: Watch the authors discuss
Predicting the software energy consumption impact of Analyzing the energy behavior of a purely functional their work in this exclusive
changes. In Proceedings of CASCON, 2014, 219233. language. In Proceedings of SANER, 2016, 517528. Communications video.
4. Banerjee A., Chong, L.K., Chattopadhyay, S., and 31. Linares-Vasquez, M., Bavota, G., Bernal-Cardenas, C., https://cacm.acm.org/videos/
Roychoudhury, A.. Detecting energy bugs and hotspots in Oliveto, R., Di Penta, M., and Poshyvanyk, D. Mining energy-efficiency-a-new-
mobile apps. In Proceedings of ESEC/FSE, 2014, 588598. energy-greedy api usage patterns in android apps: An concern-for-application-
5. Banerjee, A. and Roychoudhury, A. Automated re- empirical study. In Proceedings of MSR, 2014, 211. software-developers
In January 2018, the Journal of Human-Robot Interaction (JHRI) will become an ACM
publication and be rebranded as the ACM Transactions on Human-Robot Interaction (THRI).
To submit, go to https://mc.manuscriptcentral.com/thri
research highlights
P. 78 P. 79
Technical
Perspective A Theory of Pricing
Pricing Information Private Data
(and Its Implications) By Chao Li, Daniel Yang Li, Gerome Miklau, and Dan Suciu
By Aaron Roth
P. 87 P. 88
Technical
Perspective Automatically Accelerating
A Simple, Elegant Non-Numerical Programs
Approach to
Non-Numeric by Architecture-Compiler
Parallelization Co-Design
By James Larus By Simone Campanoni, Kevin Brownell, Svilen Kanev,
Timothy M. Jones, Gu-Yeon Wei, and David Brooks
Technical Perspective
To view the accompanying paper,
visit doi.acm.org/10.1145/3139457 rh
Pricing Information
(and Its Implications)
By Aaron Roth
SELLING PERSONAL INFORMATION is very authors are making the market safe a buyer can access the dataset by ask-
different from selling physical goods, for buyers. ing arbitrary statistical queries, and
and raises novel challenges. On the Reasoning about these arbitrage can run any learning algorithm in the
sell-side of the market, individuals opportunities can be complicated: SQ model to derive the answers to
own their own personal data and ex- if the values of the purchased linear other queries.5 Can the large litera-
perience costs based on the usage of functions were revealed exactly, then ture on SQ learning be used to give
their data insofar as that usage leads the answer to any other query in the arbitrage-free pricings for more gen-
to future quantifiable harm. On the span of the purchased queries would eral notions of arbitrage?
buy-side of the market, buyers are in- be derivable. But to guarantee the 3. Seller profit: Arbitrage-free pric-
terested in statistical information sellers differential privacy, it is nec- ings give a family of dominant-strat-
about the dataset, that is, aggregate essary to sell only noisy estimates of egy truthful mechanisms for selling
information, rather than informa- the data. This makes reasoning about information. Suppose we know some-
tion derived from a single individ- what is derivable complex. Sensi- thing about the distribution of buyer
ual. Differential privacy1 provides bly, since they are introducing a new demandscan we find the arbitrage-
a means to quantify the harm that problem, the authors opt to study a free pricing that maximizes seller
can come to individual data owners restricted notion of derivability and profit? This is particularly intriguing,
as the result of the use of their data. arbitrage. They give pricings that rule because it seems the seller can some-
This ability to quantify harm allows out arbitrage opportunities when the times increase her profit by selling
for data owners to be compensated buyer is only allowed to learn by tak- noisier queries, thereby reducing the
for the risk they incur. Past work ing linear combinations of observed complementarities among the goods
studying markets for private data queries, is interested only in un- she is selling. The opportunity to in-
focused on the simple case in which biased estimates of query values, and crease profit by degrading product
the buyer is interested in only the an- will attempt arbitrage only at the level quality rarely arises in markets for
swer to a single linear function of the of one query at a time. Because of the physical goods.
data,2,3,4,6 which makes the buy-side of richness of the authors problem, one This paper opens a rich research
the market particularly simple. of the most exciting aspects of this direction. I recommend that new Ph.D.
The following paper introduces work is the doors it opens for future students (or anyone looking for an
a fascinating and complicated is- exploration. Here, I will highlight attractive problem) read it.
sue that arises on the buy-side of the what I think are the most interesting
market when buyers are interested in problems coming out of this paper: References
1. Dwork, C., McSherry, F., Nissim, K. and Smith, A.
multiple linear functions of the same 1. Multi-query arbitrage: The paper Calibrating noise to sensitivity in private data analysis.
dataset. Information exhibits com- gives query pricings such that a buyer In Proceedings of the 3rd Theory of Cryptography
Conference, 2006, 265284.
plementarities: given some informa- can never more cheaply derive the 2. Fleischer, L. and Lyu, Y.-H. Approximately optimal
tion about a dataset, it is possible to answer to a single query by buying a auctions for selling privacy when costs are correlated
with data. In Proceedings of the ACM Conference on
learn other things about the dataset. different bundle of queries. However, Electronic Commerce, 2012, 568-585.
This means that when pricing infor- 3. Ghosh, A. and Roth, A. Selling privacy at auction.
the buyer can still sometimes more Games and Economic Behavior (2015), 334346.
mation, there might be opportuni- cheaply derive the answer to one bun- 4. Ghosh, A., Ligett, K., Roth, A. and Schoenebeck,
G. Buying private data without verification. In
ties for arbitrage: rather than directly dle of queries by buying the answers Proceedings of the ACM Conference on Economics and
buying the answer to the query he is to another bundle! Which pricings Computation, 2014, 931948.
5. Kearns, M. Efficient noise-tolerant learning from
interested in, the buyer might instead can prevent this? statistical queries. J. ACM (1998), 9831006.
more cheaply buy a bundle of que- 2. Arbitrage for biased estimators: 6. Nissim, K., Vadhan, S. and Xiao, D. Redrawing the
boundaries on purchasing data from privacy-sensitive
ries that lets him deduce the answer When buyers are only interested in individuals. Innovations in Theoretical Computer
he is interested in. The authors give unbiased estimates, the best linear Science (2014), 411422.
conditions under which a pricing is unbiased estimator is always given by
arbitrage free. This is a compelling least-squares linear regression. How- Aaron Roth (aaroth@cis.upenn.edu) is the Class of 1940
Bicentennial Term Associate Professor at the University of
condition to ask for: it means that it is ever, buyers can often improve the ac- Pennsylvania, Philadelphia, PA.
a dominant strategy for arriving buy- curacy of their derivations by trading
ers to faithfully request the answer to off a small amount of bias for a large
the query they are interested in, rath- reduction in variance. The space of
er than trying to game the system. By optimal estimators is much more
asking for arbitrage-free pricings, the complex when they do so. In general, Copyright held by author.
and the total cost is only $50. The pricing of queries should The market maker. The market maker is trusted by the
avoid arbitrage opportunities. While this has been consid- buyer and by each of the data owners. He collects data from
ered before for data markets,2, 17, 21 it has not been studied the owners and sells it in the form of queries. When a buyer
for perturbed query answers. Formalizing arbitrage for noisy decides to purchase a query, the market maker collects
queries is a second goal of this article. payment, computes the answer to the query, adds noise as
appropriate, returns the result to the buyer, and finally dis-
1.3. Privacy-loss and payments tributes individual payments to the data owners. The market
Given a randomized mechanism for answering a query q, a maker may retain a fraction of the price as profit.
common measure of privacy loss to an individual is defined by The owner and her data. Each owner contributes a single
differential privacy7: it is the maximum ratio between the prob- tuple conforming to a relational schema R(A), with attri-
ability of returning some fixed output with and without that butes A = {A1, A2, ..., Ak}. The crossproduct of the attribute
individuals data. Differential privacy imposes a bound of e on domains, written dom(A), is the set of all possible tuples that
this quantity, where is a small constant, presumed acceptable could occur. For a fixed k, its size, n = |dom(A)|, is polynomial
to all individuals. Our framework contrasts with this in several in the number of users; n grows exponentially with k. Having
ways. First, the privacy loss is not bounded, but depends on the collected tuples from each owner, the market maker forms a
buyers request. If the buyer asks for a query with low variance, relational table I, an instance of R(A).
then the privacy loss to individuals will be high. These data The buyer and his queries. The buyer is a data analyst
owners must be compensated for their privacy loss by the buy- who wishes to compute some queries over a data. We restrict
ers payment. In addition, we allow each data owner to value our attention to linear aggregation queries over instance I,
their privacy loss separately, by demanding greater or lesser a common class of queries that has received considerable
payments. Formalizing the relationship between privacy loss attention from the privacy community.8, 15, 19
and payments to data owners is a third goal of this article. To express linear queries, we first represent the instance
In our framework, the burden of the market maker is I by a finite data vector x consisting of non-negative integral
not to enforce a strict limit on the privacy loss of individu- counts. For each element t dom(A), the vector x has one
als. Instead, they must ensure that prices are set such that, entry that reports the number of individuals whose tuple
whatever disclosure is obtained by the buyer, all contribut- matches t. We assume that dom(A) is ordered, and denote
ing individuals are properly compensated. In particular, if xi the ith entry in the vector x. In other words, xi represents
a sequence of queries can indeed reveal the private data for the number of individuals whose attribute values match the
most individuals, its price must approach the total cost of ith entry in dom(A). Although the size n of the vector x can be
the entire database. large, in practice one avoids fully materializing x and retains
only the relational representation of I.
2. BACKGROUND
In this section we describe the basic architecture of the pri- Definition 1 (Linear Query). A linear query is a real-valued
vate data pricing framework, illustrated as shown in Figure 1. vector q = (q1, q2 ... qn). The answer q(x) to a linear query on x
isthe vector product qx = q1x1 + ... + qnxn.
2.1. The main actors
The main actors in our proposed marketplace are data own- The class of linear queries includes many common aggre-
ers, query buyers, and a market maker negotiating between gation queries including general predicate counting queries
the two. and familiar statistical queries such as histogram counts,
Figure 1: The pricing framework has 3 components: (A) Pricing and purchase: the buyer asks a query Q = (q, v) and must pay its price, (Q);
(B) Privacy loss: by answering Q, the market maker leaks some information about the private data of the data owners to the buyer; (C)
Compensation: the market maker must compensate each data owner for their privacy loss with micro-payments; i(Q) is the total of the
micro-payments for all users in bucket i. The pricing framework is balanced if the price (Q) is sufficient to cover all micro-payments i and
the micro-payments i compensate the owners for their privacy loss .
Data records
1(Q) A1. Price request: Q=(q, v)
Owner 1 (a1,b1)
2(Q)
Owner 2 (a2,b2) A2. Price: o(Q)
3(Q) Market
Owner 3 (a3,b3) Buyer
maker A3. Payment: $
4(Q)
Owner 4 (a4,b4)
5(Q) A4. Query answer
Owner 5 (a5,b5) q(x)+noise
(C) Compensation (A) Pricing & purchase
derive an answer to a new query, without paying the full price Then we can answer the query Q3 = ((q1 + q2)/2, (v1 + v2)/4)
for the latter, a situation we call arbitrage. A reasonable pric- by applying the function f (y1, y2) = (y1 + y2)/2. We pay only for
ing function must guarantee that no arbitrage is possible, in Q1, Q2, and do not pay again for Q3.
which case we call it arbitrage-free. Such a pricing function How do we check if a query can be answered from a given
ensures that the market maker receives proper payment for set of queries? In this paper we give a partial answer, by char-
each query by removing any incentive for the buyer to game acterizing when a query is linearly answerable.
the system by asking a set of cheaper queries in order to
obtain the desired answer. Here we formally define arbitrage- Proposition 7. Let S = {(q1, v1), ..., (qm, vm)} be a multi-set of
free pricing functions, study their properties, and discuss the queries, and Q = (q, v) be a query. Then the following conditions
construction of arbitrage-free pricing functions. are equivalent.
3.2. Answerability Example 9. Consider a query (q, v) offered for price (q, v).
Before investigating arbitrage we establish the key concept of A buyer who wishes to improve the accuracy of the query may
query answerability. This notion is well studied for determinis- ask the same query n times, (q, v), (q, v), ..., (q, v), at a total
tic queries and views,14, 22 but, in our setting, the query answers cost of n (q, v). The buyer then computes the average of the
are random variables, and it requires a precise definition. query answers to get an estimated answer with a much lower
variance, namely v/n. The pricing function must ensure that
Definition 6 (Answerability). A query Q is answerable the total payment collected from the buyer covers the cost
from a multi-set of queries S = {Q1, ..., Qk} if there exists a func- ofthis lower variance, in other words n (q, v) (q, v/n).
tion f : Rk R such that, for any mechanisms K1, ..., Kk, that If is arbitrage free, then it is easy to check that this condi-
answer the queries Q1, ..., Qk, the composite mechanism defined tion holds. Indeed, {(q, v), ..., (q, v)} (nq, nv) (q, v/n),
as answers the query Q. and arbitrage-freeness implies (q, v/n) (q, v) + ... +
We say that Q is linearly answerable from S, and write S Q, (q, v) = n (q, v).
if the function f is linear; in that case, we will also say that S
determines Q. One can prove20 that any arbitrage-free pricing function
has the following properties:
In other words, if we have already computed some que-
ries, then we can compute a new query by applying a function (1) The zero query is free: (0, v) = 0.
to their results. For example, suppose we have computed (2)Higher variance is cheaper: v v implies (q, v)
Q1 = (q1, v1) and Q2 = (q2, v2), and obtained the answers y1, y2. (q, v).
In differential privacy, the basic contract between the Proposition 23. Suppose that (, , W) is semi-balanced, and
mechanism and the data owner is the promise to every user define (Q) = i i(Q). Then, (, , , W) is balanced.
that her privacy loss is no larger than . In our framework
for pricing private data we turn this contract around. Now, To summarize, the synthesis procedure for a pricing
privacy is lost, and Definition 18 quantifies this loss. The framework proceeds as follows. Start with the simple micro-
contract requires that the users are compensated accord- payment functions given by Proposition 21, which ensure
ing to their privacy loss. At an extreme, if the mechanism is linear compensation for each user. Next, modify both the
-differentially private for a tiny , then each user will receive micro-payment and the contract functions using Proposi
only a tiny micro-payment Wi(); as her privacy loss increases, tion 22, as desired, in order to adjust to the preferences of
she will be compensated more. individual users (e.g. in order to allow a user to set a price for
The micro-payments circumvent a common limitation her true data). Finally, define the query price to be the sum
of differentially-private mechanisms. In differential privacy, of all micro-payments (Proposition 23), then increase this
the data analyst typically has a fixed budget, , granted by the price freely, by using any method in Section 3.4.
data curator, for all queries that he may ever ask. In order to
issue N queries, he needs to divide the privacy budget among 6. DISCUSSION
these queries, and, as a result, each query will be perturbed A number of issues deserve further attention if we are to
with greater noise. After issuing these N queries, he can no achieve a fully-functional marketplace for private data.
longer query the database, because otherwise the contract First, we have made two restrictions which limit the
with the data owner would be breached. prevention of arbitrage in our market. We require the mar-
In our pricing framework there is no such hard limita- ket maker to answer queries using an unbiased estimator
tion because the buyer simply pays for each query. The bud- (Definition 5) and therefore arbitrage-freeness only pre-
get is now a real financial quantity, and the buyer can ask as vents an adversary from deriving an unbiased estimator of
many query as he wants, with as high accuracy as he wants, a query using cheaper queries (Definition 6). In addition, we
as long as he has money to pay for them. As a consequence, have considered a restricted notion of answerability, limit-
it is the analyst-buyer, rather than the data owner, who ulti- ing our attention to adversaries who only consider queries
mately determines the actual privacy loss. A similar model computed by linear functions of other queries. Both of these
assumptions limit the class of adversaries against which the micro-payments to the data owner and each micro-payment
arbitrage-free property is guaranteed to hold. compensates the users according to their privacy loss.
A more general approach would be to relax Definition 5 to An interesting open question is whether we can achieve
allow queries to be answered using either biased or unbiased both truthfulness (e.g. as discussed in Ghosh and Roth12)
estimators and to include answerability using non-linear and arbitrage-freeness (as discussed in the current paper)
functions. This would provide the market maker with a when pricing private data. Further, it remains to consider
stronger guarantee against arbitrage. However it would likely general notions of answerability that go beyond linear
make reasoning about determinacy and arbitrage-free pric- answerability, or to bound the impact non-linear estimation
ing significantly more difficult, and it would further restrict methods could have in the context of arbitrage.
the set of arbitrage-free pricing functions available to the
market maker. In other words, a more powerful notion of References
arbitrage would lead to more restrictive pricing functions, 1. Acquisti, A., Taylor, C.R., Wagman, L. 12. Ghosh, A., Roth, A. Selling privacy
The economics of privacy. Journal of at auction. In ACM Conference
potentially limiting the ability of the market maker to set Economic Literature 52, 2 (2016). on Electronic Commerce (2011),
prices. The tradeoff between completeness of the framework 2. Balazinska, M., Howe, B., Suciu, D. Data 199208.
markets in the cloud: An opportunity 13. Greenberg, A. Apples differential
and the feasibility of analyzing arbitrage is an important for the database community. PVLDB 4, privacy is about collecting your
topic for future research. 12 (2011), 14821485. databut not your data. Wired (Jun
3. Calo, R. The boundaries of privacy harm. 13 2016).
A second issue is the problem of incentivizing the data Indiana Law Journal 86, 3 (2011). 14. Halevy, A.Y. Answering queries using
4. Chen, B.-C., Kifer, D., LeFevre, K., views: A survey. VLDB J. 10, 4 (2001),
owner to participate in the database and truthfully report her Machanavajjhala, A. Privacy-preserving 270294.
privacy valuations. Currently, there is nothing stopping the data publishing. In Foundations and 15. Hardt, M., Ligett, K., McSherry, F. A
Trends in Databases (2010). simple and practical algorithm for
data owner from quoting an impossibly high price, for even 5. Dinur, I., Nissim, K. Revealing differentially private data release. In
a tiny loss of her privacy. In other words, she would choose information while preserving privacy. NIPS (2012).
In PODS (2003), 202210. 16. Kifer, D., Abowd, J., Gehrke, J. Vilhuber, L.
a contract function W() that is as close to as possible. 6. Dwork, C. A firm foundation for Privacy: Theory meets practice on the
Incentivizing users to report their true valuation is a goal private data analysis. Commun. ACM map. In ICDE (2008).
54, 1 (2011), 8695. 17. Koutris, P., Upadhyaya, P., Balazinska, M.,
of mechanism design. This has been studied for private data 7. Dwork, C., McSherry, F., Nissim, K., Howe, B., Suciu, D. Query-based data
only in the restricted case of a single query, and has been Smith, A. Calibrating noise to pricing. J. ACM 62, 5 (Nov. 2015),
sensitivity in private data analysis. In 43:143:44.
shown to be a difficult task.10, 12 In Ref. Li et al. 20 we make a TCC (2006), 265284. 18. Laudon, K.C. Markets and privacy.
preliminary attempt to address this issue by requiring that 8. Dwork, C., Roth, A. The Algorithmic Commun. ACM 39, 9 (1996), 92104.
Foundations of Differential Privacy. 19. Li, C., Hay, M., Rastogi, V., Miklau, G.,
users choose from a limited set of contract functions (e.g. Foundations and Trends in Theoretical McGregor, A. Optimizing linear
one appropriate for a risk-tolerant user and one appropriate Computer Science (2014) Now counting queries under differential
Publishers Inc., Hanover, MA, USA. privacy. In PODS (2010).
for a risk-averse user). 9. Erlingsson, U., Pihur, V., Korolova, A. 20. Li, C., Li, D.Y., Miklau, G. Suciu, D. A
A third issue is the protection of privacy valuations them- Rappor: Randomized aggregatable theory of pricing private data. ACM
privacy-preserving ordinal Trans. Database Syst. 39, 4 (Dec.
selves. When a user has sufficient freedom to choose their response. In Computer and 2014), 128.
privacy valuation, it may be strongly correlated with the data Communications Security (CCS) 21. Li, C., Miklau, G. Pricing aggregate
(2014), 10541067. queries in a data marketplace. In
xi itself. In that case, even releasing the price of a query may 10. Fleischer, L., Lyu, Y.-H. Approximately WebDB (2012).
optimal auctions for selling privacy 22. Nash, A., Segoufin, L., Vianu, V.
lead to privacy loss, a factor not considered in the framework when costs are correlated with data. Views and queries: Determinacy and
described above. Hiding the valuation itself is a difficult In ACM Conference on Electronic rewriting. TODS 35, 3 (2010).
Commerce (2012), 568585. 23. Nissim, K., Vadhan, S., Xiao, D.
problem which is still being actively investigated in mecha- 11. Fung, B.C.M., Wang, K., Chen, R., Redrawing the boundaries on
nism design.10, 12, 23 In, Ref. Li et al. 20 we describe a simple Yu, P.S. Privacy-preserving data purchasing data from privacy-
publishing: A survey of recent sensitive individuals. In Conference
approach that is based on perturbing the price itself, in the developments. ACM Comput. Surv. on Innovations in Theoretical
same way that we perturb the data. Thus both (Q) and i(Q) 42, 4 (2010). Computer Science (2014), 411422.
are perturbed in the same fashion as query answers, and are
therefore random variables. All three properties of arbitrage- Chao Li (chaoli@google.com), Google Inc. Daniel Yang Li and Dan Suciu
Gerome Miklau (miklau@cs.umass.edu), ({dyli,suciu}@cs.washington.edu),
freeness, cost-recovery, and compensation are then defined University of Massachusetts, Amherst, MA. University of Washington, Seattle, WA.
in terms of expected values. In addition, the privacy loss for
data item xi includes two parts: one is due to the release of the
query answer and the other is due to the release of the price.
7. CONCLUSION
We have introduced a framework for selling private data.
Buyers can purchase any linear query, with any amount of
perturbation, and need to pay accordingly. Data owners, in
turn, are compensated according to the privacy loss they
incur for each query. Buyers are allowed to ask an arbitrary Permission to make digital or hard copies of all or part of this work for personal
number of queries, and we have designed techniques for or classroom use is granted without fee provided that copies are not made
or distributed for profit or commercial advantage and that copies bear this
ensuring that the prices are arbitrage-free, according to
notice and the full citation on the first page. To copy otherwise, to republish,
a specific definition of arbitrage-freeness, meaning that to post on servers or to redistribute to lists, requires prior specific permission
buyers are guaranteed to pay for any information they may and/or a fee.
further extract from the queries. Our pricing framework
is balanced, in the sense that the buyers price covers the ACM 0001-0782/17/1200 $15.00.
Technical Perspective
To view the accompanying paper,
visit doi.acm.org/10.1145/3139461 rh
STAND A RD I Z ED I N T E RFACE S PLAY an sidered poor candidates for parallel tial. In a program with 50% of its time
important role in many industries; for execution. Each of their iterations typi- spent in sequential loops, even with
example, a processors instruction set cally runs for a short amount of time (in perfect parallelization of the other code,
architecture (ISA) defines the interface the benchmarks, 25 clock cycles on the the largest possible speedup is 2. Clearly
between hardware and software. A sta- average, 50% requiring 10 or few clock something must be done with these
ble, well-defined interface facilitates cycles). Moreover, non-numeric loops non-numeric loops.
independent innovation on both sides commonly execute conditional branch- The paper proposes a simple and
of the boundary. Unchanging (or slowly es, so their execution behavior is data elegant approach to non-numeric par-
changing) ISAs have meant that new dependent. Neither consideration is allelization. The HELEX compiler iden-
programming languages, compilers, fatal by itself, but these loops also pass tifies the sequential portions of a loop,
and applications can run on old com- values among iterations. It is difficult to which will run code tied to the loop-
puters. At the same time, new comput- analyze these loop-carried dependen- carried dependencies. These portions
ers, with improved microarchitectures, cies and to generate low-overhead code must execute in sequential order, and
can run existing programs faster. that respects them. values produced by one iteration must
Recently, however, processors have So, in general, these loops run se- be sent to subsequent iterations, even
been extended with a wide range of quentially. In the era when computer if they are running on another proces-
architecturally visible features that performance doubled every two years, sor. Normal shared-memory communi-
change their ISA, for example, support sequential execution was not a pressing cation can cost hundreds of cycles and
for vector processing, virtual memory, problem. But, CPU clock speed stopped so are too expensive for fine-grain itera-
cryptography, and secure execution. increasing over a decade ago, and mul- tions that may only run for a faction of
When does it make sense to extend ticore parallelism became the preferred that time. Parallel speedup comes from
an interface and introduce a new fea- approach to utilize the additional tran- executing the other portions of a loop
ture that breaks backward compatibil- sistors provided by Moores Law. But, to- those not involved in the loop-carried
ity? Clearly, with something as perva- day, this parallelism is not widely used dependenciesconcurrently.
sive as an ISA, change is not to be taken outside of datacenters. Mobile phones HELEX-RC is a simple hardware
lightly. Software that uses a new feature and laptops contain only 24 cores. extension that reduces or eliminates
will benefit only from new computers, Much of the software that runs on communication overhead. It introduc-
which initially are rare. This software these platforms is non-numeric and es a small amount of buffered memory
must also emulate the feature on older contains loops with short, data-depen- for loop-carried dependencies and syn-
machines, so changing the ISA increas- dent bodies. The authors argue that our chronization variables. These values
es the complexity of both hardware and inability to parallelize these loops is a are proactively sent to the processors
software and raises the cost of testing fundamental impediment to exploiting that will execute subsequent iterations,
and error diagnosis. parallel hardware. Amdahls Law relates so these values will be in local memory
The following paper proposes a mod- the parallel speedup of a program to the when an iteration starts, thereby ensur-
est hardware extension to support a fraction of its execution that is sequen- ing it is not delayed.
new parallel execution model for small, HELEX-RC is not a general-purpose
non-numeric loops. Under realistic as- hardware feature like a cache or regis-
sumptions, HELEX-RC increases the HELEX-RC is ter file. Its design is tightly tied to the
performance of a handful of well-known, HELEX execution model. Clever com-
non-numeric benchmarks by over a a simple hardware piler writers will no doubt find other
factor of 6. Many programs contain extension uses for it, but until then, it is a spe-
similar loops and might benefit as well. cialized solution to one problem. But,
Although the hardware is simple, it re- that reduces small improvements are sometimes
quires pervasive changes to the software or eliminates the key to unlock the value of much
stack because the feature is tied to a spe- larger architectural features such as
cific execution model. Existing compiled communication multicore parallelism.
programs will not benefit from HELEX. overhead. James Larus (james.larus@epfl.ch) is Dean of the
The authors, however, present a
School of Computer and Communications Science, EPFL,
powerful argument for paying this Lausanne, Switzerland.
price. Short, non-numeric loops are
very common, but have long been con- Copyright held by author.
Automatically Accelerating
Non-Numerical Programs by
Architecture-Compiler Co-Design
By Simone Campanoni, Kevin Brownell, Svilen Kanev, Timothy M. Jones, Gu-Yeon Wei, and David Brooks
12% 5
100 3
9%
39% 6% 6+
Data and
12%
22% 1 signals
Hop DL1 wait A
Atom 2 Cache Code within sequential segments
Nehalem
Measured cache
50 coherence latency (b) Distance store 0x00A, 5
Ring 5
Sandy 5
node signal A 5
Bridge 34% A
6+
Ivy 4 12%
9%
A
Bridge 16%
Haswell 21%
8%
1 Code outside sequential segments
0 3 Core
0 25 75 107 190 260 2 Core No delay wait A
Clock cycles load 0x00A
(a) Short loop iterations (c) Consumers Time
Compiler. HCCv3 automatically generates parallel Synchronization. Given the difficulty of determining
threads from sequential programs by distributing succes- which iteration depends on which in non-numerical pro-
sive loop iterations across adjacent cores organized as a uni- grams, compilers typically make the conservative assump-
directional ring within a single multicore processor. HCCv3 tion that an iteration depends on all of its predecessor
parallelizes loops that are most likely to speed up perfor- iterations. Therefore, a core cannot execute sequential code
mance when their iterations execute in parallel. Only 1 loop until it is unblocked by its predecessor.5, 20 Moreover, an iter-
runs in parallel at a time. ation unblocks its successor only if both it and its predeces-
To preserve the sequential semantics of the original loop, sors have executed this sequential segment or if they are not
the code that implements a loop-carried data dependence, going to. This execution model leads to a chain of signal
that is, one spanning loop iterations, must run in a sequen- propagation across loop iterations that includes unneces-
tial segment whose instances in parallel threads execute in sary synchronization: even if an iteration is not going to exe-
iteration order. Variables and other data structures involved cute sequential code, it still needs to synchronize with its
in such dependenceseven those normally allocated to reg- predecessor before unblocking its successor.
isters in sequential codeare mapped to specially-allocated HELIX-RC removes this synchronization overhead by
memory locations shared between cores. HCCv3 guarantees enabling an iteration to detect the readiness of all predeces-
that accesses to those shared memory locations always sor iterations, not just one. Therefore, once an iteration for-
occur within sequential segments. goes executing the sequential segment, it immediately
ISA. We introduce a pair of instructionswait and sig- notifies its successor without waiting for its predecessor.
nalthat mark the beginning and end of a sequential seg- Unfortunately, while HELIX-RC removes unnecessary syn-
ment. Each has an integer operand that identifies the chronization, it increases the number of signals that can be
particular sequential segment. A wait 3 instruction, for in flight simultaneously.
example, blocks execution of the core that issues it until all HELIX-RC relies on the signal instruction to handle
other cores running earlier iterations have finished execut- synchronization signals efficiently. Synchronization
ing the sequential segment labeled 3, which they signify by between a producer core and a consumer includes genera-
executing signal 3. Figure 2 shows a sequential segment tion of a signal by the producer, a request for that signal by
with label A being executed by the core attached to the left- the consumer, and transmission of the signal between the
most ring node. Between wait A and signal A, a store two. On a conventional multicore processor that relies on a
instruction sends the new value 5 for the shared location at demand-driven memory system for communication, signal
address 0x00A to the ring node for caching and circulation transmission is inherently lazy, and signal request and
to its successor nodes. The signal A instruction that ends transmission become serialized. With HELIX-RC, on the
the segment also signals subsequent nodes that the value other hand, a signal instructs the ring cache to proactively
generated by segment A is ready. forward a signal to all other nodes in the ring without inter-
A core forwards all memory accesses within sequential rupting any of the cores, thereby decoupling signal trans-
segments to its local ring node. All other memory accesses mission from synchronization.
(not within a sequential segment) go through the private L1 Code example. The code in Figure 3(a), abstracted for
cache. clarity, represents a small hot loop from 175.vpr of SPEC
Memory. Each ring node has a cache array that satisfies CINT2000. It is responsible for 55% of the total execution
both loads and stores received from its attached core during time of that program. The loop body has 2 execution paths.
a sequential segment. HELIX-RC does not require other The left path entails a loop-carried data dependence because
changes to the existing memory hierarchy because the ring during a typical loop iteration, instruction 1 uses the value
cache orchestrates interactions with it. To avoid any changes of variable a produced by a previous iteration. The right path
to conventional cache coherence protocols, the ring cache does not depend on prior data. Owing to complex control
permanently maps each memory address to a unique ring flow, the compiler cannot predict the execution path taken
node. All accesses from the distributed ring cache to the during a particular iteration, so it must assume that instruc-
next cache level (L1) go through the associated node for a tion 1 may depend on the previous iteration.
corresponding address. In a conventional implementation coupling communica-
tion with computation, the compiler would add wait 1
3.2. Overlapping communication with computation and signal 1 instructions to the right path, as shown in
Because shared values produced by a sequential segment Figure 3(a), to synchronize each iteration with its predeces-
and the signal that marks its end are propagated through sor and successor iterations. If shared values and signals
the ring node as soon as they are generated, this communi- were communicated on demand, the resulting sequential
cation between iterations is decoupled from computation signal chain would look like that highlighted in red shown
taking place on the cores. in Figure 3(b). If we assume that only iterations 0 and 2, run-
Shared data communication. Once a ring node receives a ning on cores 0 and 2, respectively, take the left path and
store, it records the new value and proactively forwards its execute instruction 1, then the sequential signal chain
address and value to an adjacent node in the ring cache, all shown in Figure 3(b) is unnecessarily long, because iteration
without interrupting the execution of the attached core. The 1 only executes parallel code, so the wait instruction is
value then propagates from node to node through the rest of unnecessary in that iteration. It results in a signal stall.
the ring without interrupting the computation of any core. Iterations 0 and 2, in order to update a, must load its
...
Time
(a) Parallel code (b) Coupled communication (c) Decoupled communication
previous value first, using a regular load. So lazy forwarding wait instructions while keeping the architectural enhance-
of this shared data leads to data stalls, because the transfer ment simple. Eliminating waits allows a core to execute a
only begins when demanded by a load, rather than when later loop iteration than its successor (significantly boost-
generated by a store. ing parallelism). Future iterations, however, produce sig-
In HELIX-RC, however, a wait A unblocks when all pre- nals that must be buffered. The last code property prevents
decessor iterations have signaled that segment A is fin- a core from getting more than one lap ahead of its succes-
ished. That allows HCCv3 to omit the wait 1 on the right sor. So when buffering signals, each ring cache node only
path through the loop body. That optimization, combined needs to recognize 2 typesthose from the past and those
with HELIX-RCs proactive communication between from the future.
cores, leads to the more efficient scenario shown in Figure
3(c). The sequential chain in red now only includes the 4.2. Code optimizations
delay required to satisfy the dependencecommunica- In addition to conventional optimizations specifically tuned
tion updating a shared value. to extract Thread Level Parallelism (TLP) (e.g., code schedul-
ing, method inlining, loop unrolling), HCCv3 includes ones
4. COMPILER that are essential for best performance of non-numerical
The decoupled execution model of HELIX-RC described so programs on a ring-cache-enhanced architecture: aggres-
far is possible given the tight co-design of the compiler and sive splitting of sequential segments into smaller code
architecture. In this section, we focus on compiler-guaran- blocks; identification and selection of small hot loops; and
teed code properties that enable a lightweight ring cache elimination of unnecessary wait instructions.
design, and follow up with code optimizations that make Sizing sequential segments poses a tradeoff. Additional
use of the ring cache. segments created by splitting run in parallel with others, but
extra segments entail extra synchronization, which adds
4.1. Code properties communication overhead. Thanks to decoupling, HCCv3
can split aggressively to efficiently extract TLP. Note that seg-
Only 1 loop can run in parallel at a time. Apart from a dedi- ments cannot be split indefinitelyeach shared location
cated core responsible for executing code outside parallel must be accessed by only 1 segment.
loops, each core is either executing an iteration of the cur- To identify small hot loops that are most likely to speed
rent loop or waiting for the start of the next one. up when their iterations run in parallel, HCCv3 profiles the
Successive loop iterations are distributed to threads in program being compiled using representative inputs.
a round-robin manner. Since each thread is pinned to a Instrumentation code emulates execution with the ring
predefined core, and cores are organized in a unidirec- cache during profiling, which produces an estimate of time
tional ring, successive iterations form a logical ring. saved by parallelization. Finally, HCCv3 uses a loop nesting
Communication between cores executing a parallel- graph, annotated with the profiling results, to choose the
ized loop occurs only within sequential segments. most promising loops.
Different sequential segments always access different
shared data. HCCv3 only generates multiple sequential 5. ARCHITECTURE ENHANCEMENTS
segments when there is no intersection of shared data. Adding a ring cache to a multicore architecture enables the
Consequently, instances of distinct sequential seg- proactive circulation of data and signals that boost parallel-
ments may run in parallel. ization. This section describes the design of the ring cache
At most 2 signals per sequential segment emitted by a and its constituent ring nodes. The design is guided by the
given core can be in flight at any time. Hence, only 2 sig- following objectives:
nals per segment need to be tracked by the ring cache. Low-latency communication. HELIX-RC relies on fast
communication between cores in a multicore processor for
This last property allows the elimination of unnecessary synchronization and for data sharing between loop
iterations. Since low-latency communication is possible In addition to these router-like elements, a ring node also
between physically adjacent cores in modern processors, contains structures more common to caches. A set associa-
the ring cache implements a simple unidirectional ring tive cache array stores all data values (and their tags) received
network. by the ring node, whether from a predecessor node or from
Caching shared values. A compiler cannot easily guaran- its associated core. The line size of this cache array is kept at
tee whether and when shared data generated by a loop itera- one machine word. While the small line is contrary to typical
tion will be consumed by other cores running subsequent cache designs, it ensures there will be no false data sharing
iterations. Hence, the ring cache must cache shared data. by independent values from the same line.
Keeping shared data on local ring nodes provides quick The final structural component of the ring node is the
access for the associated cores. As with data, it is also impor- signal buffer, which stores signals until they are consumed.
tant to buffer signals in each ring node for immediate Node-to-node connection. The main purpose of the ring
consumption. cache is to proactively provide many-to-many core commu-
Easy integration. The ring cache is a minimally-invasive nication in a scalable and low-latency manner. In the unidi-
extension to existing multicore systems, easy to adopt and rectional ring formed by the ring nodes, data propagates by
integrate. It does not require modifications to the existing value circulation. Once a ring node receives an (address,
memory hierarchy or to cache coherence protocols. value) pair, either from its predecessor, or from its associ-
With these objectives in mind, we now describe the inter- ated core, it stores a local copy in its cache array and propa-
nals of the ring cache and its interaction with the rest of the gates the same pair to its successor node. The pair eventually
architecture. propagates through the entire ring (stopping after a full
cycle) so that any core can consume the data value from its
5.1. Ring cache architecture local ring node, as needed.
The ring cache architecture relies on properties of compiled This value circulation mechanism allows the ring cache
code, which imply that the data involved in timing-critical to communicate between cores faster than reactive systems
dependences that potentially limit overall performance are (like most coherent cache hierarchies). In a reactive system,
both produced and consumed in the same order as loop iter- data transfer begins once the receiver requests the shared
ations. Furthermore, a ring network topology captures this data, which adds transfer latency to an already latency-criti-
data flow, as sketched in Figure 4. The following paragraphs cal code path. In contrast, a proactive scheme overlaps
describe the structure and purpose of each ring cache transfer latencies with computation to lower the receivers
component. perceived latency.
Ring node structure. The internal structure of a per-core The ring cache prioritizes the common case, where data
ring node is shown in the right half of Figure 4. Parts of this generated within sequential segments must propagate to all
structure resemble a simple network router. Unidirectional other nodes as quickly as possible. Assuming no contention
links connect a node to its two neighbors to form the ring over the network and single-cycle node-to-node latency, the
backbone. Bidirectional connections to the core and private design shown in Figure 4 allows us to bound the latency for
L1 cache allow injection of data into and extraction of data a full trip around the ring to N clock cycles, where N is the
from the ring. There are 3 separate sets of data links and buf- number of cores. Each ring node prioritizes data received
fers. A primary set forwards data and signals between cores. from the ring and stalls injection from its local core.
Two other sets manage infrequent traffic for integration To eliminate delays to forward data between ring nodes,
with the rest of the memory hierarchy (see Section 5.2). the number of write ports in each nodes cache array must
Separating these 3 traffic types simplifies the design and match the link bandwidth between two nodes. While this
avoids deadlock. Finally, signals move in lockstep with for- may seem like an onerous design constraint for the cache
warded data to ensure that a shared memory location is not array, Section 6 shows that just one write port is sufficient to
accessed before the data arrives. reap more than 99% of the ideal-case benefits.
Figure 4. Ring cache architecture overview. From left to right: overall system; single core slice; ring node internal structure.
L1 Cache reads/writes
Data and signals Remote L1
Request/reply
DL1 Loads
Cache ReadPort from core
Cache array Stores/signals
from core
WritePort
Ring
node Data and
signals Data and
Signal buffer signals
Signal S Signal 1
Past Credits
Core
...
Future
Core Link
Credits
buffers
Control
a
This feature may add one multiplexer delay to the critical delay path from b
Most cache coherence protocols (including Intel, AMD, and ARM implemen-
the core to L1. tations) provide this minimum guarantee.
coherence protocol. but also increases the geometric mean of speedups for
Simulated ring cache. We extended XIOSim to simulate CFP2000 benchmarks from 11.4 to almost 12.
the ring cache as described in Section 5. We used the follow- We now turn our attention to understanding where the
ing configuration: a 1KB 8-way associative array size, one-word speedups come from.
data bandwidth, five-signal bandwidth, single-cycle adja- Communication. Speedups obtained by HELIX-RC come
cent core latency, and two cycles of core-to-ring-node injec- from decoupling both synchronization and data communi-
tion latency to minimally impact the already delay-critical cation from computation in loop iterations, which signifi-
path from the core to the L1 cache. A sensitiviy analysis of cantly reduces communication overhead, allows the
these parameters as well as the evaluation of the ring cache compiler to split sequential segments into smaller blocks,
in out-of-order cores can be found in.4 We use a simple bit and cuts down the critical path of the generated parallel
mask as the hash function to distribute memory addresses code. Figure 6 compares the speedups gained by multiple
to their owner nodes. To avoid triggering the cache coher- combinations of decoupling synchronization, register-, and
ence protocol, all words of a cache line have the same owner. memory-based communication. As expected, fast register
Lastly, XIOSim simulates changes made to the core to route transfers alone do not provide much speedup since most in-
memory accesses either to the attached ring node or to the register dependences can be satisfied by re-computing the
private L1. shared variables involved.4 Instead, most of the speedups
Benchmarks. We use 10 out of the 15 C benchmarks from come from decoupling communication for both synchroni-
the SPEC CPU2000 suite: 4 floating point (CFP2000) and 6 zation and memory-carried actual dependences. To the best
integer benchmarks (CINT2000). For engineering reasons, of our knowledge, HELIX-RC is the only solution that accel-
the data dependence analysis that HCCv3 relies on4 requires erates all 3 types of transfers for actual dependences.
either too much memory or too much time to handle the
rest. This limitation is orthogonal to the results described in
this paper. Figure 5. HELIX-RC triples the speedup obtained by a compiler-
only solution for SPEC INT benchmarks. Speedups are relative to
Compiler. We extended the Intermediate Language
sequential program execution.
Distributed Just-In-Time (ILDJIT) compilation framework,3
version 1.1, to use LLVM 3.0 for backend machine code gen- 16
Compiler-only
eration. We generated both single- and multi-threaded ver- 14 Numerical
HELIX-RC
sions of the benchmarks. The single-threaded programs are programs
12
the unmodified versions of benchmarks, optimized (O3) and Non-numerical
Program speedup
er
18 lf
cf
Ge p2
an
ke
rt
n
p
vp
s
m
ea
ea
o
gz
a
1.m
rs
ua
FP .me
i
tw
e
bz
9.
5.
am
om
om
om
pa
4.
17
17
0.
6.
16
7
7.
8.
25
30
3.
17
Ge
Ge
19
18
18
0
c
As an aside, automatic parallelization features of ICC led to a geomean
ip
cf
n
ol
vp
se
zip
ea
gz
1.m
tw
m
4.
b
17
0.
6.
18
16
o
7.
25
30
Ge
T
IN
These speedups are possible even with a cache coherence latency of convention-
al processors (e.g., 75 cycles).
Auburn University the proposed term of employment. Auburn Uni- Barnard College is an Equal Opportunity
Department of Computer Science versity is an EEO/Vet/Disability Employer. Employer. Barnard does not discriminate
and Software Engineering (CSSE) due to race, color, creed, religion, sex, sexual
Multiple Faculty Positions in Cybersecurity orientation, gender and/or gender identity or
Barnard College expression, marital or parental status, national
CSSE invites applications for multiple tenure- Senior Endowed Chair and Director of origin, ethnicity, citizenship status, veteran or
track faculty positions to begin in Fall 2018 or the Center for Computational Science military status, age, disability, or any other legally
later. Candidates at the Assistant Professor level protected basis, and to the extent permitted by law.
will be given preference, however outstanding Barnard College, a premier liberal arts college in Qualified candidates of diverse ethnic and racial
candidates at senior levels will also be consid- the City of New York and the nations most selec- backgrounds are encouraged to apply for vacant
ered. A Ph.D. degree in computer science, soft- tive womens college, seeks a scholar and leader positions at all levels.
ware engineering or a closely related field must to serve as Inaugural Endowed Chair in Comput-
be completed by the start of appointment. Excel- er Science and Director of the Center for Compu-
lent communication skills are required. We are tational Science. This individual will build a de- Boston College
interested in candidates specializing in all areas partment of computer science at the College that Assistant Professor of the Practice or Lecturer
related to security, such as AI/machine learning works in close collaboration with the Department
applications to security, blockchain, cryptocurrency, of Computer Science in Columbia Universitys Fu The Computer Science Department of Boston
cyberidentity, cyberinfrastructure and critical infra- Foundation School of Engineering and Applied College aims to grow substantially over the next
structure protection, digital forensics, reverse engi- Science. In this newly-created role, the Chair several years, and will seek to fill faculty positions
neering, secure cloud, mobile systems, networks and and Director will have the opportunity to launch at all levels. We invite applications for a full-time,
operating systems, secure software engineering, and a new academic program in Computer Science non-tenure-track faculty position, beginning in
securing the Internet of Things. and frame programming and content for a new the 2018-2019 academic year. Candidates should
CSSE is home to the Auburn Cyber Research Center for Computational Science. The endowed be committed to excellence in undergraduate
Center (http://cyber.auburn.edu), and is affiliated chair position will be tenured in the Barnard De- education, and should be able to both teach a
with the McCrary Institute for Critical Infrastruc- partment of Mathematics until a department of broad variety of undergraduate computer science
ture Protection and Cyber Systems (http://mc- computer science is formally established. The courses, and to participate in the development of
crary.auburn.edu). The department has 21 full- Chair and Director is expected to be in place no new courses that reflect the evolving landscape of
time tenure-track faculty members and supports later than September 2018. the discipline.
strong M.S. and Ph.D. programs (with a new M.S. Barnard benefits from close collaborations Minimum requirements for the title of As-
in Cybersecurity Engineering projected to start with academic departments across Columbia sistant Professor of the Practice include a Ph.D.
in Fall 2018). Faculty research areas include ar- University, and it is expected that this individual in Computer Science or closely related disci-
tificial intelligence, architecture, computational will have an affiliate position and intellectual pline. Candidates who have only attained a
biology, computer science education, data sci- home in both the Computer Science Department Masters degree would be eligible for the title
ence, energy-efficient systems, human-computer and at the Data Sciences Institute at Columbia of Lecturer.
interaction, Internet of Things, learning science, University. In addition to curricular develop- Application review beings October 1, 2017.
machine learning, modeling and simulation, ment, the endowed chair position will have the re- See www.cs.bc.edu for more information.
multi-agent systems, networks, security, software sources to recruit junior faculty and post-doctoral To apply go to http://apply.interfolio.com/44984.
engineering and wireless engineering. scholars and stimulate interactions with units
Auburn University is one of the nations pre- across Barnard, many of which have quantita-
mier public land-grant institutions. It is ranked tively and computationally oriented components, Boston College
46th among public universities in the U.S. News and and with Columbia. Associate or Full Professor
World Report 2018 Rankings. It is nationally recog- Barnard seeks a leader in the field of comput- of Computer Science
nized for its commitment to academic excellence, er science with a distinguished record of scholar-
a positive work environment, student engagement, ship and is open to candidates from a variety of The Computer Science Department of Boston
and its beautiful campus. Auburn residents enjoy a research areas. The ability to develop curriculum, College aims to grow substantially over the next
thriving community, recognized as one of the best an understanding of the importance of collabora- several years, and will seek to fill faculty posi-
small towns in America. The city is located on the tion across disciplines, and a deep commitment tions at all levels. We invite applications for a
rapidly developing I-85 corridor between Atlanta, to the undergraduate experience, the importance senior-level (Associate or Full Professor) position,
GA, and Montgomery, AL. The Auburn City school of womens colleges, and excellent communica- starting in the 2018-2019 academic year. The suc-
system is ranked as one of the top school systems tion skills are required. cessful candidate is expected to play a leadership
in the nation and the state. A nationally recognized Applications should be submitted electroni- role in the creation of a Data Science program in
hospital, East Alabama Medical Center, is located cally and include the following: curriculum-vitae conjunction with the new interdisciplinary Insti-
close by in Opelika. The Auburn-Opelika metropol- including a publication list, a description of re- tute for Integrated Science and Society, recently
itan area has a population of over 150,000. search accomplishments, a statement of research announced at Boston College, and will also par-
Applicants should submit a cover letter, cur- and teaching interests and plans, contact infor- ticipate in shaping the future of our growing de-
riculum vita, research vision, teaching philoso- mation for three experts who can provide letters partment.
phy, and the names of references through the of recommendation, and up to three pre/reprints Applicants must have a Ph.D. in Computer
faculty hiring link on the department home page of scholarly work. Science or closely related discipline, a record of
http://www.eng.auburn.edu/csse. There is no ap- Inquiries, nominations, and applications strong research accomplishment and external
plication deadline. Application review will begin should be sent in strict confidence to: funding, and a commitment to quality in under-
in November. Selected candidates must be able Jane McMahon, Managing Associate graduate and graduate education. Preference will
to meet eligibility requirements to work legally in Isaacson, Miller be given to candidates whose research is in the ar-
the United States at the time of appointment for www.imsearch.com/6376 eas of high-performance data mining / machine
FACULTY POSITIONS
Department of Computer Science
The Department of Computer Science at Virginia Tech (www.cs.vt.edu) seeks applicants for five faculty positions, including two tenure-track
Assistant Professor positions in data analytics, a tenure-track assistant professor position in human-centered computing, and two open rank
positions in cybersecurity. Candidates must have a Ph.D. in computer science or related field at the time of appointment and a rank-appropriate
record of scholarship and collaboration in computing research, broadly defined. Successful candidates should give evidence of commitment to
issues of diversity in the campus community. Tenured and tenure-track faculty will be expected to teach graduate and undergraduate courses,
mentor graduate students, and develop a high quality research program.
ASSISTANT PROFESSOR IN DATA ANALYTICS - Blacksburg, VA. Candidates with research depth and breadth in data
analytics, data mining, machine learning, deep learning, artificial intelligence, text mining, natural language processing, information
retrieval, interactive visual analytics, data visualization, high-performance analysis, social informatics, or data science are encouraged to
apply. Candidates working at the intersection of data analytics and other computing or application domains - such as cyber-security, urban
computing, health analytics, bioinformatics, and distributed and IoT systems - are also encouraged to apply. Successful candidates should be
able to demonstrate an interest in initiating and sustaining collaborations within computing as well as with data domain scientists. Successful
candidates will have the opportunity to engage in transdisciplinary research, curriculum, and outreach initiatives with other university
faculty working in the Data & Decisions destination area, one of several new university-wide initiatives at Virginia Tech (provost.vt.edu/
destination-areas). Data & Decisions is focused on advancing the human condition and society with better decisions through data. Faculty
collaborating in this area integrate data analytics and decision sciences across transdisciplinary research and curriculum efforts at Virginia
Tech. Candidates with demonstrated experience in interdisciplinary teaching or research that aligns with the Data and Decisions vision
(provost.vt.edu/destination-areas/da-overview/da-data.html) are especially encouraged to apply. Successful candidates will also have
opportunities to collaborate with numerous reseach centers on campus, including the Discovery Analytics Center (dac.cs.vt.edu), which
leads big-data analytics research at Virginia Tech. Applications must be submitted online to jobs.vt.edu for posting #TR0170153. Applicant
screening will begin on December 1, 2017. Inquiries should be directed to Dr. Chris North, Search Committee Chair, north@cs.vt.edu.
ASSISTANT PROFESSOR IN HUMAN-CENTERED COMPUTING - Blacksburg, VA. Candidates from any area related
to human-computer interaction, user experience, or interactive computing are encouraged to apply. We especially encourage applicants
with interests in novel interactive experiences and technologiesincluding immersive environments (virtual reality and augmented reality),
multi-sensory displays, multi-modal input, visualization, visual analytics, human-robot interaction, game design, and creative technologies.
The successful candidate will have the opportunity to engage in transdisciplinary research, curriculum, and outreach initiatives with other
university faculty working in the Creativity & Innovation (C&I) Strategic Growth Area, one of several new university-wide initiatives at
Virginia Tech (see provost.vt.edu/destination-areas). The C&I Strategic Growth Area is focused on empowering partners and stakeholders
to collaborate on creativity, innovation, and entrepreneurship efforts that transcend disciplinary boundaries. Faculty working together
in this area comprise a vibrant ecosystem that melds the exploration of innovative technologies and the design of creative experiences
with best practices for developing impact-driven and meaningful outcomes and solutions. Candidates with demonstrated experience in
interdisciplinary teaching or research that aligns with the C&I vision (provost.vt.edu/destination-areas/sga-overview/sga-creativity.html)
are especially encouraged to apply. The successful candidate will also have opportunities for collaboration in the interdisciplinary Center for
Human-Computer Interaction (www.hci.vt.edu); the Institute for Creativity, Arts, and Technology (icat.vt.edu); and the Discovery Analytics
Center (dac.cs.vt.edu). Applications must be submitted online to jobs.vt.edu for posting #TR0170152. Applicant screening will begin on
December 1, 2017. Inquiries should be directed to Dr. Doug Bowman, Search Committee Chair, dbowman@vt.edu.
FACULTY POSITIONS IN CYBERSECURITY - Blacksburg, VA and National Capital Region (NCR). Candidates are sought
for two positions, at any rank, with expertise in a broad range of cybersecurity topics, including but not limited to systems and software
security, security analytics, human-centric security, formal methods, trustworthy computing, network security, cloud security, data security,
and security issues in cyber-physical, IoT, or autonomous systems. Applicants interested in either the main campus in Blacksburg, VA, or in
Virginia Techs National Capital Region campus, with facilities in Falls Church and Arlington, VA, are encouraged to apply. These positions
are part of a broad university initiative in integrated security (provost.vt.edu/destination-areas/da-overview/da-security.html). Virginia
Techs Integrated Security Destination Area (ISDA) is focused on understanding and fostering a world in which individuals, institutions, and
nations are secured by technology and social systems that follow ethical principles and promote values of social justice. Faculty working
together in this area are bringing a transdisciplinary approach to the complex range of human and systems security challenges. Successful
candidates will have the opportunity to engage in transdisciplinary research, curriculum, and outreach with other faculty working in the
ISDA. Candidates with demonstrated experience in interdisciplinary teaching or research that aligns with the ISDA vision are particularly
encouraged to apply. In addition to ISDA collaboratorations, successful candidates will have the opportunity to work with a large group of
cybersecurity faculty in CS and ECE (www.cyber.vt.edu). Applications must be submitted online to jobs.vt.edu for posting #TR0170145.
Candidates interested in the National Capital Region (Northern Virginia) campus should clearly indicate that in an application cover letter.
The Department of Computer Science has 47 teaching faculty, including 42 tenured or tenure-track faculty, over 840 undergraduate majors,
and more than 250 graduate students. Department annual research expenditures over the last four years average $13 million. The department is
in the College of Engineering, whose undergraduate program ranks 14th and graduate program ranks 27th among all U.S. engineering schools
(USN&WR, 2017). Most of these positions are located at the main campus of Virginia Tech in Blacksburg, VA, in a region consistently ranked
among the countrys best places to live. One of the cybersecurity faculty positions may be at the universitys Northern Virginia campus, with
facilities in Falls Church and Arlington, VA.
These positions require occasional travel to professional meetings. Selected candidates must pass a criminal background check prior to employment.
Virginia Tech is an AA/EEO employer, committed to building a culturally diverse faculty; we strongly encourage applications from women and minorities.
to enhancing the diversity of its faculty and stu- computer engineering, and systems security en- services. All qualified applicants will receive con-
dents. Individuals from traditionally underrepre- gineering to address important problems in any sideration for employment without regard to age,
sented groups are encouraged to apply. of these areas. ethnicity, color, race, religion, sex, sexual orienta-
FSUs Equal Opportunity Statement can be The department offers BS and Ph.D. degrees tion or identity, national origin, disability status or
viewed at: http://www.hr.fsu.edu/PDF/Publica- which started in fall 2016, and an MS degree has protected veteran status.
tions/diversity/EEO_Statement.pdf just been approved. The engineering program
draws upon IU Bloomingtons considerable edu-
cation and research strengths such as biology, Max Planck Institute for
Indiana University business, chemistry, computer science, environ- Software Systems (MPI-SWS)
Faculty Positions in Intelligent Systems mental science, informatics, law, medicine, mu- Tenure-Track Openings
Engineering sic, physics, network science, optometry, psycho-
logical and brain sciences, speech and hearing Applications are invited for faculty positions at all
The School of Informatics, Computing, and Engi- sciences, and statistics. New faculty will have con- career stages in computer science, with a particular
neering (SICE) at Indiana University (IU) Bloom- siderable opportunity and responsibility to shape emphasis on systems (broadly construed). We ex-
ington invites applications for multiple open rank the development of curricula and research. There pect multiple positions to be filled in systems, but
tenured/tenure track faculty positions to begin in is a strong emphasis on world-class research, exceptional candidates in other areas of computer
Fall 2018 in Intelligent Systems Engineering (ISE). built around focused laboratories and proactively science are also strongly encouraged to apply.
Duties include research, teaching, and service. involving undergraduates. More information can A doctoral degree in computer science or re-
ISE is an innovative new program, currently be found at https://www.engineering.indiana.edu lated areas and an outstanding research record
with 19 faculty, that focuses on the intersection of Applicants should have an established record (commensurate for the applicants career stage)
sophisticated computing methods and informa- (for senior level) or demonstrable potential for are required. Successful candidates are expected
tion technology with critical engineering prob- excellence (for junior level) in research and teach- to build a team and pursue a highly visible re-
lems. Current foci include bioengineering, com- ing, and a PhD in a related field expected before search agenda, both independently and in col-
puter engineering, robotics and cyberphysical August 2018. laboration with other groups.
systems, molecular and nanoscale engineering, Interested candidates should review the ap- MPI-SWS is part of a network of over 80 Max
environmental engineering, neuro-engineering, plication requirements and submit their applica- Planck Institutes, Germanys premier basic-re-
and intelligent systems. ISE reflects a top prior- tion at: https://indiana.peopleadmin.com/post- search organisations. MPIs have an established
ity for Indiana University, with an expected $120 ings/4613 record of world-class, foundational research in
million investment and search under way for an For full consideration, applications are due by the sciences, technology, and the humanities.
Associate Dean for Engineering. We are particu- January 1, 2018, but applications will be consid- The institute offers a unique environment that
larly interested in hiring faculty whose research ered until the positions are filled. combines the best aspects of a university depart-
develops and applies advanced computational Questions may be sent to isechair@indiana.edu ment and a research laboratory: Faculty enjoy
approaches, especially intelligent systems, ap- full academic freedom, lead a team of doctoral
plied machine learning and artificial intelli- Indiana University is an equal employment and students and post-docs, and have the opportunity
gence, cloud computing, cyberphysical systems, affirmative action employer and a provider of ADA to teach university courses; at the same time, they
Faculty Positions in
Computer and Communication Sciences
cole polytechnique fdrale de Lausanne (EPFL)
The School of Computer and Communication Sciences (IC) at To apply, please follow the application procedure at
EPFL invites applications for faculty positions in computer and
communication sciences. We are seeking candidates for tenure https://facultyrecruiting.epfl.ch/position/6848514
track assistant professor as well as, in exceptional cases, for
senior positions. The following documents are requested in PDF format: cover
letter, curriculum vitae including publications list, brief state-
Successful candidates will develop an independent and crea- ments of research and teaching interests, and contact infor-
tive research program, will participate and be committed to mation (name, postal address, and email) of 3 references for
excellence in undergraduate and graduate teaching, and will junior positions or 5 for senior positions. Screening will start
supervise PhD students. on December 15th, 2017.
The school is seeking candidates in the fields of: data science Further questions may be addressed to:
and machine learning including applications in bioinfor-
matics, natural language processing, and speech recognition Prof. Anastasia Ailamaki
security and privacy, and verification and formal methods. Chair of the Recruiting Committee
Candidates in other areas will also be considered. Email: recruiting.ic@epfl.ch
EPFL offers internationally competitive salaries, generous re- For additional information on EPFL and IC, please consult:
search support, significant start-up resources, and outstanding http://www.epfl.ch and http://ic.epfl.ch
research infrastructure. Academics in Switzerland enjoy many
research funding opportunities, as well as an exceptionally EPFL is an equal opportunity employer and a family friendly
high standard of living. university.
COLLEGIATE ASSISTANT
sor/Assistant Professor. We are looking for out-
standing candidates with demonstrated research
achievements and keen interest in teaching, in
PROFESSOR the following areas (but are not restricted to):
Data Science
Department of Computer Science Artificial Intelligence
Computer Systems (including Networks, Cloud
Computing, IoT, Software Engineering, etc.)
The Department of Computer Science at Virginia Tech (www.cs.vt.edu) seeks Cognitive Robotics and Autonomous Systems
applicants for a collegiate faculty position at the Assistant Professor level. Cybersecurity (including Cryptography)
Candidates must have a Ph.D. in computer science or related field at the time
of appointment. Collegiate faculty members have a primary commitment Applicants should have an earned Ph.D. de-
to the instructional mission of the department, including graduate and gree and demonstrated achievements in both
undergraduate teaching, curricular and program development, and the design research and teaching. The teaching language at
and integration of innovative and inclusive pedagogy. Successful candidates SUSTech is bilingual, either English or Putong-
should give evidence of potential to take a lead role in enhancing curricula hua. It is perfectly acceptable to use English in all
and promoting teaching excellence. In addition to teaching, candidates will be lectures, assignments, exams. In fact, our exist-
expected to participate in research and scholarship, whether on teaching and ing faculty members include several non-Chinese
speaking professors.
learning or on other computer science research topics of interest. Candidates
As a State-level innovative city, Shenzhen has
will have the opportunity to collaborate with a wide range of research groups
identified innovation as the key strategy for its
in the department, including a thriving group in CS education research. development. It is home to some of Chinas most
Candidates with demonstrated knowledge of CS education research topics successful high-tech companies, such as Huawei
such as education-related software systems, analysis of student data analytics, and Tencent. SUSTech considers entrepreneur-
CS education for non-majors or at the K-12 level, cybersecurity education, ship as one of the main directions of the univer-
distance education, or diversity in CS are encouraged to apply. sity. SUSTech encourages candidates with experi-
ence in entrepreneurship to apply.
The department has 47 teaching faculty including 42 tenured and tenure- The Department of Computer Science and En-
track faculty, over 800 undergraduate majors, and more than 250 graduate gineering at SUSTech was founded in 2016. It has
students. The department is in the College of Engineering, whose 12 professors, all of whom hold doctoral degrees
undergraduate program ranks 14th and graduate program ranks 27th among or have years of experience in overseas universi-
U.S. engineering schools (USN&WR, 2017). The department plays a central ties. Among them, two were elected into the 1000
role in several university-wide initiatives (see provost.vt.edu/destination- Talents Program in China; three are IEEE fellows;
areas). Successful candidates will have the opportunity to participate in new one IET fellow.
transdisciplinary research programs and curricula in Data and Decisions, Established in 2012, the Southern University
Integrated Security, Intelligent Infrastructure for Human-Centered of Science and Technology (SUSTech) is a public
Communities, and Creativity & Innovation. institution funded by the municipal of Shenzhen,
a special economic zone city in China. Shenzhen
The collegiate faculty rank is a non-tenure-track position that offers a clear is a major city located in Southern China, situated
promotion path with increasingly long-term contracts. Collegiate faculty immediately north to Hong Kong Special Admin-
are full members of the department faculty, and are expected to participate istrative Region. As one of Chinas major gateways
to the world, Shenzhen is the countrys fastest-
in sponsored research, mentor graduate students, participate in department
growing city in the past two decades.
and professional service, etc. This position is located at the main campus in
SUSTech is committed to increase the diversi-
Blacksburg, VA, a region consistently ranked among the countrys best places ty of its faculty, and has a range of family-friendly
to live. The position requires occasional travel to professional meetings. policies in place. The university offers competi-
Successful candidates should give evidence of commitment to issues of tive salaries and fringe benefits including medi-
diversity in a campus community. Virginia Tech is committed to building a cal insurance, retirement and housing subsidy,
culturally diverse faculty and strongly encourages applications from women which are among the best in China. Salary and
and minorities. The selected candidate must pass a criminal background check rank will commensurate with qualifications and
prior to employment. experience. More information can be found at
http://talent.sustc.edu.cn/en.
Applications must be submitted online to jobs.vt.edu for posting #TR0170132. We provide some of the best start-up packages
Applicant screening will begin on November 27, 2017 and continue until the in the sector to our faculty members, including
position is filled. Inquiries should be directed to Dr. Dennis Kafura, Search one PhD studentship per year and two postdoc-
Committee Chair, kafura@cs.vt.edu. toral fellowships, in addition to a significant
amount of start-up funding (which can be used
to fund additional PhD students and postdocs,
Virginia Tech is an AA/EEO employer, committed to building a research travels, and research equipment).
culturally diverse faculty; we strongly encourage applications from To apply, please provide a cover letter iden-
women and minorities. tifying the primary area of research, curriculum
vitae, and research and teaching statements, and
forward them to cshire@sustc.edu.cn.
We are seeking highly qualified faculty candidates at all levels, from new PhDs to senior personnel, to join our dynamic, world-class faculty in contributing to
the emerging knowledge-based economies across the continent. CMU-Africa faculty members collaborate with industry and deliver innovative, interdisciplinary
graduate teaching and research programs in the African context.
Carnegie Mellon is seeking exceptional candidates who can deliver innovative, interdisciplinary graduate programs in the following areas:
Candidates should possess a Ph.D. from a leading research university with a serious interest in both teaching and research in the context of opportunities in
Africa. We are particularly interested in applicants who have passion for a culturally diverse environment and who demonstrate a willingness to nurture the
inclusive Carnegie Mellon environment. We are actively committed to considering a diverse applicant pool in terms of gender, race, veteran status, and disability.
Carnegie Mellon University seeks to meet the needs of dual-career couples and is a member of the Higher Education Recruitment Consortium (HERC) that assists
with dual-career searches.
Applications should include a comprehensive resume including a complete list of publications, 3-5 professional references, a statement of research and teaching
interests (less than 2 pages each), and copies of 2 research papers (journal or conference papers). We invite you to learn more about our program and the
exciting opportunities in the new Africa at www.cmu.edu/africa.
APPLICATIONS SHOULD BE SENT TO: Director, Carnegie Mellon University-Africa, email: director@africa.cmu.edu
U.S. Naval Academy the NASA Marshall Space Flight Center, the Armys
Distinguished Visiting Professors Redstone Arsenal, Fortune 500 companies, and
numerous high tech enterprises. UAH also has an
scholarly journal that position duration could vary from one to several
years. Responsibilities may vary and may include
majors and 151 graduate students are associated
with the unit. Faculty research interests are many
publishes high-quality teaching, collaborating with faculty and/or men-
toring student research.
and include cybersecurity, mobile computing,
data science, software engineering, visualization,
papers on all aspects of The Computer Science Department offers graphics and game computing, multimedia, AI,
University of Maryland, placing seventh in Most Innovative National Uni- The CSEE department is energetic, research-
Baltimore County versities and 13th in Best Undergraduate Teach- oriented and multi-disciplinary with programs in
An Honors University in Maryland ing. Princeton Review features UMBC as one of Computer Science, Computer Engineering, Elec-
Tenure Track position in Health Information the nations top universities, and one of the Col- trical Engineering and Cybersecurity. Our faculty
Technology (Health IT) leges that Pay You Back. The Chronicle of Higher (35 tenure-track, 11 teaching and 17 research)
Education has listed UMBC in the honor roll of enjoy collaboration, working across our special-
The Department of Information Systems (IS) at Great Colleges to Work For for eight consecutive izations as well as with colleagues from other
UMBC invites applications for a tenure-track years; it is the only Maryland four-year institution STEM, humanities and the arts departments and
faculty position at the Assistant Professor level to be so recognized. Our strategic location in the external partners. We have 1650 undergraduate
starting August 2018. We are searching for can- Baltimore-Washington corridor puts us close to and 500 M.S. and Ph.D. students in our programs.
didates with research interests and experience many important federal laboratories, agencies, UMBC is a dynamic public research university
in Health IT, a research area with high growth and high-tech companies. UMBCs campus is lo- integrating teaching, research and service. The
and impact in healthcare and related fields. The cated on 500 acres just off I-95 between Baltimore 2018 US News and World Report Best Colleges re-
ideal candidate will have expertise in conducting and Washington DC, less than 10 minutes from port placed UMBC 7th in the Most Innovative Na-
research that impacts healthcare outcomes, qual- the BWI airport and Amtrak station. The campus tional Universities category and 13th in Best Un-
ity, and costs, and intersects with active research includes a center for entrepreneurship, and the dergraduate Teaching, National Universities. Our
areas in the IS department: Artificial Intelligence/ bwtech@UMBC research and technology park, strategic location in the Baltimore-Washington
Knowledge Management, Data Science, Human which has special programs for startups focused corridor is close to many federal laboratories and
Centered Computing, Software Engineering, and on cybersecurity, clean energy, life sciences, and agencies and high-tech companies, facilitating
Health Information Technology. Strong candi- training. We are surrounded by one of the greatest interactions, collaboration, and opportunities for
dates with research emphases in other areas may concentrations of commercial, cultural, and sci- sabbaticals and visiting appointments.
also be considered. Candidates must have earned entific activity in the nation. Located at the head of Applicants should submit a cover letter, state-
a PhD in Information Systems or a related field no the Chesapeake Bay, Baltimore has all the advan- ment of teaching and research experience and in-
later than August 2018. tages of modern, urban living, including profes- terests, CV, and three letters of recommendation
Preference will be given to those who can col- sional sports, major art galleries, theaters, and a at http://apply.interfolio.com/45784. Applica-
laborate with current faculty within and across symphony orchestra. The citys famous Inner Har- tions received by December 15, 2017 are assured
departments at UMBC, fostering interdisciplin- bor area is an exciting center for entertainment full consideration. Send questions to jobsTT@
ary research. Candidates are expected to establish and commerce. The nations capital, Washington, csee.umbc.edu and see http://csee.umbc.edu/
a collaborative, externally funded, and nationally DC, is a great tourist attraction with its histori- jobs for more information. UMBC is an affirma-
recognized research program as well as contrib- cal monuments and museums. Just ten minutes tive action/equal opportunity employer.
ute to graduate and undergraduate teaching, from downtown Baltimore and 30 minutes from
advising, and mentoring. We especially welcome the D.C. Beltway, UMBC offers easy access to the
applications from candidates who are willing to regions resources by car or public transportation. University of Nevada, Las Vegas
contribute to the diversity mission of the universi- Electronic submission of application is re- Big Data/Health Disparities,
ty. The IS Department is committed to increasing quired at http://apply.interfolio.com/45260. All Associate/Full Professor
the diversity of our community. The Department applications must be submitted as PDF files,
offers undergraduate degrees in Information Sys- including a cover letter, CV, one-page statement The University of Nevada, Las Vegas invites ap-
tems and Business Technology Administration. of teaching interests, one-page statement of re- plications for Big Data/Health Disparities, Associ-
Graduate degree programs, MS and PhD, are of- search interests, and names and contact infor- ate/Full Professor [18533]
fered in both Information Systems and Human- mation of at least three references. For inquiries, PROFILE of the UNIVERSITY
Centered Computing, including an innovative please contact Dr. Aryya Gangopadhyay at (410) UNLV is a doctoral-degree-granting institution
online MS program in IS ranked among the top 455-2620 or gangopad@umbc.edu. Review of ap- of approximately 29,000 students and more than
20 in the nation by US News & World Report. Con- plications will begin in November 2017 and will 3,000 faculty and staff that is classified by the
sistent with UMBCs vision and mission, the De- continue until the position is filled, subject to the Carnegie Foundation for the Advancement of
partment has excellent teaching facilities, state- availability of funds. Teaching as a research university with high re-
of-the-art laboratories, and outstanding technical UMBC is an Affirmative Action/Equal Oppor- search activity. For more information, visit us on
support. Further details on our research, academ- tunity Employer and welcomes applications from line at: http://www.unlv.edu
ic programs, and faculty can be found at http:// minorities, women, veterans, and individuals
www.is.umbc.edu. with disabilities. COMMITTMENT to DIVERSITY
UMBC is a dynamic public research university The successful candidate will demonstrate sup-
integrating teaching, research, and service. As an port for diversity, equity and inclusiveness as well
Honors University, the campus offers academical- University of Maryland, as participate in maintaining a respectful, posi-
ly talented students a strong undergraduate liber- Baltimore County tive work environment.
al arts foundation that prepares them for graduate Computer Science and Electrical Engineering
and professional study, entry into the workforce, Tenure-Track Assistant Professor ROLE of the POSITION
and community service and leadership. UMBC The Department of Computer Science at the Uni-
emphasizes science, engineering, information UMBCs Department of Computer Science and versity of Nevada, Las Vegas (UNLV) invites ap-
technology, human services, and public policy at Electrical Engineering invites applications for a plications for a full-time tenure-track/tenured,
the graduate level. UMBC contributes to the eco- tenure-track Assistant Professor position to begin Associate/Full Professor position in Big Data
nomic development of the State and the region in Fall 2018. Exceptionally strong candidates for commencing Fall 2018. A distinguished record
through health equity, entrepreneurial initiatives, higher ranks may be considered. Applicants must in undergraduate and graduate computer science
workforce training, K-16 partnerships, and tech- have or be completing a Ph.D. in a relevant dis- education, well-funded scholarly research, and
nology commercialization in collaboration with cipline, have demonstrated the ability to pursue service qualifications to the Big Data community
public agencies and the corporate community. Di- a research program, and have a strong commit- will be required for appointment as a tenured As-
versity is a core value of UMBC and we believe that ment to undergraduate and graduate teaching. sociate/Full Professor.
the educational environment is enhanced when We welcome candidates in all areas of special-
diverse groups of people with diverse ideas come ization. Some areas of particular interest include, QUALIFICATIONS
together to learn. Therefore, members of under- (but are not limited to): information assurance This position requires a Ph.D. in Computer Sci-
represented groups including women, minorities, and cybersecurity; mobile, wearable, and IoT ence from a regionally accredited college or uni-
veterans, and individuals with disabilities are es- systems; big data with an emphasis on machine versity. The applicants are expected to have an
pecially encouraged to apply. learning, data science, and high-performance extensive research and funding in Big Data ap-
UMBC continues to be recognized in U.S. News computing; knowledge and database systems, plications in health/bioinformatics. In addition,
and World Reports national university rankings, and visualization. the applicants should have established research
center. Applicants with existing or pending proj- high-performance computing, computer archi- sion computer science courses as needed may be
ects funded by NSA, DHS, or other federal agen- tecture, artificial intelligence, cyber-physical sys- considered for a non-tenure-track appointment
cies are encouraged to apply. tems, wireless networking, mobile computing, at the rank of Instructor. An Instructor will nor-
The Department of Computer Science and software engineering, and human-computer in- mally teach twelve credit hours per semester or
Engineering offers B.S. degrees in Computer Sci- teraction. its equivalent, including evening and distributed
ence, in Computer Information Systems, and in The Department of Computer Science and learning courses through Palmetto College as
Computer Engineering; M.S. and Ph.D. degrees Engineering offers B.S. degrees in Computer Sci- needed, as well as a commitment to university/
in Computer Science and in Computer Engineer- ence, in Computer Information Systems, and in community service.
ing; M.S. degrees in Software Engineering and in Computer Engineering; M.S. and Ph.D. degrees Preference will be given to candidates with
Information Security; and a Graduate Certificate in Computer Science and in Computer Engineer- experience teaching at the university level. This
in Cyber Security Studies. The Department has 23 ing; M.S. degrees in Software Engineering and in experience could have been gained during the
full-time faculty members (11 of whom are NSF Information Security; and a Graduate Certificate course of pursuing a graduate degree.
CAREER Award recipients), an undergraduate en- in Cyber Security Studies. The Department has 23 Application materials are accepted on-
rollment of 921 students, and a graduate enroll- full-time faculty members (11 of whom are NSF line https://uscjobs.sc.edu/ (Posting Number
ment of 168 students. CAREER Award recipients), an undergraduate en- FAC00122). Applicants must complete an ap-
Review of applications will begin on Novem- rollment of 921 students, and a graduate enroll- plication, upload a cover letter that specifi-
ber 1, 2017 and continue until positions are filled. ment of 168 students. cally addresses the applicants qualifications,
Expected start date is August 16, 2018. Interested Review of applications will begin on Novem- provide a curriculum vitae, and share graduate
applicants will apply online at http://cec.sc.edu/ ber 1, 2017 and continue until positions are filled. transcripts online. Applicants must also pro-
jobs/CYBER with: (1) a letter of intent, (2) curricu- Expected start date is August 16, 2018. Interested vide contact information, to include an email
lum vitae, (3) a concise description of research applicants will apply online at http://cec.sc.edu/ address, for a minimum of three professional
plans, (4) a teaching plan, and (5) names & con- jobs/CSE with: (1) a letter of intent, (2) curriculum references. Only applications and materials
tact information of 3-5 references. vitae, (3) a concise description of research plans, submitted through the online application pro-
Questions may be directed to: (4) a teaching plan, and (5) names & contact infor- cess will be considered.
Department of Computer Science and Engi- mation of 3-5 references. The University of South Carolina Lancaster,
neering Questions about the departmental search through the State of South Carolina and Public
Dr. John Rose, Professor and Faculty Search may be directed to: Employee Benefit Authority (PEBA), offers state
Committee Chair Department of Computer Science and Engi- employees a valuable benefits package, includ-
rose@cse.sc.edu neering ing health and life insurance, generous paid leave
(803) 777-2405 Dr. John Rose, Professor and Faculty Search and retirement programs.
Committee Chair The University of South Carolina Lancaster
The University of South Carolina is an affirma- rose@cse.sc.edu does not discriminate in educational or employ-
tive action, equal opportunity employer, and does (803) 777-2405 ment opportunities on the basis of race, color,
not discriminate in educational or employment religion, national origin, sex, sexual orientation,
opportunities or decisions for qualified persons on The University of South Carolina is an affirma- gender, age, disability, veteran status or genetics.
the basis of race, sex, gender, age, color, religion, na- tive action, equal opportunity employer, and does
tional origin, disability, genetics, sexual orientation not discriminate in educational or employment
or veteran status. Minorities and women are encour- opportunities or decisions for qualified persons on The University of Texas at San Antonio
aged to apply. USC is responsive to the needs of dual the basis of race, sex, gender, age, color, religion, na- Faculty Position in Computer Science
career couples. tional origin, disability, genetics, sexual orientation
or veteran status. Minorities and women are encour- The Department of Computer Science at The Uni-
aged to apply. USC is responsive to the needs of dual versity of Texas at San Antonio (UTSA) invites ap-
University of South Carolina career couples. plications for two tenured/tenure-track positions,
Multiple Open-Rank, Tenured starting in Fall 2018. The first position is for a
or Tenure-Track Faculty Positions tenure-track Assistant or tenured/tenure-track
University of South Carolina Lancaster Associate Professor in Game-related areas. The
The College of Engineering and Computing at the Assistant Professor or Instructor focus is on Computer Graphics, especially 3D ani-
University of South Carolina is in the process of of Computer Science mation, 3D modeling, and real-time rendering;
expanding its tenured and tenure-track ranks by and/or Human Computer Interaction, especially
over 40 faculty members. As part of this growth, The University of South Carolina Lancaster, a Pal- human computer interfaces, virtual reality, aug-
the Department of Computer Science and Engi- metto College campus of the University of South mented reality, and game analytics. The second
neering (http://cse.sc.edu) seeks dynamic new Carolina located approximately thirty-five (35) position is for a tenured/tenure-track Associate
tenured and tenure-track faculty members (at all miles south of Charlotte, NC seeks candidates for Professor in Data Science and Artificial Intel-
ranks) for Fall 2018. Applicants should possess a a faculty position in Computer Science beginning ligence, focusing on cyber security, Internet of
Ph.D. degree in computer science, computer en- August 16, 2018. things, bioinformatics, natural language process-
gineering, or a closely-related field, and a demon- Applicants who hold the Ph.D. in Computer ing, speech recognition, language understand-
strated record of research accomplishments. The Science including credentials necessary for de- ing, computer vision, or machine learning. This
successful candidate will be expected to develop partmental approval to teach introductory com- position is part of UTSAs focused cluster hiring
internationally-recognized, externally-funded puter science courses, as well as upper-division plan under the Gold Star Initiative to recruit top-
research programs that complement existing de- computer science courses as needed may be tier researchers over a four-year period.
partmental strengths. We also desire candidates considered for a tenure-track appointment at See http://www.cs.utsa.edu/fsearch for infor-
whose expertise aligns with vital cross-cutting the rank of Assistant Professor. An Assistant Pro- mation on the Department and application in-
initiatives identified by the College. For details fessor will normally teach twelve credit hours structions. Screening of applications will begin
on these initiatives, please visit: http://cec.sc.edu/ per semester or its equivalent, including eve- immediately. The search will continue until the
employment. ning and distributed learning courses through positions are filled or the search is closed.
In alignment with these initiatives, research Palmetto College as needed, as well as a commit- The University of Texas at San Antonio is an
themes of particular interest to the Department ment to scholarship and university/community Affirmative Action/Equal Opportunity Employer.
are those related to Smart & Connected Commu- service. Department of Computer Science
nities, Transformational Computing, Healthcare Applicants who hold a Master of Science or RE: Faculty Search
Transformation, and Smart & Agile Manufac- other appropriate degree in computer science or The University of Texas at San Antonio
turing. Areas of special interest include: smart a related field, including credentials necessary One UTSA Circle
technologies, deep learning, adaptive & resilient for departmental approval to teach introductory San Antonio, TX 78249-0667
cybersecurity, computational science methods, computer science courses, as well as upper-divi- Phone: 210-458-4436
challenges
[ C ONTI N U E D FRO M P. 112]
interdisciplinary education presents.
I think the solution is not to say, You have to assume
we need to teach everybody every- that computer
thing. It simply isnt going to work.
Instead, I sometimes say that were science will continue Distinguished
trying to educate people who will be to grow and Speakers Program
T-shaped, so theyll have depth in a
fieldthats the vertical bar of the T. transform, and so,
But theyll also be able to engage with you have to be willing http://dsp.acm.org
other people, perhaps to learn some
part of a new vocabulary from other to learn new things.
fields, so at least the conversation will
be on common ground.
These days, its difficult enough to keep whatever theyre going to do will make a
up with all the changes in a single field, positive contribution and why its wor-
let alone across multiple disciplines. thy of their philanthropic attention. So
Certainly now, in the field of com- we spend a lot of time thinking about
puting, you have to. When I was a how to shape a vision for the university,
graduate student, I felt like I could go what we could do, why it would be dis-
to anybodys job interview talk or thesis tinctive, and why it would make a dif-
defense and understand what was go- ference. Once you shape that vision, its
ing on. But the field has grown so much a lot easier to talk to people about how Students and faculty
now that its hard for a systems person they might support it personally.
to understand a thesis in theory, or for can take advantage of
an AI person to understand a systems What do you make of the debate that
thesis. You have to assume that com- the Knight-Hennessy program inadver- ACMs Distinguished
puter science will continue to grow and tently sparked about funding institu-
transform, and so, you have to be will- tions that are already well endowed?
Speakers Program
ing to learn new things. I think theres two parts to it. One to invite renowned
is ensuring people believe youll be a
What made you inclined to get in- good steward. Most philanthropists thought leaders in
volved with the administrative side of I know have worked really hard to
academia? acquire the ability to give to a cause, academia, industry
Im probably the frog in the proverbi- and they want to know that youre go-
al pot of water, where you raise the tem- ing to be a good steward of their do-
and government
perature slowly and the frog doesnt re- nation. The other part is the vision. to deliver compelling
alize its being cooked until its too late. I found that its very compelling to
I think what I found is that Im just an people when you can actually say, and insightful talks
intellectually curious person. I enjoyed Youre contributing to the scholar-
talking to my colleagues in other fields ship of a deserving student who oth- on the most important
and finding out what was the cutting erwise couldnt afford to come to this
edge of thought in their field; what were institution.
topics in computing
the interesting questions they were try- I think the real challenge were fac- and IT today.
ing to focus on. When the chance came ing in the U.S. is that our public insti-
to become president, I jumped on that. tutions are suffering under cutbacks ACM covers the cost
in state funding. Philanthropy is going
Nowadays, most people assume that be- to have to fill in, so well need to ar- of transportation
ing the president of a major university ticulate a message to potential donors
is less about satisfying intellectual curi- so that they understand the need and
for the speaker
osity and more about raising money why its important. And then were go- to travel to your event.
which youve undoubtedly been good at. ing to have to develop compelling op-
In fact, more of my time and more of portunities, whether its hiring faculty
my staffs time is devoted to developing members in a key area or supporting
why we want to ask someone for money students on scholarship.
rather than actually doing the ask.
Most people who are philanthropic Leah Hoffmann is a technology writer based in Piermont, NY.
want to do something that has a good
social return. They want a vision of how 2017 ACM 0001-0782/17/12 $15.00
Q&A
Grooming the Leaders
of Tomorrow
Former Stanford University president John Hennessy is the academic
architect behind the Knight-Hennessy Scholars Program.
build a multidisciplinary community potential future scholars about the opportunity to improve the quality
of Stanford graduate students dedicat- program. Many, many students have of health while freeing up doctors to
ed to finding creative solutions to the indicated an interest, and were hoping spend more time on the human side
worlds greatest challenges. we can create a program that will make of helping their patients.
When we began to think about this a real contribution toward closing this
program, in late 2014, we saw a growing leadership void. You have been involved with a num-
disconnect between the kind of leader- ber of interdisciplinary initiatives
ship that is needed to address the re- You also have returned to teaching. throughout your presidency. Lets talk
ally big problemswhether its climate Im teaching a freshman seminar about some of the intellectual and
change or social inequality or how in- thats called Great Discoveries and pedagogical [C O NTINUED O N P. 111]
M
Association for
Computing Machinery
&C
2 Penn Plaza, Suite 701
New York, NY 10121-0701, USA
Phone: +1-212-626-0658
Email: acmbooks-info@acm.org
M
Morgan & Claypool
Publishers
&C
1210 Fifth Avenue, Suite 250
San Rafael, CA 94901, USA
Phone: +1-415-462-0004
Email: info@morganclaypool.com
The Art, Science, and Engineering of Programming
Programming
2018 April 912, 2018 Nice, France
The International Conference on the Art, Science, and Engineering
of Programming is a new conference focused on everything to do
with programming, including the experience of programming.
We call it Programming for short. Programming 2018 is the
second edition of the conference. Papers are welcome from any
part of the programming research lifecycle, as are papers on
programming practice and experience.
The Art, Science, and Engineering of Programming Journal accepts
scholarly papers including essays that advance knowledge of
programming. Anything about programming is in scope, if the
relevance to the act and experience of programming is clearly
stated. Accepted journal papers must be presented at the conference.