Sign In

Communications of the ACM

BLOG@CACM



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.

The Formal Picnic Approach to Requirements
From BLOG@CACM

The Formal Picnic Approach to Requirements

A mathematical excursion will improve your requirements.

Ten Traits of Exceptional Innovators
From BLOG@CACM

Ten Traits of Exceptional Innovators

I have had the privilege of meeting, and in some cases closely interacting with, pioneer scientists, technologists, and entrepreneurs, including Nobel, Fields,...

Discussing Empirical Answers to Questions of Software Engineering
From BLOG@CACM

Discussing Empirical Answers to Questions of Software Engineering

Focusing on what helps software developers.

The Real Problem With AI
From BLOG@CACM

The Real Problem With AI

It's algorithms. And data. They can be wrong.

­Until the Craze Fades
From BLOG@CACM

­Until the Craze Fades

Too much, perhaps, of a good thing?

Why Not Program Right?
From BLOG@CACM

Why Not Program Right?

Not your grandmother's class invariant.

When Will  We Learn?
From BLOG@CACM

When Will We Learn?

Massive software failure once again, with no lesson from past occurrences and no lesson for future systems.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account