Sign In

Communications of the ACM

Table of Contents


In the two years since we launched the revitalized Communications of the ACM, I have received hundreds of email messages from readers. The feedback has been mostly, but …
DEPARTMENT: Letters to the editor

Don't Ignore Security Offshore, or in the Cloud

Moshe Y. Vardi's Editor's Letter "Globalization and Offshoring of Software Revisited" and Dave Durkee's "Why Cloud Computing Will Never Be Free" (both May 2010) failed to …

In the Virtual Extension

Communications' Virtual Extension brings more quality articles to ACM members. These seven articles are now available in the ACM Digital Library.

Software Development and Crunch Time; and More

For software developers, crunch time is a period prior to a major product milestone when team members are asked to put in extra effort to get a product finished by a specific …

In Case You Missed It

The most popular content on Communications' site is something many readers know nothing about.

Sharing Computational Perspectives

Computer scientists are now making intellectual contributions to a wide range of other disciplines, including evolutionary theory, physics, and economics.


Countries use Internet censorship to dominate the political dialogue, but also to create favorable conditions for government-controlled businesses.

Mainstreaming Augmented Reality

Advancements in computer vision, object recognition, and related technologies are leading to new levels of sophistication in augmented-reality applications and presenting new ways for humans to relate to the natural world.

Committed to Success

Charles P. Thacker talks about the importance of simplicity, reusable tools, thinking broadly, and his practice of Tom Sawyering.

Eric Brewer: Change Agent

Eric Brewer's latest project involves designing and deploying low-cost wireless infrastructure in developing regions.

Visions of the Future

ACM joined forces with the British Computer Society to deliver its first academic research conference in Europe.
COLUMN: Technology strategy and management

Outsourcing Versus Shared Services

Choosing between outsourcing and shared services has significant implications for long-term corporate strategy.
COLUMN: Computing ethics

Work Life in the Robotic Age

Technological change results in changes in expectations, in this case affecting the workplace.
COLUMN: Legally speaking

Should the Google Book Settlement Be Approved?

Considering the precedent that could be established by approval of the controversial Google book settlement.
COLUMN: Broadening participation

Cultivating Cultural Diversity in Information Technology

Introducing CMD-IT, a new center focused on synergistic activities related to ethnic minorities and people with disabilities.
COLUMN: Viewpoint

Is Computer Science Truly Scientific?

Reflections on the (experimental) scientific method in computer science.
COLUMN: Distinguished members

Advice to Members Seeking ACM Distinction

ACM's Distinguished Member Recognition Program recognizes members in three categories: Educator, Engineer, and Scientist. Each category comes with a unique set of criteria.
SECTION: Practice

The Ideal HPC Programming Language

Maybe it's Fortran. Or maybe it just doesn't matter.

Visualizing System Latency

Heat maps are a unique and powerful way to visualize latency data. Explaining the results, however, is an ongoing challenge.

You're Doing It Wrong

Think you've mastered the art of server performance? Think again.
SECTION: Contributed articles

Commonsense Understanding of Concurrency: Computing Students and Concert Tickets

Innate understanding of concurrency helps beginners solve CS problems with multiple processes executing at the same time.

Computer Graphics For All

Interactive computer graphics would rival word-processing and presentation programs for everyday communications.
SECTION: Review articles

Algorithmic Game Theory

A new era of theoretical computer science addresses fundamental problems about auctions, networks, and human behavior.
SECTION: Research highlights

Technical Perspective: A Solid Foundation For X86 Shared Memory

Multithreaded programs that communicate through shared memory are pervasive. Today they are the most obvious route to using multiple available processor cores …

X86-TSO: A Rigorous and Usable Programmer's Model For X86 Multiprocessors

Exploiting the multiprocessors that have recently become ubiquitous requires high-performance and reliable concurrent systems code. However, concurrent programming, which is always challenging, is made much more so by two problems …

Technical Perspective: Technology Scaling Redirects Main Memories

As predicted by Intel's Gordon Moore in 1965, the number of transistors that can be integrated on one die continues to double approximately every two years. Amazing to some …

Phase Change Memory Architecture and the Quest For Scalability

Memory scaling is in jeopardy as charge storage and sensing mechanisms become less reliable for prevalent memory technologies. In contrast, phase change memory relies on programmable resistances, as well as scalable current and …
COLUMN: Last byte

Q&A: From Single Core to Multicore

Charles P. Thacker discusses the legendary Alto personal computer, the invention of the Ethernet, and his current research on multicore architectures.
SECTION: Virtual extension

Application Service Providers: Market and Adoption Decisions

A relatively new form of IS outsourcing, Application Services Provision (ASP), provides applications to multiple entities from its data center across a wide area network.

ERP: Drilling For Profit in the Oil and Gas Industry

Most large companies have adopted some form of enterprise resource planning (ERP) system. While the potential benefits of ERP have been extolled frequently, only limited evidence states that implementation of ERP does, on average …

Creating the Experience Economy in E-Commerce

The growing commoditisation of services has transformed the competition for market share from focusing on the quality of services to the creation of memorable experiences. The economic value of the experience economy lies in …

Why Do People Tag? Motivations For Photo Tagging

Tagging is gaining much popularity in recent years. Studies have suggested several factors that motivate user tagging. However, to date no quantitative study has assessed the strength of the effects of each motivation on levels …

How Distributed Data Mining Tasks Can Thrive as Knowledge Services

Computer science applications are becoming more network centric, ubiquitous, knowledge intensive, and computing demanding. This will result in an ecosystem of pervasive applications and services that professionals and end-users …

IT Programs in High Schools: Lessons from the Cisco Networking Academy Program

Student enrollment in college computer science and information technology programs are in a downward trend in most developed countries. This article examines the Cisco Networking Academy to understand what lessons we can draw …

Using ESI Discovery Teams to Manage Electronic Data Discovery

The importance of electronically stored information (ESI) in litigation has increased greatly over the past decade. Managing discovery of electronic information requires close coordination among managers with widely diverse technical …