Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How to Explore a Large Rails Application
Search
Nick Bienko
September 26, 2015
Programming
1
100
How to Explore a Large Rails Application
Rails Club 2015 talk by Nikolay Bienko
Nick Bienko
September 26, 2015
Tweet
Share
More Decks by Nick Bienko
See All by Nick Bienko
Monorails Application Design vs Cult of Microservices
bikolya
3
240
Other Decks in Programming
See All in Programming
Beyond_the_Prompt__Evaluating__Testing__and_Securing_LLM_Applications.pdf
meteatamel
0
100
サービスレベルを管理してアジャイルを加速しよう!! / slm-accelerate-agility
tomoyakitaura
1
200
eBPF超入門「o11yに使える」とは (20250424_eBPF_o11y)
thousanda
1
110
M5UnitUnified 最新動向 2025/05
gob
0
120
파급효과: From AI to Android Development
l2hyunwoo
0
160
Serving TUIs over SSH with Go
caarlos0
0
560
Contribute to Comunities | React Tokyo Meetup #4 LT
sasagar
0
590
API for docs
soutaro
3
1.6k
AIコーディングの理想と現実
tomohisa
35
37k
Cursor/Devin全社導入の理想と現実
saitoryc
28
21k
On-the-fly Suggestions of Rewriting Method Deprecations
ohbarye
1
4.7k
プロフェッショナルとしての成長「問題の深掘り」が導く真のスキルアップ / issue-analysis-and-skill-up
minodriven
8
1.9k
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
Automating Front-end Workflow
addyosmani
1370
200k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
119
51k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
How to train your dragon (web standard)
notwaldorf
91
6k
Build your cross-platform service in a week with App Engine
jlugia
230
18k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
How STYLIGHT went responsive
nonsquared
100
5.5k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.3k
What's in a price? How to price your products and services
michaelherold
245
12k
Transcript
How to Explore a Large Rails Application Nikolay Bienko, AT
Consulting @bikolyarb
[email protected]
Plan UI Traversing & Domain knowledge Get the app up
and running Estimate codebase Check out primary entities ApplicationController Follow main use cases POROs and pattern objects
UI Traversing & Domain knowledge Explore what is your app
about Documentation Grasp domain knowledge
None
None
Get the app up and running Make tests green bin/setup
rake --tasks routes.rb gemfile-verboser
None
None
None
None
gemfile-verboser
Estimate codebase rake stats wc -l app/models/**/*.rb | sort gem
‘rails-erd’ gem ‘railroady’
None
None
wc -l app/models/**/*.rb wc -l app/controllers/**/*.rb
gem ‘rails-erd’
gem ‘railroady’
Check out primary entities Entity-Relationship Diagrams schema.rb gem ‘annotate’
gem ‘annotate’
ApplicationController Callbacks Methods and helper methods Authentication
ApplicationController
Follow main use cases routes -> controller -> model ->
view pry pry-byebug stack-trace Introspection methods ctags Integration testing gem ‘rails-footnotes’ gem ‘state_machine’ with graphs
None
gem ‘rails-footnotes’
gem ‘state_machine’ with graphs
POROs and pattern objects lib app/services app/decorators app/facades app/helpers
Summary UI Traversing & Domain knowledge Get the app up
and running Estimate codebase Check out primary entities ApplicationController Follow main use cases POROs and pattern objects
None
None
Feedback is welcome Nikolay Bienko, AT Consulting @bikolyarb
[email protected]