acm-header
Sign In

Communications of the ACM

Latest Practice



Disambiguating Databases
From Communications of the ACM

Disambiguating Databases

Use the database built for your access model.

The Responsive Enterprise
From Communications of the ACM

The Responsive Enterprise: Embracing the Hacker Way

Soon every company will be a software company.

No Such Thing as a General-Purpose Processor
From Communications of the ACM

No Such Thing as a General-Purpose Processor

And the belief in such a device is harmful.

A Decade of Progress in Parallel Programming Productivity
From Communications of the ACM

A Decade of Progress in Parallel Programming Productivity

Looking at the design and benefits of X10.

JavaScript and the Netflix User Interface
From Communications of the ACM

JavaScript and the Netflix User Interface

Conditional dependency resolution.

Security Collapse in the HTTPS Market
From Communications of the ACM

Security Collapse in the HTTPS Market

Assessing legal and technical solutions to secure HTTPS.

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.

Who Must You Trust?
From Communications of the ACM

Who Must You Trust?

You must have some trust if you want to get anything done.

Automated QA Testing at Electronic Arts
From Communications of the ACM

Automated QA Testing at Electronic Arts

A discussion with Michael Donat, Jafar Husain, and Terry Coatta

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.

Domain-Specific Languages and Code Synthesis Using Haskell
From Communications of the ACM

Domain-Specific Languages and Code Synthesis Using Haskell

Looking at embedded DSLs.

The Curse of the Excluded Middle
From Communications of the ACM

The Curse of the Excluded Middle

"Mostly functional" programming does not work.

Design Exploration Through Code-Generating DSLs
From Communications of the ACM

Design Exploration Through Code-Generating DSLs

High-level DSLs for low-level programming.

The NSA and Snowden
From Communications of the ACM

The NSA and Snowden: Securing the All-Seeing Eye

How good security at the NSA could have stopped him.

A Primer on Provenance
From Communications of the ACM

A Primer on Provenance

Better understanding data requires tracking its history and context.

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.

Major-League SEMAT
From Communications of the ACM

Major-League SEMAT: Why Should an Executive Care?

Becoming better, faster, cheaper, and happier.

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