acm-header
Sign In

Communications of the ACM

BLOG@CACM


bg-corner

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: Defined With Precision
From BLOG@CACM

Soundness and Completeness: Defined 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.

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.

­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.

End Anonymous Refereeing
From BLOG@CACM

End Anonymous Refereeing

Who came up with this bizarre idea?

Mainstream Enough For Me
From BLOG@CACM

Mainstream Enough For Me

The worst possible choice of e-mail recipient.

Beyond Folk Pedagogy
From BLOG@CACM

Beyond Folk Pedagogy

On evidence-based teaching.

Empirical Answers to Important Software Engineering Questions (Part 1 of 2)
From BLOG@CACM

Empirical Answers to Important Software Engineering Questions (Part 1 of 2)

Beyond the lamppost

The End of Software Engineering and the Last Methodologist
From BLOG@CACM

The End of Software Engineering and the Last Methodologist

Let's all do deep learning now.

The Mythical Brooks Law
From BLOG@CACM

The Mythical Brooks Law

Yes, you can make a project less late by adding manpower. If you are a good manager.

Just Press Reboot
From BLOG@CACM

Just Press Reboot

Why does the press continue to talk about "computer problems"?

Null-Pointer Crashes, No More
From BLOG@CACM

Null-Pointer Crashes, No More

Void safety is a guarantee that no code will ever catch a reference with its pants down.

A Jolt or Two (Part 1)
From BLOG@CACM

A Jolt or Two (Part 1)

You cannot learn something if you think you already know it, and don't.

The Robots Are Taking Over! (Perhaps Not Quite Yet)
From BLOG@CACM

The Robots Are Taking Over! (Perhaps Not Quite Yet)

Programs fix themselves! Today! It's scary!

Agile Methods: A Follow-Up ACM Webinar
From BLOG@CACM

Agile Methods: A Follow-Up ACM Webinar

A follow-up session to the ACM webinar Agile Methods: The Good, the Hype and the Ugly will take place on March 27.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account