Goodreads helps you keep track of books you want to read.
Start by marking “Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)” as Want to Read:
Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)
Enlarge cover
Rate this book
Clear rating
Open Preview

Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)

4.26  ·  Rating details ·  2,740 ratings  ·  220 reviews
Whether it's in Java, .NET, or Ruby on Rails, getting your application ready to ship is only half the battle. Did you design your system to survivef a sudden rush of visitors from Digg or Slashdot? Or an influx of real world customers from 100 different countries? Are you ready for a world filled with flakey networks, tangled databases, and impatient users?

If you're a deve
Paperback, 326 pages
Published April 6th 2007 by Pragmatic Bookshelf (first published March 30th 2007)
More Details... Edit Details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Release It!, please sign up.

Be the first to ask a question about Release It!

Community Reviews

Showing 1-30
Average rating 4.26  · 
Rating details
 ·  2,740 ratings  ·  220 reviews

More filters
Sort order
Start your review of Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)
Rod Hilton
Sep 26, 2017 rated it it was amazing  ·  review of another edition
This remains one of the most important books software engineers can read. The second edition is even better than the first, updated to fix a lot of the "outdated" criticisms the first book gets, incorporating the modern DevOps movement, microservices, and modern technologies used in software engineering.

I really just can't say enough about this book. It's required reading. If you're responsible for code that runs on networked production systems, failing to read this book should be a fireable off
Rod Hilton
Sep 26, 2008 rated it it was amazing
You're wasting time reading this review, you could be reading this book instead.

Release It! is one of the most important books I think programmers can read, easily as important as the oft-cited classics like The Pragmatic Programmer or the GoF book. Release It! isn't about writing super-spiffy code, or object-oriented design, but it should drastically affect how professional programmers write their code. It focuses on what engineers need to do to get their software into a state where it can actu
Tom Purl
Apr 09, 2010 rated it it was amazing
I need to start by saying that this is one of the best technical books I have ever read. To me, it's easily as enjoyable and useful as Code Complete, The Pragmatic Programmer, or The Mythical Man Month. If you're a sysadmin, an architect, or a developer that works with medium-to-large-sized systems, then do the following:

1. Stop reading this post
2. Order this book from your library or buy it from The Pragmatic Programmer's web site
3. Owe me a pint :D

What The Book Is Really About

Actually, there
Emre Sevinç
Jun 24, 2020 rated it it was amazing  ·  review of another edition
If you're in the business of designing, building, and operating complex and distributed software systems that serve online customers via web and mobile interfaces, systems that span many different technological components and have strict operational constraints, systems that might be stressed because of unpredictable and sometimes massive spikes in online requests, then this book is very good and highly recommended: it presents a no-nonsense overall approach.

But make no mistake, this is not a pr
Michael Koltsov
May 14, 2017 rated it it was amazing
There's a relatively short list of books I would like to keep on my desk. Most often those books are references and a composition of famous quotes. After I've read this chap I'd like to have it on my work desk at any moment.

This book is a perfect mix of lots of useful technical insights, practices and recommendations got from the author's hard-earned experience combined with some of the soft-skills you need to make your software and its maintenance (which as the author states costs more than the
Alexander Yakushev
A must-read for every software engineer who builds complex systems.
Feb 02, 2021 rated it it was amazing
While it may not be exactly about how you release software, it definitely encompasses it. This book will teach you about operation, scale and extending and future proofing your software through hysterical anecdotes and hair-pulling war stories, and you will be a better professional for it.

I was initially a little taken aback because I was expecting the book to have more details about how you prep for a release, how you come up with a plan, your checklist if you will. But it is more about operat
Mar 01, 2017 rated it liked it
It's on overview of how systems break in production and how to avoid it. The author manages to take a pretty dry subject and produce a book that is very easy to read.

Now, it's pretty dated in a few places. It's from 2007, when the term DevOps wasn't even widely used yet. At the same time it's interesting to see how a lot of it still holds.

There are too many references to JVM-speficic issues. I don't think this ruins the experience for readers working outside the JVM, but it's strange seeing cas
Sebastian Gebski
May 16, 2014 rated it really liked it
To be honest, I've got something different than expected. What I was looking for was another 'Continuous Delivery' - a book about modern practices of shortening the delivery cycle, filled with examples / cases / ideas.

What this book is actually about is the overall quality of software products (looked at from very various perspectives) and how do different types of flaws impact the product / service in the end. As you can see, this is a far wider (& more generic) topic - if this is what you're l
Sergey Shishkin
Sep 30, 2011 rated it it was amazing
This book is a battle proven must read for any software engineer. Even after 7 years since the book has been published, pretty much every advice in it remains valid and relevant. The idea of the operations database has found market confirmation in products like Splunk. The Curcuit Breaker pattern has ever since been implemented numerous times in various OSS libraries.

A seasoned developer would have probably been learned some of the advice the hard way. Nonetheless I've picked up a lot of wisdom
Simon Eskildsen
Jan 01, 2015 rated it it was amazing
This book is an incredible introduction to creating and maintaining resilient web applications in realistic, chaotic environments. This book has changed how I approach development more than any other. Every developer with something in production should read it.
Felipe Gonçalves Marques
Feb 21, 2021 rated it it was amazing
This book captures the essence of developing software that is not very common in other types of books and programming classes.

Software is not just about creating code, it is about releasing it, operating it, and administering the system in production. Once this is understood, the way someone develops software changes drastically. Compatibility, monitoring, observability, etc start to become part of the design and we start to embrace change and adaptability.

This book gets into the specificity of
Zbyszek Sokolowski
Great book showing different aspects and clues of delivering software to production. Many software architects are "short sighted" and thinks about make a software which passes unit/integration tests and are failing shortly after release books describes such cases shows good approaches and different ways to deal with the problem and testing like chaos monkey.


Armed with a thread dump, the application is an open book, if you know how to read it. You can deduce a great deal about applications
The original edition of this book introduced me to stability patterns and their evil twins, stability antipatterns. I've referenced its terminology countless times since reading it, especially Steady State, Circuit Breaker, and Fail Fast. I always include this on my list when newer developers ask what they should read. It's chock full of wisdom about distributed systems that no one bothers to teach you in school. The techniques here make the difference between code that will topple over at the s ...more
Enzo Altamiranda
A stellar career in software engineering with all its hard-earned lessons packed into a single, easy-to-digest book. Release It! Is an essentially practical book that stems from the author's perceived lack of focus on developing software so that it runs in a production environments.

What would these kind of systems with a focus for real-world use look like? He starts by outlining stability anti-patterns. These are bad practices often found in the design of systems which render it more fragile, a
James Healy
Nov 03, 2015 rated it it was amazing  ·  review of another edition
This book radically influenced the way I build and deploy software.

It's a whirlwind tour through designing code that behaves well in production, the many ways interaction between multiple systems can fail, deployment styles that avoid scheduled downtime, and case studies to demonstrate the surprises that happen in the real world.

For those new developing and deploying production software the pace might be hard to follow, but those with a bit of experience under their belt will find this triggers
Sergey Teplyakov
Nov 07, 2016 rated it really liked it
I've been working on project that heavily used clouds and high availability for relatively short period of time but even that experience helped me to appreciate this book.

The book predates all the dev-ops hype, but still gives you tons of suggestions how to build a robust, scalable and easy-to-understand-when-something-goes-wrong application: think about failure, every possible component WILL fail in production. Every possible 'joint' like external system interaction will be broken. Every possib
Aug 24, 2013 rated it really liked it
Even almost seven years after publishing the book is a source of inspiration in designing production friendly software. I wish i could read the book three years ago. It would safe few sleepless nights to me and my colleagues. The book would deserve to being extend about e.g. Cloud, Software As A Service and even DevOps since they are key change drivers in release/deployment process nowadays. Anyway worth reading and thumbs up.
Andreea Ratiu
Sep 02, 2014 rated it really liked it
You can tell from the first use case the writer worked with big websites and using Java. Still, the book is full of useful advice on how to design software projects in terms in scalability, transparency, adaptability and ease of troubleshoot. I enjoyed the style - the examples are well chosen and the level of details is not to deep, just enough to explain why some decisions are better than the others and how to apply good judgement when needed.
Aug 15, 2015 rated it it was amazing
Shelves: it, worth-re-read
This book is a rare gem. It is full of valuable insights and is written in a very good language. Which makes this book not only valuable source of information but also a pleasure to read.
I would set 10 starts rating out of 5 possible if I could.

Definetely recommend it to any software developer or system engineer.
May 01, 2015 rated it really liked it
Shelves: devops
I thought I'd go for 5 stars while reading most of it. I ended up with four because I found last chapters to be a bit confusing. Anyway the book is full of wisdom and I would argue for calling it a must. ...more
Aug 01, 2020 rated it it was amazing
It's a fantastic book about good software engineering from non-traditional viewpoints.

It takes another approach on good practices of software architecture: it considers more than just classic quality attributes, and it makes you think you to architect your system in a way that's not only reliable and with good quality, but also easy to operate with. Concepts such as evolutionary architecture, adaptable architecture are reivewed throughout the chapters on the last section. In particular I enjoyed
This was a discussion book at my current company. As a starting point for conversation, it worked well enough. It definitely had some challenges. Writing a software related book almost implies specific technologies. But specifying these technologies almost immediately makes the book out of date, as in this one. But only dealing in concepts makes the book impenetrable. But just rambling your way through chapters just makes it annoying. This book was uneven, but it championed better logging and me ...more
Vlad Romanenko
May 01, 2020 rated it really liked it
Shelves: tech
Very good collection of ideas on how to build software that is ready for production.
The book is showing it's age but I still find it very useful. Looking forward to reading 2nd edition.
Jelena K
Oct 02, 2017 rated it it was amazing
Shelves: safaribooks
Perfect reading! Can't wait for the updated version of this book. ...more
Feb 13, 2021 rated it it was amazing
This is the book I wish I'd read before starting my career as a software engineer. University taught me how to write and debug code, but didn't teach me anything about managing programs in production or writing reliable distributed systems that can gracefully handle the chaos of a real-world network.

This book does a great job of explaining the problems you face running code in the real, high-scale world, walking you through war stories and asking how outages could have been prevented. Then expl
Kristjan Wager
If you are in the business of making software systems, odds are that you might have heard about Nygard's book. People have raved about it since it was published in 2007.

That being the case, it had been on my to-read list for a while, but without any urgency. Then I went a conference where I heard two sessions with Michael Nygard presenting his ideas. After that, I knew I had to get hold of the book straight away.

Release It! is something as rare as a book which is groundbreaking while stating the
Ryszard G
Sep 02, 2019 rated it liked it
I'd say this book was just average to me, but there's a reason behind it, which results from already adopted ways of dealing with software taken from a company I currently work for. But let's start from the beginning.

I still believe the book contains lots of useful information, but they are rather generic, you won't find any real code examples, information about edge cases and so on. I was aware of that prior to buying this position, but I've got a feeling that many information are repeated over
Nov 30, 2012 rated it it was amazing
This book is fantastic.

Let's be frank: I'm biased, because the author is a friend and colleague, and I know some of the stories he tells from personal experience (I'm even in one of them, anonymously).

Nygard writes very well, taking complex concepts and breaking them down into their components, and leaving the reader with essential takeaways of the patterns that create problems and the patterns that can prevent them. The term is never used in this book, but the concept of DevOps underlies the
May 13, 2008 rated it really liked it
Shelves: programming
I was pretty sure I'd like it when, early on, I came across the following quote:

"...sites are now expected to be available 24 by 7 by 365." Footnote: "That phrase has always bothered me. As an engineer, I expect it to either be '24 by 365' or '24 by 7 by 52.'"

This book has a lot of good information on building web applications that can withstand very high load. It is well-written, and he does a very good job of explaining the reasons why different approaches are particularly good or bad.

I have n
« previous 1 3 4 5 6 7 next »
There are no discussion topics on this book yet. Be the first to start one »

Readers also enjoyed

  • Building Microservices: Designing Fine-Grained Systems
  • Designing Data-Intensive Applications
  • Domain-Driven Design: Tackling Complexity in the Heart of Software
  • Refactoring: Improving the Design of Existing Code
  • Design Patterns: Elements of Reusable Object-Oriented Software
  • Working Effectively with Legacy Code
  • Test-Driven Development: By Example
  • Accelerate: Building and Scaling High-Performing Technology Organizations
  • The Pragmatic Programmer: From Journeyman to Master
  • Clean Code: A Handbook of Agile Software Craftsmanship
  • Clean Architecture
  • The Mythical Man-Month: Essays on Software Engineering
  • Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation
  • The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations
  • Growing Object-Oriented Software, Guided by Tests
  • Effective Java
  • Monolith to Microservices: Sustaining Productivity While Detangling the System
  • Code Complete
See similar books…

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »

News & Interviews

Believe it or not, we're halfway through 2021! As is our tradition, this is the time when the Goodreads editorial team burrows into our data to...
9 likes · 1 comments
“Software design as taught today is terribly incomplete. It talks only about what systems should do. It doesn’t address the converse—things systems should not do. They should not crash, hang, lose data, violate privacy, lose money, destroy your company, or kill your customers.” 5 likes
“Most testers I’ve known are perverse enough that if you tell them the “happy path” through the application, that’s the last thing they’ll do. It should be the same with load testing.” 2 likes
More quotes…