Rails 101
Rails
Rails - Rails 101
Rails course
Basic Rails
Introduction to Rails
Watch the following video course as an Introduction to Ruby on Rails. It will give you a brief summary about Ruby on Rails, so you can get started into the Rails world.
Rails for Zombies
Complete the whole course “Rails for Zombies” on CodeSchool.
Remember that this course assumes:
- You already have a good background on Ruby.
- You have, both, Ruby and Ruby on Rails installed on your system. So make sure you’ve completed Introduction to Rails
Learn Rails by Example
Complete Learn Rails by Example, chapters 1 (From zero to deploy) to 7 (Sign up).
Make sure to upload your project to your github account and keep your story in milton updated.
Rails ORM Options
Rails ORM Reading
- Review all the callbacks in the ActiveRecord lifecycle
- Read this post on how to decompose fat ActiveRecord models
- Learn how to use ActiveResource
Testing
Learn about testing in Rails
Ruby has a number of testing frameworks. You can see a complete list here
The two most common we interact with are RSpec and Cucumber. The goal of this section to make sure you are familiar enough with RSpec and Cucumber to handle TDD and BDD in ruby.
Tasks:
- Complete the RSpec at Code School
- Learn about Mocks in RSpec - Read Chapter 14 of the RSpec book.
- Learn Cucumber - Complete Chapters 17 and 18 of the RSpec book
- Learn how to Apply RSpec and Cucumber to Rails
- Complete Chapters 19-25 of the RSpec book.
- Read chapter 8.3 in the Learning Rails by Example Book
- Create Cucumber tests for all the sign up scenarios in the application completed in the previous section and check in your code.
- Read Mocks with RR
- Martin Fowler about Mocks and Stubs
Rails Practice
Rails Practice Application
Create an application that has the following characteristics:
- There is the concept of a user who can
- create an account
- log in with that account
- delete their account
- Consume at least one third party data source provide search capabilities over it based on user input
- Twitter, facebook, google stocks, newsfeed, etc
- Allow users to perform CRUD on at least one custom data object
- Some part of the UI must update in real time
- It must have a full suite of cucumber tests
Please get approval for you project idea before you start coding.
Other frameworks
Understanding Rack
- Rack aims to provide a minimal API for connecting web servers and web frameworks.
Sinatra Reading
- Sinatra - Sinatra is a DSL for creating web apps (built on Rack) in Ruby with minimal effort.
- Read the Sinatra Getting Started
Sinatra Exercises
Complete one of the following activities:
or