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
Repro
Search
jollyjoester
December 07, 2016
Programming
0
1.4k
Repro
モバイルアプリの課題の発見から解決の方法までをワンストップで提供するサービス
jollyjoester
December 07, 2016
Tweet
Share
More Decks by jollyjoester
See All by jollyjoester
AIコードアシスタントとiOS開発
jollyjoester
1
330
市民のためのセキュリティ講座
jollyjoester
0
57
コミュニティMTG in WWDC24
jollyjoester
0
310
BengaluruでLTしてきた
jollyjoester
0
360
try! Swift Tokyo 2024
jollyjoester
0
360
エンジニアが直接会う場の価値について
jollyjoester
8
4.5k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
390
My favorite sessions in WWDC 23
jollyjoester
0
690
みんなでAIと戯れよう
jollyjoester
0
160
Other Decks in Programming
See All in Programming
Denoのセキュリティに関する仕組みの紹介 (toranoana.deno #23)
uki00a
0
180
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
170
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.4k
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
200
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
140
2年のAppleウォレットパス開発の振り返り
muno92
PRO
0
130
Implementation Patterns
denyspoltorak
0
140
大規模Cloud Native環境におけるFalcoの運用
owlinux1000
0
220
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
420
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
240
AIコーディングエージェント(Gemini)
kondai24
0
300
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
600
Featured
See All Featured
Designing for Timeless Needs
cassininazir
0
100
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The Invisible Side of Design
smashingmag
302
51k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
1
210
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1k
Un-Boring Meetings
codingconduct
0
170
The Curse of the Amulet
leimatthew05
0
5.9k
Getting science done with accelerated Python computing platforms
jacobtomlinson
0
81
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
180
Transcript
ϞόΠϧΞϓϦͷ՝ͷൃݟ͔Β ղܾͷํ๏·ͰϫϯετοϓͰఏڙ͢ΔαʔϏε
2 ਖ਼ࣜϦϦʔε 2015.4.22
3 ʑͷίϯςετड࣮
4 ϝσΟΞӡӦ άϩʔεϋοΫδϟʔφϧ
5 3ԯԁͷࢿۚௐୡͱଟ͘ͷΞοϓσʔτ 2016.3.7
6 ಋೖΞϓϦ 2015/4/22 ݱࡏ 2,000
7 ༷ʑͳΞϓϦͷάϩʔεϋοΫʹߩݙ
ReproͰ͡ΊΔ ΞϓϦͷάϩʔεϋοΫ
αʔϏεʹؔΘ͍ͬͯͯ͜Μͳ ͜ͱʹΜͰ͍·ͤΜ͔ʁ ?
Ϣʔβʔ͕ͳ͔ͳ͔ఆணͯ͘͠Εͳ͍ ίϯόʔδϣϯϨʔτ͕ͳ͔ͳ্͔͕Βͳ͍
None
ϚʔέςΟϯά ఆྔੳ ఆੑੳ ߦಈσʔλ ߦಈσʔλ
ReproΛͬͯͲ͏αʔϏεΛͤ͞Δͷʁ
ϚʔέςΟϯάɾΞϓϩʔν վળɾΞϓϩʔν
ϚʔέςΟϯάɾΞϓϩʔν վળɾΞϓϩʔν
վળɾΞϓϩʔν Ϧςϯγϣϯੳ ͰϚδοΫφϯόʔΛಛఆ ϑΝωϧੳ ͰՕॴΛಛఆ ಈը ͰՕॴͷ ݪҼΛಛఆɾվળ # %
≤ * ab n√a ± ≠ x f (x)
ϚδοΫφϯόʔͬͯͳʹʁ # % ≤ * ab n√a ± ≠ x
f (x)
ϚδοΫφϯόʔͱ ৽نϢʔβʔʹମݧͤ͞Δ͜ͱͰ ͦͷޙͷܧଓ͕ܶతʹ্͕Δ Ϣʔβʔߦಈ ճ
৽نϢʔβʔ Ϧϐʔλʔ add refresh 5ਓϑΥϩʔ νϡʔτϦΞϧྃ Ϣʔβใొ πΠʔτ͢Δ TwitterࣾͷϚδοΫφϯόʔ
Twitterࣾͷվળࣄྫ
ReproͰͲ͏ͬͯ ϚδοΫφϯόʔΛಛఆ͢Δͷʁ # % ≤ * ab n√a ± ≠
x f (x)
Ϧςϯγϣϯੳ Ϧςϯγϣϯੳͱɺ ฏͨ͘ݴ͑ ʮ࣌ؒͷܦաʹ͏ϢʔβʔͷఆணʯΛՄࢹԽ͢Δੳํ๏Ͱ͢ɻ ΞϓϦΛͬͯ͘Β͏ͨΊ ʹɺॳճΞΫηε͔Β̏ޙʹ ΞϓϦΛ্ཱͪ͛ͨϢχʔΫ Ϣʔβʔ̋ˋͰɺ̓ޙ… ͱ͍͏͜ͱΛੳͰ͖·͢ɻ
ઃఆͨ͠Ϣʔβʔߦಈ ΛҰཡͰࣗಈදࣔ Πϕϯτͷ࣮ߦ ճΛબ
None
3
վળɾΞϓϩʔν Ϧςϯγϣϯੳ ͰϚδοΫφϯόʔΛಛఆ ϑΝωϧੳ ͰՕॴΛಛఆ ಈը ͰՕॴͷ ݪҼΛಛఆɾվળ # %
≤ * ab n√a ± ≠ x f (x)
None
ϑΝωϧੳ ϑΝωϧੳͱɺΞϓϦىಈͳͲಛఆͷΠϕϯτ͔Βతୡ·Ͱ ͷ֤ϓϩηεͰɺΛѲ͢Δੳख๏Ͱ͢ɻ ୯७ͳίϯόʔδϣϯϨʔτͩ ͚Ͱͳ͘ɺΧʔτʹཉ͍͠ ͷΛೖΕ͕ͨɺܾࡁ͠ͳ͔ͬ ͨɻήʔϜͷνϡʔτϦΞϧ ಥഁͯ͠ɺεςʔδ̏·ͰΫϦ ΞΛͨ͠ਓ˓ˋͰ͋ͬͨɻͳ Ͳͷੳ͕ՄೳͰ͢ɻ
ϑΝωϧੳͱఆੑੳͰΞϓϦΛվળ ϚδοΫφϯόʔΠϕϯτ લΠϕϯτ લʑΠϕϯτ લʑલΠϕϯτ ͜ͷϢʔβͷ ߦಈΛಈըͰੳ
ϚʔέςΟϯά ఆྔੳ ఆੑੳ ߦಈσʔλ ߦಈσʔλ
1
1
1
ϚʔέςΟϯάɾΞϓϩʔν վળɾΞϓϩʔν
վળɾΞϓϩʔν ϚʔέςΟϯάɾΞϓϩʔν
Repro͕ఏڙ͢ΔϚʔέςΟϯάػೳͱׂ ΞϓϦϝοηʔδ ίϯόʔδϣϯϨʔτ վળʹޮՌత ϓογϡ௨ ϦςϯγϣϯϨʔτ վળʹޮՌత
ैདྷܕͷϝοηʔδ৴ͷ՝ A A A Ϣʔβʔશһʹ ಉ͡ϝοηʔδ ΛҰ੪৴
Ұ੪৴ΞϯΠϯετʔϧʹͭͳ͕Δ ௨͕ݪҼͰΞϯΠϯετʔϧ ͨ͜͠ͱ͕͋Γ·͔͢ʁ ? ͳ͍ 69% ͋Δ 31% શମ31%ͷϢʔβʔ͕ɺϓογϡ௨Λཧ༝ ʹΞϓϦΛΞϯΠϯετʔϧΛܦݧɻ
A ΞϯΠϯετʔϧͨ͠ओͳཧ༝ʁ ? ʮසൟʹૹͬͯ͘Δ͔Βʯ͕45.1%ɺ ʮຖճಉ͡ϝοηʔδ͔ͩΒʯ͕37.3%ɻ A 0 12.5 25 37.5 50 ϓογϡ௨͕ຖճಉ͡ϝοηʔδ͔ͩΒ සൟʹૹͬͯ͘Δ͔Β ૹͬͯΔ͕࣌ؒෆຬͨ͏͔ͩΒ ϝοηʔδʹڵຯ͕Θ͔Βͳ͍͔Β ΞϓϦΛར༻͠ͳ͘ͳΒ͔ͩΒ ͦͷଞ Ҿ༻ɿAPPBANKʮʲΞϓϦ։ൃऀ͚ʳϓογϡ௨ͷޮՌΛߴΊΔςΫχοΫʯ
Ϣʔβʔͷʹ߹Θͤͨϝοηʔδ৴ A B C
ϚʔέςΟϯά ఆྔੳ ఆੑੳ ߦಈσʔλ ߦಈσʔλ
1
None
None
None
None
None
ੳ݁Ռ͔ΒϢʔβʔΛλʔήςΟϯά Ϣʔβʔ͕ͳ͔ͳ͔ఆணͯ͘͠Εͳ͍ ίϯόʔδϣϯϨʔτ͕ͳ͔ͳ্͔͕Βͳ͍
ಋೖޮՌ
ͦͷଞͷΠϯφοϓ ϚʔέςΟϯάྫ ࣍ճͷҰཡϖʔδ දࣔΛτϦΨʔʹ ҰཡϖʔδΛෳճ ๚ΕͨϢʔβʔ બఆͰ໎͍͕ͪͳϢʔβʔΛ ਓؾϥϯΩϯάϖʔδʹ༠ಋ͢Δ ͜ͱͰɺΞϓϦͷUX͕վળ͠ɺ ఆண্͕
Λ͓໎͍Ͱ͔͢ʁ ಉ͡ΧςΰϦʔͷΛ໎ΘΕ͍ͯΔ ํ͕ߪೖͨ͠ਓؾϥϯΩϯά͕֬ೝͰ ͖·͢ɻࠓ͙͢ϥϯΩϯάΛνΣοΫʂ ·ͩ୳͢ ϥϯΩϯά ΛΧʔτʹೖΕΔ ϘλϯΛτϦΨʔʹ Χʔτʹ͍ΕΔ͕ະߪ ೖͷϢʔβʔ ΧʔτམͪܦݧϢʔβʔʹɺظݶ ͖ϙΠϯτΛ༩͢Δ͜ͱͰɺ ໎͍ڝ߹ൺֱΛ͗ɺίϯόʔ δϣϯ্͕ ̍̌ҎͷܾࡁͰ ˒˒̍̌̌ϙΠϯτGET˒˒ Χʔτʹ͕Ճ͞Ε·ͨ͠ʂ ͙͢ʹܾࡁ͍ͨͩ͘ͱɺࠓͳΒ௨ৗϙ ΠϯτʹՃ͑̍̌̌ϙΠϯτΛϓϨη ϯτʂ͜ͷνϟϯεΛಀ͞ͳ͍ʂ ·ͩങΘͳ͍ ͙͢ʹܾࡁ͢Δ ܾࡁྃΛτϦΨʔʹ ݄ؒͰ1Ҏ্ߪೖΛͨ͜͠ ͱͷ͋ΔϢʔβʔ ෳճߪೖܦݧͷ͋ΔϩΠϠϧ ΧελϚʔʹɺങ͍ޙʹϨ Ϗϡʔ͍ͨͩ͘͜ͱͰɺΞϓϦ ධՁ͕վળ ͝ߪೖ͋Γ͕ͱ͏͍͟͝·͢ʂ ΞϓϦͷ͍উखͳͲԿͰ͔ͨ͠ʁ ্࣭ͷͨΊɺϨϏϡʔධՁʹ͝ڠ ྗ͍ͩ͘͞ɻ͜Ε͔ΒԠԉΑΖ͘͠ ͓ئ͍͠·͢ʂ ·ͩങΘͳ͍ ͙͢ʹܾࡁ͢Δ ΞϓϦϝοηʔδʢϙοϓ ΞοϓʣͷΠϕϯττϦΨʔ Λ׆༻͠ϢʔβʔͷΞϓϦૢ ࡞ͷதͰΑΓޮՌతʹ৴͕ Մೳʹʂ ϑΝʔετ ίϯόʔδϣϯ ϙΠϯτ༩ ϨϏϡʔڠྗͷ͓ئ͍
ͦͷଞͷΠϯφοϓ ϚʔέςΟϯάྫ ࠂ ΞϓϦμϯϩʔυͷཁҼͱ ͳͬͨΩϟϯϖʔϯʹ߹Θͤ ϓογϡ௨ΞϓϦϝο ηʔδΛදࣔ͠ίϯόʔδϣ ϯΞοϓʂ
ಋೖΞϓϦͷޮՌతࣄྫ λΠτϧ ΞϓϦ δϟϯϧ ػೳ ༰ ݁ՌɾޮՌ ϨϏϡʔڠྗͷ͓ئ ͍දࣔͰɺධՁ্ ʹߩݙ
EC KPIੳ× ΞϓϦ ϝοηʔ δ×τϦ Ψʔදࣔ ෳճߪೖ࣮ͷ͋ΔํΛηάϝϯτͯ͠ɺ࣍ճߪೖྃޙʹΞϓ ϦϝοηʔδΛදࣔͤ͞ΔɻͦͷࡍϘλϯΛ̎ͭઃఆ͠ɺߴධՁ ͕Β͑ͦ͏ͳӈϘλϯɺURLεΩʔϜͰAppStoreͷϨχϡʔ ϖʔδඈ͠ɺࠨϘλϯʮΛใࠂ͢Δʯͱ͍͏໊લʹ͠ ͯɺࣗࣾΞϯέʔτʹඈͨ͠ɻ ϩΠϠϧΧελϚʔʹݶఆ͠ɺ͔ͭߪೖޙͱ͍͏ຬײ͕ߴ ·͍ͬͯΔঢ়گͰϨϏϡʔڠྗΛ͓ئ͍͢Δ͜ͱͰɺ˒͕̑ Β͍͘͢ͳΓɺ·ͨຬ͕͍ਓɺࣾϨϏϡʔ ϖʔδͰٵऩͰ͖ͨɻ ΞϓϦϝοηʔδ ͷޮՌΞοϓͰϓϩ ϑΟʔϧใͷొ ্͕ Ϛονϯ ά ΞϓϦ ϝοηʔ δ×ϓο γϡ௨ ϓϩϑΟʔϧใΛॆ࣮ͤ͞Δ͜ͱ͕༗ྉ՝ۚͷϓϩηεͱͯ͠ ॏཁͳ͜ͱ͕Θ͔Γɺొ্ͷͨΊɺΞϓϦϝοηʔδͰొ ͷϝϦοτΛૌٻɺ͞ΒʹΞϓϦϝοηʔδʹηοτ͢ΔλΠ τϧͱɺϓογϡ௨ͷλΠτϧΛಉ͡ʹͨ͠ɻ ϓογϡ௨ΛಡΈ։෧ͨ͠ਓ͕ɺΞϓϦىಈ࣌ʹಉ༷ͷ ༰ͷΞϓϦϝοηʔδΛड͚औΔͨΊɺૂ͍ͱ͢Δίϯ όʔδϣϯ͕7.4ഒΞοϓͨ͠ɻ ϚδοΫφϯόʔ ੳͰUIͷେ෯มߋʹ ޭ ΩϡϨʔ γϣϯɾ ϝσΟΞ Ϧςϯ γϣϯ× Ϣʔβʔ ૢ࡞ಈը ϚδοΫφϯόʔੳͷ݁ՌɺݕࡧػೳΛ2ճҎ্ར༻ͨ͠৽ن ϢʔβʔͷϦςϯγϣϯ͕ߴ͍ࣄ͕Θ͔ΓɺಈըΛݟͨͱ͜Ζݕࡧ ػೳΛݟ͚ͭΔࣄ͕ग़དྷ͍ͯͳ͍Ϣʔβʔ͕ଟ͔ͬͨͨΊݕࡧόʔ Λৗʹ࠷্෦ʹग़͢Α͏ʹUIΛվળͨ͠ɻ ݕࡧػೳΛར༻͢Δ৽نϢʔβʔ2.4ഒɺ7ޙͷϦςϯγϣ ϯ͕40ˋ্ঢͨ͠ɻ ૹྉແྉͷPOPΞο ϓදࣔͰސ٬୯ՁΛ Ξοϓ ίϚʔε ΞϓϦ ϝοηʔ δ×τϦ Ψʔදࣔ ΧʔτʹೖΕͨ͜ͱΛτϦΨʔʹʮʓʓʓԁҎ্ߪೖ͢Δͱૹྉແ ྉʯͷϝοηʔδΛදࣔɻϘλϯʮ͏গ͠ΛݟΔʯʮ͙͢ ʹߪೖखଓ͖ʯͷ2छΛஔͨ͠ɻ ΞϓϦϝοηʔδදࣔରऀͷ͕ɺʮ͏গ͠ ΛݟΔʯͷϘλϯΛԡ͠ങ͍Λܧଓɺސ٬୯Ձ͕ेˋ্ ঢͨ͠ɻ νϡʔτϦΞϧͷߦ ಈ؍ͰUXͷมߋ ήʔϜ Ϣʔβʔ ૢ࡞ಈը νϡʔτϦΞϧૢ࡞࣌ͷಈըΛը͠ɺϖʔδจࣈΛಡΈඈ͞ Εқ͍ՕॴΛൃݟ͠ɺϖʔδΛ2ͭʹׂͨ͠ΓɺจࣈΛݮΒ͢ ͳͷͲͷUXΛվળͨ͠ɻ νϡʔτϦΞϧΛ͔ͬ͠Γ͜ͳͯ͠Β͏͜ͱͰΞϓϦͷཧ ղΛਂ·ͬͨɻ݁Ռ߹උͱ͍ͬͨϢʔβʔͷෳࡶͳߦ ಈΛˋ্ঢͤ͞ɺϦςϯγϣϯΞοϓʹܨ͕ͬͨɻ
Ϣʔβʔͷڹ
ʢגʣϝϧΧϦ ࣥߦһɹদຊཾ༞͞Μ দຊ ཾ༞ ίϗʔτϑΝωϧͷ݁Ռ͔Βͦͷ··Pushͱ͔৴ Ͱ͖Δػೳ͔ͳΓ͔ͭ͑·͢Ͷʔʂ
ኍ ۭ ͓ർΕ༷Ͱ͢ʂ গ͕࣌ؒ͠ܦͬͯ·ͬͨͷͰ͕͢ɺiOS։ൃ͕མͪண͍ͨͷ ಋೖ͖ͤͯ͞·ͨ͠ʂ ΈΜͳײಈ͓ͯ͠Γ·͢ʂ͜Εੌ͍ΞϋମݧͰ͢ʂ ʢגʣϑΝϯίϛϡχέʔγϣϯζ ϝσΟΞࣄۀ෦ ኍۭ͞Μ
ʢגʣϦΫϧʔτΩϟϦΞ εϚʔτσόΠε։ൃάϧʔϓ ാढ़थ͞Μ ാ ढ़थ ࠓ·ͰϢʔβʔϏϦςΟςετΛͨ͠ΓɺUXϧʔϜͰͷϢʔβ ʔͷݕͳͲ৭ʑ͖ͬͯ·͕ͨ͠ɺͳ͔ͳ͔Ϣʔβʔͷ͋ Γͷ··ͷߦಈΛௐΔ͜ͱ͕͍··ͰͰ͖·ͤΜͰͨ͠ɻ Reproࠓ·ͰͷۤΛ؆୯ʹղܾͯ͘͠Ε·ͨ͠ɻॳΊ͔ͯͭ ͬͨͱ͖ɺࢥΘͣΛ্͛ͯ͠·͏ײಈ͕͋Γ·ͨ͠ʂ
ʢגʣΣϒΫϧʔ ৽نࣄۀ෦ ௗډେ͞Μ ௗډ େ Ϣʔβʔ໊ઢɻ αʔϏεఏڙऀ͕ݴ͏ʮͦΕʯ͕ɺຊʹͦ͏Ͱ͋Δͷ͔ɻ ReproΛ͏ͱɺຊͷҙຯͰจࣈ௨ΓʮϢʔβʔ໊ઢʯΛΔ ͜ͱ͕ग़དྷ·͢ɻ ࣄ࣮ԾઆΑΓحͳΓɻ
͏ΊΒΕ·ͤΜʢΘΒʣɻ
None