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
#oedo10 継続的 #RubyMuscleMixin 実践入門/RubyMuscleMixin
Search
bash0C7
October 15, 2023
Technology
0
2.6k
#oedo10 継続的 #RubyMuscleMixin 実践入門/RubyMuscleMixin
大江戸Ruby会議10 Ninja Talks 2
https://regional.rubykaigi.org/oedo10/
#oedo10
bash0C7
October 15, 2023
Tweet
Share
More Decks by bash0C7
See All by bash0C7
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
890
2011年 「ぼっちが懇親会でするべき97のこと」 #97bocchi から積み重ねた【令和7年最新】技術コミュニティ交流戦略2025
bash0c7
1
810
「笑顔」を伝える リモートMTG時代のコミュニケーション戦術
bash0c7
0
99
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
1.5k
20250527 #shinjukurb KaigiEffect LT
bash0c7
2
67
【加筆修正版】ハードワークを支えるフィジカルとメンタルを構築る#rubymusclemixin 活動 #きのこ2025 #きのこ2025_b
bash0c7
0
280
存在感を構築る方法
bash0c7
0
120
introduction
bash0c7
0
75
みんな大好き 🫶🏼 取引先との「セキュリティチェックリスト」への付き合い方
bash0c7
0
2.4k
Other Decks in Technology
See All in Technology
[mercari GEARS 2025] Building Foundation for Mercari’s Global Expansion
mercari
PRO
1
150
入社したばかりでもできる、 アクセシビリティ改善の第一歩
unachang113
2
330
膨大なデータをどうさばく? Java × MQで作るPub/Subアーキテクチャ
zenta
0
110
Redux → Recoil → Zustand → useSyncExternalStore: 状態管理の10年とReact本来の姿
zozotech
PRO
20
8.8k
AIを前提に、業務を”再構築”せよ IVRyの9ヶ月にわたる挑戦と未来の働き方 (BTCONJP2025)
yueda256
1
790
2ヶ月で新規事業のシステムを0から立ち上げるスタートアップの舞台裏
shmokmt
0
240
AI エージェントを評価するための温故知新と Spec Driven Evaluation
icoxfog417
PRO
1
410
重厚長大企業で、顧客価値をスケールさせるためのプロダクトづくりとプロダクト開発チームづくりの裏側 / Developers X Summit 2025
mongolyy
0
160
Rubyist入門: The Way to The Timeless Way of Programming
snoozer05
PRO
7
530
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
360
Javaコミュニティの歩き方 ~参加から貢献まで、すべて教えます~
tabatad
0
130
個人から巡るAI疲れと組織としてできること - AI疲れをふっとばせ。エンジニアのAI疲れ治療法 ショートセッション -
kikuchikakeru
4
1.7k
Featured
See All Featured
Bash Introduction
62gerente
615
210k
The Invisible Side of Design
smashingmag
302
51k
A Tale of Four Properties
chriscoyier
162
23k
How STYLIGHT went responsive
nonsquared
100
5.9k
Become a Pro
speakerdeck
PRO
29
5.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Writing Fast Ruby
sferik
630
62k
For a Future-Friendly Web
brad_frost
180
10k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Transcript
!CBTI$ ܧଓత3VCZ.VTDMF.JYJO࣮ફೖ େߐށ3VCZձٞ/JOKB5BMLT IUUQTQIPUPTHPPHMFDPNTIBSF"'2JQ0NZK.#XD:3Q"+:RO,57;O,S32NYDH7/N,0;%G'@3+%ME.8U.*N;.;(EHQIPUP"'2JQ197'"@Q*5EpI@:4''1C'8V36$,8@[T LFZ0867LQG3&Y,2O+F8;,;5/VB[L6IIC'/Y2CZLPZIPHF
SVCZLBJHJFGGFDU
None
IUUQTCBTIDP⒏DJBMGBOCPYDDQPTUT
IUUQTCBTIDP⒏DJBMGBOCPYDDQPTUT
None
IUUQTCBTIDP⒏DJBMGBOCPYDDQPTUT
IUUQTXXXGBOCPYDDUBHT3VCZ.VTDMF.JYJO IUUQTUXJUUFSDPNTFBSDI R3VCZ.VTDMF.JYJOTSDUZQFE@RVFSZGMJWF
IUUQTYDPNCBTI$TUBUVT IUUQTCBTIDP⒏DJBMGBOCPYDDQPTUT
ܧଓత3VCZ.VTDMF.JYJO࣮ફೖ େߐށ3VCZձٞ/JOKB5BMLT !CBTI$
!CBTI$ͬ͜͠͠Ύ IUUQTCBTIDP⒏DJBMGBOCPYDD w ·͡Ίͳ4&ݱ৬ϐΫγϒ ג બख w ࠂ৴ΤϯδχΞˠ։ൃϚωʔδϟʔ ˠؔ࿈ձࣾ$50ˠ71P&ˠࣾ*5෦্ཱͪ͛ ˠܦӦاըิࠤ
w ٕज़৬ԣஅ৫ΤϯδχΞΪϧυ্ཱͪ͛
Θͨ͠ͷ 3VCZ.VTDMF.JYJO࣮
͔ͭͯԿ܁Γฦ͖ͯ͠·ͨ͠ɻ δϜܖͯ͠࠷ॳ৺ʹߦ͘ɻ ͦͷ͏ͪߦ͔ͳ͘ͳΔɻ ৺ػҰసͱ͔Γʹ·ͨߦ͕͘ɺ ͙͢ʹ·ͨߦ͔ͳ͘ͳΔɻ
ΤϯδχΞϦϯάͰղܾ͢Δ ࠜੑɺ͕ΜΓɺͦ͏͍͏ͷφγͰ
ΟʔΫϦʔϧʔςΟʔϯ ͔Βͪ͜Βɻ·ͩɻ w ΣΠττϨʔχϯά w ि෦Ґׂ w ճ͋ͨΓ͙࣌ؒΒ͍ w Ϩετσʔ
w ि w ڑࢄาʹͯΔ͜ͱ͋Δ
ΤϯδχΞϦϯάͷ ΩʔϙΠϯτ
ᶃܹΛےણҡʹೖΕΔ͜ͱ -PBE
ᶄ࠳͠ͳ͍͜ͱ "WBJMBCJMJUZ
ʮτϨʔχϯάͷ̏ͭͷݪཧͱ̑ͭͷݪଇʯ IUUQTZVOPNBSVDJUZUPNJOBHBOPKQUSBJOJOH@JOGPU
ʮτϨʔχϯάͷ̏ͭͷݪཧͱ̑ͭͷݪଇʯ ͭͷݪཧ w ϩʔυ͔͚ΔͱޮՌ͕ͰΔ w ͬͨͱ͜ΖʹޮՌ͕ͰΔ w ΊͨΒݩͷѨ
ʮτϨʔχϯάͷ̏ͭͷݪཧͱ̑ͭͷݪଇʯ ͭͷݪଇ w ৭ʑΈ߹ΘͤΑ͏ w ݸਓ͝ͱʹΧελϜ͠Α͏ w ҙࣝΛ͚Α͏ w ਐతʹ͔͠৳ͼͳ͍Α
w ܁Γฦ͠େࣄ
Θͨ͠ͷ3VCZ.VTDMF.JYJOͷ࣮ ΤϯδχΞϦϯάͷΩʔϙΠϯτ w -PBE w ܹΛےણҡʹೖΕΔ͜ͱ w "WBJMBCJMJUZ w ࠳͠ͳ͍͜ͱ
ᶃܹΛےણҡʹೖΕΔ͜ͱ -PBE
֤෦ҐʹܹΛೖΕ͍ͯ͘ ͔͠ਐతʹڧ͍ܹΛ IUUQTZVOPNBSVDJUZUPNJOBHBOPKQUSBJOJOH@JOGPU
શΛׂͯ͠෦Ґʹूத ʮࠓ˔˔ͷʯํࣜͷϧʔςΟʔϯͰόϥϯεऔΓ w ϧʔςΟʔϯߏ w ڳɺഎதɺݞɺ٭ɺɺٳଉɺٳଉ w ʮׂʯ w Θͨ͠ͷϨϕϧͰ͚͔͗͢͠Εͳ͍
w ͰγϯϓϧͰ໎͏ͱ͜Ζ͕গͳͯ͘ଓ͚͍͢
୯ҐɿLH -PBEॏྔYճ
-PBEͷ͔͚ํ Ͱ͖Δ͚ͩॏ͍ͷΛͨ͘͞ΜͷճΔ w छɿdηοτ w ηοτؒٳଉɿd͙Β͍ w ηοτ͋ͨΓճɿʙճͷϨϯδͰݻఆ w ॏྔઃఆɿճϨϯδͰલճ͑Λࢦ͢
w ૯ηοτͦͷ͔ͭ͑Δ࣌ؒͷݶΓ w ͱݴ͍͍ͨͱ͜Ζ͕ͩɺ͍͍͙ͩͨ࣌ؒΒ͍
ͭ·Γɺ࠷େͷมॏྔઃఆ
ॏྔઃఆΛ୳Δํ๏ ه͋Δ͚ͲɺମௐػछʹΑͬͯมΘΔ w ճϨϯδͰʮ͜ΕҎ্ΉΉΉΓΓΓΓΓΓΓΓ́ʯʹ͖ͨΒྃ w όΠφϦʔαʔν w ΤΠϠʔͰηοτͯ͠ɺ͍͚ΔΉΓͰ୳Δ w ͱ͍͑͜͜·Ͱख୳Γͦ͏ͳ͍
w ϦχΞαʔν w ηοτ͝ͱʹॏྔΛ૿͢ w ΥʔϜΞοϓʹͳͬͯศར
ΤϯδχΞϦϯάͷ ΩʔϙΠϯτ
ᶄ࠳͠ͳ͍͜ͱ "WBJMBCJMJUZ
ܧଓେࣄͱ͍͑Δ ͍͔͠Βͦ͜Θ͟Θ͟ॻ͍ͯ͋Δ IUUQTZVOPNBSVDJUZUPNJOBHBOPKQUSBJOJOH@JOGPU
࢝ΊΒΕͯଓ͚ΒΕͳ͍ͷ͕ਓੜ $FTUMBWJFͰ͢Α w ௨͍͠ͳ͍δϜ݄ձඅΛ͍ଓ͚ΔΤϯυ w ͍ʹͨͬͯ͠ߦ͖͠ͳ͍ w ύʔιφϧ༧ͱΔͷ͕໘ʹͳͬͯ͠·͏ w ͍͔ʹଓ͔ͤΔ͔ɺ͔͔͠ΔલʹϦςϯγϣϯ͔͚Δ͔͕উෛ
w ήʔϜࣄۀͱҰॹ
.5#'ͱ.553 "WBJMBCJMJUZͷݹయతࢦඪ w .5#'ɿ w .FBO5JNF#FUXFFO'BJMVSF w ฏۉނোִؒ w .553ɿ
w .FBO5JNF5P3FDPWFSZ w ฏۉ෮چͪ࣌ؒ
.5#'ͱ.553 "WBJMBCJMJUZͷݹయతࢦඪ w .5#'ɿ w .FBO5JNF#FUXFFO'BJMVSF w ฏۉނোִؒ w .553ɿ
w .FBO5JNF5P3FDPWFSZ w ฏۉ෮چͪ࣌ؒ Ξϯίϯτʔϥϒϧ ڐ༰͢Δ ͪ͜Βʹྗ͢Δ
.5#'ͱ.553 "WBJMBCJMJUZͷݹయతࢦඪ w .5#'ɿ w .FBO5JNF#FUXFFO'BJMVSF w ฏۉނোִؒ w .553ɿ
w .FBO5JNF5P3FDPWFSZ w ฏۉ෮چͪ࣌ؒ ͍ΖΜͳࣄͰ τϨʔχϯάͰ͖ͳ͍ෆճආ ɾࠓମௐ͕Α͘ͳ͍ ɾࣄ͕͍͠ ɾಓ۩ΛΕͨ ʮࠓ͚ͩٳ͏ʯ͕ɺ ߃ৗతͳٳΈʹͳΒͳ͍Α͏ʹ͢Δ
ʮࠓ͚ͩٳ͏ʯ͕߃ৗతͳٳΈʹͭͳ͕Δ࠷େཁҼ ೳಈతʹʮߦ͘ʯ அίετੌ͍
ೳಈతʹʮߦ͘ʯஅίετੌ͍ͳΒ ߦ͘அΛ͠ͳ͚Ε͍͍
͔Βͩͭ͘Γຖͷͷ ٯʹɺٳଉແ͠Ͱμϝ͕͋Δ w ࡢʮٳΉʯͱ͍͏͔Βͩͭ͘ΓΛ͠·ͨ͠Ͷ w ࠓࠓͷ͔Βͩͭ͘ΓΛ͠·͠ΐ͏ w ϧʔςΟʔϯʹ͍ͦͬͯͭ௨ΓΛΒ͢ w ຖͷ͜ͱΛຖͷΑ͏ʹΔ
w Ϟνϕ͕͡Όͳ͍ɻʮͩͬͯࣄͰ͠ΐʯ
͋ΘͤͯຎࡲݮΒͦ͏
ຎࡲ࠳Λਖ਼Խ͢Δཧ۶ͷ༨ ͍ͱͨ͘͢ਓྨ࠳͢ΔͷͰͦͷՄೳੑԼ͍͛ͨ w ॴબͼ w ߦ͖͔ͯͭ͘͢ܧଓͯ͠ࢧ͑Δॴͷબఆ w Ṍ͚ۚΛੵΈଓ͚Δͱൈ͚Ͱ͖ͳ͘ͳΔ w ܧଓͷ͝๙ඒ
w ຖճͷܹͷྔ͚ͩͰ͝๙ඒʹΓͳ͍ w ใुܥΛܹͯ͠μϧ͍ͷʹճΛॏͳΔΑ͏ʹ͢Δ
ॴબͼ ߴֹա͗͠ΜͲ͍͕ίετΛ͔͚ଓ͚ͯ߱ΓΒΕͳ͘͢Δ খֹ ߴֹ Πχγϟϧ ϥϯχϯά ύʔιφϧ ࣗδϜԽ άϧʔϓύʔιφϧ ແਓδϜ
༗ਓͷδϜ ެӦࢪઃ ࣗͰࣗॏ
ܧଓͷ͝๙ඒήʔϜੑ ͚ࣗͩͰ݁Ͱ͖Δͨͷ͍͠ιϩϓϨΠͷΤϯλʔςΠϯϝϯτ w ଞऀͱίϛϡχέʔγϣϯ͕ෆཁ w ࣄͰ͓ͳ͔͍ͬͺ͍ύʔςΟʔϓϨΠͬͯ·͢ w ϨϕϧΞοϓͷ͏Ε͠͞ w ࠷େͷ-PBEΛߋ৽Ͱ͖Δͱ͏Ε͍͠ϥϯμϜใु
w ຖ݄ͷτϨʔχϯάͨ͠ΛͨΊΔ w ϥδΦମૢͷελϯϓํࣜɻ࿈ଓϩάΠϯ్ΕΔͱݏ͔ͩΒݟͳ͍
۩ମతͳ͓͢͢Ί࣮
͔݁Β͍͏ͱ ͱΓ͋͑ͣΰʔϧυδϜΛΦεεϝ w τϨʔφʔ͖ͭνϡʔτϦΞϧ w श׳Խࠜ͘ظؒͱϘϦϡʔϜ w ϩάΠϯϘʔφε͋Δ w τϨʔφʔͷઆಘྗ͕ڧ͍
w ٬͕Α͍ w ૯͚ͯࣗͩ͡ʹ͖߹͍ͬͯΔ
ଞͷબࢶ͍͍ͷͰ͢ ·ͣ౿Έग़͍͢͠ͷ͔Βଓ͔͘ͳΛࢼ͢ͷ͍͍ w ࣗͰࣗॏ w ࣗͰଓ͚ΒΕΔͷͳΒͬͱ͓͕͔͔ۚΒͳ͍ w ެӦͷδϜ w Ϧʔζφϒϧ͕͞ϋʔυϧͷ͞ͱͯ͠͡Ί͍͢
w ແਓδϜ w ௨͍ଓ͚ΒΕΔ͔ͱɺ͓ళͷ٬࣍ୈͱࢥ͏ w ύʔιφϧτϨʔχϯά w ͍͍τϨʔφʔʹग़ձ͑ͨͳΒଓ͚ͯ͘͢ޮՌͷظߴ͍
ࣗͰϩάΠϯϘʔφεΛ༻ҙ ۩ମతʹʮϥδΦମૢͷελϯϓʯϝιου w هΛՃ͢Δ͚ͩͰ˔͕͍ͭͯ͏Ε͍͠ w ͞Βʹ࠷େ-PBEߋ৽Λڭ͑ͯ͘ΕΔͷ͏Ε͍͠ w
ϧʔςΟʔϯ ෦ҐγϯϓϧʹऔΓΈ͍͢ w શ·ΜΜͳ͘Λϝχϡʔʹ͢Δͷ֮͑Δෛՙ͕ߴ͍ w ෦ҐͰ͋Εஔ͍ͯ͋Δͦͷ෦Ґ༻ϚγϯΛͱʹ͔͑͘ऴΘΔ w ڳɺഎதɺݞɺ٭ɺ
෦ҐͷதͰҰճͰͬͨΒʮͰ͖ͨʯѻ͍ θϩΠν͡Όͳ͍ɺͪΐͬͱͰͬͨΒมԽ͕ى͖Δ w ຖɺΓ͡ΊΔͱ͖͕͍ͪΜ͔ͬͨΔ͍ w ͰΓ͡ΊͨΒ࡞ۀڵฃ͕ੜ͡Δ w τʔλϧͷϩʔυߋ৽ϋΠείΞͷ໘ന͞
ࢀߟࢿྉ ͍ͣΕ,JOEMFͰಡΉ͜ͱ͕Ͱ͖·͢
ܧଓత3VCZ.VTDMF.JYJO࣮ફೖ େߐށ3VCZձٞ/JOKB5BMLT !CBTI$ IUUQTQIPUPTHPPHMFDPNTIBSF"'2JQ0NZK.#XD:3Q"+:RO,57;O,S32NYDH7/N,0;%G'@3+%ME.8U.*N;.;(EHQIPUP"'2JQ197'"@Q*5EpI@:4''1C'8V36$,8@[T LFZ0867LQG3&Y,2O+F8;,;5/VB[L6IIC'/Y2CZLPZIPHF