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
TokyoRubyKaigi10 know‐how
Search
bash0C7
February 25, 2015
Programming
1
2.1k
TokyoRubyKaigi10 know‐how
Ruby Business Users Conference2015
日本最大級の地域Ruby会議「東京Ruby会議10」開催から得た大規模技術カンファレンス開催の勘所
発表資料の公開版
bash0C7
February 25, 2015
Tweet
Share
More Decks by bash0C7
See All by bash0C7
【加筆修正版】ハードワークを支えるフィジカルとメンタルを構築る#rubymusclemixin 活動 #きのこ2025 #きのこ2025_b
bash0c7
0
170
存在感を構築る方法
bash0c7
0
78
introduction
bash0c7
0
38
みんな大好き 🫶🏼 取引先との「セキュリティチェックリスト」への付き合い方
bash0c7
0
2.1k
【公開版資料】発表資料 新メンバー活躍までのオンボーディングとそのTips
bash0c7
0
890
Shinjuku.rb #91 好きなもの紹介LT大会 "便利"や"役に立つ"とは別方面のRubyをつかったプログラミングがたのしい話
bash0c7
0
250
#oedo10 継続的 #RubyMuscleMixin 実践入門/RubyMuscleMixin
bash0c7
0
1.8k
inside_announce
bash0c7
0
780
【公開版】マネジメントにおける 「技術選択」の勘所 / The key to technology selection in engineering management
bash0c7
0
360
Other Decks in Programming
See All in Programming
Deoptimization: How YJIT Speeds Up Ruby by Slowing Down / RubyKaigi 2025
k0kubun
0
500
これだけは知っておきたいクラス設計の基礎知識 version 2
masuda220
PRO
24
6.1k
フロントエンドテストの育て方
quramy
11
2.9k
データベースエンジニアの仕事を楽にする。PgAssistantの紹介
nnaka2992
9
4.5k
Signal-Based Data FetchingWith the New httpResource
manfredsteyer
PRO
0
160
SwiftUI API Design Lessons
niw
1
260
DomainException と Result 型で作る型安全なエラーハンドリング
karszawa
0
890
英語 × の私が、生成AIの力を借りて、OSSに初コントリビュートした話
personabb
0
190
プロダクト横断分析に役立つ、事前集計しないサマリーテーブル設計
hanon52_
2
390
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
460
国漢文混用体からHolloまで
minhee
1
180
Building a macOS screen saver with Kotlin (Android Makers 2025)
zsmb
1
140
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
Writing Fast Ruby
sferik
628
61k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Building Applications with DynamoDB
mza
94
6.3k
Docker and Python
trallard
44
3.3k
YesSQL, Process and Tooling at Scale
rocio
172
14k
We Have a Design System, Now What?
morganepeng
52
7.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Java REST API Framework Comparison - PWX 2021
mraible
30
8.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
Transcript
ຊ࠷େڃͷҬ3VCZձٞ ʮ౦ژ3VCZձٞʯ։࠵͔Βಘͨ େنٕज़ΧϯϑΝϨϯε։࠵ͷצॴ !CBTI$খࣳහ໌ ެ։൛
ࣗݾհ w খࣳහ໌!CBTI$ IUUQXXXBUNBSLJUDPKQBJUBSUJDMFTOFXTIUNM
ίϯςΩετ w ඇӦར w ͷࢀՃऀඦਓʙ w εϙϯαʔ w ෳ w
ϚϧντϥοΫ w ެืηογϣϯ w ΦϑΟγϟϧύʔςΟʔ w ϊϕϧςΟ
˔˔˔͚ͩ͋Ε ΧϯϑΝϨϯεΛ େنʹ։࠵Ͱ͖Δ
ΞδΣϯμ ౦ژ3VCZձٞͱ ։࠵Ϟνϕʔγϣϯ ։࠵ͷஈऔΓ ࠷େͷΞΫγσϯτ
։࠵Ͱͬͱେࣄͳͷ
౦ژ3VCZձٞ ͱ
Ҭ3VCZձٞ ϓϩδΣΫτͱ
IUUQSFHJPOBMSVCZLBJHJPSH
IUUQLBLVUBOJDPNIUNMQ
4BU 5PLZV3VCZձٞ 4BU ौ୩ 3VCZձٞ 4BU
େߐ ށ3VCZձٞ 4BU 5PLZV3VCZձٞ 4BU দߐ 3VCZձٞ 4BU ԭೄ 3VCZձٞ 4BU ࡳຈ ࢢதԝ۠3VCZձٞ 4BU ͱͪ ͗3VCZձٞ 4BU ؔ 3VCZձٞ 4BU Ԭࢁ 3VCZձٞ 4BU 5PLZV3VCZձٞ 4VO भ3VCZձٞ 4BU େߐ ށ3VCZձٞ 4BU ͙Μ ·3VCZձٞ 4VO ʙ .PO ౦ژ3VCZ ձٞ 4BU Ԭ 3VCZձٞ 'SJ ʙ 4VO ࡳຈ3VCZձٞ 4BU দߐ 3VCZձٞ 4VO 5PLZV3VCZձٞ 4BU Ԭࢁ 3VCZձٞ 4BU Έͳ ͱ3VCZձٞ 5VF େ ߐށ3VCZձٞ 4BU ͱͪ ͗3VCZձٞ 'SJ ʙ 4BU ؔ3VCZձٞ 4BU 5PLZV3VCZձٞ 4VO দ ߐ3VCZձٞ 4VO 5PLZV3VCZձٞ 4VO େ ߐށ3VCZձٞ 4BU ໊ݹ 3VCZձٞ 4BU ͱͪ ͗3VCZձٞ 'SJ ౦ژ 3VCZձٞ 4BU ࡳຈ 3VCZձٞ 'SJ ʙ 4BU ؔ3VCZձٞ 4BU 5PLZV3VCZձٞ 4BU ઋ 3VCZձٞ 4VO ౦ ژ3VCZձٞ 4BU দߐ 3VCZձٞ 4BU ࡳຈ 3VCZձٞ 4VO 5PLZV3VCZձٞ 'SJ ʙ 4BU ؔ3VCZձٞ 4BU ͱͪ ͗3VCZձٞ 4BU ໊ݹ 3VCZձٞ 8FE ౡ3VCZձٞ 4BU ͱͪ ͗3VCZձٞ .PO দ ߐ3VCZձٞ 4BU ઋ 3VCZձٞ 4VO भ3VCZձٞ 'SJ ʙ 4BU ؔ3VCZձٞ 4BU ࡳຈ 3VCZձٞ 5IV ౦ ژ3VCZձٞ
౦ژ3VCZձٞ
IUUQUPLZPSVCZLBJHJJOGP
IUUQXXXNJIBNBIBMMKQNBJOIBMMIUNM
IUUQNBHB[JOFSVCZJTUOFU 5PLZP3VCZ,BJHJ3FQPSU@TU
։࠵Ϟνϕʔγϣϯ
ελοϑ.-ΑΓ ౦ژͷ߹ˣ ʮͬͱձٞΛɺͬͱରΛɺͬͱઓΛʯΛςʔϚͱ͠ɺ ΑΓଟ͘ͷ3VCZJTU͕͠ΓࠐΈ͢Δ͜ͱͳ͘ɺ ΞΫςΟϒʹΠϕϯτू·ΓʹࢀՃͰ͖ΔΑ͏ͳ͖͔͚ͬͱ ͳΔ͘ɺࢀՃऀಉ࢜ͷ͠߹͍Λத৺ʹਾ͑ͯɺ ࣝͷୡɺจ຺ͷڞ༗ɺͷղܾͳͲͱ͍ͬͨ͜ͱΛاਤ ͍ͯ͠·͢ɻ
ελοϑ.-ΑΓ ࠓճʮͬͱձٞΛɺͬͱൃݴΛɺͬͱઓΛʯͱ͍͏ ײ͔͡ͳ͋ɻ -5SFKFDUͰ͍༨ͬͯͪ͠Ό͏ࣄΛɺ-5ͱҧͬͯಔᮐΦ ν͡Όͳ͍ηογϣϯͱͯͨ͘͠͞ΜͰ͖Δͱ͍͍ͳ͋ͱɻ
͢ਓͱฉ͘ਓͷ ൺΛม͍͑ͨ
ΧϯϑΝϨϯεͳΒͰ w େ͖ͳςʔϚͰू·ΕΔ w ͡ΊͯͷਓʹΞϓϩʔνͰ͖Δ w إΛ߹Θ͕ͤͯͰ͖Δ
։࠵ͷஈऔΓ
खͷͻΒʹऩ·Βͳ͍
ࢥ͍͖ͭͰͰ͖ͳ͍ w 8FCϖʔδ w ืूαΠτ w ։࠵झҙॻ w ελοϑ༻λΠϜςʔϒϧ w
ࢀՃऀ༻λΠϜςʔϒϧ w උϦετ w ༧ࢉϦετ w ࢧ͍࣮Ϧετ w Ξφϯεຊ w ελοϑϦετ w ൃදऀϦετ w ࢀՃऀϦετ w εϙϯαʔରԠ w υΩϡϝϯτཧ w ϊϕϧςΟ w ϩΰը૾ w ใ w ࿈བྷ
None
None
None
None
ෆ҆ɾ৺
ෆ҆ɾ৺ͷରࡦ w είʔϓௐ w lΒͳ͍zܾஅΛԼ͢ w ظؒతόοϑΝ w ݸਓͷl࠷େݶͷྗzʹཔΔ͜ͱʹͳΔ w
ࢿۚతόοϑΝ w ίϛϡχςΟΠϕϯτʹݶΒͣΈਂ͍
࠷େͷΞΫγσϯτ
IUUQNBHB[JOFSVCZJTUOFU 5PLZP3VCZ,BJHJ3FQPSU@TU
IUUQNBJOJDIJKQHSBQI PSHNDIUNM
Ͱ͖Δରࡦແ͍
౻
தஅએݴ
ϦΧόϦʔ
ෆ҆ɾ৺ͷରࡦ w είʔϓௐ w lΒͳ͍zܾஅΛԼ͢ w ظؒతόοϑΝ w ݸਓͷl࠷େݶͷྗzʹཔΔ͜ͱʹͳΔ w
ࢿۚతόοϑΝ w ίϛϡχςΟΠϕϯτʹݶΒͣΈਂ͍
IUUQXXXTIJCVDVMKQHVJEF@TBLVSBIUNM
ͷՃ։࠵ IUUQNBHB[JOFSVCZJTUOFU 5PLZP3VCZ,BJHJ3FQPSU@OE
ͦͷޙ
IUUQSFHJPOBMSVCZLBJHJPSHTIJCVZB IUUQXXXPLJOBXBSCPSHPLSL
None
ࣗͨͪͳΓͷٕज़Χ ϯϑΝϨϯε։͚Δ
։࠵Ͱͬͱ େࣄͳ͜ͱ
3VCZͷཧղʁ λεΫཧʁ εέδϡʔϧཧʁ ༧ࢉཧʁ
࣮ߦҕһͷ͍
Կނ։࠵͍ͨ͠ͷ͔
͍ͷݴޠԽ
։࠵झҙॻ
։࠵झҙॻ͚ͩ͋Ε ΧϯϑΝϨϯεΛ େنʹ։࠵Ͱ͖Δ
IUUQNBHB[JOFSVCZJTUOFU 'PSF8PSE
։࠵झҙॻΛॻͨ͘Ίʹ w ؒΛݟ͚ͭΔ w ςʔϚɺํੑΛग़͢ w ։࠵झҙॻͱཱͯͯ͠Δ
ؒΛݟ͚ͭΔ
ςʔϚɺํੑΛग़͢
ʮଓ͖·ͤΜʯ ܧଓੑଞͷίϛϡχςΟͰؤு͍͖͍ͬͯͨͩͨ Ұൃ্ ! ͬͱ͢ػձΛ࡞Γ͍ͨ ౦ژͷ߹ˣ ʮͬͱձٞΛɺͬͱରΛɺͬͱઓΛʯΛςʔϚͱ͠ɺΑ Γଟ͘ͷ3VCZJTU͕͠ΓࠐΈ͢Δ͜ͱͳ͘ɺ ΞΫςΟϒʹΠϕϯτू·ΓʹࢀՃͰ͖ΔΑ͏ͳ͖͔͚ͬͱͳΔ͘ɺ ࢀՃऀಉ࢜ͷ͠߹͍Λத৺ʹਾ͑ͯɺ
ࣝͷୡɺจ຺ͷڞ༗ɺͷղܾͳͲͱ͍ͬͨ͜ͱΛاਤ͍ͯ͠· ͢ɻ ಉ͡จݴͰදݱ͢ΔͱɺࠓճʮͬͱձٞΛɺͬͱൃݴΛɺͬ ͱઓΛʯͱ͍͏ײ͔͡ͳ͋ɻ -5SFKFDUͰ͍༨ͬͯͪ͠Ό͏ࣄΛɺ-5ͱҧͬͯಔᮐΦν͡Ό ͳ͍ηογϣϯͱͯͨ͘͠͞ΜͰ͖Δͱ͍͍ͳ͋ͱɻ
ࣗʹͱͬͯͬͨ͜ͱͳ͍͜ͱɾܦݧ͕গͳ͍͜ͱΛΓ͍ͨ ϗʔϧͰͦ͢ΕͳΓك༗ͳࣄΛϥΠτΣΠτʹΓ͍ͨ ෳ։࠵ ʮͷͷྑ͞ͱईͷେখΘΓͳ͠ͱଘ͡·͢Δʯͬͯݹా৫෦͕ ݴͬͯͨʢ͏͛ͷͰʣ͚Ͳɺ͍ͬΜେ͖͍ͷͬͯΈ͍͍ͯ ͔ͳ͋ͱ ! ͦͷଞ IUUQKQSVCZJTUOFUNBHB[JOF
3VCZ$POGM͕ڹ͍ͯΔ ԶͷΛฉ͍ͯΔͦ͜ͷ͓·͑ΒΧϯϑΝϨϯε࠲ͬͯฉ͍ͯΔ Μ͡ΌͶ͓͑·͑ΒΠϕϯτΛΦʔΨφΠζ͠ΖZQͱ͍͏ɻ
։࠵झҙॻͱͯ͠ ཱͯΔ
ʮͦ͏ɺू·Ζ͏ɺ ͍ͭͷ3VCZɺ ৗͷ3VCZʯ
౦ژ3VCZձٞΛ ߴΒ͔ʹએݴ͢Δ w ౦ژ3VCZձٞͱԿ͔ w औΓר͘ঢ়گ w ঢ়گΛ౿·࣮͑ͯݱ͍ͨ͠ࣄ w ࣮ݱ͍ͨ͜͠ͱΛຬͨ͢खஈ
౦ژ3VCZձٞͱԿ͔ ౦ژ3VCZձٞͱɺ֤ͷҬ3VCZίϛϡ χςΟ͕த৺ͱͳͬͯ։࠵͍ͯ͠ΔΦϒδΣΫτࢦ εΫϦϓτݴޠ3VCZʹؔ͢ΔΧϯϑΝϨϯεͰ ͋ΔҬ3VCZձٞͷҰͭͰ͢ɻ ౦ژҬͰɺʹߦΘΕͨ౦ژ3VCZձٞ Ҏདྷɺ༷ʑͳςʔϚΛ๊͍༷ͨʑͳओ࠵ऀͷ ͱͰόϥΤςΟ๛͔ʹ։࠵͞Ε͓ͯΓɺ͜ͷ౦ژ 3VCZձ͕ٞͪΐ͏Ͳݸͷ։࠵ͱͳΓ·͢ɻ
औΓר͘ঢ়گ ࠓ౦ژͰͷ3VCZJTUΛऔΓר͘ঢ়گͱͯ͠ɺ3VCZʹؔ͢ΔίϛϡχςΟ ׆ಈΠϕϯτ։࠵͕සൟʹ͋ΓɺΦϑϥΠϯͰͷަྲྀΛ͘͝ৗతʹߦ͏͜ ͱ͕Ͱ͖·͢ɻू·Γͷنιϩ׆ಈਓɺेਓͷίϯύΫτͳͷ͔ Βɺਓɺਓ͕ू·Δେֻ͔Γͳͷ·Ͱ༷ʑͰ͢ɻ ओ࠵ऀɾओ࠵ஂମҰͭͷதԝूݖతͳଘࡏ͕͋ΔΘ͚Ͱͳ͘ɺͦΕͧΕ͕ ΏΔ͔ʹܨ͕͍ͬͯ·͢ɻࢀՃऀͦΕͧΕগͣͭ͠ҟͳͬͨίϯςΩετ ҙࣝΛ͓࣋ͬͯΓɺͿΒΓͱڵຯͷ͋Δू·ΓͷճʹࢀՃ͢ΔͨΊɺݸ ਓݸਓͷ๛͔ͳܨ͕Γ͕࡞Γ্͛ΒΕ͍ͯ·͢ɻ ·ͨ୯ʹҜࢠʹ࠲ͬͯΛഈௌ͢Δ͚ͩͰͳ͘ɺڞಉ࡞ۀΛͨ͠ΓɺϓϨθϯ
ςʔγϣϯΛߦͬͨΓɺνϡʔτϦΞϧΛ։͍ͨΓͱɺΞΫςΟϒʹ׆ಈͰ͖ ΔࢀՃऀ͕ଟ͘ଘࡏ͍ͯ͠·͢ɻू·ΓͷதͰɺඈͼೖΓίϯςϯπΛืू͢ ΔͱΛ͑ΔԠื͕ࡴ౸͢Δͱ͍͏͜ͱ͋͘͠Γ·ͤΜɻ
ঢ়گΛ౿·࣮͑ͯݱ͍ͨ͠ࣄ ౦ژ3VCZձٞɺͦͷΑ͏ͳ౦ژʹ͓͚Δ3VCZίϛϡχςΟͷ ίϯςΩετΛϕʔεͱͯ͠ɺେ͖ͳنͰ3VCZJTU͕ͨͪҰಉʹձ ͠ɺٕज़తɾਓతަྲྀΛߦ͏͜ͱΛओͱͯ͠։࠵͠·͢ɻ ͜Ε͔ΒަྲྀΛ͍࣋ͪͨͱ͍͏ํ͕͜͜ަྲྀͷ͖͔͚ͬͱͳΔΑ͏ͳɻ ͢ͰʹԿΒ͔ͷަྲྀΛ͍ͬͯΔํߋʹަྲྀͷ෯Λ૿ͤΔΑ͏ͳɻ ·ͨɺʑͷ׆ಈͰഓ͖ͬͯͨ͜ͱɺࣗࣗͷ͜ͱΛɺଟ͘ͷਓ͕ ͠ɺฉ͖ɺࠓޙͷܹ׆ಈͷྐͰ͖ΔΑ͏ͳɻ ͦ͏͍͏ΛօͰΓ͍͋͛ͨͱߟ͍͑ͯ·͢ɻ
࣮ݱ͍ͨ͜͠ͱΛຬͨ͢खஈ ͦ͜Ͱɺ౦ژݍͰ׆ಈ͍ͯ͠ΔͰ͖Δ͚ͩଟ͘ͷ 3VCZJTU͕ࢀՃͰ͖ΔΑ͏ʹɺࠃࡍతͳ3VCZͷ ΧϯϑΝϨϯεͰ͋Δຊ3VCZձٞʹ͙࣍Ϩϕ ϧͷنͰ͋Δɺٳॕ݄ؒɺ Λձظͱͯ͠ɺ౦ژݍʹҐஔ͠౦ژӺ͔Βμ ΠϨΫτΞΫηεՄೳͳརศੑΛ࣋ͭඒจԽϗʔ ϧΛձͱͯ͠ɺͷਓنͰ։࠵͠·͢ɻ
࣮ݱ͍ͨ͜͠ͱΛຬͨ͢खஈ ༰ͱͯ͠ɺීஈࢀՃ͍ͯ͠Δू·ΓͰτʔΫൃදΛߦ ͳ͍ͬͯΔ͜ͱΛɺීஈΑΓଟ͘ͷਓΛר͖ࠐΉ͖͔͚ͬʹ ͳΔΑ͏ɺͰ͖Δ͚ͩଟ͘ͷਓʹొஃɾൃද͍͚ͨͩΔΑ͏ ͳΛڽΒ͠·͢ɻ·ͨɺಉ͡ڵຯίϯςΩετΛ࣋ͬ ͨࢀՃऀಉ࢜Ͱٞަྲྀ͠ɺࠓޙͷίϛϡχςΟ׆ಈͷ͖ͬ ͔͚ʹͳΔΑ͏ɺ༷ʑͳίϯςϯπΛઃ͚·͢ɻ ੋඇɺࠒ׆ಈ͍ͯ͠ΔՌΛ࣋ͪدΓɺେ͍ʹू·ͬͯࢀ Ճऀಉ࢜͘ਂ͘Λ͠·͠ΐ͏ɻଟ͘ͷΈͳ͞·ͷ͝ࢀՃ Λ͓ͪਃ্͛͠·͢ɻ
l-JHIUOJOH5BMLTͷ ϘϦϡʔϜͱؾܰ͞Ͱ ϝΠϯϗʔϧʹཱͭz
։࠵झҙॻΛ ·ͣߟ͑ͯΈΑ͏
IUUQTHJUIVCDPNSVCZOPLBJP⒏DJBMXJLJ3FHJPOBMSVCZLBJHJ
CBTI$ ౦ژ3VCZձٞ ऴ l࣍܅ͷ൪z