issues
search
genkio
/
blog
Stay hungry stay foolish
https://slashbit.github.io/blog/
0
stars
1
forks
source link
Journey of building robust and production quality Rails application
#127
Open
genkio
opened
7 years ago
genkio
commented
7 years ago
Getting started
Getting started with Rails
Warming up
Install ruby on rails development environment for mac os x
Sublime Text tips and tricks
Vim plugin management with pathogen
Git and Github workflow
Haml basics
Week 0
Create data model
with
github commit
Seeding data
Create a simple data backed home page
Create one to many data model association
with
github commit
Week 1
Getting started with rspec
Writing model tests with Rspec
Implement search feature in rails
with
github commit
Serves static page
with
github commit
Authentication from scratch
with
github commit
Differences between model backed form and non model backed form in rails
Week 2
Writing controller tests with Rspec
with
github commit
An alternative style of rspec
Object generation with fabrication and faker
TDD in action
with
github commit
Implement user can review videos
Week 3
Interactive debugging for solution discovery
Work with complex form
ActiveRecord transaction and exception handling in rails
Skinny controller fat model
Use rails application helper to reduce repetition
ActiveRecord virtual attributes and memorization techniques
Use rspec macros and shared examples to make test more concise and expressive
Feature test with capybara
with
github commit
plus
refactor
Three different ways to locate html element when writing feature test
Baisc xpath rules and examples
Week 4
Three styles of BDD with Rails
HMT
and
HABTM
Self Referential Associations
Unveil self referential associations magic
Implement twitter like following and follower relationship
with
github commit
Send email in your rails app
Test email sending
Deploy rails app to Heroku
Set random tokens
Add new column to table and make sure the existing data does not blow off
Use named_route_url style to generate absolute URLs for ActionMailer
Use virtual resource to avoid jam actions in one controller
Week 5
Interact with emails in feature tests
Put chubby models on a diet with concerns
Mailgun addons for heroku
Use sidekiq to send emails from background jobs
Setup production server on heroku with procfile foreman unicorn and sidekiq
Use background jobs for emailing with 1 dyno on heroku
Understand staging server and production server
a simple deployment pipeline theory
Set up production error monitoring with Sentry
Set up the deployment pipeline with paratrooper
Week 6
Separating actors and securing access
File uploading to s3 with carrierwave
Manage sensitive information with figaro
Use Stripe Checkout to charge credit card
with
github commit
Use Stripe custom form to charge credit card
How to incorperate javascript in your rails app
Week 7
Build API wrapper model
OOP in action
Fully integrated api wrapper model tests and isolated API tests stubbing out the Internet with vcr
with
github commit
Controller test with doubles and method stubs
Feature test with JavaScript using selenium together with VCR and database-cleaner
Use initializer to store common settings
Beyond MVC (1) - Decorators
Beyond MVC (2) - Policy Objects
Beyond MVC (3) - Domain Objects
Beyond MVC (4) - Service Objects
Beyond MVC (5) - Object Composition, Object Oriented Design and YAGNI
Message expectations
Use Mocking to test object communications
Stubs and mocks
, plus a
video
material
Getting started
Warming up
Week 0
Week 1
Week 2
Week 3
Week 4
Week 5
Week 6
Week 7