Customer Reviews


21 Reviews
5 star:
 (15)
4 star:
 (5)
3 star:
 (1)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 

The most helpful favorable review
The most helpful critical review


20 of 20 people found the following review helpful
4.0 out of 5 stars Superb intro to enterprise web applications; a little light on Rails
Dan Chak has written a really excellent introduction to enterprise web application architecture, and a worthy candidate for your technical bookshelf.

Calling it "Enterprise Rails" is a bit misleading, though. Rails only makes fleeting appearances. There's a great introduction to Rails plugin writing, which rightfully urges developers to move any decorator code...
Published on April 6, 2009 by Scott Burton

versus
1 of 3 people found the following review helpful
3.0 out of 5 stars Needs some updates and title change
The author see's the sql database as the center and stronghold of his application. So the pages 40-180 tell's you, how to normalize you'r db, use constraint's to enforce validations and use other low level db features. I think this arguable latest when NoSQL databases come to play. Like uncle bob says the database is a detail.

Next come's the interessting part...
Published 13 months ago by Dieter Späth


‹ Previous | 1 2 3 | Next ›
Most Helpful First | Newest First

20 of 20 people found the following review helpful
4.0 out of 5 stars Superb intro to enterprise web applications; a little light on Rails, April 6, 2009
By 
Scott Burton (Los Angeles, CA USA) - See all my reviews
(REAL NAME)   
Verified Purchase(What's this?)
This review is from: Enterprise Rails (Paperback)
Dan Chak has written a really excellent introduction to enterprise web application architecture, and a worthy candidate for your technical bookshelf.

Calling it "Enterprise Rails" is a bit misleading, though. Rails only makes fleeting appearances. There's a great introduction to Rails plugin writing, which rightfully urges developers to move any decorator code to plugin modules. He talks a little about segmenting class files along Physical, Logical and Service boundaries, the point of which I have yet to understand completely. And there's a chapter on pushing Rails' application-layer polymorphism down to the data layer, which is good advice, but more on that later.

The bulk of Enterprise Rails is devoted to building a solid data layer. Again, good advice. The Rails team decided that referential integrity and validation belongs in the application layer, which Chak contends is dangerous (and I believe him). However, this is where things start to get a little hairy - enforcing referential integrity and validation in the data layer requires an early and continued adherence to SQL, and Chak makes it clear that any old SQL won't do: it's PostgreSQL or nothing.

This makes fully half of the book a dissertation on SQL domain description language from the Postgre perspective, domain data, third normal form and other data layer topics. I have greatly enjoyed the introduction to Postgres DDL, but it wasn't exactly what I expected from a Rails book.

The last few chapters are mostly about Service Oriented Architecture (which I suspect is why most people buy this book) and caching. Chak shows why he's an expert in enterprise software architecture here. But again, he takes a decidedly anti-Rails approach, emphasizing ActionWebService and XML-RPC. This is not without reason - nearly every language has an XML-RPC library. But ActionWebService, as Chak notes, isn't part of core Rails any longer.

REST is quickly reviewed, then mostly dismissed. There's a cursory example of a RESTful service. ActiveResource, Rails' useful core module for REST-oriented SOA, is never mentioned.

Pretty much every time Rails comes up in Enterprise Rails (which, as we've seen, isn't often), it's an opportunity for Chak to take it down a peg. Well, Rails deserves it. But I think that slapping the word "Rails" on the book cover is has more to do with marketing than anything else. This is really a tale about data modeling for the enterprise, with an emphasis on Postgre, told by an expert.

I'd say that this is required reading for enterprise developers, but don't take the "Rails" part of the title too seriously.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 8 people found the following review helpful
4.0 out of 5 stars Not Your Typical Rails Book, December 18, 2008
By 
Larry (Somerville, MA) - See all my reviews
This review is from: Enterprise Rails (Paperback)
Dan Chak is obviously one smart guy, and I agree with the other reviewers in that this book provides a lot of information not found in any other Rails books.

I have neither the advantage nor experience of working on a large, complex site like Amazon (where Dan worked), so for all I know maybe all of his ideas border on necessity for a site of that complexity. But there does seem to be a lot of straying from the normal philosophies espoused in virtually every other Rails book.

For example, he eschews migrations and instead does all schema manipulation via SQL DDL statements. And choosing PostgreSQL over MySQL means that on more than one occasion MySQL users are left trying to figure out how to accomplish what he has just covered.

None of which is bad; heck, Rails is Latin for "opinionated", right? But if you're in a fairly small shop working on non-Amazon-size websites (which most of them are), I question how many of these fairly complex strategies will be implemented given the perpetual "behind schedule" state we all seem to be in most of the time, not to mention the pressures of "getting something out the door" as soon as possible.

Regarding this issue, I think he himself put it best during his discussion of REST vs. XML-RPC vs. SOAP: "... we must remind ourselves that in the enterprise practicality is at least as important as purity." (Ada, anyone?)

While we all know that "pay me now or pay me later" and "an ounce of prevention is worth a pound of cure" are absolute truths, the real world often dictates we ditch these proverbs.

Regardless, I think this book is a must-read for serious Rails developers. Dan raises a heckuva lot of good points that you won't find anywhere else.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 3 people found the following review helpful
5.0 out of 5 stars Required reading for any rails developer, February 5, 2010
By 
Tom (Seattle, WA) - See all my reviews
Verified Purchase(What's this?)
This review is from: Enterprise Rails (Paperback)
The author provides an important perspective that can easily be forgotten in the rails community. You may not put into practice everything you find in the book but it is an invaluable, intelligent description of design strategies that need to be re-aquired in the rails community if it wants to survive beyond "this is a really cool language!" ;)
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful
5.0 out of 5 stars Awesomely useful book, August 19, 2010
By 
Amazon Customer (Baltimore, MD USA) - See all my reviews
Verified Purchase(What's this?)
This review is from: Enterprise Rails (Kindle Edition)
I just finished Enterprise Rails and want to tell you what a capital, outstanding, helpful book it is. I was sad when I finished it!

I've been building a startup site of moderate size, not even something you'd call enterprise yet, for the last 3 years. When I started I was just the sort of naive and overconfident Rails guy this book is aimed at. The author has been through all the scaling issues involved with running a popular website and the book is chock full of useful advice and examples. I wish I had read it way back when I started as I have made many of the mistakes he warns about and had to learn the hard way. Dan shows you how to avoid painting yourself in a corner with overly optimistic/naive design choices up front. He shows you how to design things properly from the start, with a special emphasis on using the native features of a relational database instead of doing things at the application level, and how to keep things organized. I love love LOVED this book.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful
5.0 out of 5 stars Must read before you develop enterprise application., October 12, 2009
This review is from: Enterprise Rails (Paperback)
It addressed the real world problems of Rails. It's emphasized the organization and code sharing when you put the Plugin chapter at the very beginning of the book. I got very frustrated on most of the Rails book since they seem to threat database as annoyance and just focus on quick demo app w/o thought of real world apps. If you finish the book Agile Web Development with Rails book, this is the 2nd one to read. It will saves you a lot of trail and error when you go through the large scale application.

You are going to see a lot of advance database stuff here (Postgres) and it will convince you why you should take advantage of those features.

I wish the book has more chapters for "View", authentication and authorization.

Also, having examples with MySQL5 trigger and store proedure would not hurt either.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful
5.0 out of 5 stars Still unique, still deeply relevant and important, November 2, 2013
By 
This review is from: Enterprise Rails (Paperback)
Many of the other reviews have sung this book's praises, so I will only add that as of 11/2/2013, this book is still deeply relevant and is still unique. Its primary value is to remind us Rails and Rubists, who look down on PHP and tend to think that we live in a city upon the hill, that convention over configuration is not enough to make a rock solid enterprise web app. In fact, you must delve into SQL, you must twist Rails' arm a bit to get your namespaces implemented correctly, etc. You will still be able to apply 90%, if not 100%, of the tutorials and lessons in this book in Rails 4.0 with Ruby 2.0.

The most helpful part for me was the four chapters devoted to database design and theory, especially Dan's introduction to third normal form. I suspect that new readers will find his advice to eschew Ruby migrations in favor of straight SQL to be the most controversial aspect of this book, but his argument is solid.

As another reader mentioned, there are a few typos, but none that get in the way of understanding the material. The book's most important "shortcoming" in 2013 is that Rails' plugin architecture has changed dramatically, and almost no one seems to be using the old Rails 2-style plugins discussed in the book. The community has instead moved toward gems and mountable engines, and a lot of gems have since been created that address some of Rails' problems. I actually created one myself (enterprise_mti, search on GitHub or download with RubyGems) for implementing multiple table inheritance using the principles and code found in this book. (Also, check out SchemaPlus, SchemaValidations, and SchemaAssociations for implementing database referential integrity in migrations.)

Now, I put "shortcoming" in quotes because really this represents an opportunity for the author. I would love to read a second edition of this book with updates on gems and more best practices!

BTW: In terms of skill level, I would call myself an intermediate Ruby programmer and intermediate at Rails, as well. Be sure that your fundamentals are solid before starting. The book's code is not difficult to understand, but there's no filler sections like "Hashes: a recap" in here. I would recommend having a project or two under your belt before starting this one to fully appreciate it.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful
4.0 out of 5 stars Nothing Is timeless, November 8, 2011
This review is from: Enterprise Rails (Paperback)
My edition was written in 2008, and lots of things in Rails have moved on since then. However, this book is still a great read for the many other aspects that are rarely addressed in rails tutorials. Dan has a good writing style and clear experience in a real business.

I smiled, learned and even laughed as I read his comments on the data layer and the need to use protection wherever possible. His way of testing data exceptions and validations seemed neater than anything else I have ever seen. Of course, many people may think that it is overkill, but you could say the same about seat belts and crash helmets too. The problem is never the driver, it is the other drivers :-)

It is still worth buying, but also worth updating.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5.0 out of 5 stars Get this book if you are serious about rails., April 5, 2009
By 
farout (Boston, MA) - See all my reviews
This review is from: Enterprise Rails (Paperback)
This is my first ever review. Oddly none of the other technical books (over 300) that I read ever compelled me write before.

As Dan Chak recommends, if you are new to rails, first read Agile Development for Rails, then start with Enterprise Rails. Every rails developer needs to read this book.

You are creating an application that you *hope* will actually grow in demand. Isn't that what we are all looking to do in the end - make a hot app? Why not be pragmatic by laying the foundation of robustness, scalability with that in mind in the first place?

I loved the sections on network design, database design (of course, ex-DBA), and services (I know so little about SOA).

Having read 9 other rails books, I was nervous that rails community ignored that some areas completely. Despite its principles, it was intend on re-inventing the wheel. It made me feel like Dorothy in the Oz with munchkins shouting how great Rails is no matter the issue. That made me wonder if rails community was really open and flexible as claimed.

The other books were good, but you need more than books touting rails' magic and coolness - sweet/success/awesome. Enterprise Rails is excellent in terms of readability, examples, and pragmatic practical advice. Yes - it is sweet and awesome too! There now I can be a cheerleader too.

Reading reviews and Chak's articles, I was worried that the book would be full of theory and dry. Instead it covers just the right about of theory supported with insightful examples and exercises to confirm that you really understood the problem and solution.

Thank you Dan for helping me understand rails better and getting rid of that awful in queasy feeling each time I was writing a rail app.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5.0 out of 5 stars A diamond in the rough......, January 4, 2009
By 
sibolek "Polymath" (New York City, USA) - See all my reviews
Verified Purchase(What's this?)
This review is from: Enterprise Rails (Paperback)
First off let me say that before the publication of this book, the material available for Rails developers has been mediocre at best. Most titles feature either rudimentary examples that bear no relation to real world scenarios or, even worse, a convoluted attempt to show how ruby can be used to construct DSLs. DHH book is by far the best but consistently out-dated to the extent that the tutorial presented in the first part won't work on the latest Rails release.

Enter Chak's refreshing take on how Rails is used in the real-world. Instead of rehashing the same tired examples, Chak actually discusses what I would characterise as a "best practice" approach to building enterprise Rails apps. This book does for Rails what Shlossnagle's Scalable Internet Architectures does for enterprise web infrastructures. That is it presents an in-depth analysis of how Rails is implemented in the real world. Just some examples:

Chak discusses why postgres is a better open source solution than mysql for heavily trafficed sites.

A useful discussion of how to structure your Rails development and production environments and how to correctly implement namespaces and plugins.

How to utilize SOA and Restful designs.

All in all this is an excellent book. While not for the beginner it is definitely the book to read after you've developed an app or two. It's database centric approach makes it unique among Rails offerings and will bring you up to speed on the CORRECT way to design and implement databases for any development project.

This book sorely shows how inadequate the Rails literature has been up to now.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4.0 out of 5 stars Thought provoking, February 20, 2009
By 
This review is from: Enterprise Rails (Paperback)
Enterprise Rails is a much needed addition to the space. This book became required reading for our development staff while we pondered over our potential product architecture.

While we did not agree with all of the book's conclusions, the book does excel in raising and explaining, in detail, concepts typically glossed over in other Rails texts. Dan Chak's writing style is very readable and his examples are clear and well documented. This book is guaranteed to make you revisit some of your design assumptions.

My only real complaint was that the additional development pain of adopting some of the recommended approaches (such as organization of models into namespaces, the usage of natural primary keys and composite primary keys) is not adequately spelled out. Even with available plugins, some of these approaches go far enough against the grain of what the Rails framework comfortably supports and expects, that adopting them can lead to some frustrating days. Although, one could argue this is more a failing of Rails and not of the book.

I also feel ActiveResource (faults and all) is not given it's appropriate due and question whether anyone would really want to choose XML-RPC, and the no-longer supported ActionWebService for a Rails-based SOA these days.

As we proceed deeper into our product development cycle, I'm sure we will revisit the book to apply more of the concepts within. Highly recommended.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


‹ Previous | 1 2 3 | Next ›
Most Helpful First | Newest First

Details

Enterprise Rails
Enterprise Rails by Dan Chak (Paperback - November 3, 2008)
$44.99 $35.29
In Stock
Add to cart Add to wishlist
Search these reviews only
Send us feedback How can we make Amazon Customer Reviews better for you? Let us know here.