acm-header
Sign In

Communications of the ACM

Latest Practice



20 Obstacles to Scalability
From Communications of the ACM

20 Obstacles to Scalability

Watch out for these pitfalls that can prevent Web application scaling.

An Overview of Non-Uniform Memory Access
From Communications of the ACM

An Overview of Non-Uniform Memory Access

NUMA becomes more common because memory controllers get close to execution units on microprocessors.

The Antifragile Organization
From Communications of the ACM

The Antifragile Organization

Embracing failure to improve resilience and maximize availability.

Best Practices on the Move
From Communications of the ACM

Best Practices on the Move: Building Web Apps For Mobile Devices

Which practices should be modified or avoided altogether by developers for the mobile Web?

Rules For Mobile Performance Optimization
From Communications of the ACM

Rules For Mobile Performance Optimization

An overview of techniques to speed page loading.

Nonblocking Algorithms and Scalable Multicore Programming
From Communications of the ACM

Nonblocking Algorithms and Scalable Multicore Programming

Exploring an alternative to lock-based synchronization.

Proving the Correctness of Nonblocking Data Structures
From Communications of the ACM

Proving the Correctness of Nonblocking Data Structures

Nonblocking synchronization can yield astonishing results in terms of scalability and real-time response, but at the expense of verification state space.

There Is No Getting Around It
From Communications of the ACM

There Is No Getting Around It: You Are Building a Distributed System

Building a distributed system requires a methodical approach to requirements.

Resolved: The Internet Is No Place For Critical Infrastructure
From Communications of the ACM

Resolved: The Internet Is No Place For Critical Infrastructure

Risk is a necessary consequence of dependence.

Eventual Consistency Today
From Communications of the ACM

Eventual Consistency Today: Limitations, Extensions, and Beyond

How can applications be built on eventually consistent infrastructure given no guarantee of safety?

A File System All Its Own
From Communications of the ACM

A File System All Its Own

Flash memory has come a long way and it is time for software to catch up.

How Fast Is Your Website?
From Communications of the ACM

How Fast Is Your Website?

Website performance data has never been more readily available.

Hazy: Making It Easier to Build and Maintain Big-Data Analytics
From Communications of the ACM

Hazy: Making It Easier to Build and Maintain Big-Data Analytics

Racing to unleash the full potential of big data with the latest statistical and machine-learning techniques.

Making the Mobile Web Faster
From Communications of the ACM

Making the Mobile Web Faster

Mobile performance issues? Fix the back end, not just the client.

Rethinking Passwords
From Communications of the ACM

Rethinking Passwords

Our authentication system is lacking. Is improvement possible?

Thinking Methodically About Performance
From Communications of the ACM

Thinking Methodically About Performance

The USE method addresses shortcomings in other commonly used methodologies.

A Decade of OS Access-Control Extensibility
From Communications of the ACM

A Decade of OS Access-Control Extensibility

Open source security foundations for mobile and embedded devices.

Browser Security
From Communications of the ACM

Browser Security: Appearances Can Be Deceiving

A discussion with Jeremiah Grossman, Ben Livshits, Rebecca Bace, and George Neville-Neil

The Web Won't Be Safe or Secure Until We Break It
From Communications of the ACM

The Web Won't Be Safe or Secure Until We Break It

Unless you have taken very particular precautions, assume every website you visit knows exactly who you are.

The Essence of Software Engineering
From Communications of the ACM

The Essence of Software Engineering: The SEMAT Kernel

A thinking framework in the form of an actionable kernel.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account