Sign In

Communications of the ACM

Latest Practice



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.

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.

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.

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.

Velocity in Software Engineering
From Communications of the ACM

Velocity in Software Engineering

From tectonic plate to F-16.

Research for Practice: The DevOps Phenomenon
From Communications of the ACM

Research for Practice: The DevOps Phenomenon

An executive crash course.

Garbage Collection as a Joint Venture
From Communications of the ACM

Garbage Collection as a Joint Venture

A collaborative approach to reclaiming memory in heterogeneous software systems.

Net Neutrality
From Communications of the ACM

Net Neutrality: Unexpected Solution to Blockchain Scaling

Cloud-delivery networks could dramatically improve blockchains' scalability, but clouds must be provably neutral first.

Identity by Any Other Name
From Communications of the ACM

Identity by Any Other Name

The complex cacophony of intertwined systems.

CodeFlow
From Communications of the ACM

CodeFlow: Improving the Code Review Process at Microsoft

A discussion with Jacek Czerwonka, Michaela Greiler, Christian Bird, Lucas Panjer, and Terry Coatta

Using Remote Cache Service for Bazel
From Communications of the ACM

Using Remote Cache Service for Bazel

Save time by sharing and reusing build and test output.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account