acm-header
Sign In

Communications of the ACM

Latest Practice



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.

Resilience Engineering
From Communications of the ACM

Resilience Engineering: Learning to Embrace Failure

A discussion with Jesse Robbins, Kripa Krishnan, John Allspaw, and Tom Limoncelli.

Weathering the Unexpected
From Communications of the ACM

Weathering the Unexpected

Failures happen, and resilience drills help organizations prepare for them.

A Generation Lost in the Bazaar
From Communications of the ACM

A Generation Lost in the Bazaar

Quality happens only when someone is responsible for it.

Getting What You Measure
From Communications of the ACM

Getting What You Measure

There are four common pitfalls to avoid when using software metrics in a project management setting.

Managing Technical Debt
From Communications of the ACM

Managing Technical Debt

Shortcuts that save money and time today can cost you down the road.

Coding Guidelines: Finding the Art in the Science
From Communications of the ACM

Coding Guidelines: Finding the Art in the Science

Computer science is both a science and an art. Yet, when it comes time for implementation, there is a combination of artistic flare, nuanced style, and technical...

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

The Software Industry is the Problem

The time has come for software liability laws.

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.

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.

Does Deterrence Work in Reducing Information Security Policy Abuse By Employees?
From Communications of the ACM

Does Deterrence Work in Reducing Information Security Policy Abuse By Employees?

Methods for evaluating and effectively managing the security behavior of employees.

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.

National Internet Defense - Small States on the Skirmish Line
From Communications of the ACM

National Internet Defense - Small States on the Skirmish Line

Despite the global and borderless nature of the Internet's underlying protocols and driving philosophy, there are significant ways in which it remains substantively...

System Administration Soft Skills
From Communications of the ACM

System Administration Soft Skills

How can system administrators reduce stress and conflict in the workplace?

A Plea from Sysadmins to Software Vendors
From Communications of the ACM

A Plea from Sysadmins to Software Vendors: 10 Do's and Don'ts

What can software vendors do to make the lives of system administrators a little easier?

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