acm-header
Sign In

Communications of the ACM

Latest Practice



The Software Industry Is <i>Still</i> the Problem
From Communications of the ACM

The Software Industry Is Still the Problem

The time is (also) way overdue for IT professional liability.

Lamboozling Attackers
From Communications of the ACM

Lamboozling Attackers: A New Generation of Deception

Software engineering teams can exploit attackers' human nature by building deception environments.

It Takes a Community
From Communications of the ACM

It Takes a Community: The Open Source Challenge

A discussion with Reynold Xin, Wes McKinney, Alan Gates, and Chris McCubbin.

Meaning and Context in Computer Programs
From Communications of the ACM

Meaning and Context in Computer Programs

Sharing domain knowledge among programmers using the source code as the medium.

A Conversation with Margo Seltzer and Mike Olson
From Communications of the ACM

A Conversation with Margo Seltzer and Mike Olson

The history of Berkeley DB.

Declarative Machine Learning Systems
From Communications of the ACM

Declarative Machine Learning Systems

The future of machine learning will depend on it being in the hands of the rest of us.

Static Analysis
From Communications of the ACM

Static Analysis

The fundamental challenge of software engineering is one of complexity.

What Went Wrong?
From Communications of the ACM

What Went Wrong?

Why we need an IT accident investigation board.

Software Development in Disruptive Times
From Communications of the ACM

Software Development in Disruptive Times

Creating a software solution with fast decision capability, agile project management, and extreme low-code technology.

Application Frameworks
From Communications of the ACM

Application Frameworks

While powerful, frameworks are not for everyone.

A Second Conversation with Werner Vogels
From Communications of the ACM

A Second Conversation with Werner Vogels

The Amazon CTO sits with Tom Killalea to discuss designing for evolution at scale.

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.

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.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account