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.3k
Repro
モバイルアプリの課題の発見から解決の方法までをワンストップで提供するサービス
jollyjoester
December 07, 2016
Tweet
Share
More Decks by jollyjoester
See All by jollyjoester
AIコードアシスタントとiOS開発
jollyjoester
1
300
市民のためのセキュリティ講座
jollyjoester
0
40
コミュニティMTG in WWDC24
jollyjoester
0
300
BengaluruでLTしてきた
jollyjoester
0
350
try! Swift Tokyo 2024
jollyjoester
0
340
エンジニアが直接会う場の価値について
jollyjoester
8
4.4k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
370
My favorite sessions in WWDC 23
jollyjoester
0
660
みんなでAIと戯れよう
jollyjoester
0
150
Other Decks in Programming
See All in Programming
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
300
CloudflareのChat Agent Starter Kitで簡単!AIチャットボット構築
syumai
2
490
Deep Dive into Kotlin Flow
jmatsu
1
330
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
150
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
390
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
520
ファインディ株式会社におけるMCP活用とサービス開発
starfish719
0
440
Updates on MLS on Ruby (and maybe more)
sylph01
1
180
Improving my own Ruby thereafter
sisshiki1969
1
160
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
320
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
140
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Become a Pro
speakerdeck
PRO
29
5.5k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Docker and Python
trallard
45
3.6k
A Modern Web Designer's Workflow
chriscoyier
696
190k
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