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
「Rubyメソッドかるた」 王者への道 ~ 万葉チームのガチな取り組みを大公開 ~
Search
Yasuko Ohba
October 15, 2023
Technology
3
320
「Rubyメソッドかるた」 王者への道 ~ 万葉チームのガチな取り組みを大公開 ~
2023/10/5に開催された大江戸Ruby会議10での、Rubyメソッドかるたの攻略手法についてのトーク資料です。
Yasuko Ohba
October 15, 2023
Tweet
Share
More Decks by Yasuko Ohba
See All by Yasuko Ohba
えにしテックさん15周年に寄せて〜万葉と私のこれまでの学び〜
nay3
61
38k
Hotwire的な設計を追求して「Web紙芝居」に行き着いた話
nay3
9
4.1k
The Better RuboCop World to enjoy Ruby
nay3
1
13k
強いエンジニアという灯
nay3
51
22k
万葉のRails新人研修のコードレビューコメントを分析してみました
nay3
7
9.3k
"Railsで開発できる" への道
nay3
7
1.1k
自立したRuby技術者を育てる - 万葉の新人教育の仕組み
nay3
13
2.3k
A Training System of Ruby Programmers / Rubyプログラマが育つ仕組み - Rubyでの受託開発を10年回してみて -
nay3
17
7.5k
Value and Pain to Keep Rails Applications Alive
nay3
3
710
Other Decks in Technology
See All in Technology
Pythonを活用したLLMによる構造的データ生成の手法と実践
brainpadpr
3
220
テストコードの品質を客観的な数値で担保しよう〜Mutation Testのすすめ〜
ysknsid25
2
120
MLOpsの「あるある」課題の解決と、そのためのライブラリgokart
mski_iksm
1
150
ITエンジニアとして知っておいてほしい、電子メールという大きな穴
logica0419
2
300
AWS Lambdaで実現するスケーラブルで低コストなWebサービス構築/YAPC::Hakodate2024
fujiwara3
5
880
LINEヤフー新卒採用 コーディングテスト解説 実装問題編
lycorp_recruit_jp
1
12k
【shownet.conf_】革新と伝統を融合したファシリティ
shownet
PRO
0
240
Causal Impactを用いたLINE Pay UIの効果検証とABテスト実施への貢献
lycorptech_jp
PRO
3
490
Tracking down sources of kernel errors with retsnoop
ennael
PRO
0
140
【swonet.conf_】NOCメンバーが語るSTMの実態!! ~ShowNetから若者への贈り物~
shownet
PRO
0
230
ORM と向き合う
hoto17296
7
5.9k
【ログ分析勉強会】EDR ログで内部不正を検出できるのか、Copilot に聞いてみた
hssh2_bin
2
270
Featured
See All Featured
Debugging Ruby Performance
tmm1
73
12k
Agile that works and the tools we love
rasmusluckow
327
21k
The Brand Is Dead. Long Live the Brand.
mthomps
53
38k
Creatively Recalculating Your Daily Design Routine
revolveconf
217
12k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
38
2.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
1
240
Done Done
chrislema
181
16k
Speed Design
sergeychernyshev
22
460
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
48k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Transcript
ʮ3VCZϝιου͔Δͨʯ Ԧऀͷಓ ʙສ༿νʔϜͷΨνͳऔΓΈΛେެ։ʙ !OBZɹେɹɹɹ !X@F@C@DPGGFFɹീ !S@@IBOEBɹా
3VCZϝιου͔Δͨͱ IUUQTCMPHBHJMFFTNDPKQFOUSZSVCZNFUIPELBSVUB w ӬγεςϜϚωδϝϯτ ͞Μ͕࡞ w 3VCZ,BJHJͰ w छྨͷϝιου w
ͦΕͧΕऔࡳɾಡࡳ͕ ͋Δ
দా͞ΜͷൃҊΛ͖͔͚ͬʹɺ Ӭ͞Μ͔Βର߅ઓͷ͓༠͍Λ͍ͨͩ͘
ͳͥສ༿͔ͱ͍͏ͱʜ ສ༿ɺڝٕ͔ΔͨʢඦਓҰटʣܦݧऀͷେ ɾٱอ͕ۀͨ͠ձࣾ ࣮ɺ͔ΔͨΞϓϦΛൢച͍ͯͨ͠Γɺ͔Δ ͨͷେձʹڠࢍ͍ͯͨ͠Γ͢Δ पه೦ύʔςΟʔͰ౦େ͔Δͨձͷ બखʹٖࢼ߹Λ൸࿐ͯ͠Βͬͨ 3VCZίϛϡχςΟͷرऀʹɺ͔Δͨମ ݧΛͯ͠Βͬͨ͜ͱ͋Δ ΔਓͧΔl͔ΔͨΨνͷձࣾz
͋ΕΑ͋ΕΑͱ۩ମԽ ˠܾઓͷʹܾఆʂʂ
ँࣙ Ӭ͞Μɺʮ3VCZϝιου͔ΔͨʯΛ։ ൃͯͩͬͯ͋͘͠͞Γ͕ͱ͏͍͟͝·͢ ର߅ઓͷ͓༠͍Λ͋Γ͕ͱ͏͍͟͝·͢ େߐށ3VCZձٞͰͷൃදͷ·Ͱ͍ͨͩ ͍ͯͱͯخ͍͠Ͱ͢ ͜ͷൃදͰʮ3VCZϝιου͔Δͨʯ߈ུ ͷϨϕϧײΛര্͛͢Δͧ
ର߅ઓͷͨΊʹ ԿΛ͍͔ͬͯͬͨ ϝϯόʔק༠ ର߅ઓͷϧʔϧɾࢼ߹ਐߦΛܾΊΔ τϨʔχϯάͷͨΊͷԼ४උ τϨʔχϯά
ϝϯόʔ Ӭ͞ΜબखਓͳͷͰɺબ खΛਓूΊ͔͕ͨͬͨ ՌͨͤͣਓνʔϜ ಡखͷ!LVLP͕ લͰΠϯϑϧʹΕͯɺ ԻσʔλͰͷࢀՃ
ΧϝϥϚϯ༧ఆͩͬͨ !UBUTVPTBLVSBJʹɺ ٸᬎɺ࠶ੜ୲Λґཔ !OBZ !S@@IBOEB !LVLP !X@F@C@DP ff FF ಜɾબख બख ಡख બख !UBUTVPTBLVSBJ ΧϝϥϚϯˠɹ࠶ੜ୲
Իσʔλʁ ڝٕ͔ΔͨͰԻσʔλΛ͏͜ͱ͕Α͋͘ΔͷͰɺ !LVLP͕ࣾ࿅श༻ʹԻͯ͘͠Ε͍ͯͨ !X@F@C@DPGGFF͕ϑΝΠϧͱͯ͠Γग़ͯ͠ɺ͑Δঢ়ଶʹ ཧͯ͘͠Εͨ ͓͔͛ͰɺٸͳΠϯϑϧͰର߅ઓ͕։࠵Ͱ͖ͨ ެ։͠·ͨ͠ͷͰ࿅शʹ͝׆༻͍ͩ͘͞ʂ ˞ӳޠ༝དྷͷ༻ޠͷൃԻ͕͍Օॴ͕͋Δ͔͠Ε·ͤΜ͕͝༰͍ࣻͩ͘͞ IUUQTHJUIVCDPNFWFSZMFBGSVCZ@NFUIPE@DBSUBUSFFNBJOSFBEJOHT
ϧʔϧɾࢼ߹ਐߦ ಡΈࡳͷʮઆ໌ʯͷதΛಡΈ্͛ͯɺऔࡳΛऔΔͱ͍͏ํࣜʹͨ͠ όϥΤςΟΛָ͠ΊΔΑ͏ʹҎԼͷ̎छྨͱͨ͠ ͪΒ͠औΓ ʢݸਓઓɺऔͬͨࡳͷຕ߹ܭͰνʔϜউෛʣ ڝٕ͔Δͨʹ͍ۙɺ͍͋Γͷʮݯฏʯ
ʢνʔϜઓʣ IUUQTHJUIVCDPNFWFSZMFBGSVCZ@NFUIPE@DBSUBCMPCNBJOSVMFTDPOUFTU@@@@SVMFNE
τϨʔχϯάͷԼ४උ ʮܾ·ΓࣈʯΛѲ͢Δ ࡳΛॏཁͰཧ ʮ֮͑ํʯΛ࡞Δ ݯฏ༻ͷʮฒํʯΛ࡞Δ શʹϓϩͷखޱ
͜͜·Ͱ͍͍ͬͯͷͩΖ͏͔ͱࣗ͢Δʑ
ܾ·ΓࣈΛѲ͢Δ ܾ·Γࣈͱ ʮͦ͜·Ͱฉ͍ͨ࣌Ͱऔࡳ͕̍ຕʹಛఆ͞ΕΔʯಡΈͷઌ಄ ෦ͷ͜ͱ ܾ·ΓࣈΛநग़ͯ͘͠ΕΔ3VCZϓϩάϥϜΛॻ͍ͨ IUUQTHJUIVCDPNFWFSZMFBGSVCZ@NFUIPE@DBSUBUSFFNBJOLJNBSJKJ
ܾ·Γࣈදʢ͍͋͏͓͑ॱʣ͕Ͱ͖ͨ
ࡳΛॏཁͰཧ ͍͋͏͓͑ॱͰτϨʔχϯάʹ͑ͳ͍ ຕࡳɺຕࡳʜͳͲɺʮ࠷ॳͷԻ͕ಉ͡ ࡳʯ͕Կຕ͋Δ͔Ͱཧ͢Δ ʮ࠷ॳͷԻ͕ಉ͡ࡳʯ͕গͳ͍ ͘lܾ·ΔʢࣈࡳʹมԽ͢Δʣz ઓུతʹॏཁ ॏཁ
ࣈࡳ͕ຕʂʂ ֮͑͘͢ฒͯΈͨ ͍͕͋ͯͦΑΘͻΐ ʢ૬ख͕ϔιऑͦ͏ʁʣ
શମͷࡧҾͱ͍͏ܗͰ ֮͑͑͘͢Δ ͍͕͋ͯͦΑΘͻΐ ͤΊ͢ͺɾΕɾ͓ɾ͔͡ͻ ͪͳΈʹڝٕ͔ΔͨʢඦਓҰटʣͰ Ή͢Ί;͞΄ͤɾ͏ͭ͠Ώɾ͍ͪͻ͖ɾΑ͔ʜ ͳͲͱ͍͏ߏʹͳΓ·͢
ʮ֮͑ํʯΛ࡞Δ ͯ͢ͷࡳʹɺ͍֮͑͢ϑϨʔζΛ༻ҙ ܾ·Γࣈ औࡳ ֮͑ํ ಡΈͷ࠷ॳ ͋ )BTIDPNQBDU ͍͋ͨͷίϯύΫτ ͕OJMͷͷΛʜ
͍ %BUBEF fi OF Πϛϡʔλϒϧͳ%BUB Πϛϡʔλϒϧͳʜ ͯ 4ZNCPMBMM@TZNCPMT ఆٛࡁΈͷBMM@TZNCPMT ఆٛࡁΈͷͯ͢ͷʜ ͕ ($EJTBCMF ($Ψʔϕʔδ ΨʔϕʔδίϨΫτʜ
ॏཁཧ ֮͑ํlދͷרz ʮಡΈࡧҾʯͱͯ͠ެ։͍ͯ͠·͢ʂ IUUQTHJUIVCDPNFWFSZMFBGSVCZ@NFUIPE@DBSUBCMPCNBJOSFBEJOH@JOEFYQEG
ݯฏ༻ͷʮฒํʯΛ࡞Δ ݯฏͰࣗͷਞ͖ʹฒΒΕΔ ฒํΛܾΊ͓͚ͯɺʮ͋Δͱ͢Ε͜ͷล ʹ͋Δͣʯͱ͍͏͜ͱͰɺҐஔΛ֮͑ͣʹɺ ػցతʹऔΕΔ ࡳΛඈ͞Εͨޙɺಉ͡Α͏ʹฒΒΕΔɻ ͜Εɺ૬खͷϚφʔͱͯ͠େࣄ
ฒํʹఆੴ͕͋Δ ࣗ େࣄͳࡳͬ͜ ૬ख͔Βԕ͘ ಉ͡Ի͕ଟ͍ ॏཁͷ͍ͷ ্ஈͳͲʹ த͘Β͍ͷॏཁ
࡞ͨ͠ฒํ IUUQTHJUIVCDPNFWFSZMFBGSVCZ@NFUIPE@DBSUBCMPCNBJOOBSBCFQEG ͜Εެ։ͯ͠·͢
ஈ֊తτϨʔχϯά ࣈࡳͷ҉ه ࣈࡳͷ҉ه ήʔϜͷྲྀΕɺ ҉هΛͲ͏͏͔ɺ ࣗ࿅शͷํʢࡳམͱ͠ʣΛઆ໌ ࿅शձᶃ ࿅शձᶄ ΦϯϥΠϯ .5(
ΦϯϥΠϯ .5( ΦϯϥΠϯ .5( ΦϑϥΠϯ ࣨձ ΦϑϥΠϯ ࣨձ
࠷ڧͷϝϯόʔΛ πϞ͍ͬͯͨ͜ͱ͕໌͢Δ ճͷ࿅श·Ͱʹ͔ͳΓࡳΛ͍֮͑ͯͨ ࣹਆܦهԱྗ͔ͳΓྑ͍ ී௨ʹʮ͔Δͨձͷ༗ͳ৽ਓʯͩͬͨ ࿅शࢼ߹ͰͲΜͲΜٵऩɻ߈ΊɾकΓɺૹΓࡳ ͳͲͷઓज़Ϩϕϧʹ౸ୡ͢Δײ͡ʹ
ࢀߟ ͔Δͨͷઓज़ ߈ΊఢਞΛͱΔ कΓࣗਞΛͱΔ ૂ͍ಛʹڧ͘ҙࣝ͢Δࡳ͘ͱΕΔ ͕ɺʹૂ͑Δࡳ͕ݶΒΕΔ ૹΓࡳఢਞͷࡳΛͱͬͨΓ૬खͷ͓खͭ ͖ͳͲͰ૬खʹࡳΛૹΔͱ͖ɺͲͷࡳΛ ૹΔ͔બΔɻઓज़ੑ͕ߴ͍ɻ
ܴͦͯ͑ͨ͠ ର߅ઓʂ
༧Ҏ্ʹΞπΠઓ͍
ࢼ߹݁Ռ ͪΒ͠औΓ Ӭ͞Μ ສ༿ WTͰສ༿ͷউͪ
ݯฏ ରઓʣ ສ༿উ ܹઓΛ੍ͨ͠ͷສ༿νʔϜʂʂ നͨ͠ࢼ߹͔ΓͰͱָ͔ͯͬͨ͠
ମݧஊ 3VCZϝιου͔Δͨର߅ઓʹ બखͱͯ͠ࢀՃͯ͠Έͯ Ͳ͏͔ͩͬͨʁ Μͩ !X@F@C@DP ff FF બख બख
ҙຯ͕Α͗ͬͯ औΕͳ͍͜ͱ͕͋Δ
ʮͻ͖͢͏ͷʜʯ "SSBZJODMVEF 4USJOHJODMVEF
ʮҾͷจࣈྻؚ͕·ΕΔ͔ఆ͢Δʯ "SSBZJODMVEF 4USJOHJODMVEF
ʮҾͷจࣈྻؚ͕·ΕΔ͔ఆ͢Δʯ "SSBZJODMVEF 4USJOHJODMVEF ʮϨγʔόʔ͕ҾΦϒδΣΫτͱ Ͱ͍͠ཁૉΛ͔࣋ͭఆ͢Δɻʯ
3VCZϝιου͔Δͨ ͳΒͰͷ͠͞ ʮҾΛʙʙ͢Δʯͱೝ͍ࣝͯ͠Δϝ ιουͷઆ໌จ͕ʮϨγʔόʔΛʙʙʯ ࣈ໘Ͱ҉ه͍ͯ͠Δͷʹҙຯ͕Α͗ͬͯ ΕΔ ඦਓҰटͰ͋·Γͳͦ͞͏
0CKFDU ͓Ϳ͐͘͡ͱͷͲ͏͍ͪͤΛͻ͔͘͢Δ 0CKFDUFRVBM ͓Ϳ͐͘͡ͱͷͲ͏͍͍ͭͤΛͻ͔͘͢Δ ͔Δͨͱͯ͠3VCZͱͯ͠ ͍͍ײ͡ʹ֮͑ΒΕͯษڧʹͳΔ
ମݧஊ͓ΘΓ
ઓऀ͍·͔͢ʁ ͪΐͬͱΕ͖͚ͯͨͲɺઓ͍ͨ͠ νʔϜ͕͍ͨΒडཱ͚ͯͯΔ͔ ࠓճͷݚڀՌҰࣜΛެ։͍ͯ͠Δͷ Ͱɺ3VCZϝιου͔ΔͨΛ߈ུ͍ͨ͠ ํɺͥͻ͝׆༻͍ͩ͘͞
ສ༿ ΤϯδχΞͷ࠾༻Λ ߦ͍ͬͯ·͢ʂ 3VCZͰͨͷ͘͠։ൃ͍ͨ͠ํɺ Α͔ͬͨΒҰॹʹಇ͖·͠ΐ͏ʂ