Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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.3k
Ruby の開発を支えるエコシステム
hsbt
4
2.4k
Why is building the Ruby environment hard?
hsbt
6
8.6k
開発環境へのこだわり
hsbt
16
12k
OSS ことはじめ
hsbt
5
1.6k
GMO DevNight 05 在宅勤務開始から2ヶ月でやったこと
hsbt
2
610
Development Environment 2019
hsbt
1
390
Software Development
hsbt
1
6.8k
Social Inclusion for Engineering Organization
hsbt
0
1.2k
Other Decks in Technology
See All in Technology
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
10
5k
バイブコーディング時代のWebアプリ開発入門~Cloud Runで学ぶセキュアなビルドとデプロイ
waiwai2111
1
140
その Lambda、8分で 管理者権限まで奪われます
k1nakayama
7
3.5k
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
2
1.5k
エージェントはローカル、検証はMicroVM — Lambda MicroVMsでつくるServerless CI
fujioka6789
3
670
LLMに渡さなかった仕事
nanaism
0
1.3k
The Knowledge Spine: A Machine-Executable Ontology for Governed Marketing Activation
vananth22
0
120
Goodbye ShellScript, Hello File-based App
shunsock
0
650
beyond jj: config & tools ecosystem
indirect
0
5.8k
おい、エージェントを使って終わらせろ
nwiizo
2
850
C#未経験の僕がAIに読めるコードを書かせるまで
maguroalternative
0
220
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
1
250
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
1
520
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
480
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
550
Large-scale JavaScript Application Architecture
addyosmani
515
110k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Deep Space Network (abreviated)
tonyrice
0
320
Unsuck your backbone
ammeep
672
58k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
76k
Building Adaptive Systems
keathley
44
3.2k
A Soul's Torment
seathinner
8
3.6k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
240
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/