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
1.7k
#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
存在感を構築る方法
bash0c7
0
68
introduction
bash0c7
0
31
みんな大好き 🫶🏼 取引先との「セキュリティチェックリスト」への付き合い方
bash0c7
0
2k
【公開版資料】発表資料 新メンバー活躍までのオンボーディングとそのTips
bash0c7
1
880
Shinjuku.rb #91 好きなもの紹介LT大会 "便利"や"役に立つ"とは別方面のRubyをつかったプログラミングがたのしい話
bash0c7
0
230
inside_announce
bash0c7
0
760
【公開版】マネジメントにおける 「技術選択」の勘所 / The key to technology selection in engineering management
bash0c7
0
340
数百人規模の会社でアイデアを組織的にインストールする実例と再現性の要/Pragmatic Fearless Change #devkan
bash0c7
0
230
【公開版】明日から動ける 切り拓け「おいしい」キャリア/build one's career #careerkaigi
bash0c7
2
480
Other Decks in Technology
See All in Technology
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
17
45k
OPENLOGI Company Profile for engineer
hr01
1
20k
2025/3/1 公共交通オープンデータデイ2025
morohoshi
0
100
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
500
AWS Well-Architected Frameworkで学ぶAmazon ECSのセキュリティ対策
umekou
2
150
30→150人のエンジニア組織拡大に伴うアジャイル文化を醸成する役割と取り組みの変化
nagata03
0
200
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
14
5.3k
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
8
750
IoTシステム開発の複雑さを低減するための統合的アーキテクチャ
kentaro
1
120
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
7
3.2k
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
8
3.9k
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.5k
Featured
See All Featured
Site-Speed That Sticks
csswizardry
4
410
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Scaling GitHub
holman
459
140k
What's in a price? How to price your products and services
michaelherold
244
12k
Gamification - CAS2011
davidbonilla
80
5.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
How GitHub (no longer) Works
holman
314
140k
We Have a Design System, Now What?
morganepeng
51
7.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
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