WEBVTT

1
00:00:02.765 --> 00:00:03.375
Fantastic.

2
00:00:03.855 --> 00:00:05.015
<00:00:03.855>Excellent. <00:00:04.029>Thanks <00:00:04.203>so <00:00:04.377>much <00:00:04.551>for <00:00:04.725>having <00:00:04.899>me.

3
00:00:05.115 --> 00:00:08.255
<00:00:05.115>Um, <00:00:05.315>thanks <00:00:05.515>for <00:00:05.715>the <00:00:05.915>great <00:00:06.115>introduction. <00:00:06.315>Hello <00:00:06.515>everyone.

4
00:00:08.555 --> 00:00:11.815
<00:00:08.555>Uh, <00:00:08.682>so <00:00:08.809>I'm <00:00:08.936>gonna <00:00:09.064>be <00:00:09.191>talking <00:00:09.318>today <00:00:09.445>about <00:00:09.573>the <00:00:09.700>Lean <00:00:09.827>Web, <00:00:09.955>um,

5
00:00:11.925 --> 00:00:13.215
<00:00:11.925>some <00:00:12.312>thoughts <00:00:12.699>and <00:00:13.086>ideas.

6
00:00:13.675 --> 00:00:18.575
<00:00:13.675>Um, <00:00:13.830>I <00:00:13.986>have <00:00:14.141>around <00:00:14.297>building <00:00:14.452>a <00:00:14.608>simpler, <00:00:14.763>faster <00:00:14.919>worldwide <00:00:15.075>web.

7
00:00:18.955 --> 00:00:22.975
<00:00:18.955>Um, <00:00:19.154>I <00:00:19.354>apparently <00:00:19.555>just <00:00:19.755>messed <00:00:19.955>up <00:00:20.154>my <00:00:20.354>thing,

8
00:00:23.075 --> 00:00:24.575
<00:00:23.075>so, <00:00:23.412>so <00:00:23.750>sorry <00:00:24.087>about <00:00:24.425>that.

9
00:00:24.705 --> 00:00:27.935
<00:00:24.705>Let's <00:00:24.860>see <00:00:25.016>here. <00:00:25.171>What <00:00:25.327>did <00:00:25.482>I <00:00:25.638>break? <00:00:25.793>There <00:00:25.949>we <00:00:26.104>go.

10
00:00:28.595 --> 00:00:31.335
<00:00:28.595>I'm <00:00:28.770>not <00:00:28.945>sharing <00:00:29.119>anymore <00:00:29.294>though. <00:00:29.470>Uh, <00:00:29.645>gotta <00:00:29.820>love <00:00:29.994>technology.

11
00:00:31.425 --> 00:00:32.495
<00:00:31.425>Let's <00:00:31.617>try <00:00:31.810>that <00:00:32.002>one <00:00:32.195>more <00:00:32.387>time.

12
00:00:33.915 --> 00:00:37.535
<00:00:33.915>All <00:00:34.070>right, <00:00:34.226>share, <00:00:34.381>uh, <00:00:34.537>keynote. <00:00:34.692>Don't <00:00:34.848>fail <00:00:35.003>me <00:00:35.159>now. <00:00:35.315>Awesome.

13
00:00:37.845 --> 00:00:42.175
<00:00:37.845>Cool. <00:00:37.985>Um, <00:00:38.125>so, <00:00:38.265>uh, <00:00:38.405>the <00:00:38.545>main <00:00:38.685>thesis <00:00:38.824>of <00:00:38.964>my <00:00:39.105>talk <00:00:39.245>is

14
00:00:42.175 --> 00:00:43.495
<00:00:42.175>that <00:00:42.471>the <00:00:42.769>web <00:00:43.065>is <00:00:43.363>awesome,

15
00:00:44.035 --> 00:00:47.415
<00:00:44.035>but <00:00:44.385>also <00:00:44.735>horribly, <00:00:45.084>horribly <00:00:45.434>broken.

16
00:00:48.155 --> 00:00:52.895
<00:00:48.155>Um, <00:00:48.330>and, <00:00:48.505>uh, <00:00:48.680>bandwidth <00:00:48.855>in <00:00:49.030>the <00:00:49.205>last <00:00:49.380>five <00:00:49.555>years

17
00:00:53.635 --> 00:00:55.655
<00:00:53.635>has <00:00:53.868>gone <00:00:54.101>up <00:00:54.335>by <00:00:54.568>about <00:00:54.801>three <00:00:55.035>times.

18
00:00:56.115 --> 00:00:57.895
<00:00:56.115>Um, <00:00:56.315>it's <00:00:56.515>three <00:00:56.715>times <00:00:56.915>faster <00:00:57.115>on <00:00:57.315>both <00:00:57.515>mobile

19
00:00:57.915 --> 00:01:00.735
<00:00:57.915>and <00:00:58.148>desktop <00:00:58.381>than <00:00:58.615>it <00:00:58.848>was <00:00:59.081>in <00:00:59.315>2017,

20
00:01:01.595 --> 00:01:03.495
<00:01:01.595>but <00:01:01.828>it <00:01:02.061>doesn't <00:01:02.295>always <00:01:02.528>feel <00:01:02.761>that <00:01:02.995>way.

21
00:01:04.125 --> 00:01:06.655
<00:01:04.125>Load <00:01:04.405>times, <00:01:04.685>and <00:01:04.965>the <00:01:05.245>perceived <00:01:05.525>experience

22
00:01:06.655 --> 00:01:09.695
<00:01:06.655>of <00:01:06.855>using <00:01:07.055>the <00:01:07.255>web <00:01:07.455>aren't <00:01:07.655>meaningfully <00:01:07.855>better <00:01:08.055>than

23
00:01:09.695 --> 00:01:10.735
<00:01:09.695>they <00:01:09.928>were <00:01:10.163>five <00:01:10.396>years <00:01:10.631>ago.

24
00:01:10.795 --> 00:01:12.895
<00:01:10.795>If <00:01:10.995>anything, <00:01:11.195>it's <00:01:11.395>gotten <00:01:11.595>a <00:01:11.795>little <00:01:11.995>bit <00:01:12.195>worse.

25
00:01:13.485 --> 00:01:15.935
<00:01:13.485>It's <00:01:13.640>far <00:01:13.796>too <00:01:13.951>common <00:01:14.107>to <00:01:14.262>click <00:01:14.418>buttons <00:01:14.573>that <00:01:14.729>do <00:01:14.885>nothing

26
00:01:16.395 --> 00:01:18.255
<00:01:16.395>or <00:01:16.744>links <00:01:17.095>that <00:01:17.445>go <00:01:17.795>nowhere

27
00:01:18.595 --> 00:01:21.655
<00:01:18.595>or <00:01:18.795>visit <00:01:18.995>pages <00:01:19.195>that <00:01:19.395>display <00:01:19.595>nothing <00:01:19.795>at <00:01:19.995>all.

28
00:01:22.795 --> 00:01:25.135
<00:01:22.795>So <00:01:22.922>what <00:01:23.049>I <00:01:23.176>wanna <00:01:23.304>talk <00:01:23.431>to <00:01:23.558>you <00:01:23.685>about <00:01:23.813>today <00:01:23.940>are <00:01:24.067>some <00:01:24.195>ideas

29
00:01:25.155 --> 00:01:26.295
<00:01:25.155>on <00:01:25.360>how <00:01:25.565>we <00:01:25.770>can <00:01:25.975>fix <00:01:26.181>that.

30
00:01:26.655 --> 00:01:29.015
<00:01:26.655>I <00:01:26.888>wanna <00:01:27.121>explore <00:01:27.355>some <00:01:27.588>emerging <00:01:27.821>best <00:01:28.055>practices

31
00:01:29.015 --> 00:01:30.375
<00:01:29.015>that <00:01:29.219>I <00:01:29.423>think <00:01:29.627>are <00:01:29.831>going <00:01:30.035>to <00:01:30.239>replace

32
00:01:30.955 --> 00:01:33.495
<00:01:30.955>how <00:01:31.130>we <00:01:31.304>build <00:01:31.480>things <00:01:31.655>today <00:01:31.830>over <00:01:32.005>the <00:01:32.179>coming <00:01:32.355>years.

33
00:01:34.115 --> 00:01:37.135
<00:01:34.115>So, <00:01:34.270>hey <00:01:34.426>everyone, <00:01:34.581>I'm <00:01:34.737>Chris <00:01:34.892>Fer <00:01:35.048>Andy, <00:01:35.203>that's <00:01:35.359>my <00:01:35.515>face.

34
00:01:37.355 --> 00:01:39.495
<00:01:37.354>You <00:01:37.704>can <00:01:38.054>find <00:01:38.404>me <00:01:38.755>over@gomakethings.com.

35
00:01:40.255 --> 00:01:41.455
<00:01:40.255>I <00:01:40.615>teach <00:01:40.975>people <00:01:41.335>JavaScript

36
00:01:41.475 --> 00:01:44.015
<00:01:41.475>and <00:01:41.630>ironically, <00:01:41.786>I <00:01:41.941>spend <00:01:42.097>most <00:01:42.252>of <00:01:42.408>my <00:01:42.563>time <00:01:42.719>telling <00:01:42.875>people

37
00:01:44.205 --> 00:01:46.575
<00:01:44.205>that <00:01:44.312>we <00:01:44.420>need <00:01:44.528>to <00:01:44.635>use <00:01:44.743>less <00:01:44.851>of <00:01:44.958>it <00:01:45.066>in <00:01:45.174>the <00:01:45.281>things <00:01:45.389>that <00:01:45.497>we <00:01:45.605>build.

38
00:01:47.295 --> 00:01:48.615
<00:01:47.295>I <00:01:47.532>write <00:01:47.770>a <00:01:48.007>free <00:01:48.245>daily <00:01:48.483>newsletter.

39
00:01:48.975 --> 00:01:51.415
<00:01:48.975>I <00:01:49.175>also <00:01:49.375>create <00:01:49.574>courses <00:01:49.774>and <00:01:49.975>run <00:01:50.175>workshops <00:01:50.375>if

40
00:01:51.415 --> 00:01:52.455
<00:01:51.414>you're <00:01:51.602>interested <00:01:51.789>in <00:01:51.976>any <00:01:52.163>of <00:01:52.351>those.

41
00:01:52.515 --> 00:01:54.655
<00:01:52.515>I'm <00:01:52.690>actually <00:01:52.865>running <00:01:53.040>a <00:01:53.215>Black <00:01:53.390>Friday <00:01:53.565>sale <00:01:53.740>right <00:01:53.915>now,

42
00:01:54.755 --> 00:01:56.055
<00:01:54.755>so <00:01:55.145>everything's <00:01:55.535>50% <00:01:55.925>off.

43
00:01:56.315 --> 00:01:57.415
<00:01:56.315>Uh, <00:01:56.512>might <00:01:56.711>be <00:01:56.908>worth <00:01:57.107>a <00:01:57.304>look,

44
00:01:57.795 --> 00:01:59.575
<00:01:57.795>but <00:01:58.028>here's <00:01:58.261>the <00:01:58.495>agenda <00:01:58.728>for <00:01:58.961>today's <00:01:59.195>talk.

45
00:01:59.675 --> 00:02:01.935
<00:01:59.675>Um, <00:01:59.815>we're <00:01:59.955>gonna <00:02:00.095>spend <00:02:00.235>a <00:02:00.375>little <00:02:00.515>bit <00:02:00.655>of <00:02:00.795>time <00:02:00.935>talking <00:02:01.075>about

46
00:02:02.155 --> 00:02:04.295
<00:02:02.155>how <00:02:02.388>specifically <00:02:02.621>exactly <00:02:02.855>we <00:02:03.088>broke <00:02:03.321>the <00:02:03.555>web,

47
00:02:04.555 --> 00:02:05.815
<00:02:04.555>what's <00:02:04.838>wrong, <00:02:05.122>what's <00:02:05.405>not <00:02:05.689>working.

48
00:02:06.545 --> 00:02:07.615
<00:02:06.545>We're <00:02:06.737>gonna <00:02:06.930>spend <00:02:07.122>a <00:02:07.315>little <00:02:07.508>bit

49
00:02:07.615 --> 00:02:09.175
<00:02:07.615>of <00:02:07.815>time <00:02:08.014>talking <00:02:08.215>about <00:02:08.414>why <00:02:08.614>we <00:02:08.815>did <00:02:09.014>that.

50
00:02:09.395 --> 00:02:12.095
<00:02:09.395>Um, <00:02:09.522>and <00:02:09.649>then <00:02:09.776>we're <00:02:09.904>gonna <00:02:10.031>wrap <00:02:10.158>things <00:02:10.285>up, <00:02:10.413>spend <00:02:10.540>a <00:02:10.667>good <00:02:10.795>chunk

51
00:02:12.095 --> 00:02:14.255
<00:02:12.095>of <00:02:12.250>our <00:02:12.406>time <00:02:12.561>talking <00:02:12.717>about <00:02:12.872>how <00:02:13.028>to <00:02:13.183>actually <00:02:13.339>fix <00:02:13.495>it,

52
00:02:14.255 --> 00:02:15.815
<00:02:14.255>because <00:02:14.535>that's <00:02:14.815>the <00:02:15.095>exciting <00:02:15.375>stuff, <00:02:15.655>right?

53
00:02:16.435 --> 00:02:18.935
<00:02:16.435>So, <00:02:16.635>um, <00:02:16.835>without <00:02:17.035>further <00:02:17.235>ado, <00:02:17.435>let's <00:02:17.635>talk <00:02:17.835>about

54
00:02:19.035 --> 00:02:20.135
<00:02:19.035>how <00:02:19.282>we <00:02:19.530>broke <00:02:19.777>the <00:02:20.024>web.

55
00:02:21.115 --> 00:02:23.495
<00:02:21.115>The <00:02:21.290>problem <00:02:21.465>is <00:02:21.640>JavaScript. <00:02:21.815>I'm <00:02:21.990>not <00:02:22.165>gonna <00:02:22.340>sugarcoat <00:02:22.515>it.

56
00:02:23.555 --> 00:02:24.615
<00:02:23.555>I'm <00:02:23.714>not <00:02:23.873>gonna <00:02:24.032>beat <00:02:24.191>around <00:02:24.350>the <00:02:24.509>bush.

57
00:02:24.925 --> 00:02:27.175
<00:02:24.925>It's <00:02:25.100>an <00:02:25.275>amazing <00:02:25.450>language <00:02:25.625>and <00:02:25.800>it's <00:02:25.975>ruining <00:02:26.150>the <00:02:26.325>web.

58
00:02:27.675 --> 00:02:31.575
<00:02:27.675>You <00:02:27.850>see, <00:02:28.025>JavaScript <00:02:28.200>is <00:02:28.375>really, <00:02:28.550>really <00:02:28.725>slow, <00:02:28.900>like <00:02:29.075>orders

59
00:02:31.875 --> 00:02:36.655
<00:02:31.875>of <00:02:32.050>magnitude <00:02:32.225>slower <00:02:32.400>than <00:02:32.575>CSS <00:02:32.750>than <00:02:32.925>HTML <00:02:33.100>than <00:02:33.275>images,

60
00:02:36.765 --> 00:02:39.255
<00:02:36.765>than <00:02:36.904>pretty <00:02:37.045>much <00:02:37.184>any <00:02:37.325>asset <00:02:37.464>you <00:02:37.605>can <00:02:37.744>send <00:02:37.885>down <00:02:38.024>the <00:02:38.165>wire.

61
00:02:39.505 --> 00:02:43.575
<00:02:39.505>JavaScript <00:02:39.680>is <00:02:39.855>slow <00:02:40.030>and <00:02:40.204>it's <00:02:40.380>ruining <00:02:40.555>all <00:02:40.730>the <00:02:40.905>things.

62
00:02:43.755 --> 00:02:44.815
<00:02:43.755>Um, <00:02:44.073>it's <00:02:44.391>also <00:02:44.709>amazing,

63
00:02:44.915 --> 00:02:48.175
<00:02:44.915>it <00:02:45.070>has <00:02:45.226>made <00:02:45.381>the <00:02:45.537>web <00:02:45.692>into <00:02:45.848>this <00:02:46.003>incredible <00:02:46.159>dynamic <00:02:46.315>interactive

64
00:02:48.205 --> 00:02:50.455
<00:02:48.204>ecosystem, <00:02:48.484>but <00:02:48.765>not <00:02:49.045>without <00:02:49.325>a <00:02:49.605>cost.

65
00:02:51.225 --> 00:02:54.285
<00:02:51.225>You <00:02:51.458>see <00:02:51.691>JavaScript <00:02:51.924>blocks, <00:02:52.158>pages <00:02:52.391>from <00:02:52.625>rendering,

66
00:02:54.465 --> 00:02:56.725
<00:02:54.465>it <00:02:54.745>blocks <00:02:55.025>other <00:02:55.305>files <00:02:55.585>from <00:02:55.865>downloading,

67
00:02:56.985 --> 00:02:59.605
<00:02:56.985>and <00:02:57.125>it <00:02:57.265>can't <00:02:57.405>just <00:02:57.545>be <00:02:57.685>run <00:02:57.825>after <00:02:57.965>the <00:02:58.105>browser <00:02:58.245>receives <00:02:58.385>it.

68
00:03:00.185 --> 00:03:02.765
<00:03:00.185>Ady <00:03:00.325>Osmani, <00:03:00.465>a <00:03:00.605>developer <00:03:00.745>over <00:03:00.885>at <00:03:01.025>Google <00:03:01.165>wrote <00:03:01.305>an <00:03:01.445>article <00:03:01.585>a

69
00:03:02.765 --> 00:03:04.805
<00:03:02.765>few <00:03:02.940>years <00:03:03.114>ago <00:03:03.290>now <00:03:03.464>called <00:03:03.640>The <00:03:03.815>Cost <00:03:03.989>of <00:03:04.165>JavaScript.

70
00:03:04.945 --> 00:03:06.885
<00:03:04.945>Um, <00:03:05.144>I <00:03:05.345>think <00:03:05.545>he <00:03:05.745>wrote <00:03:05.945>a <00:03:06.144>follow <00:03:06.345>up

71
00:03:06.885 --> 00:03:07.965
<00:03:06.885>at <00:03:07.047>some <00:03:07.209>point <00:03:07.371>a <00:03:07.533>few <00:03:07.695>years <00:03:07.857>later.

72
00:03:08.065 --> 00:03:10.325
<00:03:08.065>But <00:03:08.298>everything <00:03:08.531>in <00:03:08.765>here <00:03:08.998>still <00:03:09.231>holds <00:03:09.465>up.

73
00:03:10.585 --> 00:03:15.285
<00:03:10.585>Uh, <00:03:10.740>JavaScript <00:03:10.896>is, <00:03:11.051>um, <00:03:11.207>really <00:03:11.362>slow <00:03:11.518>for <00:03:11.673>a <00:03:11.829>whole <00:03:11.985>slew

74
00:03:15.285 --> 00:03:16.325
<00:03:15.285>of <00:03:15.753>technical <00:03:16.221>reasons.

75
00:03:17.235 --> 00:03:19.205
<00:03:17.235>Once <00:03:17.515>the <00:03:17.795>browser <00:03:18.075>receives <00:03:18.355>a <00:03:18.635>JavaScript

76
00:03:19.205 --> 00:03:20.365
<00:03:19.204>file, <00:03:19.413>they <00:03:19.622>can't <00:03:19.831>just <00:03:20.040>use <00:03:20.249>it.

77
00:03:20.365 --> 00:03:22.845
<00:03:20.365>It <00:03:20.598>has <00:03:20.831>to <00:03:21.065>be <00:03:21.298>parsed, <00:03:21.531>compiled, <00:03:21.765>executed.

78
00:03:23.175 --> 00:03:24.645
<00:03:23.175>There <00:03:23.395>are <00:03:23.616>a <00:03:23.836>number <00:03:24.057>of <00:03:24.277>other <00:03:24.498>steps

79
00:03:25.155 --> 00:03:28.125
<00:03:25.155>that <00:03:25.388>the <00:03:25.621>rendering <00:03:25.855>engine <00:03:26.088>needs <00:03:26.321>to <00:03:26.555>complete

80
00:03:28.425 --> 00:03:32.405
<00:03:28.425>before <00:03:28.580>you <00:03:28.736>can <00:03:28.891>actually <00:03:29.047>use <00:03:29.202>that <00:03:29.358>file <00:03:29.513>as <00:03:29.669>an <00:03:29.825>experiment.

81
00:03:32.505 --> 00:03:36.405
<00:03:32.505>Uh, <00:03:32.660>two <00:03:32.816>years <00:03:32.971>ago, <00:03:33.127>my <00:03:33.282>friend <00:03:33.438>Zach <00:03:33.593>Leatherman, <00:03:33.749>um, <00:03:33.905>uh,

82
00:03:37.245 --> 00:03:40.725
<00:03:37.245>compared <00:03:37.525>a <00:03:37.805>8.5 <00:03:38.085>megabyte <00:03:38.365>HTML <00:03:38.645>file

83
00:03:41.035 --> 00:03:43.165
<00:03:41.035>that <00:03:41.210>contained <00:03:41.385>the <00:03:41.560>full <00:03:41.734>text <00:03:41.910>of <00:03:42.085>every <00:03:42.260>single <00:03:42.435>one

84
00:03:43.165 --> 00:03:47.085
<00:03:43.165>of <00:03:43.320>his <00:03:43.476>27,000 <00:03:43.631>tweets <00:03:43.787>against <00:03:43.942>a <00:03:44.098>client <00:03:44.253>rendered <00:03:44.409>React <00:03:44.565>site

85
00:03:47.395 --> 00:03:48.925
<00:03:47.395>with <00:03:47.670>exactly <00:03:47.945>one <00:03:48.221>tweet <00:03:48.496>in <00:03:48.772>it.

86
00:03:49.145 --> 00:03:51.645
<00:03:49.145>Um, <00:03:49.378>and <00:03:49.611>he <00:03:49.845>kind <00:03:50.078>of <00:03:50.311>challenged <00:03:50.545>people

87
00:03:51.645 --> 00:03:52.965
<00:03:51.645>to <00:03:51.843>guess <00:03:52.041>which <00:03:52.239>one <00:03:52.437>would <00:03:52.635>be <00:03:52.833>faster.

88
00:03:53.705 --> 00:03:55.845
<00:03:53.704>Um, <00:03:53.938>you <00:03:54.171>can <00:03:54.404>probably <00:03:54.638>already <00:03:54.871>tell <00:03:55.105>the

89
00:03:55.845 --> 00:03:56.885
<00:03:55.845>punchline <00:03:56.156>on <00:03:56.469>this <00:03:56.781>already.

90
00:03:57.065 --> 00:04:01.485
<00:03:57.065>Um, <00:03:57.220>the <00:03:57.376>8.5 <00:03:57.531>megabyte <00:03:57.687>HTML <00:03:57.842>file <00:03:57.998>was <00:03:58.153>about <00:03:58.309>200 <00:03:58.465>milliseconds

91
00:04:01.485 --> 00:04:05.045
<00:04:01.485>faster, <00:04:01.660>even <00:04:01.835>though <00:04:02.010>it <00:04:02.185>was <00:04:02.360>140 <00:04:02.535>times <00:04:02.710>the <00:04:02.885>size

92
00:04:05.385 --> 00:04:07.725
<00:04:05.385>of <00:04:05.540>the <00:04:05.696>React <00:04:05.851>app <00:04:06.007>like <00:04:06.162>that <00:04:06.318>is <00:04:06.473>how <00:04:06.629>much <00:04:06.785>worse

93
00:04:07.785 --> 00:04:11.805
<00:04:07.785>for <00:04:07.984>performance <00:04:08.185>JavaScript <00:04:08.385>is <00:04:08.585>compared <00:04:08.785>to <00:04:08.984>say <00:04:09.185>HTML.

94
00:04:12.935 --> 00:04:15.485
<00:04:12.935>JavaScript <00:04:13.135>is <00:04:13.335>also <00:04:13.535>a <00:04:13.735>fragile <00:04:13.935>house <00:04:14.135>of <00:04:14.335>carts.

95
00:04:15.755 --> 00:04:18.285
<00:04:15.755>It's <00:04:16.034>unreliable <00:04:16.315>and <00:04:16.594>it's <00:04:16.875>easily <00:04:17.154>broken.

96
00:04:19.065 --> 00:04:20.285
<00:04:19.065>If <00:04:19.284>you <00:04:19.504>fat <00:04:19.723>thumb <00:04:19.943>the <00:04:20.163>keyboard

97
00:04:20.625 --> 00:04:24.165
<00:04:20.625>and <00:04:20.780>type <00:04:20.936>DVI <00:04:21.091>instead <00:04:21.247>of <00:04:21.402>diviv, <00:04:21.558>the <00:04:21.713>browser <00:04:21.869>just <00:04:22.024>ignores

98
00:04:24.165 --> 00:04:26.245
<00:04:24.165>what <00:04:24.305>you <00:04:24.445>wrote, <00:04:24.585>treats <00:04:24.725>it <00:04:24.865>like <00:04:25.005>a <00:04:25.145>diviv <00:04:25.285>and <00:04:25.425>carries <00:04:25.565>on.

99
00:04:26.785 --> 00:04:29.325
<00:04:26.785>If <00:04:26.960>you <00:04:27.135>mistype <00:04:27.310>a <00:04:27.485>CSS <00:04:27.660>property, <00:04:27.835>uh, <00:04:28.010>for <00:04:28.185>example,

100
00:04:29.545 --> 00:04:31.045
<00:04:29.545>the <00:04:29.737>one <00:04:29.930>I <00:04:30.123>do <00:04:30.316>all <00:04:30.509>the <00:04:30.702>time, <00:04:30.895>uh,

101
00:04:31.045 --> 00:04:32.725
<00:04:31.045>because <00:04:31.325>I <00:04:31.605>work <00:04:31.885>with, <00:04:32.165>uh, <00:04:32.445>JavaScript

102
00:04:32.745 --> 00:04:35.885
<00:04:32.745>so <00:04:32.920>much <00:04:33.095>writing <00:04:33.270>BG <00:04:33.445>color <00:04:33.620>instead <00:04:33.795>of <00:04:33.970>background <00:04:34.145>color,

103
00:04:36.105 --> 00:04:37.485
<00:04:36.105>the <00:04:36.353>browser's <00:04:36.601>just <00:04:36.850>going <00:04:37.098>to <00:04:37.347>ignore

104
00:04:37.485 --> 00:04:39.085
<00:04:37.485>that <00:04:37.835>property <00:04:38.185>and <00:04:38.535>carry <00:04:38.885>on.

105
00:04:39.665 --> 00:04:42.965
<00:04:39.665>But <00:04:39.820>if <00:04:39.976>you <00:04:40.131>mistype <00:04:40.287>a <00:04:40.442>variable <00:04:40.598>name <00:04:40.753>in <00:04:40.909>JavaScript, <00:04:41.065>uh,

106
00:04:43.025 --> 00:04:47.245
<00:04:43.025>in <00:04:43.200>this <00:04:43.375>example, <00:04:43.549>maybe <00:04:43.724>you <00:04:43.900>misspell <00:04:44.075>NUM <00:04:44.250>as <00:04:44.424>NMU,

107
00:04:47.945 --> 00:04:50.005
<00:04:47.945>the <00:04:48.224>JavaScript <00:04:48.505>file <00:04:48.784>throws <00:04:49.065>an <00:04:49.344>error

108
00:04:50.265 --> 00:04:53.325
<00:04:50.265>and <00:04:50.465>stops <00:04:50.664>the <00:04:50.865>whole <00:04:51.065>thing <00:04:51.265>just <00:04:51.465>stops <00:04:51.664>working.

109
00:04:54.125 --> 00:04:57.365
<00:04:54.125>H-T-M-L-C-S-S <00:04:54.405>images, <00:04:54.685>they <00:04:54.965>all <00:04:55.245>fail <00:04:55.525>gracefully.

110
00:04:58.055 --> 00:04:59.285
<00:04:58.055>JavaScript <00:04:58.608>does <00:04:59.162>not,

111
00:05:00.155 --> 00:05:03.215
<00:05:00.155>but <00:05:00.294>we <00:05:00.434>use <00:05:00.575>it <00:05:00.715>for <00:05:00.854>everything <00:05:00.994>these <00:05:01.135>days <00:05:01.275>in <00:05:01.414>the <00:05:01.554>name

112
00:05:03.215 --> 00:05:05.935
<00:05:03.215>of <00:05:03.448>developer <00:05:03.681>experience, <00:05:03.914>we <00:05:04.148>have <00:05:04.381>decided <00:05:04.614>collectively

113
00:05:05.935 --> 00:05:08.735
<00:05:05.935>as <00:05:06.215>a <00:05:06.495>community <00:05:06.775>that <00:05:07.055>our <00:05:07.335>experience

114
00:05:08.815 --> 00:05:12.455
<00:05:08.815>as <00:05:08.990>developers <00:05:09.165>is <00:05:09.340>more <00:05:09.515>important <00:05:09.690>than <00:05:09.865>the <00:05:10.040>user <00:05:10.215>experience.

115
00:05:12.915 --> 00:05:15.735
<00:05:12.915>And <00:05:13.070>even <00:05:13.226>then <00:05:13.381>the <00:05:13.537>experience <00:05:13.692>is <00:05:13.848>better <00:05:14.003>for <00:05:14.159>some <00:05:14.315>developers,

116
00:05:16.035 --> 00:05:18.655
<00:05:16.035>but <00:05:16.210>it <00:05:16.385>creates <00:05:16.560>huge <00:05:16.735>barriers <00:05:16.910>of <00:05:17.085>entry <00:05:17.260>for <00:05:17.435>others.

117
00:05:19.195 --> 00:05:20.735
<00:05:19.195>Junior <00:05:19.657>developers <00:05:20.119>as <00:05:20.581>well

118
00:05:20.735 --> 00:05:22.175
<00:05:20.735>as <00:05:21.059>front <00:05:21.383>end <00:05:21.707>professionals <00:05:22.031>whose

119
00:05:22.175 --> 00:05:23.535
<00:05:22.175>experience <00:05:22.787>isn't <00:05:23.399>JavaScript.

120
00:05:23.635 --> 00:05:26.775
<00:05:23.635>Um, <00:05:23.868>people <00:05:24.101>who <00:05:24.335>specialize <00:05:24.568>in <00:05:24.801>say <00:05:25.034>CSS

121
00:05:27.035 --> 00:05:30.495
<00:05:27.035>or <00:05:27.210>accessibility, <00:05:27.385>they <00:05:27.560>have <00:05:27.735>to <00:05:27.910>fight <00:05:28.085>against <00:05:28.260>our <00:05:28.435>tooling

122
00:05:30.495 --> 00:05:31.895
<00:05:30.495>to <00:05:30.675>get <00:05:30.855>their <00:05:31.034>work <00:05:31.215>done <00:05:31.395>in <00:05:31.575>a <00:05:31.755>way

123
00:05:31.895 --> 00:05:33.655
<00:05:31.895>that <00:05:32.128>they <00:05:32.361>didn't <00:05:32.594>a <00:05:32.828>few <00:05:33.061>years <00:05:33.294>ago.

124
00:05:33.745 --> 00:05:36.935
<00:05:33.745>We've <00:05:33.920>created <00:05:34.095>these <00:05:34.270>incredible <00:05:34.445>barriers <00:05:34.620>that <00:05:34.795>keep <00:05:34.970>a <00:05:35.145>lot

125
00:05:36.935 --> 00:05:38.295
<00:05:36.935>of <00:05:37.179>people <00:05:37.424>out <00:05:37.669>of <00:05:37.914>the <00:05:38.159>process

126
00:05:38.475 --> 00:05:41.735
<00:05:38.475>or <00:05:38.591>make <00:05:38.708>it <00:05:38.825>a <00:05:38.941>lot <00:05:39.058>harder <00:05:39.175>for <00:05:39.291>them <00:05:39.408>to <00:05:39.525>do <00:05:39.641>their <00:05:39.758>work <00:05:39.875>just

127
00:05:41.735 --> 00:05:44.495
<00:05:41.735>so <00:05:41.875>things <00:05:42.015>can <00:05:42.155>be <00:05:42.295>a <00:05:42.435>little <00:05:42.575>bit <00:05:42.715>easier <00:05:42.855>for <00:05:42.995>us, <00:05:43.135>arguably.

128
00:05:45.655 --> 00:05:47.395
<00:05:45.655>So <00:05:45.934>why <00:05:46.215>did <00:05:46.494>we <00:05:46.775>do <00:05:47.054>this?

129
00:05:47.545 --> 00:05:49.955
<00:05:47.545>Like <00:05:47.661>how <00:05:47.778>did <00:05:47.895>we <00:05:48.011>end <00:05:48.128>up <00:05:48.245>in <00:05:48.361>this <00:05:48.478>place <00:05:48.595>in <00:05:48.711>the <00:05:48.828>first <00:05:48.945>place?

130
00:05:50.995 --> 00:05:52.875
<00:05:50.995>I <00:05:51.195>blame <00:05:51.395>what <00:05:51.595>I <00:05:51.795>call <00:05:51.995>the <00:05:52.195>hype <00:05:52.395>cycle,

131
00:05:53.055 --> 00:05:54.315
<00:05:53.055>and <00:05:53.217>it <00:05:53.379>goes <00:05:53.541>a <00:05:53.703>little <00:05:53.865>something <00:05:54.027>like <00:05:54.189>this.

132
00:05:54.575 --> 00:05:58.045
<00:05:54.575>Um, <00:05:54.808>someone <00:05:55.041>at, <00:05:55.275>um, <00:05:55.508>a <00:05:55.741>company <00:05:55.974>somewhere,

133
00:05:58.045 --> 00:06:00.565
<00:05:58.045>usually <00:05:58.325>a <00:05:58.605>big <00:05:58.885>famous <00:05:59.165>company, <00:05:59.445>Facebook

134
00:06:01.235 --> 00:06:04.805
<00:06:01.235>will <00:06:01.390>solve <00:06:01.546>a <00:06:01.701>a <00:06:01.857>very <00:06:02.012>real <00:06:02.168>problem <00:06:02.323>they <00:06:02.479>have <00:06:02.635>internally

135
00:06:04.985 --> 00:06:08.125
<00:06:04.985>by <00:06:05.160>creating <00:06:05.335>a <00:06:05.510>really <00:06:05.685>interesting <00:06:05.860>new <00:06:06.035>piece <00:06:06.210>of <00:06:06.385>technology.

136
00:06:08.985 --> 00:06:11.125
<00:06:08.985>And <00:06:09.160>then <00:06:09.335>they'll <00:06:09.510>evangelize <00:06:09.685>it, <00:06:09.860>they'll <00:06:10.035>go <00:06:10.210>to <00:06:10.385>conferences,

137
00:06:11.125 --> 00:06:13.725
<00:06:11.125>they'll <00:06:11.325>go <00:06:11.525>on <00:06:11.725>podcasts, <00:06:11.925>um, <00:06:12.125>they'll <00:06:12.325>create <00:06:12.525>videos

138
00:06:13.785 --> 00:06:16.165
<00:06:13.785>and <00:06:13.940>articles <00:06:14.096>kind <00:06:14.251>of <00:06:14.407>talking <00:06:14.562>about <00:06:14.718>this <00:06:14.873>cool <00:06:15.029>thing <00:06:15.185>they

139
00:06:16.165 --> 00:06:17.525
<00:06:16.165>built <00:06:16.471>and <00:06:16.777>how <00:06:17.082>it <00:06:17.389>works.

140
00:06:18.185 --> 00:06:21.685
<00:06:18.185>And <00:06:18.325>that <00:06:18.465>is <00:06:18.605>a <00:06:18.745>very <00:06:18.885>awesome, <00:06:19.025>very <00:06:19.165>appropriate <00:06:19.305>thing <00:06:19.445>to <00:06:19.585>do.

141
00:06:21.985 --> 00:06:23.805
<00:06:21.985>You <00:06:22.140>figure <00:06:22.296>out <00:06:22.451>a <00:06:22.607>new <00:06:22.762>way <00:06:22.918>to <00:06:23.073>solve <00:06:23.229>a <00:06:23.385>problem

142
00:06:24.025 --> 00:06:25.125
<00:06:24.025>and <00:06:24.190>you <00:06:24.354>let <00:06:24.520>people <00:06:24.685>know <00:06:24.850>about <00:06:25.015>it

143
00:06:25.145 --> 00:06:26.605
<00:06:25.145>so <00:06:25.332>people <00:06:25.520>can <00:06:25.708>take <00:06:25.895>the <00:06:26.083>parts <00:06:26.271>that <00:06:26.459>work

144
00:06:26.945 --> 00:06:28.685
<00:06:26.945>and <00:06:27.178>apply <00:06:27.411>it <00:06:27.645>in <00:06:27.878>their <00:06:28.111>own <00:06:28.344>jobs.

145
00:06:30.115 --> 00:06:34.005
<00:06:30.115>This <00:06:30.270>ends <00:06:30.426>up <00:06:30.581>fueling <00:06:30.737>this <00:06:30.892>thought <00:06:31.048>leadership <00:06:31.203>kind <00:06:31.359>of <00:06:31.515>craze

146
00:06:34.015 --> 00:06:37.085
<00:06:34.015>where, <00:06:34.142>um, <00:06:34.269>people <00:06:34.396>kind <00:06:34.524>of <00:06:34.651>say, <00:06:34.778>oh, <00:06:34.905>if <00:06:35.033>it's <00:06:35.160>good <00:06:35.287>enough <00:06:35.414>for

147
00:06:37.705 --> 00:06:40.325
<00:06:37.705>big <00:06:37.905>company, <00:06:38.104>you <00:06:38.305>know, <00:06:38.505>Facebook, <00:06:38.705>Twitter, <00:06:38.905>Google, <00:06:39.104>whatever,

148
00:06:40.915 --> 00:06:42.645
<00:06:40.915>must <00:06:41.195>be <00:06:41.475>good <00:06:41.755>enough <00:06:42.035>for <00:06:42.315>me.

149
00:06:42.945 --> 00:06:44.205
<00:06:42.945>Um, <00:06:43.171>this <00:06:43.398>is <00:06:43.625>the <00:06:43.852>new <00:06:44.079>hotness.

150
00:06:44.265 --> 00:06:46.765
<00:06:44.265>If <00:06:44.440>if <00:06:44.615>Twitter <00:06:44.789>uses <00:06:44.965>this, <00:06:45.140>everybody <00:06:45.315>has <00:06:45.490>to, <00:06:45.664>right?

151
00:06:46.945 --> 00:06:48.085
<00:06:46.945>And <00:06:47.201>so <00:06:47.457>everybody <00:06:47.714>rushes <00:06:47.971>out

152
00:06:48.265 --> 00:06:51.045
<00:06:48.265>and <00:06:48.405>writes <00:06:48.544>a <00:06:48.685>whole <00:06:48.825>bunch <00:06:48.965>of <00:06:49.104>articles <00:06:49.245>about <00:06:49.385>this <00:06:49.525>amazing <00:06:49.664>new

153
00:06:51.265 --> 00:06:53.445
<00:06:51.265>hot <00:06:51.498>technology <00:06:51.731>that <00:06:51.965>everybody <00:06:52.198>has <00:06:52.431>to <00:06:52.664>use

154
00:06:53.445 --> 00:06:54.925
<00:06:53.445>because <00:06:53.778>it's <00:06:54.111>super, <00:06:54.444>super <00:06:54.777>awesome

155
00:06:55.985 --> 00:06:58.005
<00:06:55.985>and <00:06:56.218>this <00:06:56.451>leads <00:06:56.685>to <00:06:56.918>a <00:06:57.151>bandwagon <00:06:57.385>effect.

156
00:06:58.065 --> 00:07:01.045
<00:06:58.065>Um, <00:06:58.205>I <00:06:58.344>think <00:06:58.485>in <00:06:58.625>large <00:06:58.765>part, <00:06:58.905>I <00:06:59.045>just, <00:06:59.185>I'm <00:06:59.325>speculating <00:06:59.465>here,

157
00:07:01.065 --> 00:07:03.565
<00:07:01.065>but <00:07:01.165>I <00:07:01.265>think <00:07:01.365>a <00:07:01.465>lot <00:07:01.565>of <00:07:01.665>this <00:07:01.765>is <00:07:01.865>driven <00:07:01.965>by <00:07:02.065>the <00:07:02.165>fact <00:07:02.265>that <00:07:02.365>so <00:07:02.465>much

158
00:07:03.565 --> 00:07:04.645
<00:07:03.565>of <00:07:03.808>the <00:07:04.051>front <00:07:04.294>end <00:07:04.537>community,

159
00:07:04.665 --> 00:07:06.645
<00:07:04.665>myself <00:07:05.131>included, <00:07:05.598>are <00:07:06.065>self-taught.

160
00:07:06.785 --> 00:07:10.005
<00:07:06.785>And <00:07:06.985>so <00:07:07.185>there's <00:07:07.385>a <00:07:07.585>combination <00:07:07.785>of <00:07:07.985>fomo, <00:07:08.185>fear

161
00:07:10.005 --> 00:07:13.405
<00:07:10.005>of <00:07:10.160>missing <00:07:10.316>out <00:07:10.471>happening, <00:07:10.627>um, <00:07:10.782>along <00:07:10.938>with <00:07:11.093>this <00:07:11.249>sense <00:07:11.405>that,

162
00:07:13.465 --> 00:07:16.365
<00:07:13.465>um, <00:07:13.640>you <00:07:13.815>know, <00:07:13.989>I <00:07:14.164>don't <00:07:14.340>have <00:07:14.515>a <00:07:14.690>CS <00:07:14.864>degree.

163
00:07:16.665 --> 00:07:18.485
<00:07:16.665>So <00:07:16.865>if <00:07:17.065>all <00:07:17.265>these <00:07:17.465>other <00:07:17.665>really <00:07:17.865>smart <00:07:18.065>people,

164
00:07:18.495 --> 00:07:20.845
<00:07:18.495>these <00:07:18.622>big <00:07:18.749>companies <00:07:18.876>who <00:07:19.004>do, <00:07:19.131>were <00:07:19.258>saying <00:07:19.385>this <00:07:19.513>is <00:07:19.640>a <00:07:19.767>good <00:07:19.895>idea,

165
00:07:21.305 --> 00:07:22.805
<00:07:21.305>it <00:07:21.575>must <00:07:21.845>be, <00:07:22.115>and <00:07:22.385>for <00:07:22.655>them

166
00:07:22.865 --> 00:07:25.965
<00:07:22.865>and <00:07:23.020>the <00:07:23.176>types <00:07:23.331>of <00:07:23.487>things <00:07:23.642>they <00:07:23.798>build, <00:07:23.953>it <00:07:24.109>probably <00:07:24.265>is,

167
00:07:26.345 --> 00:07:29.565
<00:07:26.345>but <00:07:26.500>for <00:07:26.656>you <00:07:26.811>and <00:07:26.967>your <00:07:27.122>application, <00:07:27.278>it <00:07:27.433>might <00:07:27.589>not <00:07:27.745>be.

168
00:07:30.305 --> 00:07:32.925
<00:07:30.305>And <00:07:30.460>because <00:07:30.616>you <00:07:30.771>start <00:07:30.927>to <00:07:31.082>see <00:07:31.238>developers <00:07:31.393>talking <00:07:31.549>about <00:07:31.705>this

169
00:07:32.925 --> 00:07:35.365
<00:07:32.925>and <00:07:33.100>using <00:07:33.275>it, <00:07:33.450>companies <00:07:33.625>start <00:07:33.800>going, <00:07:33.975>oh <00:07:34.150>my <00:07:34.325>God,

170
00:07:35.825 --> 00:07:37.685
<00:07:35.825>all <00:07:35.965>these <00:07:36.104>people <00:07:36.245>are <00:07:36.385>saying <00:07:36.525>we <00:07:36.664>need <00:07:36.805>to <00:07:36.945>use <00:07:37.085>this <00:07:37.224>thing.

171
00:07:37.685 --> 00:07:38.565
<00:07:37.685>If <00:07:37.843>we <00:07:38.001>wanna <00:07:38.160>get <00:07:38.318>the <00:07:38.477>best

172
00:07:38.565 --> 00:07:40.085
<00:07:38.565>developers, <00:07:38.793>we <00:07:39.021>have <00:07:39.248>to <00:07:39.477>use <00:07:39.705>this <00:07:39.933>thing.

173
00:07:40.085 --> 00:07:43.245
<00:07:40.085>So <00:07:40.240>you <00:07:40.396>start <00:07:40.551>seeing <00:07:40.707>job <00:07:40.862>descriptions <00:07:41.018>that <00:07:41.173>say, <00:07:41.329>we're <00:07:41.484>looking

174
00:07:43.245 --> 00:07:46.645
<00:07:43.245>for <00:07:43.420>people <00:07:43.595>who <00:07:43.770>have <00:07:43.945>experience <00:07:44.120>in <00:07:44.295>library <00:07:44.470>tool <00:07:44.645>framework.

175
00:07:47.385 --> 00:07:51.085
<00:07:47.385>And <00:07:47.560>it <00:07:47.735>creates <00:07:47.909>this <00:07:48.085>kind <00:07:48.260>of <00:07:48.435>ongoing <00:07:48.610>cycle <00:07:48.784>where

176
00:07:51.825 --> 00:07:53.765
<00:07:51.825>seeing <00:07:52.058>more <00:07:52.291>job <00:07:52.525>descriptions, <00:07:52.758>looking <00:07:52.991>for <00:07:53.224>people

177
00:07:53.765 --> 00:07:55.485
<00:07:53.765>with <00:07:54.044>these <00:07:54.325>skills <00:07:54.604>reinforces <00:07:54.885>the <00:07:55.164>idea

178
00:07:55.485 --> 00:07:57.165
<00:07:55.485>that <00:07:55.660>this <00:07:55.835>is <00:07:56.010>the <00:07:56.185>right <00:07:56.360>way <00:07:56.535>to <00:07:56.710>do <00:07:56.885>things,

179
00:07:57.165 --> 00:07:58.205
<00:07:57.165>which <00:07:57.399>creates <00:07:57.633>a <00:07:57.867>whole <00:07:58.101>bunch

180
00:07:58.205 --> 00:08:00.565
<00:07:58.205>of <00:07:58.438>new <00:07:58.671>thought <00:07:58.905>leadership <00:07:59.138>articles, <00:07:59.371>which <00:07:59.604>kind

181
00:08:00.565 --> 00:08:02.325
<00:08:00.565>of <00:08:00.844>perpetuates <00:08:01.125>the <00:08:01.405>cycle <00:08:01.685>until <00:08:01.965>eventually

182
00:08:02.865 --> 00:08:05.965
<00:08:02.865>people <00:08:03.020>discover <00:08:03.176>a <00:08:03.331>whole <00:08:03.487>bunch <00:08:03.642>of <00:08:03.798>problems <00:08:03.953>with <00:08:04.109>that <00:08:04.265>tool

183
00:08:06.185 --> 00:08:08.045
<00:08:06.185>and <00:08:06.325>they <00:08:06.465>come <00:08:06.605>up <00:08:06.745>with <00:08:06.885>a <00:08:07.025>new <00:08:07.165>way <00:08:07.305>to <00:08:07.445>solve <00:08:07.585>those.

184
00:08:08.625 --> 00:08:10.885
<00:08:08.625>And <00:08:08.825>the <00:08:09.025>hype <00:08:09.225>cycle <00:08:09.425>starts <00:08:09.625>all <00:08:09.825>over <00:08:10.025>again

185
00:08:11.035 --> 00:08:12.805
<00:08:11.035>with <00:08:11.315>the <00:08:11.595>next <00:08:11.875>piece <00:08:12.155>of <00:08:12.435>technology.

186
00:08:13.025 --> 00:08:17.725
<00:08:13.025>Um, <00:08:13.200>and <00:08:13.375>we <00:08:13.549>saw <00:08:13.724>this <00:08:13.900>with <00:08:14.075>Angular <00:08:14.250>interview <00:08:14.424>Interreact.

187
00:08:17.945 --> 00:08:21.005
<00:08:17.945>Um, <00:08:18.085>we've <00:08:18.224>seen <00:08:18.365>this <00:08:18.505>with <00:08:18.645>some <00:08:18.784>of <00:08:18.925>the <00:08:19.065>bundlers <00:08:19.205>and <00:08:19.344>compilers.

188
00:08:21.145 --> 00:08:22.725
<00:08:21.145>Um, <00:08:21.378>I <00:08:21.611>dunno <00:08:21.844>if <00:08:22.078>everybody <00:08:22.311>remembers <00:08:22.544>Grunt,

189
00:08:22.825 --> 00:08:26.565
<00:08:22.825>and <00:08:22.941>then <00:08:23.058>it <00:08:23.175>was <00:08:23.291>Gulp <00:08:23.408>and <00:08:23.525>now <00:08:23.641>it's <00:08:23.758>just <00:08:23.875>using <00:08:23.991>raw <00:08:24.108>NPM <00:08:24.224>scripts

190
00:08:26.565 --> 00:08:27.725
<00:08:26.565>as <00:08:26.773>kind <00:08:26.982>of <00:08:27.191>the <00:08:27.400>new <00:08:27.609>hotness.

191
00:08:28.305 --> 00:08:33.165
<00:08:28.305>Um, <00:08:28.445>you <00:08:28.585>know, <00:08:28.725>we've <00:08:28.865>seen <00:08:29.005>this <00:08:29.145>with, <00:08:29.285>um, <00:08:29.425>with <00:08:29.565>routers, <00:08:29.705>uh,

192
00:08:33.295 --> 00:08:36.485
<00:08:33.294>we've <00:08:33.469>seen <00:08:33.645>this <00:08:33.819>with <00:08:33.995>JavaScript, <00:08:34.169>bundlers, <00:08:34.344>um, <00:08:34.520>you <00:08:34.694>know,

193
00:08:36.485 --> 00:08:38.245
<00:08:36.485>some <00:08:36.685>of <00:08:36.885>them <00:08:37.085>are <00:08:37.284>still <00:08:37.485>around, <00:08:37.685>like <00:08:37.885>Webpac

194
00:08:38.345 --> 00:08:39.365
<00:08:38.345>is <00:08:38.498>still <00:08:38.651>kind <00:08:38.804>of <00:08:38.957>a <00:08:39.110>big <00:08:39.263>thing.

195
00:08:39.425 --> 00:08:42.525
<00:08:39.424>But, <00:08:39.625>uh, <00:08:39.824>you <00:08:40.025>know, <00:08:40.224>uh, <00:08:40.424>Bauer <00:08:40.625>for <00:08:40.824>example,

196
00:08:42.525 --> 00:08:44.085
<00:08:42.525>nobody <00:08:42.804>really <00:08:43.084>talks <00:08:43.365>about <00:08:43.645>that <00:08:43.924>anymore.

197
00:08:44.465 --> 00:08:47.045
<00:08:44.465>Um, <00:08:44.745>uh, <00:08:45.025>rollup <00:08:45.305>was <00:08:45.585>really <00:08:45.865>popular.

198
00:08:47.265 --> 00:08:48.525
<00:08:47.265>Now <00:08:47.427>I'm <00:08:47.589>seeing <00:08:47.751>a <00:08:47.913>lot <00:08:48.074>of <00:08:48.237>people <00:08:48.399>kind

199
00:08:48.525 --> 00:08:50.485
<00:08:48.525>of <00:08:48.758>pushing <00:08:48.991>ES <00:08:49.225>build <00:08:49.458>because <00:08:49.691>it's <00:08:49.925>faster.

200
00:08:50.665 --> 00:08:52.125
<00:08:50.665>And <00:08:50.852>that <00:08:51.040>doesn't <00:08:51.228>mean <00:08:51.415>these, <00:08:51.603>these <00:08:51.791>old <00:08:51.979>things

201
00:08:52.125 --> 00:08:53.165
<00:08:52.125>necessarily <00:08:52.593>go <00:08:53.060>away.

202
00:08:53.785 --> 00:08:55.365
<00:08:53.785>Um, <00:08:54.064>it's <00:08:54.344>not <00:08:54.625>all <00:08:54.905>bad <00:08:55.185>though.

203
00:08:55.705 --> 00:08:59.045
<00:08:55.705>In <00:08:55.860>many <00:08:56.016>ways <00:08:56.171>these <00:08:56.327>tools <00:08:56.482>are <00:08:56.638>experiments <00:08:56.793>that <00:08:56.949>we're <00:08:57.105>running

204
00:08:59.045 --> 00:09:00.085
<00:08:59.045>with <00:08:59.513>real <00:08:59.981>projects

205
00:09:00.085 --> 00:09:03.085
<00:09:00.085>and <00:09:00.225>they <00:09:00.365>allow <00:09:00.505>us <00:09:00.645>to <00:09:00.785>figure <00:09:00.925>out <00:09:01.065>what <00:09:01.205>works, <00:09:01.345>what <00:09:01.485>doesn't.

206
00:09:03.185 --> 00:09:05.005
<00:09:03.185>And <00:09:03.418>the <00:09:03.651>stuff <00:09:03.885>that <00:09:04.118>works <00:09:04.351>really <00:09:04.584>well,

207
00:09:05.025 --> 00:09:07.685
<00:09:05.025>it <00:09:05.199>eventually <00:09:05.375>finds <00:09:05.550>its <00:09:05.725>way <00:09:05.900>into <00:09:06.074>the <00:09:06.250>web <00:09:06.425>platform.

208
00:09:07.995 --> 00:09:09.765
<00:09:07.995>This <00:09:08.170>is <00:09:08.345>not <00:09:08.520>the <00:09:08.695>first <00:09:08.870>time <00:09:09.045>we've <00:09:09.220>seen <00:09:09.395>this.

209
00:09:10.175 --> 00:09:12.885
<00:09:10.175>About <00:09:10.330>a <00:09:10.486>decade <00:09:10.641>ago <00:09:10.797>we <00:09:10.952>saw <00:09:11.108>this <00:09:11.263>happen <00:09:11.419>with <00:09:11.574>jQuery.

210
00:09:13.585 --> 00:09:16.925
<00:09:13.585>It <00:09:13.725>solved <00:09:13.865>a <00:09:14.005>lot <00:09:14.145>of <00:09:14.285>really <00:09:14.425>big <00:09:14.565>pain <00:09:14.705>points <00:09:14.845>for <00:09:14.985>developers.

211
00:09:17.465 --> 00:09:18.565
<00:09:17.465>And <00:09:17.712>today, <00:09:17.960>so <00:09:18.207>much <00:09:18.455>of

212
00:09:18.565 --> 00:09:21.645
<00:09:18.565>what <00:09:18.720>made <00:09:18.876>jQuery <00:09:19.031>great <00:09:19.187>is <00:09:19.342>natively <00:09:19.498>supported <00:09:19.653>in <00:09:19.809>the <00:09:19.965>browser.

213
00:09:22.185 --> 00:09:25.645
<00:09:22.185>Um, <00:09:22.312>if <00:09:22.439>you <00:09:22.566>are <00:09:22.694>below <00:09:22.821>a <00:09:22.948>certain <00:09:23.075>age, <00:09:23.203>you <00:09:23.330>may <00:09:23.457>not <00:09:23.584>remember

214
00:09:25.755 --> 00:09:28.525
<00:09:25.755>that <00:09:25.871>it <00:09:25.988>used <00:09:26.105>to <00:09:26.221>be <00:09:26.338>really <00:09:26.455>hard <00:09:26.571>to <00:09:26.688>get <00:09:26.805>elements <00:09:26.921>in <00:09:27.038>the <00:09:27.155>dom

215
00:09:28.525 --> 00:09:29.925
<00:09:28.525>by <00:09:28.776>something <00:09:29.029>other <00:09:29.281>than <00:09:29.533>an <00:09:29.785>id.

216
00:09:29.925 --> 00:09:30.965
<00:09:29.925>Like <00:09:30.112>if <00:09:30.299>you <00:09:30.486>wanted <00:09:30.673>to <00:09:30.861>select

217
00:09:31.025 --> 00:09:32.805
<00:09:31.025>by <00:09:31.258>a <00:09:31.491>class <00:09:31.725>that <00:09:31.958>was <00:09:32.191>really <00:09:32.425>hard.

218
00:09:33.345 --> 00:09:35.605
<00:09:33.345>If <00:09:33.500>you <00:09:33.656>wanted <00:09:33.811>to <00:09:33.967>toggle <00:09:34.122>and <00:09:34.278>add <00:09:34.433>classes <00:09:34.589>or <00:09:34.745>get

219
00:09:35.605 --> 00:09:38.965
<00:09:35.605>and <00:09:35.780>set <00:09:35.955>custom <00:09:36.130>attributes, <00:09:36.305>listen <00:09:36.480>to <00:09:36.655>events <00:09:36.830>on <00:09:37.005>elements,

220
00:09:38.965 --> 00:09:40.845
<00:09:38.965>that <00:09:39.165>stuff <00:09:39.365>was <00:09:39.565>all <00:09:39.765>really, <00:09:39.965>really, <00:09:40.165>really <00:09:40.365>hard.

221
00:09:41.505 --> 00:09:43.845
<00:09:41.505>jQuery <00:09:41.660>made <00:09:41.816>it <00:09:41.971>easy, <00:09:42.127>and <00:09:42.282>then <00:09:42.438>ES <00:09:42.593>five <00:09:42.749>came <00:09:42.905>out

222
00:09:43.845 --> 00:09:45.965
<00:09:43.845>and <00:09:43.985>took <00:09:44.125>a <00:09:44.265>whole <00:09:44.405>bunch <00:09:44.545>of <00:09:44.685>the <00:09:44.825>best <00:09:44.965>stuff <00:09:45.105>from <00:09:45.245>jQuery.

223
00:09:47.495 --> 00:09:49.755
<00:09:47.495>The <00:09:47.670>problem <00:09:47.845>is <00:09:48.020>that <00:09:48.195>like <00:09:48.370>plastic <00:09:48.545>in <00:09:48.720>the <00:09:48.895>ocean,

224
00:09:49.885 --> 00:09:51.955
<00:09:49.885>these <00:09:50.118>tools <00:09:50.351>tend <00:09:50.585>to <00:09:50.818>stick <00:09:51.051>around <00:09:51.285>forever,

225
00:09:52.505 --> 00:09:55.235
<00:09:52.505>long <00:09:52.705>past <00:09:52.905>when <00:09:53.105>they're <00:09:53.305>still <00:09:53.505>needed <00:09:53.705>or <00:09:53.905>useful.

226
00:09:55.965 --> 00:09:58.875
<00:09:55.965>Again, <00:09:56.105>we <00:09:56.245>see <00:09:56.385>this <00:09:56.525>with <00:09:56.665>jQuery, <00:09:56.805>even <00:09:56.945>though <00:09:57.085>so <00:09:57.225>much <00:09:57.365>of

227
00:09:58.875 --> 00:10:01.555
<00:09:58.875>what <00:09:59.030>made <00:09:59.186>it <00:09:59.341>great <00:09:59.497>is <00:09:59.652>natively <00:09:59.808>supported <00:09:59.963>in <00:10:00.119>the <00:10:00.275>platform,

228
00:10:02.185 --> 00:10:04.475
<00:10:02.185>it's <00:10:02.385>still <00:10:02.584>very <00:10:02.785>dominant <00:10:02.984>on <00:10:03.185>the <00:10:03.385>web, <00:10:03.584>um,

229
00:10:04.495 --> 00:10:07.835
<00:10:04.495>far <00:10:04.650>more <00:10:04.806>popular <00:10:04.961>than <00:10:05.117>modern <00:10:05.272>libraries <00:10:05.428>are, <00:10:05.583>um, <00:10:05.739>even <00:10:05.895>though

230
00:10:08.855 --> 00:10:10.915
<00:10:08.855>it <00:10:09.055>doesn't <00:10:09.255>serve <00:10:09.455>that <00:10:09.655>much <00:10:09.855>of <00:10:10.055>a <00:10:10.255>purpose

231
00:10:11.015 --> 00:10:12.355
<00:10:11.015>for <00:10:11.256>a <00:10:11.497>lot <00:10:11.738>of <00:10:11.979>projects <00:10:12.221>today.

232
00:10:13.915 --> 00:10:16.455
<00:10:13.915>So <00:10:14.042>with <00:10:14.169>that <00:10:14.296>in <00:10:14.424>mind, <00:10:14.551>what <00:10:14.678>are <00:10:14.805>some <00:10:14.933>things <00:10:15.060>we <00:10:15.187>can <00:10:15.314>do

233
00:10:16.455 --> 00:10:17.935
<00:10:16.455>to <00:10:16.788>maybe <00:10:17.121>reverse <00:10:17.454>this <00:10:17.786>trend

234
00:10:17.935 --> 00:10:20.655
<00:10:17.935>or <00:10:18.062>to <00:10:18.189>kind <00:10:18.316>of <00:10:18.444>get <00:10:18.571>past <00:10:18.698>the <00:10:18.825>point <00:10:18.953>where <00:10:19.080>we <00:10:19.207>are <00:10:19.334>now?

235
00:10:21.355 --> 00:10:24.935
<00:10:21.355>The <00:10:21.510>Lean <00:10:21.666>Web <00:10:21.821>is <00:10:21.977>a <00:10:22.132>pushback <00:10:22.288>against <00:10:22.443>this <00:10:22.599>hype <00:10:22.755>cycle.

236
00:10:25.325 --> 00:10:28.175
<00:10:25.325>It's <00:10:25.500>about <00:10:25.675>using <00:10:25.850>tools <00:10:26.025>when <00:10:26.200>they <00:10:26.375>solve <00:10:26.550>actual <00:10:26.725>problems

237
00:10:28.355 --> 00:10:30.455
<00:10:28.355>and <00:10:28.555>not <00:10:28.755>just <00:10:28.955>because <00:10:29.155>they're <00:10:29.355>the <00:10:29.555>new <00:10:29.755>hotness

238
00:10:30.475 --> 00:10:32.055
<00:10:30.475>or <00:10:30.825>what <00:10:31.175>everyone <00:10:31.525>else <00:10:31.875>uses.

239
00:10:32.725 --> 00:10:34.775
<00:10:32.725>It's <00:10:32.880>an <00:10:33.036>approach <00:10:33.191>that <00:10:33.347>puts <00:10:33.502>the <00:10:33.658>needs <00:10:33.813>of <00:10:33.969>our <00:10:34.125>users

240
00:10:35.445 --> 00:10:37.095
<00:10:35.445>over <00:10:35.911>us <00:10:36.378>as <00:10:36.845>developers.

241
00:10:37.095 --> 00:10:39.455
<00:10:37.095>Even <00:10:37.250>though, <00:10:37.406>to <00:10:37.561>be <00:10:37.717>honest, <00:10:37.872>this <00:10:38.028>is <00:10:38.183>a <00:10:38.339>false <00:10:38.495>dichotomy.

242
00:10:39.875 --> 00:10:41.215
<00:10:39.875>You <00:10:40.176>don't <00:10:40.478>have <00:10:40.779>to <00:10:41.081>choose.

243
00:10:41.645 --> 00:10:44.295
<00:10:41.645>It's <00:10:41.800>very <00:10:41.956>popular <00:10:42.111>today <00:10:42.267>to <00:10:42.422>kind <00:10:42.578>of <00:10:42.733>choose <00:10:42.889>the <00:10:43.045>option

244
00:10:44.295 --> 00:10:46.495
<00:10:44.295>that's <00:10:44.469>better <00:10:44.645>for <00:10:44.819>the <00:10:44.995>developer <00:10:45.170>with <00:10:45.344>the <00:10:45.520>idea <00:10:45.694>that,

245
00:10:47.035 --> 00:10:49.255
<00:10:47.035>you <00:10:47.209>know, <00:10:47.385>that'll <00:10:47.560>somehow <00:10:47.735>trickle <00:10:47.910>down <00:10:48.084>to <00:10:48.260>the <00:10:48.435>user.

246
00:10:49.515 --> 00:10:51.655
<00:10:49.515>Um, <00:10:49.689>but <00:10:49.865>we <00:10:50.040>don't <00:10:50.215>have <00:10:50.390>to <00:10:50.564>make <00:10:50.740>that <00:10:50.915>choice.

247
00:10:51.655 --> 00:10:52.895
<00:10:51.655>There <00:10:51.794>are <00:10:51.934>a <00:10:52.073>lot <00:10:52.213>of <00:10:52.352>things <00:10:52.492>we <00:10:52.631>can <00:10:52.771>do

248
00:10:52.895 --> 00:10:55.095
<00:10:52.895>that <00:10:53.128>give <00:10:53.361>us <00:10:53.595>the <00:10:53.828>experience <00:10:54.061>we <00:10:54.295>want

249
00:10:55.355 --> 00:10:56.655
<00:10:55.355>and <00:10:55.647>result <00:10:55.940>in <00:10:56.232>something <00:10:56.525>better

250
00:10:56.755 --> 00:10:58.375
<00:10:56.755>for <00:10:56.955>our <00:10:57.155>users <00:10:57.355>than <00:10:57.555>what <00:10:57.755>we <00:10:57.955>have <00:10:58.155>today.

251
00:10:58.995 --> 00:11:00.895
<00:10:58.995>So <00:10:59.170>let's <00:10:59.345>take <00:10:59.520>a <00:10:59.695>look <00:10:59.870>at <00:11:00.045>some <00:11:00.220>lean <00:11:00.395>web

252
00:11:01.135 --> 00:11:02.615
<00:11:01.135>approaches <00:11:01.579>to <00:11:02.023>web <00:11:02.467>development.

253
00:11:04.195 --> 00:11:06.695
<00:11:04.195>Um, <00:11:04.370>I <00:11:04.545>wanna <00:11:04.720>start <00:11:04.895>by <00:11:05.070>talking <00:11:05.245>about, <00:11:05.420>uh, <00:11:05.595>a,

254
00:11:07.015 --> 00:11:09.895
<00:11:07.015>a <00:11:07.170>very <00:11:07.326>popular <00:11:07.481>trend <00:11:07.637>that <00:11:07.792>is <00:11:07.948>kind <00:11:08.103>of <00:11:08.259>the <00:11:08.415>antithesis

255
00:11:09.895 --> 00:11:11.495
<00:11:09.895>of <00:11:10.069>the <00:11:10.245>Lean <00:11:10.420>web, <00:11:10.595>and <00:11:10.770>that's <00:11:10.944>single <00:11:11.120>page <00:11:11.295>apps.

256
00:11:12.205 --> 00:11:15.615
<00:11:12.205>They <00:11:12.405>are <00:11:12.605>supposed <00:11:12.805>to <00:11:13.005>deliver <00:11:13.205>native <00:11:13.405>app-like <00:11:13.605>performance

257
00:11:15.755 --> 00:11:17.535
<00:11:15.755>and <00:11:16.105>virtually <00:11:16.455>instant <00:11:16.805>page <00:11:17.155>loads.

258
00:11:17.595 --> 00:11:18.975
<00:11:17.595>And <00:11:17.843>in <00:11:18.091>many <00:11:18.340>ways <00:11:18.588>they <00:11:18.837>do

259
00:11:19.025 --> 00:11:21.895
<00:11:19.025>after <00:11:19.199>you <00:11:19.375>wait <00:11:19.550>the <00:11:19.725>like <00:11:19.900>one <00:11:20.074>to <00:11:20.250>10 <00:11:20.425>seconds

260
00:11:22.155 --> 00:11:25.215
<00:11:22.155>for <00:11:22.388>the <00:11:22.621>initial <00:11:22.855>HTML <00:11:23.088>payload <00:11:23.321>to <00:11:23.555>download.

261
00:11:25.235 --> 00:11:29.215
<00:11:25.235>And <00:11:25.390>the <00:11:25.546>thinking <00:11:25.701>here <00:11:25.857>is <00:11:26.012>page <00:11:26.168>reloads <00:11:26.323>are <00:11:26.479>very <00:11:26.635>expensive.

262
00:11:29.355 --> 00:11:31.575
<00:11:29.355>Uh, <00:11:29.530>especially <00:11:29.705>if <00:11:29.880>you've <00:11:30.055>got <00:11:30.230>a <00:11:30.405>lot <00:11:30.580>of <00:11:30.755>JavaScript

263
00:11:31.575 --> 00:11:34.175
<00:11:31.575>and <00:11:31.750>CSS <00:11:31.925>coming <00:11:32.100>down <00:11:32.275>the <00:11:32.450>wire, <00:11:32.625>um, <00:11:32.800>you <00:11:32.975>know,

264
00:11:34.175 --> 00:11:36.935
<00:11:34.175>you're <00:11:34.349>just <00:11:34.525>waiting <00:11:34.699>for <00:11:34.875>that <00:11:35.050>page <00:11:35.224>to <00:11:35.400>reload <00:11:35.574>sucks.

265
00:11:37.355 --> 00:11:41.055
<00:11:37.355>And <00:11:37.462>if <00:11:37.570>you <00:11:37.678>have <00:11:37.785>everything <00:11:37.893>you <00:11:38.001>need <00:11:38.108>in <00:11:38.216>one <00:11:38.324>H <00:11:38.431>TM <00:11:38.539>L <00:11:38.647>file, <00:11:38.755>then

266
00:11:41.345 --> 00:11:43.535
<00:11:41.345>after <00:11:41.625>that <00:11:41.905>initial <00:11:42.185>load, <00:11:42.465>every <00:11:42.745>click,

267
00:11:43.535 --> 00:11:45.695
<00:11:43.535>every <00:11:43.885>interaction <00:11:44.235>can <00:11:44.584>happen <00:11:44.935>instantaneously,

268
00:11:45.965 --> 00:11:48.295
<00:11:45.965>just <00:11:46.245>like <00:11:46.525>a <00:11:46.805>native <00:11:47.085>application <00:11:47.365>might.

269
00:11:49.715 --> 00:11:52.755
<00:11:49.715>But <00:11:49.915>this <00:11:50.115>also <00:11:50.315>breaks <00:11:50.515>a <00:11:50.715>bunch <00:11:50.915>of <00:11:51.115>stuff

270
00:11:52.755 --> 00:11:55.245
<00:11:52.755>that <00:11:52.882>the <00:11:53.009>browser <00:11:53.136>just <00:11:53.264>gives <00:11:53.391>you <00:11:53.518>for <00:11:53.645>free <00:11:53.773>out <00:11:53.900>of <00:11:54.027>the <00:11:54.155>box,

271
00:11:55.255 --> 00:11:58.365
<00:11:55.255>which <00:11:55.430>you <00:11:55.605>then <00:11:55.780>need <00:11:55.955>to <00:11:56.130>recreate <00:11:56.305>in <00:11:56.480>JavaScript, <00:11:56.655>which

272
00:11:58.365 --> 00:12:01.765
<00:11:58.365>as <00:11:58.540>we've <00:11:58.715>already <00:11:58.890>learned, <00:11:59.065>is <00:11:59.240>really <00:11:59.415>terrible <00:11:59.590>for <00:11:59.765>performance

273
00:12:01.945 --> 00:12:05.325
<00:12:01.945>and <00:12:02.100>for <00:12:02.256>just <00:12:02.411>the <00:12:02.567>front <00:12:02.722>end <00:12:02.878>in <00:12:03.033>general, <00:12:03.189>you <00:12:03.345>need

274
00:12:05.325 --> 00:12:07.285
<00:12:05.325>to <00:12:05.525>intercept <00:12:05.725>clicks <00:12:05.925>on <00:12:06.125>links <00:12:06.325>and <00:12:06.525>suppress <00:12:06.725>them.

275
00:12:07.585 --> 00:12:10.645
<00:12:07.585>You <00:12:07.701>need <00:12:07.818>to <00:12:07.935>figure <00:12:08.051>out <00:12:08.168>which <00:12:08.285>HTML <00:12:08.401>to <00:12:08.518>show <00:12:08.635>based <00:12:08.751>on <00:12:08.868>the <00:12:08.985>URL

276
00:12:11.225 --> 00:12:14.005
<00:12:11.225>update <00:12:11.365>the <00:12:11.505>URL <00:12:11.645>in <00:12:11.785>the <00:12:11.925>address <00:12:12.065>bar <00:12:12.205>without <00:12:12.345>reloading <00:12:12.485>the <00:12:12.625>page

277
00:12:14.305 --> 00:12:16.245
<00:12:14.305>handle <00:12:14.584>forward <00:12:14.864>and <00:12:15.145>back <00:12:15.425>button <00:12:15.704>clicks,

278
00:12:16.305 --> 00:12:19.485
<00:12:16.305>update <00:12:16.460>the <00:12:16.616>document <00:12:16.771>title <00:12:16.927>shift <00:12:17.082>focus <00:12:17.238>back <00:12:17.393>to <00:12:17.549>the <00:12:17.704>document,

279
00:12:19.485 --> 00:12:22.365
<00:12:19.485>something <00:12:19.718>that <00:12:19.951>many <00:12:20.185>popular <00:12:20.418>routers <00:12:20.651>completely <00:12:20.885>miss,

280
00:12:22.365 --> 00:12:24.485
<00:12:22.365>which <00:12:22.565>causes <00:12:22.765>a <00:12:22.965>whole <00:12:23.165>slew <00:12:23.365>of <00:12:23.565>accessibility <00:12:23.765>issues.

281
00:12:25.025 --> 00:12:26.125
<00:12:25.025>And <00:12:25.223>again, <00:12:25.420>these <00:12:25.619>are <00:12:25.817>all <00:12:26.015>things

282
00:12:26.125 --> 00:12:28.165
<00:12:26.125>that <00:12:26.280>the <00:12:26.436>browser <00:12:26.591>just <00:12:26.747>gives <00:12:26.902>you <00:12:27.058>out <00:12:27.213>of <00:12:27.369>the <00:12:27.525>box,

283
00:12:28.185 --> 00:12:29.685
<00:12:28.185>but <00:12:28.454>we <00:12:28.724>break <00:12:28.994>them <00:12:29.265>with <00:12:29.535>JavaScript

284
00:12:29.685 --> 00:12:31.285
<00:12:29.685>and <00:12:29.964>then <00:12:30.244>recreate <00:12:30.525>them <00:12:30.805>with <00:12:31.084>JavaScript.

285
00:12:31.305 --> 00:12:32.525
<00:12:31.305>And <00:12:31.579>then <00:12:31.853>because <00:12:32.128>they're <00:12:32.403>hard,

286
00:12:33.065 --> 00:12:35.925
<00:12:33.065>we <00:12:33.220>often <00:12:33.376>rely <00:12:33.531>on <00:12:33.687>large <00:12:33.842>libraries <00:12:33.998>to <00:12:34.153>abstract <00:12:34.309>a <00:12:34.465>lot

287
00:12:35.925 --> 00:12:37.485
<00:12:35.925>of <00:12:36.158>it <00:12:36.391>away, <00:12:36.625>which <00:12:36.858>throws <00:12:37.091>even <00:12:37.324>more

288
00:12:37.485 --> 00:12:39.205
<00:12:37.485>JavaScript <00:12:37.835>at <00:12:38.185>the <00:12:38.535>front <00:12:38.885>end.

289
00:12:40.225 --> 00:12:43.085
<00:12:40.225>The <00:12:40.505>lean <00:12:40.785>web <00:12:41.065>favors <00:12:41.345>multi-page <00:12:41.625>apps,

290
00:12:43.085 --> 00:12:45.805
<00:12:43.085>whereas <00:12:43.365>you <00:12:43.645>might <00:12:43.925>know <00:12:44.205>them <00:12:44.485>websites,

291
00:12:46.555 --> 00:12:48.125
<00:12:46.555>this <00:12:46.905>dramatically <00:12:47.255>reduces <00:12:47.604>the <00:12:47.954>amount

292
00:12:48.125 --> 00:12:49.725
<00:12:48.125>of <00:12:48.358>JavaScript <00:12:48.591>that <00:12:48.825>you <00:12:49.058>have <00:12:49.291>to <00:12:49.525>ship.

293
00:12:50.185 --> 00:12:52.085
<00:12:50.185>And <00:12:50.385>it <00:12:50.584>avoids <00:12:50.785>this <00:12:50.984>thing <00:12:51.185>where <00:12:51.385>you <00:12:51.584>have

294
00:12:52.085 --> 00:12:54.285
<00:12:52.085>to <00:12:52.285>recreate <00:12:52.485>all <00:12:52.685>the <00:12:52.885>things <00:12:53.085>the <00:12:53.285>browser <00:12:53.485>just

295
00:12:54.315 --> 00:12:55.645
<00:12:54.315>does <00:12:54.714>for <00:12:55.113>you <00:12:55.512>already.

296
00:12:56.495 --> 00:12:57.715
<00:12:56.495>Now, <00:12:56.769>I'm <00:12:57.044>not <00:12:57.318>a <00:12:57.593>monster.

297
00:12:58.015 --> 00:13:01.835
<00:12:58.015>I'm <00:12:58.142>not <00:12:58.269>suggesting <00:12:58.396>we <00:12:58.524>all <00:12:58.651>go <00:12:58.778>hand <00:12:58.905>code <00:12:59.033>a <00:12:59.160>bunch <00:12:59.287>of, <00:12:59.415>um,

298
00:13:01.975 --> 00:13:04.835
<00:13:01.975>you <00:13:02.115>know, <00:13:02.255>like <00:13:02.395>a <00:13:02.535>a <00:13:02.675>few <00:13:02.815>dozen <00:13:02.955>HTML <00:13:03.095>pages <00:13:03.235>by <00:13:03.375>hand.

299
00:13:05.255 --> 00:13:09.635
<00:13:05.255>Um, <00:13:05.382>nor <00:13:05.509>am <00:13:05.636>I <00:13:05.764>suggesting <00:13:05.891>that <00:13:06.018>we <00:13:06.145>necessarily <00:13:06.273>go <00:13:06.400>back <00:13:06.527>to, <00:13:06.655>um,

300
00:13:09.905 --> 00:13:13.115
<00:13:09.905>rendering <00:13:10.105>everything <00:13:10.305>in <00:13:10.505>real <00:13:10.704>time <00:13:10.905>on <00:13:11.105>the <00:13:11.305>server.

301
00:13:13.615 --> 00:13:15.995
<00:13:13.615>Um, <00:13:14.081>but <00:13:14.548>one <00:13:15.015>technology

302
00:13:15.995 --> 00:13:18.595
<00:13:15.995>that <00:13:16.150>can <00:13:16.306>really <00:13:16.461>help <00:13:16.617>us <00:13:16.772>out <00:13:16.928>are <00:13:17.083>static <00:13:17.239>site <00:13:17.395>generators.

303
00:13:18.645 --> 00:13:21.595
<00:13:18.645>These <00:13:18.772>let <00:13:18.899>you <00:13:19.026>take <00:13:19.154>a <00:13:19.281>bunch <00:13:19.408>of <00:13:19.535>markdown <00:13:19.663>files, <00:13:19.790>mash <00:13:19.917>them <00:13:20.045>up

304
00:13:21.595 --> 00:13:23.955
<00:13:21.595>with <00:13:21.770>templates <00:13:21.945>authored <00:13:22.120>in <00:13:22.295>your <00:13:22.470>favorite <00:13:22.645>temp <00:13:22.820>and <00:13:22.995>languages.

305
00:13:23.975 --> 00:13:27.275
<00:13:23.975>So <00:13:24.255>Ruby <00:13:24.535>go, <00:13:24.815>um, <00:13:25.095>you <00:13:25.375>know,

306
00:13:27.715 --> 00:13:31.915
<00:13:27.715>PHP <00:13:27.842>if <00:13:27.969>you <00:13:28.096>really <00:13:28.224>want <00:13:28.351>to, <00:13:28.478>um, <00:13:28.605>JavaScript, <00:13:28.733>uh, <00:13:28.860>it, <00:13:28.987>you <00:13:29.115>know,

307
00:13:32.335 --> 00:13:33.995
<00:13:32.335>you <00:13:32.535>can <00:13:32.735>use, <00:13:32.935>you <00:13:33.135>can <00:13:33.335>even <00:13:33.535>use <00:13:33.735>React.

308
00:13:34.135 --> 00:13:35.515
<00:13:34.135>Um, <00:13:34.549>Gatsby <00:13:34.963>supports <00:13:35.377>that

309
00:13:36.055 --> 00:13:38.155
<00:13:36.055>and <00:13:36.334>they <00:13:36.614>spit <00:13:36.895>out <00:13:37.175>pre-rendered <00:13:37.454>HTML.

310
00:13:38.685 --> 00:13:39.745
<00:13:38.685>So <00:13:38.923>you're <00:13:39.161>taking <00:13:39.400>your <00:13:39.639>template

311
00:13:39.745 --> 00:13:40.865
<00:13:39.745>and <00:13:39.946>language, <00:13:40.148>you're <00:13:40.349>taking <00:13:40.551>your <00:13:40.753>content,

312
00:13:41.285 --> 00:13:43.425
<00:13:41.285>you're <00:13:41.440>smashing <00:13:41.596>them <00:13:41.751>together <00:13:41.907>like <00:13:42.062>you <00:13:42.218>would <00:13:42.373>in <00:13:42.529>an <00:13:42.685>old

313
00:13:43.425 --> 00:13:46.665
<00:13:43.425>WordPress <00:13:43.599>site, <00:13:43.775>except <00:13:43.949>it <00:13:44.125>happens <00:13:44.300>once <00:13:44.474>ahead <00:13:44.650>of <00:13:44.824>time.

314
00:13:46.725 --> 00:13:48.585
<00:13:46.725>And <00:13:47.005>then <00:13:47.285>those <00:13:47.565>flat <00:13:47.845>HTML <00:13:48.125>files

315
00:13:48.605 --> 00:13:49.745
<00:13:48.605>are <00:13:48.776>what <00:13:48.947>go <00:13:49.118>out <00:13:49.289>to <00:13:49.460>the <00:13:49.631>server.

316
00:13:50.365 --> 00:13:52.305
<00:13:50.365>And <00:13:50.645>this <00:13:50.925>makes <00:13:51.205>creating <00:13:51.485>multi-page <00:13:51.765>apps

317
00:13:52.325 --> 00:13:53.585
<00:13:52.325>or <00:13:52.608>websites <00:13:52.892>a <00:13:53.175>lot <00:13:53.459>easier

318
00:13:54.045 --> 00:13:56.865
<00:13:54.045>and <00:13:54.278>dramatically <00:13:54.511>reduces <00:13:54.745>the <00:13:54.978>server <00:13:55.211>response <00:13:55.444>time.

319
00:13:57.405 --> 00:14:00.225
<00:13:57.405>You <00:13:57.638>can <00:13:57.871>still <00:13:58.105>render <00:13:58.338>HTML <00:13:58.571>with <00:13:58.805>JavaScript,

320
00:14:00.325 --> 00:14:02.465
<00:14:00.325>but <00:14:00.675>just <00:14:01.025>the <00:14:01.375>dynamic <00:14:01.725>parts.

321
00:14:02.665 --> 00:14:04.865
<00:14:02.665>Instead <00:14:02.944>of <00:14:03.224>reloading <00:14:03.505>the <00:14:03.785>entire <00:14:04.064>page

322
00:14:04.865 --> 00:14:06.745
<00:14:04.865>or <00:14:05.098>rendering <00:14:05.331>the <00:14:05.565>entire <00:14:05.798>page <00:14:06.031>in <00:14:06.265>JavaScript,

323
00:14:06.805 --> 00:14:09.305
<00:14:06.805>you <00:14:07.038>render <00:14:07.271>just <00:14:07.505>the <00:14:07.738>stuff <00:14:07.971>that's <00:14:08.204>dynamic

324
00:14:09.605 --> 00:14:12.625
<00:14:09.605>or <00:14:09.760>needs <00:14:09.916>to <00:14:10.071>be <00:14:10.227>kind <00:14:10.382>of <00:14:10.538>done <00:14:10.693>after <00:14:10.849>the <00:14:11.005>fact.

325
00:14:13.125 --> 00:14:16.705
<00:14:13.125>And <00:14:13.325>because <00:14:13.525>you're <00:14:13.725>loading <00:14:13.925>less <00:14:14.125>code, <00:14:14.325>less <00:14:14.525>JavaScript,

326
00:14:16.725 --> 00:14:19.345
<00:14:16.725>you <00:14:16.880>end <00:14:17.036>up <00:14:17.191>with <00:14:17.347>apps <00:14:17.502>that <00:14:17.658>are <00:14:17.813>both <00:14:17.969>more <00:14:18.125>resilient

327
00:14:19.645 --> 00:14:23.505
<00:14:19.645>and <00:14:19.785>less <00:14:19.925>complex, <00:14:20.064>but <00:14:20.204>feel <00:14:20.345>as <00:14:20.485>fast <00:14:20.625>as <00:14:20.765>single <00:14:20.905>page <00:14:21.045>apps.

328
00:14:23.505 --> 00:14:25.945
<00:14:23.505>And <00:14:23.645>I <00:14:23.785>can <00:14:23.925>prove <00:14:24.064>it <00:14:24.205>to <00:14:24.345>you. <00:14:24.485>Everyone <00:14:24.625>who <00:14:24.765>buys <00:14:24.905>one

329
00:14:25.945 --> 00:14:27.785
<00:14:25.945>of <00:14:26.145>my <00:14:26.345>courses <00:14:26.545>gets <00:14:26.745>access <00:14:26.945>to <00:14:27.145>a <00:14:27.345>portal

330
00:14:27.785 --> 00:14:29.985
<00:14:27.785>where <00:14:27.959>they <00:14:28.135>can <00:14:28.310>download <00:14:28.485>their <00:14:28.660>eBooks, <00:14:28.834>stream <00:14:29.010>their <00:14:29.185>courses,

331
00:14:30.445 --> 00:14:32.465
<00:14:30.445>access <00:14:30.795>their <00:14:31.145>workshops, <00:14:31.495>so <00:14:31.845>on.

332
00:14:32.725 --> 00:14:35.585
<00:14:32.725>And <00:14:32.852>it's <00:14:32.979>a <00:14:33.106>multi-page <00:14:33.234>app <00:14:33.361>built <00:14:33.488>in <00:14:33.615>the <00:14:33.743>way <00:14:33.870>I <00:14:33.997>just <00:14:34.125>described

333
00:14:36.085 --> 00:14:38.865
<00:14:36.085>the <00:14:36.318>logo <00:14:36.551>navigation, <00:14:36.785>menu <00:14:37.018>header, <00:14:37.251>the <00:14:37.485>footer,

334
00:14:38.865 --> 00:14:41.305
<00:14:38.865>those <00:14:39.098>are <00:14:39.331>all <00:14:39.565>baked <00:14:39.798>into <00:14:40.031>the <00:14:40.265>HTML.

335
00:14:41.305 --> 00:14:43.025
<00:14:41.305>They're <00:14:41.655>hard-coded. <00:14:42.005>I <00:14:42.354>use <00:14:42.704>Hugo.

336
00:14:43.125 --> 00:14:46.345
<00:14:43.125>Um, <00:14:43.265>so <00:14:43.405>Static <00:14:43.545>Site <00:14:43.685>Generator <00:14:43.825>spits <00:14:43.965>those <00:14:44.105>all <00:14:44.245>out <00:14:44.385>for <00:14:44.525>me.

337
00:14:47.545 --> 00:14:49.405
<00:14:47.545>The <00:14:47.778>content <00:14:48.011>varies <00:14:48.245>from <00:14:48.478>user <00:14:48.711>to <00:14:48.944>user

338
00:14:49.425 --> 00:14:52.045
<00:14:49.425>and <00:14:49.580>that <00:14:49.736>comes <00:14:49.891>from <00:14:50.047>an <00:14:50.202>API <00:14:50.358>call, <00:14:50.513>which <00:14:50.669>I <00:14:50.824>make

339
00:14:52.045 --> 00:14:54.365
<00:14:52.045>with <00:14:52.278>JavaScript <00:14:52.511>after <00:14:52.745>the <00:14:52.978>user <00:14:53.211>logs <00:14:53.444>in

340
00:14:54.945 --> 00:14:58.845
<00:14:54.945>and <00:14:55.085>dynamically <00:14:55.225>render <00:14:55.365>a <00:14:55.505>custom <00:14:55.645>UI <00:14:55.785>for <00:14:55.925>them <00:14:56.065>based <00:14:56.205>on <00:14:56.345>that.

341
00:14:59.185 --> 00:15:01.685
<00:14:59.185>And <00:14:59.340>I'm <00:14:59.496>about <00:14:59.651>to <00:14:59.807>show <00:14:59.962>you <00:15:00.118>a <00:15:00.273>realtime <00:15:00.429>screen <00:15:00.584>capture

342
00:15:01.745 --> 00:15:04.845
<00:15:01.745>of <00:15:01.945>me <00:15:02.145>navigating <00:15:02.345>through <00:15:02.545>that <00:15:02.745>site, <00:15:02.945>multi-page <00:15:03.145>app

343
00:15:04.935 --> 00:15:08.685
<00:15:04.935>where <00:15:05.090>each <00:15:05.246>page <00:15:05.401>is, <00:15:05.557>um, <00:15:05.712>like <00:15:05.868>a <00:15:06.023>full <00:15:06.179>page <00:15:06.334>reload,

344
00:15:08.985 --> 00:15:10.085
<00:15:08.985>um, <00:15:09.480>route <00:15:09.975>change.

345
00:15:10.785 --> 00:15:14.525
<00:15:10.785>And <00:15:10.940>as <00:15:11.096>you <00:15:11.251>can <00:15:11.407>see, <00:15:11.562>these <00:15:11.718>pages <00:15:11.873>are <00:15:12.029>loading <00:15:12.185>instantaneously.

346
00:15:15.225 --> 00:15:18.205
<00:15:15.225>It <00:15:15.380>feels <00:15:15.536>as <00:15:15.691>fast <00:15:15.847>as <00:15:16.002>using <00:15:16.158>a <00:15:16.313>single <00:15:16.469>page <00:15:16.625>app.

347
00:15:18.985 --> 00:15:21.005
<00:15:18.985>One <00:15:19.140>of <00:15:19.296>the <00:15:19.451>things <00:15:19.607>that <00:15:19.762>really <00:15:19.918>helps <00:15:20.073>out <00:15:20.229>with <00:15:20.385>this

348
00:15:21.705 --> 00:15:23.085
<00:15:21.705>is <00:15:22.326>service <00:15:22.947>workers.

349
00:15:23.425 --> 00:15:26.005
<00:15:23.425>Um, <00:15:23.564>they <00:15:23.704>really <00:15:23.844>aid <00:15:23.984>this <00:15:24.125>approach <00:15:24.265>and <00:15:24.405>they <00:15:24.545>give <00:15:24.685>your <00:15:24.824>sites

350
00:15:26.185 --> 00:15:28.125
<00:15:26.185>and <00:15:26.651>your <00:15:27.118>apps <00:15:27.584>superpowers.

351
00:15:28.955 --> 00:15:33.395
<00:15:28.955>So, <00:15:29.130>um, <00:15:29.305>when <00:15:29.480>your <00:15:29.655>browser <00:15:29.830>pulls <00:15:30.005>up <00:15:30.180>a <00:15:30.355>webpage,

352
00:15:33.415 --> 00:15:36.115
<00:15:33.415>it <00:15:33.589>makes <00:15:33.765>a <00:15:33.939>call <00:15:34.115>to <00:15:34.290>the <00:15:34.464>network <00:15:34.640>server <00:15:34.814>somewhere,

353
00:15:36.115 --> 00:15:38.915
<00:15:36.115>and <00:15:36.348>that <00:15:36.581>server <00:15:36.815>sends <00:15:37.048>back <00:15:37.281>the <00:15:37.515>H-T-M-L-C-S-S,

354
00:15:38.915 --> 00:15:40.475
<00:15:38.915>JavaScript <00:15:39.265>images, <00:15:39.615>all <00:15:39.964>the <00:15:40.314>assets.

355
00:15:41.755 --> 00:15:43.635
<00:15:41.755>A <00:15:41.955>service <00:15:42.155>worker <00:15:42.355>is <00:15:42.555>a <00:15:42.755>little <00:15:42.955>JavaScript <00:15:43.155>file

356
00:15:43.705 --> 00:15:46.435
<00:15:43.705>that <00:15:43.860>you <00:15:44.016>load <00:15:44.171>on <00:15:44.327>your <00:15:44.482>site <00:15:44.638>that <00:15:44.793>sits <00:15:44.949>in <00:15:45.105>between

357
00:15:47.145 --> 00:15:48.755
<00:15:47.145>your <00:15:47.495>browser <00:15:47.845>and <00:15:48.194>the <00:15:48.545>network.

358
00:15:49.445 --> 00:15:52.115
<00:15:49.445>Every <00:15:49.600>call <00:15:49.756>for <00:15:49.911>an <00:15:50.067>asset <00:15:50.222>goes <00:15:50.378>through <00:15:50.533>the <00:15:50.689>service <00:15:50.845>worker

359
00:15:52.215 --> 00:15:55.115
<00:15:52.215>and <00:15:52.370>every <00:15:52.526>asset <00:15:52.681>that <00:15:52.837>comes <00:15:52.992>back <00:15:53.148>also <00:15:53.303>goes <00:15:53.459>through <00:15:53.615>it.

360
00:15:55.985 --> 00:15:59.955
<00:15:55.985>Service <00:15:56.140>workers <00:15:56.296>allow <00:15:56.451>you <00:15:56.607>to <00:15:56.762>save <00:15:56.918>any <00:15:57.073>of <00:15:57.229>those <00:15:57.385>assets

361
00:16:00.865 --> 00:16:03.085
<00:16:00.865>in <00:16:01.098>a <00:16:01.331>local <00:16:01.565>cash <00:16:01.798>in <00:16:02.031>the <00:16:02.265>browser.

362
00:16:03.425 --> 00:16:07.405
<00:16:03.425>Um, <00:16:03.541>so <00:16:03.658>you <00:16:03.775>can <00:16:03.891>save <00:16:04.008>them <00:16:04.125>in <00:16:04.241>real <00:16:04.358>time <00:16:04.474>as <00:16:04.591>the <00:16:04.708>user <00:16:04.824>browses.

363
00:16:07.405 --> 00:16:08.725
<00:16:07.405>You <00:16:07.642>can <00:16:07.880>even <00:16:08.117>fetch <00:16:08.355>them <00:16:08.593>ahead

364
00:16:08.725 --> 00:16:09.965
<00:16:08.725>of <00:16:08.911>time <00:16:09.097>if <00:16:09.283>you <00:16:09.469>want <00:16:09.655>anything <00:16:09.841>you

365
00:16:09.965 --> 00:16:11.125
<00:16:09.965>know, <00:16:10.173>the <00:16:10.382>user <00:16:10.591>is <00:16:10.800>gonna <00:16:11.009>need.

366
00:16:11.465 --> 00:16:14.965
<00:16:11.465>You <00:16:11.581>can <00:16:11.698>fetch <00:16:11.815>it <00:16:11.931>and <00:16:12.048>save <00:16:12.165>it <00:16:12.281>so <00:16:12.398>that <00:16:12.515>it's <00:16:12.631>there <00:16:12.748>cashed <00:16:12.865>ready

367
00:16:15.025 --> 00:16:16.205
<00:16:15.025>for <00:16:15.237>when <00:16:15.449>the <00:16:15.662>user <00:16:15.874>wants <00:16:16.087>it.

368
00:16:16.585 --> 00:16:18.405
<00:16:16.585>And <00:16:16.760>then <00:16:16.935>instead <00:16:17.110>of <00:16:17.285>going <00:16:17.460>out <00:16:17.635>to <00:16:17.810>the <00:16:17.985>network

369
00:16:18.625 --> 00:16:20.525
<00:16:18.625>to <00:16:18.858>get <00:16:19.091>those <00:16:19.325>assets <00:16:19.558>on <00:16:19.791>subsequent <00:16:20.025>page

370
00:16:20.525 --> 00:16:22.245
<00:16:20.525>loads, <00:16:20.875>you <00:16:21.225>serve <00:16:21.574>them <00:16:21.925>locally.

371
00:16:22.305 --> 00:16:24.365
<00:16:22.305>So <00:16:22.479>it's <00:16:22.655>gonna <00:16:22.829>give <00:16:23.005>you <00:16:23.180>a, <00:16:23.354>a <00:16:23.530>similar <00:16:23.704>kind

372
00:16:24.365 --> 00:16:27.085
<00:16:24.365>of <00:16:24.505>instant <00:16:24.645>response <00:16:24.785>time <00:16:24.925>on <00:16:25.065>these <00:16:25.205>assets <00:16:25.345>like <00:16:25.485>you <00:16:25.625>would <00:16:25.765>get

373
00:16:27.085 --> 00:16:28.205
<00:16:27.085>with <00:16:27.337>a <00:16:27.589>single <00:16:27.841>page <00:16:28.093>app.

374
00:16:28.705 --> 00:16:32.125
<00:16:28.705>But <00:16:28.905>each <00:16:29.105>page <00:16:29.305>is <00:16:29.505>its <00:16:29.705>own <00:16:29.905>unique <00:16:30.105>page.

375
00:16:32.155 --> 00:16:33.565
<00:16:32.155>It's <00:16:32.366>just <00:16:32.578>loading <00:16:32.789>all <00:16:33.001>the <00:16:33.212>stuff <00:16:33.424>locally

376
00:16:33.705 --> 00:16:35.205
<00:16:33.705>so <00:16:33.975>there's <00:16:34.245>zero <00:16:34.515>latency <00:16:34.785>on <00:16:35.055>it.

377
00:16:35.585 --> 00:16:37.445
<00:16:35.585>Um, <00:16:35.865>and <00:16:36.145>it <00:16:36.425>also <00:16:36.705>allows <00:16:36.985>you

378
00:16:37.445 --> 00:16:39.845
<00:16:37.445>to <00:16:37.600>do <00:16:37.756>things <00:16:37.911>like <00:16:38.067>if <00:16:38.222>the <00:16:38.378>network <00:16:38.533>goes <00:16:38.689>down <00:16:38.845>entirely

379
00:16:40.145 --> 00:16:42.845
<00:16:40.145>and <00:16:40.319>the <00:16:40.495>user <00:16:40.670>reloads <00:16:40.845>the <00:16:41.020>page, <00:16:41.194>instead <00:16:41.370>of <00:16:41.545>getting

380
00:16:43.505 --> 00:16:47.205
<00:16:43.505>the <00:16:43.680>white <00:16:43.855>screen <00:16:44.030>of <00:16:44.205>death, <00:16:44.380>they <00:16:44.555>get <00:16:44.730>that <00:16:44.905>page

381
00:16:47.205 --> 00:16:49.445
<00:16:47.205>because <00:16:47.405>you <00:16:47.605>already <00:16:47.805>have <00:16:48.005>all <00:16:48.205>those <00:16:48.405>assets <00:16:48.605>saved,

382
00:16:49.745 --> 00:16:51.205
<00:16:49.745>cashed <00:16:50.183>ready <00:16:50.621>to <00:16:51.059>serve.

383
00:16:51.385 --> 00:16:53.325
<00:16:51.385>It <00:16:51.560>really <00:16:51.735>gives <00:16:51.910>you <00:16:52.085>the <00:16:52.260>best <00:16:52.435>of <00:16:52.610>both <00:16:52.785>worlds

384
00:16:53.945 --> 00:16:56.605
<00:16:53.945>and <00:16:54.072>adds <00:16:54.199>a <00:16:54.326>whole <00:16:54.454>bunch <00:16:54.581>of <00:16:54.708>new <00:16:54.835>stuff <00:16:54.963>that <00:16:55.090>you <00:16:55.217>can't <00:16:55.345>do

385
00:16:56.605 --> 00:16:57.845
<00:16:56.605>with <00:16:56.828>a <00:16:57.051>single <00:16:57.274>page <00:16:57.497>app <00:16:57.721>alone.

386
00:16:59.285 --> 00:17:02.215
<00:16:59.285>Another <00:16:59.518>lean <00:16:59.751>web <00:16:59.985>approach <00:17:00.218>is <00:17:00.451>the <00:17:00.685>emergence

387
00:17:02.675 --> 00:17:05.335
<00:17:02.675>and <00:17:02.875>kind <00:17:03.074>of <00:17:03.275>the <00:17:03.474>use <00:17:03.675>of <00:17:03.875>micro <00:17:04.075>libraries.

388
00:17:05.335 --> 00:17:08.175
<00:17:05.335>You <00:17:05.475>know, <00:17:05.615>we <00:17:05.755>talked <00:17:05.895>about <00:17:06.035>how <00:17:06.175>you <00:17:06.315>can <00:17:06.454>still <00:17:06.595>update <00:17:06.735>parts

389
00:17:08.175 --> 00:17:10.615
<00:17:08.175>of <00:17:08.524>the <00:17:08.875>UI <00:17:09.224>with <00:17:09.575>JavaScript.

390
00:17:10.635 --> 00:17:13.575
<00:17:10.635>You <00:17:10.810>just <00:17:10.984>don't <00:17:11.160>necessarily <00:17:11.335>want <00:17:11.510>them <00:17:11.685>to <00:17:11.859>be <00:17:12.035>everything.

391
00:17:13.575 --> 00:17:14.775
<00:17:13.575>It's <00:17:13.845>just <00:17:14.115>the <00:17:14.385>dynamic <00:17:14.655>stuff.

392
00:17:15.075 --> 00:17:18.775
<00:17:15.075>Rather <00:17:15.230>than <00:17:15.386>using <00:17:15.541>30 <00:17:15.697>kilobytes <00:17:15.852>of <00:17:16.008>Minified <00:17:16.163>and <00:17:16.319>GS <00:17:16.475>Angular

393
00:17:18.775 --> 00:17:22.535
<00:17:18.775>or <00:17:18.902>React <00:17:19.029>or <00:17:19.156>View, <00:17:19.284>just <00:17:19.411>to <00:17:19.538>render <00:17:19.665>a <00:17:19.793>few <00:17:19.920>dynamic <00:17:20.047>UI <00:17:20.175>elements,

394
00:17:23.475 --> 00:17:27.255
<00:17:23.474>you <00:17:23.675>can <00:17:23.875>use <00:17:24.074>smaller, <00:17:24.274>more <00:17:24.474>form <00:17:24.675>focused <00:17:24.875>alternatives.

395
00:17:27.255 --> 00:17:31.735
<00:17:27.255>So <00:17:27.410>for <00:17:27.566>example, <00:17:27.721>pre-ACT <00:17:27.877>is <00:17:28.032>three <00:17:28.188>kilobytes, <00:17:28.343>um, <00:17:28.499>same <00:17:28.655>API

396
00:17:32.035 --> 00:17:35.695
<00:17:32.035>as <00:17:32.235>React <00:17:32.435>including <00:17:32.635>webhooks <00:17:32.835>one <00:17:33.035>10th <00:17:33.235>the <00:17:33.435>size

397
00:17:36.155 --> 00:17:39.095
<00:17:36.155>and <00:17:36.355>UI <00:17:36.555>updates <00:17:36.754>are <00:17:36.955>four <00:17:37.155>times <00:17:37.355>as <00:17:37.555>fast.

398
00:17:39.195 --> 00:17:41.015
<00:17:39.195>So <00:17:39.428>it's <00:17:39.661>not <00:17:39.895>just <00:17:40.128>faster <00:17:40.361>to <00:17:40.595>load,

399
00:17:41.015 --> 00:17:43.455
<00:17:41.015>you're <00:17:41.215>not <00:17:41.415>just <00:17:41.615>shipping <00:17:41.815>less <00:17:42.015>JavaScript <00:17:42.215>to <00:17:42.415>start,

400
00:17:43.835 --> 00:17:46.335
<00:17:43.835>but <00:17:44.035>all <00:17:44.235>of <00:17:44.435>the <00:17:44.635>UI <00:17:44.835>updates <00:17:45.035>that <00:17:45.235>trigger

401
00:17:46.365 --> 00:17:48.535
<00:17:46.365>with <00:17:46.540>pre-ACT <00:17:46.715>are <00:17:46.890>going <00:17:47.065>to <00:17:47.240>be <00:17:47.415>faster <00:17:47.590>as <00:17:47.765>well.

402
00:17:49.425 --> 00:17:51.525
<00:17:49.425>Um, <00:17:49.705>a <00:17:49.985>new <00:17:50.264>contender <00:17:50.544>here, <00:17:50.825>um,

403
00:17:51.585 --> 00:17:55.445
<00:17:51.585>petite <00:17:51.712>View <00:17:51.839>from <00:17:51.966>Evan <00:17:52.094>U <00:17:52.221>the <00:17:52.348>guy <00:17:52.475>who <00:17:52.603>built, <00:17:52.730>uh, <00:17:52.857>built <00:17:52.985>View,

404
00:17:55.905 --> 00:17:58.845
<00:17:55.905>um, <00:17:56.060>is <00:17:56.216>a <00:17:56.371>six <00:17:56.527>kilobyte <00:17:56.682>subset <00:17:56.838>of <00:17:56.993>view <00:17:57.149>that's <00:17:57.305>intended

405
00:17:58.865 --> 00:18:00.045
<00:17:58.865>for <00:17:59.396>progressive <00:17:59.927>enhancement.

406
00:18:00.045 --> 00:18:01.925
<00:18:00.045>Exactly <00:18:00.220>the <00:18:00.395>kind <00:18:00.570>of <00:18:00.745>thing <00:18:00.920>we've <00:18:01.095>been <00:18:01.270>talking <00:18:01.445>about.

407
00:18:02.295 --> 00:18:05.285
<00:18:02.295>Again, <00:18:02.470>much <00:18:02.645>smaller <00:18:02.820>footprint, <00:18:02.995>gonna <00:18:03.170>be <00:18:03.345>faster <00:18:03.520>to <00:18:03.695>render.

408
00:18:06.935 --> 00:18:08.445
<00:18:06.935>Micro <00:18:07.274>libraries <00:18:07.614>are <00:18:07.954>really <00:18:08.293>cool,

409
00:18:08.445 --> 00:18:12.165
<00:18:08.445>but <00:18:08.585>I <00:18:08.725>think, <00:18:08.865>um, <00:18:09.004>kind <00:18:09.145>of <00:18:09.284>the <00:18:09.425>the <00:18:09.564>real <00:18:09.705>future, <00:18:09.845>um,

410
00:18:12.225 --> 00:18:15.725
<00:18:12.225>at <00:18:12.365>least <00:18:12.504>in <00:18:12.645>the <00:18:12.784>midterm <00:18:12.925>is <00:18:13.064>the <00:18:13.205>use <00:18:13.344>of <00:18:13.485>pre <00:18:13.625>compilers.

411
00:18:15.865 --> 00:18:18.645
<00:18:15.865>And <00:18:16.020>so <00:18:16.176>what <00:18:16.331>these <00:18:16.487>do <00:18:16.642>is <00:18:16.798>rather <00:18:16.953>than, <00:18:17.109>you <00:18:17.265>know,

412
00:18:18.645 --> 00:18:21.165
<00:18:18.645>just <00:18:18.845>shipping <00:18:19.045>a <00:18:19.245>smaller <00:18:19.445>library <00:18:19.645>to <00:18:19.845>the <00:18:20.045>browser,

413
00:18:21.275 --> 00:18:23.645
<00:18:21.275>they <00:18:21.555>cut <00:18:21.835>the <00:18:22.115>library <00:18:22.395>out <00:18:22.675>entirely.

414
00:18:24.505 --> 00:18:28.765
<00:18:24.505>Um, <00:18:24.645>kind <00:18:24.785>of <00:18:24.925>the, <00:18:25.065>the, <00:18:25.205>uh, <00:18:25.345>the <00:18:25.485>gorilla <00:18:25.625>in <00:18:25.765>the <00:18:25.905>room

415
00:18:28.765 --> 00:18:30.405
<00:18:28.765>around <00:18:29.045>this <00:18:29.325>one <00:18:29.605>is <00:18:29.885>felt, <00:18:30.165>um,

416
00:18:30.555 --> 00:18:32.045
<00:18:30.555>they <00:18:30.722>were <00:18:30.890>kind <00:18:31.057>of <00:18:31.225>the <00:18:31.393>first <00:18:31.560>to <00:18:31.728>market <00:18:31.896>here.

417
00:18:32.045 --> 00:18:34.005
<00:18:32.045>It's <00:18:32.220>from <00:18:32.395>Rich <00:18:32.570>Harris <00:18:32.745>over <00:18:32.920>at <00:18:33.095>New <00:18:33.270>York <00:18:33.445>Times.

418
00:18:34.745 --> 00:18:36.965
<00:18:34.745>Um, <00:18:34.919>and <00:18:35.094>uh, <00:18:35.270>so <00:18:35.445>the <00:18:35.620>way <00:18:35.794>these <00:18:35.969>work <00:18:36.145>is,

419
00:18:37.155 --> 00:18:39.685
<00:18:37.155>they <00:18:37.330>give <00:18:37.504>you <00:18:37.680>a <00:18:37.855>very <00:18:38.030>similar <00:18:38.205>authoring <00:18:38.379>experience <00:18:38.555>to

420
00:18:39.685 --> 00:18:42.525
<00:18:39.685>what <00:18:39.812>you <00:18:39.939>might <00:18:40.066>get <00:18:40.194>with <00:18:40.321>a <00:18:40.448>library <00:18:40.575>where <00:18:40.703>you <00:18:40.830>have <00:18:40.957>your <00:18:41.085>page

421
00:18:43.225 --> 00:18:46.605
<00:18:43.225>and <00:18:43.399>you're <00:18:43.574>gonna <00:18:43.750>put <00:18:43.925>your <00:18:44.100>HTML, <00:18:44.274>JavaScript, <00:18:44.449>CSS, <00:18:44.625>all

422
00:18:46.605 --> 00:18:48.245
<00:18:46.605>of <00:18:46.838>it <00:18:47.071>just <00:18:47.305>in <00:18:47.538>this <00:18:47.771>one <00:18:48.005>file.

423
00:18:49.395 --> 00:18:52.405
<00:18:49.395>Much <00:18:49.550>like <00:18:49.706>with <00:18:49.861>a <00:18:50.017>static <00:18:50.172>site <00:18:50.328>generator, <00:18:50.483>you <00:18:50.639>compile <00:18:50.795>it

424
00:18:52.585 --> 00:18:53.765
<00:18:52.585>before <00:18:52.939>you <00:18:53.293>deploy <00:18:53.647>it

425
00:18:53.825 --> 00:18:57.365
<00:18:53.825>and <00:18:53.980>it <00:18:54.136>will <00:18:54.291>take <00:18:54.447>all <00:18:54.602>of <00:18:54.758>the <00:18:54.913>abstracted <00:18:55.069>interaction <00:18:55.225>patterns

426
00:18:57.825 --> 00:18:59.725
<00:18:57.825>and <00:18:58.105>convert <00:18:58.385>them <00:18:58.665>into <00:18:58.945>plain <00:18:59.225>HTML

427
00:19:00.025 --> 00:19:01.925
<00:19:00.025>and <00:19:00.375>vanilla <00:19:00.725>JavaScript <00:19:01.075>for <00:19:01.425>you.

428
00:19:02.505 --> 00:19:04.845
<00:19:02.505>So <00:19:02.705>you <00:19:02.905>can <00:19:03.105>write <00:19:03.305>your <00:19:03.505>code <00:19:03.705>in <00:19:03.905>a

429
00:19:04.845 --> 00:19:06.325
<00:19:04.845>state-based <00:19:05.111>D <00:19:05.377>UI <00:19:05.644>kind <00:19:05.910>of <00:19:06.177>pattern.

430
00:19:06.985 --> 00:19:09.765
<00:19:06.985>And <00:19:07.125>what <00:19:07.264>you <00:19:07.405>deliver <00:19:07.544>to <00:19:07.685>the <00:19:07.824>user <00:19:07.965>is <00:19:08.104>something <00:19:08.245>more <00:19:08.385>akin

431
00:19:09.765 --> 00:19:12.525
<00:19:09.765>to <00:19:09.998>old <00:19:10.231>school <00:19:10.465>dom <00:19:10.698>manipulation <00:19:10.931>with <00:19:11.165>most

432
00:19:12.525 --> 00:19:13.845
<00:19:12.525>of <00:19:12.921>the <00:19:13.317>abstraction <00:19:13.713>removed.

433
00:19:13.865 --> 00:19:15.685
<00:19:13.865>So <00:19:14.065>it's <00:19:14.265>gonna <00:19:14.465>be <00:19:14.665>a <00:19:14.865>lot <00:19:15.065>faster, <00:19:15.265>um,

434
00:19:15.835 --> 00:19:18.765
<00:19:15.835>with <00:19:15.990>a <00:19:16.146>lot <00:19:16.301>less <00:19:16.457>code <00:19:16.612>shipped <00:19:16.768>in <00:19:16.923>the <00:19:17.079>end <00:19:17.235>result,

435
00:19:18.765 --> 00:19:21.725
<00:19:18.765>but <00:19:18.940>it <00:19:19.115>still <00:19:19.290>gives <00:19:19.465>you <00:19:19.640>that <00:19:19.815>great <00:19:19.990>user <00:19:20.165>experience.

436
00:19:22.505 --> 00:19:24.765
<00:19:22.505>Um, <00:19:22.738>a <00:19:22.971>couple <00:19:23.205>weeks <00:19:23.438>ago <00:19:23.671>at, <00:19:23.905>uh,

437
00:19:24.845 --> 00:19:28.285
<00:19:24.845>JAMstack <00:19:25.020>Comp <00:19:25.195>Rich <00:19:25.370>talked <00:19:25.545>about <00:19:25.720>this <00:19:25.895>other <00:19:26.070>project <00:19:26.245>he's

438
00:19:28.285 --> 00:19:30.365
<00:19:28.285>working <00:19:28.485>on <00:19:28.685>related <00:19:28.885>to <00:19:29.085>selt <00:19:29.285>called <00:19:29.485>selt <00:19:29.685>Kit.

439
00:19:30.745 --> 00:19:32.005
<00:19:30.745>Um, <00:19:31.312>that's <00:19:31.879>part

440
00:19:32.005 --> 00:19:34.845
<00:19:32.005>of <00:19:32.205>this <00:19:32.405>movement <00:19:32.605>he <00:19:32.805>describes <00:19:33.005>is <00:19:33.205>transitional <00:19:33.405>apps,

441
00:19:34.975 --> 00:19:37.885
<00:19:34.975>which <00:19:35.115>takes <00:19:35.254>some <00:19:35.395>of <00:19:35.534>the <00:19:35.675>best <00:19:35.814>aspects <00:19:35.955>of <00:19:36.094>state, <00:19:36.235>uh, <00:19:36.375>sorry,

442
00:19:37.885 --> 00:19:39.085
<00:19:37.885>have, <00:19:38.155>uh, <00:19:38.425>single <00:19:38.695>page <00:19:38.965>apps

443
00:19:39.785 --> 00:19:41.925
<00:19:39.785>and <00:19:39.960>merged <00:19:40.135>them <00:19:40.310>with <00:19:40.485>some <00:19:40.660>of <00:19:40.835>the <00:19:41.010>best <00:19:41.185>aspects

444
00:19:41.945 --> 00:19:43.205
<00:19:41.945>of <00:19:42.512>multi-page <00:19:43.079>apps.

445
00:19:43.465 --> 00:19:47.605
<00:19:43.465>So <00:19:43.620>single <00:19:43.776>page <00:19:43.931>apps <00:19:44.087>can <00:19:44.242>be <00:19:44.398>really <00:19:44.553>nice <00:19:44.709>for <00:19:44.865>kind

446
00:19:47.605 --> 00:19:50.205
<00:19:47.605>of <00:19:47.955>those <00:19:48.305>asynchronous <00:19:48.655>UI <00:19:49.005>updates.

447
00:19:50.625 --> 00:19:53.805
<00:19:50.625>And <00:19:50.780>what <00:19:50.936>spelt <00:19:51.091>allows <00:19:51.247>you <00:19:51.402>to <00:19:51.558>do <00:19:51.713>is <00:19:51.869>get <00:19:52.025>that

448
00:19:54.615 --> 00:19:57.475
<00:19:54.615>and <00:19:54.895>have <00:19:55.175>real <00:19:55.455>full <00:19:55.735>HTML <00:19:56.015>pages

449
00:19:57.495 --> 00:19:59.915
<00:19:57.495>to <00:19:57.695>fall <00:19:57.895>back <00:19:58.094>on <00:19:58.294>if <00:19:58.495>something <00:19:58.695>goes <00:19:58.895>wrong

450
00:20:00.095 --> 00:20:01.475
<00:20:00.095>or <00:20:00.405>if <00:20:00.716>the <00:20:01.026>page <00:20:01.337>reloads.

451
00:20:01.615 --> 00:20:05.195
<00:20:01.615>Um, <00:20:01.755>so <00:20:01.895>with <00:20:02.035>Felt <00:20:02.175>kit, <00:20:02.315>you <00:20:02.455>can <00:20:02.595>author <00:20:02.735>your <00:20:02.875>svel <00:20:03.015>projects,

452
00:20:05.855 --> 00:20:09.435
<00:20:05.855>it <00:20:05.995>will <00:20:06.135>generate, <00:20:06.275>um, <00:20:06.415>HTML <00:20:06.555>files <00:20:06.695>for <00:20:06.835>each <00:20:06.975>of <00:20:07.115>your <00:20:07.255>routes

453
00:20:09.655 --> 00:20:13.035
<00:20:09.655>and <00:20:09.855>then <00:20:10.055>layer <00:20:10.254>in <00:20:10.455>some <00:20:10.655>asynchronous <00:20:10.855>kind <00:20:11.055>of

454
00:20:13.785 --> 00:20:15.075
<00:20:13.785>page <00:20:14.172>updates <00:20:14.559>as <00:20:14.946>needed.

455
00:20:15.175 --> 00:20:16.995
<00:20:15.175>So <00:20:15.455>for <00:20:15.735>things <00:20:16.014>like <00:20:16.294>form <00:20:16.575>submissions

456
00:20:17.655 --> 00:20:19.435
<00:20:17.655>and <00:20:18.121>dynamically <00:20:18.588>rendering <00:20:19.055>content,

457
00:20:19.655 --> 00:20:22.195
<00:20:19.655>and <00:20:19.855>if <00:20:20.055>for <00:20:20.254>some <00:20:20.455>reason <00:20:20.655>the <00:20:20.855>JavaScript <00:20:21.055>fails,

458
00:20:22.575 --> 00:20:25.915
<00:20:22.575>you <00:20:22.750>still <00:20:22.925>have <00:20:23.100>a <00:20:23.275>static <00:20:23.450>server <00:20:23.625>rendered <00:20:23.800>HTML <00:20:23.975>file

459
00:20:25.975 --> 00:20:28.755
<00:20:25.975>to <00:20:26.091>fall <00:20:26.208>back <00:20:26.324>on, <00:20:26.441>you <00:20:26.558>can <00:20:26.675>still <00:20:26.791>submit <00:20:26.908>that <00:20:27.024>form <00:20:27.141>to <00:20:27.258>a <00:20:27.375>backend

460
00:20:29.135 --> 00:20:31.195
<00:20:29.135>and <00:20:29.335>render <00:20:29.535>a <00:20:29.735>new <00:20:29.935>UI <00:20:30.135>based <00:20:30.335>on <00:20:30.535>it.

461
00:20:31.335 --> 00:20:34.315
<00:20:31.335>Um, <00:20:31.475>so <00:20:31.615>really <00:20:31.755>cool <00:20:31.895>project <00:20:32.035>maybe <00:20:32.175>worth <00:20:32.315>taking <00:20:32.455>a <00:20:32.595>look <00:20:32.735>at.

462
00:20:35.855 --> 00:20:38.395
<00:20:35.855>Uh, <00:20:35.982>there's <00:20:36.109>also <00:20:36.236>a <00:20:36.364>new <00:20:36.491>contender <00:20:36.618>that <00:20:36.745>kind <00:20:36.873>of <00:20:37.000>builds <00:20:37.127>on <00:20:37.255>some

463
00:20:38.395 --> 00:20:41.275
<00:20:38.395>of <00:20:38.535>the <00:20:38.675>stuff <00:20:38.815>that <00:20:38.955>S <00:20:39.095>Felt <00:20:39.235>has <00:20:39.375>been <00:20:39.514>doing <00:20:39.655>called <00:20:39.795>Astro.

464
00:20:41.775 --> 00:20:44.115
<00:20:41.775>Um, <00:20:42.055>Astro <00:20:42.335>is <00:20:42.615>really, <00:20:42.895>really <00:20:43.175>neat.

465
00:20:44.255 --> 00:20:46.995
<00:20:44.255>It <00:20:44.395>kind <00:20:44.535>of <00:20:44.675>takes <00:20:44.815>this <00:20:44.955>like <00:20:45.095>bring <00:20:45.235>your <00:20:45.375>own <00:20:45.515>library <00:20:45.655>approach

466
00:20:47.185 --> 00:20:48.485
<00:20:47.185>to <00:20:47.418>what <00:20:47.653>S <00:20:47.887>Felt <00:20:48.120>was <00:20:48.355>doing.

467
00:20:48.905 --> 00:20:52.005
<00:20:48.905>So, <00:20:49.080>uh, <00:20:49.254>S <00:20:49.430>felt <00:20:49.605>requires <00:20:49.780>you <00:20:49.955>to <00:20:50.129>write <00:20:50.305>all

468
00:20:52.005 --> 00:20:54.485
<00:20:52.005>of <00:20:52.180>your <00:20:52.355>code <00:20:52.530>in <00:20:52.705>a <00:20:52.880>Dots <00:20:53.055>Felt <00:20:53.230>file, <00:20:53.405>um,

469
00:20:54.485 --> 00:20:56.045
<00:20:54.485>which <00:20:54.834>then <00:20:55.185>gets <00:20:55.534>compiled <00:20:55.885>out.

470
00:20:56.655 --> 00:20:58.965
<00:20:56.655>Astro <00:20:56.810>lets <00:20:56.966>you <00:20:57.121>bring <00:20:57.277>in <00:20:57.432>all <00:20:57.588>of <00:20:57.743>your <00:20:57.899>favorite <00:20:58.055>stuff.

471
00:20:59.145 --> 00:21:01.845
<00:20:59.145>So <00:20:59.272>let's <00:20:59.399>say <00:20:59.526>you <00:20:59.654>have <00:20:59.781>a <00:20:59.908>React <00:21:00.035>project <00:21:00.163>or <00:21:00.290>a <00:21:00.417>View <00:21:00.545>project

472
00:21:02.425 --> 00:21:05.725
<00:21:02.425>or <00:21:02.580>a <00:21:02.736>Felt <00:21:02.891>project, <00:21:03.047>you <00:21:03.202>can <00:21:03.358>bring <00:21:03.513>those <00:21:03.669>into <00:21:03.825>Astro

473
00:21:05.865 --> 00:21:07.245
<00:21:05.865>and <00:21:06.175>it <00:21:06.485>will <00:21:06.796>compile <00:21:07.107>all

474
00:21:07.245 --> 00:21:11.285
<00:21:07.245>of <00:21:07.400>them <00:21:07.556>into <00:21:07.711>plain <00:21:07.867>HTML <00:21:08.022>in <00:21:08.178>a <00:21:08.333>little <00:21:08.489>vi <00:21:08.645>JavaScript.

475
00:21:11.825 --> 00:21:13.445
<00:21:11.825>Uh, <00:21:12.058>you <00:21:12.291>can <00:21:12.525>even <00:21:12.758>mix <00:21:12.991>and <00:21:13.225>match.

476
00:21:13.825 --> 00:21:16.685
<00:21:13.825>So <00:21:13.952>let's <00:21:14.079>say <00:21:14.206>you <00:21:14.334>have <00:21:14.461>a <00:21:14.588>component <00:21:14.715>you <00:21:14.843>really <00:21:14.970>love <00:21:15.097>from <00:21:15.225>React

477
00:21:16.685 --> 00:21:18.925
<00:21:16.685>and <00:21:16.860>another <00:21:17.034>one <00:21:17.210>from <00:21:17.385>View, <00:21:17.560>you <00:21:17.735>can <00:21:17.909>use <00:21:18.085>both

478
00:21:18.925 --> 00:21:20.845
<00:21:18.925>of <00:21:19.080>those <00:21:19.236>on <00:21:19.391>the <00:21:19.547>same <00:21:19.702>page <00:21:19.858>in <00:21:20.013>the <00:21:20.169>same <00:21:20.325>project.

479
00:21:21.625 --> 00:21:24.845
<00:21:21.625>And <00:21:21.800>Astro <00:21:21.975>is <00:21:22.150>going <00:21:22.325>to <00:21:22.500>figure <00:21:22.675>out <00:21:22.850>what <00:21:23.025>sort

480
00:21:24.845 --> 00:21:26.805
<00:21:24.845>of <00:21:25.125>updates <00:21:25.405>those <00:21:25.685>components <00:21:25.965>actually <00:21:26.245>do.

481
00:21:27.515 --> 00:21:30.045
<00:21:27.515>Spit <00:21:27.690>out <00:21:27.865>the <00:21:28.040>JavaScript <00:21:28.215>that <00:21:28.390>just <00:21:28.565>does <00:21:28.740>those <00:21:28.915>things,

482
00:21:30.615 --> 00:21:32.485
<00:21:30.615>ditch <00:21:30.848>the <00:21:31.081>library <00:21:31.315>that <00:21:31.548>goes <00:21:31.781>with <00:21:32.015>it

483
00:21:32.985 --> 00:21:35.565
<00:21:32.985>and <00:21:33.218>deliver <00:21:33.451>you <00:21:33.685>something <00:21:33.918>that's <00:21:34.151>way <00:21:34.385>smaller

484
00:21:35.665 --> 00:21:38.205
<00:21:35.665>and <00:21:35.865>more <00:21:36.065>performant <00:21:36.264>to <00:21:36.465>deliver <00:21:36.665>to <00:21:36.865>your <00:21:37.065>user.

485
00:21:38.385 --> 00:21:42.525
<00:21:38.385>Um, <00:21:38.585>Jason <00:21:38.785>Langsdorf <00:21:38.985>over <00:21:39.185>at, <00:21:39.385>um, <00:21:39.585>uh, <00:21:39.785>Netlify

486
00:21:42.605 --> 00:21:44.485
<00:21:42.605>and <00:21:42.780>Jason, <00:21:42.955>I'm <00:21:43.130>sure <00:21:43.305>I <00:21:43.480>butchered <00:21:43.655>your <00:21:43.830>last <00:21:44.005>name.

487
00:21:44.585 --> 00:21:47.165
<00:21:44.585>I'm <00:21:44.725>really <00:21:44.865>sorry <00:21:45.005>about <00:21:45.145>that. <00:21:45.285>Um, <00:21:45.425>he <00:21:45.565>did <00:21:45.705>a <00:21:45.845>quick <00:21:45.985>test

488
00:21:47.165 --> 00:21:49.085
<00:21:47.165>with <00:21:47.398>Astro <00:21:47.631>a <00:21:47.865>few <00:21:48.098>weeks <00:21:48.331>ago, <00:21:48.565>um,

489
00:21:49.175 --> 00:21:52.645
<00:21:49.175>where <00:21:49.302>he <00:21:49.429>took <00:21:49.556>a <00:21:49.684>next <00:21:49.811>JS <00:21:49.938>project, <00:21:50.065>ported <00:21:50.193>it <00:21:50.320>over <00:21:50.447>to <00:21:50.575>Astro,

490
00:21:52.665 --> 00:21:54.645
<00:21:52.665>was <00:21:52.840>able <00:21:53.014>to <00:21:53.190>use <00:21:53.365>90% <00:21:53.540>of <00:21:53.715>the <00:21:53.889>same <00:21:54.065>code.

491
00:21:54.865 --> 00:21:57.365
<00:21:54.865>Um, <00:21:55.215>and <00:21:55.565>the, <00:21:55.915>the <00:21:56.265>result

492
00:21:57.365 --> 00:22:00.245
<00:21:57.365>that <00:21:57.598>got <00:21:57.831>compiled <00:21:58.065>out <00:21:58.298>was <00:21:58.531>90% <00:21:58.765>smaller.

493
00:22:00.705 --> 00:22:04.885
<00:22:00.705>Um, <00:22:00.860>and, <00:22:01.016>um, <00:22:01.171>orders <00:22:01.327>of <00:22:01.482>magnitude <00:22:01.638>faster <00:22:01.793>to <00:22:01.949>both <00:22:02.105>load

494
00:22:05.305 --> 00:22:08.605
<00:22:05.305>and <00:22:05.480>update <00:22:05.655>than <00:22:05.830>the <00:22:06.005>original <00:22:06.180>next <00:22:06.355>JS <00:22:06.530>project <00:22:06.705>was.

495
00:22:08.715 --> 00:22:10.925
<00:22:08.715>It's <00:22:08.889>just <00:22:09.064>such <00:22:09.240>a <00:22:09.415>net <00:22:09.590>win <00:22:09.764>across <00:22:09.939>the <00:22:10.115>board

496
00:22:10.945 --> 00:22:12.125
<00:22:10.945>to <00:22:11.157>use <00:22:11.369>a <00:22:11.582>tool <00:22:11.794>like <00:22:12.007>this.

497
00:22:12.745 --> 00:22:15.085
<00:22:12.745>If <00:22:12.900>you <00:22:13.056>enjoy <00:22:13.211>using <00:22:13.367>libraries, <00:22:13.522>it <00:22:13.678>allows <00:22:13.833>you <00:22:13.989>to <00:22:14.145>maintain

498
00:22:15.085 --> 00:22:16.125
<00:22:15.085>that <00:22:15.553>same <00:22:16.021>experience

499
00:22:16.125 --> 00:22:18.885
<00:22:16.125>and <00:22:16.358>workflow <00:22:16.591>while <00:22:16.825>also <00:22:17.058>giving <00:22:17.291>the <00:22:17.525>users

500
00:22:19.405 --> 00:22:20.645
<00:22:19.405>a <00:22:19.777>better <00:22:20.149>experience, <00:22:20.521>um,

501
00:22:20.645 --> 00:22:22.165
<00:22:20.645>which <00:22:20.873>I <00:22:21.101>think <00:22:21.329>is <00:22:21.557>really, <00:22:21.784>really <00:22:22.013>cool.

502
00:22:23.795 --> 00:22:25.975
<00:22:23.795>The <00:22:23.995>idea <00:22:24.195>with <00:22:24.395>all <00:22:24.595>of <00:22:24.795>these <00:22:24.995>approaches <00:22:25.195>is

503
00:22:26.035 --> 00:22:27.895
<00:22:26.035>to <00:22:26.315>reduce <00:22:26.595>the <00:22:26.875>amount <00:22:27.155>of <00:22:27.435>JavaScript

504
00:22:27.895 --> 00:22:29.055
<00:22:27.895>that <00:22:28.156>we're <00:22:28.417>shipping <00:22:28.678>to <00:22:28.939>users.

505
00:22:29.155 --> 00:22:31.575
<00:22:29.155>And <00:22:29.330>you've <00:22:29.504>probably <00:22:29.680>caught <00:22:29.855>onto <00:22:30.030>that <00:22:30.205>by <00:22:30.379>now, <00:22:30.555>um,

506
00:22:31.575 --> 00:22:34.015
<00:22:31.575>because <00:22:31.808>remember <00:22:32.041>JavaScript <00:22:32.275>is <00:22:32.508>really, <00:22:32.741>really <00:22:32.975>slow.

507
00:22:34.475 --> 00:22:39.055
<00:22:34.475>So <00:22:34.602>along <00:22:34.729>that <00:22:34.856>same <00:22:34.984>vein, <00:22:35.111>one <00:22:35.238>other <00:22:35.365>thing <00:22:35.493>we <00:22:35.620>can <00:22:35.747>do <00:22:35.875>is

508
00:22:39.075 --> 00:22:41.535
<00:22:39.075>to <00:22:39.275>lean <00:22:39.475>more <00:22:39.675>heavily <00:22:39.875>on <00:22:40.075>the <00:22:40.275>platform <00:22:40.475>itself.

509
00:22:41.535 --> 00:22:42.695
<00:22:41.535>And <00:22:41.684>I'm <00:22:41.833>sure <00:22:41.982>you <00:22:42.131>all <00:22:42.280>saw <00:22:42.429>this <00:22:42.579>coming

510
00:22:42.855 --> 00:22:44.015
<00:22:42.855>'cause <00:22:43.063>I'm <00:22:43.272>the <00:22:43.481>vanilla <00:22:43.690>JS <00:22:43.899>guy,

511
00:22:44.435 --> 00:22:48.175
<00:22:44.435>but, <00:22:44.575>um, <00:22:44.715>there <00:22:44.855>are <00:22:44.995>so <00:22:45.135>many <00:22:45.274>things <00:22:45.415>that <00:22:45.554>the <00:22:45.695>platform <00:22:45.835>does

512
00:22:48.195 --> 00:22:49.535
<00:22:48.195>for <00:22:48.367>us <00:22:48.539>that <00:22:48.711>used <00:22:48.884>to <00:22:49.056>be <00:22:49.228>really <00:22:49.401>hard.

513
00:22:49.635 --> 00:22:52.895
<00:22:49.635>We <00:22:49.775>already <00:22:49.915>saw <00:22:50.055>this <00:22:50.195>happen <00:22:50.335>with <00:22:50.475>jQuery <00:22:50.615>where, <00:22:50.754>um, <00:22:50.895>you <00:22:51.035>know,

514
00:22:52.895 --> 00:22:54.975
<00:22:52.895>things <00:22:53.070>that <00:22:53.245>used <00:22:53.420>to <00:22:53.595>require <00:22:53.770>a <00:22:53.945>library <00:22:54.120>we <00:22:54.295>can

515
00:22:54.975 --> 00:22:56.135
<00:22:54.975>just <00:22:55.322>now <00:22:55.671>do <00:22:56.019>natively.

516
00:22:57.025 --> 00:22:58.895
<00:22:57.025>We're <00:22:57.305>seeing <00:22:57.585>that <00:22:57.865>with <00:22:58.145>interactive <00:22:58.425>components

517
00:22:58.995 --> 00:23:02.335
<00:22:58.995>and <00:22:59.195>HTML <00:22:59.395>now, <00:22:59.594>um, <00:22:59.794>for <00:22:59.995>example, <00:23:00.195>the <00:23:00.395>details

518
00:23:02.395 --> 00:23:04.775
<00:23:02.395>and <00:23:02.628>summary <00:23:02.861>elements <00:23:03.095>can <00:23:03.328>create <00:23:03.561>a <00:23:03.795>disclosure

519
00:23:04.915 --> 00:23:06.055
<00:23:04.915>or <00:23:05.428>accordion <00:23:05.941>component.

520
00:23:06.285 --> 00:23:08.055
<00:23:06.285>They're <00:23:06.565>accessible, <00:23:06.845>they <00:23:07.125>can <00:23:07.405>be <00:23:07.685>styled,

521
00:23:08.055 --> 00:23:10.095
<00:23:08.055>and <00:23:08.210>they <00:23:08.366>even <00:23:08.521>emit <00:23:08.677>a <00:23:08.832>hook <00:23:08.988>that <00:23:09.143>you <00:23:09.299>can, <00:23:09.455>um,

522
00:23:10.115 --> 00:23:11.775
<00:23:10.115>or <00:23:10.270>a <00:23:10.426>custom <00:23:10.581>event <00:23:10.737>rather, <00:23:10.892>that <00:23:11.048>you <00:23:11.203>can <00:23:11.359>hook <00:23:11.515>into

523
00:23:12.325 --> 00:23:15.495
<00:23:12.325>with <00:23:12.480>JavaScript <00:23:12.636>to <00:23:12.791>extend <00:23:12.947>them <00:23:13.102>a <00:23:13.258>bit <00:23:13.413>if <00:23:13.569>you <00:23:13.725>want.

524
00:23:16.325 --> 00:23:19.615
<00:23:16.325>Similarly, <00:23:16.480>you <00:23:16.636>can <00:23:16.791>get <00:23:16.947>a <00:23:17.102>native <00:23:17.258>HTML <00:23:17.413>auto <00:23:17.569>complete <00:23:17.725>component

525
00:23:20.025 --> 00:23:21.615
<00:23:20.025>using <00:23:20.375>the <00:23:20.725>humble <00:23:21.075>input <00:23:21.425>element

526
00:23:21.955 --> 00:23:23.815
<00:23:21.955>and <00:23:22.188>associating <00:23:22.421>it <00:23:22.655>with <00:23:22.888>a <00:23:23.121>data <00:23:23.355>list.

527
00:23:25.055 --> 00:23:27.355
<00:23:25.055>My <00:23:25.335>most <00:23:25.615>popular <00:23:25.895>JavaScript <00:23:26.175>library, <00:23:26.455>uh,

528
00:23:27.375 --> 00:23:30.475
<00:23:27.375>the <00:23:27.515>hardest <00:23:27.655>one <00:23:27.795>I've <00:23:27.935>ever <00:23:28.075>written <00:23:28.215>is <00:23:28.355>a <00:23:28.495>vanilla <00:23:28.635>JS <00:23:28.775>smooth

529
00:23:30.475 --> 00:23:31.995
<00:23:30.475>scroll <00:23:31.158>animation <00:23:31.842>library

530
00:23:32.335 --> 00:23:35.675
<00:23:32.335>and <00:23:32.475>it <00:23:32.615>animates <00:23:32.755>scrolling <00:23:32.895>down <00:23:33.035>to <00:23:33.175>anchor <00:23:33.315>links <00:23:33.455>on <00:23:33.595>a <00:23:33.735>page.

531
00:23:36.095 --> 00:23:39.915
<00:23:36.095>Uh, <00:23:36.250>it <00:23:36.406>is <00:23:36.561>quite <00:23:36.717>a <00:23:36.872>lot <00:23:37.028>of <00:23:37.183>code <00:23:37.339>these <00:23:37.495>days.

532
00:23:40.295 --> 00:23:42.795
<00:23:40.295>One <00:23:40.450>line <00:23:40.606>of <00:23:40.761>CSS <00:23:40.917>now <00:23:41.072>does <00:23:41.228>the <00:23:41.383>exact <00:23:41.539>same <00:23:41.695>thing.

533
00:23:42.895 --> 00:23:46.125
<00:23:42.895>Scroll <00:23:43.128>behavior <00:23:43.361>smooth, <00:23:43.595>um, <00:23:43.828>for <00:23:44.061>accessibility <00:23:44.295>reasons,

534
00:23:46.185 --> 00:23:48.405
<00:23:46.185>you <00:23:46.385>want <00:23:46.585>to <00:23:46.784>disable <00:23:46.985>this <00:23:47.185>if <00:23:47.385>prefers <00:23:47.585>reduced

535
00:23:48.405 --> 00:23:49.605
<00:23:48.405>motion <00:23:48.945>is <00:23:49.485>activated.

536
00:23:49.665 --> 00:23:52.045
<00:23:49.665>So <00:23:49.781>I <00:23:49.898>guess <00:23:50.014>it <00:23:50.131>maybe <00:23:50.248>comes <00:23:50.365>out <00:23:50.481>to <00:23:50.598>like <00:23:50.715>four <00:23:50.831>or <00:23:50.948>five <00:23:51.065>lines,

537
00:23:52.505 --> 00:23:55.245
<00:23:52.505>but, <00:23:52.660>um, <00:23:52.816>you <00:23:52.971>can <00:23:53.127>just <00:23:53.282>toss <00:23:53.438>all <00:23:53.593>that <00:23:53.749>JavaScript <00:23:53.905>out

538
00:23:55.425 --> 00:23:56.885
<00:23:55.425>and <00:23:55.687>handle <00:23:55.950>it <00:23:56.213>with <00:23:56.476>CSS <00:23:56.739>now.

539
00:23:56.885 --> 00:23:58.405
<00:23:56.885>And <00:23:57.056>there <00:23:57.227>are <00:23:57.398>so <00:23:57.569>many <00:23:57.740>other <00:23:57.911>examples <00:23:58.081>of <00:23:58.253>this

540
00:23:58.405 --> 00:23:59.485
<00:23:58.405>where <00:23:59.377>animations

541
00:23:59.485 --> 00:24:02.245
<00:23:59.485>and <00:23:59.640>things <00:23:59.796>that <00:23:59.951>used <00:24:00.107>to <00:24:00.262>be <00:24:00.418>really, <00:24:00.573>really <00:24:00.729>hard, <00:24:00.885>um,

542
00:24:02.265 --> 00:24:03.725
<00:24:02.265>and <00:24:02.922>required <00:24:03.579>JavaScript,

543
00:24:03.905 --> 00:24:06.885
<00:24:03.905>now <00:24:04.105>just <00:24:04.305>the <00:24:04.504>platform <00:24:04.705>bakes <00:24:04.905>in <00:24:05.105>for <00:24:05.305>you.

544
00:24:07.705 --> 00:24:11.955
<00:24:07.705>Um, <00:24:07.832>and, <00:24:07.959>uh, <00:24:08.086>we <00:24:08.214>still <00:24:08.341>have <00:24:08.468>a <00:24:08.595>ways <00:24:08.723>to <00:24:08.850>go <00:24:08.977>with <00:24:09.105>some

545
00:24:11.955 --> 00:24:13.755
<00:24:11.955>of <00:24:12.155>the <00:24:12.355>things <00:24:12.554>that <00:24:12.754>modern <00:24:12.955>libraries <00:24:13.155>do <00:24:13.355>today,

546
00:24:13.975 --> 00:24:15.555
<00:24:13.975>but <00:24:14.208>we're <00:24:14.441>headed <00:24:14.675>in <00:24:14.908>the <00:24:15.141>right <00:24:15.375>direction.

547
00:24:15.695 --> 00:24:17.555
<00:24:15.695>So, <00:24:16.044>uh, <00:24:16.395>for <00:24:16.745>example, <00:24:17.095>um,

548
00:24:17.585 --> 00:24:20.395
<00:24:17.585>most <00:24:17.760>state-based <00:24:17.935>UI <00:24:18.110>libraries <00:24:18.285>are <00:24:18.460>gonna <00:24:18.635>sanitize <00:24:18.810>your <00:24:18.985>data

549
00:24:20.495 --> 00:24:22.235
<00:24:20.495>before <00:24:20.774>rendering <00:24:21.054>it <00:24:21.334>into <00:24:21.614>the <00:24:21.895>UI

550
00:24:22.235 --> 00:24:24.475
<00:24:22.235>to <00:24:22.409>help <00:24:22.584>protect <00:24:22.760>you <00:24:22.935>against <00:24:23.110>cross <00:24:23.284>site <00:24:23.459>scripting <00:24:23.635>attacks.

551
00:24:24.905 --> 00:24:26.515
<00:24:24.905>There's <00:24:25.138>no <00:24:25.371>really <00:24:25.605>good <00:24:25.838>way <00:24:26.071>to <00:24:26.305>do

552
00:24:26.515 --> 00:24:28.355
<00:24:26.515>that <00:24:26.748>natively <00:24:26.981>in <00:24:27.215>the <00:24:27.448>browser <00:24:27.681>right <00:24:27.915>now.

553
00:24:28.375 --> 00:24:31.315
<00:24:28.375>You <00:24:28.515>have <00:24:28.655>to, <00:24:28.795>um, <00:24:28.935>rely <00:24:29.075>on <00:24:29.215>third <00:24:29.355>party <00:24:29.495>libraries <00:24:29.635>for <00:24:29.775>that.

554
00:24:31.815 --> 00:24:34.875
<00:24:31.815>But, <00:24:31.970>uh, <00:24:32.126>there <00:24:32.281>is <00:24:32.437>a <00:24:32.592>proposal <00:24:32.748>in <00:24:32.903>the <00:24:33.059>works, <00:24:33.215>um,

555
00:24:35.055 --> 00:24:37.635
<00:24:35.055>it <00:24:35.182>might <00:24:35.309>be <00:24:35.436>in <00:24:35.564>spec <00:24:35.691>now, <00:24:35.818>I'm <00:24:35.945>not <00:24:36.073>entirely <00:24:36.200>sure <00:24:36.327>that, <00:24:36.455>um,

556
00:24:38.595 --> 00:24:40.435
<00:24:38.595>provides <00:24:38.875>an <00:24:39.155>API <00:24:39.435>for <00:24:39.715>doing <00:24:39.995>that,

557
00:24:40.575 --> 00:24:44.235
<00:24:40.575>for <00:24:40.808>removing <00:24:41.041>potentially <00:24:41.275>malicious <00:24:41.508>stuff <00:24:41.741>in <00:24:41.975>particular

558
00:24:44.265 --> 00:24:47.315
<00:24:44.265>scripts <00:24:44.420>that <00:24:44.576>can <00:24:44.731>run <00:24:44.887>and <00:24:45.042>run <00:24:45.198>cross <00:24:45.353>site <00:24:45.509>scripting <00:24:45.665>attacks.

559
00:24:47.975 --> 00:24:50.795
<00:24:47.975>Um, <00:24:48.149>one <00:24:48.324>thing <00:24:48.500>I <00:24:48.675>haven't <00:24:48.850>seen <00:24:49.024>a <00:24:49.199>proposal <00:24:49.375>for

560
00:24:50.795 --> 00:24:54.155
<00:24:50.795>that <00:24:50.935>I <00:24:51.075>would <00:24:51.215>love <00:24:51.355>to, <00:24:51.495>um, <00:24:51.635>is <00:24:51.775>something <00:24:51.915>that <00:24:52.055>allows <00:24:52.195>you

561
00:24:54.155 --> 00:24:57.475
<00:24:54.155>to <00:24:54.295>take <00:24:54.435>an <00:24:54.575>HTML <00:24:54.715>string, <00:24:54.855>compare <00:24:54.995>it <00:24:55.135>against <00:24:55.274>the <00:24:55.415>existing <00:24:55.555>ui,

562
00:24:58.015 --> 00:25:01.155
<00:24:58.015>and <00:24:58.190>just <00:24:58.365>have <00:24:58.540>the <00:24:58.715>browser <00:24:58.890>selectively <00:24:59.065>make <00:24:59.240>the <00:24:59.415>updates.

563
00:25:01.455 --> 00:25:05.035
<00:25:01.455>Um, <00:25:01.610>so <00:25:01.766>like <00:25:01.921>right <00:25:02.077>now <00:25:02.232>you <00:25:02.388>can <00:25:02.543>use <00:25:02.699>inner <00:25:02.855>HTML

564
00:25:05.035 --> 00:25:07.355
<00:25:05.035>to <00:25:05.190>wipe <00:25:05.346>the <00:25:05.501>whole <00:25:05.657>thing <00:25:05.812>out, <00:25:05.968>but <00:25:06.123>that <00:25:06.279>loses <00:25:06.435>focus

565
00:25:07.615 --> 00:25:09.795
<00:25:07.615>and <00:25:07.755>kind <00:25:07.895>of, <00:25:08.035>you <00:25:08.175>know, <00:25:08.315>breaks <00:25:08.455>a <00:25:08.595>whole <00:25:08.735>bunch <00:25:08.875>of <00:25:09.015>things.

566
00:25:10.095 --> 00:25:11.835
<00:25:10.095>Um, <00:25:10.328>but <00:25:10.561>being <00:25:10.795>able <00:25:11.028>to <00:25:11.261>say, <00:25:11.495>here's

567
00:25:11.835 --> 00:25:15.175
<00:25:11.835>what <00:25:11.990>the <00:25:12.146>HTML <00:25:12.301>should <00:25:12.457>look <00:25:12.612>like, <00:25:12.768>make <00:25:12.923>it <00:25:13.079>look <00:25:13.235>like

568
00:25:15.175 --> 00:25:17.495
<00:25:15.175>that <00:25:15.455>without <00:25:15.735>removing <00:25:16.014>the <00:25:16.294>existing <00:25:16.575>stuff

569
00:25:17.495 --> 00:25:19.655
<00:25:17.495>that <00:25:17.650>should <00:25:17.806>stay <00:25:17.961>there, <00:25:18.117>that <00:25:18.272>would <00:25:18.428>be <00:25:18.583>really, <00:25:18.739>really <00:25:18.895>cool.

570
00:25:19.915 --> 00:25:22.055
<00:25:19.915>Um, <00:25:20.090>and <00:25:20.264>I <00:25:20.440>think <00:25:20.615>we <00:25:20.790>have <00:25:20.965>history <00:25:21.139>for <00:25:21.315>that.

571
00:25:22.185 --> 00:25:23.855
<00:25:22.185>We've <00:25:22.534>seen <00:25:22.885>that <00:25:23.235>with <00:25:23.585>jQuery

572
00:25:23.855 --> 00:25:25.255
<00:25:23.855>where <00:25:24.065>the <00:25:24.275>best <00:25:24.485>stuff <00:25:24.695>from <00:25:24.905>the <00:25:25.115>library

573
00:25:25.425 --> 00:25:26.615
<00:25:25.425>moved <00:25:25.782>into <00:25:26.139>the <00:25:26.496>platform.

574
00:25:27.415 --> 00:25:30.495
<00:25:27.415>I <00:25:27.542>suspect <00:25:27.669>that <00:25:27.796>over <00:25:27.924>the <00:25:28.051>next <00:25:28.178>five <00:25:28.305>to <00:25:28.433>10 <00:25:28.560>years, <00:25:28.687>we're <00:25:28.815>going

575
00:25:30.495 --> 00:25:33.175
<00:25:30.495>to <00:25:30.622>see <00:25:30.749>more <00:25:30.876>and <00:25:31.004>more <00:25:31.131>of <00:25:31.258>the <00:25:31.385>best <00:25:31.513>stuff <00:25:31.640>from <00:25:31.767>modern <00:25:31.895>libraries

576
00:25:33.605 --> 00:25:35.495
<00:25:33.605>move <00:25:33.885>over <00:25:34.165>into <00:25:34.445>the <00:25:34.725>platform <00:25:35.005>itself.

577
00:25:35.555 --> 00:25:38.175
<00:25:35.555>And <00:25:35.755>I'm <00:25:35.955>by <00:25:36.155>far <00:25:36.355>not <00:25:36.555>the <00:25:36.755>first <00:25:36.955>person

578
00:25:38.315 --> 00:25:40.775
<00:25:38.315>to <00:25:38.490>like <00:25:38.665>bring <00:25:38.840>this <00:25:39.015>up <00:25:39.190>or <00:25:39.365>talk <00:25:39.540>about <00:25:39.715>this.

579
00:25:41.035 --> 00:25:44.655
<00:25:41.035>Um, <00:25:41.162>Lori <00:25:41.289>Vos, <00:25:41.416>who <00:25:41.544>gave <00:25:41.671>a <00:25:41.798>really <00:25:41.925>great <00:25:42.053>talk <00:25:42.180>the <00:25:42.307>other <00:25:42.435>day,

580
00:25:44.795 --> 00:25:47.015
<00:25:44.795>um, <00:25:44.995>he's <00:25:45.195>talked <00:25:45.395>about <00:25:45.595>this <00:25:45.795>many, <00:25:45.995>many <00:25:46.195>times.

581
00:25:47.275 --> 00:25:49.295
<00:25:47.275>Um, <00:25:47.450>it <00:25:47.625>may <00:25:47.800>actually <00:25:47.975>have <00:25:48.150>been <00:25:48.325>him <00:25:48.500>that <00:25:48.675>kind

582
00:25:49.295 --> 00:25:51.415
<00:25:49.295>of <00:25:49.422>put <00:25:49.549>this <00:25:49.676>little <00:25:49.804>idea <00:25:49.931>in <00:25:50.058>my <00:25:50.185>head <00:25:50.313>in <00:25:50.440>the <00:25:50.567>first <00:25:50.695>place.

583
00:25:52.155 --> 00:25:55.055
<00:25:52.155>Um, <00:25:52.295>but <00:25:52.435>you <00:25:52.575>know, <00:25:52.715>you <00:25:52.855>may <00:25:52.995>have <00:25:53.135>noticed <00:25:53.274>that <00:25:53.415>a <00:25:53.555>lot

584
00:25:55.175 --> 00:25:57.415
<00:25:55.175>of <00:25:55.330>the <00:25:55.486>approaches <00:25:55.641>I'm <00:25:55.797>talking <00:25:55.952>about <00:25:56.108>here <00:25:56.263>are <00:25:56.419>actually <00:25:56.575>old

585
00:25:57.445 --> 00:25:59.855
<00:25:57.445>ones <00:25:57.725>just <00:25:58.004>reimagined <00:25:58.284>a <00:25:58.564>little <00:25:58.845>bit.

586
00:26:00.395 --> 00:26:02.335
<00:26:00.395>And <00:26:00.570>the <00:26:00.745>thing <00:26:00.920>is, <00:26:01.095>the <00:26:01.270>web <00:26:01.445>moves <00:26:01.620>in <00:26:01.795>waves.

587
00:26:02.335 --> 00:26:05.615
<00:26:02.335>This <00:26:02.475>seems <00:26:02.615>to <00:26:02.755>happen <00:26:02.895>in <00:26:03.035>about <00:26:03.175>10 <00:26:03.315>year <00:26:03.455>cycles <00:26:03.595>where, <00:26:03.735>um,

588
00:26:06.025 --> 00:26:09.535
<00:26:06.025>we'll <00:26:06.165>have <00:26:06.305>a <00:26:06.445>big <00:26:06.585>kind <00:26:06.725>of <00:26:06.865>surge <00:26:07.005>of <00:26:07.145>tools <00:26:07.285>and <00:26:07.425>libraries,

589
00:26:09.875 --> 00:26:11.735
<00:26:09.875>and <00:26:10.030>then <00:26:10.186>we'll <00:26:10.341>move <00:26:10.497>into <00:26:10.652>a <00:26:10.808>phase <00:26:10.963>where <00:26:11.119>people <00:26:11.275>start

590
00:26:11.735 --> 00:26:13.975
<00:26:11.735>to <00:26:12.014>create <00:26:12.294>lightweight <00:26:12.574>alternatives <00:26:12.854>to <00:26:13.135>those.

591
00:26:14.075 --> 00:26:15.335
<00:26:14.075>So <00:26:14.358>some <00:26:14.642>of <00:26:14.925>you <00:26:15.209>may

592
00:26:15.335 --> 00:26:17.375
<00:26:15.335>or <00:26:15.510>may <00:26:15.685>not <00:26:15.860>remember <00:26:16.035>that, <00:26:16.210>um, <00:26:16.385>a <00:26:16.560>little <00:26:16.735>while

593
00:26:17.375 --> 00:26:20.175
<00:26:17.375>after <00:26:17.550>jQuery <00:26:17.725>kind <00:26:17.900>of <00:26:18.075>peaked <00:26:18.250>in <00:26:18.425>popularity, <00:26:18.600>we <00:26:18.775>started

594
00:26:20.175 --> 00:26:23.335
<00:26:20.175>to <00:26:20.315>see <00:26:20.455>a <00:26:20.595>slew <00:26:20.735>of <00:26:20.875>libraries <00:26:21.014>that <00:26:21.155>did <00:26:21.294>the <00:26:21.435>same <00:26:21.575>thing

595
00:26:23.335 --> 00:26:24.535
<00:26:23.335>with <00:26:23.695>a <00:26:24.055>smaller <00:26:24.415>footprint.

596
00:26:24.675 --> 00:26:26.375
<00:26:24.675>Um, <00:26:24.830>some <00:26:24.986>of <00:26:25.141>them <00:26:25.297>are <00:26:25.452>still <00:26:25.608>out <00:26:25.763>on <00:26:25.919>the <00:26:26.075>web,

597
00:26:26.375 --> 00:26:28.175
<00:26:26.375>like <00:26:26.725>umbrella <00:26:27.075>js, <00:26:27.425>for <00:26:27.775>example.

598
00:26:28.435 --> 00:26:33.415
<00:26:28.435>Um, <00:26:28.562>and, <00:26:28.689>uh, <00:26:28.816>it <00:26:28.944>was <00:26:29.071>just <00:26:29.198>a <00:26:29.325>whole <00:26:29.453>handful <00:26:29.580>of <00:26:29.707>these, <00:26:29.835>um,

599
00:26:33.485 --> 00:26:36.015
<00:26:33.485>kind <00:26:33.640>of <00:26:33.796>lean, <00:26:33.951>get <00:26:34.107>rid <00:26:34.262>of <00:26:34.418>a <00:26:34.573>bunch <00:26:34.729>of <00:26:34.885>stuff

600
00:26:36.015 --> 00:26:38.335
<00:26:36.015>that <00:26:36.155>people <00:26:36.295>don't <00:26:36.435>use <00:26:36.575>as <00:26:36.715>much, <00:26:36.855>keep <00:26:36.995>the, <00:26:37.135>like, <00:26:37.275>the <00:26:37.415>guts

601
00:26:38.335 --> 00:26:39.495
<00:26:38.335>of <00:26:38.509>it, <00:26:38.683>kind <00:26:38.857>of <00:26:39.031>kind <00:26:39.205>of <00:26:39.379>things.

602
00:26:40.155 --> 00:26:42.055
<00:26:40.155>Um, <00:26:40.355>and <00:26:40.555>then <00:26:40.754>eventually <00:26:40.955>the <00:26:41.155>platform <00:26:41.355>took <00:26:41.555>over

603
00:26:42.055 --> 00:26:43.860
<00:26:42.055>and <00:26:42.210>we <00:26:42.366>kind <00:26:42.521>of <00:26:42.677>hit <00:26:42.832>this <00:26:42.988>nice <00:26:43.143>nice <00:26:43.299>little <00:26:43.455>lull

604
00:26:43.860 --> 00:26:46.605
<00:26:43.860>where <00:26:44.060>we <00:26:44.260>weren't <00:26:44.459>using <00:26:44.659>as <00:26:44.860>much <00:26:45.060>code <00:26:45.260>anymore.

605
00:26:46.905 --> 00:26:49.885
<00:26:46.905>And <00:26:47.045>then <00:26:47.185>shortly <00:26:47.325>thereafter, <00:26:47.465>we <00:26:47.605>started <00:26:47.745>to <00:26:47.885>see <00:26:48.024>the <00:26:48.165>next <00:26:48.305>wave

606
00:26:50.505 --> 00:26:53.925
<00:26:50.505>of <00:26:50.660>libraries <00:26:50.816>that <00:26:50.971>solved <00:26:51.127>the <00:26:51.282>next <00:26:51.438>suite <00:26:51.593>of <00:26:51.749>problems <00:26:51.905>now

607
00:26:53.925 --> 00:26:56.805
<00:26:53.925>that <00:26:54.065>these <00:26:54.205>had <00:26:54.345>kind <00:26:54.485>of <00:26:54.625>been <00:26:54.764>figured <00:26:54.905>out <00:26:55.044>at <00:26:55.185>that <00:26:55.325>point.

608
00:26:57.065 --> 00:27:01.045
<00:26:57.065>Um, <00:26:57.192>and <00:26:57.319>so <00:26:57.446>I <00:26:57.574>kind <00:26:57.701>of <00:26:57.828>see <00:26:57.955>us <00:26:58.083>now <00:26:58.210>at <00:26:58.337>the <00:26:58.465>top

609
00:27:01.105 --> 00:27:04.405
<00:27:01.105>of <00:27:01.260>the <00:27:01.416>current <00:27:01.571>library <00:27:01.727>wave <00:27:01.882>headed <00:27:02.038>down <00:27:02.193>into <00:27:02.349>that <00:27:02.505>trough

610
00:27:04.405 --> 00:27:06.485
<00:27:04.405>where <00:27:04.605>we're <00:27:04.805>starting <00:27:05.004>to <00:27:05.205>see <00:27:05.405>more <00:27:05.605>micro <00:27:05.805>libraries

611
00:27:06.625 --> 00:27:08.045
<00:27:06.625>and <00:27:07.264>other <00:27:07.903>approaches.

612
00:27:08.225 --> 00:27:10.405
<00:27:08.225>Um, <00:27:08.380>and <00:27:08.536>eventually <00:27:08.691>this <00:27:08.847>stuff <00:27:09.002>is <00:27:09.158>just <00:27:09.313>gonna <00:27:09.469>get <00:27:09.625>absorbed

613
00:27:10.405 --> 00:27:12.845
<00:27:10.405>by <00:27:10.532>the <00:27:10.659>platform <00:27:10.786>and <00:27:10.914>we'll <00:27:11.041>have <00:27:11.168>a <00:27:11.295>whole <00:27:11.423>new <00:27:11.550>set <00:27:11.677>of <00:27:11.805>libraries

614
00:27:12.845 --> 00:27:13.845
<00:27:12.845>that <00:27:13.070>I <00:27:13.295>can <00:27:13.520>complain <00:27:13.745>about.

615
00:27:14.345 --> 00:27:17.845
<00:27:14.345>Um, <00:27:14.578>so, <00:27:14.811>uh, <00:27:15.045>to <00:27:15.278>wrap <00:27:15.511>up, <00:27:15.745>um,

616
00:27:17.865 --> 00:27:20.125
<00:27:17.865>if <00:27:18.065>you <00:27:18.265>remember <00:27:18.465>nothing <00:27:18.665>else <00:27:18.865>from <00:27:19.065>this <00:27:19.265>talk,

617
00:27:20.805 --> 00:27:24.685
<00:27:20.805>I <00:27:20.980>really <00:27:21.155>wanna <00:27:21.330>encourage <00:27:21.505>you <00:27:21.680>to <00:27:21.855>ship <00:27:22.030>less <00:27:22.205>JavaScript.

618
00:27:24.785 --> 00:27:27.565
<00:27:24.785>So <00:27:24.960>the, <00:27:25.135>the <00:27:25.310>message <00:27:25.485>here <00:27:25.660>isn't <00:27:25.835>necessarily <00:27:26.010>use <00:27:26.185>less

619
00:27:27.575 --> 00:27:31.045
<00:27:27.575>JavaScript, <00:27:27.750>you <00:27:27.925>can <00:27:28.100>absolutely <00:27:28.275>use <00:27:28.450>it <00:27:28.625>if <00:27:28.800>you're <00:27:28.975>comfortable

620
00:27:31.045 --> 00:27:32.485
<00:27:31.045>with <00:27:31.304>it <00:27:31.563>as <00:27:31.822>a <00:27:32.081>templating <00:27:32.341>language.

621
00:27:32.705 --> 00:27:34.445
<00:27:32.705>Um, <00:27:32.832>there's <00:27:32.959>a <00:27:33.086>whole <00:27:33.214>bunch <00:27:33.341>of <00:27:33.468>really <00:27:33.595>cool <00:27:33.723>things <00:27:33.850>you <00:27:33.977>can <00:27:34.105>do

622
00:27:34.445 --> 00:27:38.085
<00:27:34.445>with <00:27:34.585>JavaScript, <00:27:34.725>but <00:27:34.865>we <00:27:35.004>ideally <00:27:35.145>wanna <00:27:35.284>ship <00:27:35.425>as <00:27:35.564>little <00:27:35.705>of <00:27:35.845>it

623
00:27:38.085 --> 00:27:40.725
<00:27:38.085>as <00:27:38.260>possible <00:27:38.435>to <00:27:38.610>the <00:27:38.785>end <00:27:38.960>user, <00:27:39.135>like <00:27:39.310>just <00:27:39.485>enough.

624
00:27:41.145 --> 00:27:43.685
<00:27:41.145>Um, <00:27:41.285>there <00:27:41.425>are <00:27:41.565>times <00:27:41.705>where <00:27:41.845>you <00:27:41.985>absolutely <00:27:42.125>do <00:27:42.264>need, <00:27:42.405>need <00:27:42.545>it.

625
00:27:44.025 --> 00:27:47.405
<00:27:44.025>Um, <00:27:44.141>and <00:27:44.258>you <00:27:44.375>know, <00:27:44.491>the <00:27:44.608>idea <00:27:44.725>is <00:27:44.841>not <00:27:44.958>to <00:27:45.075>ditch <00:27:45.191>it <00:27:45.308>all <00:27:45.425>together,

626
00:27:48.025 --> 00:27:50.165
<00:27:48.025>but <00:27:48.200>let's <00:27:48.375>be <00:27:48.550>a <00:27:48.725>little <00:27:48.900>bit <00:27:49.075>more <00:27:49.250>responsible <00:27:49.425>with

627
00:27:50.185 --> 00:27:52.125
<00:27:50.185>how <00:27:50.418>we <00:27:50.651>deliver <00:27:50.885>JavaScript <00:27:51.118>to <00:27:51.351>our <00:27:51.585>users.

628
00:27:53.225 --> 00:27:54.645
<00:27:53.225>If <00:27:53.480>you <00:27:53.736>found <00:27:53.991>this <00:27:54.247>talk <00:27:54.503>interesting,

629
00:27:54.885 --> 00:27:56.725
<00:27:54.885>I <00:27:55.060>have <00:27:55.235>put <00:27:55.410>together <00:27:55.585>a <00:27:55.760>whole <00:27:55.935>bunch <00:27:56.110>of <00:27:56.285>resources

630
00:27:56.725 --> 00:28:00.685
<00:27:56.725>for <00:27:56.880>you <00:27:57.036>on <00:27:57.191>building <00:27:57.347>simpler, <00:27:57.502>faster <00:27:57.658>experiences <00:27:57.813>on <00:27:57.969>the <00:27:58.125>web

631
00:28:01.195 --> 00:28:02.205
<00:28:01.195>with <00:28:01.649>less <00:28:02.103>JavaScript,

632
00:28:02.225 --> 00:28:04.885
<00:28:02.225>and <00:28:02.425>you <00:28:02.625>can <00:28:02.824>find <00:28:03.024>all <00:28:03.225>of <00:28:03.425>that <00:28:03.625>over@gomakethings.com

633
00:28:05.055 --> 00:28:06.525
<00:28:05.055>slash <00:28:05.496>we <00:28:05.937>are <00:28:06.378>developers.

634
00:28:07.025 --> 00:28:09.085
<00:28:07.025>You <00:28:07.200>can <00:28:07.375>find <00:28:07.550>the <00:28:07.725>slides <00:28:07.900>from <00:28:08.075>this <00:28:08.250>talk, <00:28:08.425>um,

635
00:28:09.785 --> 00:28:12.565
<00:28:09.785>access <00:28:09.901>a <00:28:10.018>free <00:28:10.135>ebook <00:28:10.251>version <00:28:10.368>of <00:28:10.485>this <00:28:10.601>talk <00:28:10.718>as <00:28:10.835>well <00:28:10.951>as <00:28:11.068>a <00:28:11.185>bunch

636
00:28:12.565 --> 00:28:14.885
<00:28:12.565>of <00:28:12.845>related <00:28:13.125>articles, <00:28:13.405>podcasts, <00:28:13.685>and <00:28:13.965>more.

637
00:28:15.785 --> 00:28:19.285
<00:28:15.785>Um, <00:28:15.901>so <00:28:16.018>yeah, <00:28:16.135>I, <00:28:16.251>uh, <00:28:16.368>I <00:28:16.485>I <00:28:16.601>hope <00:28:16.718>to <00:28:16.835>see <00:28:16.951>you <00:28:17.068>over <00:28:17.185>there.

638
00:28:19.585 --> 00:28:22.805
<00:28:19.585>Uh, <00:28:19.701>if <00:28:19.818>you <00:28:19.935>have <00:28:20.051>any <00:28:20.168>kind <00:28:20.285>of, <00:28:20.401>uh, <00:28:20.518>you <00:28:20.635>know, <00:28:20.751>things <00:28:20.868>you <00:28:20.985>think

639
00:28:22.805 --> 00:28:24.725
<00:28:22.805>of <00:28:22.980>after <00:28:23.155>that <00:28:23.330>you <00:28:23.505>wanna <00:28:23.680>like <00:28:23.855>poke <00:28:24.030>holes <00:28:24.205>at,

640
00:28:24.745 --> 00:28:26.405
<00:28:24.745>you <00:28:24.978>can <00:28:25.211>find <00:28:25.445>my <00:28:25.678>contact <00:28:25.911>information <00:28:26.145>there.

641
00:28:26.525 --> 00:28:27.645
<00:28:26.525>I <00:28:26.651>know <00:28:26.777>we <00:28:26.903>do <00:28:27.029>have <00:28:27.155>a <00:28:27.281>q <00:28:27.407>and <00:28:27.533>a,

642
00:28:27.705 --> 00:28:29.445
<00:28:27.705>but, <00:28:28.054>um, <00:28:28.405>uh, <00:28:28.754>you <00:28:29.105>know,

643
00:28:29.445 --> 00:28:30.725
<00:28:29.445>you <00:28:29.589>can, <00:28:29.733>you <00:28:29.877>can <00:28:30.021>reach <00:28:30.165>out <00:28:30.309>to <00:28:30.453>me <00:28:30.597>anytime.

644
00:28:30.765 --> 00:28:31.765
<00:28:30.765>I <00:28:30.945>love <00:28:31.125>talking <00:28:31.305>about <00:28:31.485>this <00:28:31.665>stuff

645
00:28:37.015 --> 00:28:38.075
<00:28:37.015>And <00:28:37.333>so <00:28:37.651>do <00:28:37.969>I.

646
00:28:38.535 --> 00:28:41.955
<00:28:38.535>So, <00:28:38.710>uh, <00:28:38.885>let's, <00:28:39.060>let's <00:28:39.235>do <00:28:39.410>that. <00:28:39.585>Uh, <00:28:39.760>but <00:28:39.935>excellent.

647
00:28:42.125 --> 00:28:43.275
<00:28:42.125>It'll <00:28:42.383>not <00:28:42.642>be <00:28:42.901>my <00:28:43.160>input.

648
00:28:43.285 --> 00:28:46.755
<00:28:43.285>It'll <00:28:43.485>be <00:28:43.685>from <00:28:43.885>our <00:28:44.085>users, <00:28:44.285>uh, <00:28:44.485>visitors. <00:28:44.685>Excellent.

649
00:28:47.895 --> 00:28:50.675
<00:28:47.895>Um, <00:28:48.095>first <00:28:48.295>question <00:28:48.495>is <00:28:48.695>from <00:28:48.895>a <00:28:49.095>anonymous <00:28:49.295>user,

650
00:28:50.855 --> 00:28:51.875
<00:28:50.855>is <00:28:51.161>there <00:28:51.467>an <00:28:51.773>example

651
00:28:52.735 --> 00:28:56.475
<00:28:52.735>of <00:28:52.890>a <00:28:53.046>well <00:28:53.201>known <00:28:53.357>SBA <00:28:53.512>getting <00:28:53.668>refactored <00:28:53.823>into <00:28:53.979>a <00:28:54.135>website

652
00:28:56.905 --> 00:28:58.115
<00:28:56.905>website <00:28:57.449>between <00:28:57.994>codes?

653
00:28:58.975 --> 00:29:01.115
<00:28:58.975>Ooh. <00:28:59.208>Um, <00:28:59.441>that <00:28:59.675>is <00:28:59.908>a <00:29:00.141>great <00:29:00.375>example.

654
00:29:01.395 --> 00:29:04.515
<00:29:01.395>I <00:29:01.522>used <00:29:01.649>to <00:29:01.776>spend <00:29:01.904>a <00:29:02.031>lot <00:29:02.158>of <00:29:02.285>time <00:29:02.413>tracking <00:29:02.540>this. <00:29:02.667>Um, <00:29:02.795>mm-hmm.

655
00:29:04.655 --> 00:29:07.955
<00:29:04.655>And <00:29:04.888>I <00:29:05.121>haven't <00:29:05.355>in <00:29:05.588>quite <00:29:05.821>some <00:29:06.055>time.

656
00:29:08.335 --> 00:29:11.075
<00:29:08.335>Um, <00:29:08.490>let's <00:29:08.646>see, <00:29:08.801>do <00:29:08.957>I <00:29:09.112>still <00:29:09.268>have, <00:29:09.423>I <00:29:09.579>actually <00:29:09.735>used

657
00:29:11.075 --> 00:29:14.475
<00:29:11.075>to <00:29:11.202>have <00:29:11.329>a <00:29:11.456>website <00:29:11.584>that <00:29:11.711>kind <00:29:11.838>of <00:29:11.965>kept <00:29:12.093>track <00:29:12.220>of <00:29:12.347>these <00:29:12.475>things

658
00:29:14.475 --> 00:29:17.395
<00:29:14.475>and <00:29:14.591>it <00:29:14.708>looks <00:29:14.824>like <00:29:14.941>I <00:29:15.058>took <00:29:15.175>it <00:29:15.291>offline, <00:29:15.408>which <00:29:15.524>is <00:29:15.641>silly <00:29:15.758>of <00:29:15.875>me.

659
00:29:17.815 --> 00:29:21.235
<00:29:17.815>Um, <00:29:17.990>I, <00:29:18.165>I <00:29:18.340>don't <00:29:18.515>know. <00:29:18.690>That's <00:29:18.865>a <00:29:19.040>great <00:29:19.215>question.

660
00:29:21.455 --> 00:29:23.955
<00:29:21.455>Um, <00:29:21.804>probably, <00:29:22.155>uh, <00:29:22.504>you <00:29:22.855>may

661
00:29:23.955 --> 00:29:25.595
<00:29:23.955>or <00:29:24.071>may <00:29:24.188>not <00:29:24.304>be <00:29:24.421>able <00:29:24.538>to <00:29:24.655>tell <00:29:24.771>from <00:29:24.888>the <00:29:25.004>gray <00:29:25.121>in <00:29:25.238>my <00:29:25.355>beard,

662
00:29:25.595 --> 00:29:27.635
<00:29:25.595>but <00:29:25.711>I'm <00:29:25.828>getting <00:29:25.945>old <00:29:26.061>and <00:29:26.178>my <00:29:26.295>memory <00:29:26.411>isn't <00:29:26.528>as <00:29:26.645>great <00:29:26.761>as <00:29:26.878>it <00:29:26.995>used

663
00:29:27.635 --> 00:29:30.755
<00:29:27.635>to <00:29:27.835>be, <00:29:28.035>so, <00:29:28.235>um, <00:29:28.435>uh, <00:29:28.635>I <00:29:28.835>will <00:29:29.035>have

664
00:29:30.755 --> 00:29:32.035
<00:29:30.755>to <00:29:30.919>look <00:29:31.084>back <00:29:31.248>into <00:29:31.413>that, <00:29:31.577>to <00:29:31.742>be <00:29:31.907>honest.

665
00:29:32.235 --> 00:29:34.195
<00:29:32.235>I <00:29:32.390>just, <00:29:32.546>I <00:29:32.701>don't <00:29:32.857>know. <00:29:33.012>Um, <00:29:33.168>I <00:29:33.323>am, <00:29:33.479>I <00:29:33.635>know,

666
00:29:34.475 --> 00:29:35.475
<00:29:34.475>I <00:29:34.699>know <00:29:34.925>a <00:29:35.149>great <00:29:35.375>example.

667
00:29:35.695 --> 00:29:36.795
<00:29:35.695>Oh, <00:29:35.836>do <00:29:35.977>you, <00:29:36.119>I'd <00:29:36.260>love <00:29:36.402>to <00:29:36.543>hear <00:29:36.685>it.

668
00:29:37.225 --> 00:29:40.395
<00:29:37.225>Your <00:29:37.399>website. <00:29:37.574>Ah, <00:29:37.750>well <00:29:37.925>that's <00:29:38.100>very <00:29:38.274>nice <00:29:38.449>of <00:29:38.625>you.

669
00:29:40.495 --> 00:29:43.005
<00:29:40.495>But, <00:29:40.611>um, <00:29:40.728>I <00:29:40.844>would <00:29:40.961>love <00:29:41.078>to <00:29:41.195>be, <00:29:41.311>I <00:29:41.428>would <00:29:41.544>love <00:29:41.661>to <00:29:41.778>be <00:29:41.895>able

670
00:29:43.005 --> 00:29:46.165
<00:29:43.005>to <00:29:43.132>point <00:29:43.259>to, <00:29:43.386>well, <00:29:43.514>you <00:29:43.641>know, <00:29:43.768>so <00:29:43.895>actually <00:29:44.023>I <00:29:44.150>can, <00:29:44.277>sorry, <00:29:44.405>I,

671
00:29:46.485 --> 00:29:48.605
<00:29:46.485>I <00:29:46.659>I'm <00:29:46.834>a <00:29:47.010>little <00:29:47.185>reticent <00:29:47.360>to <00:29:47.534>bring <00:29:47.709>them <00:29:47.885>up,

672
00:29:48.705 --> 00:29:51.285
<00:29:48.705>but <00:29:48.860>one <00:29:49.016>example <00:29:49.171>that <00:29:49.327>kind <00:29:49.482>of <00:29:49.638>immediately <00:29:49.793>jumps <00:29:49.949>to <00:29:50.105>mind.

673
00:29:51.505 --> 00:29:54.565
<00:29:51.505>Um, <00:29:51.680>so <00:29:51.855>the <00:29:52.030>folks <00:29:52.205>at <00:29:52.380>Base <00:29:52.555>Camp, <00:29:52.730>um, <00:29:52.905>mm-hmm.

674
00:29:54.905 --> 00:29:57.405
<00:29:54.905>For <00:29:55.105>better <00:29:55.305>or <00:29:55.504>worse, <00:29:55.705>um, <00:29:55.905>about <00:29:56.105>a <00:29:56.305>year

675
00:29:57.405 --> 00:30:01.445
<00:29:57.405>or <00:29:57.605>so <00:29:57.805>ago, <00:29:58.004>they, <00:29:58.205>um, <00:29:58.405>they <00:29:58.605>refactored, <00:29:58.805>um,

676
00:30:02.325 --> 00:30:04.085
<00:30:02.325>Basecamp <00:30:03.025>itself, <00:30:03.725>uh,

677
00:30:05.005 --> 00:30:07.245
<00:30:05.005>actually <00:30:05.160>may <00:30:05.316>not <00:30:05.471>have <00:30:05.627>ever <00:30:05.782>been <00:30:05.938>a <00:30:06.093>single <00:30:06.249>page <00:30:06.405>app,

678
00:30:07.385 --> 00:30:08.925
<00:30:07.385>but <00:30:07.583>they <00:30:07.781>did <00:30:07.979>kind <00:30:08.177>of <00:30:08.375>this <00:30:08.572>hybrid <00:30:08.771>approach

679
00:30:08.925 --> 00:30:12.885
<00:30:08.925>where <00:30:09.080>the <00:30:09.236>views <00:30:09.391>continued <00:30:09.547>to <00:30:09.702>be <00:30:09.858>individual <00:30:10.013>pages <00:30:10.169>that <00:30:10.325>had

680
00:30:13.475 --> 00:30:16.925
<00:30:13.475>kind <00:30:13.675>of <00:30:13.875>progressive <00:30:14.074>JavaScript <00:30:14.274>enhancements <00:30:14.475>layered <00:30:14.675>on <00:30:14.875>top.

681
00:30:17.025 --> 00:30:20.845
<00:30:17.025>And <00:30:17.180>it <00:30:17.336>gave <00:30:17.491>you <00:30:17.647>this <00:30:17.802>really <00:30:17.958>snappy <00:30:18.113>instant <00:30:18.269>app-like <00:30:18.425>feel,

682
00:30:21.265 --> 00:30:24.085
<00:30:21.265>um, <00:30:21.440>while <00:30:21.615>still <00:30:21.790>being <00:30:21.965>a <00:30:22.140>multi-page <00:30:22.315>app <00:30:22.490>that <00:30:22.665>continued

683
00:30:24.085 --> 00:30:26.045
<00:30:24.085>to <00:30:24.260>work <00:30:24.435>if <00:30:24.610>the <00:30:24.785>JavaScript <00:30:24.960>failed <00:30:25.135>for <00:30:25.310>some <00:30:25.485>reason.

684
00:30:26.505 --> 00:30:28.965
<00:30:26.505>Um, <00:30:26.680>I <00:30:26.855>don't <00:30:27.030>know <00:30:27.205>if <00:30:27.380>GitHub <00:30:27.555>does <00:30:27.730>this <00:30:27.905>anymore.

685
00:30:29.545 --> 00:30:32.245
<00:30:29.545>Um, <00:30:29.685>I <00:30:29.825>haven't <00:30:29.965>looked <00:30:30.105>at <00:30:30.245>the <00:30:30.385>stack <00:30:30.525>on <00:30:30.665>their <00:30:30.805>latest <00:30:30.945>redesign,

686
00:30:32.705 --> 00:30:35.685
<00:30:32.705>um, <00:30:32.845>but <00:30:32.985>they <00:30:33.125>did <00:30:33.264>something <00:30:33.405>similar <00:30:33.544>as <00:30:33.685>well <00:30:33.824>where <00:30:33.965>they <00:30:34.105>had,

687
00:30:35.825 --> 00:30:37.685
<00:30:35.825>um, <00:30:36.291>hard <00:30:36.758>page <00:30:37.225>loads.

688
00:30:37.685 --> 00:30:40.005
<00:30:37.685>If <00:30:37.860>you <00:30:38.034>turned <00:30:38.210>off <00:30:38.385>JavaScript, <00:30:38.560>you <00:30:38.735>could <00:30:38.909>use <00:30:39.085>90%

689
00:30:40.025 --> 00:30:41.765
<00:30:40.025>of <00:30:40.375>GitHub <00:30:40.725>dot <00:30:41.075>com's <00:30:41.425>features.

690
00:30:42.385 --> 00:30:44.605
<00:30:42.385>Um, <00:30:42.618>and <00:30:42.851>then <00:30:43.085>when <00:30:43.318>JavaScript <00:30:43.551>was <00:30:43.785>enabled,

691
00:30:44.665 --> 00:30:47.245
<00:30:44.665>or <00:30:44.898>once <00:30:45.131>the <00:30:45.365>JavaScript <00:30:45.598>files <00:30:45.831>loaded, <00:30:46.065>all

692
00:30:47.245 --> 00:30:50.605
<00:30:47.245>of <00:30:47.419>the <00:30:47.594>interactivity <00:30:47.770>on <00:30:47.945>there, <00:30:48.120>um, <00:30:48.294>was <00:30:48.469>done <00:30:48.645>asynchronously

693
00:30:50.605 --> 00:30:52.685
<00:30:50.605>through <00:30:50.955>JavaScript <00:30:51.305>based <00:30:51.655>API <00:30:52.005>calls,

694
00:30:52.905 --> 00:30:54.565
<00:30:52.905>but <00:30:53.105>the <00:30:53.305>initial <00:30:53.504>page <00:30:53.705>load <00:30:53.905>was <00:30:54.105>like <00:30:54.305>a

695
00:30:54.645 --> 00:30:55.685
<00:30:54.645>server <00:30:54.956>side <00:30:55.269>rendered <00:30:55.581>app.

696
00:30:58.935 --> 00:31:01.765
<00:30:58.935>Again, <00:30:59.075>I <00:30:59.215>don't <00:30:59.355>know <00:30:59.495>if <00:30:59.635>their <00:30:59.774>latest <00:30:59.915>rebuild <00:31:00.054>works <00:31:00.195>like <00:31:00.335>that,

697
00:31:02.145 --> 00:31:03.845
<00:31:02.145>but, <00:31:02.345>uh, <00:31:02.545>like <00:31:02.745>a <00:31:02.945>year <00:31:03.145>or <00:31:03.345>two <00:31:03.545>ago

698
00:31:03.845 --> 00:31:04.845
<00:31:03.845>They <00:31:04.145>used. <00:31:04.445>Yeah. <00:31:04.745>Yeah.

700
00:31:05.125 --> 00:31:07.365
<00:31:05.125>I'm <00:31:05.475>thinking <00:31:05.825>GitHub <00:31:06.175>is, <00:31:06.525>well,

701
00:31:07.415 --> 00:31:09.525
<00:31:07.415>developers <00:31:07.648>can <00:31:07.881>also <00:31:08.115>detect <00:31:08.348>JavaScript, <00:31:08.581>so, <00:31:08.815>yeah.

702
00:31:10.025 --> 00:31:13.355
<00:31:10.025>Um, <00:31:10.305>next <00:31:10.585>question <00:31:10.865>is <00:31:11.145>from <00:31:11.425>Tia.

703
00:31:13.785 --> 00:31:16.555
<00:31:13.785>What <00:31:14.065>about <00:31:14.345>transitional <00:31:14.625>animations <00:31:14.905>on <00:31:15.185>page

704
00:31:16.795 --> 00:31:18.195
<00:31:16.795>redirects <00:31:17.215>with <00:31:17.635>s <00:31:18.054>ps?

705
00:31:18.575 --> 00:31:21.355
<00:31:18.575>You <00:31:18.750>maybe <00:31:18.925>want <00:31:19.100>the <00:31:19.275>native <00:31:19.450>flag <00:31:19.625>animations <00:31:19.800>for <00:31:19.975>going

706
00:31:21.355 --> 00:31:23.435
<00:31:21.355>to <00:31:21.635>different <00:31:21.915>pages <00:31:22.195>or <00:31:22.475>screens <00:31:22.755>Yeah.

707
00:31:23.435 --> 00:31:25.155
<00:31:23.435>Which <00:31:23.635>would <00:31:23.835>be <00:31:24.034>really <00:31:24.235>hard <00:31:24.435>to <00:31:24.635>achieve, <00:31:24.835>right?

708
00:31:25.895 --> 00:31:27.115
<00:31:25.895>So, <00:31:26.444>great <00:31:26.993>question.

709
00:31:27.455 --> 00:31:29.035
<00:31:27.455>Uh, <00:31:27.804>cannot <00:31:28.155>do <00:31:28.504>that <00:31:28.855>today,

710
00:31:29.095 --> 00:31:33.315
<00:31:29.095>but <00:31:29.211>there <00:31:29.328>is <00:31:29.445>a <00:31:29.561>spec <00:31:29.678>in <00:31:29.795>the <00:31:29.911>work <00:31:30.028>that <00:31:30.145>is <00:31:30.261>really <00:31:30.378>close <00:31:30.495>to

711
00:31:33.955 --> 00:31:36.315
<00:31:33.955>actually <00:31:34.110>being <00:31:34.266>finalized, <00:31:34.421>um, <00:31:34.577>from <00:31:34.732>what <00:31:34.888>I <00:31:35.043>can <00:31:35.199>tell, <00:31:35.355>um,

712
00:31:36.315 --> 00:31:38.995
<00:31:36.315>I've <00:31:36.515>been <00:31:36.715>having <00:31:36.915>some <00:31:37.115>conversations <00:31:37.315>with <00:31:37.515>a <00:31:37.715>couple

713
00:31:38.995 --> 00:31:41.155
<00:31:38.995>of <00:31:39.169>my <00:31:39.344>friends <00:31:39.520>who <00:31:39.695>work <00:31:39.870>at <00:31:40.044>browser <00:31:40.219>places, <00:31:40.395>um,

714
00:31:41.155 --> 00:31:42.835
<00:31:41.155>and <00:31:41.355>it <00:31:41.555>seems <00:31:41.754>like <00:31:41.955>it's, <00:31:42.155>it's <00:31:42.355>relatively <00:31:42.555>close,

715
00:31:42.855 --> 00:31:44.595
<00:31:42.855>but <00:31:43.030>it <00:31:43.205>would <00:31:43.380>allow <00:31:43.555>you <00:31:43.730>to <00:31:43.905>do <00:31:44.080>exactly <00:31:44.255>that.

716
00:31:44.655 --> 00:31:46.755
<00:31:44.655>It <00:31:44.935>provides <00:31:45.215>hooks <00:31:45.495>for <00:31:45.774>animating <00:31:46.055>in

717
00:31:46.755 --> 00:31:49.315
<00:31:46.755>and <00:31:46.930>out <00:31:47.105>of <00:31:47.280>different <00:31:47.455>routes <00:31:47.630>within <00:31:47.805>a <00:31:47.980>specific <00:31:48.155>domain.

718
00:31:49.535 --> 00:31:52.475
<00:31:49.535>Um, <00:31:49.662>so <00:31:49.789>as <00:31:49.916>you <00:31:50.044>go <00:31:50.171>from <00:31:50.298>the <00:31:50.425>homepage <00:31:50.553>to <00:31:50.680>the <00:31:50.807>about <00:31:50.935>page

719
00:31:52.475 --> 00:31:53.595
<00:31:52.475>to <00:31:52.811>the <00:31:53.147>dashboard, <00:31:53.483>whatever,

720
00:31:53.895 --> 00:31:56.395
<00:31:53.895>you <00:31:54.050>can <00:31:54.206>do <00:31:54.361>those <00:31:54.517>native <00:31:54.672>like <00:31:54.828>animations <00:31:54.983>if <00:31:55.139>you <00:31:55.295>want,

721
00:31:56.605 --> 00:31:59.955
<00:31:56.605>while <00:31:56.805>still <00:31:57.005>having <00:31:57.205>just <00:31:57.405>full <00:31:57.605>on <00:31:57.805>page <00:31:58.005>refreshes.

722
00:32:00.255 --> 00:32:02.115
<00:32:00.255>Um, <00:32:00.410>I <00:32:00.566>don't <00:32:00.721>know <00:32:00.877>enough <00:32:01.032>about <00:32:01.188>that. <00:32:01.343>I've <00:32:01.499>seen <00:32:01.655>those

723
00:32:02.125 --> 00:32:02.715
<00:32:02.125>Demos. <00:32:02.656>Yeah.

724
00:32:03.065 --> 00:32:05.155
<00:32:03.065>Yeah. <00:32:03.240>I <00:32:03.415>can't <00:32:03.590>talk <00:32:03.765>about <00:32:03.940>the <00:32:04.115>specific <00:32:04.290>details <00:32:04.465>of

725
00:32:05.155 --> 00:32:07.195
<00:32:05.155>how <00:32:05.295>it <00:32:05.435>worked <00:32:05.575>because <00:32:05.715>to <00:32:05.855>be <00:32:05.995>honest, <00:32:06.135>I <00:32:06.274>just <00:32:06.415>haven't <00:32:06.555>really

726
00:32:07.195 --> 00:32:09.275
<00:32:07.195>looked <00:32:07.335>into <00:32:07.475>it <00:32:07.615>yet, <00:32:07.754>but <00:32:07.895>I <00:32:08.034>know <00:32:08.175>it <00:32:08.314>is <00:32:08.455>a <00:32:08.595>thing

727
00:32:09.275 --> 00:32:10.315
<00:32:09.275>that <00:32:09.509>they're <00:32:09.743>trying <00:32:09.977>to <00:32:10.211>solve

728
00:32:10.315 --> 00:32:12.035
<00:32:10.315>because <00:32:10.548>I <00:32:10.781>get <00:32:11.015>asked <00:32:11.248>about <00:32:11.481>this <00:32:11.715>every

729
00:32:12.035 --> 00:32:13.115
<00:32:12.035>time <00:32:12.278>I <00:32:12.521>deliver <00:32:12.764>this <00:32:13.007>talk.

730
00:32:14.105 --> 00:32:17.315
<00:32:14.105>Yeah, <00:32:14.260>I <00:32:14.416>think <00:32:14.571>I've <00:32:14.727>seen <00:32:14.882>a <00:32:15.038>tweet <00:32:15.193>from <00:32:15.349>Sarah <00:32:15.505>Rasner

731
00:32:17.315 --> 00:32:19.795
<00:32:17.315>that <00:32:17.470>had <00:32:17.626>a <00:32:17.781>video, <00:32:17.937>uh, <00:32:18.092>with <00:32:18.248>a <00:32:18.403>demo <00:32:18.559>of <00:32:18.715>this.

732
00:32:20.375 --> 00:32:21.375
<00:32:20.375>Oh, <00:32:20.555>that <00:32:20.735>would <00:32:20.915>be <00:32:21.095>really <00:32:21.275>cool.

733
00:32:21.625 --> 00:32:25.315
<00:32:21.625>Yeah. <00:32:21.765>It, <00:32:21.905>it <00:32:22.045>exists <00:32:22.185>and <00:32:22.325>it's <00:32:22.465>coming. <00:32:22.605>So <00:32:22.745>be <00:32:22.885>ready. <00:32:23.025>Awesome.

734
00:32:26.735 --> 00:32:30.725
<00:32:26.735>Uh, <00:32:26.968>next <00:32:27.201>question <00:32:27.435>is <00:32:27.668>from <00:32:27.901>another, <00:32:28.135>uh,

735
00:32:31.505 --> 00:32:35.605
<00:32:31.505>Hernan <00:32:31.660>is <00:32:31.816>the <00:32:31.971>slow <00:32:32.127>argument <00:32:32.282>also <00:32:32.438>failed <00:32:32.593>for <00:32:32.749>was, <00:32:32.905>and

736
00:32:35.745 --> 00:32:37.285
<00:32:35.745>or <00:32:36.022>loading <00:32:36.299>JS <00:32:36.576>and <00:32:36.853>web <00:32:37.131>workers.

737
00:32:40.225 --> 00:32:42.605
<00:32:40.225>So <00:32:40.504>I <00:32:40.784>can't <00:32:41.064>speak <00:32:41.344>to <00:32:41.625>Wasm.

738
00:32:42.865 --> 00:32:46.245
<00:32:42.865>Um, <00:32:43.020>I <00:32:43.176>don't <00:32:43.331>really <00:32:43.487>play <00:32:43.642>around <00:32:43.798>with <00:32:43.953>that <00:32:44.109>at <00:32:44.265>all.

739
00:32:46.545 --> 00:32:50.445
<00:32:46.545>Um, <00:32:46.720>but <00:32:46.895>web <00:32:47.070>workers <00:32:47.245>are <00:32:47.420>really <00:32:47.595>a <00:32:47.770>completely <00:32:47.945>kind

740
00:32:50.445 --> 00:32:51.485
<00:32:50.445>of <00:32:50.632>separate <00:32:50.819>beast, <00:32:51.006>and <00:32:51.193>a <00:32:51.380>lot

741
00:32:51.485 --> 00:32:53.165
<00:32:51.485>of <00:32:51.718>the <00:32:51.951>things <00:32:52.185>I've <00:32:52.418>articulated <00:32:52.651>here <00:32:52.885>don't

742
00:32:53.855 --> 00:32:55.125
<00:32:53.855>apply <00:32:54.140>to <00:32:54.426>them, <00:32:54.712>in <00:32:54.998>fact.

743
00:32:55.145 --> 00:32:58.245
<00:32:55.145>Mm-hmm. <00:32:55.320>Service <00:32:55.495>workers <00:32:55.670>are <00:32:55.845>a <00:32:56.020>type <00:32:56.195>of <00:32:56.370>web <00:32:56.545>worker.

744
00:32:58.425 --> 00:33:00.325
<00:32:58.425>Um, <00:32:58.658>one <00:32:58.891>of <00:32:59.125>the <00:32:59.358>really <00:32:59.591>nice <00:32:59.825>advantages

745
00:33:00.325 --> 00:33:01.685
<00:33:00.325>of <00:33:00.569>web <00:33:00.814>workers <00:33:01.059>in <00:33:01.304>general <00:33:01.549>is

746
00:33:01.685 --> 00:33:03.525
<00:33:01.685>that <00:33:01.885>they <00:33:02.085>sit <00:33:02.284>off <00:33:02.485>of <00:33:02.685>the <00:33:02.885>main <00:33:03.085>thread.

747
00:33:03.785 --> 00:33:06.405
<00:33:03.785>Um, <00:33:04.018>and <00:33:04.251>so <00:33:04.485>they <00:33:04.718>are <00:33:04.951>not <00:33:05.185>going

748
00:33:06.405 --> 00:33:09.485
<00:33:06.405>to <00:33:06.560>do <00:33:06.716>things <00:33:06.871>like <00:33:07.027>block <00:33:07.182>rendering <00:33:07.338>on <00:33:07.493>the <00:33:07.649>page, <00:33:07.805>um,

749
00:33:09.825 --> 00:33:11.885
<00:33:09.825>tie <00:33:10.025>up <00:33:10.225>kind <00:33:10.425>of <00:33:10.625>other <00:33:10.825>activities <00:33:11.025>from <00:33:11.225>happening.

750
00:33:12.465 --> 00:33:15.285
<00:33:12.465>Uh, <00:33:12.620>in <00:33:12.776>fact, <00:33:12.931>I <00:33:13.087>recently <00:33:13.242>saw <00:33:13.398>a <00:33:13.553>pretty <00:33:13.709>interesting <00:33:13.865>project

751
00:33:15.475 --> 00:33:17.925
<00:33:15.475>that <00:33:15.630>tries <00:33:15.786>to <00:33:15.941>move <00:33:16.097>a <00:33:16.252>lot <00:33:16.408>of <00:33:16.563>the <00:33:16.719>stuff <00:33:16.875>that

752
00:33:18.745 --> 00:33:20.165
<00:33:18.745>are <00:33:18.957>the <00:33:19.170>biggest <00:33:19.384>offenders <00:33:19.597>when <00:33:19.810>it <00:33:20.023>comes

753
00:33:20.165 --> 00:33:22.125
<00:33:20.165>to <00:33:20.365>front <00:33:20.565>end <00:33:20.764>bloat <00:33:20.965>over <00:33:21.165>to <00:33:21.365>web <00:33:21.565>workers.

754
00:33:22.305 --> 00:33:23.485
<00:33:22.305>So <00:33:22.517>think <00:33:22.729>about <00:33:22.942>things <00:33:23.154>like <00:33:23.367>tracking

755
00:33:23.485 --> 00:33:25.045
<00:33:23.485>scripts, <00:33:23.834>ads, <00:33:24.185>things <00:33:24.534>like <00:33:24.885>that.

756
00:33:25.505 --> 00:33:29.365
<00:33:25.505>Um, <00:33:25.621>moving <00:33:25.738>those <00:33:25.855>over <00:33:25.971>into <00:33:26.088>a <00:33:26.205>web <00:33:26.321>worker <00:33:26.438>so <00:33:26.555>that <00:33:26.671>you <00:33:26.788>can <00:33:26.905>kind

757
00:33:29.365 --> 00:33:32.245
<00:33:29.365>of <00:33:29.505>load <00:33:29.645>them <00:33:29.785>off <00:33:29.925>the <00:33:30.065>main <00:33:30.205>thread, <00:33:30.345>track <00:33:30.485>those <00:33:30.625>things <00:33:30.765>without

758
00:33:32.355 --> 00:33:34.325
<00:33:32.355>bogging <00:33:32.588>down <00:33:32.821>other <00:33:33.055>activities <00:33:33.288>on <00:33:33.521>the <00:33:33.755>page.

759
00:33:34.585 --> 00:33:36.525
<00:33:34.585>Um, <00:33:34.712>I <00:33:34.839>cannot <00:33:34.966>for <00:33:35.094>the <00:33:35.221>life <00:33:35.348>of <00:33:35.475>me <00:33:35.603>think <00:33:35.730>of <00:33:35.857>the <00:33:35.985>name

760
00:33:36.525 --> 00:33:39.805
<00:33:36.525>of <00:33:36.680>the <00:33:36.836>project, <00:33:36.991>um, <00:33:37.147>but <00:33:37.302>it <00:33:37.458>looked <00:33:37.613>really, <00:33:37.769>really <00:33:37.925>cool.

761
00:33:40.085 --> 00:33:41.605
<00:33:40.085>I <00:33:40.313>probably <00:33:40.541>have <00:33:40.769>it <00:33:40.997>written <00:33:41.225>down <00:33:41.453>somewhere.

762
00:33:42.025 --> 00:33:45.465
<00:33:42.025>Um, <00:33:42.152>uh, <00:33:42.279>I'll <00:33:42.406>see <00:33:42.534>if <00:33:42.661>I <00:33:42.788>can <00:33:42.915>find <00:33:43.043>it <00:33:43.170>while <00:33:43.297>we're <00:33:43.425>talking.

763
00:33:45.805 --> 00:33:48.465
<00:33:45.805>Um, <00:33:46.085>but, <00:33:46.365>uh, <00:33:46.645>yeah, <00:33:46.925>great <00:33:47.205>question.

764
00:33:48.465 --> 00:33:51.345
<00:33:48.465>The <00:33:48.592>short <00:33:48.719>answer <00:33:48.846>is <00:33:48.974>no, <00:33:49.101>a <00:33:49.228>lot <00:33:49.355>of <00:33:49.483>this <00:33:49.610>stuff <00:33:49.737>doesn't <00:33:49.865>apply

765
00:33:51.345 --> 00:33:53.225
<00:33:51.345>to <00:33:51.500>those, <00:33:51.656>but <00:33:51.811>you <00:33:51.967>also <00:33:52.122>can't <00:33:52.278>use <00:33:52.433>them <00:33:52.589>for <00:33:52.745>everything.

766
00:33:53.245 --> 00:33:55.945
<00:33:53.245>And <00:33:53.361>so <00:33:53.478>I <00:33:53.594>think <00:33:53.711>there's <00:33:53.828>a <00:33:53.945>little <00:33:54.061>bit <00:33:54.178>of <00:33:54.294>a, <00:33:54.411>a <00:33:54.528>balancing <00:33:54.645>act.

767
00:33:56.085 --> 00:33:58.585
<00:33:56.085>I'd <00:33:56.240>love <00:33:56.396>to <00:33:56.551>see <00:33:56.707>people <00:33:56.862>using <00:33:57.018>workers <00:33:57.173>for <00:33:57.329>more <00:33:57.485>stuff.

768
00:33:59.835 --> 00:34:04.285
<00:33:59.835>Okay. <00:34:00.035>Cool. <00:34:00.235>Um, <00:34:00.435>next <00:34:00.635>question <00:34:00.835>is <00:34:01.035>from <00:34:01.235>Jason.

769
00:34:05.185 --> 00:34:08.365
<00:34:05.185>Uh, <00:34:05.360>what <00:34:05.534>knowledge <00:34:05.710>of <00:34:05.885>browser <00:34:06.060>API <00:34:06.235>with <00:34:06.409>a <00:34:06.585>mixture

770
00:34:08.365 --> 00:34:12.605
<00:34:08.364>of <00:34:08.540>techniques, <00:34:08.714>uh, <00:34:08.889>you <00:34:09.064>mentioned <00:34:09.239>here <00:34:09.415>have <00:34:09.589>the <00:34:09.764>possibility

771
00:34:12.785 --> 00:34:13.885
<00:34:12.784>to <00:34:13.032>become <00:34:13.280>the <00:34:13.527>new <00:34:13.775>norm,

772
00:34:14.505 --> 00:34:18.485
<00:34:14.505>and <00:34:14.645>is <00:34:14.785>there <00:34:14.925>a <00:34:15.065>possibility <00:34:15.205>of <00:34:15.345>components, <00:34:15.485>uh, <00:34:15.625>become <00:34:15.765>a <00:34:15.905>part

773
00:34:18.485 --> 00:34:22.205
<00:34:18.485>of <00:34:18.612>the <00:34:18.739>core <00:34:18.866>J <00:34:18.994>aspect <00:34:19.121>in <00:34:19.248>the <00:34:19.375>same, <00:34:19.503>uh, <00:34:19.630>way <00:34:19.757>that, <00:34:19.885>uh,

774
00:34:23.065 --> 00:34:25.565
<00:34:23.065>in <00:34:23.205>the <00:34:23.345>same <00:34:23.485>way <00:34:23.625>that <00:34:23.764>a <00:34:23.905>lot <00:34:24.045>of <00:34:24.185>jQuery <00:34:24.325>functionality <00:34:24.465>came

775
00:34:25.565 --> 00:34:26.605
<00:34:25.565>with <00:34:25.752>the <00:34:25.939>E <00:34:26.126>es <00:34:26.313>five <00:34:26.501>spec?

776
00:34:27.035 --> 00:34:30.365
<00:34:27.034>Yeah, <00:34:27.234>so <00:34:27.435>one <00:34:27.634>of <00:34:27.835>the, <00:34:28.034>um, <00:34:28.234>so <00:34:28.435>there's,

777
00:34:30.595 --> 00:34:32.805
<00:34:30.594>there's <00:34:30.734>a <00:34:30.875>few <00:34:31.014>different <00:34:31.154>kind <00:34:31.294>of <00:34:31.435>angles <00:34:31.574>to <00:34:31.714>pull <00:34:31.855>at <00:34:31.995>there.

778
00:34:33.225 --> 00:34:36.805
<00:34:33.225>Um, <00:34:33.458>so, <00:34:33.691>uh, <00:34:33.924>I'll <00:34:34.158>work <00:34:34.391>in <00:34:34.625>reverse.

779
00:34:37.185 --> 00:34:40.045
<00:34:37.185>Um, <00:34:37.534>so, <00:34:37.884>uh, <00:34:38.235>yes, <00:34:38.585>um,

780
00:34:41.345 --> 00:34:45.725
<00:34:41.344>native <00:34:41.484>web <00:34:41.625>components <00:34:41.764>in <00:34:41.904>general, <00:34:42.044>um, <00:34:42.185>have <00:34:42.324>a <00:34:42.464>pretty <00:34:42.605>big, <00:34:42.745>um,

781
00:34:46.565 --> 00:34:47.845
<00:34:46.565>I <00:34:46.693>shouldn't <00:34:46.821>say <00:34:46.949>a <00:34:47.076>pretty <00:34:47.205>big, <00:34:47.333>but <00:34:47.460>they <00:34:47.589>have <00:34:47.716>a,

782
00:34:47.845 --> 00:34:50.085
<00:34:47.844>they <00:34:48.020>have <00:34:48.194>a <00:34:48.370>growing <00:34:48.544>fan <00:34:48.719>base <00:34:48.895>that <00:34:49.069>is <00:34:49.245>advocating

783
00:34:50.085 --> 00:34:51.085
<00:34:50.085>for <00:34:50.385>their <00:34:50.685>increased <00:34:50.985>use.

784
00:34:51.745 --> 00:34:54.925
<00:34:51.745>Um, <00:34:51.920>web <00:34:52.094>components <00:34:52.270>specifically <00:34:52.444>don't <00:34:52.620>necessarily <00:34:52.795>hit <00:34:52.969>at <00:34:53.145>the

785
00:34:54.925 --> 00:34:57.125
<00:34:54.925>kind <00:34:55.065>of <00:34:55.205>things <00:34:55.345>I <00:34:55.485>love <00:34:55.625>because <00:34:55.765>they <00:34:55.905>still <00:34:56.045>have <00:34:56.185>kind <00:34:56.325>of

786
00:34:57.125 --> 00:34:59.205
<00:34:57.125>that <00:34:57.591>heavy <00:34:58.058>JavaScript <00:34:58.525>dependence.

787
00:34:59.425 --> 00:35:01.765
<00:34:59.425>Um, <00:34:59.565>one <00:34:59.705>of <00:34:59.845>the <00:34:59.985>things <00:35:00.125>that <00:35:00.265>I <00:35:00.405>wanna <00:35:00.545>see <00:35:00.685>more <00:35:00.825>of

788
00:35:02.385 --> 00:35:06.365
<00:35:02.385>is <00:35:02.525>just <00:35:02.665>native <00:35:02.805>plain <00:35:02.945>old <00:35:03.085>HTML <00:35:03.225>elements <00:35:03.365>that <00:35:03.505>do <00:35:03.645>a <00:35:03.785>lot

789
00:35:06.365 --> 00:35:07.365
<00:35:06.365>of <00:35:06.665>the <00:35:06.964>interactive <00:35:07.265>stuff

790
00:35:07.365 --> 00:35:10.165
<00:35:07.365>that <00:35:07.504>we <00:35:07.645>keep <00:35:07.785>recreating <00:35:07.924>the <00:35:08.064>wheel <00:35:08.205>on <00:35:08.345>over <00:35:08.484>and <00:35:08.625>over <00:35:08.765>again.

791
00:35:10.345 --> 00:35:14.205
<00:35:10.345>So <00:35:10.694>tabs, <00:35:11.044>slideshows, <00:35:11.395>um, <00:35:11.745>uh,

792
00:35:15.235 --> 00:35:17.525
<00:35:15.235>accordion <00:35:15.585>widgets <00:35:15.935>beyond <00:35:16.285>individual, <00:35:16.635>kind

793
00:35:17.525 --> 00:35:18.885
<00:35:17.525>of <00:35:17.933>expanding <00:35:18.341>collapse <00:35:18.749>components.

794
00:35:18.885 --> 00:35:21.125
<00:35:18.885>Mm-hmm. <00:35:19.235>Um, <00:35:19.585>things <00:35:19.935>like <00:35:20.285>that.

795
00:35:21.825 --> 00:35:24.165
<00:35:21.825>The <00:35:21.964>good <00:35:22.105>news <00:35:22.245>is <00:35:22.384>there's <00:35:22.524>a <00:35:22.665>lot <00:35:22.805>of <00:35:22.944>really <00:35:23.085>smart <00:35:23.225>accessibility

796
00:35:24.445 --> 00:35:26.645
<00:35:24.445>advocates <00:35:24.620>who <00:35:24.795>are <00:35:24.970>pushing <00:35:25.145>for <00:35:25.320>those <00:35:25.495>sorts <00:35:25.670>of <00:35:25.845>things

797
00:35:26.755 --> 00:35:29.325
<00:35:26.755>with <00:35:27.035>all <00:35:27.315>the <00:35:27.595>wonderful <00:35:27.875>accessibility <00:35:28.155>features

798
00:35:29.325 --> 00:35:30.445
<00:35:29.325>baked <00:35:29.577>in <00:35:29.829>so <00:35:30.081>that <00:35:30.333>mm-hmm.

799
00:35:30.725 --> 00:35:32.485
<00:35:30.725>I, <00:35:30.880>as <00:35:31.036>a <00:35:31.191>developer <00:35:31.347>don't <00:35:31.502>have <00:35:31.658>to <00:35:31.813>worry <00:35:31.969>about <00:35:32.125>whether

800
00:35:32.485 --> 00:35:34.765
<00:35:32.485>or <00:35:32.685>not <00:35:32.885>I've <00:35:33.085>used <00:35:33.285>the <00:35:33.485>wrong <00:35:33.685>aria <00:35:33.885>attribute

801
00:35:34.865 --> 00:35:37.445
<00:35:34.865>and <00:35:35.040>broken <00:35:35.214>accessibility <00:35:35.390>for <00:35:35.564>a <00:35:35.740>good <00:35:35.915>chunk <00:35:36.089>of <00:35:36.265>users

802
00:35:37.445 --> 00:35:39.685
<00:35:37.445>because <00:35:37.678>I <00:35:37.911>don't <00:35:38.145>know <00:35:38.378>what <00:35:38.611>I'm <00:35:38.845>doing.

803
00:35:39.785 --> 00:35:43.165
<00:35:39.785>And <00:35:39.940>accessibility <00:35:40.096>is <00:35:40.251>like <00:35:40.407>a <00:35:40.562>huge <00:35:40.718>specialty <00:35:40.873>unto <00:35:41.029>itself <00:35:41.185>on

804
00:35:43.165 --> 00:35:44.605
<00:35:43.165>top <00:35:43.309>of <00:35:43.453>all <00:35:43.596>the <00:35:43.741>other <00:35:43.885>stuff <00:35:44.029>we <00:35:44.173>have <00:35:44.317>to <00:35:44.461>manage.

805
00:35:44.785 --> 00:35:46.805
<00:35:44.785>Um, <00:35:45.018>so <00:35:45.251>that's <00:35:45.484>one <00:35:45.718>piece <00:35:45.951>of <00:35:46.185>it.

806
00:35:47.105 --> 00:35:48.485
<00:35:47.105>Um, <00:35:47.726>in <00:35:48.347>terms

807
00:35:48.485 --> 00:35:50.965
<00:35:48.485>of <00:35:48.660>which <00:35:48.835>pieces <00:35:49.010>I <00:35:49.185>think <00:35:49.360>have <00:35:49.535>the <00:35:49.710>biggest <00:35:49.885>potential.

808
00:35:51.145 --> 00:35:56.125
<00:35:51.145>Um, <00:35:51.272>so <00:35:51.399>I, <00:35:51.526>I <00:35:51.654>don't <00:35:51.781>think <00:35:51.908>tooling <00:35:52.035>will <00:35:52.163>ever <00:35:52.290>fully <00:35:52.417>go <00:35:52.545>away

809
00:35:56.125 --> 00:35:58.165
<00:35:56.125>because <00:35:56.358>it <00:35:56.591>serves <00:35:56.825>a <00:35:57.058>really <00:35:57.291>important <00:35:57.525>process,

810
00:35:58.415 --> 00:36:00.085
<00:35:58.415>especially <00:35:58.881>in <00:35:59.348>team <00:35:59.815>environments.

811
00:36:00.425 --> 00:36:04.405
<00:36:00.425>Um, <00:36:00.541>but <00:36:00.658>I, <00:36:00.775>for, <00:36:00.891>I <00:36:01.008>think <00:36:01.125>for <00:36:01.241>me, <00:36:01.358>one <00:36:01.475>of <00:36:01.591>the <00:36:01.708>biggest <00:36:01.825>wins

812
00:36:04.405 --> 00:36:06.525
<00:36:04.405>that <00:36:04.545>we <00:36:04.685>could <00:36:04.825>see <00:36:04.965>is <00:36:05.105>some <00:36:05.245>of <00:36:05.385>like <00:36:05.525>the <00:36:05.665>biggest <00:36:05.805>things

813
00:36:06.525 --> 00:36:09.525
<00:36:06.525>that <00:36:06.805>you <00:36:07.085>use <00:36:07.365>libraries <00:36:07.645>for <00:36:07.925>today.

814
00:36:09.705 --> 00:36:11.725
<00:36:09.705>Um, <00:36:10.055>most <00:36:10.404>notably <00:36:10.755>state-based <00:36:11.105>UI

815
00:36:12.185 --> 00:36:14.365
<00:36:12.185>and <00:36:12.384>the <00:36:12.585>ability <00:36:12.785>to <00:36:12.985>kind <00:36:13.185>of <00:36:13.384>share <00:36:13.585>components

816
00:36:15.265 --> 00:36:16.845
<00:36:15.265>across <00:36:15.731>different, <00:36:16.198>different <00:36:16.665>views.

817
00:36:17.305 --> 00:36:20.885
<00:36:17.305>If <00:36:17.421>there <00:36:17.538>were <00:36:17.654>better <00:36:17.771>native <00:36:17.888>ways <00:36:18.004>to <00:36:18.121>do <00:36:18.238>that, <00:36:18.355>I <00:36:18.471>think <00:36:18.588>a <00:36:18.705>lot

818
00:36:20.885 --> 00:36:23.325
<00:36:20.885>of <00:36:21.040>what <00:36:21.196>we <00:36:21.351>need <00:36:21.507>libraries <00:36:21.662>for <00:36:21.818>today <00:36:21.973>would <00:36:22.129>go <00:36:22.285>away,

819
00:36:23.825 --> 00:36:24.885
<00:36:23.825>and <00:36:23.984>then <00:36:24.143>we'd <00:36:24.302>see <00:36:24.461>a <00:36:24.620>whole <00:36:24.779>bunch

820
00:36:24.885 --> 00:36:27.085
<00:36:24.885>of <00:36:25.165>new <00:36:25.445>libraries <00:36:25.725>doing <00:36:26.005>different <00:36:26.285>things

821
00:36:27.085 --> 00:36:28.125
<00:36:27.085>that <00:36:27.272>I <00:36:27.459>haven't <00:36:27.646>thought <00:36:27.833>of <00:36:28.021>yet.

822
00:36:28.185 --> 00:36:29.765
<00:36:28.185>Um, <00:36:28.384>new <00:36:28.585>ways <00:36:28.785>to <00:36:28.985>push <00:36:29.185>the <00:36:29.384>web <00:36:29.585>forward.

823
00:36:31.315 --> 00:36:33.805
<00:36:31.315>Well, <00:36:31.515>what <00:36:31.715>do <00:36:31.915>you <00:36:32.115>think <00:36:32.315>about, <00:36:32.515>uh, <00:36:32.715>one

824
00:36:33.805 --> 00:36:37.085
<00:36:33.805>of <00:36:33.960>the <00:36:34.116>reasons <00:36:34.271>I <00:36:34.427>like <00:36:34.582>working <00:36:34.738>with <00:36:34.893>frameworks, <00:36:35.049>uh, <00:36:35.205>is

825
00:36:37.085 --> 00:36:40.245
<00:36:37.085>that <00:36:37.260>it's <00:36:37.435>kind <00:36:37.610>of <00:36:37.785>a <00:36:37.960>standardized <00:36:38.135>way <00:36:38.310>of <00:36:38.485>working,

826
00:36:40.625 --> 00:36:44.525
<00:36:40.625>so <00:36:40.800>it's <00:36:40.975>easier <00:36:41.150>to <00:36:41.325>find <00:36:41.500>new <00:36:41.675>employees, <00:36:41.850>so <00:36:42.025>mm-hmm.

827
00:36:44.625 --> 00:36:45.885
<00:36:44.625>Um, <00:36:45.759>yeah.

828
00:36:45.885 --> 00:36:48.205
<00:36:45.885>Onboarding <00:36:46.085>when <00:36:46.285>you <00:36:46.485>already <00:36:46.685>know <00:36:46.885>React <00:36:47.085>or <00:36:47.285>Few,

829
00:36:48.265 --> 00:36:50.405
<00:36:48.265>and <00:36:48.464>you <00:36:48.665>come <00:36:48.865>into <00:36:49.065>a <00:36:49.265>project <00:36:49.464>that <00:36:49.665>use

830
00:36:50.405 --> 00:36:53.405
<00:36:50.405>that <00:36:50.560>you <00:36:50.716>can <00:36:50.871>be <00:36:51.027>onboarded <00:36:51.182>in <00:36:51.338>like <00:36:51.493>half <00:36:51.649>a <00:36:51.805>day.

831
00:36:54.875 --> 00:36:58.445
<00:36:54.875>Yeah. <00:36:55.108>Um, <00:36:55.341>well, <00:36:55.575>so <00:36:55.808>that's <00:36:56.041>really <00:36:56.275>interesting.

832
00:36:58.865 --> 00:37:03.085
<00:36:58.865>Um, <00:36:59.040>the, <00:36:59.214>the <00:36:59.390>half <00:36:59.564>a <00:36:59.740>day <00:36:59.915>argument, <00:37:00.089>um, <00:37:00.265>if

833
00:37:03.085 --> 00:37:05.045
<00:37:03.085>that <00:37:03.285>has <00:37:03.485>been <00:37:03.685>your <00:37:03.885>experience, <00:37:04.085>I'm <00:37:04.285>very <00:37:04.485>impressed.

834
00:37:05.155 --> 00:37:08.845
<00:37:05.155>That <00:37:05.435>feels <00:37:05.715>overly <00:37:05.995>uh, <00:37:06.275>overly <00:37:06.555>ambitious.

835
00:37:09.325 --> 00:37:10.885
<00:37:09.325>Um, <00:37:09.524>just, <00:37:09.725>I <00:37:09.924>just <00:37:10.125>write <00:37:10.325>really <00:37:10.524>good <00:37:10.725>stuff.

836
00:37:10.885 --> 00:37:12.405
<00:37:10.885>I'm <00:37:11.080>think <00:37:11.275>about <00:37:11.471>now <00:37:11.666>the <00:37:11.862>whole, <00:37:12.057>like, <00:37:12.253>yeah,

837
00:37:12.405 --> 00:37:14.245
<00:37:12.405>you, <00:37:12.638>I <00:37:12.871>know <00:37:13.105>you're <00:37:13.338>just <00:37:13.571>that <00:37:13.805>good.

838
00:37:14.265 --> 00:37:16.845
<00:37:14.265>But, <00:37:14.498>um, <00:37:14.731>the, <00:37:14.964>uh, <00:37:15.198>I'm <00:37:15.431>thinking <00:37:15.665>about

839
00:37:16.845 --> 00:37:18.285
<00:37:16.845>how <00:37:17.030>long <00:37:17.215>it <00:37:17.400>often <00:37:17.585>takes <00:37:17.770>just <00:37:17.955>to <00:37:18.140>get,

840
00:37:18.285 --> 00:37:19.325
<00:37:18.285>build <00:37:18.596>environments <00:37:18.908>set <00:37:19.221>up.

841
00:37:19.425 --> 00:37:23.045
<00:37:19.425>Um, <00:37:19.580>yeah. <00:37:19.736>And <00:37:19.891>so, <00:37:20.047>yes, <00:37:20.202>I <00:37:20.358>don't <00:37:20.513>disagree <00:37:20.669>with <00:37:20.825>you.

842
00:37:23.185 --> 00:37:26.085
<00:37:23.185>Um, <00:37:23.384>where <00:37:23.585>Native <00:37:23.785>Web, <00:37:23.985>there's <00:37:24.185>two, <00:37:24.384>two <00:37:24.585>problems.

843
00:37:26.105 --> 00:37:29.365
<00:37:26.105>One <00:37:26.280>is <00:37:26.455>Native <00:37:26.630>web <00:37:26.805>is <00:37:26.980>just <00:37:27.155>completely <00:37:27.330>open <00:37:27.505>field.

844
00:37:29.615 --> 00:37:31.845
<00:37:29.615>There <00:37:29.754>is <00:37:29.895>a <00:37:30.035>lot <00:37:30.174>of <00:37:30.314>flexibility, <00:37:30.455>like <00:37:30.595>if <00:37:30.734>you <00:37:30.875>Google <00:37:31.015>how

845
00:37:31.845 --> 00:37:35.645
<00:37:31.845>to <00:37:32.000>do <00:37:32.156>thing <00:37:32.311>in <00:37:32.467>React, <00:37:32.622>you'll <00:37:32.778>find <00:37:32.933>12 <00:37:33.089>different <00:37:33.245>articles

846
00:37:35.645 --> 00:37:37.165
<00:37:35.645>with <00:37:35.873>12 <00:37:36.101>different <00:37:36.329>ways <00:37:36.557>to <00:37:36.785>approach <00:37:37.013>it.

847
00:37:37.305 --> 00:37:40.085
<00:37:37.305>But <00:37:37.421>there <00:37:37.538>do <00:37:37.654>tend <00:37:37.771>to <00:37:37.888>kind <00:37:38.004>of <00:37:38.121>be, <00:37:38.238>does <00:37:38.355>tend <00:37:38.471>to <00:37:38.588>be <00:37:38.705>more

848
00:37:40.085 --> 00:37:41.765
<00:37:40.085>of <00:37:40.435>a <00:37:40.785>convergence <00:37:41.135>around <00:37:41.485>conventions.

849
00:37:42.065 --> 00:37:45.925
<00:37:42.065>Mm-hmm. <00:37:42.240>Um, <00:37:42.415>I <00:37:42.590>think <00:37:42.765>where <00:37:42.940>a <00:37:43.115>lot <00:37:43.290>of <00:37:43.465>libraries

850
00:37:46.625 --> 00:37:49.725
<00:37:46.625>really <00:37:46.858>win <00:37:47.091>is <00:37:47.325>around <00:37:47.558>documentation, <00:37:47.791>um <00:37:48.025>mm-hmm.

851
00:37:50.025 --> 00:37:53.605
<00:37:50.025>And <00:37:50.200>the <00:37:50.375>native <00:37:50.550>web <00:37:50.725>platform <00:37:50.900>just <00:37:51.075>is <00:37:51.250>not <00:37:51.425>there.

852
00:37:53.635 --> 00:37:55.685
<00:37:53.635>It's <00:37:53.810>one <00:37:53.985>of <00:37:54.160>the <00:37:54.335>reasons <00:37:54.510>I <00:37:54.685>started <00:37:54.860>doing <00:37:55.035>all

853
00:37:55.685 --> 00:37:57.645
<00:37:55.685>of <00:37:55.840>the <00:37:55.996>education <00:37:56.151>stuff <00:37:56.307>I <00:37:56.462>do <00:37:56.618>in <00:37:56.773>the <00:37:56.929>first <00:37:57.085>place.

854
00:37:58.145 --> 00:38:00.205
<00:37:58.145>Um, <00:37:58.495>MDN <00:37:58.845>is <00:37:59.195>very <00:37:59.545>hit

855
00:38:00.205 --> 00:38:03.405
<00:38:00.205>or <00:38:00.332>miss, <00:38:00.459>um, <00:38:00.586>where <00:38:00.714>you <00:38:00.841>will <00:38:00.968>have <00:38:01.095>some <00:38:01.223>there <00:38:01.350>a <00:38:01.477>lot <00:38:01.605>better,

856
00:38:03.585 --> 00:38:04.725
<00:38:03.585>um, <00:38:03.756>than <00:38:03.927>a <00:38:04.098>lot <00:38:04.269>of <00:38:04.440>other <00:38:04.611>options,

857
00:38:05.105 --> 00:38:08.125
<00:38:05.105>but <00:38:05.305>you'll <00:38:05.505>have <00:38:05.705>some <00:38:05.905>really <00:38:06.105>well <00:38:06.305>developed <00:38:06.505>sections.

858
00:38:08.125 --> 00:38:11.365
<00:38:08.125>You'll <00:38:08.300>have <00:38:08.475>some <00:38:08.650>that <00:38:08.825>because <00:38:09.000>they're <00:38:09.175>largely <00:38:09.350>relying <00:38:09.525>on

859
00:38:11.365 --> 00:38:12.965
<00:38:11.365>other <00:38:11.598>people <00:38:11.831>or <00:38:12.064>still <00:38:12.298>works <00:38:12.531>in <00:38:12.765>progress.

860
00:38:13.465 --> 00:38:15.685
<00:38:13.465>Um, <00:38:13.640>some <00:38:13.815>stuff <00:38:13.990>is <00:38:14.165>written <00:38:14.340>in <00:38:14.515>a <00:38:14.690>technical <00:38:14.865>way

861
00:38:15.685 --> 00:38:17.805
<00:38:15.685>that's <00:38:15.965>not <00:38:16.245>particularly <00:38:16.525>approachable <00:38:16.805>for <00:38:17.085>beginners.

862
00:38:17.805 --> 00:38:19.125
<00:38:17.805>And <00:38:17.953>I <00:38:18.102>feel <00:38:18.250>like <00:38:18.399>a <00:38:18.547>lot <00:38:18.696>of <00:38:18.844>libraries <00:38:18.993>do

863
00:38:19.125 --> 00:38:20.245
<00:38:19.125>a <00:38:19.326>really <00:38:19.528>great, <00:38:19.729>like, <00:38:19.931>brand <00:38:20.133>new.

864
00:38:20.585 --> 00:38:23.325
<00:38:20.585>Here's <00:38:20.785>a <00:38:20.985>really <00:38:21.185>simple, <00:38:21.385>like <00:38:21.585>quick <00:38:21.785>start <00:38:21.985>kind

865
00:38:23.325 --> 00:38:24.445
<00:38:23.325>of <00:38:23.526>guide <00:38:23.728>to <00:38:23.929>get <00:38:24.131>you <00:38:24.333>going.

866
00:38:24.905 --> 00:38:26.765
<00:38:24.905>Um, <00:38:25.605>and, <00:38:26.305>uh,

867
00:38:27.265 --> 00:38:28.445
<00:38:27.265>and <00:38:27.477>you <00:38:27.689>know, <00:38:27.902>then <00:38:28.114>it's <00:38:28.327>just

868
00:38:29.585 --> 00:38:31.645
<00:38:29.585>all <00:38:29.760>downhill <00:38:29.935>from <00:38:30.110>there <00:38:30.285>on <00:38:30.460>the <00:38:30.635>rest <00:38:30.810>of <00:38:30.985>the,

869
00:38:31.915 --> 00:38:33.805
<00:38:31.915>like <00:38:32.265>the <00:38:32.615>native <00:38:32.965>education <00:38:33.315>platforms.

870
00:38:33.805 --> 00:38:35.900
<00:38:33.805>You've <00:38:33.960>got <00:38:34.116>some <00:38:34.271>that <00:38:34.427>just <00:38:34.582>straight <00:38:34.738>up <00:38:34.893>tell <00:38:35.049>you <00:38:35.205>incorrect

871
00:38:35.900 --> 00:38:38.485
<00:38:35.900>information <00:38:36.366>and <00:38:36.833>large <00:38:37.300>gaps.

872
00:38:38.505 --> 00:38:40.005
<00:38:38.505>So <00:38:38.697>yeah, <00:38:38.890>I <00:38:39.083>think <00:38:39.276>that's <00:38:39.469>a <00:38:39.662>valid <00:38:39.855>argument.

873
00:38:40.185 --> 00:38:43.645
<00:38:40.185>Um, <00:38:40.360>and, <00:38:40.535>uh, <00:38:40.710>you <00:38:40.884>know, <00:38:41.060>I <00:38:41.235>think <00:38:41.410>this <00:38:41.585>is

874
00:38:43.645 --> 00:38:46.045
<00:38:43.645>where <00:38:43.878>I <00:38:44.111>see <00:38:44.345>things <00:38:44.578>like <00:38:44.811>micro <00:38:45.045>libraries

875
00:38:46.045 --> 00:38:48.445
<00:38:46.045>and <00:38:46.278>pre <00:38:46.511>compilers <00:38:46.745>playing <00:38:46.978>an <00:38:47.211>important <00:38:47.445>role

876
00:38:48.445 --> 00:38:50.165
<00:38:48.445>because <00:38:48.678>you <00:38:48.911>can <00:38:49.145>still <00:38:49.378>get <00:38:49.611>those <00:38:49.845>benefits,

877
00:38:50.665 --> 00:38:53.405
<00:38:50.665>but <00:38:50.820>with <00:38:50.976>a <00:38:51.131>slightly <00:38:51.287>smaller <00:38:51.442>footprint <00:38:51.598>than <00:38:51.753>maybe <00:38:51.909>we <00:38:52.065>see

878
00:38:53.405 --> 00:38:54.525
<00:38:53.405>on <00:38:53.741>most <00:38:54.077>projects <00:38:54.413>today.

879
00:38:56.755 --> 00:39:00.685
<00:38:56.755>Good <00:38:56.930>point. <00:38:57.105>Good <00:38:57.280>point. <00:38:57.455>Um, <00:38:57.630>a <00:38:57.805>question <00:38:57.980>from <00:38:58.155>Nick.

880
00:39:01.305 --> 00:39:03.485
<00:39:01.305>How <00:39:01.504>do <00:39:01.705>we <00:39:01.904>help <00:39:02.105>fo <00:39:02.305>folks <00:39:02.504>overcome <00:39:02.705>fomo,

881
00:39:03.965 --> 00:39:05.925
<00:39:03.965>possibly <00:39:04.315>stemming <00:39:04.665>from <00:39:05.015>imposter <00:39:05.365>syndrome,

882
00:39:06.395 --> 00:39:08.925
<00:39:06.395>from <00:39:06.628>lacking <00:39:06.861>fancy <00:39:07.095>school <00:39:07.328>CS <00:39:07.561>degree? <00:39:07.795>Mm-hmm.

883
00:39:09.635 --> 00:39:13.165
<00:39:09.635>Yeah. <00:39:09.835>Um, <00:39:10.035>if <00:39:10.235>I <00:39:10.435>knew <00:39:10.635>the <00:39:10.835>answer <00:39:11.035>to

884
00:39:13.165 --> 00:39:14.405
<00:39:13.165>that, <00:39:13.388>I <00:39:13.611>would <00:39:13.834>be <00:39:14.057>very <00:39:14.281>rich.

885
00:39:14.705 --> 00:39:18.645
<00:39:14.705>Um, <00:39:14.832>mm-hmm. <00:39:14.959>I, <00:39:15.086>uh, <00:39:15.214>I, <00:39:15.341>you <00:39:15.468>know, <00:39:15.595>I <00:39:15.723>honestly <00:39:15.850>do <00:39:15.977>not <00:39:16.105>know.

886
00:39:18.985 --> 00:39:23.165
<00:39:18.985>Um, <00:39:19.185>uh, <00:39:19.385>it's <00:39:19.585>a <00:39:19.785>problem <00:39:19.985>that <00:39:20.185>exists <00:39:20.385>in

887
00:39:24.245 --> 00:39:27.205
<00:39:24.245>a <00:39:24.384>lot <00:39:24.525>of <00:39:24.665>professions, <00:39:24.805>but <00:39:24.944>I <00:39:25.085>think <00:39:25.225>it's <00:39:25.365>particularly <00:39:25.505>acute <00:39:25.645>in

888
00:39:27.205 --> 00:39:31.325
<00:39:27.205>ours <00:39:27.380>just <00:39:27.555>because <00:39:27.730>technology <00:39:27.904>in <00:39:28.080>general <00:39:28.255>changes <00:39:28.430>really <00:39:28.605>fast.

889
00:39:31.585 --> 00:39:34.605
<00:39:31.585>And <00:39:31.712>I <00:39:31.839>feel <00:39:31.966>like <00:39:32.094>a <00:39:32.221>lot <00:39:32.348>of <00:39:32.475>people <00:39:32.603>who <00:39:32.730>get <00:39:32.857>drawn <00:39:32.985>to

890
00:39:35.865 --> 00:39:38.445
<00:39:35.865>web <00:39:36.098>work <00:39:36.331>do <00:39:36.564>so <00:39:36.798>because <00:39:37.031>it's <00:39:37.265>exciting.

891
00:39:38.445 --> 00:39:39.765
<00:39:38.445>There's <00:39:38.682>always <00:39:38.920>something <00:39:39.157>new <00:39:39.395>to <00:39:39.633>learn.

892
00:39:39.985 --> 00:39:41.245
<00:39:39.985>You <00:39:40.211>never <00:39:40.438>have <00:39:40.665>to <00:39:40.892>be <00:39:41.118>bored.

893
00:39:41.825 --> 00:39:46.085
<00:39:41.825>Um, <00:39:41.952>and <00:39:42.079>we're <00:39:42.206>just, <00:39:42.334>we're <00:39:42.461>in <00:39:42.588>a <00:39:42.715>spot <00:39:42.843>now <00:39:42.970>where, <00:39:43.097>you <00:39:43.225>know,

894
00:39:46.165 --> 00:39:49.085
<00:39:46.165>a <00:39:46.340>decade <00:39:46.515>ago <00:39:46.690>the <00:39:46.865>web <00:39:47.040>was <00:39:47.215>still <00:39:47.390>moving <00:39:47.565>fast,

895
00:39:49.265 --> 00:39:51.205
<00:39:49.265>but <00:39:49.404>there <00:39:49.545>was <00:39:49.685>a <00:39:49.825>limited <00:39:49.964>amount <00:39:50.105>of <00:39:50.245>things <00:39:50.384>it <00:39:50.525>could <00:39:50.665>do,

896
00:39:52.105 --> 00:39:54.365
<00:39:52.105>and <00:39:52.260>now <00:39:52.416>it <00:39:52.571>can <00:39:52.727>do <00:39:52.882>a <00:39:53.038>whole <00:39:53.193>bunch <00:39:53.349>of <00:39:53.505>things.

897
00:39:54.425 --> 00:39:58.845
<00:39:54.425>And <00:39:54.565>you, <00:39:54.705>you <00:39:54.845>have, <00:39:54.985>you <00:39:55.125>know, <00:39:55.265>like <00:39:55.405>two <00:39:55.545>decades <00:39:55.685>of <00:39:55.825>history

898
00:39:59.235 --> 00:40:01.405
<00:39:59.235>that <00:39:59.410>also <00:39:59.585>still <00:39:59.760>continues <00:39:59.935>to <00:40:00.110>work <00:40:00.285>in <00:40:00.460>the <00:40:00.635>web.

899
00:40:01.705 --> 00:40:03.045
<00:40:01.705>And <00:40:01.906>so <00:40:02.107>just <00:40:02.308>the <00:40:02.509>mountain <00:40:02.710>of <00:40:02.911>stuff

900
00:40:03.045 --> 00:40:04.485
<00:40:03.045>that <00:40:03.369>you <00:40:03.693>could <00:40:04.017>possibly <00:40:04.341>learn

901
00:40:05.145 --> 00:40:07.805
<00:40:05.145>and <00:40:05.261>kind <00:40:05.378>of <00:40:05.495>that <00:40:05.611>baseline <00:40:05.728>you <00:40:05.845>have <00:40:05.961>to <00:40:06.078>know <00:40:06.195>is <00:40:06.311>a <00:40:06.428>lot <00:40:06.545>higher.

902
00:40:08.065 --> 00:40:10.685
<00:40:08.065>Um, <00:40:08.240>so, <00:40:08.415>which <00:40:08.590>is <00:40:08.765>really <00:40:08.940>just <00:40:09.115>a <00:40:09.290>long-winded <00:40:09.465>way

903
00:40:10.685 --> 00:40:11.965
<00:40:10.685>of <00:40:10.877>saying <00:40:11.069>I <00:40:11.261>have <00:40:11.453>absolutely <00:40:11.645>no <00:40:11.837>idea.

904
00:40:12.145 --> 00:40:14.565
<00:40:12.145>Um, <00:40:12.345>I <00:40:12.545>don't <00:40:12.745>know <00:40:12.945>how <00:40:13.145>we <00:40:13.345>solve <00:40:13.545>fomo.

905
00:40:14.865 --> 00:40:17.605
<00:40:14.865>Um, <00:40:15.214>uh, <00:40:15.564>I <00:40:15.915>still <00:40:16.265>struggle

906
00:40:17.605 --> 00:40:19.085
<00:40:17.605>with <00:40:17.795>it <00:40:17.985>sometimes <00:40:18.175>I've <00:40:18.366>just <00:40:18.556>hit <00:40:18.746>a <00:40:18.937>point

907
00:40:19.085 --> 00:40:20.085
<00:40:19.085>where <00:40:19.310>I'm <00:40:19.535>like <00:40:19.760>old <00:40:19.985>enough

908
00:40:20.085 --> 00:40:21.645
<00:40:20.085>and <00:40:20.435>curmudgeonly <00:40:20.785>enough <00:40:21.135>that, <00:40:21.485>um,

909
00:40:22.325 --> 00:40:24.885
<00:40:22.325>I <00:40:22.524>value <00:40:22.725>my <00:40:22.924>free <00:40:23.125>time <00:40:23.325>over <00:40:23.524>like <00:40:23.725>kind

910
00:40:24.885 --> 00:40:25.965
<00:40:24.885>of <00:40:25.128>chasing <00:40:25.371>the <00:40:25.614>new <00:40:25.857>hotness.

911
00:40:26.105 --> 00:40:28.725
<00:40:26.105>And <00:40:26.245>I've, <00:40:26.385>I've <00:40:26.525>just <00:40:26.665>kind <00:40:26.805>of <00:40:26.945>forced <00:40:27.085>myself <00:40:27.225>to <00:40:27.365>not <00:40:27.505>care.

912
00:40:28.985 --> 00:40:31.885
<00:40:28.985>Um, <00:40:29.125>but <00:40:29.265>yeah, <00:40:29.405>I <00:40:29.545>don't, <00:40:29.685>I <00:40:29.825>don't <00:40:29.965>know. <00:40:30.105>I'm <00:40:30.245>so <00:40:30.385>sorry.

913
00:40:31.925 --> 00:40:33.085
<00:40:31.925>I <00:40:32.055>don't <00:40:32.186>have <00:40:32.316>a <00:40:32.447>good <00:40:32.577>answer <00:40:32.708>for <00:40:32.838>that <00:40:32.969>one.

914
00:40:34.525 --> 00:40:36.765
<00:40:34.525>I, <00:40:34.700>I <00:40:34.875>actually <00:40:35.050>find <00:40:35.225>that <00:40:35.400>a <00:40:35.575>really <00:40:35.750>good <00:40:35.925>answer.

915
00:40:37.275 --> 00:40:40.125
<00:40:37.275>It's <00:40:37.450>impossible <00:40:37.625>to <00:40:37.800>keep <00:40:37.975>up <00:40:38.150>to <00:40:38.325>date <00:40:38.500>with <00:40:38.675>everything,

916
00:40:40.255 --> 00:40:44.565
<00:40:40.255>especially <00:40:40.410>if <00:40:40.566>you <00:40:40.721>like <00:40:40.877>CSS <00:40:41.032>and <00:40:41.188>you <00:40:41.343>like, <00:40:41.499>uh, <00:40:41.655>JavaScript

917
00:40:44.825 --> 00:40:46.645
<00:40:44.825>and <00:40:45.105>you <00:40:45.384>like <00:40:45.665>a, <00:40:45.944>a <00:40:46.225>framework

918
00:40:46.825 --> 00:40:50.725
<00:40:46.825>and <00:40:46.952>you <00:40:47.079>into <00:40:47.206>webpac, <00:40:47.334>then, <00:40:47.461>uh, <00:40:47.588>good <00:40:47.715>luck <00:40:47.843>with <00:40:47.970>having <00:40:48.097>a <00:40:48.225>life.

919
00:40:50.985 --> 00:40:51.985
So,

920
00:40:52.225 --> 00:40:54.845
<00:40:52.225>You <00:40:52.424>know, <00:40:52.625>just <00:40:52.825>as <00:40:53.025>a <00:40:53.225>tangent, <00:40:53.424>one <00:40:53.625>thing

921
00:40:54.845 --> 00:40:57.925
<00:40:54.845>that's <00:40:55.044>really <00:40:55.245>just <00:40:55.444>worked <00:40:55.645>for <00:40:55.845>me <00:40:56.044>professionally, <00:40:56.245>um,

922
00:40:58.025 --> 00:41:00.365
<00:40:58.025>is <00:40:58.225>I've <00:40:58.425>started <00:40:58.625>to <00:40:58.825>adopt <00:40:59.025>this <00:40:59.225>mindset <00:40:59.425>of

923
00:41:01.075 --> 00:41:03.345
<00:41:01.075>just <00:41:01.355>in <00:41:01.634>time <00:41:01.915>learning <00:41:02.194>where, <00:41:02.475>um,

924
00:41:03.605 --> 00:41:06.305
<00:41:03.605>rather <00:41:03.780>than <00:41:03.955>constantly <00:41:04.130>trying <00:41:04.305>to <00:41:04.480>learn <00:41:04.655>every <00:41:04.830>new <00:41:05.005>thing

925
00:41:06.305 --> 00:41:08.385
<00:41:06.305>that <00:41:06.654>comes <00:41:07.004>out, <00:41:07.355>I <00:41:07.705>try

926
00:41:08.385 --> 00:41:10.505
<00:41:08.385>to <00:41:08.540>keep <00:41:08.696>maybe <00:41:08.851>just <00:41:09.007>a <00:41:09.162>baseline <00:41:09.318>awareness <00:41:09.473>of <00:41:09.629>new <00:41:09.785>things

927
00:41:10.505 --> 00:41:12.665
<00:41:10.505>that <00:41:10.785>are <00:41:11.065>happening <00:41:11.345>without <00:41:11.625>digging <00:41:11.905>into

928
00:41:12.665 --> 00:41:13.945
<00:41:12.665>them <00:41:12.895>in <00:41:13.125>a <00:41:13.356>lot <00:41:13.586>of <00:41:13.817>depth.

929
00:41:14.405 --> 00:41:17.465
<00:41:14.405>Um, <00:41:14.580>and <00:41:14.755>then <00:41:14.930>when <00:41:15.105>I <00:41:15.280>eventually <00:41:15.455>hit <00:41:15.630>a <00:41:15.805>roadblock

930
00:41:17.465 --> 00:41:19.385
<00:41:17.465>where <00:41:17.592>I'm <00:41:17.719>like, <00:41:17.846>oh, <00:41:17.974>that <00:41:18.101>thing <00:41:18.228>I <00:41:18.355>heard <00:41:18.483>about <00:41:18.610>seems <00:41:18.737>like <00:41:18.865>it

931
00:41:19.385 --> 00:41:21.985
<00:41:19.385>might <00:41:19.512>be <00:41:19.639>able <00:41:19.766>to <00:41:19.894>solve <00:41:20.021>this, <00:41:20.148>that's <00:41:20.275>the <00:41:20.403>time <00:41:20.530>where <00:41:20.657>I <00:41:20.785>go

932
00:41:21.985 --> 00:41:23.585
<00:41:21.985>and <00:41:22.160>like <00:41:22.335>really <00:41:22.510>dig <00:41:22.685>into <00:41:22.860>how <00:41:23.035>it <00:41:23.210>might <00:41:23.385>work.

933
00:41:23.885 --> 00:41:25.305
<00:41:23.885>Um, <00:41:24.311>it <00:41:24.737>does <00:41:25.163>mean

934
00:41:25.305 --> 00:41:29.145
<00:41:25.305>that <00:41:25.432>sometimes <00:41:25.559>I <00:41:25.686>end <00:41:25.814>up <00:41:25.941>doing <00:41:26.068>things <00:41:26.195>in <00:41:26.323>like <00:41:26.450>an <00:41:26.577>old <00:41:26.705>way

935
00:41:29.145 --> 00:41:30.465
<00:41:29.145>that's <00:41:29.382>potentially <00:41:29.620>a <00:41:29.857>little <00:41:30.095>bit <00:41:30.333>harder

936
00:41:30.465 --> 00:41:31.785
<00:41:30.465>than <00:41:30.762>a <00:41:31.059>new <00:41:31.356>tool <00:41:31.653>might.

937
00:41:31.845 --> 00:41:34.685
<00:41:31.845>Mm-hmm. <00:41:31.972>Might <00:41:32.099>be. <00:41:32.226>But <00:41:32.354>it <00:41:32.481>also <00:41:32.608>means <00:41:32.735>I <00:41:32.863>don't <00:41:32.990>waste <00:41:33.117>a <00:41:33.245>ton

938
00:41:34.685 --> 00:41:36.765
<00:41:34.685>of <00:41:34.965>time <00:41:35.245>constantly <00:41:35.525>chasing <00:41:35.805>new <00:41:36.085>technologies

939
00:41:36.915 --> 00:41:38.885
<00:41:36.915>that <00:41:37.148>fall <00:41:37.381>out <00:41:37.615>of <00:41:37.848>favor <00:41:38.081>really <00:41:38.315>fast.

940
00:41:39.305 --> 00:41:42.205
<00:41:39.305>Um, <00:41:39.421>you <00:41:39.538>know, <00:41:39.654>I'm <00:41:39.771>kind <00:41:39.888>of, <00:41:40.004>I'm <00:41:40.121>a <00:41:40.238>late <00:41:40.355>adopter <00:41:40.471>when <00:41:40.588>it <00:41:40.705>comes

941
00:41:42.205 --> 00:41:43.965
<00:41:42.205>to, <00:41:42.485>uh, <00:41:42.765>to <00:41:43.045>front <00:41:43.325>end <00:41:43.605>tech.

942
00:41:46.365 --> 00:41:49.455
<00:41:46.365>Well, <00:41:46.520>that's <00:41:46.676>actually <00:41:46.831>I <00:41:46.987>think <00:41:47.142>a <00:41:47.298>healthy <00:41:47.453>way <00:41:47.609>of, <00:41:47.765>uh,

943
00:41:50.175 --> 00:41:52.815
<00:41:50.175>approaching, <00:41:50.525>uh, <00:41:50.875>killing <00:41:51.225>fomo, <00:41:51.575>just

944
00:41:53.345 --> 00:41:54.935
<00:41:53.345>don't <00:41:53.625>have <00:41:53.904>fomo, <00:41:54.185>but <00:41:54.464>that's <00:41:54.745>easier.

945
00:41:54.935 --> 00:41:56.295
<00:41:54.935>Second, <00:41:55.343>don't <00:41:55.751>have <00:41:56.159>fomo,

946
00:41:57.075 --> 00:41:58.075
<00:41:57.075>That's <00:41:57.524>the <00:41:57.975>solution.

947
00:41:58.835 --> 00:42:02.175
<00:41:58.835>Uh, <00:41:58.990>we <00:41:59.146>have <00:41:59.301>another <00:41:59.457>question. <00:41:59.612>It's <00:41:59.768>from <00:41:59.923>Dario. <00:42:00.079>Uh, <00:42:00.235>okay.

948
00:42:02.205 --> 00:42:03.895
<00:42:02.205>This <00:42:02.485>whole <00:42:02.765>approach <00:42:03.045>seems <00:42:03.325>to <00:42:03.605>assume

949
00:42:03.895 --> 00:42:05.855
<00:42:03.895>that <00:42:04.095>there's <00:42:04.295>one <00:42:04.495>right <00:42:04.695>way <00:42:04.895>of <00:42:05.095>doing <00:42:05.295>things

950
00:42:05.955 --> 00:42:07.335
<00:42:05.955>and <00:42:06.265>browsers <00:42:06.576>usually <00:42:06.886>get <00:42:07.197>there.

951
00:42:07.945 --> 00:42:09.895
<00:42:07.945>Isn't <00:42:08.225>it <00:42:08.505>good <00:42:08.785>that <00:42:09.065>different <00:42:09.345>frameworks

952
00:42:09.895 --> 00:42:11.975
<00:42:09.895>and <00:42:10.245>languages, <00:42:10.595>uh, <00:42:10.945>in <00:42:11.295>example,

953
00:42:12.125 --> 00:42:14.375
<00:42:12.125>pure <00:42:12.405>script <00:42:12.685>take <00:42:12.965>radical <00:42:13.245>different <00:42:13.525>approaches?

954
00:42:15.155 --> 00:42:18.095
<00:42:15.155>Yes, <00:42:15.355>absolutely. <00:42:15.555>I, <00:42:15.755>I <00:42:15.955>agree <00:42:16.155>with <00:42:16.355>that <00:42:16.555>wholeheartedly.

955
00:42:18.235 --> 00:42:21.135
<00:42:18.235>Um, <00:42:18.515>uh, <00:42:18.795>first <00:42:19.075>of <00:42:19.355>all, <00:42:19.635>I,

956
00:42:22.095 --> 00:42:24.415
<00:42:22.095>I <00:42:22.250>don't <00:42:22.406>think <00:42:22.561>there's <00:42:22.717>one <00:42:22.872>right <00:42:23.028>way <00:42:23.183>to <00:42:23.339>do <00:42:23.495>things.

957
00:42:24.795 --> 00:42:29.385
<00:42:24.795>Um, <00:42:24.995>and <00:42:25.195>so <00:42:25.395>I <00:42:25.595>I, <00:42:25.795>I <00:42:25.995>would <00:42:26.195>argue

958
00:42:29.775 --> 00:42:34.675
<00:42:29.775>that, <00:42:29.930>I <00:42:30.086>would <00:42:30.241>actually <00:42:30.397>argue <00:42:30.552>that <00:42:30.708>today <00:42:30.863>we <00:42:31.019>take <00:42:31.175>more

959
00:42:34.675 --> 00:42:37.355
<00:42:34.675>of <00:42:34.815>a, <00:42:34.955>there's <00:42:35.095>one <00:42:35.235>right <00:42:35.375>way <00:42:35.515>to <00:42:35.655>do <00:42:35.795>things <00:42:35.935>approach <00:42:36.075>than

960
00:42:37.355 --> 00:42:39.035
<00:42:37.355>what <00:42:37.635>I <00:42:37.915>would <00:42:38.195>typically <00:42:38.475>advocate <00:42:38.755>for.

961
00:42:39.095 --> 00:42:41.355
<00:42:39.095>So <00:42:39.234>like, <00:42:39.375>what <00:42:39.515>I, <00:42:39.654>what <00:42:39.794>I <00:42:39.935>really <00:42:40.075>believe <00:42:40.214>strongly <00:42:40.355>is <00:42:40.495>you

962
00:42:41.355 --> 00:42:42.675
<00:42:41.355>should <00:42:41.524>pick <00:42:41.694>the <00:42:41.864>right <00:42:42.033>tool <00:42:42.203>for <00:42:42.373>the <00:42:42.543>job.

963
00:42:42.825 --> 00:42:44.755
<00:42:42.825>Sometimes <00:42:43.105>that's <00:42:43.384>a <00:42:43.665>state-based <00:42:43.944>UI <00:42:44.225>library.

964
00:42:45.025 --> 00:42:46.675
<00:42:45.025>Sometimes <00:42:45.491>that's <00:42:45.958>hard <00:42:46.425>coded.

965
00:42:46.755 --> 00:42:49.675
<00:42:46.755>HTML <00:42:46.910>sometimes <00:42:47.066>all <00:42:47.221>you <00:42:47.377>need <00:42:47.532>is <00:42:47.688>a <00:42:47.843>static <00:42:47.999>site <00:42:48.155>generator.

966
00:42:49.865 --> 00:42:51.915
<00:42:49.865>Sometimes <00:42:50.064>you <00:42:50.265>just <00:42:50.464>need <00:42:50.665>a <00:42:50.865>little <00:42:51.064>vanilla <00:42:51.265>js.

967
00:42:51.915 --> 00:42:53.075
<00:42:51.915>Sometimes <00:42:52.263>you <00:42:52.611>need <00:42:52.959>libraries.

968
00:42:53.335 --> 00:42:55.915
<00:42:53.335>And <00:42:53.535>today <00:42:53.735>it <00:42:53.935>seems <00:42:54.135>like <00:42:54.335>our <00:42:54.535>defacto <00:42:54.735>is

969
00:42:55.915 --> 00:43:00.515
<00:42:55.915>to <00:42:56.070>just <00:42:56.226>always <00:42:56.381>grab <00:42:56.537>react, <00:42:56.692>always <00:42:56.848>grab <00:42:57.003>react <00:42:57.159>for <00:42:57.315>90%

970
00:43:00.515 --> 00:43:04.075
<00:43:00.515>of <00:43:00.654>the <00:43:00.795>things <00:43:00.935>we <00:43:01.075>build, <00:43:01.214>even <00:43:01.355>like <00:43:01.495>those <00:43:01.634>single <00:43:01.775>page, <00:43:01.915>um,

971
00:43:04.385 --> 00:43:06.675
<00:43:04.385>like <00:43:04.665>brochure, <00:43:04.945>landing <00:43:05.225>page <00:43:05.505>type <00:43:05.785>websites.

972
00:43:06.975 --> 00:43:10.475
<00:43:06.975>Um, <00:43:07.150>but <00:43:07.325>I <00:43:07.500>absolutely <00:43:07.674>agree <00:43:07.850>that <00:43:08.025>it <00:43:08.200>is <00:43:08.375>good

973
00:43:10.475 --> 00:43:13.115
<00:43:10.475>that <00:43:10.825>libraries <00:43:11.174>try <00:43:11.525>different <00:43:11.875>things.

974
00:43:13.455 --> 00:43:16.855
<00:43:13.455>Um, <00:43:13.735>I, <00:43:14.015>uh, <00:43:14.295>I <00:43:14.575>think <00:43:14.855>some

975
00:43:16.855 --> 00:43:19.375
<00:43:16.855>of <00:43:16.995>the <00:43:17.135>best <00:43:17.275>innovations <00:43:17.415>we've <00:43:17.555>seen <00:43:17.695>on <00:43:17.835>the <00:43:17.975>front <00:43:18.115>end <00:43:18.255>come

976
00:43:19.375 --> 00:43:20.695
<00:43:19.375>from <00:43:19.672>that <00:43:19.969>kind <00:43:20.266>of <00:43:20.563>experimentation.

977
00:43:21.185 --> 00:43:25.815
<00:43:21.185>Where <00:43:21.301>I <00:43:21.418>start <00:43:21.535>to <00:43:21.651>get <00:43:21.768>a <00:43:21.884>little <00:43:22.001>bit <00:43:22.118>sad, <00:43:22.235>um, <00:43:22.351>is <00:43:22.468>that, <00:43:22.585>um,

978
00:43:26.795 --> 00:43:28.935
<00:43:26.795>it <00:43:27.028>feels <00:43:27.261>like <00:43:27.495>sometimes <00:43:27.728>things <00:43:27.961>take <00:43:28.195>off

979
00:43:29.985 --> 00:43:31.925
<00:43:29.985>and <00:43:30.265>then <00:43:30.545>become <00:43:30.825>the <00:43:31.105>predominant <00:43:31.385>way

980
00:43:31.925 --> 00:43:32.925
<00:43:31.925>to <00:43:32.075>do <00:43:32.225>things <00:43:32.375>when <00:43:32.525>they <00:43:32.675>were <00:43:32.825>built

981
00:43:32.925 --> 00:43:34.645
<00:43:32.925>to <00:43:33.158>solve <00:43:33.391>a <00:43:33.625>very <00:43:33.858>specific <00:43:34.091>use <00:43:34.325>case.

982
00:43:34.645 --> 00:43:37.365
<00:43:34.645>And <00:43:34.800>then <00:43:34.956>they <00:43:35.111>get <00:43:35.267>generalized <00:43:35.422>into <00:43:35.578>a <00:43:35.733>bunch <00:43:35.889>of <00:43:36.045>uses

983
00:43:37.365 --> 00:43:38.885
<00:43:37.365>where <00:43:37.638>they, <00:43:37.912>they're <00:43:38.185>not <00:43:38.459>necessarily <00:43:38.733>the

984
00:43:38.885 --> 00:43:40.125
<00:43:38.885>best <00:43:39.164>or <00:43:39.443>most <00:43:39.722>appropriate <00:43:40.001>choice.

985
00:43:41.555 --> 00:43:43.535
<00:43:41.555>So <00:43:41.835>I <00:43:42.115>agree <00:43:42.395>wholeheartedly <00:43:42.674>with, <00:43:42.955>uh,

986
00:43:43.535 --> 00:43:44.655
<00:43:43.535>with <00:43:43.871>Dario's <00:43:44.207>comment <00:43:44.543>there.

987
00:43:44.875 --> 00:43:46.455
<00:43:44.875>Um, <00:43:46.275>yeah.

988
00:43:47.465 --> 00:43:51.555
<00:43:47.465>Okay, <00:43:47.620>cool. <00:43:47.776>Um, <00:43:47.931>we <00:43:48.087>have <00:43:48.242>time <00:43:48.398>for <00:43:48.553>one <00:43:48.709>last <00:43:48.865>question.

989
00:43:51.625 --> 00:43:53.435
<00:43:51.625>From <00:43:52.091>an <00:43:52.558>anonymous <00:43:53.025>user,

990
00:43:54.165 --> 00:43:56.795
<00:43:54.165>could <00:43:54.365>service <00:43:54.565>workers <00:43:54.765>help <00:43:54.965>in <00:43:55.165>dealing <00:43:55.365>with <00:43:55.565>pending

991
00:43:56.815 --> 00:43:59.395
<00:43:56.815>or <00:43:56.970>queued <00:43:57.126>up <00:43:57.281>Ayc <00:43:57.437>retrial <00:43:57.592>navigating <00:43:57.748>away <00:43:57.903>from <00:43:58.059>a <00:43:58.215>page?

992
00:44:00.975 --> 00:44:03.035
<00:44:00.975>Yes, <00:44:01.208>there <00:44:01.441>is <00:44:01.674>an <00:44:01.908>API <00:44:02.141>for <00:44:02.375>that.

993
00:44:03.455 --> 00:44:07.835
<00:44:03.455>Um, <00:44:03.610>uh, <00:44:03.766>I <00:44:03.921>don't <00:44:04.077>know <00:44:04.232>it <00:44:04.388>very <00:44:04.543>well, <00:44:04.699>um, <00:44:04.855>uh,

994
00:44:08.175 --> 00:44:12.995
<00:44:08.175>but <00:44:08.315>there <00:44:08.455>is <00:44:08.595>a, <00:44:08.735>um, <00:44:08.875>uh, <00:44:09.015>there's <00:44:09.155>a <00:44:09.295>service <00:44:09.435>worker, <00:44:09.575>API

995
00:44:12.995 --> 00:44:14.995
<00:44:12.995>that <00:44:13.228>might <00:44:13.461>be <00:44:13.694>chromium <00:44:13.928>only <00:44:14.161>right <00:44:14.395>now.

996
00:44:15.235 --> 00:44:16.635
<00:44:15.235>I <00:44:15.415>don't <00:44:15.595>know <00:44:15.775>if <00:44:15.955>it <00:44:16.135>works <00:44:16.315>in <00:44:16.495>Firefox,

997
00:44:16.935 --> 00:44:21.595
<00:44:16.935>but, <00:44:17.090>um, <00:44:17.246>it <00:44:17.401>was <00:44:17.557>designed <00:44:17.712>specifically <00:44:17.868>to <00:44:18.023>address <00:44:18.179>the <00:44:18.335>problem

998
00:44:21.815 --> 00:44:25.275
<00:44:21.815>of <00:44:21.970>you've <00:44:22.126>got <00:44:22.281>some <00:44:22.437>tasks <00:44:22.592>that <00:44:22.748>you <00:44:22.903>want <00:44:23.059>to <00:44:23.215>run,

999
00:44:25.735 --> 00:44:28.195
<00:44:25.735>but <00:44:25.910>the <00:44:26.085>user <00:44:26.260>is <00:44:26.435>kind <00:44:26.610>of <00:44:26.785>leaving <00:44:26.960>this <00:44:27.135>page.

1000
00:44:28.195 --> 00:44:30.035
<00:44:28.195>And <00:44:28.395>so <00:44:28.595>you <00:44:28.795>can <00:44:28.995>literally <00:44:29.195>queue <00:44:29.395>them <00:44:29.595>up

1001
00:44:30.615 --> 00:44:34.795
<00:44:30.615>and <00:44:30.814>then, <00:44:31.015>um, <00:44:31.214>the <00:44:31.415>service <00:44:31.615>worker <00:44:31.814>will <00:44:32.015>either

1002
00:44:35.335 --> 00:44:38.635
<00:44:35.335>run <00:44:35.490>them <00:44:35.646>immediately <00:44:35.801>if <00:44:35.957>it <00:44:36.112>can <00:44:36.268>or <00:44:36.423>hold <00:44:36.579>onto <00:44:36.735>them

1003
00:44:38.735 --> 00:44:40.915
<00:44:38.735>and <00:44:38.875>run <00:44:39.015>them <00:44:39.155>the <00:44:39.295>next <00:44:39.435>time <00:44:39.575>the <00:44:39.715>user <00:44:39.855>comes <00:44:39.995>back <00:44:40.135>online.

1004
00:44:40.975 --> 00:44:43.595
<00:44:40.975>And <00:44:41.130>this <00:44:41.286>was <00:44:41.441>really <00:44:41.597>built <00:44:41.752>to <00:44:41.908>deal, <00:44:42.063>uh, <00:44:42.219>originally <00:44:42.375>built

1005
00:44:43.595 --> 00:44:46.595
<00:44:43.595>to <00:44:43.770>deal <00:44:43.944>with <00:44:44.120>kind <00:44:44.294>of <00:44:44.470>situations <00:44:44.645>where <00:44:44.819>someone's <00:44:44.995>navigating

1006
00:44:46.655 --> 00:44:48.475
<00:44:46.655>and <00:44:46.888>then <00:44:47.121>they <00:44:47.355>lose <00:44:47.588>their <00:44:47.821>network <00:44:48.055>connection.

1007
00:44:48.695 --> 00:44:51.315
<00:44:48.695>And <00:44:48.835>so <00:44:48.975>the <00:44:49.115>thing <00:44:49.255>that <00:44:49.395>they <00:44:49.535>were <00:44:49.675>going <00:44:49.815>to <00:44:49.955>do <00:44:50.095>can't,

1008
00:44:52.085 --> 00:44:54.835
<00:44:52.085>can't <00:44:52.240>be <00:44:52.396>sent, <00:44:52.551>but <00:44:52.707>the <00:44:52.862>kind <00:44:53.018>of <00:44:53.173>the <00:44:53.329>local <00:44:53.485>version

1009
00:44:54.855 --> 00:44:56.795
<00:44:54.855>of <00:44:55.030>the <00:44:55.205>app <00:44:55.380>is <00:44:55.555>able <00:44:55.730>to <00:44:55.905>update <00:44:56.080>the <00:44:56.255>ui.

1010
00:44:57.015 --> 00:44:59.435
<00:44:57.015>Um, <00:44:57.142>even <00:44:57.269>though <00:44:57.396>you <00:44:57.524>haven't <00:44:57.651>sent <00:44:57.778>the <00:44:57.905>new <00:44:58.033>data <00:44:58.160>to <00:44:58.287>the <00:44:58.415>server,

1011
00:45:00.055 --> 00:45:02.195
<00:45:00.055>um, <00:45:00.254>I <00:45:00.455>forget <00:45:00.654>the <00:45:00.855>name <00:45:01.055>of <00:45:01.254>the <00:45:01.455>API,

1012
00:45:02.295 --> 00:45:05.955
<00:45:02.295>but, <00:45:02.450>um, <00:45:02.606>there's <00:45:02.761>a <00:45:02.917>really <00:45:03.072>great <00:45:03.228>article <00:45:03.383>on, <00:45:03.539>um, <00:45:03.695>uh,

1013
00:45:06.295 --> 00:45:08.035
<00:45:06.295>is <00:45:06.761>it <00:45:07.228>on <00:45:07.695>web.dev?

1014
00:45:08.175 --> 00:45:09.835
<00:45:08.175>So <00:45:08.525>Google's <00:45:08.875>developer <00:45:09.225>website, <00:45:09.575>um,

1015
00:45:09.895 --> 00:45:11.115
<00:45:09.895>in <00:45:10.114>their <00:45:10.334>section <00:45:10.553>on <00:45:10.773>service <00:45:10.993>workers,

1016
00:45:11.145 --> 00:45:14.395
<00:45:11.145>they <00:45:11.300>specifically <00:45:11.456>talk <00:45:11.611>about, <00:45:11.767>uh, <00:45:11.922>this <00:45:12.078>API, <00:45:12.233>it's <00:45:12.389>like <00:45:12.545>a,

1017
00:45:14.555 --> 00:45:16.595
<00:45:14.555>a <00:45:14.754>scheduled <00:45:14.955>event, <00:45:15.154>API <00:45:15.355>that <00:45:15.555>you <00:45:15.754>can <00:45:15.955>use

1018
00:45:16.815 --> 00:45:17.835
<00:45:16.815>for <00:45:17.121>that <00:45:17.427>specific <00:45:17.733>use.

1019
00:45:17.975 --> 00:45:19.035
<00:45:17.975>So <00:45:18.452>yes, <00:45:18.929>absolutely.

1020
00:45:19.535 --> 00:45:21.545
<00:45:19.535>Awesome. <00:45:19.815>Well, <00:45:20.095>I <00:45:20.375>said <00:45:20.654>last <00:45:20.935>question,

1021
00:45:21.565 --> 00:45:23.745
<00:45:21.565>but <00:45:21.705>let's <00:45:21.845>start <00:45:21.985>one <00:45:22.125>comment <00:45:22.265>that <00:45:22.405>I <00:45:22.545>do <00:45:22.685>want <00:45:22.825>to <00:45:22.965>ask.

1022
00:45:24.005 --> 00:45:26.505
<00:45:24.005>So <00:45:24.238>all <00:45:24.471>bear <00:45:24.705>with <00:45:24.938>me, <00:45:25.171>it's <00:45:25.405>Lauren,

1023
00:45:27.445 --> 00:45:29.385
<00:45:27.445>and <00:45:27.645>he's <00:45:27.845>asking, <00:45:28.045>have <00:45:28.245>you <00:45:28.445>heard <00:45:28.645>about <00:45:28.845>Remix

1024
00:45:29.385 --> 00:45:30.625
<00:45:29.385>and <00:45:29.608>what's <00:45:29.831>your <00:45:30.054>opinion <00:45:30.277>about <00:45:30.501>it?

1025
00:45:30.905 --> 00:45:33.825
<00:45:30.905>'cause <00:45:31.080>it's, <00:45:31.255>well, <00:45:31.430>three <00:45:31.605>days <00:45:31.780>old <00:45:31.955>now <00:45:32.130>or <00:45:32.305>so.

1026
00:45:33.885 --> 00:45:36.585
<00:45:33.885>Uh, <00:45:34.025>have <00:45:34.165>you <00:45:34.305>heard <00:45:34.445>about <00:45:34.585>it? <00:45:34.725>If <00:45:34.865>you <00:45:35.005>looked <00:45:35.145>at <00:45:35.285>it?

1027
00:45:37.485 --> 00:45:40.225
<00:45:37.485>Uh, <00:45:37.718>I'm <00:45:37.951>going <00:45:38.185>to <00:45:38.418>imagine <00:45:38.651>probably <00:45:38.885>not.

1028
00:45:40.465 --> 00:45:42.225
<00:45:40.465>I <00:45:40.620>just <00:45:40.776>pulled <00:45:40.931>up <00:45:41.087>the <00:45:41.242>website <00:45:41.398>right <00:45:41.553>now <00:45:41.709>for <00:45:41.865>it.

1029
00:45:42.485 --> 00:45:45.625
<00:45:42.485>Um, <00:45:42.685>uh, <00:45:42.885>no, <00:45:43.085>I <00:45:43.285>haven't <00:45:43.485>heard <00:45:43.685>of <00:45:43.885>it.

1030
00:45:45.625 --> 00:45:49.225
<00:45:45.625>This <00:45:45.765>is <00:45:45.905>the <00:45:46.045>first <00:45:46.185>time <00:45:46.325>I <00:45:46.465>am <00:45:46.605>looking <00:45:46.745>at <00:45:46.885>it, <00:45:47.025>um,

1031
00:45:49.335 --> 00:45:50.905
<00:45:49.335>focused <00:45:49.801>on <00:45:50.268>web <00:45:50.735>fundamentals.

1032
00:45:50.985 --> 00:45:52.065
<00:45:50.985>I <00:45:51.179>have <00:45:51.373>no <00:45:51.568>opinion <00:45:51.762>on <00:45:51.957>this.

1033
00:45:52.285 --> 00:45:55.945
<00:45:52.285>Um, <00:45:52.440>I <00:45:52.596>have <00:45:52.751>not <00:45:52.907>had <00:45:53.062>time <00:45:53.218>to <00:45:53.373>properly <00:45:53.529>digest <00:45:53.685>it.

1034
00:45:56.605 --> 00:46:01.345
<00:45:56.605>Um, <00:45:56.885>uh, <00:45:57.165>yeah, <00:45:57.445>no, <00:45:57.725>no <00:45:58.005>opinion.

1035
00:46:01.725 --> 00:46:02.725
<00:46:01.725>I'm <00:46:02.174>very <00:46:02.625>sorry.

1036
00:46:03.985 --> 00:46:07.145
<00:46:03.985>I <00:46:04.112>also <00:46:04.239>haven't <00:46:04.366>had <00:46:04.494>a <00:46:04.621>chance <00:46:04.748>to, <00:46:04.875>uh, <00:46:05.003>look <00:46:05.130>at <00:46:05.257>it <00:46:05.385>properly.

1037
00:46:07.245 --> 00:46:10.345
<00:46:07.245>But <00:46:07.420>I <00:46:07.595>do <00:46:07.770>know <00:46:07.944>that <00:46:08.120>one <00:46:08.295>of <00:46:08.470>the <00:46:08.645>people

1038
00:46:10.345 --> 00:46:11.825
<00:46:10.345>behind <00:46:10.611>it <00:46:10.877>is <00:46:11.144>Ken <00:46:11.410>see <00:46:11.676>dots

1039
00:46:11.825 --> 00:46:13.665
<00:46:11.825>and, <00:46:12.058>uh, <00:46:12.291>all <00:46:12.524>his <00:46:12.758>previous <00:46:12.991>work <00:46:13.225>I'm

1040
00:46:13.665 --> 00:46:14.705
<00:46:13.665>really <00:46:14.133>enthusiastic <00:46:14.601>about.

1041
00:46:14.845 --> 00:46:19.425
<00:46:14.845>So <00:46:14.972>his <00:46:15.099>token <00:46:15.226>of <00:46:15.354>approval <00:46:15.481>is, <00:46:15.608>uh, <00:46:15.735>a <00:46:15.863>good <00:46:15.990>sign <00:46:16.117>for <00:46:16.245>me.

1042
00:46:19.645 --> 00:46:22.225
<00:46:19.645>So, <00:46:19.772>uh, <00:46:19.899>I <00:46:20.026>will <00:46:20.154>be <00:46:20.281>looking <00:46:20.408>into <00:46:20.535>it <00:46:20.663>as <00:46:20.790>soon <00:46:20.917>as <00:46:21.045>possible,

1043
00:46:22.325 --> 00:46:25.305
<00:46:22.325>but <00:46:22.480>yeah, <00:46:22.636>three <00:46:22.791>days <00:46:22.947>is <00:46:23.102>not, <00:46:23.258>uh, <00:46:23.413>a <00:46:23.569>long <00:46:23.725>time.

1044
00:46:25.405 --> 00:46:26.905
<00:46:25.405>So <00:46:25.630>there <00:46:25.855>we <00:46:26.080>go. <00:46:26.305>All <00:46:26.530>right, <00:46:26.755>Chris.

1045
00:46:27.245 --> 00:46:30.465
<00:46:27.245>Um, <00:46:27.352>that's <00:46:27.460>it, <00:46:27.568>that's <00:46:27.675>all <00:46:27.783>the <00:46:27.891>time <00:46:27.998>we <00:46:28.106>have <00:46:28.214>for <00:46:28.321>our <00:46:28.429>q <00:46:28.537>and <00:46:28.645>a.

1046
00:46:30.765 --> 00:46:33.545
<00:46:30.765>Um, <00:46:30.998>thanks <00:46:31.231>a <00:46:31.464>lot <00:46:31.698>for, <00:46:31.931>uh, <00:46:32.165>well

1047
00:46:34.055 --> 00:46:35.345
<00:46:34.055>ruining <00:46:34.287>the <00:46:34.519>way <00:46:34.751>I've <00:46:34.983>been <00:46:35.216>working.

1048
00:46:36.765 --> 00:46:39.305
<00:46:36.765>Thanks <00:46:36.904>for <00:46:37.045>having <00:46:37.185>me. <00:46:37.325>This <00:46:37.464>was <00:46:37.605>a <00:46:37.745>lot <00:46:37.884>of <00:46:38.025>fun. <00:46:38.165>Alright,

1049
00:46:39.685 --> 00:46:40.685
<00:46:39.685>Thanks <00:46:40.134>Chris. <00:46:40.585>Byebye.