As my tenure as ACM president ends, I find myself reflecting on the past two years.
Alexander L. Wolf
There is a rhythm in the affairs of the Association for Computing Machinery and June marks our annual celebration of award recipients and the biennial election of new officers.
Vinton G. Cerf
DEPARTMENT: Letters to the Editor
I was disappointed by Eugene H. Spafford's "The Strength of Encryption" (Mar. 2016) which conflated law enforcement requests for access to the contents of specific smartphones with the prospect of the government requiring backdoors …
John Langford on AlphaGo, Bertrand Meyer on Research as Research, and Mark Guzdial on correlating CS classes with laboratory results.
John Langford, Bertrand Meyer, Mark Guzdial
40 years ago, Whitfield Diffie and Martin E. Hellman introduced the public key cryptography used to secure today's online transactions.
Big data is touted as a cure-all for challenges in business, government, and healthcare, but as disease outbreak predictions show, big data often fails.
Search engine developers are moving beyond the problem of document analysis, toward the elusive goal of figuring out what people really want.
New computational tools spur advances in an evolving field.
COLUMN: Inside risks
Unforeseen problems can result from the absence of impartial independent evaluations.
Rebecca T. Mercuri, Peter G. Neumann
COLUMN: Kode Vicious
A single cache miss is more expensive than many instructions.
George V. Neville-Neil
COLUMN: The profession of IT
Making innovations happen is surprisingly easy, satisfying, and rewarding if you start small and build up.
Peter J. Denning
ACM Fellow Professor Yale Patt reflects on his career in industry and academia.
Seeking to improve computer science publication culture while retaining the best aspects of the conference and journal publication processes.
Protecting social norms as confidentiality wanes.
Jean-Pierre Hubaux, Ari Juels
A teenager explores ways to attract girls into the magical world of computer science.
Many of the skills aren't technical at all.
This visualization of software execution is a new necessity for performance profiling and debugging.
Farsighted physicists of yore were danged smart!
SECTION: Contributed articles
Human-centered design can make application programming interfaces easier for developers to use.
Brad A. Myers, Jeffrey Stylos
Computers broadcast their secrets via inadvertent physical emanations that are easily measured and exploited.
Daniel Genkin, Lev Pachmanov, Itamar Pipman, Adi Shamir, Eran Tromer
SECTION: Review articles
Randomization offers new benefits for large-scale linear algebra computations.
Petros Drineas, Michael W. Mahoney
SECTION: Research highlights
"Enhancing Symbolic Execution with Veritesting" by Avgerinos et al. proposes an effective technique called veritesting that addresses the scalability limitations of path merging in symbolic execution.
In this article, we present a new technique for generating formulas called veritesting that alternates between static symbolic execution (SSE) and dynamic symbolic execution (DSE).
Thanassis Avgerinos, Alexandre Rebert, Sang Kil Cha, David Brumley
What kinds of problems can be solved with combined human and machine computation? "AutoMan: A Platform for Integrating Human-Based and Digital Computation," by Barowy et al., provides the first steps toward answering this question …
We introduce AutoMan, the first fully automatic crowdprogramming system.
Daniel W. Barowy, Charlie Curtsinger, Emery D. Berger, Andrew McGregor
COLUMN: Last byte
Whitfield Diffie and Martin Hellman on their meeting, their research, and the results that billions use every day.