Sign In

Communications of the ACM

Latest Practice



The Flame Graph
From Communications of the ACM

The Flame Graph

This visualization of software execution is a new necessity for performance profiling and debugging.

Why Logical Clocks Are Easy
From Communications of the ACM

Why Logical Clocks Are Easy

Sometimes all you need is the right language.

The Verification of a Distributed System
From Communications of the ACM

The Verification of a Distributed System

A practitioner's guide to increasing confidence in system correctness.

How to De-Identify Your Data
From Communications of the ACM

How to De-Identify Your Data

Balancing statistical accuracy and subject privacy in large social-science datasets.

Challenges of Memory Management on Modern NUMA Systems
From Communications of the ACM

Challenges of Memory Management on Modern NUMA Systems

Optimizing NUMA systems applications with Carrefour.

Fail at Scale
From Communications of the ACM

Fail at Scale

Reliability in the face of rapid change

Testing Web Applications with State Objects
From Communications of the ACM

Testing Web Applications with State Objects

Use states to drive your tests.

Go Static or Go Home
From Communications of the ACM

Go Static or Go Home

In the end, dynamic systems are simply less secure.

JavaScript and the Netflix User Interface
From Communications of the ACM

JavaScript and the Netflix User Interface

Conditional dependency resolution.

Bringing Arbitrary Compute to Authoritative Data
From Communications of the ACM

Bringing Arbitrary Compute to Authoritative Data

Many disparate use cases can be satisfied with a single storage system.

Undergraduate Software Engineering
From Communications of the ACM

Undergraduate Software Engineering

Addressing the needs of professional software development.

Finding More Than One Worm in the Apple
From Communications of the ACM

Finding More Than One Worm in the Apple

If you see something, say something.

Don't Settle for Eventual Consistency
From Communications of the ACM

Don't Settle for Eventual Consistency

Stronger properties for low-latency geo-replicated storage.

Scaling Existing Lock-based Applications with Lock Elision
From Communications of the ACM

Scaling Existing Lock-based Applications with Lock Elision

Enabling existing lock-based programs to achieve performance benefits of nonblocking synchronization.

Eventually Consistent
From Communications of the ACM

Eventually Consistent: Not What You Were Expecting?

Methods of quantifying consistency (or lack thereof) in eventually consistent storage systems.

Provenance in Sensor Data Management
From Communications of the ACM

Provenance in Sensor Data Management

A cohesive, independent solution for bringing provenance to scientific research.

The Software Inferno
From Communications of the ACM

The Software Inferno

Dante's tale, as experienced by a software architect.

Toward Software-Defined SLAs
From Communications of the ACM

Toward Software-Defined SLAs

Enterprise computing in the public cloud.

Barbarians at the Gateways
From Communications of the ACM

Barbarians at the Gateways

A special section on high-frequency trading and exchange technology.

Online Algorithms in High-Frequency Trading
From Communications of the ACM

Online Algorithms in High-Frequency Trading

The challenges faced by competing HFT algorithms.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account
Read CACM in a free mobile app!
Access the latest issue, plus archived issues and more
ACM Logo
  • ACM CACM apps available for iPad, iPhone and iPod Touch, and Android platforms
  • ACM Digital Library apps available for iOS, Android, and Windows devices
  • Download an app and sign in to it with your ACM Web Account
Find the app for your mobile device
ACM DL Logo