acm-header
Sign In

Communications of the ACM

Latest Practice



Disks from the Perspective of a File System
From Communications of the ACM

Disks from the Perspective of a File System

Disks lie. And the controllers that run them are partners in crime.

Toward Higher Precision
From Communications of the ACM

Toward Higher Precision

An introduction to PTP and its significance to NTP practitioners.

Fault Injection in Production
From Communications of the ACM

Fault Injection in Production

Making the case for resilience testing.

All Your Database Are Belong To Us
From Communications of the ACM

All Your Database Are Belong To Us

In the big open world of the cloud, highly available distributed objects will rule.

A Guided Tour of Data-Center Networking
From Communications of the ACM

A Guided Tour of Data-Center Networking

A good user experience depends on predictable performance within the data-center network.

Modeling People and Places with Internet Photo Collections
From Communications of the ACM

Modeling People and Places with Internet Photo Collections

Understanding the world from the sea of online photos.

Your Mouse Is a Database
From Communications of the ACM

Your Mouse Is a Database

Web and mobile applications are increasingly composed of asynchronous and real-time streaming services and push notifications.

Interactive Dynamics For Visual Analysis
From Communications of the ACM

Interactive Dynamics For Visual Analysis

A taxonomy of tools that support the fluent and flexible use of visualizations.

CPU DB: Recording Microprocessor History
From Communications of the ACM

CPU DB: Recording Microprocessor History

With the open CPU DB database, you can mine microprocessor trends over the past 40 years.

SAGE: Whitebox Fuzzing For Security Testing
From Communications of the ACM

SAGE: Whitebox Fuzzing For Security Testing

SAGE has had a remarkable impact at Microsoft.

The Hyperdimensional Tar Pit
From Communications of the ACM

The Hyperdimensional Tar Pit

Make a guess, double the number, and then move to the next larger unit of time.

You Don't Know Jack About Shared Variables or Memory Models
From Communications of the ACM

You Don't Know Jack About Shared Variables or Memory Models

Data races are evil.

Advances and Challenges in Log Analysis
From Communications of the ACM

Advances and Challenges in Log Analysis

Logs contain a wealth of information to help manage systems.

How Will Astronomy Archives Survive the Data Tsunami?
From Communications of the ACM

How Will Astronomy Archives Survive the Data Tsunami?

Astronomers are collecting more data than ever. What practices can keep them ahead of the flood?

Abstraction in Hardware System Design
From Communications of the ACM

Abstraction in Hardware System Design

Applying lessons from software languages to hardware languages using Bluespec SystemVerilog.

ACM CTO Roundtable on Mobile Devices in the Enterprise
From Communications of the ACM

ACM CTO Roundtable on Mobile Devices in the Enterprise

Finding solutions as growth and fragmentation complicate mobile device support.

The Most Expensive One-Byte Mistake
From Communications of the ACM

The Most Expensive One-Byte Mistake

Did Ken, Dennis, and Brian choose wrong with NUL-terminated text strings?

Arrogance in Business Planning
From Communications of the ACM

Arrogance in Business Planning

Technology business plans that assume no competition — ever.

The Robustness Principle Reconsidered
From Communications of the ACM

The Robustness Principle Reconsidered

In 1981, Jon Postel formulated the Robustness Principle. Although described for implementations of TCP, it was quickly accepted as a...

Computing Without Processors
From Communications of the ACM

Computing Without Processors

Heterogeneous systems allow us to target our programming to the appropriate environment.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account