acm-header
Sign In

Communications of the ACM

Latest Practice



Differential Privacy
From Communications of the ACM

Differential Privacy: The Pursuit of Protections by Default

A discussion with Miguel Guevara, Damien Desfontaines, Jim Waldo, and Terry Coatta

The Time I Stole $10,000 from Bell Labs
From Communications of the ACM

The Time I Stole $10,000 from Bell Labs

Why DevOps encourages us to celebrate outages.

The Life of a Data Byte
From Communications of the ACM

The Life of a Data Byte

Be kind and rewind.

Data on the Outside versus Data on the Inside
From Communications of the ACM

Data on the Outside versus Data on the Inside

Data kept outside SQL has different characteristics from data kept inside.

Debugging Incidents in Google's Distributed Systems
From Communications of the ACM

Debugging Incidents in Google's Distributed Systems

How experts debug production issues in complex distributed systems.

Dark Patterns
From Communications of the ACM

Dark Patterns: Past, Present, and Future

The evolution of tricky user interfaces.

Is Persistent Memory Persistent?
From Communications of the ACM

Is Persistent Memory Persistent?

A simple and inexpensive test of failure-atomic update mechanisms.

To Catch a Failure
From Communications of the ACM

To Catch a Failure: The Record-and-Replay Approach to Debugging

A discussion with Robert O'Callahan, Kyle Huey, Devon O'Dell, and Terry Coatta.

The Best Place to Build a Subway
From Communications of the ACM

The Best Place to Build a Subway

Building projects despite (and because of) existing complex systems.

Beyond the 'Fix-It' Treadmill
From Communications of the ACM

Beyond the 'Fix-It' Treadmill

The use of post-incident artifacts in high-performing organizations.

Revealing the Critical Role of Human Performance in Software
From Communications of the ACM

Revealing the Critical Role of Human Performance in Software

It's time to appreciate the human side of Internet-facing software systems.

Above the Line, Below the Line
From Communications of the ACM

Above the Line, Below the Line

The resilience of Internet-facing systems relies on what is above the line of representation.

Optimizations in C++ Compilers
From Communications of the ACM

Optimizations in C++ Compilers

A practical journey.

The Reliability of Enterprise Applications
From Communications of the ACM

The Reliability of Enterprise Applications

Understanding enterprise reliability.

Blockchain Technology
From Communications of the ACM

Blockchain Technology: What Is It Good For?

Industry's dreams and fears for this new technology.

Space Time Discontinuum
From Communications of the ACM

Space Time Discontinuum

Combining data from many sources may cause painful delays.

Write Amplification vs. Read Perspiration
From Communications of the ACM

Write Amplification vs. Read Perspiration

The trade-offs between write and read.

Open Source Firmware
From Communications of the ACM

Open Source Firmware

Step into the world behind the kernel.

Demo Data as Code
From Communications of the ACM

Demo Data as Code

Automation helps collaboration.

Surviving Software Dependencies
From Communications of the ACM

Surviving Software Dependencies

Software reuse is finally here but comes with risks.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account