Programming Books C Java PHP Python Learn more Browse Programming Books
Release It!: Design and Deploy Production-Ready Software and over one million other books are available for Amazon Kindle. Learn more
Buy New
$23.15
Qty:1
  • List Price: $34.95
  • Save: $11.80 (34%)
FREE Shipping on orders over $35.
In Stock.
Ships from and sold by Amazon.com.
Gift-wrap available.
Add to Cart
Want it tomorrow, April 22? Order within and choose One-Day Shipping at checkout. Details
Trade in your item
Get a $3.71
Gift Card.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

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

ISBN-13: 978-0978739218 ISBN-10: 0978739213 Edition: 1st

See all 2 formats and editions Hide other formats and editions
Amazon Price New from Used from Collectible from
Kindle
"Please retry"
Paperback
"Please retry"
$23.15
$19.15 $10.02

Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student



Frequently Bought Together

Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers) + Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation (Addison-Wesley Signature Series (Fowler)) + The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win
Price for all three: $81.41

Buy the selected items together

NO_CONTENT_IN_FEATURE

Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Series: Pragmatic Programmers
  • Paperback: 326 pages
  • Publisher: Pragmatic Bookshelf; 1 edition (April 6, 2007)
  • Language: English
  • ISBN-10: 0978739213
  • ISBN-13: 978-0978739218
  • Product Dimensions: 9.2 x 7.5 x 0.7 inches
  • Shipping Weight: 1.7 pounds (View shipping rates and policies)
  • Average Customer Review: 4.7 out of 5 stars  See all reviews (40 customer reviews)
  • Amazon Best Sellers Rank: #114,734 in Books (See Top 100 in Books)

Editorial Reviews

Review

"Agile development emphasizes delivering production-ready code every iteration. This book finally lays out exactly what this really means for critical systems today. You have a winner here."

—Tom Poppendieck, Poppendieck LLC.

"It’s brilliant. Absolutely awesome. This book would’ve saved [Really Big Company] hundreds of thousands, if not millions, of dollars in a recent release."

—Jared Richardson, Agile Artisans, Inc.

"Beware! This excellent package of experience, insights, and patterns has the potential to highlight all the mistakes you didn’t know you have already made. Rejoice! Michael gives you recipes of how you redeem yourself right now. An invaluable addition to your Pragmatic bookshelf."

—Arun Batchu, Enterprise Architect, netrii LLC

About the Author

Michael Nygard has been a professional programmer and architect for over 15 years. He has delivered systems to the U. S. Government, the military, banking, finance, agriculture, and retail industries. Michael has written numerous articles and editorials, spoken at Comdex, and coauthored one of the earliest Java books. Michael has designed, built, and engineered systems for B2B exchanges, retail commerce sites, travel and leisure sites, an information brokerage, and web applications for the intelligence community. Among other exciting projects in his position as Director of Engineering for Totality Corporation, Michael led the operations team through the launch of a tier 1 retail site. His experience with the birth and infancy of this retail platform gives him a unique perspective on building software for high performance and high reliability in the face of an actively hostile environment.

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

4.7 out of 5 stars
5 star
29
4 star
10
3 star
1
2 star
0
1 star
0
See all 40 customer reviews
I highly recommend this book as a guide to working in the real world of releasing software.
Amazon Customer
The writing style's very nice, his writing voice is light and concise, and the summary bullets in each section ("Remember This") are of great value.
James Holmes
Nygard talks about all the things that can and will go wrong in the finely crafted software we were sure was ready for production.
Jason

Most Helpful Customer Reviews

22 of 23 people found the following review helpful By James Holmes on July 3, 2007
Format: Paperback
The subtitle of this book might as well be Architecture and Design for the Paranoiac. The book lays out some critical aspects to creating and rolling out stable software systems. It's directed to those working in the enterprise arena and need the utmost from stability, capacity, and overall design. Nygard's definition of "enterprise" is somewhat broad in that he considers "enterprise" to be any system providing mission-critical support to a business. Regardless of how you define your particular software, I'm sure you'll find something useful in this book.

Nygard presents the book from an anti-pattern/pattern approach: he uses case studies to illustrate how critical errors in design or implementation (anti-patterns) have caused disasterous outages. He then moves on to show how application of solid design patterns could have avoided the problems. He also spends some time going in to detail on how some of the outages have happened, including brief discussions on network packet captures and decompiling third party drivers.

There are a lot of solid fundamentals in the book: dealing with exceptions at system integration points, thread synchronization, avoid rolling your own primative feature libraries such as connection pools, and make sure to test third-party libraries which play critical roles. The general approach of discussing anti-patterns followed by patterns is also a nice way of putting forth the material.

There are a lot of more complex bits covered as well, such as thinking ahead on how you'll deal with bots and crawlers, avoiding AJAX overkill, designing ahead for and using session. I also liked that Nygard talks about the importance of involving the customer in decisions on thresholds and other critical boundaries.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
8 of 9 people found the following review helpful By Larry MacNeill on May 4, 2007
Format: Paperback
This book is intended for architects, designers, and developers of software on which a business depends and whose failure costs money. The tone is informal and the style is easily read. Some architects may wish for more rigor and consider it too easily read but they might still benefit because it contains quite a bit of wisdom earned by experience.

The book discusses issues of uptime, failure, and maintainability with examples drawn from the author's experience and from other industries. Making the point from more than one point of view serves to drive it home.

This is not a programming book but the illumination of a problem is often improved by a snippet of code. The code is Java and is easily read by anyone familiar with programming. Having some familiarity with multi-threaded programming in following the explanations and their examples will make them a little easier to read but is not necessary to get the point. (Even if you truly have no knowledge of Java, looking up JDBC, JVM, EJB, JSP, J2EE, log4j, and servelet will not be much effort because not much knowledge of them is required.) The examples emphasize web applications because, I suppose, that's the environment most vulnerable to huge capacity requirements, more complex environments, more numerous causes of failure, and failures that are more visible.

The author's analysis of the problem space has two dimensions --- stability and capacity --- in which a given enterprise system can be located. The analysis also has two categories: general design and operations.

Stability and Capacity

A given coordinate, on the stability axis, for example, implies the presence and absence of features that improve and diminish stability.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
5 of 5 people found the following review helpful By Christophe Addinquy on July 6, 2007
Format: Paperback
Once in a year, I tag a book as "book of the year", the best book I read during the year. 2007 is not over, but this my "2007 book of the year", I know that.
Frankly, I just bough this book because it's published by the "pragmatic programmers" and I trust these guys. The title is not even appealing. I knew quickly that I will discover many things.
For a long time, I wonder what to do to build up a system which is fine in production, but I didn't understand quite right what was needed (I know now that I really misunderstood the problem). The first thing that came to my mind was to make the software strong (a good thing to do by the way) ; the second thing that came to my mind was to make it really, really strong (which starts to be stupid).
Michael helps us to understand that systems fail anyway. But it should fail fast (and can often fail only partially), it must facilitate diagnosis and quick restart. And design must deal with that. But the author doesn't stay in general considerations, he points out specific patterns and antipatterns for the systems design, by means of stability and capacity. The vast majority of article tend to exposes how new technologies make the life so easy. The author revisit technologies and technical choices throught the production glasses: why AJAX should be considered with care, why we must think about pre-computed pages instead of ynamic composition in some cases, why caches is not a one-size-fits-all answer and so on. Another important point well illustrated: a system is software + hardware and the architecture must be though with physical deployment and hardware architecture in mind. Promotion of full independance of the architecture over the deployment is plain wrong. There are so many subjects tackled her, I can't speak about them all, sorry.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Recent Customer Reviews

Search
ARRAY(0x9f16f42c)