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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Nick Bienko
September 26, 2015
Programming
110
1
Share
How to Explore a Large Rails Application
Rails Club 2015 talk by Nikolay Bienko
Nick Bienko
September 26, 2015
More Decks by Nick Bienko
See All by Nick Bienko
Monorails Application Design vs Cult of Microservices
bikolya
3
260
Other Decks in Programming
See All in Programming
ソースコード→AST→オペコード、の旅を覗いてみる
o0h
PRO
1
130
AI Agent と正しく分析するための環境作り
yoshyum
2
450
決定論 vs 確率論:Gemini 3 FlashとTF-IDFを組み合わせた「法規判定エンジン」の構築
shukob
0
160
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
1.2k
Explore CoroutineScope
tomoeng11
0
190
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
4
460
t *testing.T は どこからやってくるの?
otakakot
1
930
書き換えて学ぶTemporal #fukts
pirosikick
2
370
AgentCore Optimizationを始めよう!
licux
3
240
JCON - Create Agentic AI Apps, The Easy Way!
kdubois
1
110
Spec Driven Development | AI Summit Vilnius
danielsogl
PRO
1
150
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
510
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Are puppies a ranking factor?
jonoalderson
1
3.4k
Producing Creativity
orderedlist
PRO
348
40k
First, design no harm
axbom
PRO
2
1.2k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
390
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
180
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
350
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
It's Worth the Effort
3n
188
29k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.9k
The SEO identity crisis: Don't let AI make you average
varn
0
460
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]