Learn Ruby on Rails
We’re going to work on a real app, because a practical example speaks more than theoretical tutorials.
- It needs to send emails using Mandrill, and SMS using Twilio.
- It needs a RESTful JSON API.
- It needs Sidekiq workers.
- It will serve real time notifications to the browser using Pusher.
- It will render client-side Handlebars templates.
And we’re going to do it the way we make real software
The only “theory” we’ll do is the discussion that will come about as we build features. At the end of it, you’ll be ready to work as a rails developer in a consultancy, or your own startup.
We’ll assume knowledge. Lots of it.
- Don’t show up if you haven’t finished a bunch of rails tutorials already.
- We’re making a list for you.
- We’ll be using the command line. A lot.
- We’ll build the application in advance, and we’ll be navigating through it together with git.
- You’ll need a Github account.
- We’ll use Sublime Text as our text editor.
- If you’re already awesome at vim, that’s ok too.
- There will be 1 lesson about SCSS and design.
- There will be 1 or 2 lessons that will be mostly Coffeescript.
Outline (in progress)
Week 1: Lesson 1.
The application, on the whiteboard. User stories. Github, CircleCI and the staging environment.
Week 1: Lesson 2.
TDD. Pull requests. Code coverage. The main page of the app. CRUD on some resource which is displayed.
Week 2: Lesson 3.
Week 2: Lesson 4.
Week 3: Lesson 5.
OO design. We make inboxes.
Week 3: Lesson 6.
A background worker sends an email. Another sends an SMS.
Week 4: Lesson 7.
The front page, rendered client-side. We consume the API we made.
Week 4: Lesson 8.
Week 5: Lesson 9.
Making it look good. SCSS with Rowan.
Week 5: Lesson 10.
Making it go faster. Caching.
Week 6: Lesson 11&12.
Student’s choice. What else do you need to know?