Chapter 2. Code Quality

You are not your idea, and if you identify too closely with your ideas, you will take offense when they are challenged.

Ed Catmull, Pixar cofounder and author of Creativity Inc.

In the book Let’s Talk About Love: A Journey to the End of Taste, music journalist Carl Wilson mulls over what it means for something to be good. The book focuses on the Celine Dion album that it is named after, which has sold 31 million copies and is one of the top-selling albums of all time. Despite this immense success, music critics such as Wilson (and likely many of us reading this, author included), are quick to dismiss Celine Dion’s music. The reason for this disparity is that taste is subjective. Each of us brings our own unique cultural experiences along with us when we enjoy (or don’t) entertainment and art. Eighteenth-century philosopher David Hume explored these ideas in detail, most notably in his essay “Of the Standard of Taste,” stating that “Beauty is no quality in things themselves: It exists merely in the mind which contemplates them.”

If things such the worthiness of art and entertainment are subjective, what about the quality of code? Is good code subjective or objective? This can be a challenging topic, as much like music we all bring our own experience and assumptions to the discussion of what constitutes “beautiful” code. With that in mind, I’ve sought to identify a few object measures of code quality. Doing so allows us to remove the risk of needless or ...

Get Collaborative Web Development now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.