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
TypeProf 開発レポート 2026-05 / TypeProf Dev Report 2...
Search
Takumi Shotoku
May 15, 2026
Technology
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TypeProf 開発レポート 2026-05 / TypeProf Dev Report 2026-05
Omotesando.rb #121
https://omotesandorb.connpass.com/event/392749/
Takumi Shotoku
May 15, 2026
More Decks by Takumi Shotoku
See All by Takumi Shotoku
Automatically generating types by running tests
sinsoku
4
19k
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
8
2.9k
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
310
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
350
"型"のあるRailsアプリケーション開発 / Typed Rails application development
sinsoku
11
3k
Let's get started with Ruby && Rails Tips
sinsoku
0
500
LTの敷居を下げる / Lower the threshold for LT
sinsoku
2
440
CircleCIの高速化🚀 / CircleCI faster
sinsoku
3
1.5k
Railsアプリと型検査 / Rails app and type checking
sinsoku
5
1.7k
Other Decks in Technology
See All in Technology
ruby.wasmとPicoRuby.wasmに対応した仮想DOMライブラリを作ってる話 #kaigieffect_kaigi
sue445
PRO
0
120
ローカルLLMとLINE Botの組み合わせ その3 / LINE DC Generative AI Meetup #8
you
PRO
0
130
ゼロをイチにする仕事が終わったあと
smasato
0
330
KiCAD講習会②
tutcreators
0
100
Control Planeで育てるBtoB SaaSの認証基盤 - SRE NEXT 2026
pokohide
1
2.1k
Zoom2Youtube.Claude
kawaguti
PRO
3
490
[2026-07-15] AI Ready なはずだったアーキテクチャと、見えてきた課題・次に目指す状態
wxyzzz
4
1.9k
Road to SRE NEXTの今までとこれから
hiroyaonoe
0
270
AIと共生する開発者プラットフォーム:バクラクのモノレポ×マイクロサービス基盤
sakajunquality
2
3.2k
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
4
3.8k
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
4.5k
AI時代のエンジニアキャリアについて今一度考える
sakamoto_582
2
1.5k
Featured
See All Featured
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
220
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
290
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Exploring anti-patterns in Rails
aemeredith
3
440
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Writing Fast Ruby
sferik
630
63k
How to train your dragon (web standard)
notwaldorf
97
6.7k
RailsConf 2023
tenderlove
30
1.5k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
260
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Transcript
TypeProf ։ൃϨϙʔτ 2026-05 Omotesando.rb #121 2026/05/14
ࣗݾհ • ໊લ: ਖ਼ಙ (aka: ਆ) • ॴଐ: גࣜձࣾmov •
GitHub: @sinsoku (ը૾ӈ্) • X: @sinsoku_listy (ը૾ӈԼ) • Omotesando.rb, Asakusa-bashi.rbs 2
We are hiring! 3
ΞδΣϯμ 1. Rubyͷܕք۾ͷ 2. TypeProf ͷհ 3. ։ൃͷਐḿใࠂ 4
! Ruby ʹܕ͕͋Δͱศརͳͷ͔ʁ 5
⭐ ܕͷϝϦοτ • υΩϡϝϯτ • ίʔυδϟϯϓ • ೖྗิ • ܕݕࠪ
ܕͷ͋ΔݴޠʹൺͯRubyͷαϙʔτऑ͍ɻ 6
ʮClaude Code Λ͏ͷͰ ίʔυΛॻ͘ػձ͕গͳ͍ʯ 7
⭐ ܕͷϝϦοτ • υΩϡϝϯτ • ίʔυδϟϯϓ • ೖྗิ • ܕݕࠪ
ܕͷ͋ΔݴޠʹൺͯRubyͷαϙʔτऑ͍ɻ 8
ͦ͏Ͱ͢Ͷ 9
! ܕͷՄೳੑ • AI͕ܕΛ׆༻ͯ͠ਫ਼্͕͕Δ • ܕʹΑΔ࠷దԽͷՄೳੑ • ZJIT, Ruby VM
• Spinel 10
Rubyͷܕք۾ͷπʔϧ 11
ruby RBS TypeProf gem_rbs_collection soutaro Steep rbs-inline shopify Sorbet Tapioca
RubyDex rbs_rails pocke Orthoses ksss rbs-trace sinsoku method-ray dak2 type-guessr riseshia 12
! ͔Βͳ͍ 13
ruby RBS TypeProf gem_rbs_collection soutaro Steep rbs-inline shopify Sorbet Tapioca
RubyDex rbs_rails pocke Orthoses ksss rbs-trace sinsoku method-ray dak2 type-guessr riseshia ⭐ ⭐ 14
RBS RubyͰܕΛѻ͏ͨΊͷϓϩτίϧͰɺ֦ுࢠ *.rbsɻ module ChatApp VERSION: String class User attr_reader
login: String attr_reader email: String def initialize: (login: String, email: String) -# void end end 15
Rubyͷίʔυʹॻ͚ΔʢRBS v4.0ʣ class Calculator # @rbs (Integer, Integer) -" Integer
def add(a, b) = a + b end 16
gem_rbs_collection • gemͷRBSϑΝΠϧΛཧ͢ΔϦϙδτϦ • ίϛϡχςΟʹΑͬͯϝϯς͞Ε͍ͯΔ • gem࡞ऀͱ͕ؔͳ͍ • TypeScriptͷDefinitelyTyped1Έ͍ͨͳͷ 1
https://github.com/DefinitelyTyped/DefinitelyTyped 17
ܕੜ ! / ܕݕࠪ ruby RBS TypeProf gem_rbs_collection soutaro Steep
rbs-inline shopify Sorbet Tapioca RubyDex rbs_rails pocke Orthoses ksss rbs-trace sinsoku method-ray dak2 type-guessr riseshia ⭐ ⭐ ✅ ✅ ✅ ✅ # # # # # 18
TypeProfͱ Rubyͷίʔυ͔ΒܕΛਪ͠ ͯ͘ΕΔπʔϧɻ ࡞ऀRubyίϛολʔͷ Yusuke Endoh(@mame) ͞Μ 19
ϝιουఆٛͷදࣔ 20
ͷݕग़ 21
TypeProf ͷྑ͍ͱ͜Ζ RBSΛॻ͘ඞཁ͕ͳ͍ʂʂ 22
ruby RBS TypeProf gem_rbs_collection soutaro Steep rbs-inline shopify Sorbet Tapioca
RubyDex rbs_rails pocke Orthoses ksss rbs-trace sinsoku method-ray dak2 type-guessr riseshia ⭐ ⭐ ✅ ✅ ✅ ✅ # # # # # 23
ಋೖखॱʢެࣜʣ 1. Gemfile ʹ typeprof ΛՃ͢Δ 2. bundle install Λ࣮ߦ͢Δ
3. bundle exec typeprof -"init 4. VSCode ʹ Ruby TypeProf ΛՃ 24
ಋೖखॱʢඇެࣜʣ 1. Gemfile ʹ ruby-lsp-typeprof ΛՃ͢Δ 2. bundle install Λ࣮ߦ͢Δ
3. bundle exec typeprof -#init ! ಋೖָ͚ͩͲɺެࣜͷVSCode֦ுͷํ͕ଟػೳɻ2 2 ruby-lsp-typeprof ϝιουఆٛͷද͔ࣔ͠Ͱ͖ͳ͍ɻ 25
TypeProf ͷίϯτϦϏϡʔτ RubyKaigi 2025Ҏ߱ʹগͣͭ͠ίϯτϦϏϡʔτ͍ͯ͠Δɻ 26
ओͳ׆ಈ༰ 1. TypeProf Λࢼ͢ͱΤϥʔ͕ग़Δ • bin/typeprof tmp/redmine/app 2. ࠶ݱίʔυΛ࡞Δ 3.
ཧղͰ͖Δൣғͷ࠷খͷύονΛ࡞Δ Claude Code Λͬͯௐࠪɺ࣮Λ͍ͯ͠Δɻ 27
28
29
doc/report_guide.md 30
Omotesando.rb #115 (2025-11-13) • ! v0.31.0 ͷհ • ✅ Redmine
ͷίʔυͰղੳ͕ޭ • # GitLab ͷίʔυͰղੳ͕ࣦഊ • To be continued... 31
2026-05 ͷTypeProf • ଟ͘ͷRailsΞϓϦͰΤϥʔͳ͘ಈ͘ • ύϑΥʔϚϯε͕গ͠ྑ͘ͳͬͨ • ͔͠͠ɺ·͍ͩ ! •
ܕਪͷਫ਼࣮༻తͰͳ͍ • ಛʹRailsΞϓϦͰ untyped ͕ଟ͍ 32
! ฐࣾͷRailsΞϓϦʹࢼݧతʹಋೖ $ time bundle exec typeprof app sig real
5m14.929s user 5m10.690s sys 0m1.814s ղੳରͷϑΝΠϧ 7970 Ͱ͢ɻ 33
! ίʔυͷن $ bin/rails stats +----------------------+--------+--------+---------+---------+-----+-------+ | Name | Lines
| LOC | Classes | Methods | M/C | LOC/M | +----------------------+--------+--------+---------+---------+-----+-------+ | Controllers | 27756 | 22218 | 632 | 2846 | 4 | 5 | | Helpers | 192 | 147 | 1 | 19 | 19 | 5 | | Jobs | 4036 | 3081 | 148 | 248 | 1 | 10 | | Models | 98268 | 67457 | 1701 | 6779 | 3 | 7 | | Mailers | 1200 | 957 | 27 | 100 | 3 | 7 | | Channels | 42 | 33 | 4 | 7 | 1 | 2 | | Views | 583 | 465 | 0 | 0 | 0 | 0 | | JavaScript | 105435 | 96211 | 0 | 40 | 0 | 2403 | | Libraries | 30302 | 24057 | 307 | 1344 | 4 | 15 | +----------------------+--------+--------+---------+---------+-----+-------+ | Total | 267814 | 214626 | 2820 | 11383 | 4 | 16 | +----------------------+--------+--------+---------+---------+-----+-------+ Code LOC: 214626 Test LOC: 0 Code to Test Ratio: 1:0.0 app/ 131,494 lines Ͱɺsig/ rbs_rails ͷࣗಈੜͰ͢ɻ 34
! ܕਪͷਫ਼ # Total methods: 15507 # Fully typed: 5956
# Partially typed: 2504 # Fully untyped: 7047 # # # Overall: 12081/28794 typed (42.0%) # 16713/28794 untyped (58.0%) bundle exec typeprof -"show-stats ͔ΒൈਮͰ͢ɻ 35
·ͱΊ • ܕؔ࿈πʔϧྨΛΔͱཧղ͍͢͠ • RBS ͕ϓϩτίϧ • ܕݕࠪ4ͭ • TypeProf
RailsΞϓϦͰࢼͤΔΑ͏ʹͳ͖ͬͯͨ • ύϑΥʔϚϯεɺܕਪͷਫ਼ࠓޙʹظ 36
! ͓·͚ 37
RubyKaigi 2026 ޙʹwriteݖݶΛ͍͍ͨͩͨ 38
39
! ϦϦʔε͠Α͏ https://github.com/ruby/typeprof/pull/456 40