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.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
存在感を構築る方法
bash0c7
0
53
introduction
bash0c7
0
19
みんな大好き 🫶🏼 取引先との「セキュリティチェックリスト」への付き合い方
bash0c7
0
1.7k
【公開版資料】発表資料 新メンバー活躍までのオンボーディングとそのTips
bash0c7
1
840
Shinjuku.rb #91 好きなもの紹介LT大会 "便利"や"役に立つ"とは別方面のRubyをつかったプログラミングがたのしい話
bash0c7
0
190
inside_announce
bash0c7
0
720
【公開版】マネジメントにおける 「技術選択」の勘所 / The key to technology selection in engineering management
bash0c7
0
330
数百人規模の会社でアイデアを組織的にインストールする実例と再現性の要/Pragmatic Fearless Change #devkan
bash0c7
0
210
【公開版】明日から動ける 切り拓け「おいしい」キャリア/build one's career #careerkaigi
bash0c7
2
470
Other Decks in Technology
See All in Technology
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
AWS re:Invent 2024 ふりかえり
kongmingstrap
0
130
宇宙ベンチャーにおける最近の情シス取り組みについて
axelmizu
0
110
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
620
podman_update_2024-12
orimanabu
1
260
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
180
AI時代のデータセンターネットワーク
lycorptech_jp
PRO
1
280
オプトインカメラ:UWB測位を応用したオプトイン型のカメラ計測
matthewlujp
0
170
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
320
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
150
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
110
非機能品質を作り込むための実践アーキテクチャ
knih
3
700
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The Invisible Side of Design
smashingmag
298
50k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.3k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
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