Giving Students the Competitive Edge
The annual ACM International Collegiate Programming Contest (ICPC) shines the spotlight on the next generation of problem solvers...
Composable Trees for Configurable Behavior
I concur wholeheartedly with the composability benefits outlined in "Why LINQ Matters: Cloud Composability Guaranteed" (Apr....
Machine Learning and Algorithms; Agile Development
John Langford, Ruben Ortega
John Langford poses questions about the direction of research for machine learning and algorithms. Ruben Ortega shares lessons...
With the help of supercomputers, scientists are now able to create models of large-scale astronomical events.
DARPA Shredder Challenge Solved
The eight-person winning team used original computer algorithms to narrow the search space and then relied on human observation...
Advertising Gets Personal
Online behavioral advertising and sophisticated data aggregation have changed the face of advertising and put privacy in the...
Karen A. Frenkel
ACM's Committee for Women in Computing (ACM-W) is widening its reach to involve women in industry as well as academia, including...
Inside the Hermit Kingdom: IT and Outsourcing in North Korea
North Korea has a sizeable IT sector. Some 10,000 professionals work in the field, and many more have IT degrees. They are already...
Will Massive Open Online Courses Change How We Teach?
Fred G. Martin
Sharing recent experiences with the massive open artificial intelligence course developed and conducted by Stanford faculty Sebastian...
The Politics of 'Real Names'
Power, context, and control in networked publics.
A System Is Not a Product
George V. Neville-Neil
Stopping to smell the code before wasting time reentering configuration data.
The Internet Is Everywhere, but the Payoff Is Not
Chris Forman, Avi Goldfarb, Shane Greenstein
Examining the uneven patterns of Internet economics.
Internet Elections: Unsafe in Any Home?
Kai A. Olsen, Hans Fredrik Nordhaug
Experiences with electronic voting suggest elections should not be conducted via the Internet.
The Ethics of Software Engineering Should be an Ethics for the Client
Viewing software engineering as a communicative art in which client engagement is essential.
OpenFlow: A Radical New Idea in Networking
Thomas A. Limoncelli
An open standard that enables software-defined networking.
Extending the Semantics of Scheduling Priorities
Rafael Vanoni Polanczyk
Increasing parallelism demands new paradigms.
Multitier Programming in Hop
Manuel Serrano, Gérard Berry
A first step toward programming 21st-century applications.
The Loss of Location Privacy in the Cellular Age
Stephen B. Wicker
How to have the best of location-based services while avoiding the growing threat to personal privacy.
To Be or Not To Be Cited in Computer Science
Bjorn De Sutter, Aäron Van Den Oord
Traditional bias toward journals in citation databases diminishes the perceived value of conference papers and their authors.
Wil Van Der Aalst
Using real event data to X-ray business processes helps ensure conformance between design and reality.
Scott Aaronson, Edward Farhi, David Gosset, Avinatan Hassidim, Jonathan Kelner, Andrew Lutomirski
Imagine money you can carry and spend without a trace.
Technical Perspective: Example-Driven Program Synthesis for End-User Programming
Martin C. Rinard
As information technology has come to permeate our society, broader classes of users have developed the need for more sophisticated...
Spreadsheet Data Manipulation Using Examples
Sumit Gulwani, William R. Harris, Rishabh Singh
Millions of computer end users need to perform tasks over large spreadsheet data, yet lack the programming knowledge to do such...
Technical Perspective: Proving Programs Continuous
Proving a program's correctness is usually an all-or-nothing game.
Continuity and Robustness of Programs
Swarat Chaudhuri, Sumit Gulwani, Roberto Lublinerman
Computer scientists have long believed that software is different from physical systems in one fundamental way: while the latter...
Puzzled: Find the Magic Set
Welcome to three new puzzles. Each involves a collection of items, and your job is to find a subset of them that is characterized...