diff -r 000000000000 -r d26705c3ba8a videos/procompromcaps-en.vtt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/videos/procompromcaps-en.vtt Sun Jan 19 20:39:54 2014 +0100 @@ -0,0 +1,296 @@ +WEBVTT + +NOTE Validate on http://quuz.org/webvtt/ +NOTE http://developer.mozilla.org/en-US/docs/HTML/WebVTT/ + +denny01 +00:00:22.750 --> 00:00:25.500 align:middle position:50% +Hi. I'm here to introduce Procom, + +denny02 +00:00:25.500 --> 00:00:28.000 align:middle position:50% +the new protected communications platform. + +denny03 +00:00:28.000 --> 00:00:32.500 align:middle position:50% +I'm a user myself, and with me is Cally Code the developer. + +denny04 +00:00:32.500 --> 00:00:36.500 align:middle position:50% +First off, Procom is a project composed of several applications + +denny05 +00:00:36.500 --> 00:00:39.500 align:middle position:50% +that share logic yielding protected communication. + +denny06 +00:00:39.500 --> 00:00:42.000 align:middle position:50% +Let's consider the possibilities. + +boss01 +00:00:42.000 --> 00:00:47.500 align:middle position:50% +Just what are the possibilities? What kind of use cases does Procom serve? + +denny07 +00:00:47.500 --> 00:00:50.500 align:middle position:50% +Well, it includes sending instant messages, chatting... + +denny08 +00:00:50.500 --> 00:00:54.000 align:middle position:50% +voice calls, video streaming, and more. + +secretary01 +00:00:57.500 --> 00:00:59.000 align:middle position:50% +Oh my! I'm so bored... + +secretary02 +00:00:59.000 --> 00:01:02.500 align:middle position:50% +Waiting for customers to call on this old fashioned phone. + +secretary03 +00:01:02.500 --> 00:01:04.250 align:middle position:50% +They can't reach us over the Internet, + +secretary04 +00:01:04.250 --> 00:01:08.000 align:middle position:50% +because smartphone apps don't support WebRTC yet. + +cally01 +00:01:10.250 --> 00:01:14.500 align:middle position:50% +Sheesh, what's this guy blabbing about, I'm Cally Code the developer. + +cally02 +00:01:14.500 --> 00:01:20.000 align:middle position:50% +and I'm here to engineer the Procom +platform and the first round of applications. + +cally03 +00:01:20.000 --> 00:01:23.750 align:middle position:50% +I'll implement the platform while designing text, voice, + +cally04 +00:01:23.750 --> 00:01:27.000 align:middle position:50% +and video based clients across several platforms. + +boss02 +00:01:27.500 --> 00:01:30.000 align:middle position:50% +Wait a minute Cally, I'm the boss. + +boss03 +00:01:30.000 --> 00:01:34.500 align:middle position:50% +How are you going to avoid the pitfalls of cross platform development, Cally? + +cally05 +00:01:35.000 --> 00:01:39.000 align:middle position:50% +I'll start with a NodeJS project and Socket.IO. + +cally06 +00:01:39.000 --> 00:01:42.000 align:middle position:50% +Then I'll write a RTCPeerConnection() backend... + +cally07a +00:01:42.000 --> 00:01:45.000 align:middle position:50% +and have clients call getUserMedia(). + +cally07b +00:01:45.000 --> 00:01:47.000 align:middle position:50% +Once I've created data channels + +cally08 +00:01:47.000 --> 00:01:51.750 align:middle position:50% +and taken care of NAT traversal the WebRTC components are finished. + +denny09 +00:01:52.000 --> 00:01:56.000 align:middle position:50% +Okay, it's clear that Procom is WebRTC-centric... + +denny10 +00:01:56.000 --> 00:02:00.750 align:middle position:50% +but what about the leading mobile +platforms that lack a proper web runtime? + +denny11 +00:02:00.750 --> 00:02:03.500 align:middle position:50% +How will you bootstrap web applications on those? + +cally09 +00:02:04.000 --> 00:02:07.000 align:middle position:50% +We'll re-use the same logic across platforms + +cally10a +00:02:07.000 --> 00:02:09.000 align:middle position:50% +even those lacking web runtimes + +cally10b +00:02:09.000 --> 00:02:12.750 align:middle position:50% +by rendering a web view via Coordova or Phonegap. + +cally11a +00:02:13.250 --> 00:02:16.000 align:middle position:50% +By leveraging the plug in nature of Coordova, + +cally11b +00:02:16.000 --> 00:02:19.000 align:middle position:50% +we can abstract and provide features requiring... + +cally11c +00:02:19.000 --> 00:02:23.000 align:middle position:50% +sensors like accelerometers and proximity sensors. + +boss04a +00:02:23.000 --> 00:02:26.000 align:middle position:50% +That certainly helps. How will we test Procom + +boss04b +00:02:26.000 --> 00:02:28.750 align:middle position:50% +to verify that it meets requirements? + +cally12a +00:02:28.750 --> 00:02:33.000 align:middle position:50% +We'll employ the QUnit testing framework +and have a tiered support model... + +cally12b +00:02:33.000 --> 00:02:37.500 align:middle position:50% +just like jQuery does in order +to target a dozen platforms. + +denny12 +00:02:38.000 --> 00:02:43.000 align:middle position:50% +Wow, a dozen platforms. Ubiquity! Ubiquity, ubiquity! + +boss05 +00:02:44.000 --> 00:02:48.500 align:middle position:50% +Cally, how will we package Procom for distribution on so many platforms? + +cally13a +00:02:49.000 --> 00:02:54.000 align:middle position:50% +Boss, we think its best to deploy WGT web widgets. + +cally13b +00:02:54.000 --> 00:02:59.500 align:middle position:50% +Some platforms can work with them directly and we'll +automate a repackaging system for the others. + +secretary05 +00:03:00.500 --> 00:03:06.000 align:middle position:50% +It seems this would free us all from the vendor +lock-in that many providers so cynically enforce. + +denny13a +00:03:06.500 --> 00:03:07.500 align:middle position:50% +Why yes! + +denny13b +00:03:07.500 --> 00:03:10.500 align:middle position:50% +WGT widgets should fit our design nicely + +denny13c +00:03:10.500 --> 00:03:12.750 align:middle position:50% +but do you think that we could extend deployment... + +denny13d +00:03:12.750 --> 00:03:16.250 align:middle position:50% +to embed our packages in browsers and other web applications? + +cally14 +00:03:17.000 --> 00:03:21.500 align:middle position:50% +Yes, that's one reason for sticking to web standards in the first place. + +boss06 +00:03:22.500 --> 00:03:26.000 align:middle position:50% +What about cryptography? Do standard web interfaces exist for that? + +cally15a +00:03:27.000 --> 00:03:28.000 align:middle position:50% +Well Boss. + +cally15b +00:03:28.000 --> 00:03:32.000 align:middle position:50% +The W3C has produced the Web Cryptography API standard... + +cally15c +00:03:32.000 --> 00:03:34.000 align:middle position:50% +...but it's not stable yet. + +cally15d +00:03:34.000 --> 00:03:36.500 align:middle position:50% +Until it matures we have good alternatives + +cally15e +00:03:36.500 --> 00:03:39.500 align:middle position:50% +like the Stanford JavaScript crypto library. + +cally15f +00:03:39.500 --> 00:03:44.750 align:middle position:50% +Or implement selectively using native +interfaces and plug in via Cordova. + +denny14 +00:03:45.250 --> 00:03:51.500 align:middle position:50% +Oh good! The latter would allow us to optionally tap +into hardware crypto processors if they prove secure. + +cally16 +00:03:52.000 --> 00:03:57.750 align:middle position:50% +That's right. Like the Intel and AMD implementations, namely AES-NI. + +boss07a +00:03:58.500 --> 00:04:00.500 align:middle position:50% +Cally, how about the server components? + +boss07b +00:04:01.000 --> 00:04:05.500 align:middle position:50% +Won't they suffer from typical security problems once put in the cloud? + +cally17a +00:04:06.000 --> 00:04:10.000 align:middle position:50% +Well we'll learned from the mistakes of so many service providers. + +cally17b +00:04:10.250 --> 00:04:21.750 align:middle position:50% +Procom will not store keys, anonymize user identities with Tor, +and will encrypt all channels via TLS and SRTP, or DTLS and ZRTP. + +cally17c +00:04:22.000 --> 00:04:26.750 align:middle position:50% +The Procom seed service will even employ a dead man's switch by default. + +boss08a +00:04:27.250 --> 00:04:28.750 align:middle position:50% +Wow, that's a handful. + +boss08b +00:04:29.250 --> 00:04:34.250 align:middle position:50% +I guess another factor is the open nature of the +design and freedom to self host the platform. + +denny15a +00:04:37.750 --> 00:04:39.000 align:middle position:50% +I've lost track. + +denny15b +00:04:39.250 --> 00:04:47.500 align:middle position:50% +How does Procom's focus on web interfaces, open source, standards, +and data encryption relate to the future of communication? + +cally18a +00:04:48.250 --> 00:04:54.750 align:middle position:50% +These aspects help Procom benefit users with +ubiquity, freedom, and security all at once. + +cally18b +00:04:55.000 --> 00:04:58.500 align:middle position:50% +That's what makes Procom unique among rivals. + +boss09a +00:04:59.250 --> 00:05:00.250 align:middle position:50% +Sounds great! + +boss09b +00:05:00.500 --> 00:05:03.750 align:middle position:50% +Get to work you two while I spread the word about Procom. + +crowd01 +00:05:04.500 --> 00:05:10.500 align:middle position:50% +Cheer!