Sign In

Communications of the ACM

BLOG@CACM



Computational Thinking or Computational Teamwork?
From BLOG@CACM

Computational Thinking or Computational Teamwork?

Computational thinking can sound like "CS-minus." Is there a "CS-plus" that makes CS more attractive and approachable by all?

Would There Be Computers Without Easter?
From BLOG@CACM

Would There Be Computers Without Easter?

Finding roots of computing in the computation of Easter.

Contingency Plans for CS Students in Large Classes
From BLOG@CACM

Contingency Plans for CS Students in Large Classes

Some of our students will get sick before the end of the term. We need a plan.

The ASPLOS 2020 Online Conference Experience
From BLOG@CACM

The ASPLOS 2020 Online Conference Experience

CS pioneered it. Should we use it?

The Rise of the Data Engineer
From BLOG@CACM

The Rise of the Data Engineer

The combination of AI and cloud infrastructure is changing the roles of certain engineers and creating a new requirement that demands an entirely new engineering...

Powerful Online Learning is a Distributed System
From BLOG@CACM

Powerful Online Learning is a Distributed System

In the midst of a pandemic, universities are now rapidly shifting to online and remote learning. Here, I will suggest a core metaphor for what powerful online learning...

Getting a Program Right (9) (last)
From BLOG@CACM

Getting a Program Right (9) (last)

A correct program is one that works in all cases.

The Internet of Things and the Future of Virus Detection and Prevention
From BLOG@CACM

The Internet of Things and the Future of Virus Detection and Prevention

Leveraging the Internet of Things in indoor environments could help prevent highly infectious diseases from spreading rapidly in today’s global world.

Getting a Program Right (8)
From BLOG@CACM

Getting a Program Right (8)

The power of loop invariants.

Clean Code Isn't Enough; It Must Be Crystal Clear, Too
From BLOG@CACM

Clean Code Isn't Enough; It Must Be Crystal Clear, Too

Writing clean code is a great start, but for programmers who really want to master their craft, you have to go further. You need to write clear code that other...

Getting a Program Right (7)
From BLOG@CACM

Getting a Program Right (7)

Have you run a program proof before? Now is your chance!

Beware of Hurting Our Weakest Students when Moving Classes Online
From BLOG@CACM

Beware of Hurting Our Weakest Students when Moving Classes Online

Our weakest students should not be the ones bearing the greatest costs of moving classes online.

Getting a Program Right (6)
From BLOG@CACM

Getting a Program Right (6)

Thanks for your patience.

Getting a Program Right (5)
From BLOG@CACM

Getting a Program Right (5)

Are we there yet?

Voting as Tallying in Public
From BLOG@CACM

Voting as Tallying in Public

Voting requires common acknowledgement.  Can that be achieved in automation?

Getting a Program Right (4, Also Includes 3')
From BLOG@CACM

Getting a Program Right (4, Also Includes 3')

Trying again.

Getting a Program Right (3)
From BLOG@CACM

Getting a Program Right (3)

Attempt #3 to write a binary search program.

How Does a Pantograph Work?
From BLOG@CACM

How Does a Pantograph Work?

Pantographs have been widely used for centuries; for example, in surveying and embroidery. With these devices, drawings can be enlarged and reduced.

Getting a Program Right (2)
From BLOG@CACM

Getting a Program Right (2)

Trying to fix a binary search attempt.

How Do We Make AI More Ethical?
From BLOG@CACM

How Do We Make AI More Ethical?

Scientists consider the limits of ethics in the realm of artificial intelligence, and how to mitigate its biases.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account