acm-header
Sign In

Communications of the ACM

BLOG@CACM


bg-corner

Making Bad Decisions
From BLOG@CACM

Making Bad Decisions

In software engineering, many technical decisions are context-dependent, and there are often complex edge cases to consider. 

High-Performance Mobile System-on-Chip Clusters
From BLOG@CACM

High-Performance Mobile System-on-Chip Clusters

Simply stating the problem is not enough; it is necessary to look for a quick way out of the situation, relying on available resources.

Data Anonymization Using the Random Sum Method
From BLOG@CACM

Data Anonymization Using the Random Sum Method

The purpose of this blog post is to present an anonymization method that can be applied to the digital attributes of personal data.

Essentials of BI Dashboards
From BLOG@CACM

Essentials of BI Dashboards

A well-designed dashboard is everyone's dream come true.

Cultivating Habits: -1 +2 for Researchers
From BLOG@CACM

Cultivating Habits: -1 +2 for Researchers

The New Year is stereotypically the time when we resolve to start some good habits and get rid of some of the bad.

Publishing, The Choice and The Luck
From BLOG@CACM

Publishing, The Choice and The Luck

Selecting publishing targets is a process with no simple solutions.

How to Reduce the Carbon Emissions of Your Website
From BLOG@CACM

How to Reduce the Carbon Emissions of Your Website

We can control our online ecological impact.

Language Imitation Games and the Arrival of Broad and Shallow AI
From BLOG@CACM

Language Imitation Games and the Arrival of Broad and Shallow AI

On the impact of large language models.

We Are Camille
From BLOG@CACM

We Are Camille

Who is Camille Noûs, who has contributed to hundreds of papers on Google Scholar?

How Does One Divide with Napier's Rods?
From BLOG@CACM

How Does One Divide with Napier's Rods?

Napier's multiplication and division rods, deriving from the basic multiplication table, simplify calculations considerably.

Understanding NoSQL Database Types: Key Value   
From BLOG@CACM

Understanding NoSQL Database Types: Key Value   

Of all non-relationals, the key-value store is by far the most popular due to its extreme simplicity.

New Areas for Application of Self-Organizing Routing
From BLOG@CACM

New Areas for Application of Self-Organizing Routing

To organize the productive work of multiprocessor chips, it is necessary to establish an efficient distribution of computational processes between computational...

Understanding NoSQL Database Types: Document
From BLOG@CACM

Understanding NoSQL Database Types: Document

Document databases are particularly useful in app development.

Understanding NoSQL Database Types: Column
From BLOG@CACM

Understanding NoSQL Database Types: Column

The elements of one of the most used and popular data designs around.

Anna Karenina On Development Methodologies
From BLOG@CACM

Anna Karenina On Development Methodologies

The quest for development productivity.

Computer Systems Research: The Joys, the Perils, and How to Count Beans Well
From BLOG@CACM

Computer Systems Research: The Joys, the Perils, and How to Count Beans Well

This post is meant to highlight my subjective take on the joys and the road bumps on the way to doing innovative work in computer systems.

Why Great Programmers Pull Back the Curtain While Programming
From BLOG@CACM

Why Great Programmers Pull Back the Curtain While Programming

Want to be a great programmer? If so, you have to pull back the curtain and learn how software really works. A deeper understanding helps programmers further their...

How Objective is Peer Review?
From BLOG@CACM

How Objective is Peer Review?

The ESA Experiment.

Measuring Up: How to Properly Measure Your Programmers
From BLOG@CACM

Measuring Up: How to Properly Measure Your Programmers

To measure or to not measure, that is the question. Ask programmers and many will tell you that measurement is a fool’s folly. Measurement undermines the team spirit...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account