21 of 23 people found the following review helpful:
3.0 out of 5 stars
Great resource for rails newbies, but with one glaring omission, October 16, 2010
This review is from: Beginning Rails 3 (Expert's Voice in Web Development) (Paperback)
Every Rails books needs to set the stage, to "explain the rules" so to speak, since using Rails is quite different from other "traditional" approaches of web development (LAMP, etc.). Beginning Rails 3 sets the stage nicely, and continues to deliver throughout the entire text - at least, until it comes to getting your Rails app on the web.
The first three chapters follow the typical pattern of a Rails book, explaining the origins of Rails, why it's good, how to install it, and then setting up a very simple web app so the reader can see how easy it is to get Rails up and running. One thing I liked in particular was in Chapter 1, where the authors stressed the importance of being open to the "Rails way" of doing things. This was a nice touch, as there's a good chance the "Rails way" is different from what the reader is expecting, especially if they have some experience developing with PHP.
From there the authors continue to get more in-depth on the various aspects of Rails, focusing on Active Record (the database aspect of a web app) and Active Pack (the "bridge" between the user interface and the database) for the first half of the book. Readers who prefer the programming aspect of development will enjoy these chapters, though they do get a bit dry to read in some places, with some sections (throughout the book actually) being virtually nothing but code for several pages.
One key thing to note at this point is that beginning with version 3, Rails is much more modular than before. This makes it much easier to "take out" things you don't need, or switch certain portions for something else (like using HAML for building your HTML templates instead of eRB, or DataMapper in place of ActiveRecord). It would have been great to see examples of how to do this, rather than just mentioning it's possible, but then that might push this beyond a "beginner's" book.
Web designers more interested in the user interface aspects of a web app will enjoy Chapter 8, which goes over Rails' Ajax support. I would have preferred this chapter to be a bit more in-depth, but I like the fact that the authors covered how to switch from the built-in Prototype library to jQuery, which is more common and better suited (in my opinion) for Rails development.
Chapter 9, "Sending and Receiving E-Mail" was a welcome surprise. In previous Rails books I've read (
Simply Rails 2.0 and
Foundation Rails 2) I don't remember this being mentioned - but it's such a common requirement for web apps, that almost every Rails developer needs to learn how to do this as some point.
It seems that many Rails newbies (like myself) are also somewhat new to programming in general, and we often don't quite grasp the importance of testing a web app to make sure it works properly and can handle errors and unforeseen difficulties with grace. Chapter 10 stresses the importance of testing a Rails app, and points out that testing is something you're probably already doing to some degree (though perhaps just by hand on an "ad-hoc" basis).
Rails has a very systematic way of testing, and this was a good (though hardly exciting) overview of how to test the various aspects of the web app you've been building (if you've been following along and typing in code as you've been reading - you can also download the code rather than type it all out, if you prefer, and links are provided at the beginning of each chapter).
I was a bit surprised that Internationalization was covered in this book, as it's something most people (in English-speaking countries at any rate) don't usually think about until after their app has been deployed. Fortunately, an entire chapter is devoted to Internationalization, and this was a really nice touch.
It's a very rare Rails developer that doesn't, at some point, want to add some sort of plugin to extend the functionality of the web app they're building. Chapter 12 goes over how to do this, even covering how to create and add your own plugin to Rails.
Probably my biggest expectation for this book was Chapter 13, which goes over deploying a Rails app to the web. It's just not simply uploading the finished files to a server (I wish!), and I have yet to come across a book that really nails this well, so that it's easy to understand for "traditional" web designers. Unfortunately, this chapter is lacking. It does cover Capistrano and Phusion Passenger, which really help ease the deployment of a Rails app to the web, but instead of also explaining a bit about server configuration (for those who want or have to do it themselves) there is instead a section preaching the benefits of outsourcing this to your hosting company, recommending you stay away from cheap Rails hosts (which I agree with, to a point) and instead use an experienced Rails-specific host.
I understand the reasons behind the authors' choice in this matter, as it's simply too much to expect new Rails developers to become experts in server configuration, but for companies or independent developers on a shoestring budget, high quality (read "expensive" here) Rails hosts may not be an option. I personally wanted to know how to do this, even if I decide not to do so with a real web app. As such, having more in-depth information about Rails deployment is, in my mind, necessary in a book like this (even if the reader decides not to do it themselves). This is a serious omission, in my opinion, and mars an otherwise great book.
Beginning Rails 3 is a great resource for those who are new the Rails, covering most of the key aspects of Rails 3 web development. Unfortunately, it falls short when it comes to actually explaining how to get your Rails app out into the world.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
9 of 10 people found the following review helpful:
5.0 out of 5 stars
A good balance of learning and experience., October 5, 2010
This review is from: Beginning Rails 3 (Expert's Voice in Web Development) (Paperback)
Beginning Rails 3 is a book that does a great job introducing an aspiring web developer to the world of Ruby on Rails, and the architecture conventions that Rails utilizes. The book is a good size, goes over the 'hows' and 'whys' of the basics, while creating a useful example project.
I work as a Web Designer that is starting to branch into development, and I had some experience with earlier versions of Rails in a couple work environments, but never really caught on to the concept. This book helped clear quite a few things up. Previous "beginner" books I had read didn't explain fully enough, didn't flow well, or were written as what seemed like edited versions of more advanced books. The authors of Beginning Rails 3 do an excellent job of explaining each step. There is a good balance of code entry and explanation, and does not stray from the current topics. The instruction comes across at a decent personal level--as if the authors are there sitting at a table with you over a cup of coffee. Each chapter was also easy to retain in memory. There are also a couple of nice appendices, which give primers for Databases and the Ruby language itself.
The project is a blog, which is quite relevant, and can be utilized once completed. Many Rails books in the past have dealt with projects or examples that are hard to build on once learned, such as a store (without anything to sell), or small examples that can't be built upon. I found the project itself to be a key benefit of this book, and plan on deploying for my own blog once I make a few modifications.
I really enjoyed this book. Lately, it seems like beginner's books are a bit too dumbed down, or are written in an almost juvenile matter. This book was different, and had a very professional approach with true real-world exercises. I recommend this book for anyone who has some knowledge of the field, but needs a firm foundation for getting to the next step.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
4 of 4 people found the following review helpful:
5.0 out of 5 stars
Great start for any person getting into Rails, October 27, 2010
This review is from: Beginning Rails 3 (Expert's Voice in Web Development) (Paperback)
Although my skills are a bit more developed over a novice, there are still some rails topics I get caught up on and have trouble pushing my brain past to get me into the intermediate level. This book cleared up most of my weak areas in my code and even allowed me to add a few golden nuggets to my code that I never would have had otherwise. Ajax for example is a topic in this book that it touches on briefly but is a great start to branching out further into this direction in making your code feel like a legit asynchronous application using jQuery. Also the new action mailer is described in this book which is something I haven't had time to really go over yet and it seems easy enough from the examples. Of course the book goes through just about every aspect of rails that you can get without feeling to overwhelmed and I think most beginners will have a great time learning with this book as its clear and concise.
What I liked most about the book is that it is very descriptive at describing each of the different aspect of rails, which allows you to wrap your head around the assumptions so you are not left wondering why things are the way they are or how they work.
The application you build is a blog application and although its a bit redundant in today's web-based applications, its a concept people understand fairly well and so it makes it easier to digest when going through the examples.
I highly recommend this book to any beginner or intermediate user who is searching for some knowledge in the new Rails 3 world and needs to get up to speed with this fast paced framework. I hope the author comes out with a sequel more geared for intermediate+ users so we can learn to do more customizations, ajaxiness, and get into the meatier stuff that you see in ruby on rails applications today.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No