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
One Enishi After Another
Search
Koji SHIMADA
PRO
October 18, 2025
Programming
300
1
Share
One Enishi After Another
Rails Girls Sapporo 2ndでの発表資料です
https://railsgirls.com/sapporo-2nd.html
Koji SHIMADA
PRO
October 18, 2025
More Decks by Koji SHIMADA
See All by Koji SHIMADA
ソフトウェアアーキテクトのための意思決定術: Create Decision Readiness—The Real Skill Behind Architectural Decision
snoozer05
PRO
35
12k
日本Rubyの会: これまでとこれから
snoozer05
PRO
6
340
Rubyist入門: The Way to The Timeless Way of Programming
snoozer05
PRO
8
690
ソフトウェアアーキテクトのための意思決定術: Software Architecture and Decision-Making
snoozer05
PRO
26
8.7k
WHOLENESS, REPAIRING, AND TO HAVE FUN: 全体性、修復、そして楽しむこと
snoozer05
PRO
10
25k
スタッフエンジニアの道: The Staff Engineer’s Path
snoozer05
PRO
55
21k
ソフトウェアアーキテクチャメトリクスの基礎: Software architecture metrics in a nutshell
snoozer05
PRO
35
15k
これから学ぶ人のための ソフトウェアアーキテクチャ入門: Software architecture is a tool to enhance our humanity
snoozer05
PRO
44
28k
ソフトウェアアーキテクチャ・ ハードパーツ: Software Architecture The Hard Parts
snoozer05
PRO
12
6.5k
Other Decks in Programming
See All in Programming
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
190
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.8k
今さら聞けないCancellationToken
htkym
0
210
AIとRubyの静的型付け
ukin0k0
0
510
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
1.9k
サーバーレスで作る、動画データ管理基盤
oyasumipants
0
340
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
330
Oxlintのカスタムルールの現況
syumai
5
970
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
700
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
4
410
LLM Plugin for Node-REDの利用方法と開発について
404background
0
150
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
400
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
How GitHub (no longer) Works
holman
316
150k
Thoughts on Productivity
jonyablonski
76
5.2k
What's in a price? How to price your products and services
michaelherold
247
13k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
530
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
220
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Context Engineering - Making Every Token Count
addyosmani
9
930
Music & Morning Musume
bryan
47
7.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Transcript
ONE ENISHI AFTER ANOTHER ౡాߒೋ !TOPP[FS 4BU 3BJMT(JSMT4BQQPSPOE
ౡాߒೋ!TOPP[FS
from Sapporo, with love for Ruby.
Vision IT Systems Teams Organization Management Execution Management Business Process
Talent Development ENISHI TECH INC.
Ruby no Kai
None
None
Ͳ͏ͧΑΖ͓͘͠ئ͍͠·͢
ONE ENISHI AFTER ANOTHER ౡాߒೋ !TOPP[FS 4BU 3BJMT(JSMT4BQQPSPOE
ONE ENISHI AFTER ANOTHER ౡాߒೋ !TOPP[FS 4BU 3BJMT(JSMT4BQQPSPOE
ԑ ͑ʹ͠
ԑى ͑Μ͗
ԑ͋ΔҼՌʢݪҼͱ݁Ռʣͷ࿈ʹɺผͷҼՌͷ࿈͕ۮવʹೖΓࠐΈɺ৮͢Δ͜ͱ ىԑ͕ͦΕͧΕͷҼՌʹԿΒ͔ͷӨڹΛՃ͑ɺ୯ಠͰਐߦͨ͠߹ͱҟͳΔ݁Ռ͕ੜ͡Δ͜ͱ ࢁ㟒ल༤ʰᣭͷܦӦɿԑ͔ΒىΛੜΉਓͮ͘Γɾͮ͘ΓʱΑΓ ԑى ͑Μ͗
wԑىͷݩͱͳΔෳͷҼՌ͕ؔۮવʹަࠩ͢Δ wᣭͰͦΕͧΕͷҼՌ͕ؔަࠩ͢Δ͜ͱʹΑͬͯԑى͕ੜ͡Δ ᣭ ͍ͯ͢Μ ࢁ㟒ल༤ʰᣭͷܦӦɿԑ͔ΒىΛੜΉਓͮ͘Γɾͮ͘ΓʱΑΓ 👇 👇
ᣭͱͯ͠ͷ3BJMT(JSMT4BQQPSPOE
3BJMT(JSMT4BQQPSPOEͰࢀՃऀͷΈͳ͞Μʹੜ·Εͨԑ 🔀ιϑτΣΞΛ࡞Δ׆ಈͱͷԑ ࣗͷιϑτΣΞΛ࡞ΕΔ͔͠Εͳ͍Մೳੑ 🔀ಓ۩ٕज़ͱͷԑ 3VCZɺ3BJMTɺλʔϛφϧɺ74$PEFɺ)FSPLVʜ 🔀ਓͱͷԑ ίʔνɺελοϑɺࢀՃऀ
ԑ͔ΒىΛੜΉ ԑʹࢸΓͯҰॠʹແʹ͋͏ɻͦΕ͕৺ͷͱΊΑ͏ɺମͷ;ΕΑ͏ ͰࣄΛى͜͠ʢىʣɺͦΕΑΓࠓ·Ͱଓ͚ͯདྷͨΕΔҼՌͷߦಈ͕ɺ يಓΛͣΕΏ͖ɺ·ͨͣΕ͕ͨɺيಓʹ෮͠ߦ͘ͳΓ ೆํ۽ೇʰٓ๏ཾॻ؆ʱ ʢڧௐҾ༻ऀʹΑΔʣ l
w ରʹҙࣝΛ͚ɺੵۃతʹಇ͖͔͚Δ͜ͱͰԑ͔Βى͕ੜ͡Δ w ྑ͘ͳΔʹɺ·͔ͣࣗΒ৺Λ։͘͜ͱ w ح৺ w ڵຯؔ৺ w ָ͠Ήؾ࣋ͪ
৺ͷͱΊΑ͏ɺମͷ;ΕΑ͏ͰࣄΛى͜͢
w ڵຯͷͳ͍ͷΛڵຯ͋Δͷʹม͑Δ༐ؾɺ·ͣͬͯΈΔ͜ͱͰى͖Δ w ʮࢼ͢ʯͱ͍͏ԑ͕ɺ࣍ͷىΛੜͤ͡͞ΔՄೳੑΛੜΉ ͷલʹདྷͨόεʹɺ·ͣͬͯΈΔ͜ͱ l ߥມʰ͙͢ʹཱͭͷ͙͢ʹཱͨͳ͘ͳΔʱ
ԑ͔Β ىΛੜΉ
ࣗͷͨΊͷιϑτΣΞΛॻ͘ େࣄͳ͜ͱ lϓϩϑΣογϣφϧzͷΑ͏ʹΖ͏ͱ͠ͳ͍ ڵຯɺح৺ɺָ͠͞Λେࣄʹ͢Δ ฤΈྉཧΈ͍ͨʹɺࣗपΓͷਓ͕ຬ͢ΔͷΛ࡞ΔͷͰΑ͍
ϓϩάϥϛϯάΛֶͿ ʮࣗͷح৺ؔ৺ɺײੑΛ༬͚ΒΕΔରʯΛݟ͚ͭग़͠ɺ ͦΕΛֶͿ͜ͱͰɺ࣍ͷΑ͏ͳྲྀΕ͕ੜ·ΕΔ l ߥມʰ͙͢ʹཱͭͷ͙͢ʹཱͨͳ͘ͳΔʱ ษڧ͢Δͷ͕ͱָͯ͘͠ɺتͼɺͤʹͳΔ ͤΛײ͓͔ͨ͛͡ͰɺษڧʹΑͬͯಘͨͷ͕ͯ͢ ݂ʹͳΔ
ֶΜͩ͜ͱ͕ʹ͍࣮ͭͨײɺษڧͷָ͠͞Λײͯ͡ɺ ͞ΒʹڵຯΛٻͯ͠Έͨ͘ͳΔ
None
IUUQTDPNNPOTXJLJNFEJBPSHXJLJ'JMF.BSJBO@8SJHIU@&EFMNBO@ KQH ݟͨ͜ͱ͕ͳ͍ͷʹͳΕͳ͍ .BSJBO8SJHIU&EFMNBO l
h t t p s : / / r u
b y k a i g i . o rg ϓ ϩ ά ϥ ϛ ϯά ݴ ޠ Λ ࡞ ͬ ͯ ͍ Δ ਓ ͨ ͪ Λ ݟ ʹ ͍ ͘
h t t p s : / / r u
b y k a i g i . o rg 5 I F 3 V C Z $ P N N V O J U Z ͱ ͷ ܨ ͕ Γ Λ ֬ ೝ ͢ Δ
h t t p s : / / k a
i g i o n r a i l s . o rg 8F C Ξ ϓ Ϧ έ ʔ γϣ ϯ Λ ࡞ ͬ ͯ ͍ Δ ਓ ͨ ͪ Λ ݟ ͯ Έ Δ
h t t p s : / / k a
i g i o n r a i l s . o rg 8F C Ξ ϓ Ϧ έ ʔ γϣ ϯ Λ ࡞ ͬ ͯ ͍ Δ ਓ ͨ ͪ Λ ݟ ͯ Έ Δ
ίϛϡχςΟʹࢀՃͯ͠ΈΔ 3VCZίϛϡχςΟ IUUQTTDSBQCPYJPSVCZKQҬSC
ίϛϡχςΟʹࢀՃͯ͠ΈΔ 3VCZίϛϡχςΟ IUUQTTDSBQCPYJPSVCZKQҬSC ͷίϛϡχςΟ OV͞ΜUPNJP͞Μͷհͯ͘͠Ε͍ͯͨͷͳͲΛࢀߟʹ
ίϛϡχςΟΛ࢝ΊͯΈΔ IUUQTOPUFDPNDP@CBDIJFOOFDCFBDC
ίϛϡχςΟΛ࢝ΊͯΈΔ IUUQTOPUFDPNDP@CBDIJFOOFDCFBDC
ԑى ܧଓ͍ͯ͘͠
ᣭͱͯ͠ͷ3BJMT(JSMT4BQQPSPOE
ܧଓ͢Δԑىͷ݁Ռͱͯ͠ͷ3BJMT(JSMT4BQQPSPOE
ZFBSTBHPʜ
None
None
l+PZGVM3VCZz
None
IUUQTUIFCSJEHFKQMJOEBMJVLBTJOUFSWJFX
IUUQTUIFCSJEHFKQMJOEBMJVLBTJOUFSWJFX
None
IUUQTTOPP[FSIBUFOBCMPHKQFOUSZ
IUUQTTOPP[FSIBUFOBCMPHKQFOUSZ
None
None
ܧଓ͢Δԑىͷ݁Ռͱͯ͠ͷ3BJMT(JSMT4BQQPSPOE
ܧଓ͢Δԑىͷىͱͯ͠ͷ3BJMT(JSMT4BQQPSPOE
IUUQTXXX fl JDLSDPNQIPUPTSFDPNQJMF@OFU ͍ܰؾ࣋ͪͰɺͱΓ͋͑ͣ ͬͯΈΔ͜ͱ͕؊ཁͩͱ ࢥ͍·͢ɻʜ·ͣॻ͍ͯΈ ͳ͍ͱ࢝·Γ·ͤΜ͔Βɻ l <SVCZ>
ܧଓ͢Δԑىͷىͱͯ͠ͷ3BJMT(JSMT4BQQPSPOE ͜ͷͰͰ͖ͨʮԑʯ͔Β ࣍ͷͨ͘͞Μͷʮىʯ͕ੜ·Εଓ͍͍͖ͯ·͢Α͏ʹ
ONE ENISHI AFTER ANOTHER ౡాߒೋ !TOPP[FS 4BU 3BJMT(JSMT4BQQPSPOE
ॻ੶ɿ wೆํ۽ೇʰೆํϚϯμϥʱʢՏग़จݿʣ wߥມʰ͙͢ʹཱͭͷ͙͢ʹཱͨͳ͘ͳΔʱʢϓϨδσϯτࣾʣ wάϨʔεɾϘχʔʰࣗͰʮ࢝Ίͨʯঁͨͪʱʢւͱ݄ࣾʣ w4BN3VCZʰ"HJMF8FC%FWFMPQNFOUXJUI3BJMTʱʢ1SBHNBUJD#PPLTIFMGʣ จɿ wʰᣭͷܦӦɿԑ͔ΒىΛੜΉਓͮ͘Γɾͮ͘ΓʱIUUQTSFQPTJUPSZNVTBTIJBDKQETQBDFCJUTUSFBN NVTBTIJ@@@@@@@ZBNBTBLJQEG 8FCɿ wʰ3BJMT(JSMTͷ͖ͭͮʮ3BJMT(JSMTNPSFʯʱIUUQTCMPHDMFBODPEFSDPNVODMFCPCUIFDMFBOBSDIJUFDUVSFIUNM
wʰϓϩάϥϛϯάͷָ͠͞Λଟ͘ͷঁੑʹ͍͑ͨɿʮ3BJMT(JSMTʯ࢝ऀͷϦϯμɾεΧε͞ΜʹΠϯλϏϡʔʱIUUQTUIFCSJEHFKQ MJOEBMJVLBTJOUFSWJFX өըɿ wʰ0OF#BUUMF"GUFS"OPUIFSʱ ࢀߟจݙ