acm-header
Sign In

Communications of the ACM

Recent Articles


bg-corner

MUST and MUST NOT
From Communications of the ACM

MUST and MUST NOT

On writing documentation.

Know Your Algorithms
From Communications of the ACM

Know Your Algorithms

Stop using hardware to solve software problems.

Writing a Test Plan
From Communications of the ACM

Writing a Test Plan

Establish your hypotheses, methodologies, and expected results.

A Chance Gardener
From Communications of the ACM

A Chance Gardener

Harvesting open source products and planting the next crop.

The Obscene Coupling Known as Spaghetti Code
From Communications of the ACM

The Obscene Coupling Known as Spaghetti Code

Teach your junior programmers how to read code.

Every Silver Lining Has a Cloud
From Communications of the ACM

Every Silver Lining Has a Cloud

Cache is king. And if your cache is cut, you are going to feel it.

Watchdogs vs. Snowflakes
From Communications of the ACM

Watchdogs vs. Snowflakes

Taking wild guesses.

Popping Kernels
From Communications of the ACM

Popping Kernels

Choosing between programming in the kernel or in user space.

Reducing the Attack Surface
From Communications of the ACM

Reducing the Attack Surface

Sometimes you can give the monkey a less-dangerous club.

Cold, Hard Cache
From Communications of the ACM

Cold, Hard Cache

On the implementation and maintenance of caches.

IoT: The Internet of Terror
From Communications of the ACM

IoT: The Internet of Terror

If it seems like the sky is falling, that's because it is.

The Observer Effect
From Communications of the ACM

The Observer Effect

Finding the balance between zero and maximum.

Forced Exception Handling
From Communications of the ACM

Forced Exception Handling

You can never discount the human element in programming.

The Chess Player Who Couldn't Pass the Salt
From Communications of the ACM

The Chess Player Who Couldn't Pass the Salt

AI: Soft and hard, weak and strong, narrow and general. Dear KV,

The Unholy Trinity of Software Development
From Communications of the ACM

The Unholy Trinity of Software Development

Tests, documentation, and code.

Cloud Calipers
From Communications of the ACM

Cloud Calipers

Naming the next generation and remembering that the cloud is just other people's computers.

Chilling the Messenger
From Communications of the ACM

Chilling the Messenger

Keeping ego out of software-design review.

What Are You Trying to Pull?
From Communications of the ACM

What Are You Trying to Pull?

A single cache miss is more expensive than many instructions.

GNL Is Not Linux
From Communications of the ACM

GNL Is Not Linux

What's in a name?

Code Hoarding
From Communications of the ACM

Code Hoarding

Committing to commits, and the beauty of summarizing graphs.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account