Solving the Unsolvable
On June 16, 1902, philosopher Bertrand Russell sent a letter to Gottlob Frege in which he argued that Frege's logical system was inconsistent. The letter launched a "Foundational Crisis" in mathematics, triggering an almost anguished …
Letters to the editor
Practical Research Yields Fundamental Insight, Too
Tim Wu's viewpoint "Bell Labs and Centralized Innovation" (May 2011) was inaccurate regarding a specific example of research at Bell Labs.
In the Virtual Extension
To ensure the timely publication of articles, Communications created the Virtual Extension which brings readers high-quality articles in an online-only format. The following articles are now available in their entirety to ACM …
Reviewing Peer Review
Jeannette M. Wing discusses peer review and its importance in terms of public trust. Ed H. Chi writes about alternatives, such as open peer commentary.
ACM Aggregates Publication Statistics in the ACM Digital Library
It is now possible to click on any author's name inside the ACM Digital Library and view a complete record of that author's publication history. Currently, over one million author pages exist in the …
Weighing Watson's Impact
Does IBM's Watson represent a distinct breakthrough in machine learning and natural language processing or is the 2,880-core wunderkind merely a solid feat of engineering?
Self-driving cars are inching closer to the assembly line, thanks to promising new projects from Google and the European Union.
Brave, New Social World
How three different individuals in three different countries — Brazil, Egypt, and Japan — use Facebook, Twitter, and other social-media tools.
ACM Award Recipients
Craig Gentry, Kurt Mehlhorn, and other computer scientists are honored for their research and service.
Technology strategy and management
Driving Power in Global Supply Chains
Supply chains are increasingly global. We pour energy into managing them efficiently, with their risks and rewards. Yet we do not know enough about how profits are …
Values in Design
Focusing on socio-technical design with values as a critical component in the design process.
Too Many Copyrights?
Reinstituting formalities — notice of copyright claims and registration requirements — could help address problems related to too many copyrights that last for too many years.
The Status of Women of Color in Computer Science
Addressing the challenges of increasing the number of women of color in computing and ensuring their success.
Non-Myths About Programming
Viewing computer science in a broader context to dispel common misperceptions and provide more accurate guidance to students who are deliberating its study.
Passing a Language Through the Eye of a Needle
How the embeddability of Lua impacted its design.
DSL For the Uninitiated
Domain-specific languages bridge the semantic gap in programming.
Microsoft's Protocol Documentation Program: Interoperability Testing at Scale
A discussion with Nico Kicillof, Wolfgang Grieskamp, and Bob Binder.
Algorithmic Composition: Computational Thinking in Music
The composer still composes but also gets to take a programming-enabled journey of musical discovery.
A Decade of Software Model Checking with SLAM
SLAM is a program-analysis engine used to check if clients of an API follow the API's stateful usage rules.
Searching For Jim Gray: A Technical Overview
The volunteer search for Jim Gray, lost at sea in 2007, highlights the challenges of computer-aided emergency response.
Contributed articles: Virtual extension
The Case For RAMCloud
With scalable high-performance storage entirely in DRAM, RAMCloud will enable a new breed of data-intensive applications.
Cellular Telephony and the Question of Privacy
A private overlay may ease concerns over surveillance tools supported by cellular networks.
Review articles: Virtual extension
Workload Management For Power Efficiency in Virtualized Data Centers
Power-aware dynamic application placement can address underutilization of servers as well as the rising energy costs in a data center.
Technical Perspective: FAWN: A Fast Array of Wimpy Nodes
The emergence of wimpy processors and FLASH met a promising deployment scenario in the field of large-scale data centers. The energy efficiency potential of these technologies could lower the costs of warehouse-scale computing …
FAWN: A Fast Array of Wimpy Nodes
This paper presents a fast array of wimpy nodes — FAWN — an approach for achieving low-power data-intensive data-center computing.
Technical Perspective: Is Scale Your Enemy, Or Is Scale Your Friend?
Scale has been the single most important force driving changes in system software over the last decade. Its impact is most obvious in the Web arena, however, it also impacts …
Debugging in the (Very) Large: Ten Years of Implementation and Experience
Windows Error Reporting (WER) is a distributed system that automates the processing of error reports coming from an installed base of a billion machines. WER has collected billions of error reports in 10 years of operation.
Future Tense: My Office Mate
I became a biocomputational zombie for science . . . and for love.