Sign In

Communications of the ACM

Table of Contents


Computing and India

India has 1.2 billion individuals, of which about 400 million are in the 1–15 age group and another about 400 million in the 15–35 age group. India, therefore, has the …
DEPARTMENT: Letters to the editor

Why Concurrent Objects Are Recurrently Complicated

Nir Shavit's article "Data Structures in the Multicore Age" (Mar. 2011) was a thrill to read. I was especially intrigued by his exposition on concurrent objects. Also important …

In the Virtual Extension

To ensure the timely publication of articles, Communications created the Virtual Extension (VE) to expand the page limitations of the print edition by bringing readers the same high-quality articles in an online-only format. …
DEPARTMENT: BLOG@CACM

Simple Design; Research vs. Teaching; and Quest to Learn

Daniel Reed writes about design and disruptive technologies. Mark Guzdial discusses the tension between teaching and research at U.S. universities. Judy Robertson argues in favor of educational video games in the classroom.
DEPARTMENT: CACM online

Say It With Video

If you're one of the more than 1,000,000 scientists, practitioners, educators, or students who regularly read Communications of the ACM in print orvideo. …
COLUMN: News

Biology-Inspired Networking

Researchers have developed a new networking algorithm, modeled after the neurological development of the fruit fly, to help distributed networks self-organize more efficiently.

Beauty and Elegance

Leslie Valiant talks about machine learning; parallel computing, and his quest for simplicity.

The Promise of Flexible Displays

New screen materials could lead to portable devices that are anything but rectangular, flat, and unbendable.

Unlimited Possibilities

M. Frans Kaashoek discusses systems work, "undo computing," and what he learned from Andrew S. Tanenbaum.

All the News That's Fit for You

Personalized news promises to make daily journalism profitable again, but technical and cultural obstacles have slowed the industry's adoption of automated personalization.
COLUMN: Privacy and security

Identity Management and Privacy: A Rare Opportunity To Get It Right

The National Strategy for Trusted Identities in Cyberspace represents a shift in the way the U.S. government is approaching identity management, privacy, and the Internet.
COLUMN: The profession of IT

Who Are We – Now?

Considerable progress has been made toward the formation of a computing profession since we started tracking it in this column a decade ago.
COLUMN: The business of software

Practical Application of Theoretical Estimation

One of the most popular and successful approaches to estimating software projects is the Putnam model. Developed in the 1970s by Larry Putnam, Sr., this model shares with …
COLUMN: Inside risks

The Risks of Stopping Too Soon

Good software design is never easy, but stopping too soon makes the job more difficult.
COLUMN: Kode Vicious

Think Before You Fork

Kode Vicious's thoughts on forking, config files, and using internal wikis.
COLUMN: Viewpoint

Computer Science Can Use More Science

Software developers should use empirical methods to analyze their designs to predict how working systems will behave.
SECTION: Practice

If You Have Too Much Data, then 'Good Enough' Is Good Enough

In today's humongous database systems, clarity may be relaxed, but business needs can still be met.

Scalable SQL

How do large-scale sites and applications remain SQL-based?

Does Deterrence Work in Reducing Information Security Policy Abuse by Employees?

Methods for evaluating and effectively managing the security behavior of employees.
SECTION: Contributed articles

Advancing the State of Home Networking

Before building the network or its components, first understand the home and the behavior of its human inhabitants.

10 Rules for Scalable Performance in Simple Operation' Datastores

Partition data and operations, keep administration simple, do not assume one size fits all.

Specification and Verification: The Spec# Experience

Can a programming language really help programmers write better programs?
SECTION: Contributed articles: Virtual extension

Viscous Democracy for Social Networks

Decision-making procedures in online social networks should reflect participants' political influence within the network.

Wireless on the Precipice: The 14th Century Revisited

Business continuity plans for the wireless world must address solar activity.
SECTION: Review articles

PageRank: Standing on the Shoulders of Giants

The roots of Google's PageRank can be traced back to several early, and equally remarkable, ranking techniques.
SECTION: Research highlights

Technical Perspective: The Quest for a Logic for Polynomial-Time Computation

The interaction between computation and logic goes back to the beginnings of computer science with the development of computability theory in the 1930s. In recent decades, the interaction between computation …

From Polynomial Time Queries to Graph Structure Theory

We give a logical characterization of the polynomial-time properties of graphs with excluded minors.

Technical Perspective: Data Analysis at Astonishing Speed

The importance of data analysis has never been clearer. Globe-spanning scientific collaborations are exploring data-intensive questions at a scale …

Dremel: Interactive Analysis of Web-Scale Datasets

Dremel is a scalable, interactive ad hoc query system for analysis of read-only nested data. By combining multilevel execution trees and columnar data layout, it is capable of running aggregation queries over trillion-row tables …
COLUMN: Last byte

Puzzled: Solutions and Sources

Last month (May 2011, p. 120) we posted a trio of brainteasers, including one as yet unsolved, concerning games and their roles and turns, with randomness either removed or inserted. Here, we offer solutions to two of them. How …

Q&A: A Lifelong Learner

Leslie Valiant discusses machine learning, parallel computing, and computational neuroscience.