Disclosure: We may receive compensation if you purchase a product through one of the links below. Our editors independently selected each product featured.

Coding, also called computer programming, is a complex field that combines computer science, mathematics, information technology, and more. While coding degree programs and bootcamps help students gain the essential skills they need for computer programming jobs, there’s much more to discover about this field.

Our list includes books exploring all aspects of coding, including the history of coding, how to build a sustainable coding career, and hacking and cybersecurity. Whether you’re a new or experienced coder, these books can help you expand your skills and discover new applications for your coding abilities.

Learn how we picked the best coding books.

The 19 Best Coding Books

Clean Code

Clean Code: A Handbook of Agile Software Craftsmanship by Robert Cecil Martin

Buy Now

Our first pick for coding books is the acclaimed Clean Code: A Handbook of Agile Software Craftsmanship by Robert Cecil Martin. It focuses on the concept of clean code — why it’s important, how to write it, how to test it, and more. The book is written for anyone with an interest in producing better code, especially developers, software engineers, project managers, team leads, and systems analysts. Martin is a longtime software professional and founder of Object Mentor, Inc.

Code Complete

Code Complete: A Practical Handbook of Software Construction, Second Edition by Steve McConnell

Buy Now

Clear, pragmatic guidance is the hallmark of Code Complete: A Practical Handbook of Software Construction — a bestselling book in the coding genre. It’s written for coders of all experience levels and from all development environments. It’s an excellent choice for visual learners as it includes hundreds of coding samples. Author Steve McConnell is a software engineer and winner of Software Development magazine’s Jolt Award.

Code

Code: The Hidden Language of Computer Hardware and Software by Charles Petzold

Buy Now

You don’t have to be a coder or have any technical background to enjoy Code: The Hidden Language of Computer Hardware and Software by Charles Petzold. The book is written for anyone with an interest in the history of codes and how they are used to communicate. Bill Gates presented to Petzold a Windows Pioneer Award in 1994 for his contributions to Microsoft Windows via writing and publishing.

Refactoring

Refactoring: Improving the Design of Existing Code, 2nd Edition by Martin Fowler

Buy Now

Restructuring existing computer code — known as refactoring — is the focus of Refactoring: Improving the Design of Existing Code by Martin Fowler. The book takes a deep dive into the subject and is written for experienced programmers looking to improve the design and comprehension of existing code. This edition of the book features an updated catalog, JavaScript code examples, and functional examples that demonstrate refactoring without classes. Fowler is the chief scientist at Thoughtworks.

The Pragmatic Programmer

The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas

Buy Now

Written for those who already have the basics of programming down, The Pragmatic Programmer: From Journeyman to Master gets into the nitty-gritty of the process, like fighting software rot and capturing real requirements. It’s written by Andrew Hunt and David Thomas — founders of the Pragmatic Bookshelf publishing house, which specializes in books for software developers, testers, and managers. In this book, they codify many of the lessons they’ve learned during their respective careers as software designers and coders.

Design Patterns

Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides

Buy Now

The design of object-oriented software is the focus of Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Written for designers, the book contains 23 patterns with code that demonstrate how they can be implemented in object-oriented programming languages. Gamma is technical director at the Software Technology Center of Object Technology International, Helm works in the Object Technology Practice Group of the IBM Consulting Group, Johnson is a faculty member at the University of Illinois at Urbana-Champaign, and Vlissides is a research staffer at the IBM Thomas J. Watson Research Center.

Head First Design Patterns

Head First Design Patterns: A Brain-Friendly Guide by Eric Freeman, Elisabeth Robson, Bert Bates, and Kathy Sierra

Buy Now

Four authors who are technical experts and experts in learning theory combine forces on Head First Design Patterns: A Brain-Friendly Guide. The book is written for entry-level developers or those interested in learning object-oriented methodologies for the first time. Authors Eric Freeman, Elisabeth Robson, Bert Bates, and Kathy Sierra fill the book with best practices in design and the latest research in cognitive science. Freeman is a former Disney executive, Robson is co-founder of Wickedly Smart, Bates is a Java instructor, and Sierra is a former master trainer for Sun Microsystems.

The Clean Coder

The Clean Coder: A Code of Conduct for Professional Programmers by Robert Cecil Martin

Buy Now

Defining true software craftsmanship in detail is the theme of The Clean Coder: A Code of Conduct for Professional Programmers by Robert Cecil Martin. It’s written for those who are new to coding and looking for practical advice about the profession and the professionalism that goes along with it. Martin is a longtime software professional and founder of Object Mentor, Inc., and he writes in an anecdotal style.

The Self-Taught Programmer

The Self-Taught Programmer: The Definitive Guide to Programming Professionally by Cory Althoff

Buy Now

The material for The Self-Taught Programmer: The Definitive Guide to Programming Professionally came from author Cory Althoff’s own life. He taught himself to program in one year and landed a job as a software engineer II at eBay. However, the book is not just about what he did right but also what he did wrong. It’s intended for others who are following in his footsteps as self-taught programmers. Among the topics covered: writing your first Python program, using tools like Git and Bash, and passing your first technical interview.

Working Effectively with Legacy Code

Working Effectively with Legacy Code by Michael C. Feathers

Buy Now

A deep dive into the understanding of and maintenance of legacy systems is the crux of Working Effectively with Legacy Code by Michael C. Feathers. The book is written for those who work with or have an interest in working with large, untested legacy code bases — but especially developers, technical managers, and testers. Feathers works for Object Mentor, Inc. and is the original author of CppUnit.

Don’t Make Me Think by Steve Krug

Don't Make Me Think, Revisited: A Common Sense Approach to Web Usability, 3rd Edition by Steve Krug

Buy Now

The principles of intuitive navigation and information design are the focuses of Don’t Make Me Think, Revisited: A Common Sense Approach to Web Usability by Steve Krug. Though originally published in 2000, it has recently been updated to include new examples and a new chapter on mobile usability. This short, witty, and practical book is intended for those with an interest in usability who don’t want a read reminiscent of a textbook. Krug is a usability consultant who has three decades of experience as a user advocate for top tech companies, including Apple.

Hacking

Hacking: The Art of Exploitation, 2nd Edition by Jon Erickson

Buy Now

Looking at hacking as the art of creative problem solving is the foundation of Jon Erickson’s Hacking: The Art of Exploitation. It is written for readers who want to learn the fundamentals of C programming from a hacker’s perspective. Readers who learn best through hands-on learning will find it particularly helpful as it comes with a CD that allows readers to follow along with the book’s examples. Erickson began hacking and programming at age 5. He currently works as a vulnerability researcher and security specialist.

Introduction to Algorithms

Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein

Buy Now

Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein is a comprehensive book that covers the full spectrum of modern algorithms. Although it was written as a textbook for university students, it has appeal for anyone with a strong background in proof-based math and an interest in algorithms. The book features many examples and problems for readers to work through. The authors are all professors or retired professors from Dartmouth College, Columbia University, and the Massachusetts Institute of Technology.

Introduction to Coding and Information

Introduction to Coding and Information Theory by Steven Roman

Buy Now

Steven Roman’s Introduction to Coding and Information Theory was written to introduce coding theory and information theory to university undergraduates. The textbook is most appropriate for readers who have some familiarity with elementary linear algebra. Topics covered in-depth include error-correcting block codes, linear codes, and cyclic codes. Roman is an author, educator, and mathematician who is credited as one of the main developers of umbral calculus.

Learning JavaScript Design Patterns

Learning JavaScript Design Patterns: A JavaScript and jQuery Developer’s Guide by Addy Osmani

Buy Now

Written for experienced JavaScript developers, Learning JavaScript Design Patterns by Addy Osmani has been likened to a cookbook for advanced coders. The book walks readers through over 20 classical and modern JavaScript design patterns and provides several different options for writing modular code. It also includes design patterns implemented in the jQuery library. Osmani is a blogger, author, and developer programs engineer at Google.

Make Your Own Neural Network

Make Your Own Neural Network by Tariq Rashid

Buy Now

Author Tariq Rashid aims to make neural networks accessible to the masses in Make Your Own Neural Network. The book is a step-by-step guide through the mathematics of neural networks and how to create them via the Python computer language. Readers do not need any mathematical experience beyond a high school level. The book also contains a simplified introduction to calculus. Rashid works in technology and leads the London Python meetup group.

Soft Skills

Soft Skills: The Software Developer’s Life Manual by John Sonmez

Buy Now

Soft Skills: The Software Developer’s Life Manual focuses on the mindset that author John Sonmez believes developers need to be happy and successful. The book was written for anyone who works in the computer industry and seeks a healthy career/life balance. Topics covered include leading by example, communication skills, and healthy living. Sonmez is a software developer, blogger, and YouTuber

A First Course in Coding Theory

A First Course in Coding Theory by Raymond Hill

Buy Now

Those interested in algebraic coding theory will find value in A First Course in Coding Theory by Raymond Hill. It’s also very suitable for individual study because it includes a large number of exercises and solutions. The book is based on courses that Hill taught to advanced undergraduates and first-year graduate students at the University of Salford in England, where he is now an honorary professor.

Applied Algebra

Applied Algebra: Codes, Ciphers and Discrete Algorithms by Darel W. Hardy, Fred Richman, and Carol L. Walker

Buy Now

Applied Algebra: Codes, Ciphers and Discrete Algorithms by Darel W. Hardy, Fred Richman, and Carol L. Walker, provides practical methods for solving problems in data security and data integrity. It is academic in presentation and best suited for those who have had prior classes in abstract or linear algebra. There are numerous exercises and downloadable resources that accompany the book. The authors were or are mathematics professors at Colorado State University, Florida Atlantic University, and New Mexico State University, respectively.

How We Picked the Best Books for Coding

To create our list of the best books about coding, we gathered a list of 91 books dedicated to the topic from bestseller lists published by The New York Times and Wall Street Journal. We then narrowed them down to this list of 19. We based our research on overall popularity and online materials, such as reviews and common recommendations from Reddit and Goodreads. Important criteria included a wide intended audience and a general consensus on the book’s practical utility for folks interested in learning how to code.

More Coding-related Book Lists

Best Online Coding-related Courses for Continuing Education

Interested in a degree instead?

Learn more about online degrees, their start dates, transferring credits, availability of financial aid, and more by contacting the universities below.