Sign In

Communications of the ACM

BLOG@CACM



NoSQL vs. SQL
From BLOG@CACM

NoSQL vs. SQL

Broadly, NoSQL has an absence of strict schemas for entities/attributes, while SQL rigidly relates/regulates the two.  

NoSQL: A Beginner's Guide
From BLOG@CACM

NoSQL: A Beginner's Guide

What exactly is NoSQL, and why should it matter in today's hyper-connected society?

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

The Year-Round Joys and Benefits of Open Source Software
From BLOG@CACM

The Year-Round Joys and Benefits of Open Source Software

One of the things that makes us programmers feel warm and fuzzy is open source software. Companies support open source too. Why give something away for free? A...

Tracking Down a Seminal Work on Computer Construction – in Russian
From BLOG@CACM

Tracking Down a Seminal Work on Computer Construction – in Russian

A Russian edition of Rutishauser's standard work on computer construction.

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

What Everyone Knows and What No One Knows

Who cares about logic?

The Software that Led to the Lockdown
From BLOG@CACM

The Software that Led to the Lockdown

One of the key drivers for the decision to lockdown the U.K. in late March 2020 was a computational epidemiological model developed at Imperial College, London....

The Rise of the Data Engineer
From BLOG@CACM

The Rise of the Data Engineer

The combination of AI and cloud infrastructure is changing the roles of certain engineers and creating a new requirement that demands an entirely new engineering...

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!

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

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.

Not So Good After All? Don't Let 'Altruism' Kill Your Company
From BLOG@CACM

Not So Good After All? Don't Let 'Altruism' Kill Your Company

Altruism is often heralded as a panacea for management challenges, but it could actually be a death sentence for your team and projects. Here's why. 
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account