acm-header
Sign In

Communications of the ACM

BLOG@CACM


bg-corner

Sensibles of Software Engineering, 1 and 2
From BLOG@CACM

Sensibles of Software Engineering, 1 and 2

Common-sense rules, which projects violate again and again.

AI Does Not Help Programmers
From BLOG@CACM

AI Does Not Help Programmers

Getting past the"Wow" effect.

What Do ChatGPT and AI-based Automatic Program Generation Mean for the Future of Software
From BLOG@CACM

What Do ChatGPT and AI-based Automatic Program Generation Mean for the Future of Software

ChatGPT is game-changing, the kind of thing that you witness once in a generation.

How to Teach
From BLOG@CACM

How to Teach

Make technology boon, not bane.

Statement Considered Harmful
From BLOG@CACM

Statement Considered Harmful

Instructions are not statements.

Logical Beats Sequential
From BLOG@CACM

Logical Beats Sequential

Often, "we do this and then we do that" is just a lazy way of stating "to do that, we must have achieved this."

Not Your Grandmother's Textbook Exercise
From BLOG@CACM

Not Your Grandmother's Textbook Exercise

Sarcasm, where you least expected it.

The Legacy of Barry Boehm
From BLOG@CACM

The Legacy of Barry Boehm

One of the founders of software engineering as we know it.

Can You Please Explain More Obscurely?
From BLOG@CACM

Can You Please Explain More Obscurely?

On the appropriate style for technical writing.

Mental Self-Check
From BLOG@CACM

Mental Self-Check

Who is crazy: the rest of the world, or I?

Not Worth a Thousand Words
From BLOG@CACM

Not Worth a Thousand Words

Pictures are no substitute for substance.

A Standard Plan for Modern Requirements
From BLOG@CACM

A Standard Plan for Modern Requirements

The ambitious systems that we develop today need a proper requirements structure. The plan defined here organizes requirements specification along four books, the...

Tips for Successful Examinations in the Age of Remote Education
From BLOG@CACM

Tips for Successful Examinations in the Age of Remote Education

Rather than fancying you can control Internet access, design exams to reward students who won't need it.

Lessons From and For Online Teaching
From BLOG@CACM

Lessons From and For Online Teaching

The troika model for successful online teaching.

Time to Resurrect PSP?
From BLOG@CACM

Time to Resurrect PSP?

The Personal Software Process encourages programmer discipline. Largely forgotten, it does have a few wrinkles, but understanding and applying its core ideas remains...

What Everyone Knows and What No One Knows
From BLOG@CACM

What Everyone Knows and What No One Knows

Who cares about logic?

Things To Do To An Algorithm
From BLOG@CACM

Things To Do To An Algorithm

What happens when people's fate hangs on machine 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.

Getting a Program Right (8)
From BLOG@CACM

Getting a Program Right (8)

The power of loop invariants.

Getting a Program Right (7)
From BLOG@CACM

Getting a Program Right (7)

Have you run a program proof before? Now is your chance!
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account