Sign In

Communications of the ACM

Video Highlights


Protecting Industrial Control Systems

Finding, and plugging, the security holes in SCADA.

Multi-Device Digital Assistance

Increased availability of cloud services and ownership of multiple digital devices create unique opportunities for di...

Building Certified Concurrent OS Kernels

In this work, we present CertiKOS, a novel compositional framework for building verified concurrent OS kernels.

Bitwise: A Life in Code

Data science as a paradox.

Alloy: A Language and Tool for Exploring Software Designs

Exploiting a simple, expressive logic based on relations to describe designs and automate their analysis.

EarSketch: Engaging Broad Populations in Computing Through Music

EarSketch leverages the appeal of music to create a learning environment that allows students to be expressive with c...

OpenFab: A Programmable Pipeline for Multimaterial Fabrication

We present OpenFab, a programmable pipeline for synthesis of multimaterial 3D printed objects that is inspired by Ren...

What Makes a Robot Likable?

Interactions with robotics teach us more about people.

I Don't Understand My Car

Self-driving cars will need good communication skills.