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
DroidKaigi公式アプリOSS成功要因
Search
konifar
July 02, 2016
Programming
5
1.3k
DroidKaigi公式アプリOSS成功要因
YAPC::Asia Hachioji 2016
http://yapcasia8oji-2016mid.hachiojipm.org/time_table_7_2/
konifar
July 02, 2016
Tweet
Share
More Decks by konifar
See All by konifar
提案のレベルを上げる #QiitaConference
konifar
78
29k
目安箱の設置とワークさせるポイント
konifar
4
2k
サバイバルモード下でのエンジニアリングマネジメント
konifar
30
12k
Android開発以外のAndroid開発経験の活かしどころ
konifar
3
2.8k
初めてのiOS関連GitHub ActionsをMarketplaceに公開するまでの実録
konifar
3
370
オーナーシップを持つ領域を明確にする
konifar
16
5.6k
雑に思考を整理する技術と効能
konifar
76
43k
何のための個人目標設定?
konifar
33
17k
30点で打席に立つ
konifar
88
57k
Other Decks in Programming
See All in Programming
PT AI без купюр
v0lka
0
210
テスト分析入門/Test Analysis Tutorial
goyoki
13
2.8k
コードに語らせよう――自己ドキュメント化が内包する楽しさについて / Let the Code Speak
nrslib
6
1.3k
無関心の谷
kanayannet
0
130
💎 My RubyKaigi Effect in 2025: Top Ruby Companies 🌐
yasulab
PRO
1
130
Agent Rules as Domain Parser
yodakeisuke
1
450
「兵法」から見る質とスピード
ickx
0
240
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
570
Practical Tips and Tricks for Working with Compose Multiplatform Previews (mDevCamp 2025)
stewemetal
0
110
Efficiency and Rock 'n’ Roll (Really!)
hollycummins
0
670
少数精鋭エンジニアがフルスタック力を磨く理由 -そしてAI時代へ-
rebase_engineering
0
150
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
0
500
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
41
7.3k
Speed Design
sergeychernyshev
30
980
Building an army of robots
kneath
306
45k
Code Review Best Practice
trishagee
68
18k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Designing for humans not robots
tammielis
253
25k
Transcript
%SPJE,BJHJެࣜΞϓϦ 044ޭཁҼ !LPOJGBS :"1$"TJB)BDIJPKJ
͜ʹ;͊ʔ !LPOJGBS
͜ʹ;͊ʔ !LPOJGBS ESPJELBJHJ
"OESPJEΛͬͯΔਓʁ
044ʹڵຯ͕͋Δਓʁ
%SPJE,BJHJ w "OESPJEٕज़ใͷڞ༗ͱίϛϡχέʔγϣϯ͕తͷ "OESPJE։ൃऀͷͨΊͷΧϯϑΝϨϯε w ʢʣɺʢۚʣʹ։࠵
ެࣜΞϓϦ࡞Γ·ͨ͠ ΦʔϓϯιʔεͰ%SPJE,BJHJͷΧϯϑΝϨϯεΞ ϓϦ࡞ͬͯΔ IUUQLPOJGBSIBUFOBCMPHDPNFOUSZ
લࡇͷΑ͏ͳੌ·͍͡Γ্͕Γ
None
None
(PPHMF*0ͷΞϓϦʹෛ͚ͯͳ͍
(JU)VCͷ1VODIDBSE
None
ϲ݄ܦͬͨࠓͰଓ͍͍ͯΔ
ؖࠃޠαϙʔτ 5IBOLT!1MVV
ܧଓతͳϥΠϒϥϦΞοϓσʔτ 5IBOLT!TIBVOLBXBOP
ͳͥ͜ΜͳʹΓ্͕ͬͨͷ͔
ʮࠓࢥ͑͋Ε͕Α͔ͬͨͳ͊ʯ ͱࢥ͑Δ͜ͱΛ͍͔ͭ͘ཧͨ͠ͷͰ ͦͷΛ͠·͢
%SPJE,BJHJެࣜΞϓϦ 044ޭཁҼ ʢ͔ͩͬͨ͠Εͳ͍ʣ
-BCFMͱ.JMFTUPOFΛ׆༻͢Δ $POUSJCVUFͷෑډΛԼ͛Δ ӳޠͰΓͱΓ͢Δ ϨϏϡʔΛߴʹճ͢ ༷ʑͳखஈͰͬͯΒ͏
-BCFMͱ.JMFTUPOFΛ׆༻͢Δ
*TTVF͕͋ͬͯͲΕΛΕ͍͍͔ Θ͔Βͳ͍ͱखΛ͚ͭʹ͍͘ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ
༏ઌͷΘ͔Δ-BCFM -BCFMͱ.JMFTUPOFΛ׆༻͢Δ
༏ઌͷΘ͔Δ-BCFM -BCFMͱ.JMFTUPOFΛ׆༻͢Δ छྨͰͳ͘ ༏ઌΛද͢ϥϕϧ ೱ͍৭ʹ͍ͯ͠Δ
༏ઌͷΘ͔Δ-BCFM -BCFMͱ.JMFTUPOFΛ׆༻͢Δ XFMDPNFDPOUSJCVUFMBCFM
XFMDPNFDPOUSJCVUFMBCFM -BCFMͱ.JMFTUPOFΛ׆༻͢Δ w DPOUSJCVUFͯ͠΄͍͠*TTVFʹ͜ͷϥϕϧΛ͚͓ͭͯ͘ w ݟͨਓ͕ͲΕΛͬͨΒ͍͍͔ͻͱͰΘ͔Δ w XFMDPNFײ͕ग़ͯऔΓ͍͢
XFMDPNFDPOUSJCVUFMBCFM -BCFMͱ.JMFTUPOFΛ׆༻͢Δ
XB⒐FJPʢΧϯόϯʣ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ w (JU)VCͱ࿈ܞͯ͠*TTVFͱ1VMMSFRVFTUΛΧϯόϯԽ IUUQTXB⒐FJPLPOJGBSESPJELBJHJ w ;FO)VCͰ͍͍͕ɺXB⒐FJPແྉͩ͠ϦϯΫΛͬ ͍ͯΕ͙͑͢Δͱ͍͏ख͕ܰ͋͞Δ
XB⒐FJPʢΧϯόϯʣ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ
XB⒐FJPʢΧϯόϯʣ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ *TTVFΛ্͛ͨΒ #BDLMPHʹೖΔ
XB⒐FJPʢΧϯόϯʣ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ ΔͧͱܾΊͨΒ 3FBEZ υϥοάυϩοϓ
XB⒐FJPʢΧϯόϯʣ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ ୭͔͕Γ࢝ΊͨΒ *O1SPHSFTT
XB⒐FJPʢΧϯόϯʣ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ Ϋϩʔζͨ͠Β %POFʹೖΔ
XB⒐FJPʢΧϯόϯʣ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ .JMFTUPOFՄࢹԽ
.JMFTUPOF -BCFMͱ.JMFTUPOFΛ׆༻͢Δ
.JMFTUPOF -BCFMͱ.JMFTUPOFΛ׆༻͢Δ όʔδϣϯ͝ͱʹͬͯ ʹͪೖΕ͓ͯ͘͜ͱͰ కΛՄࢹԽͰ͖Δ
-BCFMͱ.JMFTUPOFΛ׆༻͢Δ͜ͱͰ ԿΛ͍ͭ·ͰʹΕ͍͍͔͕໌֬ʹͳΓ ͱ͖ͬͭ͘͢ͳΔ -BCFMͱ.JMFTUPOFΛ׆༻͢Δ
$POUSJCVUFͷෑډΛԼ͛Δ
$POUSJCVUFʹ༐ؾ͕͍Δ $POUSJCVUFͷෑډΛԼ͛Δ w ʮͳΜ͔ͦ͠͏ʜʯ w ʮ͜ΜͳγϣϘ͍ͷ্͛ͯେৎ͔ͳʜʯ w ʮϨϏϡʔͰ໎͔͚ͨΒͲ͏͠Α͏ʜʯ w ʮࣗͳΜ͔͕ΔΑΓଞͷਓ͕ͬͨํ͕ʜʯ
*TTVFͷཻΛখ͘͞ $POUSJCVUFͷෑډΛԼ͛Δ w ͘Β͍ͰͰ͖ͦ͏ͳϨϕϧͷͷॻ͍͓ͯ͘ w ʮ͜Ε͘Β͍ͳΒࣗͰͰ͖ͦ͏ͩʯͱࢥͬͯΒ͏
༨നͷௐͱ͔ $POUSJCVUFͷෑډΛԼ͛Δ IUUQTHJUIVCDPNLPOJGBSESPJELBJHJJTTVFT
ఆظతͳ*TTVFͷ୨Է͠ $POUSJCVUFͷෑډΛԼ͛Δ w ݹ͍*TTVFΛΫϩʔζ͢Δ w ৽ͨʹग़͖ͯͨ*TTVFΛҰؾʹॻ͖ग़͢ w XFMDPNFDPOUSJCVUFϥϕϧΛషΓ͢ w ৗʹ࠷৽ʹอͭ͜ͱͰ$POUSJCVUPSͷࠞཚΛগͳ͘͢Δ
,PUMJOԽͷΫϩʔζ $POUSJCVUFͷෑډΛԼ͛Δ IUUQTHJUIVCDPNLPOJGBSESPJELBJHJQVMM
ࣗͰͰ͖ͳ͍͜ͱॻ͍͓ͯ͘ $POUSJCVUFͷෑډΛԼ͛Δ w ʮ͜͏͍͏͜ͱ͍ͨ͠ʯͱ͍͏*TTVFॻ͍͓͖ͯ͘ w "OESPJEͷ߹ɺਓʹΑͬͯৄ͍͕͠ҧ͏͜ͱ͋Δ ͷͰɺͦͷํ͕$POUSJCVUF͘͢͠ͳΔ
ϥΠϒϥϦ࡞ऀ͔Βͷ$POUSJCVUF $POUSJCVUFͷෑډΛԼ͛Δ
$POUSJCVUFͷෑډΛԼ͛Δ $POUSJCVUPSTΫϨδοτ $POUSJCVUPSTͷօ͞ΜͷѹతײँΛܗʹͨͯ͘͠ *TTVFʹͨ͠Βɺ!HPUPLBUTVZB͕࡞ͬͯ͘Εͨ IUUQTHJUIVCDPNLPOJGBSESPJELBJHJJTTVFT $POUSJCVUF͢ΔࡍͷϞνϕʔγϣϯʹͳΔ
$POUSJCVUFʹ༐ؾ͕͍ΔͷͰ ʮࢲͰͰ͖ͦ͏ʯ ʮͳΜָ͔ͦ͠͏ʯ ʮ$POUSJCVUFͯ͠ΈΑ͏͔ͳʯ ͱࢥͬͯΒ͑ΔΑ͏ʹ͠·͠ΐ͏ $POUSJCVUFͷෑډΛԼ͛Δ
ӳޠͰΓͱΓ͢Δ
2ෑډΛԼ͛Δͱ͔ݴ͓͖ͬͯͳ͕Β ͳΜͰӳޠͳͷʁ ӳޠͰΓͱΓ͢Δ
"ւ֎͔Βͷ$POUSJCVUF͋Δ͔ͳͱ ࢥ͍ͬͯͨʢͳ͔ͬͨʣ ӳޠͰΓͱΓ͢Δ
ӳޠͷํ͕ςϯγϣϯ্͕͕Δ ӳޠͰΓͱΓ͢Δ IUUQTHJUIVCDPNLPOJGBSBOESPJE NBUFSJBMEFTJHOJDPOHFOFSBUPS QMVHJOJTTVFT
ӳޠͰΓͱΓ͢Δ
ӳޠͰΓͱΓ͢Δ IUUQTHJUIVCDPNLPOJGBSESPJELBJHJQVMM
ӳޠͰΓͱΓ͢Δ
ӳޠͰΓͱΓ͢Δ ຊޠͷ࣌ΑΓΈΜͳ༏͍͠ؾ͕͢Δ ʢ݁ՌతʹͬͯΑ͔ͬͨʣ
ͪΖΜຊޠͰશવͳ͠ ӳޠͰΓͱΓ͢Δ IUUQTHJUIVCDPNLPOJGBSZBQDBTJBTDFOBSJPJTTVFT JTTVFDPNNFOU
ւ֎͔Βڹ͋ͬͨ ӳޠͰΓͱΓ͢Δ w ؖࠃޠͷ༁αϙʔτ w ΠϯυͷΧϯϑΝϨϯεͷެࣜΞϓϦͱ͍͍͔ͯͨ͠ Β'PSLͤͯ͘͞Εͱͷ࿈བྷ w %SPJEDPO5VOJTJBͷΧϯϑΝϨϯεΞϓϦӨڹΛड͚ ͍ͯΔΒ͍͠
IUUQTHJUIVCDPN/JMIDFNESPJEDPOUO
࠷ߴͷײ*TTVF ӳޠͰΓͱΓ͢Δ
ϨϏϡʔΛߴʹճ͢
$POUSJCVUPSʹͱͬͯҰ൪ͭΒ͍ͷ ࣗͷ*TTVF13͕์ஔ͞ΕΔ͜ͱ ϨϏϡʔΛߴʹճ͢
͍ͭͰݟͯΔײΛग़͢ ϨϏϡʔΛߴʹճ͢
͍ͭͰݟͯΔײΛग़͢ ϨϏϡʔΛߴʹճ͢ 13͕དྷͨΒ͙͢ʹʮݟͯΔΑʯ ͷFZFTίϝϯτ
͍ͭͰݟͯΔײΛग़͢ ϨϏϡʔΛߴʹճ͢ ؆୯ͳͷͩͬͨΒ͙͢ʹ֬ೝ ͯ͠ײँͷϦΞΫγϣϯ
͍ͭͰݟͯΔײΛग़͢ ϨϏϡʔΛߴʹճ͢ 0,ͳΒ߈ͰϚʔδ ૣ͍ͱ13དྷ͔ͯΒ͘Β͍
அʹ໎͏13ΛͲ͏ѻ͍͍͔͑ ϨϏϡʔΛߴʹճ͢
அʹ໎͏ϨϏϡʔͰͷࣦഊ ϨϏϡʔΛߴʹճ͢
அʹ໎ͬͯ์ஔμϝ ϨϏϡʔΛߴʹճ͢ w அʹ໎ͬͨͱͯ͠ɺԿϦΞΫγϣϯͳ͍ͷμϝ w 1VMMSFRVFTUͳΒɺͱΓ͋͑ͣϚʔδ͔ΫϩʔζͷͲͪΒ ͔ͷҙࢥΛࣔ͢͜ͱ w Ͳ͏͙ͯ͢͠ʹஅͰ͖ͳ͚ΕͦͷࢫΛίϝϯτʹ ͖͢
ࡉ͔͍ͱ͜Ζؾʹ͠ͳ͍ ϨϏϡʔΛߴʹճ͢ w ࡉ͔͍ม໊ϑΥʔϚοτ่ΕؾʹͤͣϚʔδ͢Δ w ؾʹͳͬͨΒޙͰࣗͰͨ͠ํ͕ૣ͍ w ৗʹεϐʔυ༏ઌɺԿ͔͋ΕޙͰ͢ͱ͍͏ҙࣝ
໎Θͳ͍ύοέʔδߏ ϨϏϡʔΛߴʹճ͢ w "OESPJEͰϕετͳύοέʔδߏ͕ܾ·͍ͬͯͳ͍ɻ .77.ɺ.71ɺͨ·ͨ%%%ͳͲɺઃܭʹΑͬͯ·ͪ ·ͪ w ਖ਼ղͳ͍͕ɺ$POUSJCVUPS͕ΫϥεΛ୳࣌͢৽ͨʹ࡞ Γ͍ͨ࣌ʹ໎Θͳ͍ߏΛҙࣝͨ͠
໎Θͳ͍ύοέʔδߏ ϨϏϡʔΛߴʹճ͢
໎Θͳ͍ύοέʔδߏ ϨϏϡʔΛߴʹճ͢ ʮ"DUJWJUZશ෦͜͜ʹ͍ͬͯΔͷͶʯ ʮ.PEFMՃ͍ͨ࣌͜͜͠ʹೖΕΔͷͶʯ
$POUSJCVUPS͔ΒͷΞΫγϣϯʹ ѹతײँΛ࣋ͬͯ߈ϨϏϡʔ͢Δ 044ͰظؒͷϞνϕʔγϣϯΛอͭͷ ΘΓͱ͍͠ͷͰεϐʔυײେࣄ ϨϏϡʔΛߴʹճ͢
༷ʑͳखஈͰͬͯΒ͏
प͠ͳ͚Ε ୭ʹ͞Εͣ$POUSJCVUFͳ͍ ༷ʑͳखஈͰͬͯΒ͏
༷ʑͳखஈΛͬͯ ·ͣͬͯΒ͏͜ͱ͕େࣄ ༷ʑͳखஈͰͬͯΒ͏
%SPJE,BJHJެࣜΞϓϦͷ߹ ༷ʑͳखஈͰͬͯΒ͏ "OESPJE"STFOBM "OESPJEͷϥΠϒϥϦΞϓϦΛհͯ͠ΔαʔϏε (PPHMF "OESPJE͔ͩΒ͔͠Εͳ͍͕ɺ"OESPJEؔ࿈άϧʔϓʹϙετ͢Δͱ ւ֎ͷਓʹͨ͘͞ΜݟͯΒ͑Δ
5XJUUFSɺ'BDFCPPLɺϒϩά %SPJE,BJHJͷެࣜ5XJUUFSͰपͯ͠Β͑ͨͷେ͖͔ͬͨɻ ຊͩͱ5XJUUFSϒϩάͰ݁ߏΊΒΕΔ
"OESPJEͷ߹ͷपͷํ๏ ԼهεϥΠυʹ·ͱΊͯ͋Γ·͢ ʮ#FBTUBSHB[FSʯCZLPOJGBS IUUQTTQFBLFSEFDLDPNLPOJGBSCFBTUBSHB[FS ༷ʑͳखஈͰͬͯΒ͏
ΊΔͷා͍Μ͚ͩͲʜ ༷ʑͳखஈͰͬͯΒ͏ w ʮίʔυݟΒΕΔͷஏ͔͍ͣ͠ʜʯ w ʮΊͬͪΌୟ͔ΕΔΜ͡Όͳ͍͔ͳʜʯ w ʮා͍ਓʹϚαΧϦ͛ΒΕͨΒͲ͏͠Α͏ʜʯ
༷ʑͳखஈͰͬͯΒ͏ ҆৺͍ͯͩ͘͠͞ օͦΜͳʹͪΌΜͱݟͯ·ͤΜ
ͪΌΜͱݟͯ͘ΕͯΔਓେମ༏͍͠ ༷ʑͳखஈͰͬͯΒ͏ w ܦݧ্ɺ13ૹͬͯ͘ΕΔΑ͏ͳਓ༏͍͠ w Կ͔ݴΘΕͨΒ͍͍ͤͱ͍͏ࡶ͞େࣄ
ࣗͷख͕ճΒͳ͍࣮ΛͿͬ͜·ΕΔޣຯ ༷ʑͳखஈͰͬͯΒ͏
༷ʑͳखஈͰͬͯΒ͏ ίʔυΛެ։͢Δෆ҆Θ͔Δ͕ ެ։ͯ͠ΈΔͱҙ֎ͱͳ͍ͷͰ ΨϯΨϯΊ͍͖ͯ·͠ΐ͏
Α͋͘Δ࣭
2͍ͭࣄʢຊۀʣͯͨ͠ͷʁ
"ຖͯ͠·ͨ͠
ʁ
13͚ͩ߈Ͱݟ͍ͯͨ w ৗʹσΟεϓϨΠʹө͓͍ͯͯ͠ɺ13͚ͩࣄதͰ ͙͢ʹݟͯϦΞΫγϣϯΛฦ͍ͯͨ͠ w ϏϧυͪͳͲͷεΩϚ࣌ؒʹνϥνϥݟ͍ͯͨ
ͻͨ͢Β࣮ w Ոʹؼͬͯ࣌ʙ࣌͘Β͍ʹ࣮͍ͯͨ͠ ʢָ࣌ͯ͘͠ϋΠʹͳ͍ͬͯͨͷͰฏؾͩͬͨʣ w Շʹएׯന͍ͰݟΒΕ͕ͨɺ%SPJE,BJHJొஃ४උͰ ͋Δͱ͍͏͜ͱͰҰԠڐՄΛಘ͍ͯͨ
ਭͪΌΜͱऔͬͨํ͕͍͍ w $POUSJCVUPSͷํʑʹͬͱ͓ͤ͢ΕΑ͔͔ͬͨ w ָ͍͍ͯͭͭ͘͠ݟͯ͠·͍ͬͯͨͷͰۤͰͳ͔ͬͨ
·ͱΊ
-BCFMͱ.JMFTUPOFΛ׆༻͢Δ $POUSJCVUFͷෑډΛԼ͛Δ ӳޠͰΓͱΓ͢Δ ϨϏϡʔΛߴʹճ͢ ༷ʑͳखஈͰͬͯΒ͏
࠷ॳΘΓͱదͰ Γͳ͕Βࢼߦࡨޡ͖ͯͨ͠෦ଟ͍
044Ͱ͍ΖΜͳਓͱͷΛ࡞Δͷ ֶָ͍͠͠ͼଟ͍
ίʔυެ։͢Δͷ͕ෆ҆Ͱ ͱΓ͋͑ͣެ։ͯ͠ΈΔͱ͍͍͔
͋Γ͕ͱ͏͍͟͝·ͨ͠
%SPJE,BJHJ ʢʣʙʢۚʣ