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.

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.

Developing Computational Solutions With Humility: Recommending Morgan Ames' 'The Charisma Machine'
From BLOG@CACM

Developing Computational Solutions With Humility: Recommending Morgan Ames' 'The Charisma Machine'

Morgan Ames' book highlights the missing HCI design process for the XO Laptop 

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

Talented Programmers Don't Tolerate Chaos
From BLOG@CACM

Talented Programmers Don't Tolerate Chaos

Talented programmers will strive to structure chaos and write perfect code.

Why IT Professionals Get A Bad Rap For Their Communications
From BLOG@CACM

Why IT Professionals Get A Bad Rap For Their Communications

Tips for improving business IT communications.

The Vote as a Declared Datum
From BLOG@CACM

The Vote as a Declared Datum

A vote is a datum that sheds its original identity but persists.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account