Have one to sell? Sell yours here
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Agile Web Development with Rails: A Pragmatic Guide (Pragmatic Programmers) [Paperback]

Dave Thomas , David Heinemeier Hansson , Leon Breedt , Mike Clark , Thomas Fuchs , Andrea Schwarz
4.6 out of 5 stars  See all reviews (45 customer reviews)


Available from these sellers.


Free Two-Day Shipping for College Students with Amazon Student

Rent Your Textbooks
Save up to 70% when you rent your textbooks on Amazon. Keep your textbook rentals for a semester and rental return shipping is free.
There is a newer edition of this item:
Agile Web Development with Rails (Pragmatic Programmers) Agile Web Development with Rails (Pragmatic Programmers) 3.5 out of 5 stars (41)
$28.36
In stock but may require an extra 1-2 days to process.

Book Description

August 4, 2005 097669400X 978-0976694007 1

Rails is a full-stack, open source web framework that enables you to create full-featured, sophisticated web-based applications, but with a twist... A full Rails application probably has less total code than the XML you'd need to configure the same application in other frameworks.

With this book you'll learn how to use ActiveRecord to connect business objects and database tables. No more painful object-relational mapping. Just create your business objects and let Rails do the rest. You'll learn how to use the Action Pack framework to route incoming requests and render pages using easy-to-write templates and components. See how to exploit the Rails service frameworks to send emails, implement web services, and create dynamic, user-centric web-pages using built-in Javascript and Ajax support. There are extensive chapters on testing, deployment, and scaling.

You'll see how easy it is to install Rails using your web server of choice (such as Apache or lighttpd) or using its own included web server. You'll be writing applications that work with your favorite database (MySQL, Oracle, Postgres, and more) in no time at all.

You'll create a complete online store application in the extended tutorial section, so you'll see how a full Rails application is developed---iteratively and rapidly.

Rails strives to honor the Pragmatic Programmer's "DRY Principle" by avoiding the extra work of configuration files and code annotations. You can develop in real-time: make a change, and watch it work immediately.

Forget XML. Everything in Rails, from templates to control flow to business logic, is written in Ruby, the language of choice for programmers who like to get the job done well (and leave work on time for a change).

Rails is the framework of choice for the new generation of Web 2.0 developers. Agile Web Development with Rails is the book for that generation, written by Dave Thomas (Pragmatic Programmer and author of Programming Ruby) and David Heinemeier Hansson, who created Rails.



Editorial Reviews

Review

"It's early days for the language so it's no surprise there's only a handful of books out there. Yet it's hard to see why you would need anything more than Agile Web Development with Rails. Programming books, in particular, rarely seem to answer queries straight away, but this one tackles the myths surrounding Rails straight off, and in plain English. But don't panic, it's not a Dummies guide - it will teach you how to use Rails to eliminate tedious web app configuration and, crucially, how to integrate it into AJAX." .NET, December 2005

About the Author

Dave Thomas, as one of the authors of the Agile Manifesto, understands agility. As the author of "Programming Ruby," he understands Ruby. And, as an active Rails developer, he knows Rails.



David Heinemeier Hansson is the creator of the Rails framework.



Clark is a consultant, author, speaker, and programmer. He helps teams build better software faster through his company, Clarkware Consulting, Inc.

Product Details

  • Paperback: 450 pages
  • Publisher: Pragmatic Bookshelf; 1 edition (August 4, 2005)
  • Language: English
  • ISBN-10: 097669400X
  • ISBN-13: 978-0976694007
  • Product Dimensions: 9 x 7.5 x 1 inches
  • Shipping Weight: 1.8 pounds
  • Average Customer Review: 4.6 out of 5 stars  See all reviews (45 customer reviews)
  • Amazon Best Sellers Rank: #641,553 in Books (See Top 100 in Books)

More About the Authors

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

Customer Reviews

Most Helpful Customer Reviews
151 of 157 people found the following review helpful
5.0 out of 5 stars Excellent introduction to a fascinating framework July 13, 2005
Format:Paperback
Ruby on Rails is a pretty young technology. Its first release was midway 2004, and it has been gathering momentum since late 2004. It has yet to see its official 1.0 release. So it is a pleasant surprise that there already is a book available (electronically since June 2005), and that it such a good book!

Why read this book? Since Dave Thomas' credentials as a technical writer are well established (pick up The Pragmatic Programmer if you haven't got it already), this question boils down to: why learn more about Ruby on Rails?

For me, the answer was that I have long been looking for a simpler way to build web-applications. I'm a J2EE developer, and it seemed that every project I joined had a different set of frameworks. All of those frameworks could be configured to work together, and there are even frameworks whose only purpose is to make other frameworks work together. There are tools that generate stubs to wrap frameworks, and frameworks that wrap other frameworks, so that the developer needs not know what the underlying framework is.

Madness.

Rails behaves as if it were one framework. Configuration is simple (no xml) if you need it at all, since the defaults are pretty smart. Writing tests for your model and your controllers is actually easy. The API documentation is very good. Instead of mucking around with frameworks, you find yourself thinking: What do you want to do today?

Drawbacks: Is Ruby on Rails slow? Performance is acceptable, I think, especially considering that web applications are database-bound. Rails also scales well - and anyway, processors are cheap, brains are not.

Is Rails proven technology? Clearly it's not, it's the new kid on the block. More seriously, Rails is still in flux - the core api is still changing, and it could still take some time to settle down. So now is not the time to start huge Rails projects, now is the time to learn rails and build prototypes and small projects.

And with that, this book will be a tremendous help.
Comment | 
Was this review helpful to you?
101 of 104 people found the following review helpful
5.0 out of 5 stars The best way to learn Ruby on Rails August 8, 2005
Format:Paperback
This book was in development through July 2005 and provides a timely introduction to the excellent web framework Ruby on Rails. Rails is a full stack, open-source framework in Ruby (see rubyonrails.com). I can think of no better way of learning Rails than buying this book (and Programming Ruby, "Pickaxe 2", if you are a Ruby newbie) and working through the hands-on bookstore building exercise in a weekend. "Agile" development takes center stage, as you might imagine from the title. Because of the dynamic nature of Ruby and the way Rails extends the core language, Ruby on Rails lets you easily modify, run, and test web apps.

The first part of the book (Chapters 4 to 12) shows how to develop a bookstore app in an iterative fashion. A mock client asks for improvements and the authors show how you build a web app that meets the client's needs. A number of best practices have been distilled from other languages/platforms, and you'll see how they come together coherently in Rails. The Model-View-Controller (MVC) pattern for separating data, presentation, and business logic. Integrated testing. Ways to not repeat yourself across code and configuration files. Active Record pattern for handling data sources. In addition to what's taken from other platforms, the Rails developers extensively use the metaprogramming features of Ruby to wrap these best practice ideas in a nice domain specific language, and this book gives you a good overview of the Rails web app language. "Convention over configuration" is another key to Rails development, and a number of figures show the Rails convention in directory layout, naming, and URL mapping.

Although the book is very accessible to Ruby newbies (in part due to an appendix that provides a quick intro to the language), it assumes some knowledge of core Web technologies. You should be acquainted with HTML and databases (like MySQL). The sweet spot for this book might be PHP, Java, and .NET web programmers. The third part of the book drills down into Rails. You'll learn all about the Active Record object-relational mapping layer, and how easily you can specify relationships, validations, and structures like lists and trees. Other chapters focus on the controller and view portions of the MVC approach. The integrated "AJAX" (asynchronous javascript) support gets a chapter, as do e-mail (Action Mailer) and web service support. The book concludes with a couple of chapters on security and the best ways to deploy and scale your web app.

This book was written in an agile fashion; I can't remember another computer book that was in print a single month after editing was finished. Despite the speed of publishing, the book can't hope to cover all the new developments given the momentum of Rails. What won't be in the book but might be useful to Rails programmers? SwitchTower is a new utility to automate application deployment (among other things), and ActionStep will be a Rails-friendly framework for writing rich GUIs that target the client-side Flash player. But if you want to learn what Tim O'Reilly said might be the "perl of Web 2.0", you should start with "Agile Web Development with Rails" and supplement it liberally with readings off the web.

Highly recommended book. Although this is the first of more than a half-dozen Rails books, it'll be hard to compete with the authors of this book: Dave Thomas, who wrote the preeminent Ruby textbook, and David Heinemeier Hansson, who was the brains behind Rails.
Comment | 
Was this review helpful to you?
16 of 16 people found the following review helpful
5.0 out of 5 stars The real agile way to develop web applications December 28, 2005
By Ugo Cei
Format:Paperback|Amazon Verified Purchase
Rails, or more appropriately Ruby on Rails is the new web application development framework that everyone is so excited of and raving about how it cuts development time by a factor of 10 and does away with the cumbersome XML configuration files that are the hallmark of J2EE.

Being an old Java hand, I wanted to see firsthand if there was some substance beneath all the hype. I was also intrigued by the fact that many other old Java hands whom I respect and admire, like James Duncan Davidson, Elliotte Rusty Harold, Bruce Tate, Graham Glass, and Brian McAllister are now fervent (to different degrees) rubyists and Rails-enthusiasts. If it weren't for them, I would never have undertaken this journey, probably.

But anyway, this is supposed to be a book review, not a chronicle of my ongoing discovery of Rails.

I mostly like using books to discover and learn about new technologies, so it's perfectly natural that I decided to take off with what is considered the book about Rails. And how could it be not, with Rails' creator David Heinemeier Hansson as one of its authors?

It is also the only one published so far but, even though the choice was a bit, uhm ... limited, I wasn't disappointed. The book, as is customary with titles from The Pragmatic Programmers' bookshelf, is very good. It lays down in detail almost everything you need to know to be productive with Rails, save for the language Ruby itself. To be honest, the book includes an appendix introducing the basics of Ruby, but it's just the bare minimum. I suggest getting yourself a good Ruby book (like Programming Ruby, also from The Pragmatic Programmers, which I am currently reading and will review shortly) if you really want to get the most out of Rails.

Another caveat you have to be aware of is that Rails is a quickly moving target. The book covers version 0.13, which was current around mid-2005. There was a 0.14 version after that and we are now at 1.0, since a few weeks ago. However, I didn't find I had much to change while experimenting with Rails following the book. As always with Open Source software, resorting to the mailing lists, forums or the #rubyonrails@freenode.net IRC channel is the best avenue for finding answers to your doubts and asking support questions.

The book is organized in four parts:

Part I introduces the design principles behind Rails, its most important concepts and briefly covers how to get started by installing it and writing your first program. The part about installation is the one that is bound to become quickly obsolete, as new and easier installation methods for the various supported platforms are developed.

Part II dives into Rails by guiding you along the development of a real (albeit much simplified) e-commerce application. I find this approach to be very good and "pragmatic" indeed. Of notable interest is the chapter on testing. It's great to see that providing a good test scaffolding was one of the main design concerns in Rails and not just an afterthought.

Part III goes deeper into Rails and can be used as a reference for its components, like Active Record, Action Controller, and Action View. Bonus chapters on AJAX, Web Services, security, deployment and scaling issues are included here and will make the book even more valuable when you need to deal with "real world" applications.

Part IV contains the appendices, like the above mentioned introduction to Ruby, a reference of configuration parameters (be warned again: these might change), the full source code for all samples (of dubious value, in my opinion), and a list of online resources (once again, a list bound to be more and more incomplete as time passes and the excitement around Rails grows).

Overall, I find the quality of this book to be excellent. It's not thick to the point of being too heavy to carry around in your laptop bag, for those times when you need to peek at it, yet it covers enough of Rails to be considered a complete and authoritative reference. This is probably a testament to Rails' simplicity too.

The writing style is eminently readable. You can read it cover to cover, if you like, without getting bored. The frequent sidebars make it lively without being too distracting. A great amount of care and craftsmanship went into producing this book, and it shows.

Highly recommended!
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars very good
I bought this one with 'Programming Ruby' thinking that I would need both to understand what RoR is all about, but 'Programming Ruby' is still on the shelf and in a few days I was... Read more
Published on January 18, 2007 by carlos
5.0 out of 5 stars Great Book-for all skill levels
It is difficult to write a book that is useful to both first time users and advanced users. I bought this book without ever having used ruby before. Read more
Published on December 25, 2006 by E. Richardson
5.0 out of 5 stars Great intro and approach
The book takes a two-part approach to describing RoR. In the first 8 real chapters (5-12), the Daves use a gradual build-up a storefront application with incremental and... Read more
Published on December 1, 2006 by F. Farzaneh
5.0 out of 5 stars Not dry like your typical programming book
I won't repeat what others have said but the fact that it was a joy to read the book. The writing style was definitely entertaining and informative and for anyone who wants to jump... Read more
Published on November 8, 2006 by damnitjim
5.0 out of 5 stars is the perfect way to start playing with RoR
David Heinemeier and Dave Thomas are the authors of this book. Heinemeier has created the Rails framework. Read more
Published on October 23, 2006 by Bruno Ribeiro
4.0 out of 5 stars A beautiful introduction to a beautiful technology... but wait for the...
I just read the beta version of the second edition cover to cover in just a couple of days, and I love it, the content as well as the exposition. Read more
Published on August 14, 2006 by Peter Brinkmann
1.0 out of 5 stars second edition expected for fall 2006
Would have been 5 stars, but ...

Wait for the second edition. Ruby on Rails has changed very much. Read more
Published on August 13, 2006 by K. Victor Volle
5.0 out of 5 stars The only book I've used cover to cover
In all my years of reading, using and reviewing technical books, this is the first title I've read cover to cover, and in so doing actually built the sample application from start... Read more
Published on August 4, 2006 by Jason A. Salas
5.0 out of 5 stars The book to buy if you want to learn rails.
This is a good book, although I do think that they ordered the chapters strangely. Usually when you read a book you learn about how the stuff works and then you learn the... Read more
Published on July 31, 2006 by Abdulmajed Dakkak
4.0 out of 5 stars Good book
I appreciate this book for its engaging introduction to Ruby-on-Rails, and for the agile programming lessons. Read more
Published on July 22, 2006 by Lars
Search Customer Reviews
Only search this product's reviews


Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Forums

Search Customer Discussions
Search all Amazon discussions

Topic From this Discussion
When 3rd Edition?
According to the publisher, on or about October 15, 2008. (http://www.pragprog.com/titles/rails3/agile-web-development-with-rails-third-edition)
Sep 16, 2008 by Jonathan Polirer |  See all 5 posts
Rails 2.0
No it is not.
Jul 10, 2008 by J. Moore |  See all 2 posts
How popular is Ruby on Rails ? Be the first to reply
How Easy Is Rails For Non-OOP Programmers?
IMO it is more important to understand HTML, SQL and some basic programming (PHP and Perl is a great background) to get started working with Rails. You can happily build applications in Rails without a lot of OO knowledge. To really understand some of the magic, you will need to understand some... Read more
Nov 27, 2005 by R. Sellers Smith |  See all 7 posts
preorder shipping timeline? Be the first to reply
Welcome to the Agile Web Development with Rails forum Be the first to reply
Start a new discussion
Topic:
First post:
Prompts for sign-in
 




So You'd Like to...


Create a guide


Look for Similar Items by Category