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
WebRTCで実現する次世代英会話と旧世代式開発手法
Search
Ken Jumbo Haneda
November 08, 2017
Programming
0
2.1k
WebRTCで実現する次世代英会話と旧世代式開発手法
エンジニアの力でサービス・組織をスケール化させるには?〜Web現場MeetUP #2 〜
Ken Jumbo Haneda
November 08, 2017
Tweet
Share
More Decks by Ken Jumbo Haneda
See All by Ken Jumbo Haneda
Vue.jsのない会社にVue.jsを入れていく
jumbo_ken
0
560
20200115_skyway_ug_6
jumbo_ken
0
520
サブスクミートアップ2.pdf
jumbo_ken
0
890
20180614_AppsJapan
jumbo_ken
1
440
WebRTCリリースで辛かったこと
jumbo_ken
2
1.6k
アプリを作ってて気づいた、 教育サービスの難しいところ
jumbo_ken
1
1.5k
bonfire android #2
jumbo_ken
1
1.1k
iOSでのSkyWay開発の勘所とTips (リリース後・新SDK編)
jumbo_ken
0
5.9k
両OSやるマンという選択
jumbo_ken
9
6.2k
Other Decks in Programming
See All in Programming
Eloquentを使ってどこまでコードの治安を保てるのか?を新人が考察してみた
itokoh0405
0
3.2k
予防に勝る防御なし(2025年版) - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHP Conference Fukuoka 2025
twada
PRO
39
13k
ノーコードからの脱出 -地獄のデスロード- / Escape from Base44
keisuke69
0
740
カンファレンス遠征を(安く)楽しむ技術
wp_daisuke
0
170
CSC509 Lecture 13
javiergs
PRO
0
250
Nitro v3
kazupon
2
310
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
260
Evolving NEWT’s TypeScript Backend for the AI-Driven Era
xpromx
0
110
競馬で学ぶ機械学習の基本と実践 / Machine Learning with Horse Racing
shoheimitani
13
13k
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
9
4.3k
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
160
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
460
Featured
See All Featured
It's Worth the Effort
3n
187
28k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Become a Pro
speakerdeck
PRO
29
5.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Building Adaptive Systems
keathley
44
2.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Bash Introduction
62gerente
615
210k
Producing Creativity
orderedlist
PRO
348
40k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Transcript
WebRTCͰ࣮ݱ͢Δ࣍ੈӳձͱچੈࣜ։ ൃख๏ ΤϯδχΞͷྗͰαʔϏεɾ৫ΛεέʔϧԽͤ͞Δʹʁʙ8FCݱ .FFU61ˌʙ
δϟϯϘ@jumboOrNot Kentaro Haneda Mobile Engineer@RareJob Tech Lead@LandSkip Swift/kotlin/golang/WebRTC
ࠓͷ ɾ͢͜ͱ - ࣍ੈӳձΛͲ͏ઃܭɾ։ൃ͢Δ͔ͱ͍͏ - چੈతΞϓϩʔνඞཁͩͬͨ ɾ͜Μͳਓ - ৽͍͠ମݧΛϓϩμΫτࢹɾٕज़ࢹͰͲ͏ઃܭ͢Δ͔ ʹڵຯͷ͋ΔΤϯδχΞ
ࠓͷ ɾ͞ͳ͍͜ͱ - WebRTCͷࡉ͔͍ٕज़ ͪ͜ΒΛ͝ཡ͍ͩ͘͞ https://www.slideshare.net/iwashi86/skyway-how-to-use-skyway-webrtc?ref=https:// skyway.connpass.com/event/65697/presentation/ - ΞϓϦͷΞʔΩςΫνϟͳͲ ͪ͜ΒΛ͝ཡ͍ͩ͘͞
https://qiita.com/jumbOrNot/items/4f143c8dcf9620080382 - ϨΞδϣϒΞϓϦαʔϏεʹ͍ͭͯ ͪ͜ΒΛ͝ཡ͍ͩ͘͞ https://speakerdeck.com/jumbo_ken/liang-osyarumantoiuxuan-ze
࣍ੈӳձΛͲ͏ઃܭɾ։ൃ͢Δ͔ͱ͍͏ KPIπϦʔΛઃܭɾ࣮ɾσβΠϯ·Ͱੜ͔ͪ͠Ό͓͏
8/11 ver1.4.0ΑΓϦϦʔε͠·ͨ͠ ʮεϚϗͰϨοεϯʯ SkyWayΛͬͨWebRTCͰͷϨοεϯఏڙΛ ݕূ͍ͯ͠·͢ ʢiOSܦ༝ͷແྉମݧϨοεϯͷҰ෦ߨࢣͷΈʣ
10͍ؒଓ͚ͨ Skype͔Βͷ٫Λ ɾ৽͍͠ͷΛಋೖ ɾମݧΛϦσβΠϯ ͠ͳ͕ΒͲ͏ਐΊ͔ͨʁ ࣍ੈӳձΛͲ͏ઃܭɾ։ൃ͢Δ͔ʁʁ
WebRTCػೳϦϦʔε·ͰͷಓͷΓ ɾىҊ ɾٕज़ݕূ ɾଞ෦ͱͷௐ ɾاըɺຉɺ༷ࡦఆ ɾσβΠϯ ɾ։ൃ ɾϓϩμΫτݕূ etc…
WebRTCػೳϦϦʔε·ͰͷಓͷΓ ɾىҊ ɾٕज़ݕূ ɾଞ෦ͱͷௐ ɾاըɺຉɺ༷ࡦఆ ɾσβΠϯ ɾ։ൃ ɾϓϩμΫτݕূ etc…
༷ࡦఆͰͷ՝ Ұ൪࠷ॳͷஈ֊Ͱܾ·͍ͬͯͨͷɺ ʮWebRTCΛͬͨݕূΛԿͱͯ͠ϦϦʔε͢Δʯ ͱ͍͏͜ͱ͚ͩɻ ·ͣߟ͑ͨࣄ • ٕज़ΛࣗࣾͰ͕࣋ͭނɺࣗ༝ʮߴʯ͕ͩ ʮͰͳʹΛΔͷ͔ʁʁʯʹ͍ͭͯ • skypeͱͷ༗ҙࠩΛԿΛ࣋ͬͯݕূ͢Δ͔ʹ͍ͭͯ
Q. ࣗ༝ͷߴ͍ϓϩδΣΫτͷઃܭͲ͏͢Δʁ
༷ࡦఆͰͷ՝ Q. ࣗ༝ͷߴ͍ϓϩδΣΫτͷઃܭͲ͏͢Δʁ A. ϢʔβʔετʔϦʔɾKPIπϦʔʹపఈతʹ४ڌ
Goal. ӳޠ͕ͤΔ Α͏ʹͳΔ ϨοεϯΛड͚Δ ΞϓϦΛىಈ͢Δ Ϩοεϯ༧ ɾɾɾ ϢʔβʔετʔϦʔ CVR XX%
CVR XX% CVR XX% ϢʔβʔετʔϦʔ ʴ KPIπϦʔΛ༻ҙ͢Δ
Goal. ӳޠ͕ͤΔ Α͏ʹͳΔ ϨοεϯΛड͚Δ ༗ྉԽ Ϩοεϯ༧ ɾɾɾ ϢʔβʔετʔϦʔ CVR XX%
CVR XX% CVR XX% ମݧͷఆྔԽ ϝΠϯKPIͷܭଌ ՄࢹԽ: re:dash αϒKPIͷܭଌ Πϕϯτπʔϧ: Firebase + Flurry + Answers + MixPanel
༷ࡦఆ ΰʔϧͱͦ͜·Ͱͷܦ࿏ΛΫϦΞʹ͢Δɺ ͦͷͨΊͷՄࢹԽूܭΛదͳπʔϧͰָʹ˕ ͜ΕʹΑ্༷ͬͯͷൈ͚࿙ΕɺޮՌଌఆͷෆͳ͘ ϓϩδΣΫτΛϦϦʔεͰ͖ͨ Q. ࣗ༝ͷߴ͍ϓϩδΣΫτͷઃܭͲ͏͢Δʁ A. ϢʔβʔετʔϦʔɾKPIπϦʔʹపఈతʹ४ڌ
WebRTCػೳϦϦʔε·ͰͷಓͷΓ ɾىҊ ɾٕज़ݕূ ɾଞ෦ͱͷௐ ɾاըɺຉɺ༷ࡦఆ ɾσβΠϯ ɾ։ൃ ɾϓϩμΫτݕূ etc…
σβΠϯɾ։ൃͰͷ ొਓ͕ੜెɾߨࢣ͕͍Δɾɾɾ ༧ˠϨοεϯྃ·Ͱ͕ͯ͘ෳࡶɾɾɾ Q. ঢ়ଶ͕ଟ͍ͷͰఆٛʹൈ͚࿙Ε͕ग़͕ͪ → σβΠϯɾ։ൃʹӨڹ
༷ࡦఆͰͷ՝ Q. ঢ়ଶ͕ଟ͍ͷͰఆٛʹൈ͚࿙Ε͕ग़͕ͪ A. ͜ΕϢʔβʔετʔϦʔɾKPIπϦʔʹపఈతʹ४ڌ
ߨࢣ͕ୀग़ Ϩοεϯ։࢝ ϧʔϜʹೖΔ ɾɾɾ ϢʔβʔετʔϦʔ CVR XX% CVR XX% CVR
XX% ϢʔβʔετʔϦʔ͔Βঢ়ଶͷநग़ͱ ͦΕʹର͢ΔσβΠϯͷఆٛͱ࣮ ঢ়ଶɿߨࢣͪ ঢ়ଶɿϨοεϯத ঢ়ଶɿߨࢣୀग़
ঢ়ଶ͝ͱʹσβΠϯΛఆٛɾվળ͢Δ͜ͱͰɺ ༷࿙ΕϨοεϯମݧΛ্ͤ͞Δ
ঢ়ଶΛMVVMͰ࣮͞ΕͯΫϥΠΞϯτͷViewModelʹ ࣮ͯ͠ϦΞΫςΟϒʹUIΛมߋ https://gist.github.com/jumbo-in-Jap/29abf2cefcf0848700915f7b6ace37f8 class LessonViewModel { let disposeBag = DisposeBag()
var connectionStatus = Variable<ConnectionStatus>(.none) enum ConnectionStatus:String{ case none case loading case connectedWithTutor case disConnectedWithTutor case leaveTutor } }
ͦΜͳऔΓΈͷ݁Ռͱͯ͠ SkypeͰ࣮ݱͰ͖ͳ͔ͬͨΞϨίϨ͕٧·͍ͬͯ·͢ ઌੜͷإΛݟͯ͠ͳ͕Β ΞϓϦΛಈ͔ͤΔ ڭࡐΛݟͳ͕ΒεϚϗͰϨοεϯ
چੈతΞϓϩʔνඞཁͩͬͨ
WebRTCػೳϦϦʔε·ͰͷಓͷΓ ɾىҊ ɾٕज़ݕূ ɾଞ෦ͱͷௐ ɾاըɺຉɺ༷ࡦఆ ɾσβΠϯ ɾ։ൃ ɾϓϩμΫτݕূ etc…
Ұ෦։ൃ͕ϑΟϦϐϯ ฐࣾͷߨࢣଆͷαΠτ શͯPHͷΤϯδχΞ͕୲ɻ ʮݴޠͷน͋Δ͚Ͳɺ ࣌ࠩ1͔࣌ؒ͠ͳ͍͠ɺӳޠ ·͊ͪΐͬͱͤΔ͠ɺ ͍͚ΔΖʂʂʯ
ͬͺ༷ॻͱςϨϏձ͚ٞͩ͡Όμϝ ͳΜ͔͜͏ݴޠԽ͢Δͷ͍͚͠Ͳɺ৽͍͠ମݧͩ͠ ΤϯδχΞ͔ΒͬͱओମతͳఏҊཉ͍͠͠ɺ ՝ʹੵۃతʹऔΓΜͰ΄͍͠ɾɾɾ →What do i say??
ͬͺ༷ॻͱςϨϏձ͚ٞͩ͡Όμϝ →What do i say?? A. ݁ՌਓੜॳͷϑΟϦϐϯग़ுɻ ͲΜͳʹ͕Μͬͯߟ͑ͯ݁ہߦ͔ͬͯ͢͠ͳ͍ɻ ର໘Ͱ͞ͳ͍ͱʢӳޠͩ͠ʣχϡΞϯεԹײ
ΘΒͳ͍ɻ
·ͱΊ • ΤϯδχΞ͕ϓϩμΫτΛߟ͑ΔʹԿࣄ KPIπϦʔϕʔεͰମݧΛཧ͢Δͷ͕͓͢͢Ί • ԕͯ͘ߦ͜͏ɺϑΟϦϐϯ
͍ΖΜͳ৬छ༻ҙ͍ͯ͠·͢ɺ͝Ԡื͓͓ͪͯ͠Γ·͢ IUUQTXXXXBOUFEMZDPNDPNQBOJFTSBSFKPCQSPKFDUT “ฐࣾਓɺΓͯ·ͤry)”