Sign In

Communications of the ACM

BLOG@CACM



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 Exhume PSP?
From BLOG@CACM

Time to Exhume 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!

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?

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.

Getting a Program Right (2)
From BLOG@CACM

Getting a Program Right (2)

Trying to fix a binary search attempt.

Getting a Program Right (1)
From BLOG@CACM

Getting a Program Right (1)

Why it is good to have a systematic approach to software verification.

There is More Than One Way to Become a Good Programmer
From BLOG@CACM

There is More Than One Way to Become a Good Programmer

A recent Communications of the ACM article casts aspersions on the innovative concept of code academy, a fast-developing approach to teaching programming. The analysis...

Are My Requirements Complete?
From BLOG@CACM

Are My Requirements Complete?

Knowing the notion of sufficient completeness and the theory of abstract data types helps practitioners produce better requirements.

The Shortest Possible Schedule Theorem: Yes, You Can Throw Money at Software Deadlines
From BLOG@CACM

The Shortest Possible Schedule Theorem: Yes, You Can Throw Money at Software Deadlines

As close as we have to a universal law of software engineering management.

Soundness and Completeness: With Precision
From BLOG@CACM

Soundness and Completeness: With Precision

The two key properties of program analysis are dual of each other.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account