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
GitHubの良さ
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
takashabe
December 11, 2014
Programming
2.3k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitHubの良さ
http://connpass.com/event/10347/
で話した内容です。
takashabe
December 11, 2014
More Decks by takashabe
See All by takashabe
より良いターミナルでの生活を求めて
takashabe
0
72
OpenCensusでcustom context propagationとexporterを書いた話 / OpenCensus with custom context propagation and exporter
takashabe
0
1.8k
pubsub with concurrent
takashabe
1
960
社内ISUCONを開催した話
takashabe
0
1.7k
ISUCON大反省会
takashabe
0
2k
gitのブランチ戦略
takashabe
8
6.1k
サルでもわかるgit
takashabe
0
1.6k
playで複数DBする
takashabe
0
1.6k
MySQLで高トラフィックに立ち向かう
takashabe
0
1.8k
Other Decks in Programming
See All in Programming
LLM Plugin for Node-REDの利用方法と開発について
404background
0
170
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
890
Claspは野良GASの夢をみるか
takter00
0
180
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
750
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
150
TAKTでAI駆動開発の品質を設計する
j5ik2o
6
1.2k
Inside Stream API
skrb
1
690
OSもどきOS
arkw
0
540
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
120
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
3
1.3k
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
570
AutonomyとControlのあいだ:Graflowで記述するAIエージェント協調
myui
0
120
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
840
A Soul's Torment
seathinner
6
2.9k
KATA
mclloyd
PRO
35
15k
Six Lessons from altMBA
skipperchong
29
4.3k
ラッコキーワード サービス紹介資料
rakko
1
3.6M
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
430
The Mindset for Success: Future Career Progression
greggifford
PRO
0
360
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Transcript
(JU)VCͷྑ͞ 5BLBTIJ"CF .ZOFU*OD #mynet_tech
͓·͑ͩΕΑ !UBLBTIBCF ιγϟήͷ։ൃͬͯ·͢ (JU(JU)VCྺ͘Β͍ ۀྺ ͚ͭ໙͕͖
͡Ίʹ ϓϩδΣΫτ֓ཁ ϒϥβϕʔεͷιγϟή ܞΘͬͯ΄Ͳ ॳΊ͔Β(JU)VCͰӡ༻ ϦϦʔεʙXFFLMZ 1VMM3FRVFTUʙEBZ
"HFOEB (JU)VCͷ؆୯ͳհ (JU)VCͷྑ͞ ϨϏϡʔ λεΫཧ ଞπʔϧͱͷ࿈ܞ ಋೖ࣌ʹͬͨ͜ͱ ·ͱΊ
(JU)VCͷ֓ཁ (JUͷϗεςΟϯάαʔϏε (JUͷϦϞʔτϦϙδτϦʹ͋ͨΔ αʔόΛཧ͢Δ͜ͱͳ͘தԝϦϙδτϦͷΑ͏ ʹͬͨΓ͢Δ͜ͱ͕ग़དྷΔ (JU)VCಠࣗͷػೳ͋Δ
(JU)VCಠࣗͷػೳ 1VMM3FRVFTU *TTVFT 8JLJͳͲʜ (JUͷඪ४ػೳΛ͍͘͢ϥούͨ͠ͷ 1VMM3FRVFTUͳͲ (JUͷػೳͰͳ͍͕ɺ։ൃΛԁʹ͢Δͷ *TTVFT 8JLJͳͲ ͜ΕΒ͕(JU)VCΛ͏ಈػͱͯ͠Ұ൪ڧ͍
"HFOEB (JU)VCͷ؆୯ͳհ (JU)VCͷྑ͞ ϨϏϡʔ λεΫཧ ଞπʔϧͱͷ࿈ܞ ಋೖ࣌ʹͬͨ͜ͱ ·ͱΊ
ैདྷͷϨϏϡʔ ػೳ։ൃऴΘΓ·ͨ͠ɻ featureϒϥϯνͰpushͨ͠ͷ ͰϨϏϡʔ͓ئ͍͠·͢ɻ ྃղ͠·ͨ͠ɻ
ैདྷͷϨϏϡʔ (λʔϛφϧ্Ͱ) git pull git diff master feature ͋ɺͪΐͬͱ͜͜Ϛζͦ͏
ैདྷͷϨϏϡʔ ϨϏϡʔ͠·ͨ͠ɻ xxxͷϝιουͰyyy͕ߟྀ͞ Εͯͳͯ͘Ϡόͦ͏ɻ ྃղ͠·ͨ͠ɻ (xxxͬͯͲ͚ͩͬ͜…)
ैདྷͷϨϏϡʔ νϟοτϕʔεͰϨϏϡʔ͕ਐΉ ͠νϟοτΛݟಀͯ͠͠·͏ͱʜ
ैདྷͷϨϏϡʔ νϟοτϕʔεͰϨϏϡʔ͕ਐΉ ͠νϟοτΛݟಀͯ͠͠·͏ͱʜ ࡢ͓ئ͍͍ͯͨ͠ϨϏϡʔ ͷ݅Ͱ͕͢ɺਐḿͲ͏Ͱ͔͢ʁ
ʊਓਓਓਓਓʊ ʼ ͭΒ͍ ʻ ʉ̮̮̮̮̮ʉ
1VMM3FRVFTUϕʔεͷϨϏϡʔ 1VMM3FRVFTUJTԿʁ ϩʔΧϧͷϦϙδτϦͰߦͬͨมߋΛɺଞͷϦϙ δτϦϒϥϯνʹऔΓࠐΜͰΒ͏ͨΊͷϦΫ ΤετΛग़͢ػೳͷ͜ͱ ϦΫΤετΛग़͞Εͨଆɺ1VMM3FRVFTUͷ༰ ͕ଥ͔Ͳ͏͔Λ֬ೝ্ͨ͠ͰϚʔδΛߦ͏͜ͱ ͕ग़དྷΔ
1VMM3FRVFTUϕʔεͷϨϏϡʔ diffରͷϒϥϯν
1VMM3FRVFTUϕʔεͷϨϏϡʔ
1VMM3FRVFTUϕʔεͷϨϏϡʔ ίϝϯτʹର͢ΔϨε ҟͳΔॴͷίϝϯτ
1VMM3FRVFTUϕʔεͷϨϏϡʔ
1VMM3FRVFTUϕʔεͷϨϏϡʔ ϨϏϡΞʔͨͩૹΒΕͨ1VMM3FRVFTUΛݟΔ͚ͩͰϨϏϡʔ ͕ग़དྷΔ ίʔυߦ୯ҐͰίϝϯτΛॻ͚ΔͷͰɺͦͷίʔυʹର͢ Δ͕ٞΓ͍͢ 1VMM3FRVFTUͰΓऔΓ͕݁͢ΔͷͰ͕ٞൃࢄ͠ͳ͍ ϨϏϡʔґཔͷνϟοτΛݟಀ͍ͯͯ͠ݱࡏग़͞Ε͍ͯΔ 1VMM3FRVFTU͕͔Δ
%FNP
1VMM3FRVFTU࠷ߴʂʂʂ Կ͔Ͱʁ
1VMM3FRVFTUͷঢ়ଶ͕͔ΓͮΒ͍ ϨϏϡʔϚʔδՄೳͳͷ͔ ࡞ۀதͷͷϚʔδ͍͚ͯ͠ͳ͍ 1VMM3FRVFTUͰϨϏϡʔ͕ඇಉظʹߦ͑ΔΑ͏ʹ ͳͬͨɻ͔͠͠ঢ়ଶ͕͔Βͳ͍ͨΊʹ݁ہνϟο τݟಀ͢ͱͭΒ͍ͬͨ··
ࡢ͓ئ͍͍ͯͨ͠ϨϏϡʔ ͷ݅Ͱ͕͢ɺਐḿͲ͏Ͱ͔͢ʁ
ରԠࡦ ϥϕϧͷಋೖ 8*11VMM3FRVFTUͷಋೖ
ϥϕϧ 1VMM3FRVFTUͷঢ়ଶʹԠͯ͡ϥϕϧΛ͚Δ ϨϏϡʔґཔ ϨϏϡʔத ϨϏϡʔྃ Ϛʔδ ίϝϯτʙमਖ਼
ϥϕϧͰϑΟϧλ
8*11VMM3FRVFTU 8*18PSL*O1SPHSFTTͷུ ࡞ۀதͰ͋Δ͜ͱΛλΠτϧʹ໌ه͢Δ ༨ஊɿλΠτϧʹ8*1ͱೖ͍ͬͯΔ1VMM3FRVFTU ͷϚʔδϘλϯΛԡͤͳ͘͢Δ$ISPNF֦ு͕͋ͬ ͨΓ͢Δ %P/PU.FSHF8*1GPS(JU)VC
ϨϏϡʔ·ͱΊ 1VMM3FRVFTUͰͷϨϏϡʔ؆୯Ͱ࠷ߴ ϥϕϧͰ1VMM3FRVFTUͷঢ়ଶΛՄࢹԽͯ͠ϨϏϡʔ Λଅਐ͢Δঢ়ଶΛ࡞Δ
"HFOEB (JU)VCͷ؆୯ͳհ (JU)VCͷྑ͞ ϨϏϡʔ λεΫཧ ଞπʔϧͱͷ࿈ܞ ಋೖ࣌ʹͬͨ͜ͱ ·ͱΊ
λεΫཧ දతͳλεΫ νέοτ ཧπʔϧ +*3" 3FENJOFͳͲ νέοτʹରͯ͠୲ऀɺঢ়ଶɺظݶɺίϝϯτͳͲΛ͚ͯ ཧग़དྷΔ (JU)VCʹ*TTVFTͱ͍͏ػೳ͕͋Δ ͨͩ͠ઐ༻ͷπʔϧͱൺΔͱػೳශऑ
νέοτཧ༻πʔϧΛซ༻͢Δ߹ ։ൃϑϩʔ νέοτཧπʔϧ νέοτΛΔ (JU)VC 1VMM3FRVFTUΛૹΔ (JU)VC
1VMM3FRVFTUͷϨϏϡʔϚʔδ νέοτཧπʔϧ νέοτʹ1VMM3FRVFTUͷϦϯΫΛషͬ ͯΫϩʔζ ͭͷػೳ։ൃʹରͯ͠ෳαʔϏεΛ·͕ͨͬͯͭΒͦ͏
(JU)VC*TTVFTͷಛ *TTVFTʹରͯ͠୲ऀɺঢ়ଶ ΦʔϓϯΫϩʔζͷ Έ ɺίϝϯτ͕͚ΒΕΔ ίʔυ 1VMM3FRVFTU ͱͷ࿈ܞָ͕ 1VMM3FRVFTUʹ*TTVFTͷϦϯΫΛషΔͱɺ*TTVFT ଆͰϦϯΫ͞Ε͍ͯΔࢫͷද͕ࣔ͞ΕΔͳͲ
IssuesͷϦϯΫషΔ ϦϯΫݩͷPull Request͕දࣔ͞Εͨ
*TTVFTͷΓͳ͍ ୭͕ԿΛ͍ͬͯΔͷ͔Ѳͮ͠Β͍ ୲ऀܾΊΕΔ͕ɺঢ়ଶ͕ΦʔϓϯΫϩʔζ͠ ͔ͳ͍ͨΊɺணखத͔Ͳ͏͔Ұݟ͔Βͳ͍ ਐ͕͔ΓͮΒ͍ ༏ઌ͕͔ΓͮΒ͍
ΑΖ͍͠ɺͳΒΧϯόϯͩ
*TTVFT Χϯόϯ λεΫجຊతʹ*TTVFTʹॻ͘ ணख͢Δͷ͔ΒΧϯόϯʹᝦΛష͍ͬͯ͘ Χϯόϯͷ͓͔͛Ͱ୭͕ԿΛ͍ͬͯΔ͔ɺਐ ͕͔ΔΑ͏ʹ
*TTVFT࠷ߴʂʂʂԿ͔Ͱʁ
ෳαʔϏε͏ͷ͕ͭΒ͍͔Β*TTVFTʹͨ͠ͷʹ ݁ہߋ৽Օॴ͕ෳ͋Δ Χϯόϯʹ͚ͩՃ͞ΕΔλεΫ νϟοτޱ಄ͰՃ͞ΕΔλεΫ ಉظ͕औΕͳ͘ͳ͍ͬͯ͘Χϯόϯͱ*TTVFT
None
͏Ұߟ͑ͳ͓͢ *TTVFTίʔυͱͷ࿈ܞָ͕ 1VMM3FRVFTUඞͣ͏ͷͰ(JU)VC্Ͱ݁͢Δͷ ͕·͍͠ ෳͷπʔϧΛ͏ͱಉظΛऔΔͷ͕େม
ΑΖ͍͠ɺͳΒΑΓపఈͨ͠*TTVFTۦಈͩ
ͱʹ͔͘*TTVFTʹશͯͷλεΫΛೖΕΔ ୭ͰɺͲΜͳͷͰ*TTVFTʹೖΕͯྑ͍ ͱ͍͑νϟοτޱ಄ͰͷґཔͪΖΜൃੜ͢ Δ ͔Γ·ͨ͠ɻ Issues͓͍͍ͬͯͯͩ͘͞ɻ ࠷ۙͰIssuesཱͯͨͷͰ͓ئ͍͠·͢ʔ ͱ͍͏ྲྀΕ͕ਁಁ͖ͯͨ͠
શͯͷλεΫ͕*TTVFTͰཧ͞Εͨ ४උͬͨ
*TTVFTʹΓͳ͔ͬͨͷΛཧ͢Δ ୭͕ԿΛ͍ͬͯΔ͔ ਐ λεΫͷ༏ઌ
εΫϥϜͰղܾग़དྷͦ͏
ΏΔ͍εΫϥϜͷಋೖ ಋೖͨ͠ϓϥΫςΟεεϓϦϯτͷΈ पؒͷεϓϦϯτ ϓϩμΫτΦʔφʔ ϓϩσϡʔαʔFUD ΛεϓϦϯτͰऔ ΓΉλεΫΛܾΊΔ༏ઌ εϓϦϯτͷରͱͳͬͨ*TTVFTʹεϓϦϯτϥϕϧΛ ͚Δ୭͕ԿΛ͍ͬͯΔ͔ 8*1ϥϕϧΛ༻ҙͯ͠࡞ۀதͷ*TTVFTʹ͚ΔΑ͏ʹਐ
༨ஊɿ.JMFTUPOF *TTVFTɺ1VMM3FRVFTUʹ.JMFTUPOFΛઃఆ͢Δ͜ͱ͕ग़དྷΔ ৽ػೳ։ൃఆৗΠϕϯτͷ։ൃணख࣌ʹ.JMFTUPOFΛΔ ։ൃʹؔ࿈͢Δ*TTVFTͱ1VMM3FRVFTUΛͦͷ.JMFTUPOFʹඥ ͚Δ͜ͱͰɺ.JMFTUPOF͔Β࡞ۀ༰ΛѲ͢Δ͜ͱ͕ग़ དྷΔ ޙͰݟฦͨ࣌͠ͷ࡞ۀϩάʹͳΔ νʔϜʹ৽͍͠ਓ͕ೖ͖ͬͯͨ࣌ʹ৺ڧ͍
ϚΠϧετʔϯͰϑΟϧλ
λεΫཧͷ·ͱΊ *TTVFTͰλεΫΛཧ͢Δ͜ͱͰίʔυͱͷ࿈ܞ͕ औΓ͘͢ͳͬͯศར *TTVFTͰΓͳ͍ଞͷख๏πʔϧͰิ͏ඞཁ ͕͋Δ .JMFTUPOFΛదʹӡ༻͢Εڧྗͳࢿ࢈ʹͳΔ
"HFOEB (JU)VCͷ؆୯ͳհ (JU)VCͷྑ͞ ϨϏϡʔ λεΫཧ ଞπʔϧͱͷ࿈ܞ ಋೖ࣌ʹͬͨ͜ͱ ·ͱΊ
ଞπʔϧͱͷ࿈ܞ ͏ͪͷνʔϜͰ·ͩಋೖग़དྷͯͳ͍ͷͰ؆୯ͳհ͚ͩ 8FCIPPL (JU)VCͰͷΠϕϯτൃՐΛଞαʔϏεʹ௨ ௨ઌͱͯ͠(JU)VC͔ΒΞΫηεՄೳͳ63-Λ༻ҙ͢Δඞཁ͕͋Δ Πϕϯτͷछྨ 1VMM3FRVFTUΛ࡞ͨ͠ɺϚʔδͨ͠ *TTVFTΛཱͯͨɺΫϩʔζͨ͠ͳͲͳͲʜ 4FSWJDF)PPL طଘͷαʔϏε͚ͷ8FCIPPLɺྫ͑+FOLJOTͷHJUIVCQMVHJO͚ʹ௨ΛૹΔɺͳͲͷ
ઃఆΛߦ͏ࣄ͕ग़དྷΔ
࿈ܞྫ 1VMM3FRVFTUલʹςετΛճ͢ 1VMM3FRVFTUΛ࡞͞Εͨ͜ͱΛ+FOLJOTʹ௨ +FOLJOTͰϏϧυ Ϗϧυ݁ՌΛ1VMM3FRVFTUʹө $IBU0QT 4MBDL͔Β)VCPUܦ༝Ͱ1VMM3FRVFTUΛ࡞
"HFOEB (JU)VCͷ؆୯ͳհ (JU)VCͷྑ͞ ϨϏϡʔ λεΫཧ ଞπʔϧͱͷ࿈ܞ ಋೖ࣌ʹͬͨ͜ͱ ·ͱΊ
(JU)VCಋೖ࣌ ϝϯόʔͷεΩϧηοτ ݸਓͰ(JU(JU)VCΛ͍ͬͯͨ νʔϜ։ൃͰ(JUΛͬͨ͜ͱ͋Δ͕(JU)VCແ ͠ (JU(JU)VCڞʹͦΕ΄Ͳͬͨ͜ͱ͕ͳ͍
νʔϜ։ൃͰ(JU)VCΛͬͨ͜ ͱ͕͋Δϝϯόʔډͳ͔ͬͨ
(JU)VCʹ׳ΕΔͨΊʹ (JU)VCΒ͍͠։ൃϑϩʔͷపఈ طଘϓϩμΫτTWOͰNBTUFSϒϥϯνຊӡ༻ͩͬ ͨ 1VMM3FRVFTUۦಈ։ൃͷపఈ HJUqPXΛϕʔεʹͨ͠ϒϥϯνઓུͷపఈ
(JU)VCͰͷ։ൃͬͯ͜Μͳײ ͩ͡ͱ͍͏͜ͱΛਁಁͤ͞Δ
(JU)VCʹ͍ͭͯͷࣾษڧձνʔϜ.5( (JUࣗମෳࡶͳπʔϧͳͷͰඞཁͳػೳ͚ͩͭ·Έ৯͍͢ Δ ։ൃʹ͓͍ͯ࠷ݶඞཁͳϑϩʔΛυΩϡϝϯτԽͯ͠ڞ༗ ػೳ։ൃʙ1VMM3FRVFTUΛૹΔ·Ͱͷखॱ 2"ڥͷద༻खॱ HJUSFCBTFͱ͔HJUSFTFU͑Εศར͚ͩͲඞਢͰͳ ͍
͜Μͳ࣌Ͳ͏͢Εྑ͍ͷʁͱ͍͏͜ͱΛฉ͚Δͷେࣄ QVMMग़དྷͳ͍ʂ QVTIग़དྷͳ͍ʂ ίϯϑϦΫτͨ͠ʂ ৄ͍͠ਓ͕ਓ͍Δͱศར Ծʹৄ͍͠ਓ͕͍ͳͯ͘(JU)VCͷใάάΕ͍ ͘ΒͰ͋Δ
ͦΕͳΓʹ։ൃ͕ճΔΑ͏ ʹͳ͖ͬͯͨ
ίϛοτཻ 1VMM3FRVFTUཻ ϥϕϧͷӡ༻
νʔϜͷशख़ʹΑͬͯϑΥʔΧε ͢ΔϨΠϠΛม͑Δ
ಋೖ࣌ͷ·ͱΊ ͱΓ͋͑ͣ1VMM3FRVFTUۦಈ։ൃͱHJUqPXͰ(JU)VC ͷ։ൃʹ׳Ε͍ͯ͘ ԿͰฉ͚Δਓ͕͍Δɺฉ͚Δงғؾେࣄ νʔϜͷशख़ʹΑͬͯϑΥʔΧε͢ΔϨΠϠΛม͑ ͍ͯ͘
"HFOEB (JU)VCͷ؆୯ͳհ (JU)VCͷྑ͞ ϨϏϡʔ λεΫཧ ଞπʔϧͱͷ࿈ܞ ಋೖ࣌ʹͬͨ͜ͱ ·ͱΊ
·ͱΊ
ϨϏϡʔ 1VMM3FRVFTUͷϨϏϡʔ࠷ߴ ϥϕϧͰ1VMM3FRVFTUͷঢ়ଶΛՄࢹԽͯ͠ϨϏϡʔ Λଅਐ͢Δঢ়ଶΛ࡞Δ
λεΫཧ *TTVFT ΏΔ͍εΫϥϜ .JMFTUPOFΛͬͯޙ͔Βݕࡧ͘͢͠
ଞπʔϧͱͷ࿈ܞ ࣗಈԽΛଅਐ͢Δ༷ʑͳՄೳੑ͕͕Δ νʔϜͰऔΓೖΕ͍͖͍ͯͨʜʂ
ಋೖ࣌ νʔϜͷशख़ʹ߹Θͤͯɺ·ͣ࠷ݶඞཁͳͱ ͜Ζ͔Β࢝ΊΔ
0OFNPSFUIJOHʜ
(JU)VCΛಋೖ͢Εશ͕ͯ ϋοϐʔʹͳΔΘ͚Ͱͳ͍
(JU)VCΛಋೖͨ͜͠ͱʹΑΔग़ͯ͘Δ ৽͍͠ͷΛಋೖ͕ͯ͠ى͖ΔͱͦΕͷ͍ͤʹ͠ ͯ͠·͍͕ͪ ͕ى͖ͨΒ͖ͪΜͱ͖߹͍ରԠ͢Δ
ࢥߟఀࢭ͍͚ͯ͠ͳ͍
νʔϜͷशख़্͕͕Ε࠷దͳϑϩʔมΘͬͯ ͍͘ (JU)VCΛϕʔεʹͯ͠ΑΓΑΓ։ൃϑϩʔ
)BWFBRVFTUJPO