Ruby on Rails Tutorial: Learn Web Development with Rails [NOOK Book]


Ruby on Rails™ Tutorial by Michael Hartl has become a must-read for developers learning how to build Rails apps.”

Peter Cooper, Editor of Ruby Inside

Using Rails, developers can build web applications of exceptional elegance and power. Although its remarkable capabilities have made Ruby on Rails one of the world’s most popular web development frameworks, it can be challenging to learn and use. Ruby on Rails™ Tutorial, Second Edition, is the ...

See more details below
Ruby on Rails Tutorial: Learn Web Development with Rails

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK 7.0
  • Samsung Galaxy Tab 4 NOOK 10.1
  • NOOK HD Tablet
  • NOOK HD+ Tablet
  • NOOK eReaders
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac

Want a NOOK? Explore Now

NOOK Book (eBook)
$19.99 price
(Save 44%)$35.99 List Price


Ruby on Rails™ Tutorial by Michael Hartl has become a must-read for developers learning how to build Rails apps.”

Peter Cooper, Editor of Ruby Inside

Using Rails, developers can build web applications of exceptional elegance and power. Although its remarkable capabilities have made Ruby on Rails one of the world’s most popular web development frameworks, it can be challenging to learn and use. Ruby on Rails™ Tutorial, Second Edition, is the solution. Best-selling author and leading Rails developer Michael Hartl teaches Rails by guiding you through the development of your own complete sample application using the latest techniques in Rails web development. The updates to this edition include all-new site design using Twitter’s Bootstrap; coverage of the new asset pipeline, including Sprockets and Sass; behavior-driven development (BDD) with Capybara and RSpec; better automated testing with Guard and Spork; roll your own authentication with has_secure_password; and an introduction to Gherkin and Cucumber.

You’ll find integrated tutorials not only for Rails, but also for the essential Ruby, HTML, CSS, JavaScript, and SQL skills you’ll need when developing web applications. Hartl explains how each new technique solves a real-world problem, and he demonstrates this with bite-sized code that’s simple enough to understand, yet novel enough to be useful. Whatever your previous web development experience, this book will guide you to true Rails mastery.

This book will help you

  • Install and set up your Rails development environment

  • Go beyond generated code to truly understand how to build Rails applications from scratch

  • Learn test-driven development (TDD) with RSpec

  • Effectively use the Model-View-Controller (MVC) pattern

  • Structure applications using the REST architecture

  • Build static pages and transform them into dynamic ones

  • Master the Ruby programming skills all Rails developers need

  • Define high-quality site layouts and data models

  • Implement registration and authentication systems, including validation and secure passwords

  • Update, display, and delete users

  • Add social features and microblogging, including an introduction to Ajax

  • Record version changes with Git and share code at GitHub

  • Simplify application deployment with Heroku
Read More Show Less

Editorial Reviews

From the Publisher

“My former company (CD Baby) was one of the first to loudly switch to Ruby on Rails, and then even more loudly switch back to PHP (Google me to read about the drama). This book by Michael Hartl came so highly recommended that I had to try it, and the Ruby on Rails™ Tutorial is what I used to switch back to Rails again.”

—From the Foreword by Derek Sivers (, formerly, Founder, CD Baby; currently, Founder, Thoughts Ltd.

“Michael Hartl’s Rails Tutorial book is the #1 (and only, in my opinion) place to start when it comes to books about learning Rails. . . . It’s an amazing piece of work and, unusually, walks you through building a Rails app from start to finish with testing. If you want to read just one book and feel like a Rails master by the end of it, pick the Ruby on Rails™ Tutorial.”

—Peter Cooper, editor, Ruby Inside

“Grounded in the real world.”

—I Programmer (, by Ian Elliot

“The book gives you the theory and practice, while the videos focus on showing you in person how it’s done. Highly recommended combo.”

—Antonio Cangiano, Software Engineer, IBM

“The author is clearly an expert at the Ruby language and the Rails framework, but more than that, he is a working software engineer who introduces best practices throughout the text.”

—Greg Charles, Senior Software Developer, Fairway Technologies

“Overall, these video tutorials should be a great resource for anyone new to Rails.”

—Michael Morin,

“Hands-down, I would recommend this book to anyone wanting to get into Ruby on Rails development.”

—Michael Crump, Microsoft MVP

Read More Show Less

Product Details

  • ISBN-13: 9780133047233
  • Publisher: Pearson Education
  • Publication date: 8/10/2012
  • Series: Addison-Wesley Professional Ruby Series
  • Sold by: Barnes & Noble
  • Format: eBook
  • Edition number: 2
  • Pages: 600
  • Sales rank: 298,914
  • File size: 49 MB
  • Note: This product may take a few minutes to download.

Meet the Author

Michael Hartl is the author of the Ruby on Rails™ Tutorial, the leading introduction to web development with Ruby on Rails. His prior experience includes writing and developing RailsSpace, an extremely obsolete Rails tutorial book, and developing Insoshi, a once-popular and now-obsolete social networking platform in Ruby on Rails. In 2011, Michael received a Ruby Hero Award for his contributions to the Ruby community. He is a graduate of Harvard College, has a Ph.D. in Physics from Caltech, and is an alumnus of the Y Combinator entrepreneur program.

Read More Show Less

Table of Contents

Foreword to the First Edition by Derek Sivers xv

Foreword to the First Edition by Obie Fernandez xvii

Acknowledgments xix

About the Author xxi

Chapter 1: From Zero to Deploy 1

1.1 Introduction 3

1.2 Up and Running 9

1.3 Version Control with Git 27

1.4 Deploying 39

1.5 Conclusion 43

Chapter 2: A Demo App 45

2.1 Planning the Application 45

2.2 The Users Resource 49

2.3 The Microposts Resource 63

2.4 Conclusion 74

Chapter 3: Mostly Static Pages 77

3.1 Static Pages 82

3.2 Our First Tests 93

3.3 Slightly Dynamic Pages 103

3.4 Conclusion 114

3.5 Exercises 114

3.6 Advanced Setup 117

Chapter 4: Rails-Flavored Ruby 129

4.1 Motivation 129

4.2 Strings and Methods 134

4.3 Other Data Structures 142

4.4 Ruby Classes 153

4.5 Conclusion 164

4.6 Exercises 164

Chapter 5: Filling in the Layout 167

5.1 Adding Some Structure 167

5.2 Sass and the Asset Pipeline 187

5.3 Layout Links 197

5.4 User Signup: A First Step 211

5.5 Conclusion 215

5.6 Exercises 217

Chapter 6: Modeling Users 221

6.1 User Model 222

6.2 User Validations 236

6.3 Adding a Secure Password 254

6.4 Conclusion 267

6.5 Exercises 268

Chapter 7: Sign Up 271

7.1 Showing Users 271

7.2 Signup Form 292

7.3 Signup Failure 303

7.4 Signup Success 312

7.5 Conclusion 321

7.6 Exercises 321

Chapter 8: Sign In, Sign Out 325

8.1 Sessions and Signin Failure 325

8.2 Signin Success 343

8.3 Introduction to Cucumber (Optional) 363

8.4 Conclusion 371

8.5 Exercises 372

Chapter 9: Updating, Showing, and Deleting Users 373

9.1 Updating Users 373

9.2 Authorization 385

9.3 Showing All Users 396

9.4 Deleting Users 413

9.5 Conclusion 422

9.6 Exercises 424

Chapter 10: User Microposts 429

10.1 A Micropost Model 429

10.2 Showing Microposts 445

10.3 Manipulating Microposts 454

10.4 Conclusion 479

10.5 Exercises 480

Chapter 11: Following Users 483

11.1 The Relationship Model 484

11.2 A Web Interface for Following Users 503

11.3 The Status Feed 529

11.4 Conclusion 539

11.5 Exercises 543

Index 545

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)