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
市民のためのセキュリティ講座
jollyjoester
0
28
コミュニティMTG in WWDC24
jollyjoester
0
290
BengaluruでLTしてきた
jollyjoester
0
330
try! Swift Tokyo 2024
jollyjoester
0
320
エンジニアが直接会う場の価値について
jollyjoester
8
4.3k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
350
My favorite sessions in WWDC 23
jollyjoester
0
640
みんなでAIと戯れよう
jollyjoester
0
150
続く勉強会の作り方
jollyjoester
2
860
Other Decks in Programming
See All in Programming
CursorはMCPを使った方が良いぞ
taigakono
1
250
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
750
技術同人誌をMCP Serverにしてみた
74th
1
630
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
21
3.9k
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
320
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
880
AIと”コードの評価関数”を共有する / Share the "code evaluation function" with AI
euglena1215
1
150
XP, Testing and ninja testing
m_seki
3
240
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
290
PipeCDのプラグイン化で目指すところ
warashi
1
270
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
230
Featured
See All Featured
It's Worth the Effort
3n
185
28k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Typedesign – Prime Four
hannesfritz
42
2.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
4 Signs Your Business is Dying
shpigford
184
22k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
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