The Clean Coder: A Code of Conduct for Professional Programmers [NOOK Book]


Programmers who endure and succeed amidst swirling uncertainty and nonstop pressure share a common attribute: They care deeply about the practice of creating software. They treat it as a craft. They are professionals.


In The Clean Coder: A Code of Conduct for Professional Programmers, legendary software expert Robert C. Martin introduces the disciplines, techniques, tools, and practices of true software craftsmanship. This book is packed with practical advice?about ...

See more details below
The Clean Coder: A Code of Conduct for Professional Programmers

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK 7.0
  • Samsung Galaxy Tab 4 NOOK 10.1
  • NOOK HD Tablet
  • NOOK HD+ Tablet
  • NOOK eReaders
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac

Want a NOOK? Explore Now

NOOK Book (eBook)
$28.79 price
(Save 20%)$35.99 List Price


Programmers who endure and succeed amidst swirling uncertainty and nonstop pressure share a common attribute: They care deeply about the practice of creating software. They treat it as a craft. They are professionals.


In The Clean Coder: A Code of Conduct for Professional Programmers, legendary software expert Robert C. Martin introduces the disciplines, techniques, tools, and practices of true software craftsmanship. This book is packed with practical advice–about everything from estimating and coding to refactoring and testing. It covers much more than technique: It is about attitude. Martin shows how to approach software development with honor, self-respect, and pride; work well and work clean; communicate and estimate faithfully; face difficult decisions with clarity and honesty; and understand that deep knowledge comes with a responsibility to act.


Readers will learn

  • What it means to behave as a true software craftsman
  • How to deal with conflict, tight schedules, and unreasonable managers
  • How to get into the flow of coding, and get past writer’s block
  • How to handle unrelenting pressure and avoid burnout
  • How to combine enduring attitudes with new development paradigms
  • How to manage your time, and avoid blind alleys, marshes, bogs, and swamps
  • How to foster environments where programmers and teams can thrive
  • When to say “No”–and how to say it
  • When to say “Yes”–and what yes really means


Great software is something to marvel at: powerful, elegant, functional, a pleasure to work with as both a developer and as a user. Great software isn’t written by machines. It is written by professionals with an unshakable commitment to craftsmanship. The Clean Coder will help you become one of them–and earn the pride and fulfillment that they alone possess.

Read More Show Less

Editorial Reviews

From the Publisher
“‘Uncle Bob’ Martin definitely raises the bar with his latest book. He explains his expectation for a professional programmer on management interactions, time management, pressure, on collaboration, and on the choice of tools to use. Beyond TDD and ATDD, Martin explains what every programmer who considers him- or herself a professional not only needs to know, but also needs to follow in order to make the young profession of software development grow.”

–Markus Gärtner

Senior Software Developer

it-agile GmbH

“Some technical books inspire and teach; some delight and amuse. Rarely does a technical book do all four of these things. Robert Martin’s always have for me and The Clean Coder is no exception. Read, learn, and live the lessons in this book and you can accurately call yourself a software professional.”

–George Bullock

Senior Program Manager

Microsoft Corp.

“If a computer science degree had ‘required reading for after you graduate,’ this would be it. In the real world, your bad code doesn’t vanish when the semester’s over, you don’t get an A for marathon coding the night before an assignment’s due, and, worst of all, you have to deal with people. So, coding gurus are not necessarily professionals. The Clean Coder describes the journey to professionalism . . . and it does a remarkably entertaining job of it.”

–Jeff Overbey

University of Illinois at Urbana-Champaign

The Clean Coder is much more than a set of rules or guidelines. It contains hard-earned wisdom and knowledge that is normally obtained through many years of trial and error or by working as an apprentice to a master craftsman. If you call yourself a software professional, you need this book.”

–R. L. Bogetti

Lead System Designer

Baxter Healthcare

Read More Show Less

Product Details

  • ISBN-13: 9780132542883
  • Publisher: Pearson Education
  • Publication date: 5/27/2011
  • Series: Robert C. Martin Series
  • Sold by: Barnes & Noble
  • Format: eBook
  • Edition number: 1
  • Pages: 336
  • Sales rank: 661,562
  • File size: 3 MB

Meet the Author

Robert C. Martin (“Uncle Bob”) has been a programmer since 1970. He is founder and president of Object Mentor, Inc., an international firm of highly experienced software developers and managers who specialize in helping companies get their projects done. Object Mentor offers process improvement consulting, object-oriented software design consulting, training, and skill development services to major corporations worldwide. Martin has published dozens of articles in various trade journals and is a regular speaker at international conferences and trade shows.


He has authored and edited many books, including:


  • Designing Object Oriented C++ Applications Using the Booch Method
  • Patterns Languages of Program Design 3
  • More C++ Gems
  • Extreme Programming in Practice
  • Agile Software Development: Principles, Patterns, and Practices
  • UML for Java Programmers
  • Clean Code

A leader in the industry of software development, Martin served for three years as editor-in-chief of the C++ Report, and he served as the first chairman of the Agile Alliance.


Robert is also the founder of Uncle Bob Consulting, LLC, and cofounder with his son Micah Martin of The Clean Coders LLC.

Read More Show Less

Table of Contents

Foreword         xiii

Preface         xix

Acknowledgments         xxiii

About the Author         xxix

On the Cover         xxxi


Pre-Requisite Introduction          1


Chapter 1: Professionalism          7

Be Careful What You Ask For    8

Taking Responsibility    8

First, Do No Harm    11

Work Ethic    16

Bibliography    22


Chapter 2: Saying No          23

Adversarial Roles    26

High Stakes    29

Being a “Team Player”    30

The Cost of Saying Yes    36

Code Impossible    41


Chapter 3: Saying Yes         45

A Language of Commitment    47

Learning How to Say “Yes”    52

Conclusion    56


Chapter 4: Coding          57

Preparedness    58

The Flow Zone    62

Writer’s Block    64

Debugging    66

Pacing Yourself    69

Being Late    71

Help    73

Bibliography    76


Chapter 5: Test Driven Development         77

The Jury Is In    79

The Three Laws of TDD    79

What TDD Is Not    83

Bibliography    84


Chapter 6: Practicing         85

Some Background on Practicing    86

The Coding Dojo    89

Broadening Your Experience    93

Conclusion    94

Bibliography    94


Chapter 7: Acceptance Testing         95

Communicating Requirements    95

Acceptance Tests    100

Conclusion    111


Chapter 8: Testing Strategies         113

QA Should Find Nothing    114

The Test Automation Pyramid    115

Conclusion    119

Bibliography    119


Chapter 9: Time Management         121

Meetings    122

Focus-Manna    127

Time Boxing and Tomatoes    130

Avoidance    131

Blind Alleys    131

Marshes, Bogs, Swamps, and Other Messes    132

Conclusion    133


Chapter 10: Estimation         135

What Is an Estimate?    138

PERT    141

Estimating Tasks    144

The Law of Large Numbers    147

Conclusion    147

Bibliography    148


Chapter 11: Pressure          149

Avoiding Pressure    151

Handling Pressure    153

Conclusion    155


Chapter 12: Collaboration         157

Programmers versus People    159

Cerebellums    164

Conclusion    166


Chapter 13: Teams and Projects         167

Does It Blend?    168

Conclusion    171

Bibliography    171


Chapter 14: Mentoring, Apprenticeship, and Craftsmanship          173

Degrees of Failure    174

Mentoring    174

Apprenticeship    180

Craftsmanship    184

Conclusion    185


Appendix A: Tooling          187

Tools    189

Source Code Control    189

IDE/Editor    194

Issue Tracking    196

Continuous Build    197

Unit Testing Tools    198

Component Testing Tools    199

Integration Testing Tools    200

UML/MDA    201

Conclusion    204


Index         205

Read More Show Less

Customer Reviews

Average Rating 4.5
( 4 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 4 Customer Reviews
  • Posted October 24, 2013

    Some reviews I read from others that have read this book comment

    Some reviews I read from others that have read this book commented that the book seems fit for beginner programmers and that the experienced programmers would find the information redundant. I have a different take on this that I'd like to share.
    Mr. Martin is a recognized name in this wonderfully complex field of software engineering. He has written several books including co-authoring "Agile Principles, Patterns, and Practices in C#" which I also have. This particular agile book I never read in its entirety but would pick it up and read specific chapters at different times as needed.

    I read "The Clean Coder" cover-to-cover in 2 days and think it's fitting for both the beginner and experienced programmer. The beginner will likely stand to read the whole book cover-to-cover and not be overwhelmed with technicality. Though He/She will consume as much technical content from other sources necessary to succeed in their work, this book will broaden their canvas of seeing and understanding as relates to a bit more of the human side of the business. This greatly ties into why I also feel that this book is good for the experienced programmer.

    Those of us that consider ourselves experienced professionals should embrace the work of professionals that write about their own experiences and insights. A Code of Conduct style of writing is most welcome because the narrative either challenges or solidifies our own experiences with failure and success and inspires us to take a lead role.

    Successful projects are had by Great Teams. Professionalism, Saying No, Saying Yes, Time Management, Pressure, Collaboration, Mentoring, Apprenticeship, and Craftsmanship, are some of the topics found in this book. It's not enough for those of us that consider ourselves experienced to say that this is redundant information. Putting into practice these Code of Conduct principles will increase one's marketability and contribution to a Team that Gel's. We should embrace books like this because continuous learning and repetition solidifies and elevates our skill.

    Was this review helpful? Yes  No   Report this review
  • Posted February 15, 2013

    more from this reviewer

    Informative for beginning coders

    Informative for beginning coders, but redundant for experienced programmers. I have been coding for 20 years, parts of the book was informative but not much. Main criticism would be the author using his book to toot his own horn.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted June 28, 2012

    No text was provided for this review.

  • Anonymous

    Posted October 19, 2011

    No text was provided for this review.

Sort by: Showing all of 4 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)