WEBVTT
Kind: captions
Language: en

00:00:18.580 --> 00:00:21.490 align:start position:0%
 
hello<00:00:19.580><c> everyone</c><00:00:19.970><c> this</c><00:00:20.180><c> talk</c><00:00:20.870><c> is</c><00:00:21.140><c> aimed</c>

00:00:21.490 --> 00:00:21.500 align:start position:0%
hello everyone this talk is aimed
 

00:00:21.500 --> 00:00:25.000 align:start position:0%
hello everyone this talk is aimed
primarily<00:00:22.160><c> at</c><00:00:23.110><c> application</c><00:00:24.110><c> developers</c><00:00:24.650><c> and</c>

00:00:25.000 --> 00:00:25.010 align:start position:0%
primarily at application developers and
 

00:00:25.010 --> 00:00:27.790 align:start position:0%
primarily at application developers and
I<00:00:25.520><c> would</c><00:00:25.670><c> like</c><00:00:25.880><c> to</c><00:00:25.910><c> give</c><00:00:26.270><c> a</c><00:00:26.540><c> quick</c><00:00:26.570><c> overview</c><00:00:27.050><c> of</c>

00:00:27.790 --> 00:00:27.800 align:start position:0%
I would like to give a quick overview of
 

00:00:27.800 --> 00:00:30.999 align:start position:0%
I would like to give a quick overview of
the<00:00:28.760><c> architectural</c><00:00:29.600><c> considerations</c><00:00:30.529><c> behind</c>

00:00:30.999 --> 00:00:31.009 align:start position:0%
the architectural considerations behind
 

00:00:31.009 --> 00:00:34.510 align:start position:0%
the architectural considerations behind
developing<00:00:32.860><c> decentralized</c><00:00:33.860><c> applications</c>

00:00:34.510 --> 00:00:34.520 align:start position:0%
developing decentralized applications
 

00:00:34.520 --> 00:00:40.270 align:start position:0%
developing decentralized applications
for<00:00:34.880><c> aetherium</c><00:00:35.750><c> on</c><00:00:36.050><c> top</c><00:00:36.260><c> of</c><00:00:36.380><c> s'more</c><00:00:37.600><c> so</c><00:00:39.280><c> what's</c>

00:00:40.270 --> 00:00:40.280 align:start position:0%
for aetherium on top of s'more so what's
 

00:00:40.280 --> 00:00:42.460 align:start position:0%
for aetherium on top of s'more so what's
wrong<00:00:40.640><c> with</c><00:00:40.880><c> the</c><00:00:41.090><c> web</c><00:00:41.239><c> to</c><00:00:41.480><c> model</c><00:00:41.900><c> well</c>

00:00:42.460 --> 00:00:42.470 align:start position:0%
wrong with the web to model well
 

00:00:42.470 --> 00:00:45.250 align:start position:0%
wrong with the web to model well
yesterday<00:00:43.400><c> we</c><00:00:43.940><c> have</c><00:00:44.060><c> already</c><00:00:44.360><c> heard</c><00:00:44.630><c> that</c><00:00:44.989><c> the</c>

00:00:45.250 --> 00:00:45.260 align:start position:0%
yesterday we have already heard that the
 

00:00:45.260 --> 00:00:48.100 align:start position:0%
yesterday we have already heard that the
web<00:00:45.410><c> is</c><00:00:45.440><c> kind</c><00:00:45.860><c> of</c><00:00:46.010><c> broken</c><00:00:46.360><c> so</c><00:00:47.360><c> it</c><00:00:47.600><c> has</c><00:00:47.840><c> these</c>

00:00:48.100 --> 00:00:48.110 align:start position:0%
web is kind of broken so it has these
 

00:00:48.110 --> 00:00:50.230 align:start position:0%
web is kind of broken so it has these
problems<00:00:48.800><c> that</c><00:00:49.070><c> you</c><00:00:49.280><c> have</c><00:00:49.430><c> a</c><00:00:49.460><c> centralized</c>

00:00:50.230 --> 00:00:50.240 align:start position:0%
problems that you have a centralized
 

00:00:50.240 --> 00:00:53.440 align:start position:0%
problems that you have a centralized
trust<00:00:51.080><c> management</c><00:00:51.320><c> based</c><00:00:52.070><c> on</c><00:00:52.450><c> certification</c>

00:00:53.440 --> 00:00:53.450 align:start position:0%
trust management based on certification
 

00:00:53.450 --> 00:00:55.930 align:start position:0%
trust management based on certification
authorities<00:00:54.110><c> you</c><00:00:54.950><c> cannot</c><00:00:55.340><c> really</c><00:00:55.640><c> trust</c>

00:00:55.930 --> 00:00:55.940 align:start position:0%
authorities you cannot really trust
 

00:00:55.940 --> 00:01:02.050 align:start position:0%
authorities you cannot really trust
content<00:00:56.600><c> delivery</c><00:00:56.960><c> networks</c><00:00:57.530><c> and</c><00:01:00.610><c> so</c><00:01:01.610><c> there's</c>

00:01:02.050 --> 00:01:02.060 align:start position:0%
content delivery networks and so there's
 

00:01:02.060 --> 00:01:07.300 align:start position:0%
content delivery networks and so there's
this<00:01:02.600><c> other</c><00:01:02.840><c> problem</c><00:01:03.260><c> that</c><00:01:03.830><c> scaling</c><00:01:04.400><c> is</c><00:01:06.310><c> so</c>

00:01:07.300 --> 00:01:07.310 align:start position:0%
this other problem that scaling is so
 

00:01:07.310 --> 00:01:10.020 align:start position:0%
this other problem that scaling is so
it's<00:01:07.549><c> buying</c><00:01:07.970><c> more</c><00:01:08.540><c> power</c><00:01:08.960><c> from</c><00:01:09.560><c> data</c><00:01:09.830><c> centers</c>

00:01:10.020 --> 00:01:10.030 align:start position:0%
it's buying more power from data centers
 

00:01:10.030 --> 00:01:13.149 align:start position:0%
it's buying more power from data centers
by<00:01:11.030><c> the</c><00:01:11.350><c> person</c><00:01:12.350><c> who</c><00:01:12.500><c> provides</c><00:01:12.890><c> the</c>

00:01:13.149 --> 00:01:13.159 align:start position:0%
by the person who provides the
 

00:01:13.159 --> 00:01:15.550 align:start position:0%
by the person who provides the
application<00:01:13.880><c> whereas</c><00:01:14.299><c> demand</c><00:01:14.780><c> is</c><00:01:14.990><c> just</c><00:01:15.290><c> users</c>

00:01:15.550 --> 00:01:15.560 align:start position:0%
application whereas demand is just users
 

00:01:15.560 --> 00:01:18.190 align:start position:0%
application whereas demand is just users
pounding<00:01:16.310><c> it</c><00:01:16.549><c> and</c><00:01:16.729><c> there</c><00:01:17.150><c> all</c><00:01:17.299><c> sorts</c><00:01:17.720><c> of</c><00:01:17.900><c> like</c>

00:01:18.190 --> 00:01:18.200 align:start position:0%
pounding it and there all sorts of like
 

00:01:18.200 --> 00:01:20.950 align:start position:0%
pounding it and there all sorts of like
elastic<00:01:18.619><c> solutions</c><00:01:19.430><c> but</c><00:01:20.000><c> none</c><00:01:20.240><c> of</c><00:01:20.270><c> them</c><00:01:20.630><c> so</c>

00:01:20.950 --> 00:01:20.960 align:start position:0%
elastic solutions but none of them so
 

00:01:20.960 --> 00:01:23.320 align:start position:0%
elastic solutions but none of them so
they're<00:01:21.560><c> ugly</c><00:01:21.920><c> they're</c><00:01:22.580><c> just</c><00:01:22.970><c> a</c><00:01:23.090><c> hairy</c>

00:01:23.320 --> 00:01:23.330 align:start position:0%
they're ugly they're just a hairy
 

00:01:23.330 --> 00:01:25.780 align:start position:0%
they're ugly they're just a hairy
solution<00:01:23.990><c> to</c><00:01:24.409><c> providing</c><00:01:24.830><c> more</c><00:01:25.070><c> computing</c>

00:01:25.780 --> 00:01:25.790 align:start position:0%
solution to providing more computing
 

00:01:25.790 --> 00:01:28.270 align:start position:0%
solution to providing more computing
power<00:01:26.060><c> as</c><00:01:26.390><c> you</c><00:01:26.690><c> have</c><00:01:27.050><c> more</c><00:01:27.290><c> clients</c><00:01:27.590><c> even</c>

00:01:28.270 --> 00:01:28.280 align:start position:0%
power as you have more clients even
 

00:01:28.280 --> 00:01:30.280 align:start position:0%
power as you have more clients even
though<00:01:28.730><c> there's</c><00:01:29.060><c> this</c><00:01:29.120><c> natural</c><00:01:29.480><c> thing</c><00:01:30.050><c> that</c>

00:01:30.280 --> 00:01:30.290 align:start position:0%
though there's this natural thing that
 

00:01:30.290 --> 00:01:32.560 align:start position:0%
though there's this natural thing that
every<00:01:30.590><c> client</c><00:01:31.040><c> who</c><00:01:31.220><c> comes</c><00:01:31.520><c> they</c><00:01:32.150><c> come</c><00:01:32.390><c> with</c><00:01:32.540><c> a</c>

00:01:32.560 --> 00:01:32.570 align:start position:0%
every client who comes they come with a
 

00:01:32.570 --> 00:01:36.190 align:start position:0%
every client who comes they come with a
computer<00:01:33.110><c> that</c><00:01:33.409><c> could</c><00:01:33.620><c> just</c><00:01:33.890><c> be</c><00:01:33.979><c> used</c><00:01:34.550><c> so</c><00:01:35.390><c> it</c>

00:01:36.190 --> 00:01:36.200 align:start position:0%
computer that could just be used so it
 

00:01:36.200 --> 00:01:38.140 align:start position:0%
computer that could just be used so it
would<00:01:36.500><c> be</c><00:01:36.650><c> really</c><00:01:36.860><c> natural</c><00:01:37.159><c> to</c><00:01:37.760><c> scale</c>

00:01:38.140 --> 00:01:38.150 align:start position:0%
would be really natural to scale
 

00:01:38.150 --> 00:01:41.260 align:start position:0%
would be really natural to scale
computing<00:01:38.930><c> power</c><00:01:39.200><c> by</c><00:01:40.040><c> using</c><00:01:40.550><c> the</c><00:01:40.940><c> actual</c>

00:01:41.260 --> 00:01:41.270 align:start position:0%
computing power by using the actual
 

00:01:41.270 --> 00:01:46.170 align:start position:0%
computing power by using the actual
computers<00:01:41.930><c> that</c><00:01:42.229><c> the</c><00:01:42.620><c> users</c><00:01:43.580><c> come</c><00:01:43.850><c> with</c><00:01:44.060><c> and</c>

00:01:46.170 --> 00:01:46.180 align:start position:0%
computers that the users come with and
 

00:01:46.180 --> 00:01:52.060 align:start position:0%
computers that the users come with and
the<00:01:47.180><c> problem</c><00:01:47.600><c> however</c><00:01:47.780><c> is</c><00:01:48.080><c> that</c><00:01:50.409><c> so</c><00:01:51.409><c> trustless</c>

00:01:52.060 --> 00:01:52.070 align:start position:0%
the problem however is that so trustless
 

00:01:52.070 --> 00:01:54.490 align:start position:0%
the problem however is that so trustless
computing<00:01:52.760><c> it</c><00:01:53.000><c> comes</c><00:01:53.360><c> with</c><00:01:53.600><c> overhead</c><00:01:54.080><c> costs</c>

00:01:54.490 --> 00:01:54.500 align:start position:0%
computing it comes with overhead costs
 

00:01:54.500 --> 00:01:57.700 align:start position:0%
computing it comes with overhead costs
that<00:01:54.650><c> are</c><00:01:54.830><c> not</c><00:01:55.040><c> going</c><00:01:55.280><c> to</c><00:01:55.490><c> go</c><00:01:55.640><c> away</c><00:01:55.760><c> so</c><00:01:56.710><c> for</c>

00:01:57.700 --> 00:01:57.710 align:start position:0%
that are not going to go away so for
 

00:01:57.710 --> 00:02:00.850 align:start position:0%
that are not going to go away so for
example<00:01:58.280><c> if</c><00:01:58.490><c> you</c><00:01:58.790><c> are</c><00:01:58.820><c> trying</c><00:01:59.540><c> to</c><00:02:00.049><c> host</c><00:02:00.500><c> a</c>

00:02:00.850 --> 00:02:00.860 align:start position:0%
example if you are trying to host a
 

00:02:00.860 --> 00:02:04.000 align:start position:0%
example if you are trying to host a
number<00:02:01.520><c> of</c><00:02:01.729><c> movies</c><00:02:02.510><c> it</c><00:02:02.869><c> will</c><00:02:03.350><c> be</c><00:02:03.560><c> always</c>

00:02:04.000 --> 00:02:04.010 align:start position:0%
number of movies it will be always
 

00:02:04.010 --> 00:02:06.609 align:start position:0%
number of movies it will be always
cheaper<00:02:04.460><c> to</c><00:02:04.640><c> do</c><00:02:04.790><c> that</c><00:02:05.000><c> in</c><00:02:05.210><c> a</c><00:02:05.299><c> data</c><00:02:05.540><c> center</c><00:02:05.869><c> than</c>

00:02:06.609 --> 00:02:06.619 align:start position:0%
cheaper to do that in a data center than
 

00:02:06.619 --> 00:02:09.490 align:start position:0%
cheaper to do that in a data center than
to<00:02:06.830><c> do</c><00:02:07.040><c> it</c><00:02:07.070><c> on</c><00:02:07.490><c> a</c><00:02:07.850><c> trustless</c><00:02:08.360><c> network</c><00:02:08.869><c> so</c>

00:02:09.490 --> 00:02:09.500 align:start position:0%
to do it on a trustless network so
 

00:02:09.500 --> 00:02:10.990 align:start position:0%
to do it on a trustless network so
there's<00:02:09.679><c> always</c><00:02:09.920><c> going</c><00:02:10.220><c> to</c><00:02:10.310><c> be</c><00:02:10.369><c> an</c><00:02:10.519><c> overhead</c>

00:02:10.990 --> 00:02:11.000 align:start position:0%
there's always going to be an overhead
 

00:02:11.000 --> 00:02:13.979 align:start position:0%
there's always going to be an overhead
and<00:02:11.239><c> somebody</c><00:02:11.989><c> will</c><00:02:12.230><c> have</c><00:02:12.379><c> to</c><00:02:12.590><c> pay</c><00:02:12.769><c> for</c><00:02:13.040><c> it</c><00:02:13.189><c> and</c>

00:02:13.979 --> 00:02:13.989 align:start position:0%
and somebody will have to pay for it and
 

00:02:13.989 --> 00:02:17.559 align:start position:0%
and somebody will have to pay for it and
you<00:02:14.989><c> need</c><00:02:15.170><c> to</c><00:02:15.379><c> keep</c><00:02:15.830><c> that</c><00:02:16.069><c> in</c><00:02:16.280><c> mind</c><00:02:16.549><c> but</c><00:02:17.299><c> we're</c>

00:02:17.559 --> 00:02:17.569 align:start position:0%
you need to keep that in mind but we're
 

00:02:17.569 --> 00:02:20.619 align:start position:0%
you need to keep that in mind but we're
working<00:02:17.780><c> really</c><00:02:18.019><c> hard</c><00:02:18.319><c> to</c><00:02:18.739><c> reduce</c><00:02:18.920><c> that</c><00:02:19.629><c> that</c>

00:02:20.619 --> 00:02:20.629 align:start position:0%
working really hard to reduce that that
 

00:02:20.629 --> 00:02:24.010 align:start position:0%
working really hard to reduce that that
overhead<00:02:21.260><c> to</c><00:02:21.860><c> a</c><00:02:21.890><c> acceptable</c><00:02:22.819><c> level</c><00:02:23.300><c> so</c><00:02:23.990><c> that</c>

00:02:24.010 --> 00:02:24.020 align:start position:0%
overhead to a acceptable level so that
 

00:02:24.020 --> 00:02:26.770 align:start position:0%
overhead to a acceptable level so that
the<00:02:24.770><c> other</c><00:02:24.950><c> overheads</c><00:02:25.760><c> that</c><00:02:26.150><c> centralized</c>

00:02:26.770 --> 00:02:26.780 align:start position:0%
the other overheads that centralized
 

00:02:26.780 --> 00:02:27.520 align:start position:0%
the other overheads that centralized
solutions

00:02:27.520 --> 00:02:27.530 align:start position:0%
solutions
 

00:02:27.530 --> 00:02:32.340 align:start position:0%
solutions
like<00:02:28.310><c> the</c><00:02:28.550><c> profits</c><00:02:29.060><c> of</c><00:02:30.700><c> unrelated</c><00:02:31.700><c> people</c>

00:02:32.340 --> 00:02:32.350 align:start position:0%
like the profits of unrelated people
 

00:02:32.350 --> 00:02:35.800 align:start position:0%
like the profits of unrelated people
they<00:02:33.350><c> will</c><00:02:33.680><c> be</c><00:02:33.740><c> comparable</c><00:02:34.730><c> or</c><00:02:35.030><c> maybe</c><00:02:35.420><c> even</c>

00:02:35.800 --> 00:02:35.810 align:start position:0%
they will be comparable or maybe even
 

00:02:35.810 --> 00:02:41.530 align:start position:0%
they will be comparable or maybe even
lower<00:02:36.310><c> so</c><00:02:38.980><c> so</c><00:02:39.980><c> how</c><00:02:40.160><c> do</c><00:02:40.220><c> we</c><00:02:40.370><c> get</c><00:02:40.610><c> from</c><00:02:40.880><c> web</c><00:02:41.090><c> to</c><00:02:41.120><c> to</c>

00:02:41.530 --> 00:02:41.540 align:start position:0%
lower so so how do we get from web to to
 

00:02:41.540 --> 00:02:47.320 align:start position:0%
lower so so how do we get from web to to
app<00:02:41.720><c> three</c><00:02:42.850><c> first</c><00:02:43.850><c> of</c><00:02:44.090><c> all</c><00:02:45.520><c> you</c><00:02:46.520><c> may</c><00:02:46.760><c> want</c><00:02:47.090><c> to</c>

00:02:47.320 --> 00:02:47.330 align:start position:0%
app three first of all you may want to
 

00:02:47.330 --> 00:02:50.590 align:start position:0%
app three first of all you may want to
dispose<00:02:48.140><c> with</c><00:02:48.440><c> the</c><00:02:48.620><c> notion</c><00:02:49.160><c> of</c><00:02:49.420><c> clients</c><00:02:50.420><c> and</c>

00:02:50.590 --> 00:02:50.600 align:start position:0%
dispose with the notion of clients and
 

00:02:50.600 --> 00:02:56.050 align:start position:0%
dispose with the notion of clients and
servers<00:02:51.070><c> so</c><00:02:52.070><c> for</c><00:02:52.790><c> now</c><00:02:53.800><c> aetherium</c><00:02:55.060><c> ecosystem</c>

00:02:56.050 --> 00:02:56.060 align:start position:0%
servers so for now aetherium ecosystem
 

00:02:56.060 --> 00:02:58.900 align:start position:0%
servers so for now aetherium ecosystem
the<00:02:56.209><c> app</c><00:02:56.330><c> dab</c><00:02:56.750><c> the</c><00:02:56.990><c> ecosystem</c><00:02:57.860><c> is</c><00:02:58.070><c> still</c><00:02:58.400><c> very</c>

00:02:58.900 --> 00:02:58.910 align:start position:0%
the app dab the ecosystem is still very
 

00:02:58.910 --> 00:03:01.870 align:start position:0%
the app dab the ecosystem is still very
reminiscent<00:02:59.750><c> of</c><00:03:00.320><c> the</c><00:03:00.590><c> old</c><00:03:00.890><c> ways</c><00:03:01.160><c> so</c><00:03:01.550><c> we</c><00:03:01.700><c> have</c>

00:03:01.870 --> 00:03:01.880 align:start position:0%
reminiscent of the old ways so we have
 

00:03:01.880 --> 00:03:04.720 align:start position:0%
reminiscent of the old ways so we have
the<00:03:02.120><c> nodes</c><00:03:02.420><c> and</c><00:03:02.750><c> we</c><00:03:02.870><c> have</c><00:03:03.020><c> the</c><00:03:03.200><c> clients</c><00:03:03.800><c> and</c><00:03:04.010><c> we</c>

00:03:04.720 --> 00:03:04.730 align:start position:0%
the nodes and we have the clients and we
 

00:03:04.730 --> 00:03:07.750 align:start position:0%
the nodes and we have the clients and we
have<00:03:04.910><c> these</c><00:03:05.360><c> things</c><00:03:05.720><c> like</c><00:03:05.989><c> meter</c><00:03:06.290><c> mask</c><00:03:06.620><c> and</c><00:03:06.980><c> it</c>

00:03:07.750 --> 00:03:07.760 align:start position:0%
have these things like meter mask and it
 

00:03:07.760 --> 00:03:10.300 align:start position:0%
have these things like meter mask and it
looks<00:03:08.060><c> like</c><00:03:08.239><c> we're</c><00:03:08.690><c> running</c><00:03:08.959><c> a</c><00:03:09.350><c> client-server</c>

00:03:10.300 --> 00:03:10.310 align:start position:0%
looks like we're running a client-server
 

00:03:10.310 --> 00:03:11.800 align:start position:0%
looks like we're running a client-server
network<00:03:10.790><c> but</c><00:03:11.030><c> really</c><00:03:11.330><c> it's</c><00:03:11.480><c> a</c><00:03:11.600><c> peer-to-peer</c>

00:03:11.800 --> 00:03:11.810 align:start position:0%
network but really it's a peer-to-peer
 

00:03:11.810 --> 00:03:14.770 align:start position:0%
network but really it's a peer-to-peer
network<00:03:12.530><c> so</c><00:03:12.830><c> as</c><00:03:13.190><c> you</c><00:03:13.640><c> could</c><00:03:13.850><c> see</c><00:03:13.880><c> from</c><00:03:14.180><c> today's</c>

00:03:14.770 --> 00:03:14.780 align:start position:0%
network so as you could see from today's
 

00:03:14.780 --> 00:03:16.840 align:start position:0%
network so as you could see from today's
presentations<00:03:15.709><c> we're</c><00:03:15.920><c> really</c><00:03:16.130><c> moving</c><00:03:16.550><c> in</c><00:03:16.700><c> the</c>

00:03:16.840 --> 00:03:16.850 align:start position:0%
presentations we're really moving in the
 

00:03:16.850 --> 00:03:19.479 align:start position:0%
presentations we're really moving in the
direction<00:03:17.000><c> that</c><00:03:17.750><c> there's</c><00:03:17.989><c> going</c><00:03:18.320><c> to</c><00:03:18.440><c> be</c><00:03:18.650><c> some</c>

00:03:19.479 --> 00:03:19.489 align:start position:0%
direction that there's going to be some
 

00:03:19.489 --> 00:03:22.360 align:start position:0%
direction that there's going to be some
kind<00:03:19.730><c> of</c><00:03:19.910><c> ethereal</c><00:03:20.270><c> node</c><00:03:20.750><c> everywhere</c><00:03:21.370><c> there</c>

00:03:22.360 --> 00:03:22.370 align:start position:0%
kind of ethereal node everywhere there
 

00:03:22.370 --> 00:03:24.100 align:start position:0%
kind of ethereal node everywhere there
most<00:03:22.730><c> of</c><00:03:22.910><c> them</c><00:03:23.090><c> will</c><00:03:23.270><c> be</c><00:03:23.300><c> light</c><00:03:23.660><c> and</c><00:03:23.930><c> very</c>

00:03:24.100 --> 00:03:24.110 align:start position:0%
most of them will be light and very
 

00:03:24.110 --> 00:03:26.710 align:start position:0%
most of them will be light and very
light<00:03:24.350><c> nodes</c><00:03:24.709><c> but</c><00:03:25.250><c> still</c><00:03:25.550><c> we're</c><00:03:26.239><c> going</c><00:03:26.510><c> to</c>

00:03:26.710 --> 00:03:26.720 align:start position:0%
light nodes but still we're going to
 

00:03:26.720 --> 00:03:29.710 align:start position:0%
light nodes but still we're going to
have<00:03:26.930><c> a</c><00:03:27.489><c> network</c><00:03:28.489><c> where</c><00:03:28.820><c> there</c><00:03:29.120><c> are</c><00:03:29.270><c> many</c><00:03:29.540><c> many</c>

00:03:29.710 --> 00:03:29.720 align:start position:0%
have a network where there are many many
 

00:03:29.720 --> 00:03:33.490 align:start position:0%
have a network where there are many many
nodes<00:03:30.200><c> and</c><00:03:30.910><c> you</c><00:03:31.910><c> typically</c><00:03:32.390><c> don't</c><00:03:32.720><c> connect</c><00:03:33.230><c> to</c>

00:03:33.490 --> 00:03:33.500 align:start position:0%
nodes and you typically don't connect to
 

00:03:33.500 --> 00:03:37.240 align:start position:0%
nodes and you typically don't connect to
high<00:03:33.920><c> powered</c><00:03:34.340><c> nodes</c><00:03:35.230><c> for</c><00:03:36.230><c> your</c><00:03:36.650><c> needs</c><00:03:36.980><c> you</c>

00:03:37.240 --> 00:03:37.250 align:start position:0%
high powered nodes for your needs you
 

00:03:37.250 --> 00:03:41.920 align:start position:0%
high powered nodes for your needs you
have<00:03:37.430><c> your</c><00:03:37.640><c> own</c><00:03:37.820><c> node</c><00:03:39.160><c> so</c><00:03:40.160><c> the</c><00:03:40.940><c> backends</c><00:03:41.690><c> that</c>

00:03:41.920 --> 00:03:41.930 align:start position:0%
have your own node so the backends that
 

00:03:41.930 --> 00:03:43.810 align:start position:0%
have your own node so the backends that
we're<00:03:42.110><c> going</c><00:03:42.380><c> to</c><00:03:42.560><c> have</c><00:03:42.799><c> their</c><00:03:43.160><c> old</c><00:03:43.370><c> general</c>

00:03:43.810 --> 00:03:43.820 align:start position:0%
we're going to have their old general
 

00:03:43.820 --> 00:03:46.680 align:start position:0%
we're going to have their old general
purpose<00:03:44.239><c> they're</c><00:03:44.870><c> distributed</c><00:03:45.650><c> and</c>

00:03:46.680 --> 00:03:46.690 align:start position:0%
purpose they're distributed and
 

00:03:46.690 --> 00:03:50.080 align:start position:0%
purpose they're distributed and
basically<00:03:47.690><c> the</c><00:03:48.290><c> the</c><00:03:49.070><c> ones</c><00:03:49.280><c> that</c><00:03:49.549><c> you</c><00:03:49.700><c> need</c><00:03:49.880><c> to</c>

00:03:50.080 --> 00:03:50.090 align:start position:0%
basically the the ones that you need to
 

00:03:50.090 --> 00:03:52.270 align:start position:0%
basically the the ones that you need to
rely<00:03:50.450><c> on</c><00:03:50.480><c> and</c><00:03:50.930><c> the</c><00:03:51.080><c> are</c><00:03:51.290><c> the</c><00:03:51.440><c> three</c><00:03:51.709><c> listed</c><00:03:52.130><c> on</c>

00:03:52.270 --> 00:03:52.280 align:start position:0%
rely on and the are the three listed on
 

00:03:52.280 --> 00:03:54.880 align:start position:0%
rely on and the are the three listed on
the<00:03:52.430><c> slides</c><00:03:52.730><c> so</c><00:03:53.090><c> you're</c><00:03:53.989><c> going</c><00:03:54.290><c> to</c><00:03:54.440><c> have</c><00:03:54.650><c> a</c>

00:03:54.880 --> 00:03:54.890 align:start position:0%
the slides so you're going to have a
 

00:03:54.890 --> 00:03:57.759 align:start position:0%
the slides so you're going to have a
contract<00:03:55.400><c> content</c><00:03:56.000><c> address</c><00:03:56.390><c> storage</c><00:03:56.840><c> which</c>

00:03:57.759 --> 00:03:57.769 align:start position:0%
contract content address storage which
 

00:03:57.769 --> 00:04:01.780 align:start position:0%
contract content address storage which
will<00:03:58.070><c> be</c><00:03:59.049><c> something</c><00:04:00.049><c> so</c><00:04:00.709><c> in</c><00:04:00.980><c> this</c><00:04:01.250><c> case</c><00:04:01.519><c> it's</c>

00:04:01.780 --> 00:04:01.790 align:start position:0%
will be something so in this case it's
 

00:04:01.790 --> 00:04:06.940 align:start position:0%
will be something so in this case it's
warm<00:04:02.440><c> IP</c><00:04:03.440><c> FS</c><00:04:03.980><c> is</c><00:04:05.049><c> hopefully</c><00:04:06.049><c> so</c><00:04:06.320><c> hopefully</c><00:04:06.350><c> we</c>

00:04:06.940 --> 00:04:06.950 align:start position:0%
warm IP FS is hopefully so hopefully we
 

00:04:06.950 --> 00:04:09.490 align:start position:0%
warm IP FS is hopefully so hopefully we
are<00:04:07.010><c> going</c><00:04:07.280><c> to</c><00:04:07.459><c> make</c><00:04:07.640><c> swarm</c><00:04:08.150><c> ipfs</c><00:04:08.870><c> compliant</c>

00:04:09.490 --> 00:04:09.500 align:start position:0%
are going to make swarm ipfs compliant
 

00:04:09.500 --> 00:04:11.800 align:start position:0%
are going to make swarm ipfs compliant
and<00:04:09.680><c> the</c><00:04:09.910><c> addressing</c><00:04:10.910><c> mechanism</c><00:04:11.570><c> and</c><00:04:11.690><c> the</c>

00:04:11.800 --> 00:04:11.810 align:start position:0%
and the addressing mechanism and the
 

00:04:11.810 --> 00:04:13.720 align:start position:0%
and the addressing mechanism and the
access<00:04:12.110><c> mechanism</c><00:04:12.709><c> will</c><00:04:12.829><c> be</c><00:04:12.860><c> compatible</c><00:04:13.610><c> or</c>

00:04:13.720 --> 00:04:13.730 align:start position:0%
access mechanism will be compatible or
 

00:04:13.730 --> 00:04:16.509 align:start position:0%
access mechanism will be compatible or
even<00:04:13.970><c> the</c><00:04:14.120><c> same</c><00:04:14.500><c> so</c><00:04:15.500><c> what</c><00:04:15.739><c> I'm</c><00:04:15.890><c> going</c><00:04:16.100><c> to</c><00:04:16.190><c> tell</c>

00:04:16.509 --> 00:04:16.519 align:start position:0%
even the same so what I'm going to tell
 

00:04:16.519 --> 00:04:19.270 align:start position:0%
even the same so what I'm going to tell
here<00:04:16.880><c> applies</c><00:04:17.239><c> directly</c><00:04:17.540><c> to</c><00:04:17.930><c> ipfs</c><00:04:18.709><c> as</c><00:04:18.919><c> well</c><00:04:19.130><c> as</c>

00:04:19.270 --> 00:04:19.280 align:start position:0%
here applies directly to ipfs as well as
 

00:04:19.280 --> 00:04:21.310 align:start position:0%
here applies directly to ipfs as well as
it<00:04:19.400><c> applies</c><00:04:19.760><c> to</c><00:04:19.790><c> swarm</c><00:04:20.359><c> hopefully</c><00:04:20.930><c> it</c><00:04:21.019><c> will</c><00:04:21.140><c> be</c>

00:04:21.310 --> 00:04:21.320 align:start position:0%
it applies to swarm hopefully it will be
 

00:04:21.320 --> 00:04:23.040 align:start position:0%
it applies to swarm hopefully it will be
the<00:04:21.350><c> same</c><00:04:21.650><c> thing</c>

00:04:23.040 --> 00:04:23.050 align:start position:0%
the same thing
 

00:04:23.050 --> 00:04:25.630 align:start position:0%
the same thing
there's<00:04:24.050><c> the</c><00:04:24.229><c> blockchain</c><00:04:24.470><c> based</c><00:04:24.919><c> on</c><00:04:25.160><c> census</c>

00:04:25.630 --> 00:04:25.640 align:start position:0%
there's the blockchain based on census
 

00:04:25.640 --> 00:04:28.300 align:start position:0%
there's the blockchain based on census
so<00:04:25.850><c> wherever</c><00:04:26.150><c> you</c><00:04:26.390><c> need</c><00:04:26.600><c> global</c><00:04:27.320><c> consistency</c>

00:04:28.300 --> 00:04:28.310 align:start position:0%
so wherever you need global consistency
 

00:04:28.310 --> 00:04:30.969 align:start position:0%
so wherever you need global consistency
you<00:04:28.430><c> can</c><00:04:28.490><c> solve</c><00:04:28.880><c> the</c><00:04:29.000><c> blockchain</c><00:04:29.510><c> and</c><00:04:29.979><c> you</c>

00:04:30.969 --> 00:04:30.979 align:start position:0%
you can solve the blockchain and you
 

00:04:30.979 --> 00:04:34.360 align:start position:0%
you can solve the blockchain and you
will<00:04:31.160><c> have</c><00:04:31.400><c> a</c><00:04:31.640><c> synchronous</c><00:04:32.180><c> messaging</c><00:04:33.370><c> so</c>

00:04:34.360 --> 00:04:34.370 align:start position:0%
will have a synchronous messaging so
 

00:04:34.370 --> 00:04:36.670 align:start position:0%
will have a synchronous messaging so
that's<00:04:34.640><c> that's</c><00:04:35.450><c> the</c><00:04:35.750><c> things</c><00:04:36.020><c> that</c><00:04:36.260><c> you</c><00:04:36.470><c> can</c>

00:04:36.670 --> 00:04:36.680 align:start position:0%
that's that's the things that you can
 

00:04:36.680 --> 00:04:38.830 align:start position:0%
that's that's the things that you can
think<00:04:36.950><c> of</c><00:04:37.070><c> as</c><00:04:37.220><c> a</c><00:04:37.370><c> back-end</c><00:04:37.640><c> but</c><00:04:38.090><c> you</c><00:04:38.510><c> will</c><00:04:38.660><c> not</c>

00:04:38.830 --> 00:04:38.840 align:start position:0%
think of as a back-end but you will not
 

00:04:38.840 --> 00:04:39.439 align:start position:0%
think of as a back-end but you will not
have

00:04:39.439 --> 00:04:39.449 align:start position:0%
have
 

00:04:39.449 --> 00:04:41.959 align:start position:0%
have
cific<00:04:39.840><c> databases</c><00:04:40.469><c> that</c><00:04:41.069><c> you</c><00:04:41.129><c> need</c><00:04:41.460><c> to</c><00:04:41.669><c> query</c>

00:04:41.959 --> 00:04:41.969 align:start position:0%
cific databases that you need to query
 

00:04:41.969 --> 00:04:45.890 align:start position:0%
cific databases that you need to query
and<00:04:42.300><c> so</c><00:04:42.539><c> on</c><00:04:43.460><c> which</c><00:04:44.460><c> has</c><00:04:44.759><c> this</c><00:04:44.939><c> funny</c><00:04:45.240><c> property</c>

00:04:45.890 --> 00:04:45.900 align:start position:0%
and so on which has this funny property
 

00:04:45.900 --> 00:04:49.339 align:start position:0%
and so on which has this funny property
that<00:04:46.289><c> particular</c><00:04:47.189><c> business</c><00:04:47.610><c> logic</c><00:04:48.349><c> the</c>

00:04:49.339 --> 00:04:49.349 align:start position:0%
that particular business logic the
 

00:04:49.349 --> 00:04:51.529 align:start position:0%
that particular business logic the
business<00:04:49.740><c> logic</c><00:04:49.949><c> of</c><00:04:50.309><c> your</c><00:04:50.339><c> application</c><00:04:51.300><c> will</c>

00:04:51.529 --> 00:04:51.539 align:start position:0%
business logic of your application will
 

00:04:51.539 --> 00:04:55.909 align:start position:0%
business logic of your application will
mostly<00:04:52.020><c> run</c><00:04:52.379><c> on</c><00:04:52.589><c> the</c><00:04:52.889><c> clients</c><00:04:54.650><c> which</c><00:04:55.650><c> is</c>

00:04:55.909 --> 00:04:55.919 align:start position:0%
mostly run on the clients which is
 

00:04:55.919 --> 00:04:57.860 align:start position:0%
mostly run on the clients which is
either<00:04:56.249><c> web</c><00:04:56.639><c> applications</c><00:04:57.360><c> written</c><00:04:57.599><c> in</c>

00:04:57.860 --> 00:04:57.870 align:start position:0%
either web applications written in
 

00:04:57.870 --> 00:05:00.369 align:start position:0%
either web applications written in
JavaScript<00:04:58.589><c> or</c><00:04:58.770><c> native</c><00:04:59.219><c> mobile</c><00:04:59.430><c> applications</c>

00:05:00.369 --> 00:05:00.379 align:start position:0%
JavaScript or native mobile applications
 

00:05:00.379 --> 00:05:03.499 align:start position:0%
JavaScript or native mobile applications
so<00:05:01.379><c> you</c><00:05:01.439><c> will</c><00:05:01.710><c> have</c><00:05:01.919><c> to</c><00:05:02.249><c> actually</c><00:05:02.909><c> consider</c>

00:05:03.499 --> 00:05:03.509 align:start position:0%
so you will have to actually consider
 

00:05:03.509 --> 00:05:06.350 align:start position:0%
so you will have to actually consider
that<00:05:04.379><c> much</c><00:05:04.830><c> of</c><00:05:05.039><c> your</c><00:05:05.249><c> business</c><00:05:05.669><c> logic</c><00:05:05.939><c> is</c>

00:05:06.350 --> 00:05:06.360 align:start position:0%
that much of your business logic is
 

00:05:06.360 --> 00:05:08.299 align:start position:0%
that much of your business logic is
going<00:05:06.659><c> to</c><00:05:06.839><c> be</c><00:05:06.960><c> run</c><00:05:07.169><c> on</c><00:05:07.289><c> the</c><00:05:07.439><c> client</c><00:05:07.650><c> it</c><00:05:07.949><c> doesn't</c>

00:05:08.299 --> 00:05:08.309 align:start position:0%
going to be run on the client it doesn't
 

00:05:08.309 --> 00:05:12.559 align:start position:0%
going to be run on the client it doesn't
mean<00:05:08.520><c> that</c><00:05:08.550><c> the</c><00:05:08.879><c> API</c><00:05:09.330><c> will</c><00:05:09.809><c> be</c><00:05:10.139><c> such</c><00:05:10.620><c> that</c><00:05:11.569><c> you</c>

00:05:12.559 --> 00:05:12.569 align:start position:0%
mean that the API will be such that you
 

00:05:12.569 --> 00:05:15.829 align:start position:0%
mean that the API will be such that you
will<00:05:13.050><c> have</c><00:05:13.229><c> to</c><00:05:13.580><c> do</c><00:05:14.580><c> the</c><00:05:14.819><c> index</c><00:05:15.180><c> traversal</c>

00:05:15.829 --> 00:05:15.839 align:start position:0%
will have to do the index traversal
 

00:05:15.839 --> 00:05:20.749 align:start position:0%
will have to do the index traversal
yourself<00:05:16.379><c> but</c><00:05:17.310><c> in</c><00:05:18.029><c> reality</c><00:05:18.620><c> it</c><00:05:19.620><c> is</c><00:05:20.129><c> the</c><00:05:20.279><c> client</c>

00:05:20.749 --> 00:05:20.759 align:start position:0%
yourself but in reality it is the client
 

00:05:20.759 --> 00:05:22.610 align:start position:0%
yourself but in reality it is the client
that<00:05:20.909><c> is</c><00:05:21.060><c> going</c><00:05:21.330><c> to</c><00:05:21.539><c> traverse</c><00:05:21.870><c> the</c><00:05:22.110><c> index</c><00:05:22.379><c> for</c>

00:05:22.610 --> 00:05:22.620 align:start position:0%
that is going to traverse the index for
 

00:05:22.620 --> 00:05:25.969 align:start position:0%
that is going to traverse the index for
you<00:05:22.830><c> so</c><00:05:23.639><c> the</c><00:05:23.909><c> you</c><00:05:24.659><c> will</c><00:05:24.839><c> not</c><00:05:25.050><c> send</c><00:05:25.409><c> queries</c>

00:05:25.969 --> 00:05:25.979 align:start position:0%
you so the you will not send queries
 

00:05:25.979 --> 00:05:28.909 align:start position:0%
you so the you will not send queries
across<00:05:26.249><c> the</c><00:05:26.729><c> network</c><00:05:27.199><c> you</c><00:05:28.199><c> will</c><00:05:28.349><c> actually</c>

00:05:28.909 --> 00:05:28.919 align:start position:0%
across the network you will actually
 

00:05:28.919 --> 00:05:30.950 align:start position:0%
across the network you will actually
traverse<00:05:29.310><c> the</c><00:05:29.580><c> indices</c><00:05:30.029><c> as</c><00:05:30.270><c> you</c><00:05:30.419><c> access</c><00:05:30.749><c> them</c>

00:05:30.950 --> 00:05:30.960 align:start position:0%
traverse the indices as you access them
 

00:05:30.960 --> 00:05:33.950 align:start position:0%
traverse the indices as you access them
from<00:05:31.020><c> the</c><00:05:31.409><c> content</c><00:05:31.770><c> address</c><00:05:32.159><c> storage</c><00:05:32.550><c> and</c><00:05:32.960><c> you</c>

00:05:33.950 --> 00:05:33.960 align:start position:0%
from the content address storage and you
 

00:05:33.960 --> 00:05:36.230 align:start position:0%
from the content address storage and you
can<00:05:34.139><c> only</c><00:05:34.439><c> send</c><00:05:34.800><c> the</c><00:05:34.889><c> query</c><00:05:35.189><c> to</c><00:05:35.520><c> the</c><00:05:35.639><c> API</c><00:05:35.969><c> and</c>

00:05:36.230 --> 00:05:36.240 align:start position:0%
can only send the query to the API and
 

00:05:36.240 --> 00:05:42.589 align:start position:0%
can only send the query to the API and
it<00:05:36.389><c> will</c><00:05:36.599><c> be</c><00:05:36.719><c> executed</c><00:05:37.349><c> locally</c><00:05:40.729><c> so</c><00:05:41.729><c> here's</c>

00:05:42.589 --> 00:05:42.599 align:start position:0%
it will be executed locally so here's
 

00:05:42.599 --> 00:05:46.040 align:start position:0%
it will be executed locally so here's
here's<00:05:42.960><c> an</c><00:05:43.110><c> example</c><00:05:43.469><c> of</c><00:05:43.830><c> how</c><00:05:43.889><c> the</c><00:05:44.849><c> HTTP</c><00:05:45.719><c> is</c><00:05:45.870><c> the</c>

00:05:46.040 --> 00:05:46.050 align:start position:0%
here's an example of how the HTTP is the
 

00:05:46.050 --> 00:05:47.659 align:start position:0%
here's an example of how the HTTP is the
the<00:05:46.409><c> Web</c><00:05:46.649><c> API</c>

00:05:47.659 --> 00:05:47.669 align:start position:0%
the Web API
 

00:05:47.669 --> 00:05:51.290 align:start position:0%
the Web API
it<00:05:48.060><c> works</c><00:05:48.240><c> with</c><00:05:48.539><c> swarm</c><00:05:48.899><c> so</c><00:05:49.740><c> the</c><00:05:50.129><c> URLs</c><00:05:50.639><c> begin</c>

00:05:51.290 --> 00:05:51.300 align:start position:0%
it works with swarm so the URLs begin
 

00:05:51.300 --> 00:05:54.350 align:start position:0%
it works with swarm so the URLs begin
with<00:05:51.659><c> the</c><00:05:51.960><c> root</c><00:05:52.349><c> hash</c><00:05:52.620><c> of</c><00:05:52.949><c> a</c><00:05:53.339><c> collection</c><00:05:54.149><c> a</c>

00:05:54.350 --> 00:05:54.360 align:start position:0%
with the root hash of a collection a
 

00:05:54.360 --> 00:05:57.679 align:start position:0%
with the root hash of a collection a
collection<00:05:55.189><c> is</c><00:05:56.189><c> basically</c><00:05:57.120><c> a</c><00:05:57.149><c> collection</c><00:05:57.419><c> of</c>

00:05:57.679 --> 00:05:57.689 align:start position:0%
collection is basically a collection of
 

00:05:57.689 --> 00:06:02.649 align:start position:0%
collection is basically a collection of
objects<00:05:58.229><c> objects</c><00:05:58.889><c> are</c><00:05:59.039><c> binary</c><00:05:59.520><c> files</c><00:05:59.849><c> with</c><00:06:00.270><c> a</c>

00:06:02.649 --> 00:06:02.659 align:start position:0%
 
 

00:06:02.659 --> 00:06:06.260 align:start position:0%
 
mime<00:06:03.659><c> type</c><00:06:03.930><c> so</c><00:06:04.889><c> for</c><00:06:05.069><c> example</c><00:06:05.490><c> it</c><00:06:05.550><c> can</c><00:06:05.729><c> be</c><00:06:05.759><c> a</c><00:06:05.909><c> PNG</c>

00:06:06.260 --> 00:06:06.270 align:start position:0%
mime type so for example it can be a PNG
 

00:06:06.270 --> 00:06:13.010 align:start position:0%
mime type so for example it can be a PNG
image<00:06:09.020><c> but</c><00:06:10.610><c> so</c><00:06:11.610><c> it</c><00:06:11.909><c> looks</c><00:06:12.240><c> very</c><00:06:12.509><c> much</c><00:06:12.749><c> like</c><00:06:12.779><c> a</c>

00:06:13.010 --> 00:06:13.020 align:start position:0%
image but so it looks very much like a
 

00:06:13.020 --> 00:06:16.070 align:start position:0%
image but so it looks very much like a
directory<00:06:13.740><c> but</c><00:06:14.129><c> it</c><00:06:14.279><c> really</c><00:06:14.459><c> isn't</c><00:06:14.870><c> so</c><00:06:15.870><c> for</c>

00:06:16.070 --> 00:06:16.080 align:start position:0%
directory but it really isn't so for
 

00:06:16.080 --> 00:06:18.980 align:start position:0%
directory but it really isn't so for
example<00:06:16.649><c> the</c><00:06:16.889><c> second</c><00:06:17.279><c> example</c><00:06:17.729><c> is</c><00:06:18.060><c> a</c><00:06:18.180><c> map</c><00:06:18.659><c> tile</c>

00:06:18.980 --> 00:06:18.990 align:start position:0%
example the second example is a map tile
 

00:06:18.990 --> 00:06:23.360 align:start position:0%
example the second example is a map tile
where<00:06:19.680><c> that</c><00:06:19.889><c> long</c><00:06:20.219><c> code</c><00:06:20.610><c> is</c><00:06:20.909><c> the</c><00:06:22.370><c> hierarchical</c>

00:06:23.360 --> 00:06:23.370 align:start position:0%
where that long code is the hierarchical
 

00:06:23.370 --> 00:06:27.050 align:start position:0%
where that long code is the hierarchical
tile<00:06:24.270><c> code</c><00:06:24.629><c> for</c><00:06:25.439><c> for</c><00:06:26.039><c> map</c><00:06:26.279><c> slides</c><00:06:26.610><c> so</c><00:06:26.819><c> in</c><00:06:26.969><c> a</c>

00:06:27.050 --> 00:06:27.060 align:start position:0%
tile code for for map slides so in a
 

00:06:27.060 --> 00:06:29.540 align:start position:0%
tile code for for map slides so in a
single<00:06:27.449><c> directory</c><00:06:27.599><c> you</c><00:06:28.560><c> will</c><00:06:28.740><c> have</c><00:06:28.949><c> thousands</c>

00:06:29.540 --> 00:06:29.550 align:start position:0%
single directory you will have thousands
 

00:06:29.550 --> 00:06:31.459 align:start position:0%
single directory you will have thousands
or<00:06:30.240><c> hundreds</c><00:06:30.719><c> of</c><00:06:30.839><c> thousands</c><00:06:31.319><c> or</c><00:06:31.409><c> even</c>

00:06:31.459 --> 00:06:31.469 align:start position:0%
or hundreds of thousands or even
 

00:06:31.469 --> 00:06:34.399 align:start position:0%
or hundreds of thousands or even
millions<00:06:31.740><c> of</c><00:06:32.399><c> files</c><00:06:32.729><c> if</c><00:06:33.240><c> you</c><00:06:33.539><c> think</c><00:06:33.930><c> about</c><00:06:34.080><c> it</c>

00:06:34.399 --> 00:06:34.409 align:start position:0%
millions of files if you think about it
 

00:06:34.409 --> 00:06:36.499 align:start position:0%
millions of files if you think about it
as<00:06:34.560><c> files</c><00:06:34.830><c> but</c><00:06:35.099><c> you</c><00:06:35.219><c> really</c><00:06:35.490><c> shouldn't</c><00:06:35.849><c> so</c>

00:06:36.499 --> 00:06:36.509 align:start position:0%
as files but you really shouldn't so
 

00:06:36.509 --> 00:06:40.730 align:start position:0%
as files but you really shouldn't so
it's<00:06:36.689><c> really</c><00:06:36.990><c> a</c><00:06:37.319><c> a</c><00:06:37.800><c> database</c><00:06:38.430><c> and</c><00:06:39.740><c> whenever</c>

00:06:40.730 --> 00:06:40.740 align:start position:0%
it's really a a database and whenever
 

00:06:40.740 --> 00:06:43.429 align:start position:0%
it's really a a database and whenever
you<00:06:41.009><c> access</c><00:06:41.459><c> something</c><00:06:41.729><c> like</c><00:06:42.209><c> this</c><00:06:42.539><c> map</c><00:06:43.110><c> tile</c>

00:06:43.429 --> 00:06:43.439 align:start position:0%
you access something like this map tile
 

00:06:43.439 --> 00:06:45.760 align:start position:0%
you access something like this map tile
you're<00:06:44.129><c> actually</c><00:06:44.669><c> doing</c><00:06:44.939><c> the</c><00:06:45.180><c> know</c><00:06:45.389><c> the</c>

00:06:45.760 --> 00:06:45.770 align:start position:0%
you're actually doing the know the
 

00:06:45.770 --> 00:06:49.279 align:start position:0%
you're actually doing the know the
indexed<00:06:46.770><c> River</c><00:06:47.009><c> so</c><00:06:47.310><c> locally</c><00:06:48.120><c> which</c><00:06:48.990><c> is</c><00:06:49.139><c> of</c>

00:06:49.279 --> 00:06:49.289 align:start position:0%
indexed River so locally which is of
 

00:06:49.289 --> 00:06:51.210 align:start position:0%
indexed River so locally which is of
course<00:06:49.469><c> fast</c><00:06:49.800><c> because</c><00:06:50.250><c> it's</c><00:06:50.459><c> it's</c>

00:06:51.210 --> 00:06:51.220 align:start position:0%
course fast because it's it's
 

00:06:51.220 --> 00:06:52.710 align:start position:0%
course fast because it's it's
done<00:06:51.370><c> efficiently</c><00:06:52.000><c> but</c><00:06:52.150><c> it's</c><00:06:52.330><c> still</c><00:06:52.540><c> done</c>

00:06:52.710 --> 00:06:52.720 align:start position:0%
done efficiently but it's still done
 

00:06:52.720 --> 00:06:56.250 align:start position:0%
done efficiently but it's still done
locally<00:06:52.960><c> and</c><00:06:53.910><c> the</c><00:06:54.910><c> property</c><00:06:55.570><c> of</c><00:06:55.660><c> the</c><00:06:55.810><c> API</c><00:06:56.170><c> is</c>

00:06:56.250 --> 00:06:56.260 align:start position:0%
locally and the property of the API is
 

00:06:56.260 --> 00:06:58.380 align:start position:0%
locally and the property of the API is
that<00:06:56.440><c> if</c><00:06:57.010><c> you</c><00:06:57.190><c> change</c><00:06:57.490><c> anything</c><00:06:57.970><c> in</c><00:06:58.360><c> the</c>

00:06:58.380 --> 00:06:58.390 align:start position:0%
that if you change anything in the
 

00:06:58.390 --> 00:07:01.590 align:start position:0%
that if you change anything in the
collection<00:06:58.660><c> it</c><00:06:59.650><c> also</c><00:06:59.920><c> happens</c><00:07:00.460><c> fast</c><00:07:00.760><c> but</c><00:07:01.450><c> it</c>

00:07:01.590 --> 00:07:01.600 align:start position:0%
collection it also happens fast but it
 

00:07:01.600 --> 00:07:04.530 align:start position:0%
collection it also happens fast but it
changes<00:07:02.020><c> the</c><00:07:02.230><c> route</c><00:07:02.380><c> -</c><00:07:02.590><c> so</c><00:07:03.250><c> any</c><00:07:03.460><c> put</c><00:07:03.790><c> or</c><00:07:04.030><c> delete</c>

00:07:04.530 --> 00:07:04.540 align:start position:0%
changes the route - so any put or delete
 

00:07:04.540 --> 00:07:07.020 align:start position:0%
changes the route - so any put or delete
method<00:07:04.990><c> will</c><00:07:05.560><c> result</c><00:07:06.040><c> in</c><00:07:06.250><c> a</c><00:07:06.370><c> different</c><00:07:06.790><c> hash</c>

00:07:07.020 --> 00:07:07.030 align:start position:0%
method will result in a different hash
 

00:07:07.030 --> 00:07:10.140 align:start position:0%
method will result in a different hash
and<00:07:07.570><c> it</c><00:07:07.900><c> will</c><00:07:08.110><c> it</c><00:07:09.040><c> will</c><00:07:09.220><c> return</c><00:07:09.640><c> to</c><00:07:09.940><c> you</c><00:07:10.120><c> the</c>

00:07:10.140 --> 00:07:10.150 align:start position:0%
and it will it will return to you the
 

00:07:10.150 --> 00:07:14.910 align:start position:0%
and it will it will return to you the
the<00:07:10.780><c> new</c><00:07:10.930><c> hash</c><00:07:11.910><c> and</c><00:07:12.910><c> of</c><00:07:13.750><c> course</c><00:07:14.080><c> if</c><00:07:14.350><c> you</c><00:07:14.650><c> want</c>

00:07:14.910 --> 00:07:14.920 align:start position:0%
the new hash and of course if you want
 

00:07:14.920 --> 00:07:17.490 align:start position:0%
the new hash and of course if you want
to<00:07:15.160><c> have</c><00:07:15.370><c> some</c><00:07:15.850><c> global</c><00:07:16.570><c> state</c><00:07:16.870><c> that</c><00:07:17.290><c> is</c>

00:07:17.490 --> 00:07:17.500 align:start position:0%
to have some global state that is
 

00:07:17.500 --> 00:07:19.890 align:start position:0%
to have some global state that is
consistent<00:07:18.160><c> across</c><00:07:18.550><c> all</c><00:07:18.940><c> the</c><00:07:19.150><c> all</c><00:07:19.480><c> all</c><00:07:19.750><c> the</c>

00:07:19.890 --> 00:07:19.900 align:start position:0%
consistent across all the all all the
 

00:07:19.900 --> 00:07:22.350 align:start position:0%
consistent across all the all all the
users<00:07:20.260><c> then</c><00:07:20.890><c> you</c><00:07:21.070><c> can</c><00:07:21.310><c> register</c><00:07:21.490><c> these</c><00:07:22.120><c> route</c>

00:07:22.350 --> 00:07:22.360 align:start position:0%
users then you can register these route
 

00:07:22.360 --> 00:07:25.200 align:start position:0%
users then you can register these route
hashes<00:07:22.930><c> on</c><00:07:23.170><c> the</c><00:07:23.380><c> blockchain</c><00:07:23.620><c> for</c><00:07:24.400><c> example</c><00:07:25.000><c> in</c>

00:07:25.200 --> 00:07:25.210 align:start position:0%
hashes on the blockchain for example in
 

00:07:25.210 --> 00:07:29.280 align:start position:0%
hashes on the blockchain for example in
hierarchical<00:07:26.250><c> in</c><00:07:27.250><c> hierarchical</c><00:07:28.290><c> name</c>

00:07:29.280 --> 00:07:29.290 align:start position:0%
hierarchical in hierarchical name
 

00:07:29.290 --> 00:07:31.770 align:start position:0%
hierarchical in hierarchical name
registry<00:07:29.770><c> contracts</c><00:07:30.370><c> so</c><00:07:30.940><c> in</c><00:07:31.180><c> the</c><00:07:31.420><c> last</c>

00:07:31.770 --> 00:07:31.780 align:start position:0%
registry contracts so in the last
 

00:07:31.780 --> 00:07:35.880 align:start position:0%
registry contracts so in the last
example<00:07:32.220><c> you</c><00:07:33.220><c> see</c><00:07:33.580><c> an</c><00:07:33.880><c> image</c><00:07:34.860><c> which</c><00:07:35.860><c> is</c>

00:07:35.880 --> 00:07:35.890 align:start position:0%
example you see an image which is
 

00:07:35.890 --> 00:07:38.640 align:start position:0%
example you see an image which is
registered<00:07:36.490><c> in</c><00:07:37.300><c> an</c><00:07:37.540><c> album</c><00:07:37.990><c> a</c><00:07:38.140><c> photo</c><00:07:38.440><c> album</c>

00:07:38.640 --> 00:07:38.650 align:start position:0%
registered in an album a photo album
 

00:07:38.650 --> 00:07:42.000 align:start position:0%
registered in an album a photo album
that<00:07:38.920><c> is</c><00:07:39.540><c> actually</c><00:07:40.540><c> Joe's</c><00:07:41.110><c> personal</c><00:07:41.560><c> photo</c>

00:07:42.000 --> 00:07:42.010 align:start position:0%
that is actually Joe's personal photo
 

00:07:42.010 --> 00:07:47.730 align:start position:0%
that is actually Joe's personal photo
album<00:07:44.040><c> the</c><00:07:45.040><c> user</c><00:07:45.250><c> experience</c><00:07:46.030><c> is</c><00:07:46.350><c> going</c><00:07:47.350><c> to</c><00:07:47.620><c> be</c>

00:07:47.730 --> 00:07:47.740 align:start position:0%
album the user experience is going to be
 

00:07:47.740 --> 00:07:49.740 align:start position:0%
album the user experience is going to be
very<00:07:48.010><c> familiar</c><00:07:48.220><c> to</c><00:07:48.730><c> web</c><00:07:48.880><c> users</c><00:07:49.270><c> that's</c><00:07:49.510><c> what</c>

00:07:49.740 --> 00:07:49.750 align:start position:0%
very familiar to web users that's what
 

00:07:49.750 --> 00:07:53.360 align:start position:0%
very familiar to web users that's what
we're<00:07:49.930><c> aiming</c><00:07:50.140><c> at</c><00:07:50.700><c> so</c><00:07:52.320><c> interactive</c>

00:07:53.360 --> 00:07:53.370 align:start position:0%
we're aiming at so interactive
 

00:07:53.370 --> 00:07:56.659 align:start position:0%
we're aiming at so interactive
responsive<00:07:54.370><c> intuitive</c><00:07:54.940><c> and</c><00:07:55.120><c> so</c><00:07:55.330><c> on</c><00:07:55.450><c> however</c>

00:07:56.659 --> 00:07:56.669 align:start position:0%
responsive intuitive and so on however
 

00:07:56.669 --> 00:08:00.020 align:start position:0%
responsive intuitive and so on however
Identity<00:07:57.669><c> Management</c><00:07:58.030><c> will</c><00:07:58.570><c> also</c><00:07:58.930><c> be</c><00:07:59.110><c> done</c><00:07:59.320><c> on</c>

00:08:00.020 --> 00:08:00.030 align:start position:0%
Identity Management will also be done on
 

00:08:00.030 --> 00:08:03.630 align:start position:0%
Identity Management will also be done on
the<00:08:01.030><c> client</c><00:08:01.150><c> on</c><00:08:01.510><c> the</c><00:08:01.720><c> browser</c><00:08:02.350><c> side</c><00:08:02.770><c> so</c><00:08:03.130><c> you</c>

00:08:03.630 --> 00:08:03.640 align:start position:0%
the client on the browser side so you
 

00:08:03.640 --> 00:08:04.860 align:start position:0%
the client on the browser side so you
don't<00:08:03.850><c> have</c><00:08:04.030><c> to</c><00:08:04.240><c> implement</c><00:08:04.660><c> your</c><00:08:04.810><c> own</c>

00:08:04.860 --> 00:08:04.870 align:start position:0%
don't have to implement your own
 

00:08:04.870 --> 00:08:06.960 align:start position:0%
don't have to implement your own
identity<00:08:05.620><c> management</c><00:08:05.890><c> with</c><00:08:06.280><c> each</c><00:08:06.400><c> DAP</c><00:08:06.700><c> you</c>

00:08:06.960 --> 00:08:06.970 align:start position:0%
identity management with each DAP you
 

00:08:06.970 --> 00:08:10.590 align:start position:0%
identity management with each DAP you
you<00:08:07.210><c> get</c><00:08:07.600><c> it</c><00:08:07.780><c> ready</c><00:08:08.020><c> and</c><00:08:09.240><c> you're</c><00:08:10.240><c> going</c><00:08:10.570><c> to</c>

00:08:10.590 --> 00:08:10.600 align:start position:0%
you get it ready and you're going to
 

00:08:10.600 --> 00:08:15.030 align:start position:0%
you get it ready and you're going to
have<00:08:11.160><c> legal</c><00:08:12.160><c> and</c><00:08:12.340><c> financial</c><00:08:12.660><c> interactions</c><00:08:14.040><c> so</c>

00:08:15.030 --> 00:08:15.040 align:start position:0%
have legal and financial interactions so
 

00:08:15.040 --> 00:08:17.580 align:start position:0%
have legal and financial interactions so
it's<00:08:15.820><c> no</c><00:08:16.090><c> longer</c><00:08:16.120><c> a</c><00:08:16.479><c> click-through</c><00:08:16.810><c> contract</c>

00:08:17.580 --> 00:08:17.590 align:start position:0%
it's no longer a click-through contract
 

00:08:17.590 --> 00:08:19.500 align:start position:0%
it's no longer a click-through contract
it's<00:08:18.130><c> something</c><00:08:18.640><c> that</c><00:08:18.820><c> actually</c><00:08:19.000><c> has</c>

00:08:19.500 --> 00:08:19.510 align:start position:0%
it's something that actually has
 

00:08:19.510 --> 00:08:24.510 align:start position:0%
it's something that actually has
consequences<00:08:22.470><c> so</c><00:08:23.470><c> it</c><00:08:23.650><c> comes</c><00:08:23.890><c> with</c><00:08:24.040><c> all</c><00:08:24.310><c> those</c>

00:08:24.510 --> 00:08:24.520 align:start position:0%
consequences so it comes with all those
 

00:08:24.520 --> 00:08:28.310 align:start position:0%
consequences so it comes with all those
things<00:08:24.820><c> that</c><00:08:25.030><c> are</c><00:08:25.150><c> also</c><00:08:25.270><c> listed</c><00:08:25.930><c> on</c><00:08:26.050><c> the</c><00:08:26.169><c> slide</c>

00:08:28.310 --> 00:08:28.320 align:start position:0%
things that are also listed on the slide
 

00:08:28.320 --> 00:08:32.029 align:start position:0%
things that are also listed on the slide
so<00:08:29.320><c> now</c><00:08:29.830><c> I</c><00:08:29.860><c> will</c><00:08:30.370><c> show</c><00:08:30.729><c> you</c><00:08:30.790><c> a</c><00:08:30.940><c> few</c><00:08:31.300><c> examples</c>

00:08:32.029 --> 00:08:32.039 align:start position:0%
so now I will show you a few examples
 

00:08:32.039 --> 00:08:34.920 align:start position:0%
so now I will show you a few examples
some<00:08:33.039><c> of</c><00:08:33.190><c> them</c><00:08:33.400><c> are</c><00:08:33.580><c> already</c><00:08:34.089><c> implemented</c><00:08:34.780><c> and</c>

00:08:34.920 --> 00:08:34.930 align:start position:0%
some of them are already implemented and
 

00:08:34.930 --> 00:08:37.740 align:start position:0%
some of them are already implemented and
downloadable<00:08:35.500><c> from</c><00:08:36.010><c> a</c><00:08:36.250><c> source</c><00:08:37.030><c> repository</c>

00:08:37.740 --> 00:08:37.750 align:start position:0%
downloadable from a source repository
 

00:08:37.750 --> 00:08:41.430 align:start position:0%
downloadable from a source repository
some<00:08:38.110><c> of</c><00:08:38.229><c> them</c><00:08:38.469><c> are</c><00:08:38.680><c> tearaway</c><00:08:39.159><c> vaporware</c><00:08:40.440><c> but</c>

00:08:41.430 --> 00:08:41.440 align:start position:0%
some of them are tearaway vaporware but
 

00:08:41.440 --> 00:08:44.450 align:start position:0%
some of them are tearaway vaporware but
all<00:08:41.680><c> of</c><00:08:41.830><c> them</c><00:08:42.070><c> have</c><00:08:42.280><c> these</c><00:08:42.490><c> basic</c><00:08:43.320><c> properties</c>

00:08:44.450 --> 00:08:44.460 align:start position:0%
all of them have these basic properties
 

00:08:44.460 --> 00:08:47.430 align:start position:0%
all of them have these basic properties
so<00:08:45.460><c> the</c><00:08:45.700><c> current</c><00:08:46.060><c> route</c><00:08:46.270><c> hash</c><00:08:46.540><c> is</c><00:08:46.870><c> registered</c>

00:08:47.430 --> 00:08:47.440 align:start position:0%
so the current route hash is registered
 

00:08:47.440 --> 00:08:50.579 align:start position:0%
so the current route hash is registered
on<00:08:47.620><c> blockchain</c><00:08:47.890><c> so</c><00:08:48.460><c> that</c><00:08:48.700><c> every</c><00:08:49.390><c> every</c><00:08:50.320><c> user</c>

00:08:50.579 --> 00:08:50.589 align:start position:0%
on blockchain so that every every user
 

00:08:50.589 --> 00:08:53.130 align:start position:0%
on blockchain so that every every user
can<00:08:51.040><c> check</c><00:08:51.850><c> on</c><00:08:52.000><c> the</c><00:08:52.120><c> blockchain</c><00:08:52.360><c> which</c><00:08:52.780><c> is</c><00:08:52.960><c> the</c>

00:08:53.130 --> 00:08:53.140 align:start position:0%
can check on the blockchain which is the
 

00:08:53.140 --> 00:08:54.990 align:start position:0%
can check on the blockchain which is the
current<00:08:53.440><c> version</c><00:08:53.589><c> of</c><00:08:53.890><c> the</c><00:08:53.950><c> DAT</c><00:08:54.250><c> and</c><00:08:54.610><c> that's</c>

00:08:54.990 --> 00:08:55.000 align:start position:0%
current version of the DAT and that's
 

00:08:55.000 --> 00:08:57.090 align:start position:0%
current version of the DAT and that's
where<00:08:55.240><c> they</c><00:08:55.390><c> that's</c><00:08:56.140><c> where</c><00:08:56.440><c> they</c><00:08:56.620><c> proceed</c>

00:08:57.090 --> 00:08:57.100 align:start position:0%
where they that's where they proceed
 

00:08:57.100 --> 00:08:59.850 align:start position:0%
where they that's where they proceed
from<00:08:57.280><c> so</c><00:08:58.060><c> we</c><00:08:58.240><c> have</c><00:08:58.420><c> done</c><00:08:58.660><c> away</c><00:08:58.810><c> with</c><00:08:59.230><c> the</c>

00:08:59.850 --> 00:08:59.860 align:start position:0%
from so we have done away with the
 

00:08:59.860 --> 00:09:03.380 align:start position:0%
from so we have done away with the
problem<00:09:00.670><c> of</c><00:09:01.120><c> security</c><00:09:02.080><c> in</c><00:09:02.800><c> her</c><00:09:03.010><c> in</c>

00:09:03.380 --> 00:09:03.390 align:start position:0%
problem of security in her in
 

00:09:03.390 --> 00:09:06.980 align:start position:0%
problem of security in her in
and<00:09:03.570><c> in</c><00:09:04.610><c> HTTP</c><00:09:05.610><c> but</c><00:09:06.120><c> you</c><00:09:06.300><c> need</c><00:09:06.480><c> to</c><00:09:06.690><c> trust</c>

00:09:06.980 --> 00:09:06.990 align:start position:0%
and in HTTP but you need to trust
 

00:09:06.990 --> 00:09:11.180 align:start position:0%
and in HTTP but you need to trust
something<00:09:07.710><c> else</c><00:09:08.040><c> on</c><00:09:08.280><c> the</c><00:09:08.400><c> blockchain</c><00:09:10.190><c> most</c>

00:09:11.180 --> 00:09:11.190 align:start position:0%
something else on the blockchain most
 

00:09:11.190 --> 00:09:13.910 align:start position:0%
something else on the blockchain most
static<00:09:11.670><c> and</c><00:09:11.820><c> dynamic</c><00:09:11.940><c> data</c><00:09:12.570><c> are</c><00:09:12.960><c> stored</c><00:09:13.320><c> in</c><00:09:13.710><c> a</c>

00:09:13.910 --> 00:09:13.920 align:start position:0%
static and dynamic data are stored in a
 

00:09:13.920 --> 00:09:17.870 align:start position:0%
static and dynamic data are stored in a
content<00:09:14.340><c> address</c><00:09:14.730><c> storage</c><00:09:15.120><c> and</c><00:09:16.550><c> global</c><00:09:17.550><c> state</c>

00:09:17.870 --> 00:09:17.880 align:start position:0%
content address storage and global state
 

00:09:17.880 --> 00:09:20.600 align:start position:0%
content address storage and global state
changes<00:09:18.540><c> are</c><00:09:18.810><c> registered</c><00:09:19.680><c> on</c><00:09:19.950><c> the</c><00:09:20.370><c> blockchain</c>

00:09:20.600 --> 00:09:20.610 align:start position:0%
changes are registered on the blockchain
 

00:09:20.610 --> 00:09:23.750 align:start position:0%
changes are registered on the blockchain
so<00:09:21.420><c> it's</c><00:09:21.540><c> usually</c><00:09:21.870><c> global</c><00:09:22.800><c> state</c><00:09:23.070><c> changes</c><00:09:23.580><c> are</c>

00:09:23.750 --> 00:09:23.760 align:start position:0%
so it's usually global state changes are
 

00:09:23.760 --> 00:09:25.790 align:start position:0%
so it's usually global state changes are
simply<00:09:24.150><c> changes</c><00:09:24.630><c> in</c><00:09:24.780><c> a</c><00:09:24.870><c> hash</c><00:09:25.080><c> if</c><00:09:25.380><c> you</c><00:09:25.560><c> don't</c>

00:09:25.790 --> 00:09:25.800 align:start position:0%
simply changes in a hash if you don't
 

00:09:25.800 --> 00:09:27.530 align:start position:0%
simply changes in a hash if you don't
store<00:09:26.190><c> a</c><00:09:26.370><c> lot</c><00:09:26.550><c> of</c><00:09:26.580><c> state</c><00:09:26.970><c> data</c><00:09:27.210><c> in</c><00:09:27.450><c> the</c>

00:09:27.530 --> 00:09:27.540 align:start position:0%
store a lot of state data in the
 

00:09:27.540 --> 00:09:28.840 align:start position:0%
store a lot of state data in the
blockchain<00:09:27.780><c> because</c><00:09:28.200><c> that's</c><00:09:28.410><c> expensive</c>

00:09:28.840 --> 00:09:28.850 align:start position:0%
blockchain because that's expensive
 

00:09:28.850 --> 00:09:32.270 align:start position:0%
blockchain because that's expensive
however<00:09:29.850><c> you</c><00:09:30.360><c> still</c><00:09:30.660><c> need</c><00:09:30.930><c> to</c><00:09:31.350><c> to</c><00:09:31.830><c> get</c><00:09:32.010><c> those</c>

00:09:32.270 --> 00:09:32.280 align:start position:0%
however you still need to to get those
 

00:09:32.280 --> 00:09:33.950 align:start position:0%
however you still need to to get those
change<00:09:32.790><c> changes</c><00:09:33.360><c> to</c><00:09:33.630><c> the</c><00:09:33.750><c> blockchain</c>

00:09:33.950 --> 00:09:33.960 align:start position:0%
change changes to the blockchain
 

00:09:33.960 --> 00:09:36.590 align:start position:0%
change changes to the blockchain
eventually<00:09:34.740><c> so</c><00:09:35.280><c> that</c><00:09:35.520><c> there's</c><00:09:36.000><c> a</c><00:09:36.120><c> global</c>

00:09:36.590 --> 00:09:36.600 align:start position:0%
eventually so that there's a global
 

00:09:36.600 --> 00:09:39.800 align:start position:0%
eventually so that there's a global
consistency<00:09:37.560><c> and</c><00:09:38.310><c> I</c><00:09:38.970><c> have</c><00:09:39.150><c> already</c><00:09:39.390><c> talked</c>

00:09:39.800 --> 00:09:39.810 align:start position:0%
consistency and I have already talked
 

00:09:39.810 --> 00:09:44.480 align:start position:0%
consistency and I have already talked
about<00:09:41.810><c> about</c><00:09:42.810><c> the</c><00:09:43.020><c> other</c><00:09:43.140><c> things</c><00:09:43.500><c> so</c><00:09:44.040><c> whenever</c>

00:09:44.480 --> 00:09:44.490 align:start position:0%
about about the other things so whenever
 

00:09:44.490 --> 00:09:47.090 align:start position:0%
about about the other things so whenever
you<00:09:44.820><c> have</c><00:09:44.970><c> some</c><00:09:45.270><c> local</c><00:09:45.660><c> data</c><00:09:45.870><c> local</c><00:09:46.800><c> state</c>

00:09:47.090 --> 00:09:47.100 align:start position:0%
you have some local data local state
 

00:09:47.100 --> 00:09:48.860 align:start position:0%
you have some local data local state
like<00:09:47.400><c> what</c><00:09:47.580><c> the</c><00:09:47.730><c> user</c><00:09:47.880><c> is</c><00:09:48.120><c> working</c><00:09:48.300><c> with</c><00:09:48.720><c> you</c>

00:09:48.860 --> 00:09:48.870 align:start position:0%
like what the user is working with you
 

00:09:48.870 --> 00:09:50.360 align:start position:0%
like what the user is working with you
keep<00:09:49.080><c> it</c><00:09:49.230><c> locally</c><00:09:49.650><c> you</c><00:09:49.710><c> don't</c><00:09:49.920><c> submit</c><00:09:50.130><c> it</c>

00:09:50.360 --> 00:09:50.370 align:start position:0%
keep it locally you don't submit it
 

00:09:50.370 --> 00:09:52.670 align:start position:0%
keep it locally you don't submit it
anywhere<00:09:50.760><c> you</c><00:09:51.510><c> can</c><00:09:51.720><c> back</c><00:09:51.900><c> it</c><00:09:51.930><c> up</c><00:09:52.170><c> if</c><00:09:52.350><c> you</c><00:09:52.380><c> want</c>

00:09:52.670 --> 00:09:52.680 align:start position:0%
anywhere you can back it up if you want
 

00:09:52.680 --> 00:09:56.750 align:start position:0%
anywhere you can back it up if you want
to<00:09:53.750><c> so</c><00:09:54.750><c> the</c><00:09:54.930><c> first</c><00:09:55.140><c> example</c><00:09:55.350><c> is</c><00:09:55.890><c> a</c><00:09:55.950><c> distributed</c>

00:09:56.750 --> 00:09:56.760 align:start position:0%
to so the first example is a distributed
 

00:09:56.760 --> 00:10:00.140 align:start position:0%
to so the first example is a distributed
photo<00:09:57.000><c> album</c><00:09:57.450><c> this</c><00:09:57.780><c> is</c><00:09:57.840><c> already</c><00:09:58.410><c> existing</c><00:09:59.150><c> it</c>

00:10:00.140 --> 00:10:00.150 align:start position:0%
photo album this is already existing it
 

00:10:00.150 --> 00:10:02.720 align:start position:0%
photo album this is already existing it
can<00:10:00.420><c> be</c><00:10:00.630><c> you</c><00:10:01.620><c> know</c><00:10:01.770><c> you</c><00:10:01.860><c> can</c><00:10:02.040><c> download</c><00:10:02.280><c> it</c><00:10:02.610><c> you</c>

00:10:02.720 --> 00:10:02.730 align:start position:0%
can be you know you can download it you
 

00:10:02.730 --> 00:10:04.130 align:start position:0%
can be you know you can download it you
can<00:10:02.760><c> look</c><00:10:03.060><c> at</c><00:10:03.180><c> the</c><00:10:03.330><c> source</c><00:10:03.600><c> you</c><00:10:03.780><c> can</c><00:10:03.930><c> learn</c>

00:10:04.130 --> 00:10:04.140 align:start position:0%
can look at the source you can learn
 

00:10:04.140 --> 00:10:05.690 align:start position:0%
can look at the source you can learn
from<00:10:04.350><c> it</c><00:10:04.560><c> you</c><00:10:04.680><c> can</c><00:10:04.710><c> take</c><00:10:05.040><c> parts</c><00:10:05.370><c> so</c><00:10:05.460><c> it</c><00:10:05.580><c> is</c>

00:10:05.690 --> 00:10:05.700 align:start position:0%
from it you can take parts so it is
 

00:10:05.700 --> 00:10:09.770 align:start position:0%
from it you can take parts so it is
completely<00:10:05.940><c> open</c><00:10:06.270><c> source</c><00:10:07.850><c> so</c><00:10:08.850><c> both</c><00:10:09.210><c> the</c><00:10:09.540><c> data</c>

00:10:09.770 --> 00:10:09.780 align:start position:0%
completely open source so both the data
 

00:10:09.780 --> 00:10:12.890 align:start position:0%
completely open source so both the data
and<00:10:10.260><c> the</c><00:10:10.500><c> web</c><00:10:10.890><c> app</c><00:10:11.070><c> are</c><00:10:11.400><c> hosted</c><00:10:12.000><c> in</c><00:10:12.180><c> a</c><00:10:12.270><c> swarm</c>

00:10:12.890 --> 00:10:12.900 align:start position:0%
and the web app are hosted in a swarm
 

00:10:12.900 --> 00:10:14.930 align:start position:0%
and the web app are hosted in a swarm
and<00:10:13.170><c> they</c><00:10:13.560><c> are</c><00:10:13.800><c> hosted</c><00:10:14.340><c> in</c><00:10:14.520><c> the</c><00:10:14.550><c> same</c>

00:10:14.930 --> 00:10:14.940 align:start position:0%
and they are hosted in the same
 

00:10:14.940 --> 00:10:17.420 align:start position:0%
and they are hosted in the same
collection<00:10:15.480><c> that's</c><00:10:15.690><c> very</c><00:10:15.930><c> important</c><00:10:16.440><c> so</c><00:10:17.370><c> you</c>

00:10:17.420 --> 00:10:17.430 align:start position:0%
collection that's very important so you
 

00:10:17.430 --> 00:10:19.790 align:start position:0%
collection that's very important so you
don't<00:10:17.880><c> have</c><00:10:18.060><c> a</c><00:10:18.120><c> separate</c><00:10:18.810><c> root</c><00:10:19.050><c> hash</c><00:10:19.320><c> for</c><00:10:19.620><c> the</c>

00:10:19.790 --> 00:10:19.800 align:start position:0%
don't have a separate root hash for the
 

00:10:19.800 --> 00:10:22.910 align:start position:0%
don't have a separate root hash for the
data<00:10:20.010><c> and</c><00:10:20.310><c> that</c><00:10:20.430><c> it</c><00:10:21.300><c> is</c><00:10:21.600><c> the</c><00:10:21.810><c> depth</c><00:10:22.050><c> and</c><00:10:22.410><c> the</c>

00:10:22.910 --> 00:10:22.920 align:start position:0%
data and that it is the depth and the
 

00:10:22.920 --> 00:10:24.770 align:start position:0%
data and that it is the depth and the
data<00:10:23.130><c> together</c><00:10:23.610><c> that</c><00:10:23.970><c> have</c><00:10:24.150><c> the</c><00:10:24.330><c> same</c><00:10:24.540><c> root</c>

00:10:24.770 --> 00:10:24.780 align:start position:0%
data together that have the same root
 

00:10:24.780 --> 00:10:31.370 align:start position:0%
data together that have the same root
hash<00:10:25.670><c> so</c><00:10:28.610><c> you</c><00:10:29.610><c> can</c><00:10:29.820><c> register</c><00:10:30.060><c> a</c><00:10:30.510><c> photo</c><00:10:30.930><c> albums</c>

00:10:31.370 --> 00:10:31.380 align:start position:0%
hash so you can register a photo albums
 

00:10:31.380 --> 00:10:32.660 align:start position:0%
hash so you can register a photo albums
particular<00:10:32.010><c> State</c>

00:10:32.660 --> 00:10:32.670 align:start position:0%
particular State
 

00:10:32.670 --> 00:10:34.910 align:start position:0%
particular State
which<00:10:32.790><c> means</c><00:10:33.150><c> the</c><00:10:33.480><c> photos</c><00:10:34.140><c> in</c><00:10:34.380><c> it</c><00:10:34.530><c> and</c><00:10:34.770><c> the</c>

00:10:34.910 --> 00:10:34.920 align:start position:0%
which means the photos in it and the
 

00:10:34.920 --> 00:10:38.260 align:start position:0%
which means the photos in it and the
ordering<00:10:35.250><c> in</c><00:10:35.580><c> which</c><00:10:35.610><c> they</c><00:10:36.000><c> are</c><00:10:36.090><c> presented</c>

00:10:38.260 --> 00:10:38.270 align:start position:0%
ordering in which they are presented
 

00:10:38.270 --> 00:10:41.930 align:start position:0%
ordering in which they are presented
long<00:10:39.270><c> term</c><00:10:39.540><c> incentives</c><00:10:40.200><c> of</c><00:10:40.530><c> swarm</c><00:10:41.100><c> will</c><00:10:41.430><c> make</c>

00:10:41.930 --> 00:10:41.940 align:start position:0%
long term incentives of swarm will make
 

00:10:41.940 --> 00:10:43.670 align:start position:0%
long term incentives of swarm will make
sure<00:10:42.210><c> that</c><00:10:42.480><c> it's</c><00:10:42.660><c> not</c><00:10:42.810><c> garbage</c><00:10:43.020><c> collected</c>

00:10:43.670 --> 00:10:43.680 align:start position:0%
sure that it's not garbage collected
 

00:10:43.680 --> 00:10:46.510 align:start position:0%
sure that it's not garbage collected
that's<00:10:43.890><c> actually</c><00:10:44.310><c> not</c><00:10:44.460><c> implemented</c><00:10:45.330><c> yet</c>

00:10:46.510 --> 00:10:46.520 align:start position:0%
that's actually not implemented yet
 

00:10:46.520 --> 00:10:49.730 align:start position:0%
that's actually not implemented yet
short<00:10:47.520><c> terms</c><00:10:47.730><c> incentives</c><00:10:48.510><c> will</c><00:10:48.930><c> have</c><00:10:49.410><c> the</c>

00:10:49.730 --> 00:10:49.740 align:start position:0%
short terms incentives will have the
 

00:10:49.740 --> 00:10:52.280 align:start position:0%
short terms incentives will have the
publishing<00:10:50.160><c> Goes</c><00:10:50.550><c> Down</c><00:10:50.940><c> which</c><00:10:51.450><c> means</c><00:10:51.780><c> that</c><00:10:52.080><c> if</c>

00:10:52.280 --> 00:10:52.290 align:start position:0%
publishing Goes Down which means that if
 

00:10:52.290 --> 00:10:54.380 align:start position:0%
publishing Goes Down which means that if
your<00:10:52.470><c> photo</c><00:10:52.740><c> album</c><00:10:53.190><c> for</c><00:10:53.400><c> some</c><00:10:53.640><c> reason</c><00:10:54.000><c> becomes</c>

00:10:54.380 --> 00:10:54.390 align:start position:0%
your photo album for some reason becomes
 

00:10:54.390 --> 00:10:56.900 align:start position:0%
your photo album for some reason becomes
hugely<00:10:54.990><c> popular</c><00:10:55.590><c> and</c><00:10:55.830><c> half</c><00:10:56.070><c> the</c><00:10:56.250><c> web</c><00:10:56.400><c> wants</c><00:10:56.760><c> to</c>

00:10:56.900 --> 00:10:56.910 align:start position:0%
hugely popular and half the web wants to
 

00:10:56.910 --> 00:11:00.190 align:start position:0%
hugely popular and half the web wants to
see<00:10:57.150><c> it</c><00:10:57.330><c> it</c><00:10:58.140><c> will</c><00:10:58.410><c> not</c><00:10:58.590><c> be</c><00:10:58.740><c> a</c><00:10:58.770><c> problem</c><00:10:59.040><c> for</c><00:10:59.250><c> you</c>

00:11:00.190 --> 00:11:00.200 align:start position:0%
see it it will not be a problem for you
 

00:11:00.200 --> 00:11:05.120 align:start position:0%
see it it will not be a problem for you
and<00:11:02.840><c> it</c><00:11:03.840><c> will</c><00:11:04.080><c> not</c><00:11:04.230><c> be</c><00:11:04.380><c> a</c><00:11:04.410><c> problem</c><00:11:04.590><c> for</c><00:11:04.830><c> your</c>

00:11:05.120 --> 00:11:05.130 align:start position:0%
and it will not be a problem for your
 

00:11:05.130 --> 00:11:09.050 align:start position:0%
and it will not be a problem for your
users<00:11:05.490><c> either</c><00:11:05.730><c> because</c><00:11:06.330><c> the</c><00:11:07.790><c> performance</c><00:11:08.790><c> is</c>

00:11:09.050 --> 00:11:09.060 align:start position:0%
users either because the performance is
 

00:11:09.060 --> 00:11:12.020 align:start position:0%
users either because the performance is
guaranteed<00:11:09.890><c> performance</c><00:11:10.890><c> is</c><00:11:11.490><c> improving</c>

00:11:12.020 --> 00:11:12.030 align:start position:0%
guaranteed performance is improving
 

00:11:12.030 --> 00:11:16.850 align:start position:0%
guaranteed performance is improving
together<00:11:12.660><c> with</c><00:11:12.930><c> popularity</c><00:11:15.230><c> the</c><00:11:16.230><c> easy</c><00:11:16.440><c> part</c>

00:11:16.850 --> 00:11:16.860 align:start position:0%
together with popularity the easy part
 

00:11:16.860 --> 00:11:17.210 align:start position:0%
together with popularity the easy part
is

00:11:17.210 --> 00:11:17.220 align:start position:0%
is
 

00:11:17.220 --> 00:11:19.129 align:start position:0%
is
that<00:11:17.370><c> there's</c><00:11:17.639><c> no</c><00:11:17.819><c> concurrent</c><00:11:18.329><c> editing</c><00:11:18.810><c> and</c>

00:11:19.129 --> 00:11:19.139 align:start position:0%
that there's no concurrent editing and
 

00:11:19.139 --> 00:11:22.160 align:start position:0%
that there's no concurrent editing and
no<00:11:19.439><c> comments</c><00:11:20.069><c> rating</c><00:11:20.610><c> so</c><00:11:21.000><c> we</c><00:11:21.240><c> have</c><00:11:21.449><c> styves</c><00:11:21.870><c> up</c>

00:11:22.160 --> 00:11:22.170 align:start position:0%
no comments rating so we have styves up
 

00:11:22.170 --> 00:11:23.720 align:start position:0%
no comments rating so we have styves up
the<00:11:22.379><c> few</c><00:11:22.560><c> difficult</c><00:11:22.980><c> problems</c><00:11:23.430><c> of</c><00:11:23.579><c> that</c>

00:11:23.720 --> 00:11:23.730 align:start position:0%
the few difficult problems of that
 

00:11:23.730 --> 00:11:25.309 align:start position:0%
the few difficult problems of that
development<00:11:24.209><c> in</c><00:11:24.509><c> this</c><00:11:24.660><c> particular</c><00:11:25.170><c> example</c>

00:11:25.309 --> 00:11:25.319 align:start position:0%
development in this particular example
 

00:11:25.319 --> 00:11:27.920 align:start position:0%
development in this particular example
however<00:11:26.250><c> it's</c><00:11:26.819><c> still</c><00:11:27.000><c> worth</c><00:11:27.360><c> looking</c><00:11:27.750><c> behind</c>

00:11:27.920 --> 00:11:27.930 align:start position:0%
however it's still worth looking behind
 

00:11:27.930 --> 00:11:29.869 align:start position:0%
however it's still worth looking behind
the<00:11:28.170><c> scenes</c><00:11:28.470><c> so</c><00:11:29.100><c> one</c><00:11:29.310><c> thing</c><00:11:29.519><c> that</c><00:11:29.730><c> is</c>

00:11:29.869 --> 00:11:29.879 align:start position:0%
the scenes so one thing that is
 

00:11:29.879 --> 00:11:33.160 align:start position:0%
the scenes so one thing that is
happening<00:11:29.910><c> here</c><00:11:30.660><c> is</c><00:11:30.839><c> that</c><00:11:31.459><c> the</c><00:11:32.459><c> blurred</c>

00:11:33.160 --> 00:11:33.170 align:start position:0%
happening here is that the blurred
 

00:11:33.170 --> 00:11:35.840 align:start position:0%
happening here is that the blurred
backgrounds<00:11:34.170><c> and</c><00:11:34.290><c> the</c><00:11:34.439><c> thumbnails</c><00:11:34.949><c> they</c><00:11:35.610><c> get</c>

00:11:35.840 --> 00:11:35.850 align:start position:0%
backgrounds and the thumbnails they get
 

00:11:35.850 --> 00:11:37.730 align:start position:0%
backgrounds and the thumbnails they get
generated<00:11:36.569><c> on</c><00:11:36.750><c> the</c><00:11:36.779><c> client</c><00:11:37.230><c> side</c><00:11:37.290><c> during</c>

00:11:37.730 --> 00:11:37.740 align:start position:0%
generated on the client side during
 

00:11:37.740 --> 00:11:40.340 align:start position:0%
generated on the client side during
upload<00:11:38.310><c> which</c><00:11:39.149><c> is</c><00:11:39.329><c> fine</c><00:11:39.600><c> for</c><00:11:39.810><c> a</c><00:11:39.870><c> photo</c><00:11:40.139><c> album</c>

00:11:40.340 --> 00:11:40.350 align:start position:0%
upload which is fine for a photo album
 

00:11:40.350 --> 00:11:42.769 align:start position:0%
upload which is fine for a photo album
but<00:11:41.100><c> let's</c><00:11:41.370><c> say</c><00:11:41.579><c> you</c><00:11:41.639><c> want</c><00:11:41.790><c> to</c><00:11:42.029><c> move</c><00:11:42.300><c> on</c><00:11:42.540><c> and</c>

00:11:42.769 --> 00:11:42.779 align:start position:0%
but let's say you want to move on and
 

00:11:42.779 --> 00:11:44.809 align:start position:0%
but let's say you want to move on and
you<00:11:42.930><c> want</c><00:11:43.079><c> to</c><00:11:43.319><c> do</c><00:11:43.529><c> something</c><00:11:43.860><c> distributed</c>

00:11:44.809 --> 00:11:44.819 align:start position:0%
you want to do something distributed
 

00:11:44.819 --> 00:11:48.110 align:start position:0%
you want to do something distributed
like<00:11:45.810><c> you</c><00:11:46.259><c> so</c><00:11:46.589><c> you</c><00:11:46.649><c> want</c><00:11:46.889><c> to</c><00:11:47.040><c> do</c><00:11:47.250><c> something</c>

00:11:48.110 --> 00:11:48.120 align:start position:0%
like you so you want to do something
 

00:11:48.120 --> 00:11:52.639 align:start position:0%
like you so you want to do something
like<00:11:48.269><c> YouTube</c><00:11:48.509><c> in</c><00:11:48.870><c> a</c><00:11:49.019><c> distributed</c><00:11:49.379><c> fashion</c><00:11:51.649><c> in</c>

00:11:52.639 --> 00:11:52.649 align:start position:0%
like YouTube in a distributed fashion in
 

00:11:52.649 --> 00:11:54.800 align:start position:0%
like YouTube in a distributed fashion in
that<00:11:52.980><c> case</c><00:11:53.250><c> you</c><00:11:53.430><c> need</c><00:11:53.579><c> to</c><00:11:53.790><c> transport</c><00:11:54.269><c> huge</c>

00:11:54.800 --> 00:11:54.810 align:start position:0%
that case you need to transport huge
 

00:11:54.810 --> 00:11:57.650 align:start position:0%
that case you need to transport huge
video<00:11:55.199><c> files</c><00:11:55.560><c> or</c><00:11:56.069><c> you</c><00:11:56.279><c> want</c><00:11:56.550><c> to</c><00:11:56.850><c> transform</c>

00:11:57.650 --> 00:11:57.660 align:start position:0%
video files or you want to transform
 

00:11:57.660 --> 00:12:00.350 align:start position:0%
video files or you want to transform
projections<00:11:58.620><c> for</c><00:11:58.920><c> immersive</c><00:11:59.250><c> panoramas</c><00:11:59.970><c> and</c>

00:12:00.350 --> 00:12:00.360 align:start position:0%
projections for immersive panoramas and
 

00:12:00.360 --> 00:12:01.429 align:start position:0%
projections for immersive panoramas and
things<00:12:00.689><c> like</c><00:12:00.870><c> that</c><00:12:01.079><c> which</c><00:12:01.290><c> are</c>

00:12:01.429 --> 00:12:01.439 align:start position:0%
things like that which are
 

00:12:01.439 --> 00:12:04.790 align:start position:0%
things like that which are
computationally<00:12:02.279><c> expensive</c><00:12:02.870><c> so</c><00:12:03.870><c> all</c><00:12:04.529><c> that</c>

00:12:04.790 --> 00:12:04.800 align:start position:0%
computationally expensive so all that
 

00:12:04.800 --> 00:12:06.889 align:start position:0%
computationally expensive so all that
stuff<00:12:05.040><c> can</c><00:12:05.430><c> you</c><00:12:05.579><c> do</c><00:12:05.759><c> that</c><00:12:05.910><c> in</c><00:12:06.180><c> a</c><00:12:06.269><c> mobile</c><00:12:06.629><c> phone</c>

00:12:06.889 --> 00:12:06.899 align:start position:0%
stuff can you do that in a mobile phone
 

00:12:06.899 --> 00:12:09.050 align:start position:0%
stuff can you do that in a mobile phone
well<00:12:07.319><c> you</c><00:12:07.529><c> can</c><00:12:07.800><c> but</c><00:12:08.100><c> you</c><00:12:08.220><c> probably</c><00:12:08.459><c> don't</c><00:12:08.730><c> want</c>

00:12:09.050 --> 00:12:09.060 align:start position:0%
well you can but you probably don't want
 

00:12:09.060 --> 00:12:11.809 align:start position:0%
well you can but you probably don't want
to<00:12:09.379><c> so</c><00:12:10.379><c> in</c><00:12:10.529><c> that</c><00:12:10.709><c> case</c><00:12:11.040><c> you</c><00:12:11.250><c> need</c><00:12:11.430><c> to</c><00:12:11.490><c> do</c>

00:12:11.809 --> 00:12:11.819 align:start position:0%
to so in that case you need to do
 

00:12:11.819 --> 00:12:16.460 align:start position:0%
to so in that case you need to do
delegated<00:12:12.540><c> computations</c><00:12:13.970><c> in</c><00:12:14.970><c> which</c><00:12:15.300><c> case</c><00:12:15.660><c> you</c>

00:12:16.460 --> 00:12:16.470 align:start position:0%
delegated computations in which case you
 

00:12:16.470 --> 00:12:19.280 align:start position:0%
delegated computations in which case you
submit<00:12:17.009><c> the</c><00:12:17.459><c> data</c><00:12:17.670><c> and</c><00:12:18.180><c> the</c><00:12:18.360><c> specification</c>

00:12:19.280 --> 00:12:19.290 align:start position:0%
submit the data and the specification
 

00:12:19.290 --> 00:12:22.819 align:start position:0%
submit the data and the specification
and<00:12:19.439><c> the</c><00:12:19.589><c> reward</c><00:12:20.009><c> and</c><00:12:20.300><c> you</c><00:12:21.300><c> want</c><00:12:21.829><c> eventually</c>

00:12:22.819 --> 00:12:22.829 align:start position:0%
and the reward and you want eventually
 

00:12:22.829 --> 00:12:25.249 align:start position:0%
and the reward and you want eventually
to<00:12:23.069><c> have</c><00:12:23.279><c> a</c><00:12:23.519><c> result</c><00:12:24.059><c> of</c><00:12:24.180><c> that</c><00:12:24.329><c> computation</c><00:12:25.079><c> and</c>

00:12:25.249 --> 00:12:25.259 align:start position:0%
to have a result of that computation and
 

00:12:25.259 --> 00:12:27.829 align:start position:0%
to have a result of that computation and
the<00:12:25.709><c> proof</c><00:12:25.980><c> that</c><00:12:26.279><c> it</c><00:12:26.459><c> is</c><00:12:26.490><c> correct</c><00:12:26.970><c> so</c><00:12:27.600><c> there's</c>

00:12:27.829 --> 00:12:27.839 align:start position:0%
the proof that it is correct so there's
 

00:12:27.839 --> 00:12:30.699 align:start position:0%
the proof that it is correct so there's
gonna<00:12:28.050><c> be</c><00:12:28.199><c> other</c><00:12:28.589><c> talks</c><00:12:29.040><c> in</c><00:12:29.850><c> this</c><00:12:30.449><c> session</c>

00:12:30.699 --> 00:12:30.709 align:start position:0%
gonna be other talks in this session
 

00:12:30.709 --> 00:12:35.329 align:start position:0%
gonna be other talks in this session
which<00:12:31.709><c> we'll</c><00:12:32.100><c> delve</c><00:12:32.819><c> into</c><00:12:33.149><c> that</c><00:12:34.129><c> what</c><00:12:35.129><c> I</c><00:12:35.160><c> would</c>

00:12:35.329 --> 00:12:35.339 align:start position:0%
which we'll delve into that what I would
 

00:12:35.339 --> 00:12:37.220 align:start position:0%
which we'll delve into that what I would
really<00:12:35.699><c> like</c><00:12:35.910><c> to</c><00:12:35.939><c> highlight</c><00:12:36.540><c> that</c><00:12:36.930><c> there</c><00:12:37.170><c> are</c>

00:12:37.220 --> 00:12:37.230 align:start position:0%
really like to highlight that there are
 

00:12:37.230 --> 00:12:39.590 align:start position:0%
really like to highlight that there are
two<00:12:37.410><c> ways</c><00:12:37.589><c> to</c><00:12:37.620><c> go</c><00:12:37.920><c> about</c><00:12:37.949><c> it</c><00:12:38.490><c> either</c><00:12:39.000><c> you</c>

00:12:39.590 --> 00:12:39.600 align:start position:0%
two ways to go about it either you
 

00:12:39.600 --> 00:12:42.379 align:start position:0%
two ways to go about it either you
specify<00:12:40.319><c> in</c><00:12:40.709><c> an</c><00:12:40.920><c> imperative</c><00:12:41.370><c> fashion</c><00:12:42.059><c> in</c><00:12:42.269><c> a</c>

00:12:42.379 --> 00:12:42.389 align:start position:0%
specify in an imperative fashion in a
 

00:12:42.389 --> 00:12:44.990 align:start position:0%
specify in an imperative fashion in a
special<00:12:42.930><c> blockchain</c><00:12:43.470><c> in</c><00:12:44.040><c> a</c><00:12:44.129><c> special</c><00:12:44.579><c> virtual</c>

00:12:44.990 --> 00:12:45.000 align:start position:0%
special blockchain in a special virtual
 

00:12:45.000 --> 00:12:47.059 align:start position:0%
special blockchain in a special virtual
machine<00:12:45.420><c> what</c><00:12:45.959><c> computations</c><00:12:46.680><c> you</c><00:12:46.860><c> want</c>

00:12:47.059 --> 00:12:47.069 align:start position:0%
machine what computations you want
 

00:12:47.069 --> 00:12:49.689 align:start position:0%
machine what computations you want
performed<00:12:47.699><c> or</c><00:12:48.149><c> you</c><00:12:48.389><c> just</c><00:12:48.629><c> make</c><00:12:48.959><c> declarations</c>

00:12:49.689 --> 00:12:49.699 align:start position:0%
performed or you just make declarations
 

00:12:49.699 --> 00:12:52.280 align:start position:0%
performed or you just make declarations
about<00:12:50.699><c> the</c><00:12:51.149><c> result</c><00:12:51.540><c> you</c><00:12:51.660><c> don't</c><00:12:51.870><c> care</c><00:12:52.110><c> how</c>

00:12:52.280 --> 00:12:52.290 align:start position:0%
about the result you don't care how
 

00:12:52.290 --> 00:12:55.749 align:start position:0%
about the result you don't care how
people<00:12:52.500><c> actually</c><00:12:52.980><c> compute</c><00:12:53.699><c> that</c><00:12:53.939><c> you</c><00:12:54.480><c> simply</c>

00:12:55.749 --> 00:12:55.759 align:start position:0%
people actually compute that you simply
 

00:12:55.759 --> 00:12:58.670 align:start position:0%
people actually compute that you simply
verify<00:12:56.759><c> that</c><00:12:56.970><c> it's</c><00:12:57.180><c> correct</c><00:12:57.600><c> and</c><00:12:57.899><c> then</c><00:12:58.470><c> you</c>

00:12:58.670 --> 00:12:58.680 align:start position:0%
verify that it's correct and then you
 

00:12:58.680 --> 00:13:01.059 align:start position:0%
verify that it's correct and then you
need<00:12:58.889><c> to</c><00:12:58.920><c> arbitrate</c><00:12:59.699><c> it</c><00:12:59.910><c> on</c><00:13:00.089><c> the</c><00:13:00.300><c> blockchain</c>

00:13:01.059 --> 00:13:01.069 align:start position:0%
need to arbitrate it on the blockchain
 

00:13:01.069 --> 00:13:03.230 align:start position:0%
need to arbitrate it on the blockchain
please<00:13:02.069><c> talk</c><00:13:02.309><c> to</c><00:13:02.339><c> me</c><00:13:02.639><c> after</c><00:13:02.970><c> the</c><00:13:03.120><c> presentation</c>

00:13:03.230 --> 00:13:03.240 align:start position:0%
please talk to me after the presentation
 

00:13:03.240 --> 00:13:06.530 align:start position:0%
please talk to me after the presentation
I<00:13:03.839><c> don't</c><00:13:04.079><c> have</c><00:13:04.199><c> enough</c><00:13:04.439><c> time</c><00:13:04.709><c> to</c><00:13:05.009><c> to</c><00:13:05.970><c> to</c>

00:13:06.530 --> 00:13:06.540 align:start position:0%
I don't have enough time to to to
 

00:13:06.540 --> 00:13:08.869 align:start position:0%
I don't have enough time to to to
explain<00:13:07.470><c> arbitration</c><00:13:08.160><c> here</c><00:13:08.370><c> but</c><00:13:08.550><c> I</c><00:13:08.579><c> think</c>

00:13:08.869 --> 00:13:08.879 align:start position:0%
explain arbitration here but I think
 

00:13:08.879 --> 00:13:10.100 align:start position:0%
explain arbitration here but I think
it's<00:13:09.029><c> really</c><00:13:09.269><c> crucial</c><00:13:09.449><c> and</c><00:13:09.720><c> a</c><00:13:09.870><c> really</c>

00:13:10.100 --> 00:13:10.110 align:start position:0%
it's really crucial and a really
 

00:13:10.110 --> 00:13:13.819 align:start position:0%
it's really crucial and a really
interesting<00:13:10.589><c> part</c><00:13:10.800><c> of</c><00:13:10.980><c> it</c><00:13:12.410><c> the</c><00:13:13.410><c> second</c>

00:13:13.819 --> 00:13:13.829 align:start position:0%
interesting part of it the second
 

00:13:13.829 --> 00:13:16.629 align:start position:0%
interesting part of it the second
example<00:13:14.790><c> is</c><00:13:15.120><c> something</c><00:13:15.629><c> like</c><00:13:15.779><c> Dropbox</c>

00:13:16.629 --> 00:13:16.639 align:start position:0%
example is something like Dropbox
 

00:13:16.639 --> 00:13:18.619 align:start position:0%
example is something like Dropbox
distributing<00:13:17.639><c> Dropbox</c><00:13:18.089><c> there's</c><00:13:18.269><c> a</c><00:13:18.360><c> huge</c>

00:13:18.619 --> 00:13:18.629 align:start position:0%
distributing Dropbox there's a huge
 

00:13:18.629 --> 00:13:20.900 align:start position:0%
distributing Dropbox there's a huge
demand<00:13:18.959><c> for</c><00:13:19.050><c> that</c><00:13:19.199><c> kind</c><00:13:19.589><c> of</c><00:13:19.680><c> stuff</c>

00:13:20.900 --> 00:13:20.910 align:start position:0%
demand for that kind of stuff
 

00:13:20.910 --> 00:13:24.829 align:start position:0%
demand for that kind of stuff
it<00:13:21.449><c> has</c><00:13:22.050><c> a</c><00:13:22.680><c> web</c><00:13:23.309><c> app</c><00:13:23.519><c> and</c><00:13:23.759><c> a</c><00:13:24.360><c> locally</c>

00:13:24.829 --> 00:13:24.839 align:start position:0%
it has a web app and a locally
 

00:13:24.839 --> 00:13:26.749 align:start position:0%
it has a web app and a locally
synchronized<00:13:25.380><c> folder</c><00:13:25.829><c> the</c><00:13:26.040><c> first</c><00:13:26.220><c> one</c><00:13:26.550><c> is</c>

00:13:26.749 --> 00:13:26.759 align:start position:0%
synchronized folder the first one is
 

00:13:26.759 --> 00:13:29.049 align:start position:0%
synchronized folder the first one is
already<00:13:27.449><c> in</c><00:13:27.750><c> the</c><00:13:27.959><c> works</c><00:13:28.139><c> it's</c>

00:13:29.049 --> 00:13:29.059 align:start position:0%
already in the works it's
 

00:13:29.059 --> 00:13:32.049 align:start position:0%
already in the works it's
I<00:13:29.869><c> mean</c><00:13:30.439><c> it's</c><00:13:30.619><c> already</c><00:13:30.829><c> usable</c><00:13:31.519><c> it's</c><00:13:31.759><c> just</c><00:13:31.939><c> not</c>

00:13:32.049 --> 00:13:32.059 align:start position:0%
I mean it's already usable it's just not
 

00:13:32.059 --> 00:13:35.919 align:start position:0%
I mean it's already usable it's just not
feature<00:13:32.299><c> complete</c><00:13:33.579><c> again</c><00:13:34.579><c> here</c><00:13:35.449><c> you</c><00:13:35.719><c> have</c>

00:13:35.919 --> 00:13:35.929 align:start position:0%
feature complete again here you have
 

00:13:35.929 --> 00:13:38.409 align:start position:0%
feature complete again here you have
concurrent<00:13:36.499><c> changes</c><00:13:37.219><c> but</c><00:13:37.669><c> they're</c><00:13:37.849><c> not</c><00:13:38.029><c> not</c>

00:13:38.409 --> 00:13:38.419 align:start position:0%
concurrent changes but they're not not
 

00:13:38.419 --> 00:13:40.149 align:start position:0%
concurrent changes but they're not not
typical<00:13:38.929><c> when</c><00:13:39.079><c> you're</c><00:13:39.259><c> syncing</c><00:13:39.649><c> between</c><00:13:39.679><c> two</c>

00:13:40.149 --> 00:13:40.159 align:start position:0%
typical when you're syncing between two
 

00:13:40.159 --> 00:13:43.889 align:start position:0%
typical when you're syncing between two
devices<00:13:40.459><c> of</c><00:13:40.849><c> yours</c><00:13:41.179><c> or</c><00:13:41.359><c> between</c><00:13:41.629><c> a</c><00:13:41.749><c> few</c><00:13:41.989><c> users</c>

00:13:43.889 --> 00:13:43.899 align:start position:0%
devices of yours or between a few users
 

00:13:43.899 --> 00:13:48.369 align:start position:0%
devices of yours or between a few users
and<00:13:45.159><c> also</c><00:13:46.209><c> there's</c><00:13:47.209><c> gonna</c><00:13:47.599><c> be</c><00:13:47.839><c> a</c><00:13:47.869><c> separate</c>

00:13:48.369 --> 00:13:48.379 align:start position:0%
and also there's gonna be a separate
 

00:13:48.379 --> 00:13:50.859 align:start position:0%
and also there's gonna be a separate
talk<00:13:48.739><c> about</c><00:13:49.339><c> implementing</c><00:13:50.209><c> something</c><00:13:50.659><c> like</c>

00:13:50.859 --> 00:13:50.869 align:start position:0%
talk about implementing something like
 

00:13:50.869 --> 00:13:55.889 align:start position:0%
talk about implementing something like
github<00:13:51.319><c> in</c><00:13:51.769><c> this</c><00:13:52.489><c> distributed</c><00:13:53.329><c> fashion</c><00:13:54.339><c> so</c>

00:13:55.889 --> 00:13:55.899 align:start position:0%
github in this distributed fashion so
 

00:13:55.899 --> 00:13:59.619 align:start position:0%
github in this distributed fashion so
the<00:13:56.899><c> third</c><00:13:57.199><c> example</c><00:13:58.029><c> which</c><00:13:59.029><c> would</c><00:13:59.359><c> be</c><00:13:59.599><c> a</c>

00:13:59.619 --> 00:13:59.629 align:start position:0%
the third example which would be a
 

00:13:59.629 --> 00:14:02.199 align:start position:0%
the third example which would be a
distributed<00:14:00.439><c> social</c><00:14:00.889><c> network</c><00:14:01.339><c> and</c><00:14:01.639><c> the</c>

00:14:02.199 --> 00:14:02.209 align:start position:0%
distributed social network and the
 

00:14:02.209 --> 00:14:04.959 align:start position:0%
distributed social network and the
fourth<00:14:02.479><c> example</c><00:14:02.689><c> a</c><00:14:03.289><c> map</c><00:14:03.649><c> or</c><00:14:03.919><c> a</c><00:14:03.969><c> encyclopedia</c>

00:14:04.959 --> 00:14:04.969 align:start position:0%
fourth example a map or a encyclopedia
 

00:14:04.969 --> 00:14:07.509 align:start position:0%
fourth example a map or a encyclopedia
with<00:14:05.149><c> no</c><00:14:05.329><c> official</c><00:14:05.839><c> truth</c><00:14:06.079><c> so</c><00:14:06.859><c> these</c><00:14:07.189><c> things</c>

00:14:07.509 --> 00:14:07.519 align:start position:0%
with no official truth so these things
 

00:14:07.519 --> 00:14:10.059 align:start position:0%
with no official truth so these things
they<00:14:07.969><c> are</c><00:14:07.999><c> pure</c><00:14:08.659><c> vapor</c><00:14:08.959><c> where</c><00:14:09.499><c> now</c><00:14:09.739><c> although</c>

00:14:10.059 --> 00:14:10.069 align:start position:0%
they are pure vapor where now although
 

00:14:10.069 --> 00:14:11.889 align:start position:0%
they are pure vapor where now although
I'm<00:14:10.489><c> aware</c><00:14:10.789><c> of</c><00:14:10.849><c> some</c><00:14:11.239><c> teams</c><00:14:11.479><c> that</c><00:14:11.599><c> are</c><00:14:11.869><c> working</c>

00:14:11.889 --> 00:14:11.899 align:start position:0%
I'm aware of some teams that are working
 

00:14:11.899 --> 00:14:15.519 align:start position:0%
I'm aware of some teams that are working
on<00:14:12.409><c> projects</c><00:14:12.889><c> like</c><00:14:12.919><c> this</c><00:14:13.279><c> so</c><00:14:13.639><c> maybe</c><00:14:14.599><c> we</c><00:14:15.319><c> will</c>

00:14:15.519 --> 00:14:15.529 align:start position:0%
on projects like this so maybe we will
 

00:14:15.529 --> 00:14:18.249 align:start position:0%
on projects like this so maybe we will
see<00:14:15.739><c> something</c><00:14:16.009><c> like</c><00:14:16.159><c> this</c><00:14:16.699><c> in</c><00:14:17.029><c> the</c><00:14:17.209><c> not</c><00:14:18.049><c> very</c>

00:14:18.249 --> 00:14:18.259 align:start position:0%
see something like this in the not very
 

00:14:18.259 --> 00:14:22.329 align:start position:0%
see something like this in the not very
distant<00:14:18.769><c> future</c><00:14:20.199><c> so</c><00:14:21.199><c> there</c><00:14:21.379><c> are</c><00:14:21.469><c> also</c><00:14:21.589><c> ways</c><00:14:22.009><c> of</c>

00:14:22.329 --> 00:14:22.339 align:start position:0%
distant future so there are also ways of
 

00:14:22.339 --> 00:14:27.429 align:start position:0%
distant future so there are also ways of
doing<00:14:23.079><c> doing</c><00:14:24.079><c> things</c><00:14:24.349><c> like</c><00:14:24.439><c> this</c><00:14:26.259><c> in</c><00:14:27.259><c> a</c>

00:14:27.429 --> 00:14:27.439 align:start position:0%
doing doing things like this in a
 

00:14:27.439 --> 00:14:28.629 align:start position:0%
doing doing things like this in a
distributed<00:14:27.829><c> fashion</c>

00:14:28.629 --> 00:14:28.639 align:start position:0%
distributed fashion
 

00:14:28.639 --> 00:14:30.699 align:start position:0%
distributed fashion
moreover<00:14:29.299><c> doing</c><00:14:29.869><c> it</c><00:14:30.049><c> in</c><00:14:30.199><c> a</c><00:14:30.319><c> distributed</c>

00:14:30.699 --> 00:14:30.709 align:start position:0%
moreover doing it in a distributed
 

00:14:30.709 --> 00:14:32.969 align:start position:0%
moreover doing it in a distributed
fashion<00:14:31.009><c> in</c><00:14:31.459><c> a</c><00:14:31.549><c> Content</c><00:14:31.939><c> address</c><00:14:32.299><c> storage</c>

00:14:32.969 --> 00:14:32.979 align:start position:0%
fashion in a Content address storage
 

00:14:32.979 --> 00:14:35.499 align:start position:0%
fashion in a Content address storage
actually<00:14:33.979><c> opens</c><00:14:34.339><c> up</c><00:14:34.519><c> possibilities</c><00:14:34.669><c> which</c>

00:14:35.499 --> 00:14:35.509 align:start position:0%
actually opens up possibilities which
 

00:14:35.509 --> 00:14:37.659 align:start position:0%
actually opens up possibilities which
are<00:14:35.719><c> plain</c><00:14:35.989><c> impossible</c><00:14:36.199><c> to</c><00:14:36.859><c> do</c><00:14:36.979><c> in</c><00:14:37.219><c> the</c><00:14:37.369><c> web</c>

00:14:37.659 --> 00:14:37.669 align:start position:0%
are plain impossible to do in the web
 

00:14:37.669 --> 00:14:40.839 align:start position:0%
are plain impossible to do in the web
2.0<00:14:38.419><c> way</c><00:14:38.599><c> so</c><00:14:39.289><c> thank</c><00:14:39.979><c> you</c><00:14:40.069><c> for</c><00:14:40.219><c> your</c><00:14:40.399><c> time</c><00:14:40.639><c> and</c>

00:14:40.839 --> 00:14:40.849 align:start position:0%
2.0 way so thank you for your time and
 

00:14:40.849 --> 00:14:42.759 align:start position:0%
2.0 way so thank you for your time and
if<00:14:41.389><c> you</c><00:14:41.539><c> will</c><00:14:41.689><c> have</c><00:14:41.899><c> questions</c><00:14:42.109><c> I</c><00:14:42.559><c> will</c><00:14:42.619><c> be</c>

00:14:42.759 --> 00:14:42.769 align:start position:0%
if you will have questions I will be
 

00:14:42.769 --> 00:14:45.939 align:start position:0%
if you will have questions I will be
happy<00:14:43.279><c> to</c><00:14:43.309><c> answer</c><00:14:43.429><c> them</c>

