acm-header
Sign In

Communications of the ACM

Latest Practice



Computing Without Processors
From Communications of the ACM

Computing Without Processors

Heterogeneous systems allow us to target our programming to the appropriate environment.

The Pain of Implementing LINQ Providers
From Communications of the ACM

The Pain of Implementing LINQ Providers

It's no easy task for NoSQL.

Passing a Language Through the Eye of a Needle
From Communications of the ACM

Passing a Language Through the Eye of a Needle

How the embeddability of Lua impacted its design.

DSL For the Uninitiated
From Communications of the ACM

DSL For the Uninitiated

Domain-specific languages bridge the semantic gap in programming.

Microsoft's Protocol Documentation Program
From Communications of the ACM

Microsoft's Protocol Documentation Program: Interoperability Testing at Scale

A discussion with Nico Kicillof, Wolfgang Grieskamp, and Bob Binder.

If You Have Too Much Data, Then 'Good Enough' Is Good Enough
From Communications of the ACM

If You Have Too Much Data, Then 'Good Enough' Is Good Enough

In today's humongous database systems, clarity may be relaxed, but business needs can still be met.

Scalable SQL
From Communications of the ACM

Scalable SQL

How do large-scale sites and applications remain SQL-based?

The One-Second War
From Communications of the ACM

The One-Second War

Finding a lasting solution to the leap seconds problem has become increasingly urgent.

Mobile Application Development
From Communications of the ACM

Mobile Application Development: Web vs. Native

Web apps are cheaper to develop and deploy than native apps, but can they match the native user experience?

Weapons of Mass Assignment
From Communications of the ACM

Weapons of Mass Assignment

A Ruby on Rails app highlights some serious, yet easily avoided, security vulnerabilities.

A Co-Relational Model of Data For Large Shared Data Banks
From Communications of the ACM

A Co-Relational Model of Data For Large Shared Data Banks

Contrary to popular belief, SQL and noSQL are really just two sides of the same coin.

Returning Control to the Programmer: SIMD Intrinsics For Virtual Machines
From Communications of the ACM

Returning Control to the Programmer: SIMD Intrinsics For Virtual Machines

Exposing SIMD units within interpreted languages could simplify programs and unleash floods of untapped processor power.

B.Y.O.C (1,342 Times and Counting)
From Communications of the ACM

B.Y.O.C (1,342 Times and Counting)

Why can't we all use standard libraries for commonly needed algorithms?

Testable System Administration
From Communications of the ACM

Testable System Administration

As we progress into an information age, humans will need to work less like the machines they use and embrace...

Finding Usability Bugs with Automated Tests
From Communications of the ACM

Finding Usability Bugs with Automated Tests

Ideally, all software should be easy to use and accessible for a wide range of people. However, software often falls short of these basic goals. We therefore need...

Virtualization: Blessing or Curse?
From Communications of the ACM

Virtualization: Blessing or Curse?

Managing virtualization at a large scale is fraught with hidden challenges.

UX Design and Agile: A Natural Fit?
From Communications of the ACM

UX Design and Agile: A Natural Fit?

Talking with Julian Gosper, Jean-Luc Agathos, Richard Rutter, and Terry Coatta.

Keeping Bits Safe: How Hard Can It Be?
From Communications of the ACM

Keeping Bits Safe: How Hard Can It Be?

As storage systems grow larger and larger, protecting their data for long-term storage is becoming ever more challenging.

The Case Against Data Lock-In
From Communications of the ACM

The Case Against Data Lock-In

Want to keep your users? Just make it easy for them to leave.

Tackling Architectural Complexity with Modeling
From Communications of the ACM

Tackling Architectural Complexity with Modeling

Component models can help diagnose architectural problems in both new and existing systems.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account