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
How to become the Psychic
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
SHIBATA Hiroshi
May 18, 2019
Technology
2.1k
0
Share
How to become the Psychic
SHIBATA Hiroshi
May 18, 2019
More Decks by SHIBATA Hiroshi
See All by SHIBATA Hiroshi
How to make faster release cycle of Ruby?
hsbt
2
6.2k
Ruby の開発を支えるエコシステム
hsbt
4
2.4k
Why is building the Ruby environment hard?
hsbt
6
8.4k
開発環境へのこだわり
hsbt
16
12k
OSS ことはじめ
hsbt
5
1.5k
GMO DevNight 05 在宅勤務開始から2ヶ月でやったこと
hsbt
2
590
Development Environment 2019
hsbt
1
380
Software Development
hsbt
1
6.7k
Social Inclusion for Engineering Organization
hsbt
0
1.2k
Other Decks in Technology
See All in Technology
新アーキテクチャ「TiDB X」解説とDedicated比較 TiDB Cloud Premiumのゲーム運用活用を検証
staffrecruiter
0
110
[モダンアプリ勉強会]今更聞けないGit/GitHub入門
tsukuboshi
0
240
LLMと共に進化するプロセスを目指して
ymatsuwitter
6
1.3k
Claude code Orchestra
ozakiomumkj
3
940
Agentic ERPをどう設計するか ー 受発注エージェントを動かす、現場の知見と設計思想ー
recerqainc
1
1.4k
データ基盤をDataformで整えた話 〜 開発環境を添えて 〜
takapy
0
110
MIERUNE JCT 発表資料「宇宙から伊能忠敬ごっこ」
syuchimu
0
170
製造業のクラウド活用最適解〜AI,DXを加速するデータ基盤の作り方〜
hamadakoji
0
350
JEP 522 Deep Dive - G1 GC同期コスト削減によるスループット向上を徹底検証&解説
tabatad
1
740
サプライチェーンセキュリティの空白地帯 - 信頼できる”依存性”の未来を考える
rung
PRO
2
670
美味しいスイスチーズを作ろう🧀🐭
taigamikami
1
230
React、まだ楽しくて草
uhyo
7
4k
Featured
See All Featured
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
410
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
260
The Spectacular Lies of Maps
axbom
PRO
1
790
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
RailsConf 2023
tenderlove
30
1.5k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
210
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
580
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
380
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Transcript
ιϑτΣΞͷղܾͷٕज़ ࣲాതࢤ(.01&1"#0JOD ͩͯ͜ະདྷେֶय़ͷ-5େձ ΤεύʔྗΛߴΊΔ
Hiroshi SHIBATA @hsbt https://www.hsbt.org Executive Officer VP of Engineering Technical
Director at GMO Pepabo, Inc. @pepabo
self.introduce => { name: “SHIBATA Hiroshi”, nickname: “hsbt”, organizations: [“ruby”,
“rubygems”, “asakusarb”, “pepabo”, …], commit_bits: [“ruby”, “rake”, “rubygems”, “bundler”, “rdoc”, “psych”, “ruby-build”, “railsgirls”, “railsgirls-jp”, …], sites: [“hsbt.org”, “ruby-lang.org”, “rubyci.org”, “railsgirls.com”, “railsgirls.jp”], }
l͜Ε͚͍ٕͩ͑ͨज़z
ձࣾͰΤϯδχΞ͡Όͳ͍ΜͩΑͳʜ
ΤεύʔྗΛߴΊΔ
None
͍͢͝ΤϯδχΞ·ΔͰೳྗऀ Τεύʔ ͷΑ͏ wΤϥʔϝοηʔδΛݟ͚ͨͩͰιʔείʔυͷͲ͜Λ͍͍ͤͷ͔Θ͔Δ w৮ͬͨ͜ͱ͕ͳ͍ιϑτΣΞͷ͍ํ͕Θ͔Δ wσόοάπʔϧΛͬͯʮΧλΧλΧλʜΘ͔ͬͨʯͱෆ۩߹Λݟ͚ͭΔ ͜ͷਓͨͪΤεύʔͰ
͜ΕΤεύʔͰͳͯ͘lٕज़z ٕज़ͳΒ୭ͰशಘͰ͖Δ
ϙΠϯτιϑτΣΞͷಛੑΛΔ
ιϑτΣΞͬͯͳΜͰ͔͢ ࣗ༝هड़
ιϑτΣΞͲ͜ʹ͋Δͷ͔ wιϑτΣΞਓʑͷ৺ͷதʹ͋ Δ wιϑτΣΞਓʑͷίϛϡχ έʔγϣϯͷதʹ͋Δ ʰεΫϥϜ࣮ફೖʱٕज़ධࣾɺ2016ɺp.10
͋ΒΏΔιϑτΣΞ͕ਓͱਓͱͷରΛ࣋ͭ wಛఆͷ৫͔ΒͷཁٻΛղܾ͢ΔιϑτΣΞˠ։ൃऀ։ൃνʔϜ·ͨࣗ ݸਓར༻ऀಛఆͷ৫ʹॴଐ͍ͯ͠Δਓʑ w044ͳͲෆಛఆଟͷར༻͕ఆ͞ΕΔιϑτΣΞˠ։ൃऀ։ൃνʔϜ ·ͨࣗݸਓར༻ऀෆಛఆଟ w͚ࣗͷιϑτΣΞˠ։ൃऀࣗར༻ऀࣗ
ιϑτΣΞͷಈ͖Λ༧ଌ͢ΔʹਓΛ Δ͜ͱ͕࠷ܦ࿏ͷ߹͕͋Δ
ਓΛΔͱιϑτΣΞΛ ߴʹ ཧղͰ͖Δ w3BJMTΛ࡞ͬͨ%))͕࡞ͬͨιϑτΣΞͳͷͰɺ͜ͷ"DUJWF ʙ w˓˓͞Μ͕࡞ͬͨιϑτΣΞͳͷͰ͜͏͍͏࣌ରॲ͞Ε͍ͯΔͣ w.JDSPTPGUॴଐͷਓ͕ॻ͍ͨίʔυͳͷͰ8JOEPXTͰେৎ ʜ
ϙΠϯτظ͍ͯ͠ΔৼΔ͍ΛΔ
ྑ͍ιϑτΣΞͬͯԿͩͱࢥ͍·͔͢ ࣗ༝هड़
γεςϜֶ wࣄΛΠϯϓοτɺܥ γεςϜ ɺΞτϓοτͷࡾͭͰϞσϧԽ͢Δ wΠϯϓοτͱܥ͔Βੜ·ΕͨΞτϓοτ͕ظ௨ΓͰ͋Δ͔Ͳ͏͔ͷࠩ Λ࣭ͱݺͿ γεςϜ Πϯϓοτ Ξτϓοτ
ιϑτΣΞͷ࣭ͷجຊతͳߟ͑ํ wۀͰͷֶ࣭Ͱɺ։ൃઃܭஈ֊Ͱ࣭Λ࡞ΓࠐΉ ˠஈ֊Ͱ࡞ΓࠐΉ͔ΒػೳͷΒ͖͕ͭൃੜ͢Δ wΑ͋͘Δޡղ ʮςετɾࢼݧͰ্࣭ʯ wςετͰΘ͔Δ͜ͱ࡞ͷ࣭͕Ͳͷఔ͔Ͱ͋Γɺ࡞ͦͷͷͷ ࣭͕มԽ͢ΔΘ͚Ͱͳ͍ w͜ΕΒιϑτΣΞͰಉ͡
اըஈ֊ͷ࣭ཧ l࣭zϢʔβʔͷظ͢Δػೳͱ࣮ࡍʹఏڙ͍ͯ͠ΔػೳͱͷဃͰ͋Δ lߴz࣭ wػೳͱཧػೳͱͷဃͷΒ͖͕ͭখ͍͜͞ͱ l࣭ wػೳͱཧػೳͱͷဃͷΒ͖͕ͭେ͖͍͜ͱ
ظͨ͠ৼΔ͍௨Γʹಈ͘͜ͱ wظΠϯϓοτ"ΛೖΕͨΒΞτϓοτ#͕ग़Δͣ wݱ࣮Ξτϓοτ$͕ग़͖ͯͨɺ͍ʹͳΒͳ͍ wݱ࣮Ξτϓοτ#͕ग़͖ͯͨɺ࠷ߴ ιϑτΣΞਓͱਓͱͷ֓೦ʹଘࡏ͢ΔҎ্ɺಉ͡ਓ৫͔Β࡞ΒΕͨι ϑτΣΞ͋ΔΠϯϓοτʹରͯ͠ಉ͡ΞτϓοτΛग़͢͜ͱ͕ଟ͍ ͦΕΛ͋Β͔͡Ί༧ଌ͢Δ͜ͱͰɺظ௨ΓʹͳΒͳ͔ͬͨ࣌ͷରॲΛ͢Δ
ظ௨Γʹಈ͔ͳ͍߹ʹͲ͏͢Δ͔ wࣗͷೖྗΛٙ͏ˠࣗͷΠϯϓοτຊʹ"ͩͬͨͷ͔ wࣗͷظΛٙ͏ˠࣗ#͕ग़ͯ͘Δͱࢥ͍͕ͬͯͨɺੈͷதͷଟ͘ͷਓ ࡞ऀͦͦ$Λग़͢ͷͱࢥ͍ͬͯΔͷͰͳ͍͔ wࣗͷબΛٙ͏ˠ"ΛೖΕͨΒ#Λग़͢γεςϜͩͱࢥ͍͕ͬͯͨͦͦ $Λग़͢γεςϜͩͬͨͷͰ ࣗҊ֎৴༻Ͱ͖ͳ͍
ϙΠϯτதΛΔ
ྑ͍ιϑτΣΞΛͲͷΑ͏ʹ࡞Γ·͔͢ ࣗ༝هड़
ιϑτΣΞΈ߹Θͤͷ࣌ w-JOVYΛ͡Ίͱ͢Δ044ͷར༻͕ιϑτΣΞ։ൃͷͨΓલͷ࣌ w͋ΒΏΔιϑτΣΞ͕૬ޓʹґଘ͢Δ͜ͱͰߏ͞ΕΔ wґଘؔͱґଘ͍ͯ͠ΔιϑτΣΞͷ࡞ऀɺৼΔ͍ΛΔ͜ͱͰରͱ͢ ΔιϑτΣΞͦͷͷͷಈ͖͕ਪଌՄೳͱͳΔ
ґଘ͍ͯ͠ΔιϑτΣΞͷৼΔ͍ΛΔ w$-*ϥΠϒϥϦͷ5IPSΛ͍ͬͯΔιϑτͷίϚϯυମܥࣅ͍ͯΔ w74DPEF$ISPNFಉ͡8FCLJUΛ͍ͬͯΔͳΒΩʔόΠϯυಉ͡ module Bundler class CLI < Thor require_relative
"cli/common"
ґଘ͍ͯ͠ΔιϑτΣΞͷσόοάํ๏ΛΔ w-JOVYͷTZTDBMMΛݟΔͳΒTUSBDFͷ͍ํ w3VCZͳΒCJOEJOHJSCEVNQͷղಡํ๏ EUSBDFFSSPSPOFOBCMFEQSPCF*% *%TZTDBMMSFBESFUVSO JOWBMJELFSOFMBDDFTTJOBDUJPOBU%*'P⒎TFU SFBE Y# a Y$&
&SS TJHQSPDNBTL Y Y Y''&&# Y TJHBMUTUBDL Y Y''&&" Y $MFWFMCBDLUSBDFJOGPSNBUJPO MJCSVCZEZMJCYDEBSC@WN@CVHSFQPSU MJCSVCZEZMJCYCFDESC@CVH@DPOUFYU MJCSVCZEZMJCYCGBTJHTFHW
ґଘ͍ͯ͠ΔιϑτΣΞͷ࡞ΓΛΔ wҰൠతʹ3BJMTͳΒ3BJMTΞϓϦέʔγϣϯશͯʹࣝΛྲྀ༻Ͱ͖Δ w34QFD4JEFLJRͳͲ3BJMTͱڞʹΘΕΔ͜ͱ͕ଟ͍ιϑτΣΞಡΈ ͍͢ class Changeset < ActiveRecord::Base belongs_to :repository
belongs_to :user RSpec.configure do |config| config.include Spec::Builders config.include Spec::Helpers
·ͱΊ w୭͕ιϑτΣΞΛ࡞͍ͬͯΔ͔ΛΔ wιϑτΣΞʹͲ͏ಈ͍ͯཉ͍͠ͷ͔ΛΔ wιϑτΣΞ͕ͲͷΑ͏ʹಈ͘ͷ͔ΛΔ wιϑτΣΞΛΔ͜ͱͰಈ͖ΛਪଌͰ͖ΔΑ͏ʹ͢Δ wΤεύʔྗ͕ߴ·ͬͯḿΔ
Ұॹʹͬͱ໘ന͘͠·ͤΜ͔? ࠷৽ͷ࠾༻ใΛνΣοΫˠ @pb_recruit ৽ଔ࠾༻ϖʔδΛνΣοΫˠ https://recruit.pepabo.com/info/graduate/