WEBVTT

1
00:00:02.965 --> 00:00:04.595
<00:00:02.965>Thank <00:00:03.315>you <00:00:03.665>for <00:00:04.014>the <00:00:04.365>introduction.

2
00:00:04.815 --> 00:00:07.195
<00:00:04.815>I'm <00:00:04.955>very <00:00:05.095>happy <00:00:05.235>to <00:00:05.375>be <00:00:05.515>here. <00:00:05.655>Yeah. <00:00:05.795>My <00:00:05.935>name <00:00:06.075>is <00:00:06.215>Mira.

3
00:00:07.255 --> 00:00:08.315
<00:00:07.255>I'm <00:00:07.572>an <00:00:07.891>app <00:00:08.209>developer

4
00:00:08.735 --> 00:00:11.515
<00:00:08.735>and <00:00:08.910>I <00:00:09.084>run <00:00:09.260>a <00:00:09.434>small <00:00:09.610>app <00:00:09.785>development <00:00:09.959>company <00:00:10.135>in

5
00:00:11.755 --> 00:00:12.835
<00:00:11.755>Hanover, <00:00:12.241>cuckoo <00:00:12.727>Coding.

6
00:00:13.615 --> 00:00:17.075
<00:00:13.615>And, <00:00:13.770>um, <00:00:13.926>two <00:00:14.081>years <00:00:14.237>ago <00:00:14.392>we <00:00:14.548>switched <00:00:14.703>to <00:00:14.859>Flutter <00:00:15.015>completely.

7
00:00:17.255 --> 00:00:18.795
<00:00:17.255>So <00:00:17.428>that's <00:00:17.601>the <00:00:17.774>only <00:00:17.948>thing <00:00:18.121>I'm <00:00:18.294>doing <00:00:18.467>right <00:00:18.641>now,

8
00:00:18.795 --> 00:00:19.995
<00:00:18.795>and <00:00:19.011>I <00:00:19.227>really, <00:00:19.443>really <00:00:19.659>love <00:00:19.875>it.

9
00:00:20.655 --> 00:00:24.115
<00:00:20.655>And <00:00:20.782>I <00:00:20.909>want <00:00:21.036>to <00:00:21.164>tell <00:00:21.291>you <00:00:21.418>a <00:00:21.545>little <00:00:21.673>bit <00:00:21.800>why <00:00:21.927>that <00:00:22.055>is.

10
00:00:24.535 --> 00:00:27.395
<00:00:24.535>So <00:00:24.735>I'll <00:00:24.935>tell <00:00:25.135>you <00:00:25.335>why <00:00:25.535>I <00:00:25.735>like <00:00:25.935>Flutter,

11
00:00:27.415 --> 00:00:30.835
<00:00:27.415>why <00:00:27.570>I <00:00:27.726>think <00:00:27.881>it's <00:00:28.037>the <00:00:28.192>best <00:00:28.348>app <00:00:28.503>development, <00:00:28.659>um, <00:00:28.814>uh,

12
00:00:30.845 --> 00:00:32.035
<00:00:30.845>technology <00:00:31.202>in <00:00:31.558>the <00:00:31.915>moment.

13
00:00:32.645 --> 00:00:35.155
<00:00:32.645>We'll <00:00:32.800>go, <00:00:32.956>go <00:00:33.111>a <00:00:33.267>little <00:00:33.422>bit <00:00:33.578>into <00:00:33.733>some <00:00:33.889>basics, <00:00:34.045>uh,

14
00:00:35.155 --> 00:00:36.715
<00:00:35.155>what <00:00:35.388>you <00:00:35.621>should <00:00:35.855>know <00:00:36.088>about <00:00:36.321>this <00:00:36.555>framework,

15
00:00:36.935 --> 00:00:39.755
<00:00:36.935>and <00:00:37.090>then <00:00:37.246>we <00:00:37.401>will <00:00:37.557>have <00:00:37.712>a <00:00:37.868>short <00:00:38.023>live <00:00:38.179>coding <00:00:38.335>session

16
00:00:39.965 --> 00:00:43.275
<00:00:39.965>where <00:00:40.105>I <00:00:40.245>will <00:00:40.385>show <00:00:40.525>you <00:00:40.665>a <00:00:40.805>little <00:00:40.945>bit <00:00:41.085>how <00:00:41.225>to, <00:00:41.365>um,

17
00:00:43.905 --> 00:00:46.675
<00:00:43.905>make <00:00:44.045>like <00:00:44.185>I <00:00:44.325>will, <00:00:44.465>I <00:00:44.605>have <00:00:44.745>prepared <00:00:44.885>a <00:00:45.025>half <00:00:45.165>finished <00:00:45.305>app

18
00:00:46.675 --> 00:00:48.235
<00:00:46.675>and <00:00:46.849>I <00:00:47.025>will <00:00:47.199>make <00:00:47.375>it <00:00:47.550>into <00:00:47.724>a <00:00:47.900>finished <00:00:48.074>app.

19
00:00:48.735 --> 00:00:52.315
<00:00:48.735>Um, <00:00:48.890>I <00:00:49.046>shared <00:00:49.201>the <00:00:49.357>presentation <00:00:49.512>here <00:00:49.668>so <00:00:49.823>you <00:00:49.979>can, <00:00:50.135>um,

20
00:00:52.535 --> 00:00:53.595
<00:00:52.535>see <00:00:53.012>this <00:00:53.489>presentation

21
00:00:53.695 --> 00:00:56.475
<00:00:53.695>and <00:00:53.870>you <00:00:54.045>can, <00:00:54.220>um, <00:00:54.395>also <00:00:54.570>find <00:00:54.745>the <00:00:54.920>GitHub <00:00:55.095>links

22
00:00:56.495 --> 00:00:57.795
<00:00:56.495>inside <00:00:57.080>this <00:00:57.665>presentation.

23
00:00:57.885 --> 00:01:00.555
<00:00:57.885>We'll <00:00:58.040>get <00:00:58.196>to <00:00:58.351>that <00:00:58.507>and <00:00:58.662>you <00:00:58.818>can <00:00:58.973>download <00:00:59.129>the <00:00:59.285>project

24
00:01:00.695 --> 00:01:02.835
<00:01:00.695>and <00:01:00.850>do <00:01:01.006>it <00:01:01.161>on <00:01:01.317>your <00:01:01.472>own <00:01:01.628>later <00:01:01.783>if <00:01:01.939>you're <00:01:02.095>interested.

25
00:01:03.935 --> 00:01:05.475
<00:01:03.935>And <00:01:04.166>finally, <00:01:04.397>I <00:01:04.628>will <00:01:04.858>tell <00:01:05.090>you <00:01:05.321>how

26
00:01:05.475 --> 00:01:07.755
<00:01:05.474>to <00:01:05.630>go <00:01:05.786>further <00:01:05.941>if <00:01:06.097>you're <00:01:06.252>interested <00:01:06.408>in <00:01:06.563>the <00:01:06.719>topic <00:01:06.875>and,

27
00:01:07.755 --> 00:01:10.355
<00:01:07.755>and <00:01:07.895>what <00:01:08.035>else <00:01:08.175>to <00:01:08.315>explore <00:01:08.455>when <00:01:08.595>you <00:01:08.735>wanna <00:01:08.875>get <00:01:09.015>into <00:01:09.155>Flutter.

28
00:01:11.415 --> 00:01:13.355
<00:01:11.414>So <00:01:11.764>let's <00:01:12.115>start. <00:01:12.464>Why <00:01:12.815>flatter?

29
00:01:13.815 --> 00:01:16.955
<00:01:13.815>So <00:01:13.955>there <00:01:14.095>are <00:01:14.235>a <00:01:14.375>couple <00:01:14.515>of <00:01:14.655>possibilities <00:01:14.795>to <00:01:14.935>code <00:01:15.075>mobile <00:01:15.215>apps.

30
00:01:16.965 --> 00:01:18.915
<00:01:16.965>There <00:01:17.315>are <00:01:17.665>the <00:01:18.015>native <00:01:18.365>possibilities.

31
00:01:19.665 --> 00:01:23.075
<00:01:19.664>Android, <00:01:19.839>for <00:01:20.014>instance, <00:01:20.190>I <00:01:20.365>started <00:01:20.539>with <00:01:20.714>coding, <00:01:20.889>Android, <00:01:21.065>Java.

32
00:01:23.655 --> 00:01:26.115
<00:01:23.655>Uh, <00:01:23.888>the <00:01:24.121>kids <00:01:24.355>nowadays <00:01:24.588>do, <00:01:24.821>uh, <00:01:25.055>Kotlin,

33
00:01:26.365 --> 00:01:28.275
<00:01:26.365>which <00:01:26.598>is <00:01:26.831>a <00:01:27.065>cooler <00:01:27.298>version <00:01:27.531>of <00:01:27.765>Java.

34
00:01:28.775 --> 00:01:30.315
<00:01:28.775>Um, <00:01:29.121>and <00:01:29.468>there's <00:01:29.814>a <00:01:30.161>possibility

35
00:01:30.455 --> 00:01:32.755
<00:01:30.455>to <00:01:30.688>code <00:01:30.921>native <00:01:31.155>iOS <00:01:31.388>apps <00:01:31.621>with <00:01:31.855>Swift.

36
00:01:33.455 --> 00:01:36.875
<00:01:33.455>But <00:01:33.630>nowadays, <00:01:33.804>like <00:01:33.980>the <00:01:34.155>clients <00:01:34.330>that <00:01:34.505>come <00:01:34.679>to <00:01:34.855>me,

37
00:01:37.105 --> 00:01:39.755
<00:01:37.104>I've <00:01:37.279>never <00:01:37.454>heard <00:01:37.630>that <00:01:37.804>someone <00:01:37.979>wanted, <00:01:38.154>uh, <00:01:38.329>an <00:01:38.505>app

38
00:01:39.755 --> 00:01:42.555
<00:01:39.755>that <00:01:39.910>only <00:01:40.066>runs <00:01:40.221>on <00:01:40.377>unread <00:01:40.532>or <00:01:40.688>only <00:01:40.843>runs <00:01:40.999>on <00:01:41.155>IRS.

39
00:01:42.555 --> 00:01:43.835
<00:01:42.555>Usually <00:01:42.939>they <00:01:43.323>want <00:01:43.707>both.

40
00:01:44.775 --> 00:01:47.395
<00:01:44.775>And <00:01:44.950>when <00:01:45.125>you <00:01:45.300>want <00:01:45.475>both, <00:01:45.650>of <00:01:45.825>course, <00:01:46.000>you <00:01:46.175>need

41
00:01:47.395 --> 00:01:48.555
<00:01:47.395>to <00:01:47.743>pay <00:01:48.091>two <00:01:48.439>developers.

42
00:01:48.895 --> 00:01:51.635
<00:01:48.895>Um, <00:01:49.095>the <00:01:49.295>creation <00:01:49.495>is, <00:01:49.695>uh, <00:01:49.895>double <00:01:50.095>the <00:01:50.295>time

43
00:01:51.815 --> 00:01:54.235
<00:01:51.815>and <00:01:52.095>also <00:01:52.375>the, <00:01:52.655>uh, <00:01:52.935>constant <00:01:53.215>updating

44
00:01:54.265 --> 00:01:55.795
<00:01:54.265>that <00:01:54.540>you <00:01:54.815>need <00:01:55.091>with <00:01:55.366>these <00:01:55.642>apps.

45
00:01:56.255 --> 00:01:57.355
<00:01:56.255>It <00:01:56.502>costs <00:01:56.750>time <00:01:56.997>and <00:01:57.244>money.

46
00:01:58.095 --> 00:02:00.835
<00:01:58.095>So <00:01:58.270>the <00:01:58.445>better <00:01:58.620>alternative <00:01:58.795>is <00:01:58.970>to <00:01:59.145>go <00:01:59.320>cross <00:01:59.495>platform.

47
00:02:01.555 --> 00:02:03.235
<00:02:01.555>A <00:02:01.788>couple <00:02:02.021>years <00:02:02.255>ago, <00:02:02.488>nobody <00:02:02.721>did <00:02:02.955>this

48
00:02:03.235 --> 00:02:06.155
<00:02:03.235>because <00:02:03.375>there <00:02:03.515>were <00:02:03.655>a <00:02:03.795>couple <00:02:03.935>of <00:02:04.075>things <00:02:04.215>that <00:02:04.355>you <00:02:04.495>couldn't <00:02:04.635>do

49
00:02:06.155 --> 00:02:09.275
<00:02:06.155>with <00:02:06.355>cross <00:02:06.555>platform, <00:02:06.755>like, <00:02:06.955>for <00:02:07.155>instance, <00:02:07.355>um, <00:02:07.555>NFC

50
00:02:09.295 --> 00:02:13.155
<00:02:09.294>or <00:02:09.422>Bluetooth, <00:02:09.549>um, <00:02:09.676>to <00:02:09.804>talk <00:02:09.931>to <00:02:10.058>that, <00:02:10.185>um, <00:02:10.313>part <00:02:10.440>of <00:02:10.567>the <00:02:10.695>phone.

51
00:02:13.215 --> 00:02:15.075
<00:02:13.215>It <00:02:13.565>was <00:02:13.915>difficult. <00:02:14.265>With <00:02:14.615>cross-platform

52
00:02:15.075 --> 00:02:16.555
<00:02:15.075>technologies <00:02:15.519>are <00:02:15.963>not <00:02:16.407>possible.

53
00:02:17.455 --> 00:02:21.275
<00:02:17.454>Um, <00:02:17.594>so, <00:02:17.734>um, <00:02:17.874>but <00:02:18.015>nowadays <00:02:18.154>this <00:02:18.295>is <00:02:18.434>not <00:02:18.575>the <00:02:18.714>case <00:02:18.855>anymore.

54
00:02:21.415 --> 00:02:24.395
<00:02:21.415>And <00:02:21.570>especially <00:02:21.726>with <00:02:21.881>Flatter, <00:02:22.037>you <00:02:22.192>can <00:02:22.348>also <00:02:22.503>add <00:02:22.659>Native <00:02:22.815>Core

55
00:02:24.395 --> 00:02:26.755
<00:02:24.395>to <00:02:24.535>your <00:02:24.675>app, <00:02:24.815>but <00:02:24.955>I <00:02:25.095>actually <00:02:25.235>never <00:02:25.375>had <00:02:25.515>to <00:02:25.655>do <00:02:25.795>that.

56
00:02:26.755 --> 00:02:28.435
<00:02:26.755>Everything <00:02:26.988>that <00:02:27.221>I <00:02:27.454>always <00:02:27.688>wanted <00:02:27.921>to <00:02:28.155>do

57
00:02:28.585 --> 00:02:30.195
<00:02:28.585>with <00:02:29.051>Flatter <00:02:29.518>was <00:02:29.985>possible.

58
00:02:31.335 --> 00:02:33.035
<00:02:31.335>Um, <00:02:31.685>there <00:02:32.035>is <00:02:32.385>another <00:02:32.735>possibility.

59
00:02:33.455 --> 00:02:35.155
<00:02:33.454>Um, <00:02:33.804>it's <00:02:34.154>Progressive <00:02:34.505>web <00:02:34.855>app.

60
00:02:35.495 --> 00:02:37.915
<00:02:35.495>Um, <00:02:35.695>you <00:02:35.895>can <00:02:36.095>talk <00:02:36.295>a <00:02:36.495>lot <00:02:36.695>about <00:02:36.895>this,

61
00:02:38.015 --> 00:02:39.955
<00:02:38.015>and <00:02:38.214>I <00:02:38.415>think <00:02:38.614>it's <00:02:38.815>a <00:02:39.015>really <00:02:39.214>interesting <00:02:39.415>topic.

62
00:02:40.085 --> 00:02:43.515
<00:02:40.085>After <00:02:40.285>Android, <00:02:40.485>I <00:02:40.685>switched <00:02:40.885>to <00:02:41.085>Progressive <00:02:41.285>web <00:02:41.485>apps.

63
00:02:44.225 --> 00:02:45.755
<00:02:44.225>Flatter <00:02:44.684>wasn't <00:02:45.143>available <00:02:45.602>yet,

64
00:02:45.775 --> 00:02:49.355
<00:02:45.775>and <00:02:45.902>I <00:02:46.029>thought <00:02:46.156>this <00:02:46.284>was <00:02:46.411>a <00:02:46.538>solution <00:02:46.665>to, <00:02:46.793>to <00:02:46.920>provide <00:02:47.047>an <00:02:47.175>app

65
00:02:49.355 --> 00:02:52.675
<00:02:49.355>that <00:02:49.494>runs <00:02:49.635>on <00:02:49.774>NA, <00:02:49.915>on <00:02:50.054>Android <00:02:50.195>and <00:02:50.334>iOS <00:02:50.475>and <00:02:50.614>on <00:02:50.755>web.

66
00:02:53.455 --> 00:02:55.755
<00:02:53.454>Um, <00:02:53.630>you <00:02:53.804>can <00:02:53.980>do <00:02:54.154>it <00:02:54.329>with <00:02:54.505>any <00:02:54.679>web <00:02:54.855>technology

67
00:02:55.855 --> 00:02:57.395
<00:02:55.855>and <00:02:56.085>you <00:02:56.317>just <00:02:56.548>add <00:02:56.779>a <00:02:57.010>service <00:02:57.241>worker

68
00:02:57.545 --> 00:03:01.005
<00:02:57.545>that <00:02:57.745>makes <00:02:57.945>this <00:02:58.145>website <00:02:58.345>downloadable <00:02:58.545>to <00:02:58.745>your <00:02:58.945>phone.

69
00:03:01.705 --> 00:03:04.725
<00:03:01.705>And <00:03:01.845>in <00:03:01.985>the <00:03:02.125>last <00:03:02.265>years, <00:03:02.405>the <00:03:02.545>browsers <00:03:02.685>that <00:03:02.825>there <00:03:02.965>are, <00:03:03.105>um,

70
00:03:04.835 --> 00:03:06.645
<00:03:04.835>they <00:03:05.185>started <00:03:05.535>to <00:03:05.885>get <00:03:06.235>more

71
00:03:06.645 --> 00:03:10.405
<00:03:06.645>and <00:03:06.800>more <00:03:06.956>aligned <00:03:07.111>when <00:03:07.267>it <00:03:07.422>comes <00:03:07.578>to <00:03:07.733>providing <00:03:07.889>the, <00:03:08.045>um,

72
00:03:10.405 --> 00:03:12.885
<00:03:10.405>infrastructure <00:03:10.685>for <00:03:10.965>pro <00:03:11.245>progressive <00:03:11.525>web <00:03:11.805>apps.

73
00:03:13.265 --> 00:03:16.245
<00:03:13.265>But <00:03:13.614>still <00:03:13.964>there, <00:03:14.315>there <00:03:14.665>differences

74
00:03:16.825 --> 00:03:19.045
<00:03:16.825>and, <00:03:17.024>um, <00:03:17.225>it's <00:03:17.424>a <00:03:17.625>pain <00:03:17.825>in <00:03:18.024>the <00:03:18.225>ass

75
00:03:19.045 --> 00:03:20.325
<00:03:19.045>because <00:03:19.275>it <00:03:19.505>changes <00:03:19.736>all <00:03:19.966>the <00:03:20.197>time.

76
00:03:21.025 --> 00:03:24.805
<00:03:21.025>Um, <00:03:21.305>and <00:03:21.585>also <00:03:21.865>the, <00:03:22.145>um, <00:03:22.425>way

77
00:03:24.865 --> 00:03:26.285
<00:03:24.865>to <00:03:25.184>find <00:03:25.504>them <00:03:25.823>is <00:03:26.143>difficult

78
00:03:26.285 --> 00:03:27.725
<00:03:26.285>and <00:03:26.470>the <00:03:26.655>users <00:03:26.840>are <00:03:27.025>not <00:03:27.210>used <00:03:27.395>to <00:03:27.581>that.

79
00:03:27.725 --> 00:03:29.965
<00:03:27.725>Usually <00:03:27.924>you <00:03:28.125>have <00:03:28.325>like <00:03:28.525>a <00:03:28.725>small <00:03:28.924>error <00:03:29.125>next

80
00:03:29.965 --> 00:03:32.765
<00:03:29.965>to <00:03:30.105>the <00:03:30.245>URL <00:03:30.385>on <00:03:30.525>your <00:03:30.665>phone <00:03:30.805>where <00:03:30.945>you <00:03:31.085>can <00:03:31.225>click <00:03:31.365>on

81
00:03:32.765 --> 00:03:34.605
<00:03:32.765>and <00:03:32.920>then <00:03:33.076>you <00:03:33.231>can <00:03:33.387>download <00:03:33.542>it <00:03:33.698>to <00:03:33.853>your <00:03:34.009>home <00:03:34.165>screen.

82
00:03:34.665 --> 00:03:36.365
<00:03:34.665>But <00:03:34.945>it's <00:03:35.225>different <00:03:35.505>for <00:03:35.785>every <00:03:36.065>browser

83
00:03:36.625 --> 00:03:38.125
<00:03:36.625>and <00:03:36.895>users <00:03:37.165>don't <00:03:37.435>know <00:03:37.705>about <00:03:37.975>it.

84
00:03:38.705 --> 00:03:41.445
<00:03:38.704>So <00:03:38.880>I <00:03:39.054>usually <00:03:39.230>only <00:03:39.404>recommend <00:03:39.579>it <00:03:39.755>to <00:03:39.929>my <00:03:40.105>clients

85
00:03:41.585 --> 00:03:44.485
<00:03:41.585>to <00:03:41.712>do <00:03:41.839>something <00:03:41.966>like <00:03:42.094>this <00:03:42.221>when <00:03:42.348>they <00:03:42.475>want <00:03:42.603>to <00:03:42.730>do <00:03:42.857>a <00:03:42.985>workshop

86
00:03:44.505 --> 00:03:47.285
<00:03:44.505>or <00:03:44.644>something <00:03:44.785>like <00:03:44.924>this <00:03:45.065>where <00:03:45.204>you <00:03:45.345>have <00:03:45.484>the <00:03:45.625>user <00:03:45.765>sitting <00:03:45.905>in

87
00:03:47.285 --> 00:03:49.165
<00:03:47.285>front <00:03:47.440>of <00:03:47.596>you <00:03:47.751>and <00:03:47.907>you <00:03:48.062>tell <00:03:48.218>them, <00:03:48.373>come, <00:03:48.529>come <00:03:48.685>on

88
00:03:49.225 --> 00:03:50.565
<00:03:49.225>as <00:03:49.466>an <00:03:49.707>extension <00:03:49.948>to <00:03:50.189>a <00:03:50.430>workshop.

89
00:03:50.655 --> 00:03:53.085
<00:03:50.655>Let's <00:03:50.855>download <00:03:51.055>this <00:03:51.255>website. <00:03:51.455>It <00:03:51.655>goes <00:03:51.855>like <00:03:52.055>this.

90
00:03:53.985 --> 00:03:56.685
<00:03:53.985>Um, <00:03:54.125>by <00:03:54.265>the <00:03:54.405>way, <00:03:54.545>you <00:03:54.685>can <00:03:54.825>also <00:03:54.965>do <00:03:55.105>progressive <00:03:55.245>web <00:03:55.385>apps

91
00:03:56.685 --> 00:04:00.245
<00:03:56.685>with <00:03:56.840>Flatter, <00:03:56.996>because <00:03:57.151>with <00:03:57.307>Flatter <00:03:57.462>you <00:03:57.618>can <00:03:57.773>also <00:03:57.929>do <00:03:58.085>websites,

92
00:04:00.345 --> 00:04:02.445
<00:04:00.345>so <00:04:00.545>you <00:04:00.745>can <00:04:00.945>also <00:04:01.145>do <00:04:01.345>progressive <00:04:01.545>web <00:04:01.745>apps.

93
00:04:03.305 --> 00:04:05.725
<00:04:03.305>So, <00:04:03.480>but <00:04:03.655>let's <00:04:03.830>go <00:04:04.005>into <00:04:04.180>the <00:04:04.355>cross <00:04:04.530>platform <00:04:04.705>technologies

94
00:04:05.725 --> 00:04:09.485
<00:04:05.725>because <00:04:05.864>as <00:04:06.005>I <00:04:06.144>said, <00:04:06.285>progressive <00:04:06.424>web <00:04:06.565>apps <00:04:06.704>still <00:04:06.845>a <00:04:06.984>little <00:04:07.125>bit,

95
00:04:10.065 --> 00:04:11.805
<00:04:10.065>um, <00:04:10.345>and <00:04:10.625>not <00:04:10.905>so <00:04:11.185>user <00:04:11.465>friendly.

96
00:04:12.705 --> 00:04:16.565
<00:04:12.705>So, <00:04:12.860>um, <00:04:13.016>the, <00:04:13.171>one <00:04:13.327>of <00:04:13.482>the <00:04:13.638>first <00:04:13.793>cross <00:04:13.949>platform <00:04:14.105>possibilities

97
00:04:16.665 --> 00:04:18.405
<00:04:16.665>to <00:04:17.015>emerge <00:04:17.365>were <00:04:17.715>hybrid <00:04:18.065>apps,

98
00:04:18.695 --> 00:04:22.245
<00:04:18.695>which <00:04:18.870>are <00:04:19.045>basically <00:04:19.219>web <00:04:19.394>apps <00:04:19.570>packaged <00:04:19.745>into <00:04:19.920>Native <00:04:20.094>rep.

99
00:04:23.105 --> 00:04:27.045
<00:04:23.105>Um, <00:04:23.245>they <00:04:23.385>have, <00:04:23.525>they're <00:04:23.665>set <00:04:23.805>to <00:04:23.945>have <00:04:24.085>a <00:04:24.225>bad <00:04:24.365>performance, <00:04:24.505>uh,

100
00:04:27.045 --> 00:04:28.765
<00:04:27.045>since <00:04:27.278>they're <00:04:27.511>not <00:04:27.745>compiled <00:04:27.978>into <00:04:28.211>native <00:04:28.445>code.

101
00:04:29.105 --> 00:04:33.085
<00:04:29.105>One <00:04:29.260>example <00:04:29.416>is <00:04:29.571>Cordova, <00:04:29.727>which <00:04:29.882>is <00:04:30.038>discontinued, <00:04:30.193>I <00:04:30.349>think, <00:04:30.505>um,

102
00:04:33.595 --> 00:04:35.925
<00:04:33.595>more, <00:04:33.875>um, <00:04:34.155>nowadays <00:04:34.435>it's <00:04:34.715>like <00:04:34.995>Ionic.

103
00:04:36.485 --> 00:04:39.565
<00:04:36.485>I <00:04:36.640>have <00:04:36.796>one <00:04:36.951>developer <00:04:37.107>friend <00:04:37.262>who's <00:04:37.418>super <00:04:37.573>excited <00:04:37.729>about <00:04:37.885>Ionic,

104
00:04:39.665 --> 00:04:41.805
<00:04:39.665>but <00:04:39.840>he's <00:04:40.015>the <00:04:40.190>only <00:04:40.365>one <00:04:40.540>who's <00:04:40.715>ever <00:04:40.890>said <00:04:41.065>anything

105
00:04:42.085 --> 00:04:43.245
<00:04:42.085>positive <00:04:42.433>about <00:04:42.781>hybrid <00:04:43.129>apps.

106
00:04:43.825 --> 00:04:46.925
<00:04:43.825>So <00:04:43.941>I <00:04:44.058>think <00:04:44.175>it's <00:04:44.291>kind <00:04:44.408>of <00:04:44.525>not <00:04:44.641>the <00:04:44.758>time <00:04:44.875>anymore <00:04:44.991>for <00:04:45.108>these, <00:04:45.224>um,

107
00:04:47.425 --> 00:04:50.205
<00:04:47.425>uh, <00:04:47.658>better <00:04:47.891>cross-platform <00:04:48.125>technologies <00:04:48.358>are, <00:04:48.591>for <00:04:48.825>instance,

108
00:04:50.205 --> 00:04:51.245
<00:04:50.205>submarine <00:04:50.673>or <00:04:51.141>React.

109
00:04:51.245 --> 00:04:53.205
<00:04:51.245>Native <00:04:51.595>Submarine <00:04:51.945>is <00:04:52.295>with <00:04:52.645>c

110
00:04:53.465 --> 00:04:58.205
<00:04:53.465>and <00:04:53.640>React <00:04:53.815>native <00:04:53.990>is <00:04:54.165>with <00:04:54.340>JavaScript <00:04:54.515>for <00:04:54.690>summary, <00:04:54.865>uh,

111
00:04:58.205 --> 00:05:00.445
<00:04:58.205>you <00:04:58.360>need <00:04:58.516>to <00:04:58.671>pay <00:04:58.827>a <00:04:58.982>yearly <00:04:59.138>fee <00:04:59.293>as <00:04:59.449>a <00:04:59.604>developer,

112
00:05:00.985 --> 00:05:03.445
<00:05:00.985>and <00:05:01.265>it's <00:05:01.545>not <00:05:01.825>that <00:05:02.105>widely <00:05:02.385>used.

113
00:05:03.985 --> 00:05:06.565
<00:05:03.985>Um, <00:05:04.185>some <00:05:04.385>there <00:05:04.585>are <00:05:04.785>still <00:05:04.985>projects <00:05:05.185>that <00:05:05.385>companies

114
00:05:06.565 --> 00:05:07.925
<00:05:06.565>that <00:05:06.871>really <00:05:07.177>wanna <00:05:07.483>do <00:05:07.789>submarine,

115
00:05:08.505 --> 00:05:09.765
<00:05:08.505>but, <00:05:09.072>um, <00:05:09.639>uh,

116
00:05:09.855 --> 00:05:13.045
<00:05:09.855>react <00:05:10.088>Native <00:05:10.321>was <00:05:10.555>the <00:05:10.788>most <00:05:11.021>widely <00:05:11.255>cross-platform

117
00:05:13.045 --> 00:05:14.485
<00:05:13.045>technology <00:05:13.369>for <00:05:13.693>a <00:05:14.017>long <00:05:14.341>time.

118
00:05:14.505 --> 00:05:16.005
<00:05:14.505>It <00:05:14.842>was <00:05:15.180>created <00:05:15.517>by <00:05:15.855>Facebook.

119
00:05:16.745 --> 00:05:20.365
<00:05:16.745>Um, <00:05:16.900>you <00:05:17.056>write <00:05:17.211>it <00:05:17.367>with <00:05:17.522>JavaScript <00:05:17.678>and, <00:05:17.833>um, <00:05:17.989>both <00:05:18.145>Submarine

120
00:05:20.385 --> 00:05:22.085
<00:05:20.385>and <00:05:20.585>React <00:05:20.784>Native <00:05:20.985>are <00:05:21.185>kind <00:05:21.385>of <00:05:21.585>the <00:05:21.784>same,

121
00:05:22.115 --> 00:05:23.805
<00:05:22.115>like <00:05:22.465>you <00:05:22.815>create <00:05:23.165>a <00:05:23.515>component

122
00:05:24.025 --> 00:05:26.085
<00:05:24.025>and <00:05:24.224>when <00:05:24.424>you <00:05:24.625>then <00:05:24.825>show <00:05:25.025>it <00:05:25.224>an <00:05:25.424>Android

123
00:05:26.085 --> 00:05:29.365
<00:05:26.085>or <00:05:26.318>iOS, <00:05:26.551>um, <00:05:26.784>it <00:05:27.018>picks <00:05:27.251>the <00:05:27.484>Android

124
00:05:29.545 --> 00:05:31.525
<00:05:29.545>or <00:05:29.895>iOS <00:05:30.245>component <00:05:30.595>for <00:05:30.945>you.

125
00:05:31.625 --> 00:05:32.645
<00:05:31.625>So <00:05:31.854>you <00:05:32.084>don't <00:05:32.313>really <00:05:32.543>know

126
00:05:32.645 --> 00:05:35.005
<00:05:32.645>how <00:05:32.844>your <00:05:33.044>app <00:05:33.245>will <00:05:33.445>look <00:05:33.645>on <00:05:33.844>the <00:05:34.044>phones.

127
00:05:35.875 --> 00:05:37.125
<00:05:35.875>Flatter <00:05:36.437>works <00:05:37.000>differently.

128
00:05:37.425 --> 00:05:39.365
<00:05:37.425>Um, <00:05:37.658>with <00:05:37.891>Flatter <00:05:38.125>you <00:05:38.358>define <00:05:38.591>every <00:05:38.825>pixel.

129
00:05:40.585 --> 00:05:44.405
<00:05:40.585>So, <00:05:40.701>um, <00:05:40.818>you <00:05:40.935>have, <00:05:41.051>uh, <00:05:41.168>like <00:05:41.284>your <00:05:41.401>app <00:05:41.518>looks <00:05:41.635>the <00:05:41.751>same <00:05:41.868>on <00:05:41.984>iOS

130
00:05:44.405 --> 00:05:46.045
<00:05:44.405>and <00:05:44.871>Android <00:05:45.338>and <00:05:45.804>Web.

131
00:05:46.465 --> 00:05:49.605
<00:05:46.465>Um, <00:05:46.592>but <00:05:46.719>you <00:05:46.846>can <00:05:46.974>check <00:05:47.101>on <00:05:47.228>which <00:05:47.355>platform <00:05:47.483>the <00:05:47.610>app <00:05:47.737>is <00:05:47.865>open,

132
00:05:49.705 --> 00:05:51.565
<00:05:49.705>so <00:05:49.905>you <00:05:50.104>can <00:05:50.305>define <00:05:50.505>how <00:05:50.705>it <00:05:50.905>should <00:05:51.104>look.

133
00:05:51.625 --> 00:05:52.845
<00:05:51.625>So <00:05:51.899>you <00:05:52.174>have <00:05:52.448>the <00:05:52.723>possibility

134
00:05:52.985 --> 00:05:55.125
<00:05:52.985>to <00:05:53.185>make <00:05:53.385>it <00:05:53.585>look <00:05:53.785>in <00:05:53.985>two <00:05:54.185>different <00:05:54.385>ways,

135
00:05:55.145 --> 00:05:58.245
<00:05:55.145>but <00:05:55.284>you <00:05:55.424>have <00:05:55.565>total <00:05:55.705>control <00:05:55.844>over <00:05:55.984>the <00:05:56.125>look <00:05:56.265>of <00:05:56.405>your <00:05:56.544>app.

136
00:05:58.825 --> 00:06:02.845
<00:05:58.825>Um, <00:05:59.025>nowadays, <00:05:59.224>uh, <00:05:59.425>47% <00:05:59.625>all <00:05:59.825>cross-platform <00:06:00.025>developers <00:06:00.224>work

137
00:06:02.845 --> 00:06:04.925
<00:06:02.845>with <00:06:03.078>Flatter, <00:06:03.311>and <00:06:03.545>it's <00:06:03.778>the <00:06:04.011>most, <00:06:04.245>uh,

138
00:06:04.925 --> 00:06:07.725
<00:06:04.925>widely <00:06:05.275>used <00:06:05.625>cross-platform, <00:06:05.975>um, <00:06:06.325>framework.

139
00:06:08.745 --> 00:06:11.605
<00:06:08.745>So, <00:06:08.872>um, <00:06:08.999>yeah, <00:06:09.126>this <00:06:09.254>is <00:06:09.381>just <00:06:09.508>a, <00:06:09.635>um, <00:06:09.763>a <00:06:09.890>picture <00:06:10.017>about <00:06:10.145>that.

140
00:06:11.625 --> 00:06:14.885
<00:06:11.625>So, <00:06:11.765>um, <00:06:11.905>under <00:06:12.045>Android <00:06:12.185>and <00:06:12.325>iOS <00:06:12.465>design <00:06:12.605>is <00:06:12.745>a <00:06:12.885>little <00:06:13.025>different.

141
00:06:15.425 --> 00:06:17.885
<00:06:15.425>And <00:06:15.625>in <00:06:15.825>flatter <00:06:16.025>we <00:06:16.225>have <00:06:16.425>the <00:06:16.625>Cupertino <00:06:16.825>Library

142
00:06:18.705 --> 00:06:22.045
<00:06:18.705>and <00:06:18.984>the <00:06:19.265>material <00:06:19.544>library <00:06:19.825>from <00:06:20.104>Android.

143
00:06:22.465 --> 00:06:24.765
<00:06:22.465>And <00:06:22.640>we <00:06:22.815>can, <00:06:22.989>uh, <00:06:23.164>use, <00:06:23.340>uh, <00:06:23.515>either <00:06:23.690>of <00:06:23.864>them.

144
00:06:26.385 --> 00:06:28.085
<00:06:26.385>Um, <00:06:26.560>I <00:06:26.735>will <00:06:26.909>show <00:06:27.085>you <00:06:27.260>later <00:06:27.435>how <00:06:27.610>that <00:06:27.784>works.

145
00:06:28.585 --> 00:06:30.125
<00:06:28.585>So <00:06:28.931>some <00:06:29.277>basics <00:06:29.624>about <00:06:29.971>Flatter.

146
00:06:30.985 --> 00:06:34.685
<00:06:30.985>Um, <00:06:31.218>flatter <00:06:31.451>was <00:06:31.685>published <00:06:31.918>in <00:06:32.151>December, <00:06:32.385>2018,

147
00:06:35.065 --> 00:06:36.925
<00:06:35.065>and <00:06:35.298>it's <00:06:35.531>based <00:06:35.765>on <00:06:35.998>the <00:06:36.231>language <00:06:36.465>dart.

148
00:06:37.385 --> 00:06:39.685
<00:06:37.385>So <00:06:37.560>DART <00:06:37.735>is <00:06:37.909>used <00:06:38.085>to <00:06:38.260>do <00:06:38.435>all <00:06:38.610>the <00:06:38.784>stuff

149
00:06:39.685 --> 00:06:43.005
<00:06:39.685>that <00:06:39.885>programming <00:06:40.085>languages <00:06:40.285>do, <00:06:40.485>like <00:06:40.685>trim, <00:06:40.885>trim <00:06:41.085>strings

150
00:06:43.105 --> 00:06:45.565
<00:06:43.105>or <00:06:43.338>round <00:06:43.571>numbers <00:06:43.805>or <00:06:44.038>work <00:06:44.271>with <00:06:44.505>lists.

151
00:06:46.065 --> 00:06:49.925
<00:06:46.065>And <00:06:46.205>flutter <00:06:46.344>is <00:06:46.485>the <00:06:46.625>visual <00:06:46.765>part <00:06:46.905>that <00:06:47.045>gives <00:06:47.185>you <00:06:47.325>the <00:06:47.465>widgets.

152
00:06:51.025 --> 00:06:54.045
<00:06:51.025>So, <00:06:51.224>um, <00:06:51.424>you <00:06:51.625>can <00:06:51.825>get <00:06:52.025>the, <00:06:52.224>um, <00:06:52.424>yeah,

153
00:06:54.275 --> 00:06:56.365
<00:06:54.275>like <00:06:54.474>Flutter <00:06:54.674>will <00:06:54.875>give <00:06:55.075>you <00:06:55.275>the <00:06:55.474>button <00:06:55.674>widget

154
00:06:56.365 --> 00:06:57.365
<00:06:56.365>or <00:06:56.665>the <00:06:56.965>icon <00:06:57.265>widget

155
00:06:57.365 --> 00:07:01.005
<00:06:57.365>or <00:06:57.505>the <00:06:57.645>text <00:06:57.785>widget, <00:06:57.925>so <00:06:58.065>you <00:06:58.205>can <00:06:58.345>build <00:06:58.485>your, <00:06:58.625>your <00:06:58.765>ui.

156
00:07:01.545 --> 00:07:03.405
<00:07:01.545>Um, <00:07:01.778>in <00:07:02.011>Flutter, <00:07:02.245>everything <00:07:02.478>is <00:07:02.711>a <00:07:02.945>widget.

157
00:07:03.545 --> 00:07:05.365
<00:07:03.545>That's <00:07:03.778>like <00:07:04.011>a, <00:07:04.245>a <00:07:04.478>sentence <00:07:04.711>that <00:07:04.945>has,

158
00:07:05.365 --> 00:07:07.845
<00:07:05.365>this <00:07:05.505>is <00:07:05.645>usually <00:07:05.785>the <00:07:05.925>first <00:07:06.065>you <00:07:06.205>hear <00:07:06.345>when <00:07:06.485>you <00:07:06.625>Google <00:07:06.765>something

159
00:07:08.015 --> 00:07:09.045
<00:07:08.015>about <00:07:08.942>Flutter.

160
00:07:09.385 --> 00:07:12.125
<00:07:09.385>Um, <00:07:09.540>it's <00:07:09.696>a <00:07:09.851>very <00:07:10.007>new <00:07:10.162>approach <00:07:10.318>to <00:07:10.473>create <00:07:10.629>you <00:07:10.784>eyes,

161
00:07:12.425 --> 00:07:14.725
<00:07:12.425>and <00:07:12.565>it's <00:07:12.705>really <00:07:12.845>weird <00:07:12.985>when <00:07:13.125>you <00:07:13.265>do <00:07:13.405>it <00:07:13.545>the <00:07:13.685>first <00:07:13.825>time

162
00:07:14.785 --> 00:07:18.165
<00:07:14.785>and <00:07:14.940>you're <00:07:15.096>like, <00:07:15.251>really, <00:07:15.407>this <00:07:15.562>is, <00:07:15.718>is <00:07:15.873>this <00:07:16.029>really <00:07:16.185>necessary?

163
00:07:18.825 --> 00:07:20.845
<00:07:18.825>But <00:07:19.025>you'll <00:07:19.224>get <00:07:19.425>used <00:07:19.625>to <00:07:19.825>it <00:07:20.025>quite <00:07:20.224>quick.

164
00:07:21.075 --> 00:07:22.405
<00:07:21.075>It's, <00:07:21.374>um, <00:07:21.673>it's <00:07:21.972>really <00:07:22.272>fun.

165
00:07:23.025 --> 00:07:25.685
<00:07:23.025>Um, <00:07:23.200>you'll <00:07:23.375>see, <00:07:23.549>uh, <00:07:23.724>with <00:07:23.900>the <00:07:24.075>same <00:07:24.250>code <00:07:24.424>base,

166
00:07:25.685 --> 00:07:28.405
<00:07:25.685>then <00:07:25.885>you <00:07:26.085>can <00:07:26.285>build <00:07:26.485>iOS <00:07:26.685>underwritten <00:07:26.885>web <00:07:27.085>apps

167
00:07:28.425 --> 00:07:29.685
<00:07:28.425>as <00:07:28.803>I <00:07:29.181>already <00:07:29.559>set.

168
00:07:30.025 --> 00:07:34.205
<00:07:30.025>And <00:07:30.164>now <00:07:30.304>in <00:07:30.445>beta <00:07:30.585>desktop <00:07:30.724>apps <00:07:30.864>for <00:07:31.005>mes, <00:07:31.145>windows, <00:07:31.284>and <00:07:31.424>Linux.

169
00:07:35.105 --> 00:07:39.565
<00:07:35.105>So <00:07:35.221>you <00:07:35.338>have <00:07:35.455>like <00:07:35.571>one <00:07:35.688>ring <00:07:35.805>to <00:07:35.921>rule <00:07:36.038>them <00:07:36.155>all. <00:07:36.271>Um, <00:07:36.388>why <00:07:36.505>dart?

170
00:07:39.915 --> 00:07:43.765
<00:07:39.915>That <00:07:40.070>was <00:07:40.226>one <00:07:40.381>of <00:07:40.537>the <00:07:40.692>things <00:07:40.848>where <00:07:41.003>I <00:07:41.159>really <00:07:41.315>had

171
00:07:43.765 --> 00:07:46.525
<00:07:43.765>to <00:07:43.920>consider <00:07:44.076>twice <00:07:44.231>if <00:07:44.387>I <00:07:44.542>wanted <00:07:44.698>to <00:07:44.853>switch <00:07:45.009>to <00:07:45.164>Flutter

172
00:07:46.525 --> 00:07:48.765
<00:07:46.525>because <00:07:46.758>it <00:07:46.991>just <00:07:47.224>didn't <00:07:47.458>make <00:07:47.691>any <00:07:47.924>sense.

173
00:07:48.795 --> 00:07:52.605
<00:07:48.795>Like, <00:07:48.970>why <00:07:49.145>didn't <00:07:49.320>they <00:07:49.495>use <00:07:49.670>Kotlin <00:07:49.845>or, <00:07:50.020>uh, <00:07:50.195>JavaScript

174
00:07:52.785 --> 00:07:55.885
<00:07:52.784>or <00:07:52.960>anything <00:07:53.135>that <00:07:53.309>is <00:07:53.484>used <00:07:53.659>somewhere <00:07:53.835>else <00:07:54.010>as <00:07:54.184>well.

175
00:07:56.025 --> 00:07:58.725
<00:07:56.025>So <00:07:56.164>I, <00:07:56.304>I <00:07:56.445>didn't <00:07:56.585>want <00:07:56.724>to <00:07:56.864>learn <00:07:57.005>a <00:07:57.145>new <00:07:57.284>language <00:07:57.424>again.

176
00:07:59.425 --> 00:08:01.165
<00:07:59.425>Um, <00:07:59.705>but <00:07:59.985>it <00:08:00.265>was <00:08:00.545>so <00:08:00.825>easy.

177
00:08:01.435 --> 00:08:03.605
<00:08:01.435>Like <00:08:01.610>I <00:08:01.785>said, <00:08:01.960>I <00:08:02.135>did <00:08:02.310>Java <00:08:02.485>and <00:08:02.660>JavaScript <00:08:02.835>before,

178
00:08:03.665 --> 00:08:07.365
<00:08:03.665>and <00:08:03.820>the, <00:08:03.976>the <00:08:04.131>switch <00:08:04.287>to <00:08:04.442>DART <00:08:04.598>was <00:08:04.753>just <00:08:04.909>so <00:08:05.065>natural

179
00:08:08.185 --> 00:08:10.965
<00:08:08.185>and <00:08:08.340>I <00:08:08.496>really <00:08:08.651>prefer <00:08:08.807>it <00:08:08.962>to <00:08:09.118>everything <00:08:09.273>else <00:08:09.429>right <00:08:09.585>now.

180
00:08:11.425 --> 00:08:13.045
<00:08:11.425>Um, <00:08:11.658>the <00:08:11.891>cool <00:08:12.125>thing <00:08:12.358>about <00:08:12.591>Dart <00:08:12.825>is

181
00:08:13.045 --> 00:08:15.805
<00:08:13.045>that <00:08:13.278>it's <00:08:13.511>super <00:08:13.745>quick, <00:08:13.978>um, <00:08:14.211>super <00:08:14.445>fast.

182
00:08:15.985 --> 00:08:19.965
<00:08:15.985>Um, <00:08:16.125>it <00:08:16.265>has <00:08:16.405>two <00:08:16.545>compilers, <00:08:16.685>the <00:08:16.825>just <00:08:16.965>in <00:08:17.105>Time <00:08:17.245>compiler, <00:08:17.385>uh,

183
00:08:19.995 --> 00:08:21.605
<00:08:19.995>this <00:08:20.195>has <00:08:20.395>also <00:08:20.595>been <00:08:20.795>talked <00:08:20.995>about <00:08:21.195>a <00:08:21.395>lot.

184
00:08:21.675 --> 00:08:24.525
<00:08:21.675>It's, <00:08:21.875>uh, <00:08:22.075>the <00:08:22.275>hot <00:08:22.475>restart <00:08:22.675>feature <00:08:22.875>in <00:08:23.075>Flutters.

185
00:08:24.545 --> 00:08:27.725
<00:08:24.545>So <00:08:24.720>it's <00:08:24.895>really <00:08:25.070>like <00:08:25.245>DART <00:08:25.420>is <00:08:25.595>cool <00:08:25.770>for <00:08:25.945>developers

186
00:08:27.865 --> 00:08:30.205
<00:08:27.865>and <00:08:28.065>for <00:08:28.265>the <00:08:28.465>software <00:08:28.665>users <00:08:28.865>later <00:08:29.065>as <00:08:29.265>well

187
00:08:30.205 --> 00:08:32.045
<00:08:30.205>because <00:08:30.484>the, <00:08:30.765>just <00:08:31.044>in <00:08:31.325>time <00:08:31.604>compiling,

188
00:08:32.075 --> 00:08:33.765
<00:08:32.075>this <00:08:32.355>is <00:08:32.635>like <00:08:32.915>made <00:08:33.195>for <00:08:33.475>developers.

189
00:08:33.945 --> 00:08:36.085
<00:08:33.945>You <00:08:34.145>can <00:08:34.345>run <00:08:34.545>the <00:08:34.745>app <00:08:34.945>on <00:08:35.145>your <00:08:35.345>emulator,

190
00:08:36.265 --> 00:08:37.525
<00:08:36.265>you <00:08:36.548>can <00:08:36.832>change <00:08:37.115>a <00:08:37.399>color,

191
00:08:37.905 --> 00:08:40.125
<00:08:37.905>and <00:08:38.105>then <00:08:38.304>you <00:08:38.505>can <00:08:38.704>hit <00:08:38.905>either <00:08:39.105>HU <00:08:39.304>Reload

192
00:08:40.125 --> 00:08:42.325
<00:08:40.125>or <00:08:40.405>Hard <00:08:40.684>restart, <00:08:40.965>hot <00:08:41.245>Reload <00:08:41.525>bill,

193
00:08:42.425 --> 00:08:45.965
<00:08:42.424>change <00:08:42.580>the <00:08:42.736>app <00:08:42.891>within <00:08:43.047>a <00:08:43.202>second <00:08:43.358>and <00:08:43.513>preserve <00:08:43.669>the <00:08:43.824>state.

194
00:08:46.225 --> 00:08:48.805
<00:08:46.225>So <00:08:46.458>if <00:08:46.691>you've <00:08:46.925>entered <00:08:47.158>any <00:08:47.391>lock-in <00:08:47.625>data

195
00:08:49.025 --> 00:08:53.045
<00:08:49.025>or <00:08:49.199>any <00:08:49.375>form, <00:08:49.550>it'll <00:08:49.725>save <00:08:49.900>that <00:08:50.074>and <00:08:50.250>reenter <00:08:50.425>it.

196
00:08:53.865 --> 00:08:56.045
<00:08:53.865>And <00:08:54.145>if <00:08:54.425>you <00:08:54.705>hit <00:08:54.985>hard <00:08:55.265>restart,

197
00:08:56.215 --> 00:08:57.805
<00:08:56.215>it'll <00:08:56.495>start <00:08:56.775>the <00:08:57.055>app <00:08:57.335>from <00:08:57.615>scratch.

198
00:08:57.855 --> 00:09:00.565
<00:08:57.855>It'll <00:08:57.995>take <00:08:58.135>maybe <00:08:58.275>a <00:08:58.415>second <00:08:58.555>longer, <00:08:58.695>but <00:08:58.835>it's <00:08:58.975>still <00:08:59.115>super <00:08:59.255>fast.

199
00:09:01.225 --> 00:09:04.365
<00:09:01.225>So <00:09:01.400>this <00:09:01.575>makes <00:09:01.750>working <00:09:01.925>with <00:09:02.100>Flatter, <00:09:02.275>just <00:09:02.450>very, <00:09:02.625>um,

200
00:09:04.365 --> 00:09:05.485
<00:09:04.365>natural <00:09:04.869>and <00:09:05.373>easy.

201
00:09:06.265 --> 00:09:08.805
<00:09:06.265>Um, <00:09:06.420>and <00:09:06.576>Flatter <00:09:06.731>also <00:09:06.887>has <00:09:07.042>an <00:09:07.198>ahead <00:09:07.353>of <00:09:07.509>time <00:09:07.665>compiler,

202
00:09:08.805 --> 00:09:11.245
<00:09:08.805>which <00:09:09.005>will <00:09:09.204>translate <00:09:09.405>art <00:09:09.604>when <00:09:09.805>building <00:09:10.005>the <00:09:10.204>app

203
00:09:11.245 --> 00:09:12.685
<00:09:11.245>for <00:09:11.461>the <00:09:11.677>user <00:09:11.893>after <00:09:12.108>you're <00:09:12.324>done <00:09:12.540>coding.

204
00:09:13.065 --> 00:09:15.445
<00:09:13.065>So <00:09:13.205>your <00:09:13.345>app <00:09:13.485>will <00:09:13.625>be <00:09:13.765>as <00:09:13.905>fast <00:09:14.045>as <00:09:14.185>a <00:09:14.325>native <00:09:14.465>one.

205
00:09:16.985 --> 00:09:21.645
<00:09:16.985>So <00:09:17.140>how <00:09:17.296>is <00:09:17.451>the <00:09:17.607>flatter <00:09:17.762>structure? <00:09:17.918>I <00:09:18.073>talked <00:09:18.229>about <00:09:18.385>widgets.

206
00:09:22.065 --> 00:09:23.885
<00:09:22.065>Um, <00:09:22.298>let's <00:09:22.531>dive <00:09:22.765>a <00:09:22.998>little <00:09:23.231>deeper <00:09:23.465>here.

207
00:09:24.065 --> 00:09:27.805
<00:09:24.065>So, <00:09:24.181>um, <00:09:24.298>in <00:09:24.415>flatter <00:09:24.531>your <00:09:24.648>apps, <00:09:24.765>your <00:09:24.881>eye <00:09:24.998>is <00:09:25.115>a <00:09:25.231>huge <00:09:25.348>widget <00:09:25.465>tree

208
00:09:28.265 --> 00:09:32.365
<00:09:28.265>and, <00:09:28.439>uh, <00:09:28.615>your <00:09:28.790>there <00:09:28.965>are <00:09:29.140>text <00:09:29.314>widget, <00:09:29.490>image <00:09:29.665>widgets,

209
00:09:32.595 --> 00:09:36.165
<00:09:32.595>icon <00:09:32.770>widgets, <00:09:32.945>button <00:09:33.120>widgets, <00:09:33.295>what <00:09:33.470>you <00:09:33.645>would <00:09:33.820>maybe <00:09:33.995>expect,

210
00:09:36.665 --> 00:09:41.085
<00:09:36.665>but <00:09:36.865>also, <00:09:37.064>um, <00:09:37.265>alignment <00:09:37.464>and <00:09:37.665>petting, <00:09:37.865>et <00:09:38.064>cetera.

211
00:09:41.505 --> 00:09:43.205
<00:09:41.505>All <00:09:41.855>these <00:09:42.205>are <00:09:42.555>also <00:09:42.905>widgets.

212
00:09:43.865 --> 00:09:45.525
<00:09:43.865>So <00:09:44.215>there <00:09:44.565>are <00:09:44.915>some <00:09:45.265>widgets

213
00:09:45.525 --> 00:09:47.845
<00:09:45.525>that <00:09:45.805>actually <00:09:46.084>have <00:09:46.365>the <00:09:46.645>attribute <00:09:46.925>petting

214
00:09:47.855 --> 00:09:50.365
<00:09:47.855>where <00:09:48.030>you <00:09:48.205>can <00:09:48.380>enter <00:09:48.555>the <00:09:48.730>padding <00:09:48.905>inside <00:09:49.080>the <00:09:49.255>widget,

215
00:09:50.785 --> 00:09:53.245
<00:09:50.785>but <00:09:50.985>usually <00:09:51.185>you <00:09:51.385>will <00:09:51.584>have <00:09:51.785>an <00:09:51.985>image <00:09:52.185>widget

216
00:09:53.265 --> 00:09:56.325
<00:09:53.265>and <00:09:53.498>then <00:09:53.731>around <00:09:53.965>this <00:09:54.198>wrapped <00:09:54.431>wrapping <00:09:54.665>it,

217
00:09:56.455 --> 00:10:00.525
<00:09:56.455>it'll <00:09:56.610>be <00:09:56.766>a <00:09:56.921>petting <00:09:57.077>widget <00:09:57.232>telling, <00:09:57.388>um, <00:09:57.543>telling <00:09:57.699>flatter <00:09:57.855>where

218
00:10:00.525 --> 00:10:01.925
<00:10:00.525>to <00:10:00.944>align <00:10:01.365>this <00:10:01.785>widget.

219
00:10:02.625 --> 00:10:05.685
<00:10:02.625>And <00:10:02.780>you <00:10:02.936>can, <00:10:03.091>for <00:10:03.247>instance, <00:10:03.402>also <00:10:03.558>use <00:10:03.713>the <00:10:03.869>center <00:10:04.025>widget.

220
00:10:05.985 --> 00:10:08.765
<00:10:05.985>You'll <00:10:06.125>have <00:10:06.265>a <00:10:06.405>text <00:10:06.545>and <00:10:06.685>you'll <00:10:06.825>have <00:10:06.965>a <00:10:07.105>center <00:10:07.245>widget <00:10:07.385>around,

221
00:10:09.345 --> 00:10:11.805
<00:10:09.345>and <00:10:09.472>this <00:10:09.599>will <00:10:09.726>center <00:10:09.854>the <00:10:09.981>child <00:10:10.108>in <00:10:10.235>the <00:10:10.363>middle <00:10:10.490>of <00:10:10.617>the <00:10:10.745>screen.

222
00:10:12.225 --> 00:10:15.645
<00:10:12.225>And <00:10:12.352>this <00:10:12.479>is <00:10:12.606>something <00:10:12.734>that's <00:10:12.861>just <00:10:12.988>a <00:10:13.115>little <00:10:13.243>bit <00:10:13.370>weird <00:10:13.497>in <00:10:13.625>the

223
00:10:15.645 --> 00:10:17.005
<00:10:15.645>beginning <00:10:15.889>to <00:10:16.134>get <00:10:16.379>used <00:10:16.624>to <00:10:16.869>this,

224
00:10:17.465 --> 00:10:19.885
<00:10:17.465>but <00:10:17.698>afterwards <00:10:17.931>it <00:10:18.165>works <00:10:18.398>out <00:10:18.631>quite <00:10:18.865>well.

225
00:10:20.615 --> 00:10:23.885
<00:10:20.615>There <00:10:20.815>are <00:10:21.015>several <00:10:21.215>widgets <00:10:21.415>that <00:10:21.615>take <00:10:21.815>several <00:10:22.015>children.

226
00:10:24.345 --> 00:10:27.085
<00:10:24.345>So, <00:10:24.545>um, <00:10:24.745>a <00:10:24.945>widget <00:10:25.145>only <00:10:25.345>has <00:10:25.545>one <00:10:25.745>parent,

227
00:10:27.145 --> 00:10:28.925
<00:10:27.145>but <00:10:27.425>it <00:10:27.704>can <00:10:27.985>have <00:10:28.265>several <00:10:28.545>children.

228
00:10:29.785 --> 00:10:31.765
<00:10:29.785>Uh, <00:10:30.135>column <00:10:30.485>row <00:10:30.834>stack <00:10:31.185>list

229
00:10:31.825 --> 00:10:34.445
<00:10:31.825>or <00:10:32.058>grid <00:10:32.291>widgets <00:10:32.525>can <00:10:32.758>take <00:10:32.991>multiple <00:10:33.225>children

230
00:10:34.625 --> 00:10:36.565
<00:10:34.625>and <00:10:34.905>align <00:10:35.185>them <00:10:35.465>in <00:10:35.745>different <00:10:36.025>ways.

231
00:10:37.345 --> 00:10:40.205
<00:10:37.345>Um, <00:10:37.520>and <00:10:37.695>you <00:10:37.870>can <00:10:38.045>also <00:10:38.220>write <00:10:38.395>your <00:10:38.570>own <00:10:38.745>widgets.

232
00:10:40.505 --> 00:10:41.805
<00:10:40.505>So, <00:10:40.797>um, <00:10:41.089>this <00:10:41.382>is <00:10:41.675>one

233
00:10:41.805 --> 00:10:43.485
<00:10:41.805>of <00:10:41.979>the <00:10:42.155>first <00:10:42.329>things <00:10:42.505>I <00:10:42.680>usually <00:10:42.854>do <00:10:43.030>when <00:10:43.204>I

234
00:10:43.485 --> 00:10:44.605
<00:10:43.485>start <00:10:43.737>with <00:10:43.989>a, <00:10:44.241>a <00:10:44.493>project.

235
00:10:45.525 --> 00:10:48.925
<00:10:45.525>I <00:10:45.725>create, <00:10:45.925>uh, <00:10:46.125>custom <00:10:46.324>buttons, <00:10:46.525>uh, <00:10:46.725>custom <00:10:46.925>popups

236
00:10:48.955 --> 00:10:51.285
<00:10:48.955>that <00:10:49.155>I <00:10:49.355>use <00:10:49.555>throughout <00:10:49.755>the <00:10:49.955>app <00:10:50.155>and <00:10:50.355>reuse.

237
00:10:52.145 --> 00:10:55.685
<00:10:52.145>Um, <00:10:52.345>a <00:10:52.545>widget <00:10:52.745>is <00:10:52.944>either <00:10:53.145>stateless <00:10:53.345>or <00:10:53.545>stateful.

238
00:10:56.025 --> 00:10:58.725
<00:10:56.025>Um, <00:10:56.258>a <00:10:56.491>stateless <00:10:56.725>widget <00:10:56.958>is <00:10:57.191>not <00:10:57.425>rebuild,

239
00:10:59.365 --> 00:11:02.165
<00:10:59.365>A <00:10:59.540>stateful <00:10:59.715>widget <00:10:59.890>can <00:11:00.065>be <00:11:00.240>rebuild <00:11:00.415>when <00:11:00.590>you <00:11:00.765>want

240
00:11:02.165 --> 00:11:06.125
<00:11:02.165>to <00:11:02.320>rebuild <00:11:02.476>a <00:11:02.631>stateful <00:11:02.787>widget, <00:11:02.942>which <00:11:03.098>means <00:11:03.253>refresh <00:11:03.409>the <00:11:03.564>ui.

241
00:11:06.985 --> 00:11:08.765
<00:11:06.985>Um, <00:11:07.218>you <00:11:07.451>need <00:11:07.685>to <00:11:07.918>call <00:11:08.151>set <00:11:08.385>state.

242
00:11:09.785 --> 00:11:11.245
<00:11:09.785>So <00:11:10.047>when <00:11:10.310>you <00:11:10.573>have, <00:11:10.836>for <00:11:11.099>instance,

243
00:11:11.315 --> 00:11:14.005
<00:11:11.315>like <00:11:11.515>when <00:11:11.715>you <00:11:11.915>create <00:11:12.115>a <00:11:12.315>new <00:11:12.515>flatter <00:11:12.715>project,

244
00:11:14.665 --> 00:11:17.085
<00:11:14.665>you <00:11:14.865>will <00:11:15.064>have <00:11:15.265>the <00:11:15.464>typical <00:11:15.665>flatter <00:11:15.865>app <00:11:16.064>there.

245
00:11:17.085 --> 00:11:18.325
<00:11:17.085>They <00:11:17.364>have <00:11:17.643>the <00:11:17.922>counter <00:11:18.201>app,

246
00:11:18.325 --> 00:11:20.725
<00:11:18.325>so <00:11:18.441>you <00:11:18.558>have <00:11:18.675>like <00:11:18.791>a <00:11:18.908>floating <00:11:19.025>extra <00:11:19.141>button <00:11:19.258>you <00:11:19.375>can <00:11:19.491>click <00:11:19.608>on <00:11:19.725>it

247
00:11:21.025 --> 00:11:22.925
<00:11:21.025>and <00:11:21.258>this <00:11:21.491>will <00:11:21.725>count <00:11:21.958>up <00:11:22.191>a <00:11:22.425>number.

248
00:11:23.665 --> 00:11:28.045
<00:11:23.665>And <00:11:23.839>when <00:11:24.015>you <00:11:24.189>don't <00:11:24.365>call <00:11:24.540>set <00:11:24.714>state <00:11:24.890>the <00:11:25.064>variable

249
00:11:28.115 --> 00:11:30.485
<00:11:28.115>that <00:11:28.465>counts, <00:11:28.815>it'll <00:11:29.165>still <00:11:29.515>update.

250
00:11:30.585 --> 00:11:32.165
<00:11:30.585>So <00:11:30.818>you <00:11:31.051>can <00:11:31.285>print <00:11:31.518>it, <00:11:31.751>for <00:11:31.985>instance,

251
00:11:32.165 --> 00:11:35.245
<00:11:32.165>and <00:11:32.305>you'll <00:11:32.444>see <00:11:32.584>it'll <00:11:32.724>update, <00:11:32.865>but <00:11:33.005>the <00:11:33.145>screen <00:11:33.285>will <00:11:33.425>not <00:11:33.564>change.

252
00:11:35.665 --> 00:11:38.925
<00:11:35.665>So <00:11:35.792>you <00:11:35.919>need <00:11:36.046>to <00:11:36.174>always <00:11:36.301>call <00:11:36.428>set <00:11:36.555>State <00:11:36.683>at <00:11:36.810>the <00:11:36.937>right <00:11:37.064>moment.

253
00:11:39.065 --> 00:11:42.525
<00:11:39.065>And <00:11:39.181>this <00:11:39.298>is <00:11:39.415>one <00:11:39.531>of <00:11:39.648>the <00:11:39.765>most <00:11:39.881>faults <00:11:39.998>you <00:11:40.115>will <00:11:40.231>do <00:11:40.348>in <00:11:40.465>the

254
00:11:42.525 --> 00:11:46.125
<00:11:42.525>beginning, <00:11:42.725>um, <00:11:42.925>probably, <00:11:43.125>or <00:11:43.324>at <00:11:43.525>least <00:11:43.725>I <00:11:43.925>did.

255
00:11:46.545 --> 00:11:49.125
<00:11:46.545>Um, <00:11:46.672>every <00:11:46.799>widget <00:11:46.926>has <00:11:47.054>a <00:11:47.181>built <00:11:47.308>context, <00:11:47.435>which <00:11:47.563>is <00:11:47.690>like <00:11:47.817>a <00:11:47.944>handle

256
00:11:49.185 --> 00:11:50.885
<00:11:49.185>to <00:11:49.418>its <00:11:49.651>location <00:11:49.885>in <00:11:50.118>the <00:11:50.351>widget <00:11:50.584>tree.

257
00:11:51.755 --> 00:11:55.805
<00:11:51.755>This <00:11:51.882>is <00:11:52.009>a <00:11:52.136>widget <00:11:52.264>tree. <00:11:52.391>So, <00:11:52.518>um, <00:11:52.645>this <00:11:52.773>is <00:11:52.900>just <00:11:53.027>an <00:11:53.155>example.

258
00:11:56.105 --> 00:11:58.725
<00:11:56.105>Uh, <00:11:56.232>we <00:11:56.359>will <00:11:56.486>see <00:11:56.614>this <00:11:56.741>in <00:11:56.868>the, <00:11:56.995>in <00:11:57.123>the <00:11:57.250>code <00:11:57.377>right <00:11:57.505>now.

259
00:11:59.265 --> 00:12:01.925
<00:11:59.265>So <00:11:59.439>you <00:11:59.615>have, <00:11:59.790>um, <00:11:59.965>a <00:12:00.140>widget <00:12:00.314>that <00:12:00.490>wraps <00:12:00.665>everything.

260
00:12:01.945 --> 00:12:05.045
<00:12:01.945>That's <00:12:02.178>my <00:12:02.411>app, <00:12:02.645>the <00:12:02.878>my <00:12:03.111>app <00:12:03.345>widget.

261
00:12:05.345 --> 00:12:07.485
<00:12:05.345>You <00:12:05.545>usually <00:12:05.745>don't <00:12:05.945>need <00:12:06.145>it <00:12:06.345>just <00:12:06.545>for, <00:12:06.745>uh,

262
00:12:07.875 --> 00:12:12.325
<00:12:07.875>initial <00:12:08.030>initializing <00:12:08.186>things <00:12:08.341>like <00:12:08.497>if <00:12:08.652>you <00:12:08.808>want <00:12:08.963>to <00:12:09.119>add <00:12:09.275>lytic

263
00:12:12.345 --> 00:12:14.965
<00:12:12.345>to <00:12:12.500>your <00:12:12.656>app, <00:12:12.811>for <00:12:12.967>instance, <00:12:13.122>you <00:12:13.278>would <00:12:13.433>initialize <00:12:13.589>it <00:12:13.745>there,

264
00:12:15.705 --> 00:12:17.045
<00:12:15.705>uh, <00:12:16.107>or <00:12:16.509>other <00:12:16.911>libraries.

265
00:12:17.505 --> 00:12:19.605
<00:12:17.505>Um, <00:12:17.738>the <00:12:17.971>material <00:12:18.205>app <00:12:18.438>is <00:12:18.671>very <00:12:18.905>important.

266
00:12:19.835 --> 00:12:21.365
<00:12:19.835>I'll <00:12:20.031>show <00:12:20.228>you <00:12:20.425>in <00:12:20.621>a <00:12:20.818>minute. <00:12:21.015>This <00:12:21.212>is

267
00:12:21.365 --> 00:12:24.725
<00:12:21.365>where <00:12:21.520>you <00:12:21.676>define <00:12:21.831>the <00:12:21.987>theme, <00:12:22.142>uh, <00:12:22.298>with <00:12:22.453>all <00:12:22.609>the <00:12:22.765>colors

268
00:12:25.025 --> 00:12:27.205
<00:12:25.025>and <00:12:25.180>font <00:12:25.336>that <00:12:25.491>you <00:12:25.647>want <00:12:25.802>to <00:12:25.958>use <00:12:26.113>throughout <00:12:26.269>the <00:12:26.425>app.

269
00:12:27.625 --> 00:12:30.525
<00:12:27.625>You <00:12:27.752>can, <00:12:27.879>you <00:12:28.006>don't <00:12:28.134>have <00:12:28.261>to, <00:12:28.388>you <00:12:28.515>can <00:12:28.643>also <00:12:28.770>define <00:12:28.897>the <00:12:29.025>font

270
00:12:30.525 --> 00:12:31.765
<00:12:30.525>and <00:12:30.804>color <00:12:31.083>in <00:12:31.362>every <00:12:31.641>widget,

271
00:12:31.765 --> 00:12:35.445
<00:12:31.765>but <00:12:31.881>this <00:12:31.998>is <00:12:32.115>a <00:12:32.231>nice <00:12:32.348>way <00:12:32.465>to, <00:12:32.581>um, <00:12:32.698>make <00:12:32.814>this <00:12:32.931>a <00:12:33.048>a <00:12:33.165>general,

272
00:12:35.635 --> 00:12:36.765
<00:12:35.635>general <00:12:36.652>values.

273
00:12:37.745 --> 00:12:40.405
<00:12:37.745>Um, <00:12:37.978>and <00:12:38.211>it <00:12:38.445>also <00:12:38.678>holds <00:12:38.911>the <00:12:39.145>navigator.

274
00:12:40.745 --> 00:12:45.325
<00:12:40.745>So <00:12:40.885>in <00:12:41.025>this <00:12:41.165>case, <00:12:41.305>we <00:12:41.445>have <00:12:41.585>five <00:12:41.725>routes <00:12:41.865>that <00:12:42.005>are <00:12:42.145>children

275
00:12:45.385 --> 00:12:46.445
<00:12:45.385>of <00:12:45.703>the <00:12:46.021>material <00:12:46.339>app,

276
00:12:47.345 --> 00:12:50.325
<00:12:47.345>and <00:12:47.500>a <00:12:47.656>route <00:12:47.811>is <00:12:47.967>a <00:12:48.122>flutter <00:12:48.278>way <00:12:48.433>of <00:12:48.589>saying <00:12:48.745>screen.

277
00:12:50.545 --> 00:12:52.045
<00:12:50.545>So <00:12:50.882>we <00:12:51.219>have <00:12:51.557>five <00:12:51.895>screens

278
00:12:52.875 --> 00:12:54.855
<00:12:52.875>and <00:12:53.108>here, <00:12:53.341>like <00:12:53.575>they <00:12:53.808>all <00:12:54.041>have <00:12:54.275>widgets,

279
00:12:54.855 --> 00:12:56.935
<00:12:54.855>but <00:12:55.030>I, <00:12:55.205>I'm <00:12:55.380>only <00:12:55.555>looking <00:12:55.730>at <00:12:55.905>the <00:12:56.080>home <00:12:56.255>route

280
00:12:56.935 --> 00:12:58.735
<00:12:56.935>here <00:12:57.285>and <00:12:57.635>the <00:12:57.984>home <00:12:58.334>route.

281
00:12:58.755 --> 00:13:00.735
<00:12:58.755>It <00:12:59.221>holds <00:12:59.688>first <00:13:00.155>scaffold.

282
00:13:01.125 --> 00:13:03.375
<00:13:01.125>This <00:13:01.300>is <00:13:01.475>always <00:13:01.650>the <00:13:01.825>first <00:13:02.000>thing <00:13:02.175>in <00:13:02.350>the <00:13:02.525>screen

283
00:13:03.445 --> 00:13:06.015
<00:13:03.445>because <00:13:03.678>it <00:13:03.911>gives <00:13:04.145>you <00:13:04.378>screen <00:13:04.611>a <00:13:04.845>structure.

284
00:13:06.355 --> 00:13:08.935
<00:13:06.355>The <00:13:06.635>scaffold <00:13:06.915>has <00:13:07.195>several <00:13:07.475>attributes, <00:13:07.755>um,

285
00:13:08.945 --> 00:13:13.015
<00:13:08.945>where <00:13:09.072>you <00:13:09.199>can <00:13:09.326>put <00:13:09.454>an <00:13:09.581>app <00:13:09.708>bar, <00:13:09.835>a <00:13:09.963>body, <00:13:10.090>a <00:13:10.217>draw <00:13:10.345>menu

286
00:13:13.045 --> 00:13:15.935
<00:13:13.045>that <00:13:13.219>comes <00:13:13.395>in <00:13:13.569>from <00:13:13.745>the <00:13:13.920>side, <00:13:14.094>a <00:13:14.270>bottom <00:13:14.444>sheet,

287
00:13:16.335 --> 00:13:17.455
<00:13:16.335>a <00:13:16.839>bottom <00:13:17.343>navigation.

288
00:13:17.755 --> 00:13:19.495
<00:13:17.755>So <00:13:18.035>it's <00:13:18.314>like, <00:13:18.595>yeah, <00:13:18.875>the <00:13:19.155>scaffold

289
00:13:19.675 --> 00:13:21.655
<00:13:19.675>of <00:13:19.954>a <00:13:20.234>page, <00:13:20.515>um, <00:13:20.795>the <00:13:21.074>skeleton.

290
00:13:22.795 --> 00:13:25.855
<00:13:22.795>And <00:13:22.935>here <00:13:23.074>in <00:13:23.214>my <00:13:23.354>example <00:13:23.495>that <00:13:23.635>I <00:13:23.775>will <00:13:23.915>show <00:13:24.055>you <00:13:24.194>now,

291
00:13:25.995 --> 00:13:30.055
<00:13:25.995>we <00:13:26.111>have <00:13:26.228>one <00:13:26.345>app <00:13:26.461>bar <00:13:26.578>with <00:13:26.695>just <00:13:26.811>a <00:13:26.928>title <00:13:27.045>text <00:13:27.161>and <00:13:27.278>a <00:13:27.395>column.

292
00:13:30.325 --> 00:13:32.135
<00:13:30.325>Usually <00:13:30.605>the <00:13:30.885>body <00:13:31.165>is <00:13:31.445>a <00:13:31.725>column

293
00:13:32.135 --> 00:13:36.455
<00:13:32.135>because <00:13:32.290>you, <00:13:32.446>um, <00:13:32.601>align <00:13:32.757>all <00:13:32.912>the <00:13:33.068>widgets <00:13:33.223>underneath <00:13:33.379>each <00:13:33.535>other

294
00:13:36.555 --> 00:13:38.735
<00:13:36.555>and <00:13:36.834>sometimes <00:13:37.114>the <00:13:37.395>columns <00:13:37.675>hold <00:13:37.954>rows

295
00:13:38.875 --> 00:13:40.535
<00:13:38.875>or <00:13:39.155>maybe <00:13:39.435>it's <00:13:39.715>also <00:13:39.995>a <00:13:40.275>grid.

296
00:13:40.875 --> 00:13:42.775
<00:13:40.875>We <00:13:41.075>look <00:13:41.275>at <00:13:41.475>the <00:13:41.675>different <00:13:41.875>variants <00:13:42.075>of <00:13:42.275>that.

297
00:13:44.525 --> 00:13:46.455
<00:13:44.525>Okay, <00:13:44.875>let's <00:13:45.225>get <00:13:45.574>into <00:13:45.925>it.

298
00:13:46.755 --> 00:13:48.815
<00:13:46.755>But <00:13:47.035>before <00:13:47.314>just <00:13:47.595>some <00:13:47.875>general <00:13:48.155>information,

299
00:13:48.915 --> 00:13:50.255
<00:13:48.915>if <00:13:49.216>you <00:13:49.518>wanna <00:13:49.819>try <00:13:50.121>flatter

300
00:13:50.255 --> 00:13:53.455
<00:13:50.255>and <00:13:50.430>dart <00:13:50.605>without <00:13:50.780>installing <00:13:50.955>anything, <00:13:51.130>you <00:13:51.305>can <00:13:51.480>try <00:13:51.655>darpa,

301
00:13:54.215 --> 00:13:56.885
<00:13:54.215>which <00:13:54.342>is, <00:13:54.469>um, <00:13:54.596>like <00:13:54.724>online <00:13:54.851>and <00:13:54.978>you <00:13:55.105>can <00:13:55.233>just <00:13:55.360>try <00:13:55.487>it <00:13:55.615>out.

302
00:13:57.705 --> 00:13:59.405
<00:13:57.705>Um, <00:13:57.905>and <00:13:58.105>if <00:13:58.305>you <00:13:58.505>want <00:13:58.705>to <00:13:58.905>install <00:13:59.105>it,

303
00:13:59.405 --> 00:14:00.965
<00:13:59.405>you <00:13:59.755>install <00:14:00.105>the <00:14:00.454>flatter <00:14:00.805>SDK.

304
00:14:01.265 --> 00:14:05.965
<00:14:01.265>You <00:14:01.392>can <00:14:01.519>do <00:14:01.646>this <00:14:01.774>with, <00:14:01.901>um, <00:14:02.028>any <00:14:02.155>like <00:14:02.283>with <00:14:02.410>different, <00:14:02.537>uh, <00:14:02.665>ides.

305
00:14:06.065 --> 00:14:08.885
<00:14:06.065>Um, <00:14:06.265>the <00:14:06.465>recommended <00:14:06.665>ones <00:14:06.865>are <00:14:07.065>under <00:14:07.265>a <00:14:07.465>studio

306
00:14:08.945 --> 00:14:10.245
<00:14:08.945>and <00:14:09.335>visual <00:14:09.725>studio <00:14:10.115>code.

307
00:14:11.225 --> 00:14:13.205
<00:14:11.225>And <00:14:11.458>then <00:14:11.691>you <00:14:11.925>need <00:14:12.158>to <00:14:12.391>install <00:14:12.625>Flutter

308
00:14:13.205 --> 00:14:15.605
<00:14:13.205>and <00:14:13.438>Dart <00:14:13.671>for <00:14:13.905>the <00:14:14.138>IDE <00:14:14.371>of <00:14:14.605>Choice.

309
00:14:16.145 --> 00:14:18.885
<00:14:16.145>Um, <00:14:16.345>what <00:14:16.545>is <00:14:16.745>important <00:14:16.944>to <00:14:17.145>know <00:14:17.345>is, <00:14:17.545>um,

310
00:14:19.565 --> 00:14:22.885
<00:14:19.565>although <00:14:19.740>you <00:14:19.915>can, <00:14:20.090>like <00:14:20.265>with <00:14:20.440>a <00:14:20.615>flutter <00:14:20.790>code <00:14:20.965>base,

311
00:14:22.945 --> 00:14:24.845
<00:14:22.945>you <00:14:23.145>can <00:14:23.345>build <00:14:23.545>Android, <00:14:23.745>iOS <00:14:23.945>and <00:14:24.145>web <00:14:24.345>apps.

312
00:14:25.545 --> 00:14:28.125
<00:14:25.545>You <00:14:25.745>need <00:14:25.944>to, <00:14:26.145>uh, <00:14:26.344>have <00:14:26.545>a <00:14:26.745>Mac, <00:14:26.944>um,

313
00:14:28.265 --> 00:14:31.165
<00:14:28.265>and <00:14:28.420>IX <00:14:28.576>code, <00:14:28.731>which <00:14:28.887>is <00:14:29.042>the <00:14:29.198>IDE <00:14:29.353>you, <00:14:29.509>you <00:14:29.665>use

314
00:14:31.225 --> 00:14:33.325
<00:14:31.225>to <00:14:31.691>develop <00:14:32.158>iOS <00:14:32.625>apps.

315
00:14:33.865 --> 00:14:36.845
<00:14:33.865>You <00:14:33.992>need <00:14:34.119>this <00:14:34.246>to <00:14:34.374>create <00:14:34.501>an <00:14:34.628>iOS <00:14:34.755>built <00:14:34.883>of <00:14:35.010>your <00:14:35.137>flatter <00:14:35.265>code.

316
00:14:37.995 --> 00:14:42.375
<00:14:37.995>So, <00:14:38.122>uh, <00:14:38.249>when <00:14:38.376>you <00:14:38.504>have <00:14:38.631>a <00:14:38.758>Windows, <00:14:38.885>um, <00:14:39.013>a <00:14:39.140>a <00:14:39.267>Windows <00:14:39.395>computer,

317
00:14:42.555 --> 00:14:45.095
<00:14:42.555>you <00:14:42.710>will <00:14:42.866>not <00:14:43.021>be <00:14:43.177>able <00:14:43.332>to <00:14:43.488>make <00:14:43.643>an <00:14:43.799>iOS <00:14:43.954>build,

318
00:14:45.205 --> 00:14:47.055
<00:14:45.205>only <00:14:45.405>an <00:14:45.605>Android <00:14:45.805>build <00:14:46.005>or <00:14:46.205>a <00:14:46.405>web <00:14:46.605>build.

319
00:14:48.805 --> 00:14:51.210
<00:14:48.805>Okay? <00:14:48.932>And <00:14:49.059>for <00:14:49.186>later, <00:14:49.314>if <00:14:49.441>you <00:14:49.568>want <00:14:49.695>to <00:14:49.823>have <00:14:49.950>a, <00:14:50.077>a <00:14:50.204>look,

320
00:14:51.210 --> 00:14:52.845
<00:14:51.210>these <00:14:51.560>are <00:14:51.910>the <00:14:52.260>GitHub <00:14:52.610>links.

321
00:14:53.835 --> 00:14:55.405
<00:14:53.835>Okay, <00:14:54.115>let's <00:14:54.395>look <00:14:54.675>into <00:14:54.955>the <00:14:55.235>code.

322
00:14:56.105 --> 00:15:00.485
<00:14:56.105>So, <00:14:56.232>um, <00:14:56.359>I'm <00:14:56.486>sorry <00:14:56.614>that <00:14:56.741>this <00:14:56.868>is <00:14:56.995>so <00:14:57.123>small, <00:14:57.250>I <00:14:57.377>didn't <00:14:57.505>manage

323
00:15:00.485 --> 00:15:03.405
<00:15:00.485>to <00:15:00.718>make <00:15:00.951>this <00:15:01.185>larger <00:15:01.418>the <00:15:01.651>folder <00:15:01.885>structure,

324
00:15:03.465 --> 00:15:04.725
<00:15:03.465>but <00:15:03.691>it'll <00:15:03.918>just <00:15:04.145>take <00:15:04.372>three <00:15:04.599>minutes.

325
00:15:04.885 --> 00:15:07.125
<00:15:04.885>I <00:15:05.060>just <00:15:05.235>want <00:15:05.410>to <00:15:05.585>go <00:15:05.760>through <00:15:05.935>the <00:15:06.110>folder <00:15:06.285>structure

326
00:15:07.425 --> 00:15:08.925
<00:15:07.425>so <00:15:07.694>you <00:15:07.964>understand <00:15:08.234>what's <00:15:08.505>in <00:15:08.775>there.

327
00:15:09.505 --> 00:15:11.605
<00:15:09.505>You <00:15:09.738>have <00:15:09.971>one <00:15:10.205>folder <00:15:10.438>that's <00:15:10.671>called <00:15:10.905>Android,

328
00:15:11.905 --> 00:15:15.005
<00:15:11.905>and <00:15:12.079>this <00:15:12.255>android <00:15:12.430>folder <00:15:12.605>holds <00:15:12.780>a <00:15:12.954>typical <00:15:13.130>Android <00:15:13.305>project.

329
00:15:15.595 --> 00:15:18.165
<00:15:15.595>This <00:15:15.722>is <00:15:15.849>where <00:15:15.976>you <00:15:16.104>can <00:15:16.231>put <00:15:16.358>native <00:15:16.485>code <00:15:16.613>if <00:15:16.740>you <00:15:16.867>want <00:15:16.995>to.

330
00:15:18.515 --> 00:15:21.525
<00:15:18.515>Usually <00:15:18.689>you <00:15:18.865>will <00:15:19.040>only <00:15:19.215>access <00:15:19.390>it <00:15:19.564>if <00:15:19.740>you <00:15:19.915>need

331
00:15:21.525 --> 00:15:24.205
<00:15:21.525>to <00:15:21.725>integrate <00:15:21.925>some <00:15:22.125>library <00:15:22.324>that <00:15:22.525>demands <00:15:22.725>from <00:15:22.925>you

332
00:15:24.205 --> 00:15:26.285
<00:15:24.205>to <00:15:24.438>change <00:15:24.671>something <00:15:24.905>in <00:15:25.138>the <00:15:25.371>Android <00:15:25.605>manifest.

333
00:15:26.345 --> 00:15:29.685
<00:15:26.345>For <00:15:26.520>instance, <00:15:26.695>the <00:15:26.870>same <00:15:27.045>goes <00:15:27.220>for <00:15:27.395>the <00:15:27.570>iOS <00:15:27.745>folder

334
00:15:30.095 --> 00:15:31.845
<00:15:30.095>where <00:15:30.328>you <00:15:30.561>sometimes <00:15:30.795>will <00:15:31.028>need <00:15:31.261>to <00:15:31.495>go

335
00:15:31.845 --> 00:15:33.565
<00:15:31.845>to <00:15:32.078>add <00:15:32.311>something <00:15:32.545>in <00:15:32.778>the <00:15:33.011>info <00:15:33.245>list.

336
00:15:33.625 --> 00:15:36.405
<00:15:33.625>But <00:15:33.800>otherwise, <00:15:33.975>if <00:15:34.150>you <00:15:34.325>don't <00:15:34.500>wanna <00:15:34.675>write <00:15:34.850>native <00:15:35.025>code,

337
00:15:36.555 --> 00:15:38.525
<00:15:36.555>this <00:15:36.755>is <00:15:36.954>not <00:15:37.155>necessary <00:15:37.354>for <00:15:37.555>you <00:15:37.755>to <00:15:37.954>know.

338
00:15:39.545 --> 00:15:42.885
<00:15:39.545>Um, <00:15:39.672>I've, <00:15:39.799>the <00:15:39.926>lip <00:15:40.054>folder <00:15:40.181>is <00:15:40.308>the <00:15:40.435>one <00:15:40.563>where <00:15:40.690>the <00:15:40.817>magic <00:15:40.944>happens.

339
00:15:42.955 --> 00:15:44.645
<00:15:42.955>Here <00:15:43.155>are <00:15:43.355>all <00:15:43.555>the <00:15:43.755>files <00:15:43.955>of <00:15:44.155>your <00:15:44.355>project.

340
00:15:45.025 --> 00:15:47.805
<00:15:45.025>Um, <00:15:45.199>the <00:15:45.375>most <00:15:45.550>important <00:15:45.725>ones <00:15:45.900>outside <00:15:46.074>of <00:15:46.250>the <00:15:46.425>lip,

341
00:15:47.805 --> 00:15:50.245
<00:15:47.805>there <00:15:48.038>are <00:15:48.271>only, <00:15:48.505>um, <00:15:48.738>two <00:15:48.971>important <00:15:49.204>things.

342
00:15:50.265 --> 00:15:51.565
<00:15:50.265>You <00:15:50.557>have <00:15:50.850>an <00:15:51.142>assets <00:15:51.435>folder.

343
00:15:52.235 --> 00:15:54.645
<00:15:52.235>This <00:15:52.468>doesn't <00:15:52.701>need <00:15:52.935>to <00:15:53.168>be <00:15:53.401>named <00:15:53.635>assets,

344
00:15:54.865 --> 00:15:58.325
<00:15:54.865>but <00:15:55.040>um, <00:15:55.215>it's <00:15:55.390>a <00:15:55.565>way, <00:15:55.740>it's <00:15:55.915>usually <00:15:56.090>named <00:15:56.265>here.

345
00:15:58.325 --> 00:16:03.205
<00:15:58.325>You <00:15:58.465>hold <00:15:58.605>your <00:15:58.745>funds <00:15:58.885>OTF <00:15:59.025>or <00:15:59.165>TTF <00:15:59.305>files <00:15:59.445>and <00:15:59.585>your <00:15:59.725>pictures.

346
00:16:04.025 --> 00:16:06.805
<00:16:04.025>And <00:16:04.258>this, <00:16:04.491>they <00:16:04.725>need <00:16:04.958>to <00:16:05.191>be <00:16:05.425>referenced

347
00:16:07.315 --> 00:16:10.725
<00:16:07.315>like <00:16:07.490>all <00:16:07.665>external <00:16:07.840>libraries <00:16:08.015>in <00:16:08.190>the <00:16:08.365>pub <00:16:08.540>spec <00:16:08.715>yamo.

348
00:16:10.825 --> 00:16:14.045
<00:16:10.825>The <00:16:10.965>pub <00:16:11.105>spec <00:16:11.245>yamo <00:16:11.385>is <00:16:11.525>the <00:16:11.665>file, <00:16:11.805>um, <00:16:11.945>the <00:16:12.085>only <00:16:12.225>file

349
00:16:14.045 --> 00:16:15.485
<00:16:14.045>where <00:16:14.693>indentation <00:16:15.341>matters.

350
00:16:16.275 --> 00:16:19.165
<00:16:16.275>It's, <00:16:16.430>uh, <00:16:16.586>where <00:16:16.741>you, <00:16:16.897>where <00:16:17.052>you <00:16:17.208>import <00:16:17.363>all <00:16:17.519>the <00:16:17.675>libraries.

351
00:16:19.705 --> 00:16:22.805
<00:16:19.705>And, <00:16:19.880>um, <00:16:20.055>it's <00:16:20.230>important <00:16:20.405>like <00:16:20.580>on <00:16:20.755>where <00:16:20.930>this <00:16:21.105>starts.

352
00:16:23.025 --> 00:16:25.445
<00:16:23.025>So <00:16:23.258>this <00:16:23.491>for <00:16:23.725>instance, <00:16:23.958>is <00:16:24.191>not <00:16:24.425>good

353
00:16:25.585 --> 00:16:28.485
<00:16:25.585>and <00:16:25.701>this <00:16:25.818>is <00:16:25.935>also <00:16:26.051>not <00:16:26.168>good, <00:16:26.285>so <00:16:26.401>it <00:16:26.518>needs <00:16:26.635>to <00:16:26.751>be <00:16:26.868>exactly <00:16:26.985>there.

354
00:16:28.665 --> 00:16:33.485
<00:16:28.665>So <00:16:28.805>this <00:16:28.944>very <00:16:29.084>also <00:16:29.224>big <00:16:29.365>error, <00:16:29.505>um, <00:16:29.645>big <00:16:29.785>spring <00:16:29.925>of <00:16:30.064>error,

355
00:16:34.425 --> 00:16:36.045
<00:16:34.425>um, <00:16:34.704>uh, <00:16:34.984>had <00:16:35.265>it <00:16:35.545>a <00:16:35.824>lot.

356
00:16:36.185 --> 00:16:38.485
<00:16:36.185>And <00:16:36.359>the <00:16:36.535>arrow <00:16:36.709>messages <00:16:36.885>are <00:16:37.060>not <00:16:37.234>always <00:16:37.410>very <00:16:37.584>good.

357
00:16:38.625 --> 00:16:40.005
<00:16:38.625>So, <00:16:39.039>um, <00:16:39.453>be <00:16:39.867>careful

358
00:16:40.075 --> 00:16:42.285
<00:16:40.075>with <00:16:40.275>the <00:16:40.475>indentation <00:16:40.675>in <00:16:40.875>the <00:16:41.075>pubs <00:16:41.275>spec <00:16:41.475>yaml.

359
00:16:42.665 --> 00:16:44.325
<00:16:42.665>And <00:16:42.898>here <00:16:43.131>you <00:16:43.365>can <00:16:43.598>define <00:16:43.831>the <00:16:44.064>assets.

360
00:16:44.625 --> 00:16:48.005
<00:16:44.625>You <00:16:44.825>can <00:16:45.025>either <00:16:45.225>define <00:16:45.425>every <00:16:45.625>pic <00:16:45.825>picture <00:16:46.025>singularly,

361
00:16:48.385 --> 00:16:51.645
<00:16:48.385>or <00:16:48.525>you <00:16:48.665>can <00:16:48.805>just <00:16:48.944>define <00:16:49.085>a <00:16:49.225>whole <00:16:49.365>folder <00:16:49.505>if <00:16:49.645>you <00:16:49.785>want

362
00:16:51.645 --> 00:16:53.045
<00:16:51.645>to <00:16:52.275>like <00:16:52.905>this.

363
00:16:53.985 --> 00:16:57.125
<00:16:53.985>Um, <00:16:54.125>and <00:16:54.265>you <00:16:54.405>define <00:16:54.545>the <00:16:54.685>funds, <00:16:54.825>you <00:16:54.965>define <00:16:55.105>the <00:16:55.245>family, <00:16:55.385>um,

364
00:16:57.185 --> 00:16:58.925
<00:16:57.185>you <00:16:57.651>import <00:16:58.118>the <00:16:58.584>file

365
00:16:59.385 --> 00:17:03.045
<00:16:59.385>and <00:16:59.512>if <00:16:59.639>it <00:16:59.766>is <00:16:59.894>bold, <00:17:00.021>you <00:17:00.148>also <00:17:00.275>define <00:17:00.403>the <00:17:00.530>weight <00:17:00.657>it <00:17:00.785>has.

366
00:17:03.225 --> 00:17:05.245
<00:17:03.225>So <00:17:03.425>it <00:17:03.625>is <00:17:03.825>recognized <00:17:04.025>as <00:17:04.224>a <00:17:04.425>bold <00:17:04.625>font.

367
00:17:06.185 --> 00:17:08.605
<00:17:06.185>Um, <00:17:06.385>and <00:17:06.585>there's <00:17:06.784>here <00:17:06.984>also <00:17:07.185>a <00:17:07.385>test <00:17:07.585>folder

368
00:17:08.605 --> 00:17:11.805
<00:17:08.605>where <00:17:08.721>you <00:17:08.838>can <00:17:08.954>put <00:17:09.071>unit <00:17:09.188>tests <00:17:09.305>if <00:17:09.421>you <00:17:09.538>are <00:17:09.655>like <00:17:09.771>one <00:17:09.888>of <00:17:10.005>those.

369
00:17:12.185 --> 00:17:14.605
<00:17:12.185>I'm <00:17:12.385>a <00:17:12.585>super <00:17:12.784>good <00:17:12.984>developer <00:17:13.185>kind <00:17:13.385>of <00:17:13.585>types.

370
00:17:15.185 --> 00:17:18.205
<00:17:15.185>Um, <00:17:15.385>I <00:17:15.585>I, <00:17:15.784>I <00:17:15.984>do <00:17:16.185>it <00:17:16.385>rarely <00:17:16.585>anyways.

371
00:17:18.785 --> 00:17:23.725
<00:17:18.785>Um, <00:17:18.925>so <00:17:19.065>in <00:17:19.205>the <00:17:19.345>main <00:17:19.485>dart <00:17:19.625>is <00:17:19.765>where <00:17:19.905>your <00:17:20.045>program <00:17:20.185>starts.

372
00:17:24.105 --> 00:17:28.005
<00:17:24.105>You <00:17:24.245>have, <00:17:24.385>um, <00:17:24.525>the <00:17:24.665>imports <00:17:24.805>in <00:17:24.944>the, <00:17:25.085>um, <00:17:25.224>in <00:17:25.365>the <00:17:25.505>top.

373
00:17:28.945 --> 00:17:30.485
<00:17:28.945>Um, <00:17:29.407>this <00:17:29.869>one <00:17:30.331>needs

374
00:17:30.485 --> 00:17:32.805
<00:17:30.485>to <00:17:30.685>be <00:17:30.885>imported <00:17:31.084>every <00:17:31.284>time <00:17:31.485>flood <00:17:31.685>material <00:17:31.885>dart

375
00:17:32.805 --> 00:17:34.205
<00:17:32.805>and <00:17:33.015>in <00:17:33.225>every <00:17:33.435>file <00:17:33.645>you'll <00:17:33.855>find <00:17:34.065>it

376
00:17:35.185 --> 00:17:39.285
<00:17:35.185>and <00:17:35.340>the <00:17:35.496>other <00:17:35.651>ones <00:17:35.807>are <00:17:35.962>pass, <00:17:36.118>uh, <00:17:36.273>inside <00:17:36.429>this <00:17:36.585>project.

377
00:17:39.545 --> 00:17:42.365
<00:17:39.545>So <00:17:39.778>I'm, <00:17:40.011>I'm <00:17:40.245>importing <00:17:40.478>a <00:17:40.711>utilities <00:17:40.945>file

378
00:17:42.365 --> 00:17:44.565
<00:17:42.365>that <00:17:42.565>I <00:17:42.765>have <00:17:42.965>here <00:17:43.165>in <00:17:43.365>the <00:17:43.565>utilities <00:17:43.765>folder

379
00:17:44.565 --> 00:17:48.005
<00:17:44.565>where <00:17:44.681>I <00:17:44.798>define <00:17:44.915>a <00:17:45.031>color <00:17:45.148>and <00:17:45.265>that <00:17:45.381>I'm <00:17:45.498>gonna <00:17:45.615>need <00:17:45.731>in <00:17:45.848>a <00:17:45.965>minute.

380
00:17:48.625 --> 00:17:52.205
<00:17:48.625>And <00:17:48.741>I, <00:17:48.858>I <00:17:48.975>have <00:17:49.091>a <00:17:49.208>roots <00:17:49.325>folder <00:17:49.441>here, <00:17:49.558>uh, <00:17:49.675>in <00:17:49.791>the <00:17:49.908>lip <00:17:50.025>file.

381
00:17:52.385 --> 00:17:54.605
<00:17:52.385>And <00:17:52.618>these <00:17:52.851>ones <00:17:53.085>I <00:17:53.318>also <00:17:53.551>define <00:17:53.785>here

382
00:17:54.605 --> 00:17:56.805
<00:17:54.605>because <00:17:54.838>I'm <00:17:55.071>gonna <00:17:55.305>define <00:17:55.538>all <00:17:55.771>the <00:17:56.005>roots

383
00:17:56.945 --> 00:17:59.045
<00:17:56.945>for <00:17:57.145>the <00:17:57.345>navigator <00:17:57.544>here <00:17:57.745>in <00:17:57.945>the <00:17:58.145>main <00:17:58.345>yard.

384
00:18:00.065 --> 00:18:03.045
<00:18:00.065>Um, <00:18:00.265>usually <00:18:00.465>in <00:18:00.665>your <00:18:00.865>lip <00:18:01.065>folder <00:18:01.265>there <00:18:01.465>are

385
00:18:03.045 --> 00:18:04.085
<00:18:03.045>a <00:18:03.279>lot <00:18:03.513>of <00:18:03.747>more <00:18:03.981>folders.

386
00:18:04.305 --> 00:18:07.765
<00:18:04.305>You <00:18:04.480>will <00:18:04.655>have <00:18:04.830>state <00:18:05.005>management, <00:18:05.180>you <00:18:05.355>will <00:18:05.530>have <00:18:05.705>repositories,

387
00:18:07.945 --> 00:18:11.845
<00:18:07.945>you'll <00:18:08.100>have <00:18:08.256>api, <00:18:08.411>you'll <00:18:08.567>have <00:18:08.722>model, <00:18:08.878>um, <00:18:09.033>things <00:18:09.189>like <00:18:09.345>that.

388
00:18:11.845 --> 00:18:13.845
<00:18:11.845>There <00:18:12.045>are <00:18:12.245>different <00:18:12.445>philosophies <00:18:12.645>about <00:18:12.845>that <00:18:13.045>as <00:18:13.245>well.

389
00:18:14.545 --> 00:18:18.005
<00:18:14.545>But, <00:18:14.672>um, <00:18:14.799>for <00:18:14.926>now <00:18:15.054>we <00:18:15.181>only <00:18:15.308>have <00:18:15.435>the <00:18:15.563>roots <00:18:15.690>and <00:18:15.817>the <00:18:15.945>utilities,

390
00:18:18.145 --> 00:18:20.365
<00:18:18.145>and <00:18:18.320>usually <00:18:18.495>you <00:18:18.670>also <00:18:18.845>have <00:18:19.020>a <00:18:19.195>custom <00:18:19.370>widget <00:18:19.545>folder,

391
00:18:21.065 --> 00:18:23.365
<00:18:21.065>but <00:18:21.205>for <00:18:21.345>this <00:18:21.485>project <00:18:21.625>it's <00:18:21.765>very <00:18:21.905>small, <00:18:22.045>we <00:18:22.185>don't <00:18:22.325>need <00:18:22.465>that.

392
00:18:23.945 --> 00:18:27.085
<00:18:23.945>So <00:18:24.120>the <00:18:24.294>app <00:18:24.470>starts <00:18:24.645>here, <00:18:24.820>um, <00:18:24.995>running <00:18:25.169>my <00:18:25.345>app

393
00:18:27.345 --> 00:18:29.685
<00:18:27.345>and <00:18:27.545>the <00:18:27.745>moment <00:18:27.945>I'm <00:18:28.145>not <00:18:28.345>initializing <00:18:28.545>anything <00:18:28.745>here.

394
00:18:30.665 --> 00:18:34.885
<00:18:30.665>So <00:18:30.792>the <00:18:30.919>only <00:18:31.046>thing <00:18:31.174>I've <00:18:31.301>changed <00:18:31.428>is <00:18:31.555>here <00:18:31.683>in <00:18:31.810>the <00:18:31.937>material <00:18:32.065>dart,

395
00:18:35.025 --> 00:18:37.245
<00:18:35.025>um, <00:18:35.375>in <00:18:35.725>the <00:18:36.075>material <00:18:36.425>app.

396
00:18:37.595 --> 00:18:40.485
<00:18:37.595>This <00:18:37.735>is, <00:18:37.875>um, <00:18:38.015>when <00:18:38.155>you <00:18:38.295>hover <00:18:38.435>over <00:18:38.575>a <00:18:38.715>class <00:18:38.855>like <00:18:38.995>that,

397
00:18:40.985 --> 00:18:44.845
<00:18:40.985>you <00:18:41.185>will <00:18:41.385>see <00:18:41.584>different <00:18:41.784>attributes <00:18:41.985>that <00:18:42.185>this <00:18:42.385>has

398
00:18:44.985 --> 00:18:47.365
<00:18:44.985>and <00:18:45.159>that <00:18:45.334>you <00:18:45.510>can <00:18:45.685>fill <00:18:45.860>if <00:18:46.034>you <00:18:46.209>want <00:18:46.385>to,

399
00:18:47.825 --> 00:18:49.325
<00:18:47.825>uh, <00:18:48.275>optional <00:18:48.725>and <00:18:49.175>non-optional.

400
00:18:50.305 --> 00:18:53.565
<00:18:50.305>And <00:18:50.460>here <00:18:50.616>we <00:18:50.771>have <00:18:50.927>the <00:18:51.082>title <00:18:51.238>cuckoo <00:18:51.393>workshop, <00:18:51.549>which, <00:18:51.705>um,

401
00:18:53.875 --> 00:18:56.525
<00:18:53.875>will <00:18:54.015>only <00:18:54.155>be <00:18:54.295>seen <00:18:54.435>I <00:18:54.575>think <00:18:54.715>on <00:18:54.855>Android <00:18:54.995>phones <00:18:55.135>under <00:18:55.275>recent

402
00:18:56.675 --> 00:18:58.325
<00:18:56.675>apps, <00:18:56.955>but <00:18:57.235>you <00:18:57.514>should <00:18:57.794>define <00:18:58.075>it.

403
00:18:59.105 --> 00:19:03.685
<00:18:59.105>Um, <00:18:59.221>then <00:18:59.338>we <00:18:59.455>have <00:18:59.571>a, <00:18:59.688>a <00:18:59.805>theme <00:18:59.921>data <00:19:00.038>which, <00:19:00.155>uh, <00:19:00.271>gets <00:19:00.388>you, <00:19:00.505>um,

404
00:19:03.685 --> 00:19:05.365
<00:19:03.685>everything <00:19:04.151>about <00:19:04.618>the <00:19:05.085>theme.

405
00:19:06.065 --> 00:19:08.645
<00:19:06.065>And <00:19:06.240>in <00:19:06.415>the <00:19:06.590>theme <00:19:06.765>data <00:19:06.940>we <00:19:07.115>have <00:19:07.290>a <00:19:07.465>primary

406
00:19:09.005 --> 00:19:10.325
<00:19:09.005>swatch <00:19:09.302>and <00:19:09.599>a <00:19:09.896>text <00:19:10.193>theme.

407
00:19:11.025 --> 00:19:15.365
<00:19:11.025>So <00:19:11.180>the <00:19:11.336>text <00:19:11.491>theme <00:19:11.647>widget <00:19:11.802>has <00:19:11.958>a <00:19:12.113>lot <00:19:12.269>of <00:19:12.425>possibilities

408
00:19:15.665 --> 00:19:20.645
<00:19:15.665>to <00:19:15.792>define <00:19:15.919>text, <00:19:16.046>and <00:19:16.174>you <00:19:16.301>can <00:19:16.428>use <00:19:16.555>them <00:19:16.683>inside <00:19:16.810>the, <00:19:16.937>the <00:19:17.065>app.

409
00:19:20.705 --> 00:19:23.205
<00:19:20.705>You <00:19:20.860>will <00:19:21.016>just <00:19:21.171>give <00:19:21.327>it <00:19:21.482>a <00:19:21.638>style <00:19:21.793>of <00:19:21.949>headline <00:19:22.105>one

410
00:19:23.205 --> 00:19:25.365
<00:19:23.205>or <00:19:23.405>headline <00:19:23.605>two, <00:19:23.804>and <00:19:24.004>then <00:19:24.205>it'll <00:19:24.405>take <00:19:24.605>the

411
00:19:25.365 --> 00:19:26.405
<00:19:25.365>definition <00:19:25.833>from <00:19:26.301>here.

412
00:19:27.345 --> 00:19:31.365
<00:19:27.345>Um, <00:19:27.485>the <00:19:27.625>primary <00:19:27.765>swatch, <00:19:27.905>it's <00:19:28.045>a <00:19:28.185>little, <00:19:28.325>a <00:19:28.465>little <00:19:28.605>bit, <00:19:28.745>uh,

413
00:19:31.365 --> 00:19:33.285
<00:19:31.365>something <00:19:31.831>special <00:19:32.298>about <00:19:32.765>flatter

414
00:19:33.285 --> 00:19:36.605
<00:19:33.285>because, <00:19:33.485>um, <00:19:33.685>flatter <00:19:33.885>likes <00:19:34.085>to <00:19:34.285>use <00:19:34.485>these <00:19:34.685>swatches,

415
00:19:36.605 --> 00:19:41.125
<00:19:36.605>which <00:19:36.780>are <00:19:36.955>not <00:19:37.130>colors, <00:19:37.305>they're <00:19:37.480>like <00:19:37.655>color, <00:19:37.830>um, <00:19:38.005>yeah,

416
00:19:41.235 --> 00:19:43.325
<00:19:41.235>like <00:19:41.468>10 <00:19:41.701>different <00:19:41.935>shades <00:19:42.168>of <00:19:42.401>a <00:19:42.635>color.

417
00:19:44.105 --> 00:19:45.125
<00:19:44.105>So, <00:19:45.023>um,

418
00:19:46.435 --> 00:19:49.325
<00:19:46.435>flatter <00:19:46.668>has <00:19:46.901>some <00:19:47.135>integrated <00:19:47.368>ones <00:19:47.601>like <00:19:47.835>shape

419
00:19:49.355 --> 00:19:50.485
<00:19:49.355>blue <00:19:49.694>gray <00:19:50.033>for <00:19:50.371>instance.

420
00:19:51.025 --> 00:19:54.445
<00:19:51.025>And <00:19:51.141>when <00:19:51.258>you <00:19:51.375>go <00:19:51.491>hover <00:19:51.608>over <00:19:51.725>it, <00:19:51.841>you <00:19:51.958>can <00:19:52.075>see <00:19:52.191>how <00:19:52.308>it <00:19:52.425>looks.

421
00:19:55.665 --> 00:19:59.605
<00:19:55.665>So <00:19:55.840>it's <00:19:56.014>uh, <00:19:56.190>like <00:19:56.365>10 <00:19:56.540>different <00:19:56.715>colors, <00:19:56.889>shapes <00:19:57.065>of,

422
00:19:59.665 --> 00:20:00.725
<00:19:59.665>of <00:19:59.983>one <00:20:00.301>blue <00:20:00.619>gray.

423
00:20:01.425 --> 00:20:02.885
<00:20:01.425>And <00:20:01.687>if <00:20:01.950>you <00:20:02.213>just <00:20:02.476>do <00:20:02.739>this,

424
00:20:02.985 --> 00:20:06.005
<00:20:02.985>you <00:20:03.140>already <00:20:03.296>have <00:20:03.451>a <00:20:03.607>designed <00:20:03.762>app <00:20:03.918>that <00:20:04.073>looks <00:20:04.229>quite <00:20:04.385>nice.

425
00:20:06.065 --> 00:20:07.925
<00:20:06.065>It <00:20:06.345>will <00:20:06.625>have <00:20:06.905>white <00:20:07.185>background <00:20:07.465>everywhere,

426
00:20:08.065 --> 00:20:11.205
<00:20:08.065>and <00:20:08.220>all <00:20:08.376>the <00:20:08.531>widgets <00:20:08.687>you <00:20:08.842>add <00:20:08.998>like <00:20:09.153>sliders <00:20:09.309>or <00:20:09.465>buttons

427
00:20:11.425 --> 00:20:14.125
<00:20:11.425>or <00:20:11.625>navigation <00:20:11.825>bar, <00:20:12.024>they <00:20:12.225>will <00:20:12.425>have <00:20:12.625>one <00:20:12.825>shade

428
00:20:14.125 --> 00:20:16.245
<00:20:14.125>of <00:20:14.475>this <00:20:14.825>blue <00:20:15.175>gray <00:20:15.525>color.

429
00:20:16.945 --> 00:20:19.405
<00:20:16.945>Um, <00:20:17.120>and <00:20:17.294>you <00:20:17.470>can <00:20:17.645>also <00:20:17.820>add <00:20:17.995>a <00:20:18.169>secondary <00:20:18.345>swatch

430
00:20:19.745 --> 00:20:21.165
<00:20:19.745>or <00:20:20.064>you <00:20:20.384>can <00:20:20.703>also, <00:20:21.023>um,

431
00:20:21.625 --> 00:20:25.285
<00:20:21.625>define <00:20:21.825>singular <00:20:22.025>colors <00:20:22.225>like <00:20:22.425>accent <00:20:22.625>color, <00:20:22.825>canvas <00:20:23.025>color,

432
00:20:25.285 --> 00:20:27.645
<00:20:25.285>shadow <00:20:25.485>color <00:20:25.685>if <00:20:25.885>you <00:20:26.085>prefer <00:20:26.285>to <00:20:26.485>do <00:20:26.685>that.

433
00:20:27.995 --> 00:20:32.285
<00:20:27.995>What <00:20:28.135>I <00:20:28.274>did <00:20:28.415>here <00:20:28.554>was <00:20:28.695>I <00:20:28.834>defined <00:20:28.975>my <00:20:29.114>own <00:20:29.254>swatch, <00:20:29.395>um,

434
00:20:32.695 --> 00:20:35.445
<00:20:32.695>which <00:20:32.928>is <00:20:33.161>a <00:20:33.395>little <00:20:33.628>bit <00:20:33.861>maybe <00:20:34.095>unintuitive,

435
00:20:35.625 --> 00:20:37.885
<00:20:35.625>but <00:20:35.800>yeah, <00:20:35.975>so <00:20:36.150>to <00:20:36.325>you <00:20:36.500>build <00:20:36.675>in <00:20:36.850>material <00:20:37.025>color

436
00:20:37.885 --> 00:20:39.285
<00:20:37.885>where <00:20:38.137>you <00:20:38.389>give <00:20:38.641>the <00:20:38.893>hex <00:20:39.145>color

437
00:20:40.025 --> 00:20:43.685
<00:20:40.025>and <00:20:40.200>then <00:20:40.375>you <00:20:40.550>give, <00:20:40.725>um, <00:20:40.900>map <00:20:41.075>within <00:20:41.250>in <00:20:41.425>and

438
00:20:44.385 --> 00:20:45.445
<00:20:44.385>and <00:20:44.703>color, <00:20:45.021>I <00:20:45.339>think.

439
00:20:45.865 --> 00:20:49.325
<00:20:45.865>And <00:20:45.981>I <00:20:46.098>did <00:20:46.215>this <00:20:46.331>here <00:20:46.448>in, <00:20:46.565>in <00:20:46.681>another <00:20:46.798>file <00:20:46.915>to <00:20:47.031>show <00:20:47.148>you <00:20:47.265>how

440
00:20:49.325 --> 00:20:52.005
<00:20:49.325>to <00:20:49.558>create <00:20:49.791>another <00:20:50.025>file <00:20:50.258>and <00:20:50.491>import <00:20:50.725>this.

441
00:20:52.315 --> 00:20:56.365
<00:20:52.315>This <00:20:52.431>is <00:20:52.548>a <00:20:52.665>static <00:20:52.781>variable, <00:20:52.898>so <00:20:53.015>I <00:20:53.131>can <00:20:53.248>just <00:20:53.365>call <00:20:53.481>the <00:20:53.598>class <00:20:53.715>dot

442
00:20:56.385 --> 00:20:58.845
<00:20:56.385>and <00:20:56.560>the <00:20:56.735>static <00:20:56.910>variable <00:20:57.085>and <00:20:57.260>have <00:20:57.435>access <00:20:57.610>to <00:20:57.785>it.

443
00:20:59.355 --> 00:21:02.405
<00:20:59.355>It's <00:20:59.588>in <00:20:59.821>utilities. <00:21:00.055>So <00:21:00.288>this <00:21:00.521>one's <00:21:00.755>it.

444
00:21:03.085 --> 00:21:07.005
<00:21:03.085>I <00:21:03.260>define <00:21:03.435>a <00:21:03.610>static <00:21:03.785>map <00:21:03.960>with <00:21:04.135>Indian <00:21:04.310>color, <00:21:04.485>um,

445
00:21:07.065 --> 00:21:11.205
<00:21:07.065>and <00:21:07.181>the <00:21:07.298>color <00:21:07.415>needs <00:21:07.531>to <00:21:07.648>be <00:21:07.765>from <00:21:07.881>rrg, <00:21:07.998>RGB, <00:21:08.115>um, <00:21:08.231>in <00:21:08.348>this <00:21:08.465>case.

446
00:21:12.105 --> 00:21:14.165
<00:21:12.105>And <00:21:12.280>you <00:21:12.455>can <00:21:12.630>also, <00:21:12.805>my <00:21:12.980>IDE <00:21:13.155>is <00:21:13.330>so <00:21:13.505>nice

447
00:21:14.185 --> 00:21:15.805
<00:21:14.185>to <00:21:14.418>already <00:21:14.651>show <00:21:14.885>me <00:21:15.118>the <00:21:15.351>colors <00:21:15.585>here.

448
00:21:15.945 --> 00:21:18.125
<00:21:15.945>So <00:21:16.145>this <00:21:16.345>is <00:21:16.544>what <00:21:16.745>we're <00:21:16.945>gonna <00:21:17.145>see <00:21:17.345>everywhere

449
00:21:18.125 --> 00:21:20.805
<00:21:18.125>where <00:21:18.280>I <00:21:18.436>do <00:21:18.591>not <00:21:18.747>define <00:21:18.902>the <00:21:19.058>color <00:21:19.213>inside <00:21:19.369>the <00:21:19.525>widget.

450
00:21:21.715 --> 00:21:23.365
<00:21:21.715>Okay, <00:21:21.948>let's <00:21:22.181>go <00:21:22.415>back <00:21:22.648>to <00:21:22.881>main <00:21:23.115>art.

451
00:21:24.705 --> 00:21:27.125
<00:21:24.705>So <00:21:24.938>you <00:21:25.171>also <00:21:25.405>define <00:21:25.638>the <00:21:25.871>roots <00:21:26.105>here.

452
00:21:27.385 --> 00:21:30.245
<00:21:27.385>So <00:21:27.540>the <00:21:27.696>roots <00:21:27.851>are, <00:21:28.007>yeah, <00:21:28.162>the <00:21:28.318>different <00:21:28.473>screens <00:21:28.629>we <00:21:28.785>have,

453
00:21:30.585 --> 00:21:31.645
<00:21:30.585>and <00:21:30.775>you <00:21:30.966>give <00:21:31.157>them <00:21:31.348>a <00:21:31.539>name.

454
00:21:31.705 --> 00:21:33.645
<00:21:31.705>So <00:21:31.845>in <00:21:31.985>the <00:21:32.125>code <00:21:32.264>you <00:21:32.405>just <00:21:32.544>need <00:21:32.685>to <00:21:32.824>call <00:21:32.965>these <00:21:33.105>names

455
00:21:33.705 --> 00:21:36.205
<00:21:33.705>and <00:21:33.905>you'll <00:21:34.105>usually <00:21:34.304>usually <00:21:34.504>start <00:21:34.705>with <00:21:34.905>a <00:21:35.105>backslash.

456
00:21:36.625 --> 00:21:39.965
<00:21:36.625>And <00:21:36.752>then <00:21:36.879>the <00:21:37.006>name <00:21:37.134>and <00:21:37.261>the <00:21:37.388>home <00:21:37.515>route <00:21:37.643>only <00:21:37.770>has <00:21:37.897>a <00:21:38.025>backslash

457
00:21:40.385 --> 00:21:42.525
<00:21:40.385>that's, <00:21:40.585>um, <00:21:40.785>like, <00:21:40.985>it <00:21:41.185>doesn't <00:21:41.385>have <00:21:41.585>to <00:21:41.785>be,

458
00:21:42.545 --> 00:21:43.925
<00:21:42.545>but <00:21:42.793>that's <00:21:43.041>usually <00:21:43.290>how <00:21:43.538>it's <00:21:43.787>done.

459
00:21:44.305 --> 00:21:47.285
<00:21:44.305>And <00:21:44.460>the <00:21:44.616>initial <00:21:44.771>route, <00:21:44.927>um, <00:21:45.082>is <00:21:45.238>defined <00:21:45.393>here <00:21:45.549>as <00:21:45.705>well.

460
00:21:47.385 --> 00:21:49.045
<00:21:47.385>So <00:21:47.585>we <00:21:47.785>will <00:21:47.985>start <00:21:48.185>with <00:21:48.385>the <00:21:48.585>home <00:21:48.785>route.

461
00:21:49.185 --> 00:21:52.605
<00:21:49.185>And <00:21:49.312>the <00:21:49.439>home <00:21:49.566>route <00:21:49.694>is <00:21:49.821>defined <00:21:49.948>in <00:21:50.075>the, <00:21:50.203>in <00:21:50.330>the <00:21:50.457>home <00:21:50.585>screen.

462
00:21:54.915 --> 00:21:56.975
<00:21:54.915>And <00:21:55.148>I'm <00:21:55.381>gonna <00:21:55.615>start <00:21:55.848>the <00:21:56.081>app <00:21:56.315>now.

463
00:21:57.055 --> 00:22:00.855
<00:21:57.055>I <00:21:57.210>have <00:21:57.366>already <00:21:57.521>opened <00:21:57.677>the <00:21:57.832>emulator, <00:21:57.988>uh, <00:21:58.143>iPhone <00:21:58.299>or <00:21:58.455>simulator.

464
00:22:01.975 --> 00:22:05.055
<00:22:01.975>I <00:22:02.441>will <00:22:02.908>debug. <00:22:03.375>And

465
00:22:06.775 --> 00:22:09.165
<00:22:06.775>while <00:22:06.975>it's <00:22:07.175>opening, <00:22:07.375>it <00:22:07.575>might <00:22:07.775>take <00:22:07.975>a <00:22:08.175>while.

466
00:22:09.705 --> 00:22:11.565
<00:22:09.705>Um, <00:22:09.879>I <00:22:10.054>will <00:22:10.230>show <00:22:10.405>you <00:22:10.580>a <00:22:10.754>little <00:22:10.929>bit <00:22:11.105>how

467
00:22:11.565 --> 00:22:12.685
<00:22:11.565>to <00:22:11.766>create <00:22:11.968>a <00:22:12.169>file <00:22:12.371>like <00:22:12.572>this.

468
00:22:12.825 --> 00:22:15.925
<00:22:12.825>So <00:22:13.000>this <00:22:13.175>is <00:22:13.350>a <00:22:13.525>stateful <00:22:13.700>widget, <00:22:13.875>which <00:22:14.050>is, <00:22:14.225>um,

469
00:22:16.015 --> 00:22:18.165
<00:22:16.015>every <00:22:16.248>screen <00:22:16.481>is <00:22:16.715>usually <00:22:16.948>a <00:22:17.181>stateful <00:22:17.415>widget.

470
00:22:18.745 --> 00:22:23.085
<00:22:18.745>So <00:22:18.945>when <00:22:19.145>I <00:22:19.344>type, <00:22:19.544>when <00:22:19.745>I <00:22:19.945>type <00:22:20.145>STF,

471
00:22:23.845 --> 00:22:25.565
<00:22:23.845>I <00:22:24.311>get <00:22:24.778>this <00:22:25.245>suggestion

472
00:22:26.385 --> 00:22:29.485
<00:22:26.385>and <00:22:26.512>I <00:22:26.639>can, <00:22:26.766>I <00:22:26.894>have <00:22:27.021>the <00:22:27.148>whole <00:22:27.275>structure, <00:22:27.403>so <00:22:27.530>you <00:22:27.657>don't <00:22:27.785>need

473
00:22:29.485 --> 00:22:31.525
<00:22:29.485>to <00:22:29.764>remember <00:22:30.044>how <00:22:30.324>this <00:22:30.604>is <00:22:30.885>done.

474
00:22:32.185 --> 00:22:36.405
<00:22:32.185>The <00:22:32.360>same <00:22:32.534>goes <00:22:32.710>for <00:22:32.885>a <00:22:33.060>status <00:22:33.235>widget, <00:22:33.409>which <00:22:33.585>is

475
00:22:36.965 --> 00:22:38.765
<00:22:36.965>a <00:22:37.314>bit <00:22:37.665>easier <00:22:38.014>to <00:22:38.365>initialize.

476
00:22:40.185 --> 00:22:42.565
<00:22:40.185>Um, <00:22:40.418>uh, <00:22:40.651>state <00:22:40.885>plus <00:22:41.118>widget <00:22:41.351>built <00:22:41.585>itself.

477
00:22:42.705 --> 00:22:45.325
<00:22:42.705>So <00:22:42.879>it <00:22:43.054>only <00:22:43.230>has <00:22:43.405>like <00:22:43.580>this <00:22:43.754>one <00:22:43.929>built <00:22:44.105>method,

478
00:22:45.985 --> 00:22:49.725
<00:22:45.985>but <00:22:46.185>uh, <00:22:46.385>stateful <00:22:46.584>widget, <00:22:46.784>it <00:22:46.985>builds <00:22:47.185>a <00:22:47.385>state.

479
00:22:50.305 --> 00:22:51.845
<00:22:50.305>And <00:22:50.582>then <00:22:50.859>the <00:22:51.136>state <00:22:51.413>built <00:22:51.691>itself.

480
00:22:52.585 --> 00:22:57.285
<00:22:52.585>So <00:22:52.712>you <00:22:52.839>al <00:22:52.966>you'll <00:22:53.094>always <00:22:53.221>have, <00:22:53.348>uh, <00:22:53.475>like <00:22:53.603>a <00:22:53.730>header <00:22:53.857>like <00:22:53.985>this.

481
00:22:57.665 --> 00:23:00.445
<00:22:57.665>And <00:22:57.820>here <00:22:57.976>it <00:22:58.131>gets <00:22:58.287>interesting <00:22:58.442>like <00:22:58.598>the <00:22:58.753>widget <00:22:58.909>built <00:22:59.065>method

482
00:23:00.545 --> 00:23:01.725
<00:23:00.545>of <00:23:00.810>the <00:23:01.076>home <00:23:01.341>root <00:23:01.607>state.

483
00:23:02.115 --> 00:23:03.805
<00:23:02.115>This <00:23:02.465>will <00:23:02.815>return <00:23:03.165>your <00:23:03.515>page.

484
00:23:04.505 --> 00:23:06.645
<00:23:04.505>And <00:23:04.680>the <00:23:04.855>page <00:23:05.030>is, <00:23:05.205>as <00:23:05.380>I <00:23:05.555>said, <00:23:05.730>a <00:23:05.905>scuffled.

485
00:23:07.105 --> 00:23:10.565
<00:23:07.105>It <00:23:07.232>has <00:23:07.359>a <00:23:07.486>background <00:23:07.614>color <00:23:07.741>of <00:23:07.868>black, <00:23:07.995>it <00:23:08.123>has <00:23:08.250>a <00:23:08.377>app <00:23:08.505>bar,

486
00:23:10.735 --> 00:23:13.925
<00:23:10.735>which <00:23:10.890>is <00:23:11.046>an <00:23:11.201>app <00:23:11.357>bar <00:23:11.512>widget, <00:23:11.668>which <00:23:11.823>has <00:23:11.979>no <00:23:12.135>color.

487
00:23:14.145 --> 00:23:17.205
<00:23:14.145>So <00:23:14.300>it <00:23:14.456>will <00:23:14.611>take <00:23:14.767>a <00:23:14.922>color <00:23:15.078>from <00:23:15.233>the <00:23:15.389>primary <00:23:15.545>swatch.

488
00:23:17.865 --> 00:23:20.685
<00:23:17.865>It <00:23:18.098>has <00:23:18.331>a <00:23:18.565>text <00:23:18.798>which <00:23:19.031>is <00:23:19.265>menu,

489
00:23:21.265 --> 00:23:24.325
<00:23:21.265>and <00:23:21.392>it <00:23:21.519>has <00:23:21.646>a <00:23:21.774>style <00:23:21.901>which <00:23:22.028>takes <00:23:22.155>the <00:23:22.283>style <00:23:22.410>of <00:23:22.537>the <00:23:22.665>theme.

490
00:23:24.385 --> 00:23:27.405
<00:23:24.385>The <00:23:24.585>theme <00:23:24.785>of <00:23:24.985>context <00:23:25.185>text <00:23:25.385>theme <00:23:25.585>headline <00:23:25.785>three,

491
00:23:28.425 --> 00:23:30.765
<00:23:28.425>and <00:23:28.580>then <00:23:28.736>it <00:23:28.891>has <00:23:29.047>a <00:23:29.202>buddy, <00:23:29.358>which <00:23:29.513>is <00:23:29.669>a <00:23:29.825>column

492
00:23:31.185 --> 00:23:33.285
<00:23:31.185>as <00:23:31.465>I <00:23:31.745>promised <00:23:32.024>in <00:23:32.304>my <00:23:32.585>talk.

493
00:23:33.625 --> 00:23:36.405
<00:23:33.625>And <00:23:33.825>in <00:23:34.025>the <00:23:34.225>column <00:23:34.425>you'll <00:23:34.625>have <00:23:34.825>a <00:23:35.025>picture.

494
00:23:37.875 --> 00:23:41.485
<00:23:37.875>This <00:23:38.075>picture <00:23:38.275>is <00:23:38.475>with <00:23:38.675>a <00:23:38.875>named <00:23:39.075>constructor <00:23:39.275>asset.

495
00:23:41.585 --> 00:23:45.205
<00:23:41.585>So <00:23:41.760>it's, <00:23:41.935>um, <00:23:42.110>there's <00:23:42.285>also <00:23:42.460>image <00:23:42.635>network, <00:23:42.810>for <00:23:42.985>instance,

496
00:23:45.205 --> 00:23:48.445
<00:23:45.205>that <00:23:45.332>takes <00:23:45.459>a <00:23:45.586>URL <00:23:45.714>and <00:23:45.841>will <00:23:45.968>take <00:23:46.095>a <00:23:46.223>picture <00:23:46.350>from <00:23:46.477>the <00:23:46.605>internet,

497
00:23:48.445 --> 00:23:50.885
<00:23:48.445>but <00:23:48.620>image <00:23:48.794>asset <00:23:48.970>gets <00:23:49.145>it <00:23:49.320>from <00:23:49.495>your <00:23:49.669>assets <00:23:49.845>folder.

498
00:23:51.665 --> 00:23:54.285
<00:23:51.665>Um, <00:23:51.840>so <00:23:52.014>this <00:23:52.190>is <00:23:52.365>a <00:23:52.540>path <00:23:52.715>to <00:23:52.889>the <00:23:53.065>picture.

499
00:23:54.955 --> 00:23:58.165
<00:23:54.955>Then <00:23:55.129>it <00:23:55.304>also <00:23:55.480>has <00:23:55.655>a <00:23:55.830>width, <00:23:56.004>which <00:23:56.179>media <00:23:56.355>query

500
00:23:58.185 --> 00:23:59.685
<00:23:58.185>of <00:23:58.455>context <00:23:58.725>gives <00:23:58.995>me <00:23:59.264>the <00:23:59.534>width

501
00:23:59.705 --> 00:24:02.645
<00:23:59.705>of <00:23:59.905>the <00:24:00.105>device <00:24:00.304>from <00:24:00.504>which <00:24:00.705>is <00:24:00.905>currently <00:24:01.105>opened.

502
00:24:03.225 --> 00:24:05.845
<00:24:03.225>It <00:24:03.399>has <00:24:03.574>half <00:24:03.750>of <00:24:03.925>the <00:24:04.100>size <00:24:04.274>of <00:24:04.449>the <00:24:04.625>widths.

503
00:24:06.385 --> 00:24:09.165
<00:24:06.385>And <00:24:06.560>this <00:24:06.735>tells <00:24:06.910>the <00:24:07.085>picture <00:24:07.260>how <00:24:07.435>it <00:24:07.610>should <00:24:07.785>stretch.

504
00:24:09.905 --> 00:24:12.885
<00:24:09.905>And <00:24:10.060>the <00:24:10.216>picture <00:24:10.371>as <00:24:10.527>I <00:24:10.682>promised, <00:24:10.838>uh, <00:24:10.993>it <00:24:11.149>would <00:24:11.305>happen,

505
00:24:13.305 --> 00:24:15.565
<00:24:13.305>is <00:24:13.445>wrapped <00:24:13.585>in <00:24:13.725>a <00:24:13.865>padding, <00:24:14.005>which <00:24:14.145>is <00:24:14.285>a <00:24:14.425>little <00:24:14.565>bit <00:24:14.705>weird

506
00:24:15.565 --> 00:24:17.085
<00:24:15.565>because <00:24:15.760>the <00:24:15.955>first <00:24:16.151>thing <00:24:16.346>you <00:24:16.542>see <00:24:16.737>when <00:24:16.933>you

507
00:24:17.085 --> 00:24:18.245
<00:24:17.085>look <00:24:17.346>down <00:24:17.607>here <00:24:17.868>is <00:24:18.129>padding.

508
00:24:18.295 --> 00:24:20.725
<00:24:18.295>While <00:24:18.470>the <00:24:18.645>important <00:24:18.820>part <00:24:18.995>is <00:24:19.170>of <00:24:19.345>course <00:24:19.520>the <00:24:19.695>widget

509
00:24:21.145 --> 00:24:23.365
<00:24:21.145>and <00:24:21.378>the <00:24:21.611>padding <00:24:21.845>is <00:24:22.078>just <00:24:22.311>wrapping <00:24:22.545>it

510
00:24:23.365 --> 00:24:27.365
<00:24:23.365>and <00:24:23.472>telling <00:24:23.580>it <00:24:23.688>to <00:24:23.795>have <00:24:23.903>70 <00:24:24.011>pixels <00:24:24.118>on <00:24:24.226>top <00:24:24.334>and <00:24:24.441>30 <00:24:24.549>on <00:24:24.657>on <00:24:24.765>bottom.

511
00:24:28.345 --> 00:24:31.885
<00:24:28.345>Ah, <00:24:28.500>so <00:24:28.656>it <00:24:28.811>has <00:24:28.967>delivered <00:24:29.122>now. <00:24:29.278>So <00:24:29.433>this <00:24:29.589>is <00:24:29.745>it.

512
00:24:31.905 --> 00:24:34.325
<00:24:31.905>We <00:24:32.045>have <00:24:32.185>the <00:24:32.325>menu <00:24:32.465>with <00:24:32.605>the <00:24:32.745>bar, <00:24:32.885>we <00:24:33.024>have <00:24:33.165>the <00:24:33.305>picture,

513
00:24:34.945 --> 00:24:36.205
<00:24:34.945>and <00:24:35.171>then <00:24:35.398>we <00:24:35.625>have <00:24:35.852>four <00:24:36.079>cards.

514
00:24:36.265 --> 00:24:38.485
<00:24:36.265>And <00:24:36.420>in <00:24:36.576>the <00:24:36.731>moment <00:24:36.887>this <00:24:37.042>cards <00:24:37.198>are <00:24:37.353>not <00:24:37.509>doing <00:24:37.665>anything

515
00:24:38.505 --> 00:24:39.965
<00:24:38.505>and <00:24:38.833>we <00:24:39.162>wanna <00:24:39.490>change <00:24:39.819>that.

516
00:24:41.665 --> 00:24:44.565
<00:24:41.665>So <00:24:41.840>first <00:24:42.014>off, <00:24:42.190>these <00:24:42.365>cards, <00:24:42.540>they're <00:24:42.715>all <00:24:42.889>the <00:24:43.065>same,

517
00:24:44.565 --> 00:24:45.925
<00:24:44.565>like <00:24:44.809>they <00:24:45.054>have <00:24:45.299>a <00:24:45.544>text <00:24:45.789>and,

518
00:24:45.985 --> 00:24:48.725
<00:24:45.985>and <00:24:46.140>inside <00:24:46.296>a <00:24:46.451>container <00:24:46.607>the <00:24:46.762>container <00:24:46.918>has <00:24:47.073>a <00:24:47.229>certain <00:24:47.385>size

519
00:24:48.865 --> 00:24:52.205
<00:24:48.865>and <00:24:49.020>some <00:24:49.176>petting, <00:24:49.331>and <00:24:49.487>the <00:24:49.642>cart <00:24:49.798>adds <00:24:49.953>the <00:24:50.109>nice <00:24:50.265>round

520
00:24:52.275 --> 00:24:53.645
<00:24:52.275>corners <00:24:52.686>and <00:24:53.097>the <00:24:53.508>elevation.

521
00:24:54.945 --> 00:24:58.925
<00:24:54.945>So, <00:24:55.145>um, <00:24:55.345>the <00:24:55.544>cart, <00:24:55.745>um, <00:24:55.945>we, <00:24:56.145>we <00:24:56.345>can

522
00:24:59.305 --> 00:25:01.725
<00:24:59.305>of <00:24:59.505>course <00:24:59.705>like <00:24:59.905>we <00:25:00.105>have <00:25:00.305>doubled <00:25:00.505>code <00:25:00.705>here,

523
00:25:01.745 --> 00:25:03.005
<00:25:01.745>so <00:25:01.934>we <00:25:02.123>can <00:25:02.312>get <00:25:02.501>rid <00:25:02.690>of <00:25:02.879>those.

524
00:25:03.985 --> 00:25:06.325
<00:25:03.985>Um, <00:25:04.218>this <00:25:04.451>is, <00:25:04.685>oh, <00:25:04.918>let's <00:25:05.151>start <00:25:05.385>here.

525
00:25:07.755 --> 00:25:12.725
<00:25:07.755>Okay, <00:25:07.910>so <00:25:08.066>we <00:25:08.221>create <00:25:08.377>a <00:25:08.532>function <00:25:08.688>which <00:25:08.843>is <00:25:08.999>build <00:25:09.155>card.

526
00:25:13.825 --> 00:25:17.205
<00:25:13.825>And <00:25:14.175>this <00:25:14.525>underscore <00:25:14.875>it <00:25:15.225>ensures

527
00:25:17.205 --> 00:25:20.365
<00:25:17.205>that <00:25:17.345>this <00:25:17.485>is <00:25:17.625>only <00:25:17.764>used <00:25:17.905>in <00:25:18.044>this, <00:25:18.185>uh, <00:25:18.324>in <00:25:18.465>this <00:25:18.605>file.

528
00:25:20.745 --> 00:25:24.245
<00:25:20.745>So <00:25:20.900>it's <00:25:21.056>a <00:25:21.211>bit <00:25:21.367>like <00:25:21.522>the <00:25:21.678>private <00:25:21.833>denominator <00:25:21.989>in <00:25:22.145>Android

529
00:25:24.795 --> 00:25:26.765
<00:25:24.795>will <00:25:25.075>go <00:25:25.355>outside <00:25:25.635>the <00:25:25.915>wi <00:25:26.195>function

530
00:25:26.905 --> 00:25:29.685
<00:25:26.905>and <00:25:27.371>write <00:25:27.838>the <00:25:28.305>definition

531
00:25:29.945 --> 00:25:32.245
<00:25:29.945>of <00:25:30.294>the, <00:25:30.645>of <00:25:30.995>this <00:25:31.345>function.

532
00:25:32.585 --> 00:25:35.805
<00:25:32.585>And <00:25:32.760>um, <00:25:32.935>when <00:25:33.110>it's <00:25:33.285>empty, <00:25:33.460>you <00:25:33.635>would <00:25:33.810>say <00:25:33.985>void,

533
00:25:35.865 --> 00:25:38.765
<00:25:35.865>but <00:25:36.020>we <00:25:36.176>want <00:25:36.331>this <00:25:36.487>one <00:25:36.642>to <00:25:36.798>give <00:25:36.953>back <00:25:37.109>a <00:25:37.265>widget

534
00:25:39.185 --> 00:25:40.805
<00:25:39.185>and <00:25:39.534>take <00:25:39.885>a <00:25:40.235>string <00:25:40.585>parameter.

535
00:25:42.745 --> 00:25:45.725
<00:25:42.745>So <00:25:43.024>now <00:25:43.304>it <00:25:43.584>throws <00:25:43.864>an <00:25:44.145>arrow

536
00:25:45.725 --> 00:25:47.565
<00:25:45.725>because <00:25:45.958>it <00:25:46.191>doesn't <00:25:46.425>return <00:25:46.658>a <00:25:46.891>widget <00:25:47.125>yet.

537
00:25:48.505 --> 00:25:52.605
<00:25:48.505>We <00:25:48.738>will <00:25:48.971>change <00:25:49.205>that. <00:25:49.438>So <00:25:49.671>we <00:25:49.905>can

538
00:25:54.075 --> 00:25:58.205
<00:25:54.075>copy <00:25:54.425>paste <00:25:54.775>this, <00:25:55.125>put <00:25:55.475>here.

539
00:26:00.905 --> 00:26:03.405
<00:26:00.905>And <00:26:01.185>this <00:26:01.465>needs <00:26:01.745>a <00:26:02.024>semi <00:26:02.305>column

540
00:26:04.945 --> 00:26:07.525
<00:26:04.945>and <00:26:05.411>the <00:26:05.878>title <00:26:06.345>should

541
00:26:08.035 --> 00:26:10.085
<00:26:08.035>replace <00:26:08.735>the <00:26:09.435>text.

542
00:26:11.955 --> 00:26:16.485
<00:26:11.955>This. <00:26:12.110>Okay, <00:26:12.266>so <00:26:12.421>now <00:26:12.577>we <00:26:12.732>can <00:26:12.888>get <00:26:13.043>rid <00:26:13.199>of <00:26:13.355>those

543
00:26:17.295 --> 00:26:19.445
<00:26:17.295>first, <00:26:17.495>pull <00:26:17.695>up, <00:26:17.895>put <00:26:18.095>a <00:26:18.295>list <00:26:18.495>view <00:26:18.695>in,

544
00:26:25.915 --> 00:26:28.735
<00:26:25.915>and <00:26:26.195>then <00:26:26.475>we <00:26:26.754>can <00:26:27.034>replace <00:26:27.315>them.

545
00:26:31.795 --> 00:26:35.335
<00:26:31.795>So <00:26:31.970>it <00:26:32.145>doesn't <00:26:32.320>matter <00:26:32.495>if <00:26:32.670>you <00:26:32.845>take <00:26:33.020>the, <00:26:33.195>um,

546
00:26:36.395 --> 00:26:38.135
<00:26:36.395>if <00:26:36.745>you <00:26:37.095>take <00:26:37.445>the <00:26:37.795>two,

547
00:26:40.535 --> 00:26:43.165
<00:26:40.535>I <00:26:40.690>dunno <00:26:40.846>the <00:26:41.001>name, <00:26:41.157>if <00:26:41.312>you <00:26:41.468>take <00:26:41.623>two <00:26:41.779>of <00:26:41.935>them

548
00:26:43.265 --> 00:26:46.285
<00:26:43.265>or <00:26:43.392>if <00:26:43.519>you <00:26:43.646>take <00:26:43.774>the <00:26:43.901>singular <00:26:44.028>ones, <00:26:44.155>sorry, <00:26:44.283>I <00:26:44.410>forgot <00:26:44.537>the <00:26:44.665>name.

549
00:26:47.435 --> 00:26:50.205
<00:26:47.435>Animate, <00:26:48.835>animate.

550
00:26:50.785 --> 00:26:53.805
<00:26:50.785>And <00:26:51.135>the <00:26:51.485>last <00:26:51.835>one, <00:26:52.185>transform.

551
00:26:55.565 --> 00:26:59.165
<00:26:55.565>Transform. <00:26:56.265>In <00:26:56.965>Germany,

552
00:26:59.385 --> 00:27:01.365
<00:26:59.385>we <00:26:59.665>call <00:26:59.945>them <00:27:00.225>foot <00:27:00.504>of <00:27:00.785>gi.

553
00:27:02.065 --> 00:27:06.525
<00:27:02.065>Gi <00:27:02.220>A <00:27:02.376>foot <00:27:02.531>of <00:27:02.687>little <00:27:02.842>no <00:27:02.998>feet <00:27:03.153>of <00:27:03.309>little <00:27:03.465>gi.

554
00:27:08.195 --> 00:27:10.845
<00:27:08.195>Anyways, <00:27:08.475>um, <00:27:08.754>now <00:27:09.034>nothing <00:27:09.314>has <00:27:09.595>changed,

555
00:27:10.875 --> 00:27:13.405
<00:27:10.875>like <00:27:11.015>the <00:27:11.155>app <00:27:11.295>will <00:27:11.435>still <00:27:11.575>look <00:27:11.715>the <00:27:11.855>same <00:27:11.995>when <00:27:12.135>I <00:27:12.275>hit

556
00:27:13.545 --> 00:27:14.605
<00:27:13.545>hot <00:27:13.863>restart <00:27:14.181>right <00:27:14.499>now.

557
00:27:16.145 --> 00:27:18.405
<00:27:16.145>Um, <00:27:16.845>that's <00:27:17.545>good.

558
00:27:19.505 --> 00:27:22.005
<00:27:19.505>Um, <00:27:19.705>here <00:27:19.905>on <00:27:20.105>the <00:27:20.305>right <00:27:20.505>side <00:27:20.705>you <00:27:20.905>will,

559
00:27:22.105 --> 00:27:23.805
<00:27:22.105>you <00:27:22.280>can <00:27:22.455>see <00:27:22.630>the <00:27:22.805>widget <00:27:22.980>tree <00:27:23.155>by <00:27:23.330>the <00:27:23.505>way.

560
00:27:24.185 --> 00:27:26.885
<00:27:24.185>So <00:27:24.534>you <00:27:24.885>can <00:27:25.235>off, <00:27:25.585>sorry.

561
00:27:28.105 --> 00:27:29.485
<00:27:28.105>So <00:27:28.353>you <00:27:28.601>can <00:27:28.850>see <00:27:29.098>the <00:27:29.347>layout

562
00:27:30.185 --> 00:27:34.805
<00:27:30.185>and <00:27:30.418>you <00:27:30.651>can <00:27:30.885>also <00:27:31.118>get <00:27:31.351>information <00:27:31.585>about

563
00:27:36.315 --> 00:27:37.725
<00:27:36.315>like <00:27:36.632>the <00:27:36.949>card <00:27:37.266>for <00:27:37.583>instance.

564
00:27:38.785 --> 00:27:42.325
<00:27:38.785>And, <00:27:38.985>um, <00:27:39.185>you <00:27:39.385>can <00:27:39.585>see <00:27:39.785>the <00:27:39.985>layout <00:27:40.185>here.

565
00:27:42.985 --> 00:27:46.005
<00:27:42.985>So <00:27:43.140>you <00:27:43.296>can <00:27:43.451>identify <00:27:43.607>how, <00:27:43.762>how <00:27:43.918>big <00:27:44.073>the <00:27:44.229>widgets <00:27:44.385>get.

566
00:27:47.195 --> 00:27:50.445
<00:27:47.195>This <00:27:47.335>is <00:27:47.475>a <00:27:47.615>nice <00:27:47.754>tool <00:27:47.895>if <00:27:48.034>you <00:27:48.175>have <00:27:48.314>some <00:27:48.455>UI <00:27:48.595>troubles

567
00:27:50.445 --> 00:27:51.845
<00:27:50.445>and <00:27:50.625>you <00:27:50.805>don't <00:27:50.985>know <00:27:51.165>where <00:27:51.345>they <00:27:51.525>stem <00:27:51.705>from,

568
00:27:51.985 --> 00:27:53.925
<00:27:51.985>but <00:27:52.264>we'll <00:27:52.544>disregard <00:27:52.824>it <00:27:53.104>for <00:27:53.385>now

569
00:27:53.925 --> 00:27:56.645
<00:27:53.925>because <00:27:54.125>not <00:27:54.325>yet <00:27:54.524>do <00:27:54.725>we <00:27:54.925>have <00:27:55.125>any <00:27:55.325>troubles.

570
00:27:57.545 --> 00:27:59.165
<00:27:57.545>So <00:27:57.895>when <00:27:58.245>you <00:27:58.595>click <00:27:58.945>option

571
00:27:59.225 --> 00:28:02.325
<00:27:59.225>and <00:27:59.365>enter, <00:27:59.504>you <00:27:59.645>can <00:27:59.784>open <00:27:59.925>this <00:28:00.064>menu, <00:28:00.205>which <00:28:00.344>is <00:28:00.485>really <00:28:00.625>handy.

572
00:28:02.905 --> 00:28:04.845
<00:28:02.905>Um, <00:28:03.105>you <00:28:03.305>can <00:28:03.504>wrap <00:28:03.705>it <00:28:03.905>with <00:28:04.105>a <00:28:04.305>widget.

573
00:28:05.305 --> 00:28:07.765
<00:28:05.305>And <00:28:05.480>we <00:28:05.655>want <00:28:05.830>this <00:28:06.005>to <00:28:06.180>be <00:28:06.355>a <00:28:06.530>dash <00:28:06.705>detector

574
00:28:09.115 --> 00:28:12.165
<00:28:09.115>that <00:28:09.395>will <00:28:09.675>take <00:28:09.955>an <00:28:10.235>ONTAP <00:28:10.515>event.

575
00:28:13.505 --> 00:28:17.205
<00:28:13.505>So <00:28:13.632>the <00:28:13.759>dash <00:28:13.886>detector <00:28:14.014>is <00:28:14.141>the <00:28:14.268>one <00:28:14.395>you <00:28:14.523>use <00:28:14.650>when <00:28:14.777>you <00:28:14.905>want

576
00:28:17.205 --> 00:28:20.885
<00:28:17.205>to <00:28:17.345>detect <00:28:17.485>any <00:28:17.625>events <00:28:17.764>like <00:28:17.905>swipe <00:28:18.044>drag, <00:28:18.185>it <00:28:18.324>has <00:28:18.465>so <00:28:18.605>many,

577
00:28:21.275 --> 00:28:23.605
<00:28:21.275>when <00:28:21.430>you <00:28:21.586>look <00:28:21.741>on <00:28:21.897>it, <00:28:22.052>you <00:28:22.208>can <00:28:22.363>see <00:28:22.519>it <00:28:22.675>has

578
00:28:23.745 --> 00:28:25.525
<00:28:23.745>so <00:28:23.978>many <00:28:24.211>events <00:28:24.445>you <00:28:24.678>can <00:28:24.911>listen <00:28:25.145>for.

579
00:28:26.635 --> 00:28:28.205
<00:28:26.635>It's <00:28:26.985>a <00:28:27.335>really <00:28:27.685>nice <00:28:28.035>tool.

580
00:28:28.585 --> 00:28:32.685
<00:28:28.585>And <00:28:28.865>here <00:28:29.145>you <00:28:29.425>initialize <00:28:29.705>the <00:28:29.985>font.

581
00:28:32.745 --> 00:28:34.165
<00:28:32.745>No, <00:28:33.064>you <00:28:33.384>define <00:28:33.703>it <00:28:34.023>here.

582
00:28:35.425 --> 00:28:40.245
<00:28:35.425>And <00:28:35.625>we <00:28:35.825>want <00:28:36.024>the <00:28:36.225>navigator <00:28:36.425>here, <00:28:36.625>Push <00:28:36.825>named

583
00:28:40.245 --> 00:28:42.245
<00:28:40.245>because <00:28:40.445>we <00:28:40.645>have <00:28:40.844>to <00:28:41.044>find <00:28:41.245>the <00:28:41.445>names <00:28:41.645>before

584
00:28:42.305 --> 00:28:44.965
<00:28:42.305>and <00:28:42.445>it <00:28:42.585>takes <00:28:42.725>the <00:28:42.865>content <00:28:43.005>and <00:28:43.145>it <00:28:43.285>takes <00:28:43.425>the <00:28:43.565>root <00:28:43.705>name.

585
00:28:45.305 --> 00:28:47.085
<00:28:45.305>And <00:28:45.505>the <00:28:45.705>root <00:28:45.905>name <00:28:46.105>should <00:28:46.305>be <00:28:46.505>a <00:28:46.705>string.

586
00:28:47.585 --> 00:28:50.165
<00:28:47.585>So <00:28:47.760>once <00:28:47.935>we've <00:28:48.110>defined <00:28:48.285>in <00:28:48.460>the <00:28:48.635>main <00:28:48.810>guard, <00:28:48.985>so

587
00:28:50.825 --> 00:28:53.125
<00:28:50.825>we <00:28:51.105>will <00:28:51.385>just <00:28:51.665>add <00:28:51.945>them <00:28:52.225>here.

588
00:29:09.785 --> 00:29:11.675
<00:29:09.785>There's <00:29:10.135>one <00:29:10.485>missing <00:29:10.835>like <00:29:11.185>this.

589
00:29:12.255 --> 00:29:15.995
<00:29:12.255>And <00:29:12.410>when <00:29:12.566>I <00:29:12.721>click <00:29:12.877>on <00:29:13.032>how <00:29:13.188>to <00:29:13.343>restart <00:29:13.499>now, <00:29:13.655>oh,

590
00:29:16.235 --> 00:29:17.875
<00:29:16.235>I <00:29:16.701>have <00:29:17.168>a <00:29:17.635>error.

591
00:29:18.815 --> 00:29:20.995
<00:29:18.815>No, <00:29:19.165>why? <00:29:19.515>Why, <00:29:19.865>why, <00:29:20.215>why?

592
00:29:22.555 --> 00:29:23.955
<00:29:22.555>I <00:29:22.807>don't <00:29:23.059>see <00:29:23.311>any <00:29:23.562>errors <00:29:23.815>here.

593
00:29:25.295 --> 00:29:28.435
<00:29:25.295>So <00:29:25.495>sometimes <00:29:25.695>when <00:29:25.895>this <00:29:26.095>happens, <00:29:26.295>it <00:29:26.495>just <00:29:26.695>means

594
00:29:30.665 --> 00:29:32.795
<00:29:30.665>That, <00:29:30.865>um, <00:29:31.065>you <00:29:31.264>need <00:29:31.465>to <00:29:31.665>reload <00:29:31.865>the <00:29:32.065>emulator.

595
00:29:32.815 --> 00:29:35.275
<00:29:32.815>But <00:29:32.970>here <00:29:33.126>it <00:29:33.281>seems <00:29:33.437>I <00:29:33.592>actually <00:29:33.748>have <00:29:33.903>made <00:29:34.059>an <00:29:34.215>error.

596
00:29:35.535 --> 00:29:38.795
<00:29:35.535>Ah, <00:29:35.735>okay, <00:29:35.935>see <00:29:36.135>there's <00:29:36.335>a <00:29:36.535>semicolon <00:29:36.735>missing <00:29:36.935>here.

597
00:29:39.735 --> 00:29:41.525
<00:29:39.735>So <00:29:40.014>now <00:29:40.294>let's <00:29:40.574>do <00:29:40.854>this <00:29:41.135>again.

598
00:29:42.625 --> 00:29:46.565
<00:29:42.625>And <00:29:42.741>let's <00:29:42.858>see <00:29:42.975>when <00:29:43.091>I <00:29:43.208>click <00:29:43.325>here, <00:29:43.441>yeah, <00:29:43.558>now <00:29:43.675>I <00:29:43.791>see <00:29:43.908>the <00:29:44.025>list,

599
00:29:46.595 --> 00:29:49.685
<00:29:46.595>your <00:29:46.735>screen, <00:29:46.875>and <00:29:47.015>when <00:29:47.155>I <00:29:47.295>click <00:29:47.435>here, <00:29:47.575>I <00:29:47.715>see <00:29:47.855>the <00:29:47.995>grid.

600
00:29:50.865 --> 00:29:53.925
<00:29:50.865>And <00:29:51.005>here <00:29:51.145>I <00:29:51.285>see <00:29:51.425>the <00:29:51.565>thing <00:29:51.705>that <00:29:51.845>I <00:29:51.985>want <00:29:52.125>to <00:29:52.265>animate.

601
00:29:54.785 --> 00:29:58.605
<00:29:54.785>And <00:29:54.925>here <00:29:55.065>I <00:29:55.205>see <00:29:55.345>the <00:29:55.485>transform <00:29:55.625>slider, <00:29:55.765>which <00:29:55.905>doesn't <00:29:56.045>work <00:29:56.185>yet,

602
00:29:58.865 --> 00:29:59.885
<00:29:58.865>but <00:29:59.324>we'll <00:29:59.783>zoom.

603
00:30:00.795 --> 00:30:05.165
<00:30:00.795>Okay, <00:30:00.995>cool. <00:30:01.195>So <00:30:01.395>let's <00:30:01.595>get <00:30:01.795>rid <00:30:01.995>of <00:30:02.195>those.

604
00:30:05.465 --> 00:30:08.445
<00:30:05.465>And <00:30:05.639>let's <00:30:05.814>have <00:30:05.990>a <00:30:06.165>look <00:30:06.340>at <00:30:06.514>the <00:30:06.689>list <00:30:06.865>view.

605
00:30:09.305 --> 00:30:12.765
<00:30:09.305>So <00:30:09.460>the <00:30:09.616>list <00:30:09.771>view, <00:30:09.927>as <00:30:10.082>you <00:30:10.238>can <00:30:10.393>see, <00:30:10.549>same <00:30:10.705>thing.

606
00:30:12.765 --> 00:30:16.085
<00:30:12.765>You <00:30:12.905>have <00:30:13.045>also <00:30:13.185>a <00:30:13.325>stateful <00:30:13.465>widget. <00:30:13.605>This <00:30:13.745>is <00:30:13.885>calling <00:30:14.025>a <00:30:14.165>state.

607
00:30:16.825 --> 00:30:20.565
<00:30:16.825>And <00:30:16.941>here <00:30:17.058>I <00:30:17.175>have <00:30:17.291>created <00:30:17.408>a <00:30:17.525>list, <00:30:17.641>but <00:30:17.758>I'm <00:30:17.875>not <00:30:17.991>using <00:30:18.108>it <00:30:18.225>yet.

608
00:30:20.755 --> 00:30:22.165
<00:30:20.755>It's <00:30:21.008>just <00:30:21.262>a <00:30:21.516>list <00:30:21.770>of <00:30:22.024>strings.

609
00:30:23.425 --> 00:30:26.925
<00:30:23.425>And <00:30:23.600>here <00:30:23.774>the <00:30:23.950>scaffold <00:30:24.125>we <00:30:24.300>have <00:30:24.475>also <00:30:24.649>similar <00:30:24.825>thing,

610
00:30:26.925 --> 00:30:29.045
<00:30:26.925>we <00:30:27.080>have <00:30:27.236>a <00:30:27.391>background <00:30:27.547>color, <00:30:27.702>we <00:30:27.858>have <00:30:28.013>an <00:30:28.169>app <00:30:28.325>bar

611
00:30:29.075 --> 00:30:30.445
<00:30:29.075>with <00:30:29.383>a <00:30:29.691>text <00:30:29.999>list <00:30:30.308>view,

612
00:30:31.265 --> 00:30:33.045
<00:30:31.265>and <00:30:31.498>we <00:30:31.731>have <00:30:31.965>a <00:30:32.198>column <00:30:32.431>with <00:30:32.665>several

613
00:30:33.365 --> 00:30:34.445
<00:30:33.365>children, <00:30:33.689>which <00:30:34.013>are <00:30:34.337>widgets.

614
00:30:35.025 --> 00:30:39.565
<00:30:35.025>And <00:30:35.165>the <00:30:35.305>first <00:30:35.445>one <00:30:35.585>is <00:30:35.725>the <00:30:35.865>list, <00:30:36.005>your <00:30:36.145>header, <00:30:36.285>this <00:30:36.425>one.

615
00:30:40.665 --> 00:30:44.845
<00:30:40.665>And <00:30:40.865>after <00:30:41.065>that <00:30:41.264>we <00:30:41.465>have <00:30:41.665>three <00:30:41.865>list <00:30:42.065>items

616
00:30:44.955 --> 00:30:46.125
<00:30:44.955>that <00:30:45.218>want <00:30:45.481>to <00:30:45.744>be <00:30:46.008>replaced.

617
00:30:47.625 --> 00:30:51.325
<00:30:47.625>So <00:30:47.752>here <00:30:47.879>I <00:30:48.006>want <00:30:48.134>to, <00:30:48.261>I <00:30:48.388>want <00:30:48.515>to <00:30:48.643>show <00:30:48.770>the <00:30:48.897>list, <00:30:49.025>like,

618
00:30:51.585 --> 00:30:54.125
<00:30:51.585>and <00:30:51.725>every <00:30:51.865>string <00:30:52.005>I <00:30:52.145>want <00:30:52.285>to <00:30:52.425>show <00:30:52.565>on <00:30:52.705>one <00:30:52.845>list <00:30:52.985>items.

619
00:30:54.185 --> 00:30:55.605
<00:30:54.185>So <00:30:54.440>I <00:30:54.696>want <00:30:54.951>five <00:30:55.207>list <00:30:55.463>items.

620
00:30:56.985 --> 00:30:58.325
<00:30:56.985>So <00:30:57.387>it's <00:30:57.789>pretty <00:30:58.191>standard,

621
00:30:58.465 --> 00:31:00.085
<00:30:58.465>but <00:30:58.639>I'm <00:30:58.814>just <00:30:58.990>doing <00:30:59.165>it <00:30:59.340>so <00:30:59.514>you <00:30:59.689>can <00:30:59.865>see

622
00:31:00.105 --> 00:31:03.245
<00:31:00.105>how <00:31:00.305>stuff <00:31:00.505>like <00:31:00.705>this <00:31:00.905>works, <00:31:01.105>works <00:31:01.305>with <00:31:01.505>guard.

623
00:31:04.625 --> 00:31:08.005
<00:31:04.625>So, <00:31:04.752>um, <00:31:04.879>my <00:31:05.006>list <00:31:05.134>lengths <00:31:05.261>now, <00:31:05.388>it'll <00:31:05.515>go <00:31:05.643>through <00:31:05.770>all <00:31:05.897>the <00:31:06.025>list.

624
00:31:08.745 --> 00:31:11.365
<00:31:08.745>And <00:31:08.900>now <00:31:09.056>when <00:31:09.211>I <00:31:09.367>want <00:31:09.522>to <00:31:09.678>replace <00:31:09.833>the <00:31:09.989>text <00:31:10.145>here,

625
00:31:13.205 --> 00:31:14.725
<00:31:13.205>I <00:31:13.433>will <00:31:13.660>just <00:31:13.889>write <00:31:14.117>it <00:31:14.344>like <00:31:14.572>this.

626
00:31:17.225 --> 00:31:19.445
<00:31:17.225>So <00:31:17.399>this <00:31:17.574>is <00:31:17.750>how <00:31:17.925>a <00:31:18.100>list <00:31:18.274>view <00:31:18.449>builder <00:31:18.625>works

627
00:31:20.105 --> 00:31:24.885
<00:31:20.105>and <00:31:20.280>yeah, <00:31:20.455>okay, <00:31:20.630>so <00:31:20.805>let's <00:31:20.980>check <00:31:21.155>this <00:31:21.330>out <00:31:21.505>first.

628
00:31:26.835 --> 00:31:29.805
<00:31:26.835>Okay, <00:31:27.035>this <00:31:27.235>works. <00:31:27.435>Hello <00:31:27.635>world, <00:31:27.835>how <00:31:28.035>are <00:31:28.235>you?

629
00:31:30.625 --> 00:31:33.725
<00:31:30.625>So <00:31:30.858>underneath <00:31:31.091>you <00:31:31.325>see <00:31:31.558>a <00:31:31.791>pink <00:31:32.025>button.

630
00:31:33.785 --> 00:31:35.605
<00:31:33.785>And <00:31:33.960>the <00:31:34.135>reason <00:31:34.310>you <00:31:34.485>see <00:31:34.660>a <00:31:34.835>pink <00:31:35.010>button <00:31:35.185>is

631
00:31:35.605 --> 00:31:37.045
<00:31:35.605>because <00:31:35.929>the <00:31:36.253>platform <00:31:36.577>is <00:31:36.901>iOS.

632
00:31:37.625 --> 00:31:40.685
<00:31:37.625>So <00:31:37.800>I'm <00:31:37.975>not <00:31:38.150>gonna <00:31:38.325>open <00:31:38.500>the <00:31:38.675>Android <00:31:38.850>emulator <00:31:39.025>now

633
00:31:40.685 --> 00:31:43.285
<00:31:40.685>because <00:31:40.840>sometimes <00:31:40.996>it <00:31:41.151>doesn't <00:31:41.307>work <00:31:41.462>and <00:31:41.618>it <00:31:41.773>takes <00:31:41.929>super <00:31:42.085>long.

634
00:31:43.345 --> 00:31:47.205
<00:31:43.345>So <00:31:43.472>you'll <00:31:43.599>just <00:31:43.726>have <00:31:43.854>to <00:31:43.981>imagine <00:31:44.108>with <00:31:44.235>me. <00:31:44.363>So <00:31:44.490>platform <00:31:44.617>is <00:31:44.745>iOS.

635
00:31:47.205 --> 00:31:49.405
<00:31:47.205>This <00:31:47.345>is <00:31:47.485>a <00:31:47.625>nice <00:31:47.764>way <00:31:47.905>to <00:31:48.044>write <00:31:48.185>an <00:31:48.324>if <00:31:48.465>out <00:31:48.605>statement.

636
00:31:49.405 --> 00:31:51.405
<00:31:49.405>And <00:31:49.580>dart, <00:31:49.754>by <00:31:49.930>the <00:31:50.105>way, <00:31:50.280>I <00:31:50.455>really <00:31:50.629>like <00:31:50.805>it.

637
00:31:51.945 --> 00:31:54.365
<00:31:51.945>Uh, <00:31:52.178>so <00:31:52.411>you <00:31:52.645>say <00:31:52.878>platform <00:31:53.111>is <00:31:53.345>iOS,

638
00:31:54.365 --> 00:31:57.605
<00:31:54.365>and <00:31:54.505>if <00:31:54.645>this <00:31:54.785>is <00:31:54.925>true <00:31:55.065>question <00:31:55.205>mark, <00:31:55.345>then <00:31:55.485>you'll <00:31:55.625>show <00:31:55.765>this,

639
00:31:57.605 --> 00:31:59.325
<00:31:57.605>which <00:31:57.955>is <00:31:58.305>a <00:31:58.655>Cupertino <00:31:59.005>button.

640
00:31:59.635 --> 00:32:01.165
<00:31:59.635>This <00:31:59.831>is <00:32:00.028>what <00:32:00.225>we <00:32:00.421>are <00:32:00.618>seeing <00:32:00.815>right <00:32:01.012>now

641
00:32:01.165 --> 00:32:05.125
<00:32:01.165>because <00:32:01.305>the <00:32:01.445>platform <00:32:01.585>is <00:32:01.725>iOS <00:32:01.865>in <00:32:02.004>pink, <00:32:02.145>which <00:32:02.284>says <00:32:02.425>iOS <00:32:02.565>button.

642
00:32:06.185 --> 00:32:10.365
<00:32:06.185>And <00:32:06.360>if <00:32:06.534>it's <00:32:06.710>not <00:32:06.885>true, <00:32:07.060>you'll <00:32:07.235>have <00:32:07.409>this <00:32:07.585>sign.

643
00:32:10.915 --> 00:32:13.485
<00:32:10.915>Then <00:32:11.115>you <00:32:11.315>will <00:32:11.514>show <00:32:11.715>instead <00:32:11.915>an <00:32:12.115>elevated <00:32:12.315>button,

644
00:32:13.485 --> 00:32:16.925
<00:32:13.485>which <00:32:13.640>is <00:32:13.796>an <00:32:13.951>Android <00:32:14.107>button, <00:32:14.262>uh, <00:32:14.418>which <00:32:14.573>says <00:32:14.729>Android <00:32:14.885>button.

645
00:32:17.025 --> 00:32:18.885
<00:32:17.025>And <00:32:17.200>it <00:32:17.375>will, <00:32:17.550>because <00:32:17.725>it <00:32:17.900>doesn't <00:32:18.075>have <00:32:18.250>any <00:32:18.425>color.

646
00:32:18.935 --> 00:32:20.845
<00:32:18.935>It'll <00:32:19.168>be <00:32:19.401>green <00:32:19.635>like <00:32:19.868>the <00:32:20.101>primary <00:32:20.335>swatch.

647
00:32:22.145 --> 00:32:25.885
<00:32:22.145>So <00:32:22.285>if <00:32:22.425>you <00:32:22.565>open <00:32:22.705>this <00:32:22.845>on <00:32:22.985>Android, <00:32:23.125>this <00:32:23.264>button <00:32:23.405>will <00:32:23.545>change.

648
00:32:27.585 --> 00:32:31.725
<00:32:27.585>So, <00:32:27.712>um, <00:32:27.839>let's <00:32:27.966>just <00:32:28.094>have <00:32:28.221>a <00:32:28.348>quick <00:32:28.475>view <00:32:28.603>at <00:32:28.730>the <00:32:28.857>grit <00:32:28.985>view.

649
00:32:33.755 --> 00:32:36.005
<00:32:33.755>Just <00:32:33.930>wanted <00:32:34.105>to <00:32:34.280>to <00:32:34.455>show <00:32:34.630>you <00:32:34.805>how <00:32:34.980>that <00:32:35.155>looks.

650
00:32:36.105 --> 00:32:40.365
<00:32:36.105>And <00:32:36.232>I <00:32:36.359>wanted <00:32:36.486>to <00:32:36.614>show <00:32:36.741>you <00:32:36.868>like <00:32:36.995>the <00:32:37.123>how <00:32:37.250>many <00:32:37.377>cool <00:32:37.505>icons,

651
00:32:40.905 --> 00:32:43.125
<00:32:40.905>um, <00:32:41.185>we <00:32:41.465>have <00:32:41.745>here, <00:32:42.024>like <00:32:42.305>already

652
00:32:43.715 --> 00:32:46.405
<00:32:43.715>automatically <00:32:44.064>in <00:32:44.415>this <00:32:44.764>icon <00:32:45.115>list.

653
00:32:46.945 --> 00:32:48.405
<00:32:46.945>It <00:32:47.207>saves <00:32:47.470>me <00:32:47.733>so <00:32:47.996>much <00:32:48.259>time.

654
00:32:49.265 --> 00:32:53.165
<00:32:49.265>So, <00:32:49.440>um, <00:32:49.615>just <00:32:49.790>to <00:32:49.965>add <00:32:50.140>location, <00:32:50.315>you <00:32:50.490>have, <00:32:50.665>um,

655
00:32:53.705 --> 00:32:57.805
<00:32:53.705>all <00:32:53.845>these <00:32:53.985>icons, <00:32:54.125>um, <00:32:54.264>in <00:32:54.405>a <00:32:54.544>lot <00:32:54.685>of <00:32:54.824>like <00:32:54.965>different <00:32:55.105>ways.

656
00:32:58.515 --> 00:33:01.085
<00:32:58.515>Sometimes <00:32:58.748>very <00:32:58.981>weird <00:32:59.215>icons <00:32:59.448>are <00:32:59.681>missing <00:32:59.915>though,

657
00:33:01.225 --> 00:33:05.445
<00:33:01.225>but, <00:33:01.341>um, <00:33:01.458>um, <00:33:01.574>mostly <00:33:01.691>most <00:33:01.808>of <00:33:01.925>the <00:33:02.041>icons <00:33:02.158>can <00:33:02.274>be <00:33:02.391>found <00:33:02.508>in <00:33:02.625>there.

658
00:33:06.225 --> 00:33:07.805
<00:33:06.225>So <00:33:06.504>here <00:33:06.784>we <00:33:07.064>do <00:33:07.344>the <00:33:07.625>same.

659
00:33:08.245 --> 00:33:09.645
<00:33:08.245>I <00:33:08.455>just <00:33:08.665>wanted <00:33:08.875>to <00:33:09.085>quickly <00:33:09.295>show <00:33:09.504>you,

660
00:33:09.645 --> 00:33:10.885
<00:33:09.645>so <00:33:09.831>you <00:33:10.017>have <00:33:10.203>the <00:33:10.389>grid <00:33:10.575>view <00:33:10.761>builder,

661
00:33:11.535 --> 00:33:13.085
<00:33:11.535>which <00:33:11.767>is <00:33:12.000>like <00:33:12.232>the <00:33:12.465>list <00:33:12.697>view <00:33:12.930>builder.

662
00:33:13.585 --> 00:33:16.325
<00:33:13.585>Um, <00:33:13.785>it <00:33:13.985>has, <00:33:14.185>um, <00:33:14.385>the <00:33:14.585>grid <00:33:14.785>delegate <00:33:14.985>though,

663
00:33:16.615 --> 00:33:19.045
<00:33:16.615>where <00:33:16.790>you <00:33:16.965>can <00:33:17.140>define <00:33:17.315>like <00:33:17.490>how <00:33:17.665>big <00:33:17.840>they <00:33:18.015>are,

664
00:33:19.465 --> 00:33:22.245
<00:33:19.465>how <00:33:19.639>the <00:33:19.814>cross <00:33:19.990>access <00:33:20.165>spacing <00:33:20.340>should <00:33:20.514>be, <00:33:20.689>et <00:33:20.865>cetera.

665
00:33:23.825 --> 00:33:26.525
<00:33:23.825>And <00:33:24.025>now <00:33:24.225>let's <00:33:24.425>go <00:33:24.625>to <00:33:24.825>the <00:33:25.025>animate <00:33:25.225>view.

666
00:33:27.675 --> 00:33:31.005
<00:33:27.675>What <00:33:27.802>I <00:33:27.929>want <00:33:28.056>to <00:33:28.184>do <00:33:28.311>at <00:33:28.438>the <00:33:28.565>animate <00:33:28.693>view <00:33:28.820>is <00:33:28.947>animate <00:33:29.075>this.

667
00:33:31.525 --> 00:33:33.685
<00:33:31.525>I <00:33:31.665>want, <00:33:31.805>when <00:33:31.945>I <00:33:32.085>click <00:33:32.225>on <00:33:32.365>this <00:33:32.505>button, <00:33:32.645>I <00:33:32.785>want <00:33:32.925>this

668
00:33:34.385 --> 00:33:35.485
<00:33:34.385>to <00:33:34.879>fade <00:33:35.375>away.

669
00:33:36.225 --> 00:33:40.165
<00:33:36.225>So, <00:33:36.399>um, <00:33:36.574>this <00:33:36.750>is <00:33:36.925>where <00:33:37.100>the <00:33:37.274>really <00:33:37.449>cool <00:33:37.625>animations

670
00:33:40.165 --> 00:33:41.405
<00:33:40.165>of <00:33:40.537>flutter <00:33:40.908>come <00:33:41.281>in.

671
00:33:41.985 --> 00:33:45.885
<00:33:41.985>So <00:33:42.159>we <00:33:42.334>have <00:33:42.510>the <00:33:42.685>column <00:33:42.860>here <00:33:43.034>with <00:33:43.209>the <00:33:43.385>image

672
00:33:46.145 --> 00:33:48.045
<00:33:46.145>and <00:33:46.345>all <00:33:46.545>the <00:33:46.745>text <00:33:46.945>that <00:33:47.145>you <00:33:47.345>can <00:33:47.545>see.

673
00:33:48.665 --> 00:33:51.805
<00:33:48.665>Um, <00:33:48.805>and <00:33:48.945>here <00:33:49.085>by <00:33:49.225>the <00:33:49.365>way, <00:33:49.504>is <00:33:49.645>a <00:33:49.784>floating <00:33:49.925>action <00:33:50.065>button,

674
00:33:51.805 --> 00:33:55.885
<00:33:51.805>which <00:33:51.945>is, <00:33:52.085>which <00:33:52.225>is <00:33:52.365>an <00:33:52.505>attribute <00:33:52.645>of, <00:33:52.785>um, <00:33:52.925>of <00:33:53.065>the <00:33:53.205>scaffold.

675
00:33:56.465 --> 00:33:58.245
<00:33:56.465>And <00:33:56.931>it's <00:33:57.398>already <00:33:57.865>predefined.

676
00:33:58.265 --> 00:34:00.205
<00:33:58.265>You <00:33:58.440>just <00:33:58.615>need <00:33:58.790>to <00:33:58.965>give <00:33:59.140>an <00:33:59.315>icon <00:33:59.490>into <00:33:59.665>it.

677
00:34:01.185 --> 00:34:04.005
<00:34:01.185>So <00:34:01.465>when <00:34:01.745>I <00:34:02.024>have <00:34:02.304>the, <00:34:02.585>um,

678
00:34:04.585 --> 00:34:09.285
<00:34:04.585>so <00:34:04.740>when <00:34:04.896>I <00:34:05.051>wrap <00:34:05.207>the <00:34:05.362>column <00:34:05.518>button <00:34:05.673>in <00:34:05.829>the, <00:34:05.985>um,

679
00:34:09.995 --> 00:34:11.685
<00:34:09.995>wait, <00:34:10.228>I <00:34:10.461>need <00:34:10.694>to <00:34:10.928>press <00:34:11.161>the <00:34:11.395>option

680
00:34:11.685 --> 00:34:15.565
<00:34:11.685>menu <00:34:12.384>like <00:34:13.085>this.

681
00:34:16.145 --> 00:34:18.405
<00:34:16.145>Uh, <00:34:16.344>when <00:34:16.545>I <00:34:16.745>wrap <00:34:16.945>this <00:34:17.145>into <00:34:17.344>a <00:34:17.545>widget,

682
00:34:19.685 --> 00:34:22.245
<00:34:19.685>I <00:34:19.918>give <00:34:20.151>it <00:34:20.384>the <00:34:20.618>animated <00:34:20.851>opacity <00:34:21.085>widget.

683
00:34:24.145 --> 00:34:25.525
<00:34:24.145>And <00:34:24.455>this <00:34:24.766>throws <00:34:25.076>an <00:34:25.387>arrow

684
00:34:25.525 --> 00:34:28.885
<00:34:25.525>because, <00:34:25.725>um, <00:34:25.925>it <00:34:26.125>needs <00:34:26.325>to <00:34:26.525>have <00:34:26.725>an <00:34:26.925>opacity

685
00:34:31.865 --> 00:34:34.005
<00:34:31.864>and <00:34:32.098>it <00:34:32.331>needs <00:34:32.564>to <00:34:32.798>have <00:34:33.031>a <00:34:33.264>duration.

686
00:34:40.465 --> 00:34:44.165
<00:34:40.465>Um, <00:34:40.665>the <00:34:40.865>duration <00:34:41.065>will <00:34:41.265>be, <00:34:41.465>um, <00:34:41.665>one <00:34:41.865>second.

687
00:34:44.495 --> 00:34:49.205
<00:34:44.495>Let's <00:34:44.622>do <00:34:44.749>one <00:34:44.876>second. <00:34:45.004>And <00:34:45.131>now <00:34:45.258>for <00:34:45.385>this <00:34:45.513>to <00:34:45.640>change, <00:34:45.767>we <00:34:45.895>need

688
00:34:49.485 --> 00:34:52.205
<00:34:49.485>to, <00:34:49.835>um, <00:34:50.185>create <00:34:50.535>a <00:34:50.885>rule

689
00:34:55.105 --> 00:34:57.295
<00:34:55.105>which <00:34:55.385>will <00:34:55.665>be <00:34:55.945>called <00:34:56.225>button <00:34:56.505>clicked,

690
00:34:59.795 --> 00:35:02.015
<00:34:59.795>and <00:35:00.075>it <00:35:00.355>needs <00:35:00.635>to <00:35:00.915>be <00:35:01.195>initialized,

691
00:35:02.075 --> 00:35:04.135
<00:35:02.075>so <00:35:02.308>it'll <00:35:02.541>be <00:35:02.774>false <00:35:03.008>in <00:35:03.241>the <00:35:03.475>beginning.

692
00:35:07.475 --> 00:35:10.375
<00:35:07.475>And <00:35:07.674>so <00:35:07.875>here <00:35:08.075>you <00:35:08.275>do <00:35:08.475>a <00:35:08.674>button <00:35:08.875>clicked.

693
00:35:11.555 --> 00:35:15.695
<00:35:11.555>If <00:35:11.710>the <00:35:11.866>button <00:35:12.021>was <00:35:12.177>clicked, <00:35:12.332>it <00:35:12.488>should <00:35:12.643>be <00:35:12.799>not <00:35:12.955>visible,

694
00:35:16.405 --> 00:35:19.015
<00:35:16.405>otherwise <00:35:16.638>it <00:35:16.871>should <00:35:17.105>be <00:35:17.338>visible <00:35:17.571>the <00:35:17.805>press,

695
00:35:19.115 --> 00:35:20.575
<00:35:19.115>it <00:35:19.377>goes <00:35:19.640>from <00:35:19.903>zero <00:35:20.166>to <00:35:20.428>one.

696
00:35:21.245 --> 00:35:23.175
<00:35:21.245>Okay, <00:35:21.420>so <00:35:21.595>now <00:35:21.770>we <00:35:21.944>need <00:35:22.120>to <00:35:22.295>change <00:35:22.470>button <00:35:22.645>click,

697
00:35:23.825 --> 00:35:26.575
<00:35:23.825>which <00:35:23.980>we <00:35:24.136>can <00:35:24.291>do <00:35:24.447>here <00:35:24.602>inside <00:35:24.758>the <00:35:24.913>floating <00:35:25.069>action <00:35:25.225>button,

698
00:35:26.575 --> 00:35:28.015
<00:35:26.575>because <00:35:26.834>here <00:35:27.093>we <00:35:27.352>have <00:35:27.611>a <00:35:27.871>function.

699
00:35:29.035 --> 00:35:31.415
<00:35:29.035>So <00:35:29.210>we <00:35:29.384>will <00:35:29.560>check <00:35:29.734>here <00:35:29.910>if <00:35:30.085>button <00:35:30.259>is <00:35:30.435>clicked

700
00:35:31.435 --> 00:35:33.895
<00:35:31.435>and <00:35:31.634>if <00:35:31.835>button <00:35:32.035>is <00:35:32.235>clicked, <00:35:32.435>it's <00:35:32.634>true, <00:35:32.835>then

701
00:35:35.395 --> 00:35:37.965
<00:35:35.395>Button <00:35:35.745>clicked <00:35:36.095>should <00:35:36.445>be <00:35:36.795>false.

702
00:35:39.585 --> 00:35:43.205
<00:35:39.585>And <00:35:39.935>otherwise <00:35:40.285>if <00:35:40.635>button <00:35:40.985>clicked

703
00:35:44.145 --> 00:35:47.045
<00:35:44.145>is <00:35:44.378>false <00:35:44.611>button <00:35:44.845>clicked <00:35:45.078>should <00:35:45.311>be <00:35:45.545>true.

704
00:35:48.225 --> 00:35:50.725
<00:35:48.225>But <00:35:48.424>for <00:35:48.625>this <00:35:48.825>to <00:35:49.025>work, <00:35:49.225>what <00:35:49.424>I <00:35:49.625>said

705
00:35:50.725 --> 00:35:52.925
<00:35:50.725>before, <00:35:50.924>we <00:35:51.125>do <00:35:51.325>need <00:35:51.525>to <00:35:51.725>call <00:35:51.924>set <00:35:52.125>stage.

706
00:35:54.675 --> 00:35:57.415
<00:35:54.675>You <00:35:54.908>can <00:35:55.141>either <00:35:55.375>place <00:35:55.608>this <00:35:55.841>inside <00:35:56.075>here

707
00:35:57.635 --> 00:35:59.215
<00:35:57.635>or <00:35:57.868>you <00:35:58.101>can <00:35:58.335>also <00:35:58.568>place <00:35:58.801>it <00:35:59.035>before.

708
00:35:59.395 --> 00:36:01.215
<00:35:59.395>And <00:35:59.628>then <00:35:59.861>just <00:36:00.095>call <00:36:00.328>set <00:36:00.561>state <00:36:00.795>after.

709
00:36:01.715 --> 00:36:06.535
<00:36:01.715>That's <00:36:01.855>both <00:36:01.995>a <00:36:02.135>possibility. <00:36:02.275>So <00:36:02.415>now <00:36:02.555>let's <00:36:02.695>see <00:36:02.835>if <00:36:02.975>it <00:36:03.115>works.

710
00:36:07.635 --> 00:36:11.615
<00:36:07.635>And <00:36:07.775>I <00:36:07.915>click <00:36:08.055>on <00:36:08.195>this <00:36:08.335>button, <00:36:08.475>it <00:36:08.615>fades <00:36:08.755>and <00:36:08.895>it <00:36:09.035>returns

711
00:36:12.115 --> 00:36:15.495
<00:36:12.115>and <00:36:12.254>it <00:36:12.395>fades <00:36:12.535>and <00:36:12.674>it <00:36:12.814>returns <00:36:12.955>and <00:36:13.095>it <00:36:13.234>looks <00:36:13.375>really <00:36:13.515>nice.

712
00:36:17.085 --> 00:36:20.495
<00:36:17.085>Okay, <00:36:17.240>last <00:36:17.396>thing <00:36:17.551>before <00:36:17.707>we <00:36:17.862>go <00:36:18.018>back <00:36:18.173>to <00:36:18.329>the <00:36:18.485>presentation.

713
00:36:20.555 --> 00:36:22.015
<00:36:20.555>We <00:36:20.817>want <00:36:21.080>to <00:36:21.343>make <00:36:21.606>this <00:36:21.868>work.

714
00:36:22.235 --> 00:36:24.055
<00:36:22.235>So <00:36:22.515>this <00:36:22.795>is <00:36:23.075>a <00:36:23.355>transform <00:36:23.635>widget

715
00:36:24.125 --> 00:36:26.255
<00:36:24.125>because <00:36:24.300>we <00:36:24.475>don't <00:36:24.650>have <00:36:24.825>a <00:36:25.000>lot <00:36:25.175>of <00:36:25.350>time <00:36:25.525>left.

716
00:36:26.455 --> 00:36:28.175
<00:36:26.455>I <00:36:26.654>will <00:36:26.855>just <00:36:27.055>go <00:36:27.255>really <00:36:27.455>quickly <00:36:27.654>about <00:36:27.855>it.

717
00:36:28.315 --> 00:36:31.175
<00:36:28.315>So <00:36:28.515>there's <00:36:28.715>a <00:36:28.915>double, <00:36:29.115>there's <00:36:29.315>a <00:36:29.515>rotation <00:36:29.715>factor

718
00:36:31.245 --> 00:36:33.095
<00:36:31.245>that <00:36:31.711>the <00:36:32.178>transform <00:36:32.645>takes

719
00:36:33.395 --> 00:36:37.375
<00:36:33.395>and, <00:36:33.595>um, <00:36:33.795>we <00:36:33.995>want <00:36:34.195>to <00:36:34.395>transform <00:36:34.595>this <00:36:34.795>image,

720
00:36:37.515 --> 00:36:41.735
<00:36:37.515>the <00:36:37.690>image <00:36:37.865>asset, <00:36:38.040>the <00:36:38.214>asset <00:36:38.390>picks <00:36:38.565>cuckoo, <00:36:38.740>we <00:36:38.915>want

721
00:36:41.735 --> 00:36:44.255
<00:36:41.735>to <00:36:41.910>transform <00:36:42.085>it <00:36:42.260>and <00:36:42.435>turn <00:36:42.610>it <00:36:42.785>around <00:36:42.960>its <00:36:43.135>axis.

722
00:36:44.595 --> 00:36:48.815
<00:36:44.595>So <00:36:44.734>this <00:36:44.875>is <00:36:45.015>what, <00:36:45.154>what <00:36:45.294>these <00:36:45.435>things <00:36:45.575>here, <00:36:45.714>um, <00:36:45.855>uh, <00:36:45.995>specify

723
00:36:50.475 --> 00:36:53.135
<00:36:50.475>and <00:36:50.755>then <00:36:51.035>you <00:36:51.315>have <00:36:51.595>the <00:36:51.875>offset

724
00:36:54.195 --> 00:36:57.615
<00:36:54.195>and, <00:36:54.395>um, <00:36:54.595>this <00:36:54.795>one <00:36:54.995>gets, <00:36:55.195>uh, <00:36:55.395>yeah, <00:36:55.595>okay.

725
00:36:57.675 --> 00:37:00.935
<00:36:57.675>So <00:36:57.830>the <00:36:57.986>offset, <00:36:58.141>uh, <00:36:58.297>tells <00:36:58.452>you <00:36:58.608>where <00:36:58.763>the <00:36:58.919>access <00:36:59.075>is

726
00:37:01.195 --> 00:37:03.535
<00:37:01.195>and <00:37:01.350>the <00:37:01.506>rotation <00:37:01.661>factor <00:37:01.817>is <00:37:01.972>the <00:37:02.128>one <00:37:02.283>that <00:37:02.439>should <00:37:02.595>change.

727
00:37:03.995 --> 00:37:08.055
<00:37:03.995>So <00:37:04.170>to <00:37:04.345>set <00:37:04.520>this <00:37:04.694>dynamically, <00:37:04.870>like <00:37:05.045>first <00:37:05.220>to <00:37:05.395>see

728
00:37:08.055 --> 00:37:10.575
<00:37:08.055>that <00:37:08.288>the <00:37:08.521>slider <00:37:08.754>is <00:37:08.988>moving, <00:37:09.221>you <00:37:09.455>need

729
00:37:10.575 --> 00:37:13.895
<00:37:10.575>to <00:37:10.750>change <00:37:10.924>its <00:37:11.100>value <00:37:11.274>according <00:37:11.450>to <00:37:11.625>the <00:37:11.799>rotation <00:37:11.975>factor.

730
00:37:14.515 --> 00:37:17.215
<00:37:14.515>And <00:37:14.690>we <00:37:14.865>need <00:37:15.040>to <00:37:15.214>call <00:37:15.390>set <00:37:15.565>state <00:37:15.740>in <00:37:15.915>this

731
00:37:17.875 --> 00:37:22.255
<00:37:17.875>and <00:37:18.030>give <00:37:18.186>the <00:37:18.341>rotation <00:37:18.497>factor <00:37:18.652>the <00:37:18.808>value <00:37:18.963>of <00:37:19.119>the, <00:37:19.275>that,

732
00:37:22.285 --> 00:37:23.735
<00:37:22.285>that <00:37:22.546>it <00:37:22.807>gets <00:37:23.068>from <00:37:23.329>the <00:37:23.590>slider.

733
00:37:27.195 --> 00:37:29.255
<00:37:27.195>So <00:37:27.428>let's <00:37:27.661>see <00:37:27.895>if <00:37:28.128>this <00:37:28.361>works <00:37:28.595>now.

734
00:37:33.635 --> 00:37:34.815
<00:37:33.635>Yep, <00:37:34.166>very <00:37:34.697>nice.

735
00:37:35.115 --> 00:37:37.295
<00:37:35.115>And <00:37:35.254>this <00:37:35.395>was, <00:37:35.535>I <00:37:35.674>know <00:37:35.814>it <00:37:35.955>was <00:37:36.095>a <00:37:36.234>bit <00:37:36.375>quick <00:37:36.515>now,

736
00:37:37.475 --> 00:37:40.175
<00:37:37.475>so <00:37:37.615>you <00:37:37.755>can <00:37:37.895>look <00:37:38.035>into <00:37:38.174>the <00:37:38.315>code <00:37:38.455>later, <00:37:38.595>as <00:37:38.735>I <00:37:38.875>said.

737
00:37:40.635 --> 00:37:42.495
<00:37:40.635>But <00:37:40.790>it's <00:37:40.946>such <00:37:41.101>an <00:37:41.257>easy <00:37:41.412>way <00:37:41.568>to <00:37:41.723>do <00:37:41.879>a <00:37:42.035>really,

738
00:37:42.495 --> 00:37:43.695
<00:37:42.495>really <00:37:43.035>nice <00:37:43.575>transformation

739
00:37:43.875 --> 00:37:46.375
<00:37:43.875>and <00:37:44.050>this <00:37:44.225>is <00:37:44.400>why <00:37:44.575>flat <00:37:44.750>is <00:37:44.925>so <00:37:45.100>much <00:37:45.275>fun.

740
00:37:47.155 --> 00:37:49.975
<00:37:47.155>Um, <00:37:47.330>let's <00:37:47.505>see. <00:37:47.680>Let's <00:37:47.855>get <00:37:48.030>back <00:37:48.205>to <00:37:48.380>the <00:37:48.555>presentation.

741
00:37:50.915 --> 00:37:55.375
<00:37:50.915>So <00:37:51.042>to <00:37:51.169>go <00:37:51.296>further, <00:37:51.424>um, <00:37:51.551>you <00:37:51.678>need <00:37:51.805>to <00:37:51.933>get <00:37:52.060>into <00:37:52.187>state <00:37:52.315>management

742
00:37:55.375 --> 00:37:59.095
<00:37:55.375>because <00:37:55.515>the <00:37:55.655>set <00:37:55.795>calling <00:37:55.935>the <00:37:56.075>state <00:37:56.215>function <00:37:56.355>is <00:37:56.495>not <00:37:56.635>the <00:37:56.775>best

743
00:37:59.155 --> 00:38:00.615
<00:37:59.155>way <00:37:59.483>to <00:37:59.812>get <00:38:00.140>about <00:38:00.469>this.

744
00:38:01.195 --> 00:38:04.895
<00:38:01.195>Um, <00:38:01.350>you <00:38:01.506>need <00:38:01.661>to <00:38:01.817>have <00:38:01.972>a, <00:38:02.128>a <00:38:02.283>separate <00:38:02.439>state <00:38:02.595>management

745
00:38:04.905 --> 00:38:08.015
<00:38:04.905>where <00:38:05.080>the <00:38:05.255>logic <00:38:05.430>is <00:38:05.605>really <00:38:05.780>separated <00:38:05.955>from <00:38:06.130>your <00:38:06.305>presentation,

746
00:38:08.015 --> 00:38:09.935
<00:38:08.015>and <00:38:08.214>there <00:38:08.415>are <00:38:08.615>different <00:38:08.815>ways <00:38:09.015>to <00:38:09.214>do <00:38:09.415>it.

747
00:38:09.935 --> 00:38:13.375
<00:38:09.935>There <00:38:10.075>are, <00:38:10.215>for <00:38:10.355>instance, <00:38:10.495>Redux, <00:38:10.634>ga, <00:38:10.775>it, <00:38:10.915>ga <00:38:11.055>it <00:38:11.195>or <00:38:11.335>Mobic.

748
00:38:13.685 --> 00:38:15.815
<00:38:13.685>When <00:38:13.884>you <00:38:14.085>click <00:38:14.285>this <00:38:14.485>link, <00:38:14.685>you'll <00:38:14.884>see, <00:38:15.085>um,

749
00:38:15.915 --> 00:38:19.615
<00:38:15.915>the <00:38:16.115>state <00:38:16.315>management, <00:38:16.515>um, <00:38:16.715>ways <00:38:16.915>that <00:38:17.115>Flatter <00:38:17.315>recommends.

750
00:38:19.915 --> 00:38:22.775
<00:38:19.915>Um, <00:38:20.090>the <00:38:20.265>most <00:38:20.440>popular <00:38:20.615>nowadays <00:38:20.790>is <00:38:20.965>Block <00:38:21.140>State <00:38:21.315>Management.

751
00:38:23.115 --> 00:38:26.215
<00:38:23.115>Um, <00:38:23.395>BMWI <00:38:23.674>think, <00:38:23.955>um, <00:38:24.234>invented <00:38:24.515>this

752
00:38:26.835 --> 00:38:31.335
<00:38:26.835>and <00:38:26.975>this <00:38:27.115>really <00:38:27.255>very <00:38:27.395>widely <00:38:27.535>used <00:38:27.675>and <00:38:27.815>it's <00:38:27.955>also <00:38:28.095>very <00:38:28.235>nice.

753
00:38:31.595 --> 00:38:33.455
<00:38:31.595>Um, <00:38:31.944>it's <00:38:32.294>a <00:38:32.645>bit <00:38:32.995>verbose,

754
00:38:33.875 --> 00:38:37.165
<00:38:33.875>but <00:38:34.015>if <00:38:34.155>you <00:38:34.295>look <00:38:34.435>into <00:38:34.575>Qubits, <00:38:34.715>which <00:38:34.855>is <00:38:34.995>a <00:38:35.135>smaller <00:38:35.275>way

755
00:38:37.165 --> 00:38:40.285
<00:38:37.165>to <00:38:37.292>do <00:38:37.419>block, <00:38:37.546>um, <00:38:37.674>this <00:38:37.801>is <00:38:37.928>a <00:38:38.055>very <00:38:38.183>nice <00:38:38.310>to <00:38:38.437>get <00:38:38.565>about,

756
00:38:40.445 --> 00:38:41.725
<00:38:40.445>a <00:38:40.637>nice <00:38:40.829>thing <00:38:41.021>to <00:38:41.213>get <00:38:41.404>about <00:38:41.596>it.

757
00:38:42.545 --> 00:38:44.765
<00:38:42.545>Um, <00:38:42.745>there's <00:38:42.945>this <00:38:43.145>tutorial <00:38:43.345>that <00:38:43.545>I <00:38:43.745>really <00:38:43.945>recommend,

758
00:38:44.765 --> 00:38:46.685
<00:38:44.765>it's <00:38:44.964>free <00:38:45.165>on <00:38:45.365>YouTube, <00:38:45.565>it's <00:38:45.765>like <00:38:45.964>three <00:38:46.165>hours

759
00:38:46.785 --> 00:38:49.485
<00:38:46.785>and <00:38:46.984>explains <00:38:47.185>you <00:38:47.384>the <00:38:47.585>whole <00:38:47.785>Logic <00:38:47.984>state <00:38:48.185>management

760
00:38:49.485 --> 00:38:50.565
<00:38:49.485>part <00:38:49.728>of <00:38:49.971>Flatter <00:38:50.214>very <00:38:50.457>well.

761
00:38:51.265 --> 00:38:54.165
<00:38:51.265>Um, <00:38:51.420>another <00:38:51.576>thing <00:38:51.731>that <00:38:51.887>I <00:38:52.042>would <00:38:52.198>really <00:38:52.353>like <00:38:52.509>to <00:38:52.665>recommend

762
00:38:54.165 --> 00:38:56.565
<00:38:54.165>to <00:38:54.365>you <00:38:54.565>is, <00:38:54.765>uh, <00:38:54.965>flatter <00:38:55.165>is <00:38:55.365>especially <00:38:55.565>great

763
00:38:56.585 --> 00:38:57.765
<00:38:56.585>to <00:38:57.116>prototype <00:38:57.647>quickly

764
00:38:58.025 --> 00:39:00.165
<00:38:58.025>and <00:38:58.225>it <00:38:58.425>goes <00:38:58.625>very <00:38:58.825>well <00:38:59.025>together <00:38:59.225>with <00:38:59.425>Firebase.

765
00:39:00.825 --> 00:39:02.725
<00:39:00.825>Um, <00:39:01.058>if <00:39:01.291>you're <00:39:01.524>not <00:39:01.758>a <00:39:01.991>mobile <00:39:02.225>developer,

766
00:39:02.745 --> 00:39:04.445
<00:39:02.745>you <00:39:03.025>may <00:39:03.305>not <00:39:03.585>know <00:39:03.865>about <00:39:04.145>Firebase,

767
00:39:04.585 --> 00:39:06.005
<00:39:04.585>so <00:39:04.798>I <00:39:05.011>just <00:39:05.224>wanted <00:39:05.437>to <00:39:05.650>mention <00:39:05.863>it.

768
00:39:06.195 --> 00:39:08.005
<00:39:06.195>It's <00:39:06.370>a <00:39:06.545>backend <00:39:06.720>as <00:39:06.895>a <00:39:07.070>service <00:39:07.245>made <00:39:07.420>by <00:39:07.595>Google,

769
00:39:08.295 --> 00:39:10.765
<00:39:08.295>which <00:39:08.435>is <00:39:08.575>free <00:39:08.715>if <00:39:08.855>you <00:39:08.995>don't <00:39:09.135>have <00:39:09.275>a <00:39:09.415>lot <00:39:09.555>of <00:39:09.695>users.

770
00:39:11.465 --> 00:39:14.165
<00:39:11.465>And <00:39:11.640>it's <00:39:11.815>very <00:39:11.990>often <00:39:12.165>used <00:39:12.340>in <00:39:12.515>combination <00:39:12.690>with <00:39:12.865>Flutter.

771
00:39:14.185 --> 00:39:17.925
<00:39:14.185>And <00:39:14.340>you <00:39:14.496>can <00:39:14.651>like <00:39:14.807>manage <00:39:14.962>data, <00:39:15.118>host <00:39:15.273>cloud <00:39:15.429>functions, <00:39:15.585>um,

772
00:39:17.925 --> 00:39:21.885
<00:39:17.925>integrate <00:39:18.158>identification <00:39:18.391>with <00:39:18.625>Google, <00:39:18.858>apple, <00:39:19.091>Facebook, <00:39:19.325>um,

773
00:39:22.035 --> 00:39:24.445
<00:39:22.035>also <00:39:22.268>distribute <00:39:22.501>your <00:39:22.734>app <00:39:22.968>later <00:39:23.201>to <00:39:23.435>Android

774
00:39:24.545 --> 00:39:26.245
<00:39:24.545>and <00:39:24.895>also <00:39:25.245>to <00:39:25.595>iOS <00:39:25.945>testers.

775
00:39:26.865 --> 00:39:29.685
<00:39:26.865>Um, <00:39:27.040>and <00:39:27.214>then <00:39:27.390>get <00:39:27.564>insights <00:39:27.740>into <00:39:27.915>your <00:39:28.089>app <00:39:28.265>more

776
00:39:29.685 --> 00:39:31.005
<00:39:29.685>with <00:39:30.279>Crashlytics, <00:39:30.873>um,

777
00:39:31.065 --> 00:39:34.445
<00:39:31.065>and <00:39:31.220>Firebase <00:39:31.376>analytics <00:39:31.531>to <00:39:31.687>see <00:39:31.842>how <00:39:31.998>your <00:39:32.153>app <00:39:32.309>is <00:39:32.465>behaving.

778
00:39:35.185 --> 00:39:39.125
<00:39:35.185>So, <00:39:35.312>um, <00:39:35.439>check <00:39:35.566>this <00:39:35.694>out <00:39:35.821>as <00:39:35.948>a, <00:39:36.075>as <00:39:36.203>a <00:39:36.330>backend <00:39:36.457>option. <00:39:36.585>Yeah.

779
00:39:39.265 --> 00:39:43.725
<00:39:39.265>So, <00:39:39.392>um, <00:39:39.519>uh, <00:39:39.646>if <00:39:39.774>you <00:39:39.901>wanna <00:39:40.028>see <00:39:40.155>me <00:39:40.283>again, <00:39:40.410>I'm <00:39:40.537>hosting, <00:39:40.665>um,

780
00:39:43.725 --> 00:39:44.765
<00:39:43.725>sometimes <00:39:44.661>offline,

781
00:39:44.765 --> 00:39:46.525
<00:39:44.765>but <00:39:45.045>now <00:39:45.325>mostly <00:39:45.605>online <00:39:45.884>meetings, <00:39:46.165>uh,

782
00:39:46.525 --> 00:39:48.525
<00:39:46.525>with <00:39:46.805>the <00:39:47.085>GDG <00:39:47.365>and <00:39:47.645>in <00:39:47.925>Hanover.

783
00:39:49.395 --> 00:39:51.565
<00:39:49.395>It's <00:39:49.628>a, <00:39:49.861>um, <00:39:50.095>mobile <00:39:50.328>development <00:39:50.561>group <00:39:50.795>I

784
00:39:51.565 --> 00:39:53.405
<00:39:51.565>founded <00:39:52.031>four <00:39:52.498>years <00:39:52.965>ago.

785
00:39:53.425 --> 00:39:57.245
<00:39:53.425>We <00:39:53.532>are <00:39:53.640>like <00:39:53.748>400 <00:39:53.855>people <00:39:53.963>and <00:39:54.071>we, <00:39:54.178>we <00:39:54.286>meet, <00:39:54.394>um, <00:39:54.501>not <00:39:54.609>all <00:39:54.717>of <00:39:54.825>us,

786
00:39:57.385 --> 00:39:59.685
<00:39:57.385>but <00:39:57.585>some <00:39:57.785>of <00:39:57.985>us <00:39:58.185>meet <00:39:58.385>every <00:39:58.585>every <00:39:58.785>month

787
00:39:59.705 --> 00:40:01.045
<00:39:59.705>and <00:40:00.006>we <00:40:00.308>have <00:40:00.609>different <00:40:00.911>speakers.

788
00:40:01.545 --> 00:40:04.365
<00:40:01.545>Uh, <00:40:01.672>and <00:40:01.799>I <00:40:01.926>also <00:40:02.054>run <00:40:02.181>the, <00:40:02.308>uh, <00:40:02.435>women <00:40:02.563>tech <00:40:02.690>makers <00:40:02.817>Han <00:40:02.945>Nova,

789
00:40:04.365 --> 00:40:07.645
<00:40:04.365>which <00:40:04.492>is <00:40:04.619>a <00:40:04.746>group <00:40:04.874>that <00:40:05.001>meets <00:40:05.128>monthly, <00:40:05.255>uh, <00:40:05.383>for <00:40:05.510>women <00:40:05.637>in <00:40:05.765>tech.

790
00:40:08.385 --> 00:40:09.765
<00:40:08.385>Um, <00:40:08.799>thanks <00:40:09.213>for <00:40:09.627>listening

791
00:40:10.065 --> 00:40:13.205
<00:40:10.065>and <00:40:10.265>yeah, <00:40:10.465>uh, <00:40:10.665>do <00:40:10.865>you <00:40:11.065>have <00:40:11.265>any <00:40:11.465>questions?

792
00:40:13.645 --> 00:40:15.885
<00:40:13.645>I <00:40:13.820>will <00:40:13.995>give, <00:40:14.170>get <00:40:14.345>get <00:40:14.520>back <00:40:14.695>to <00:40:14.870>the <00:40:15.045>moderator.

793
00:40:16.595 --> 00:40:20.205
<00:40:16.595>Yeah, <00:40:16.734>well, <00:40:16.875>I'm <00:40:17.015>ready <00:40:17.154>for <00:40:17.294>you. <00:40:17.435>Uh, <00:40:17.575>thanks <00:40:17.714>a <00:40:17.855>lot <00:40:17.995>Mira.

794
00:40:20.205 --> 00:40:21.565
<00:40:20.205>Great <00:40:20.817>presentation. <00:40:21.429>Uh,

795
00:40:21.905 --> 00:40:24.605
<00:40:21.905>and, <00:40:22.080>uh, <00:40:22.255>always <00:40:22.430>exciting <00:40:22.605>when <00:40:22.780>someone <00:40:22.955>goes <00:40:23.130>live <00:40:23.305>coding,

796
00:40:24.605 --> 00:40:25.845
<00:40:24.605>but <00:40:24.977>it <00:40:25.348>went <00:40:25.721>smoothly.

797
00:40:27.865 --> 00:40:29.885
<00:40:27.865>We, <00:40:28.040>we, <00:40:28.214>uh, <00:40:28.390>we're <00:40:28.564>running <00:40:28.740>a <00:40:28.915>bit <00:40:29.089>of <00:40:29.265>time,

798
00:40:30.225 --> 00:40:32.805
<00:40:30.225>but <00:40:30.380>uh, <00:40:30.536>we'll <00:40:30.691>give, <00:40:30.847>we'll <00:40:31.002>take <00:40:31.158>a <00:40:31.313>few <00:40:31.469>extra <00:40:31.625>moments.

799
00:40:33.505 --> 00:40:34.925
<00:40:33.505>No <00:40:33.718>one, <00:40:33.931>no <00:40:34.144>one's <00:40:34.357>watching <00:40:34.570>the <00:40:34.783>clock.

800
00:40:35.265 --> 00:40:38.125
<00:40:35.265>Uh, <00:40:35.464>and <00:40:35.665>jump <00:40:35.865>into <00:40:36.065>the <00:40:36.265>first <00:40:36.464>audience <00:40:36.665>question.

801
00:40:38.305 --> 00:40:40.285
<00:40:38.305>Uh, <00:40:38.538>the <00:40:38.771>question <00:40:39.004>is <00:40:39.238>from <00:40:39.471>Martin, <00:40:39.705>uh,

802
00:40:40.505 --> 00:40:43.365
<00:40:40.505>and <00:40:40.705>he's <00:40:40.905>asking <00:40:41.105>what <00:40:41.305>your <00:40:41.505>favorite <00:40:41.705>state <00:40:41.905>state

803
00:40:43.365 --> 00:40:44.525
<00:40:43.365>management <00:40:43.712>technique <00:40:44.061>is <00:40:44.409>in.

804
00:40:44.805 --> 00:40:46.485
<00:40:44.805>Well, <00:40:45.038>I <00:40:45.271>think <00:40:45.504>you <00:40:45.738>said, <00:40:45.971>I <00:40:46.205>think

805
00:40:46.485 --> 00:40:47.485
<00:40:46.485>I <00:40:46.710>answered <00:40:46.935>that. <00:40:47.160>Yeah, <00:40:47.385>it's

806
00:40:47.485 --> 00:40:48.245
<00:40:47.485>blocked. <00:40:48.169>Yeah.

807
00:40:48.435 --> 00:40:51.925
<00:40:48.435>Yeah. <00:40:48.668>Get <00:40:48.901>it <00:40:49.134>is <00:40:49.368>also <00:40:49.601>really <00:40:49.835>interesting.

808
00:40:52.425 --> 00:40:54.205
<00:40:52.425>So, <00:40:52.600>um, <00:40:52.775>I <00:40:52.950>would <00:40:53.125>like <00:40:53.300>to <00:40:53.475>look <00:40:53.650>into <00:40:53.825>it.

809
00:40:54.265 --> 00:40:56.405
<00:40:54.265>Uh, <00:40:54.420>a <00:40:54.576>lot <00:40:54.731>of <00:40:54.887>people <00:40:55.042>also <00:40:55.198>are <00:40:55.353>using <00:40:55.509>Get <00:40:55.665>It

810
00:40:56.405 --> 00:40:58.925
<00:40:56.405>and <00:40:56.638>Block <00:40:56.871>together, <00:40:57.105>um, <00:40:57.338>as <00:40:57.571>a <00:40:57.805>combination.

811
00:40:59.465 --> 00:41:02.365
<00:40:59.465>So, <00:40:59.581>um, <00:40:59.698>a <00:40:59.815>co <00:40:59.931>a <00:41:00.048>couple <00:41:00.165>of <00:41:00.281>my <00:41:00.398>employees <00:41:00.515>have <00:41:00.631>been <00:41:00.748>doing <00:41:00.865>that,

812
00:41:02.425 --> 00:41:04.165
<00:41:02.425>but <00:41:02.658>I <00:41:02.891>haven't <00:41:03.125>looked <00:41:03.358>into <00:41:03.591>it <00:41:03.825>yet,

813
00:41:05.305 --> 00:41:06.305
<00:41:05.305>But <00:41:05.529>they <00:41:05.754>are <00:41:05.980>happy. <00:41:06.205>You,

814
00:41:06.305 --> 00:41:08.405
<00:41:06.305>you <00:41:06.654>get <00:41:07.004>good. <00:41:07.355>Yeah. <00:41:07.705>Nice.

815
00:41:08.755 --> 00:41:11.765
<00:41:08.755>Alright, <00:41:08.955>uh, <00:41:09.155>we <00:41:09.355>have <00:41:09.555>another <00:41:09.755>question <00:41:09.955>from <00:41:10.155>Nicola.

816
00:41:12.145 --> 00:41:13.405
<00:41:12.145>Um, <00:41:12.428>and <00:41:12.712>he <00:41:12.995>is <00:41:13.279>saying

817
00:41:13.515 --> 00:41:18.165
<00:41:13.515>that <00:41:13.654>he <00:41:13.795>is <00:41:13.935>used <00:41:14.075>flutter <00:41:14.214>in <00:41:14.355>a <00:41:14.495>University <00:41:14.634>Pro <00:41:14.775>project, <00:41:14.915>uh,

818
00:41:18.165 --> 00:41:19.685
<00:41:18.165>that <00:41:18.393>had <00:41:18.621>to <00:41:18.849>do <00:41:19.077>with <00:41:19.305>bike <00:41:19.533>sharing.

819
00:41:20.105 --> 00:41:23.125
<00:41:20.105>Uh, <00:41:20.245>and <00:41:20.385>the <00:41:20.525>app <00:41:20.665>had <00:41:20.805>to <00:41:20.945>be <00:41:21.085>accessible <00:41:21.225>for <00:41:21.365>colorblind <00:41:21.505>people.

820
00:41:23.305 --> 00:41:24.605
<00:41:23.305>And <00:41:23.538>he <00:41:23.772>has <00:41:24.007>some <00:41:24.241>questions <00:41:24.475>about

821
00:41:24.605 --> 00:41:26.245
<00:41:24.605>that <00:41:24.885>one. <00:41:25.165>Uh, <00:41:25.445>there's <00:41:25.725>like <00:41:26.005>four

822
00:41:26.445 --> 00:41:27.445
<00:41:26.445>Questions. <00:41:26.895>I'm <00:41:27.345>sorry.

823
00:41:27.445 --> 00:41:28.365
<00:41:27.445>I <00:41:28.272>dunno.

824
00:41:30.635 --> 00:41:34.165
<00:41:30.635>Yeah, <00:41:30.790>but <00:41:30.946>this <00:41:31.101>diversity, <00:41:31.257>um, <00:41:31.412>um, <00:41:31.568>like <00:41:31.723>the, <00:41:31.879>like <00:41:32.035>how

825
00:41:34.165 --> 00:41:35.805
<00:41:34.165>to <00:41:34.515>implement <00:41:34.865>this <00:41:35.215>in <00:41:35.565>flatter,

826
00:41:35.835 --> 00:41:38.125
<00:41:35.835>I've <00:41:36.068>actually <00:41:36.301>never <00:41:36.535>done <00:41:36.768>this, <00:41:37.001>um <00:41:37.235>mm-hmm.

827
00:41:38.385 --> 00:41:41.805
<00:41:38.385>Um, <00:41:38.501>which <00:41:38.618>is <00:41:38.735>of <00:41:38.851>course <00:41:38.968>a <00:41:39.085>pity <00:41:39.201>and <00:41:39.318>I <00:41:39.435>really <00:41:39.551>should <00:41:39.668>look <00:41:39.785>into,

828
00:41:41.825 --> 00:41:43.085
<00:41:41.825>and <00:41:42.051>it's <00:41:42.278>on <00:41:42.505>my <00:41:42.732>to-do <00:41:42.959>list,

829
00:41:43.265 --> 00:41:46.205
<00:41:43.265>but <00:41:43.404>I <00:41:43.545>cannot <00:41:43.685>tell <00:41:43.825>you <00:41:43.964>about <00:41:44.105>how <00:41:44.245>to <00:41:44.384>make <00:41:44.525>this <00:41:44.665>better.

830
00:41:47.425 --> 00:41:48.605
<00:41:47.425>Mm-hmm. <00:41:48.487>Now,

831
00:41:48.605 --> 00:41:51.045
<00:41:48.605>but, <00:41:48.805>uh, <00:41:49.005>he's <00:41:49.205>not <00:41:49.405>asking <00:41:49.605>specifically <00:41:49.805>about <00:41:50.005>that.

832
00:41:51.145 --> 00:41:54.365
<00:41:51.145>Mm. <00:41:51.300>He's <00:41:51.456>asking <00:41:51.611>like <00:41:51.767>five <00:41:51.922>sub-questions, <00:41:52.078>so <00:41:52.233>I'll <00:41:52.389>pick <00:41:52.545>one

833
00:41:54.755 --> 00:41:56.405
<00:41:54.755>because <00:41:55.035>there's <00:41:55.315>more <00:41:55.595>people <00:41:55.875>asking <00:41:56.155>questions.

834
00:41:56.555 --> 00:42:00.445
<00:41:56.555>Okay. <00:41:56.682>Um, <00:41:56.809>updating <00:41:56.936>UI <00:41:57.064>in <00:41:57.191>a <00:41:57.318>smooth <00:41:57.445>way <00:41:57.573>when <00:41:57.700>the <00:41:57.827>use <00:41:57.955>location

835
00:42:00.515 --> 00:42:03.765
<00:42:00.515>updated <00:42:00.714>was <00:42:00.915>problematic <00:42:01.115>in <00:42:01.315>this <00:42:01.515>application, <00:42:01.714>as <00:42:01.915>well

836
00:42:03.905 --> 00:42:08.125
<00:42:03.905>as <00:42:04.032>managing <00:42:04.159>the <00:42:04.286>change <00:42:04.414>of <00:42:04.541>the <00:42:04.668>app <00:42:04.795>theme <00:42:04.923>that, <00:42:05.050>uh, <00:42:05.177>at <00:42:05.305>runtime

837
00:42:09.865 --> 00:42:11.765
<00:42:09.865>at <00:42:10.214>runtime <00:42:10.564>to <00:42:10.915>allow <00:42:11.265>accessibility.

838
00:42:11.865 --> 00:42:13.085
<00:42:11.865>Do <00:42:12.084>you <00:42:12.304>have <00:42:12.523>suggestions <00:42:12.743>for <00:42:12.963>dealing

839
00:42:13.085 --> 00:42:14.725
<00:42:13.085>with <00:42:13.365>the <00:42:13.645>management <00:42:13.925>of <00:42:14.205>these <00:42:14.485>scenarios?

840
00:42:16.265 --> 00:42:19.845
<00:42:16.265>Um, <00:42:16.392>this <00:42:16.519>is, <00:42:16.646>I <00:42:16.774>I'm <00:42:16.901>not <00:42:17.028>sure, <00:42:17.155>this <00:42:17.283>is <00:42:17.410>a <00:42:17.537>bit <00:42:17.665>vague.

841
00:42:20.045 --> 00:42:24.205
<00:42:20.045>I, <00:42:20.161>um, <00:42:20.278>I, <00:42:20.395>so <00:42:20.511>far <00:42:20.628>I <00:42:20.745>have <00:42:20.861>not <00:42:20.978>had <00:42:21.095>this <00:42:21.211>problems. <00:42:21.328>Um <00:42:21.445>mm-hmm.

842
00:42:24.525 --> 00:42:27.325
<00:42:24.525>I <00:42:24.652>don't <00:42:24.779>really <00:42:24.906>know. <00:42:25.034>I <00:42:25.161>would <00:42:25.288>know <00:42:25.415>more, <00:42:25.543>um, <00:42:25.670>to, <00:42:25.797>to <00:42:25.925>be

843
00:42:27.385 --> 00:42:28.965
<00:42:27.385>of <00:42:27.618>help <00:42:27.851>to <00:42:28.085>you <00:42:28.318>there, <00:42:28.551>I <00:42:28.785>guess.

844
00:42:30.195 --> 00:42:32.525
<00:42:30.195>Well, <00:42:30.335>I <00:42:30.475>don't <00:42:30.615>know. <00:42:30.755>It's <00:42:30.895>also <00:42:31.035>an <00:42:31.175>answer. <00:42:31.315>That's <00:42:31.455>fine. <00:42:31.595>Yes.

845
00:42:33.385 --> 00:42:34.645
<00:42:33.385>Better <00:42:33.668>say, <00:42:33.952>I <00:42:34.235>don't <00:42:34.519>know.

846
00:42:34.645 --> 00:42:36.285
<00:42:34.645>Then <00:42:34.995>just <00:42:35.345>guess <00:42:35.695>something, <00:42:36.045>uh,

847
00:42:36.285 --> 00:42:37.805
<00:42:36.285>then <00:42:36.480>we'll <00:42:36.675>pick <00:42:36.871>another <00:42:37.066>one <00:42:37.262>of <00:42:37.457>his <00:42:37.653>questions.

848
00:42:37.805 --> 00:42:39.645
<00:42:37.805>Mm-hmm. <00:42:38.038>I <00:42:38.271>think <00:42:38.504>that <00:42:38.738>for <00:42:38.971>using <00:42:39.205>Flutter,

849
00:42:39.645 --> 00:42:41.445
<00:42:39.645>some <00:42:39.995>experience <00:42:40.345>on <00:42:40.695>both <00:42:41.045>Android

850
00:42:41.545 --> 00:42:45.605
<00:42:41.545>and <00:42:41.700>iOS <00:42:41.856>is <00:42:42.011>still <00:42:42.167>needed, <00:42:42.322>uh, <00:42:42.478>for <00:42:42.633>iOS <00:42:42.789>specific <00:42:42.945>bug

851
00:42:45.865 --> 00:42:46.965
<00:42:45.865>or <00:42:46.194>issues <00:42:46.525>will <00:42:46.855>arise.

852
00:42:47.105 --> 00:42:50.805
<00:42:47.105>Is <00:42:47.245>that <00:42:47.385>correct? <00:42:47.525>Or <00:42:47.665>can <00:42:47.805>jump <00:42:47.945>in <00:42:48.085>without <00:42:48.225>any <00:42:48.365>knowledge? <00:42:48.505>Uh,

853
00:42:50.875 --> 00:42:53.445
<00:42:50.875>I've, <00:42:51.108>I've <00:42:51.341>worked <00:42:51.575>with, <00:42:51.808>uh, <00:42:52.041>developers, <00:42:52.275>um,

854
00:42:53.795 --> 00:42:55.085
<00:42:53.795>like <00:42:54.085>all <00:42:54.375>kind <00:42:54.665>of <00:42:54.956>developers.

855
00:42:55.085 --> 00:42:56.445
<00:42:55.085>Some <00:42:55.329>with <00:42:55.574>under <00:42:55.819>Android <00:42:56.064>experience, <00:42:56.309>some

856
00:42:56.445 --> 00:42:59.245
<00:42:56.445>with <00:42:56.620>iOS <00:42:56.795>experience, <00:42:56.970>some <00:42:57.145>who <00:42:57.320>just <00:42:57.495>started <00:42:57.670>with <00:42:57.845>Flutter.

857
00:42:59.625 --> 00:43:01.885
<00:42:59.625>Um, <00:42:59.905>actually <00:43:00.185>what <00:43:00.465>is <00:43:00.745>most <00:43:01.025>needed,

858
00:43:01.885 --> 00:43:05.645
<00:43:01.885>like <00:43:02.040>Android <00:43:02.196>experience <00:43:02.351>is <00:43:02.507>really <00:43:02.662>not <00:43:02.818>that <00:43:02.973>necessary, <00:43:03.129>um, <00:43:03.285>is

859
00:43:06.265 --> 00:43:09.165
<00:43:06.265>if <00:43:06.464>you <00:43:06.665>don't <00:43:06.865>have <00:43:07.065>like, <00:43:07.265>some <00:43:07.464>really, <00:43:07.665>like

860
00:43:09.165 --> 00:43:10.925
<00:43:09.165>for <00:43:09.340>instance <00:43:09.515>in <00:43:09.690>the <00:43:09.865>moment <00:43:10.040>we <00:43:10.215>have <00:43:10.390>like, <00:43:10.565>uh,

861
00:43:10.925 --> 00:43:13.925
<00:43:10.925>some <00:43:11.100>video <00:43:11.275>audio <00:43:11.450>issues <00:43:11.625>where <00:43:11.800>we <00:43:11.975>need <00:43:12.150>some <00:43:12.325>in,

862
00:43:13.925 --> 00:43:15.405
<00:43:13.925>in <00:43:14.115>one <00:43:14.305>project <00:43:14.495>where <00:43:14.686>we <00:43:14.876>need <00:43:15.066>some <00:43:15.257>native

863
00:43:15.515 --> 00:43:16.685
<00:43:15.515>Android <00:43:16.567>development.

864
00:43:16.785 --> 00:43:18.565
<00:43:16.785>But <00:43:17.018>this <00:43:17.251>is <00:43:17.484>the <00:43:17.718>first <00:43:17.951>time <00:43:18.185>usually

865
00:43:18.915 --> 00:43:21.805
<00:43:18.915>what <00:43:19.055>would <00:43:19.195>be <00:43:19.335>really <00:43:19.475>nice <00:43:19.615>if <00:43:19.755>you <00:43:19.895>have <00:43:20.035>some <00:43:20.175>iOS, <00:43:20.315>um,

866
00:43:21.895 --> 00:43:24.725
<00:43:21.895>build <00:43:22.175>Apple <00:43:22.455>developer <00:43:22.735>skills <00:43:23.015>because <00:43:23.295>mm-hmm.

867
00:43:24.825 --> 00:43:26.565
<00:43:24.825>To <00:43:25.105>handle <00:43:25.384>the <00:43:25.665>iOS <00:43:25.944>builds <00:43:26.225>there.

868
00:43:26.635 --> 00:43:28.365
<00:43:26.635>This <00:43:26.915>is <00:43:27.195>always <00:43:27.475>a <00:43:27.755>problem <00:43:28.035>just

869
00:43:28.365 --> 00:43:30.565
<00:43:28.365>because <00:43:28.564>you <00:43:28.765>can <00:43:28.964>make <00:43:29.165>an <00:43:29.365>Android <00:43:29.564>build, <00:43:29.765>um,

870
00:43:30.565 --> 00:43:33.365
<00:43:30.565>that <00:43:30.740>runs <00:43:30.915>smoothly <00:43:31.090>out <00:43:31.265>of <00:43:31.440>your <00:43:31.615>project <00:43:31.790>doesn't <00:43:31.965>mean

871
00:43:33.365 --> 00:43:35.005
<00:43:33.365>that <00:43:33.564>it <00:43:33.765>will <00:43:33.964>work <00:43:34.165>for <00:43:34.365>iOS <00:43:34.564>as <00:43:34.765>well.

872
00:43:35.545 --> 00:43:38.205
<00:43:35.545>And <00:43:35.700>then <00:43:35.856>you <00:43:36.011>also <00:43:36.167>need <00:43:36.322>to, <00:43:36.478>to <00:43:36.633>get <00:43:36.789>around <00:43:36.945>the,

873
00:43:38.305 --> 00:43:41.925
<00:43:38.305>the <00:43:38.480>Apple <00:43:38.654>developer <00:43:38.830>console, <00:43:39.004>which <00:43:39.180>is <00:43:39.355>not <00:43:39.529>so <00:43:39.705>intuitive.

874
00:43:42.265 --> 00:43:44.685
<00:43:42.265>So <00:43:42.545>I <00:43:42.825>guess <00:43:43.105>iOS <00:43:43.384>knowledge <00:43:43.665>helps,

875
00:43:44.785 --> 00:43:47.485
<00:43:44.785>but <00:43:44.940>you <00:43:45.096>can <00:43:45.251>also <00:43:45.407>get <00:43:45.562>it <00:43:45.718>by, <00:43:45.873>by <00:43:46.029>doing <00:43:46.185>it,

876
00:43:48.305 --> 00:43:50.485
<00:43:48.305>It <00:43:48.504>helps, <00:43:48.705>but <00:43:48.904>it, <00:43:49.105>it's <00:43:49.305>not <00:43:49.504>a <00:43:49.705>requirement.

877
00:43:50.915 --> 00:43:53.685
<00:43:50.915>Yeah. <00:43:51.090>And <00:43:51.265>I've <00:43:51.440>never <00:43:51.615>had <00:43:51.790>to <00:43:51.965>code <00:43:52.140>either <00:43:52.315>iOS

878
00:43:53.745 --> 00:43:57.245
<00:43:53.745>nor <00:43:53.900>Android <00:43:54.056>code <00:43:54.211>in <00:43:54.367>the <00:43:54.522>last <00:43:54.678>three <00:43:54.833>years <00:43:54.989>ever. <00:43:55.145>No.

879
00:43:57.315 --> 00:44:00.845
<00:43:57.315>Okay. <00:43:57.515>Cool. <00:43:57.715>Uh, <00:43:57.915>next <00:43:58.115>question <00:43:58.315>is <00:43:58.515>from <00:43:58.715>Louise.

880
00:44:01.105 --> 00:44:04.405
<00:44:01.105>Uh, <00:44:01.260>do <00:44:01.416>you <00:44:01.571>need <00:44:01.727>a <00:44:01.882>middleware <00:44:02.038>between <00:44:02.193>Flutter <00:44:02.349>and <00:44:02.505>iOS

881
00:44:04.405 --> 00:44:06.725
<00:44:04.405>or <00:44:04.605>Android <00:44:04.805>to <00:44:05.005>get <00:44:05.205>access <00:44:05.405>to <00:44:05.605>native <00:44:05.805>function?

882
00:44:07.345 --> 00:44:08.405
<00:44:07.345>Uh, <00:44:07.822>native <00:44:08.299>functions

883
00:44:09.025 --> 00:44:10.125
<00:44:09.025>Can, <00:44:09.272>can <00:44:09.520>you <00:44:09.767>repeat <00:44:10.015>please?

884
00:44:10.915 --> 00:44:13.165
<00:44:10.915>Yeah. <00:44:11.115>Do <00:44:11.315>you <00:44:11.515>need <00:44:11.715>a <00:44:11.915>middleware <00:44:12.115>between <00:44:12.315>Flutter

885
00:44:13.165 --> 00:44:16.725
<00:44:13.165>and, <00:44:13.305>uh, <00:44:13.445>iOS <00:44:13.585>or <00:44:13.725>Android <00:44:13.865>to <00:44:14.005>get <00:44:14.145>access <00:44:14.285>to <00:44:14.425>native <00:44:14.565>functions?

886
00:44:18.625 --> 00:44:21.725
<00:44:18.625>Um, <00:44:18.780>I <00:44:18.936>have <00:44:19.091>never <00:44:19.247>wrote <00:44:19.402>native, <00:44:19.558>so <00:44:19.713>I <00:44:19.869>don't <00:44:20.025>know.

887
00:44:22.505 --> 00:44:25.525
<00:44:22.505>So <00:44:22.645>if <00:44:22.785>you, <00:44:22.925>let's <00:44:23.065>say <00:44:23.205>in <00:44:23.345>a <00:44:23.485>Fluter <00:44:23.625>app, <00:44:23.765>you <00:44:23.905>want

888
00:44:25.525 --> 00:44:27.285
<00:44:25.525>to <00:44:25.875>access <00:44:26.225>the <00:44:26.575>camera, <00:44:26.925>uh,

889
00:44:27.545 --> 00:44:28.805
<00:44:27.545>can <00:44:27.707>you <00:44:27.869>do <00:44:28.031>that <00:44:28.192>in <00:44:28.355>Fluter? <00:44:28.517>Oh <00:44:28.679>yeah,

890
00:44:28.805 --> 00:44:30.405
<00:44:28.805>Of <00:44:28.944>course <00:44:29.085>you <00:44:29.225>can <00:44:29.365>do, <00:44:29.504>you <00:44:29.645>can <00:44:29.785>do <00:44:29.924>all <00:44:30.065>of <00:44:30.205>that,

891
00:44:30.705 --> 00:44:33.605
<00:44:30.705>but <00:44:30.904>if <00:44:31.105>you <00:44:31.305>want <00:44:31.505>to <00:44:31.705>write <00:44:31.904>native <00:44:32.105>extensions

892
00:44:33.785 --> 00:44:37.725
<00:44:33.785>to <00:44:33.940>your <00:44:34.096>flatter <00:44:34.251>code, <00:44:34.407>then <00:44:34.562>you <00:44:34.718>would <00:44:34.873>have <00:44:35.029>to, <00:44:35.185>um,

893
00:44:37.825 --> 00:44:40.445
<00:44:37.825>add <00:44:38.000>this <00:44:38.174>code <00:44:38.350>in <00:44:38.524>this <00:44:38.700>Android <00:44:38.875>and <00:44:39.049>iOS <00:44:39.225>folders.

894
00:44:40.625 --> 00:44:42.285
<00:44:40.625>Mm-hmm. <00:44:40.858>Um, <00:44:41.091>but <00:44:41.325>how <00:44:41.558>you <00:44:41.791>do <00:44:42.025>that

895
00:44:42.385 --> 00:44:45.165
<00:44:42.385>and <00:44:42.525>if <00:44:42.665>you <00:44:42.805>need <00:44:42.945>some <00:44:43.085>extra <00:44:43.225>libraries <00:44:43.365>to <00:44:43.505>make <00:44:43.645>this <00:44:43.785>happen,

896
00:44:45.485 --> 00:44:47.005
<00:44:45.485>I <00:44:45.656>just <00:44:45.827>don't <00:44:45.998>know <00:44:46.169>because <00:44:46.340>I <00:44:46.511>haven't <00:44:46.682>done <00:44:46.853>it.

897
00:44:48.465 --> 00:44:51.565
<00:44:48.465>You're <00:44:48.745>the <00:44:49.025>flatter <00:44:49.305>developer. <00:44:49.585>Done. <00:44:49.865>Yeah.

898
00:44:51.905 --> 00:44:55.845
<00:44:51.905>Um, <00:44:52.138>next <00:44:52.371>question <00:44:52.605>is <00:44:52.838>also <00:44:53.071>from <00:44:53.305>Louise.

899
00:44:56.255 --> 00:44:58.165
<00:44:56.255>Where <00:44:56.488>could <00:44:56.721>you <00:44:56.955>do <00:44:57.188>any <00:44:57.421>special <00:44:57.655>stylings

900
00:44:58.165 --> 00:44:59.885
<00:44:58.165>or <00:44:58.515>animations <00:44:58.865>of <00:44:59.215>certain <00:44:59.565>elements

901
00:45:00.625 --> 00:45:02.885
<00:45:00.625>Of <00:45:00.975>what <00:45:01.325>elements, <00:45:01.675>Certain <00:45:02.025>elements

902
00:45:03.345 --> 00:45:05.125
<00:45:03.345>Of <00:45:03.578>where <00:45:03.811>you <00:45:04.044>can <00:45:04.278>do <00:45:04.511>the <00:45:04.745>styling?

903
00:45:05.435 --> 00:45:08.285
<00:45:05.435>Yeah. <00:45:05.668>Um, <00:45:05.901>so <00:45:06.134>usually <00:45:06.368>you <00:45:06.601>have, <00:45:06.835>um,

904
00:45:08.335 --> 00:45:10.725
<00:45:08.335>every <00:45:08.615>widget <00:45:08.895>has <00:45:09.175>like <00:45:09.455>different <00:45:09.735>attributes

905
00:45:10.985 --> 00:45:15.285
<00:45:10.985>and <00:45:11.125>sometimes <00:45:11.265>if <00:45:11.405>you <00:45:11.545>don't <00:45:11.685>have <00:45:11.825>a <00:45:11.965>certain <00:45:12.105>attribute <00:45:12.245>in <00:45:12.385>a

906
00:45:15.345 --> 00:45:17.925
<00:45:15.345>widget, <00:45:15.520>you <00:45:15.694>need <00:45:15.870>to <00:45:16.044>wrap <00:45:16.220>it <00:45:16.395>in <00:45:16.569>another <00:45:16.745>widget.

907
00:45:17.925 --> 00:45:19.805
<00:45:17.925>And <00:45:18.205>this <00:45:18.485>is <00:45:18.765>something <00:45:19.045>that <00:45:19.325>sometimes

908
00:45:19.835 --> 00:45:21.045
<00:45:19.835>it's <00:45:20.198>difficult <00:45:20.561>to <00:45:20.924>understand.

909
00:45:21.385 --> 00:45:22.885
<00:45:21.385>For <00:45:21.610>instance, <00:45:21.835>you <00:45:22.060>might <00:45:22.285>have <00:45:22.510>a <00:45:22.735>widget

910
00:45:22.885 --> 00:45:24.365
<00:45:22.885>where <00:45:23.151>you <00:45:23.417>cannot <00:45:23.684>give <00:45:23.950>a <00:45:24.216>hide.

911
00:45:24.825 --> 00:45:27.645
<00:45:24.825>So <00:45:24.980>a <00:45:25.136>text <00:45:25.291>for <00:45:25.447>instance, <00:45:25.602>it <00:45:25.758>doesn't <00:45:25.913>take <00:45:26.069>a <00:45:26.225>height,

912
00:45:27.985 --> 00:45:29.765
<00:45:27.985>but <00:45:28.185>you <00:45:28.385>can <00:45:28.585>wrap <00:45:28.785>it <00:45:28.985>in <00:45:29.185>a <00:45:29.385>container.

913
00:45:29.985 --> 00:45:32.925
<00:45:29.985>And <00:45:30.125>the <00:45:30.265>text <00:45:30.405>widget <00:45:30.545>always <00:45:30.685>takes <00:45:30.825>the <00:45:30.965>height <00:45:31.105>of <00:45:31.245>its <00:45:31.385>parent,

914
00:45:32.975 --> 00:45:34.325
<00:45:32.975>which <00:45:33.177>is <00:45:33.380>something <00:45:33.582>you <00:45:33.785>need <00:45:33.987>to <00:45:34.189>know

915
00:45:34.325 --> 00:45:36.285
<00:45:34.325>because <00:45:34.524>this <00:45:34.725>is <00:45:34.924>different <00:45:35.125>for <00:45:35.325>all <00:45:35.524>the <00:45:35.725>widgets.

916
00:45:36.285 --> 00:45:38.725
<00:45:36.285>Sometimes <00:45:36.460>they <00:45:36.634>take <00:45:36.810>the <00:45:36.984>size <00:45:37.160>of <00:45:37.335>their <00:45:37.509>children, <00:45:37.685>sometimes

917
00:45:38.725 --> 00:45:40.205
<00:45:38.725>of <00:45:39.169>their <00:45:39.613>parents, <00:45:40.057>and,

918
00:45:40.265 --> 00:45:43.045
<00:45:40.265>and <00:45:40.464>sometimes <00:45:40.665>they <00:45:40.865>have <00:45:41.065>their <00:45:41.265>own, <00:45:41.464>um, <00:45:41.665>height

919
00:45:43.065 --> 00:45:46.645
<00:45:43.065>and <00:45:43.220>sometimes <00:45:43.376>you <00:45:43.531>don't <00:45:43.687>have <00:45:43.842>a <00:45:43.998>possibility <00:45:44.153>to <00:45:44.309>specify <00:45:44.465>this.

920
00:45:47.145 --> 00:45:49.365
<00:45:47.145>And <00:45:47.300>the <00:45:47.456>same <00:45:47.611>goes <00:45:47.767>for <00:45:47.922>a <00:45:48.078>lot <00:45:48.233>of <00:45:48.389>other <00:45:48.545>things.

921
00:45:49.475 --> 00:45:52.765
<00:45:49.475>Like <00:45:49.630>sometimes <00:45:49.786>you <00:45:49.941>can <00:45:50.097>define <00:45:50.252>a <00:45:50.408>color, <00:45:50.563>sometimes <00:45:50.719>you <00:45:50.875>can't.

922
00:45:52.905 --> 00:45:55.965
<00:45:52.905>So <00:45:53.045>this <00:45:53.185>is, <00:45:53.325>it <00:45:53.465>really <00:45:53.605>depends <00:45:53.745>on <00:45:53.885>the, <00:45:54.025>on <00:45:54.165>the <00:45:54.305>widgets,

923
00:45:56.185 --> 00:45:58.965
<00:45:56.185>but <00:45:56.292>usually, <00:45:56.400>as <00:45:56.508>I <00:45:56.615>said, <00:45:56.723>you <00:45:56.831>do <00:45:56.938>it <00:45:57.046>in <00:45:57.154>the <00:45:57.261>theme <00:45:57.369>in <00:45:57.477>the <00:45:57.585>front

924
00:45:59.145 --> 00:46:01.485
<00:45:59.145>or <00:45:59.320>you <00:45:59.495>do <00:45:59.670>it <00:45:59.845>in <00:46:00.020>the <00:46:00.195>certain <00:46:00.370>widgets <00:46:00.545>itself.

925
00:46:02.715 --> 00:46:03.885
<00:46:02.715>Alright, <00:46:03.241>thank <00:46:03.768>you.

926
00:46:04.625 --> 00:46:08.645
<00:46:04.625>Uh, <00:46:04.780>next <00:46:04.936>and <00:46:05.091>uh, <00:46:05.247>unfortunately <00:46:05.402>last <00:46:05.558>question <00:46:05.713>we <00:46:05.869>have <00:46:06.025>time

927
00:46:08.745 --> 00:46:10.165
<00:46:08.745>for <00:46:09.171>is <00:46:09.596>from <00:46:10.023>Martin.

928
00:46:10.665 --> 00:46:13.885
<00:46:10.665>Mm-hmm. <00:46:10.820>He's <00:46:10.976>asking <00:46:11.131>what <00:46:11.287>is <00:46:11.442>the <00:46:11.598>best <00:46:11.753>way <00:46:11.909>to <00:46:12.065>generate

929
00:46:14.105 --> 00:46:16.205
<00:46:14.105>or <00:46:14.385>build <00:46:14.665>your <00:46:14.945>team <00:46:15.225>data <00:46:15.505>object?

930
00:46:16.665 --> 00:46:18.805
<00:46:16.665>Or <00:46:16.792>is <00:46:16.919>there <00:46:17.046>a <00:46:17.174>different <00:46:17.301>or <00:46:17.428>better <00:46:17.555>way <00:46:17.683>to <00:46:17.810>team <00:46:17.937>your <00:46:18.065>up

931
00:46:19.805 --> 00:46:21.285
<00:46:19.805>A <00:46:20.249>team <00:46:20.692>data <00:46:21.136>object?

932
00:46:22.385 --> 00:46:25.285
<00:46:22.385>Uh, <00:46:22.540>yeah. <00:46:22.696>So <00:46:22.851>you <00:46:23.007>were <00:46:23.162>using, <00:46:23.318>for <00:46:23.473>example, <00:46:23.629>the <00:46:23.785>material,

933
00:46:25.435 --> 00:46:28.125
<00:46:25.435>your <00:46:25.901>material, <00:46:26.368>uh, <00:46:26.835>widget.

934
00:46:28.555 --> 00:46:32.365
<00:46:28.555>Yeah. <00:46:28.754>And <00:46:28.955>I <00:46:29.154>think <00:46:29.355>in <00:46:29.555>that <00:46:29.754>goes, <00:46:29.955>uh,

935
00:46:32.605 --> 00:46:33.885
<00:46:32.605>styling, <00:46:32.835>I <00:46:33.065>think <00:46:33.296>it <00:46:33.526>means <00:46:33.757>that,

936
00:46:34.465 --> 00:46:35.465
<00:46:34.465>Ah, <00:46:34.765>okay. <00:46:35.065>So <00:46:35.365>what

937
00:46:35.465 --> 00:46:37.005
<00:46:35.465>is <00:46:35.696>the <00:46:35.927>best <00:46:36.158>way <00:46:36.389>to <00:46:36.620>create <00:46:36.851>it

938
00:46:37.025 --> 00:46:38.365
<00:46:37.025>or <00:46:37.266>what, <00:46:37.507>what <00:46:37.748>was <00:46:37.989>the <00:46:38.231>best

939
00:46:38.365 --> 00:46:39.365
<00:46:38.365>One <00:46:38.589>Yeah. <00:46:38.814>To <00:46:39.040>generate <00:46:39.265>or

940
00:46:39.365 --> 00:46:40.925
<00:46:39.365>build <00:46:39.831>that <00:46:40.298>object. <00:46:40.765>Yeah.

941
00:46:42.375 --> 00:46:46.915
<00:46:42.375>Um, <00:46:42.491>as, <00:46:42.608>as <00:46:42.725>I, <00:46:42.841>as <00:46:42.958>I <00:46:43.075>just <00:46:43.191>showed <00:46:43.308>you, <00:46:43.425>just, <00:46:43.541>um, <00:46:43.658>um, <00:46:43.775>you,

942
00:46:46.985 --> 00:46:49.275
<00:46:46.985>like, <00:46:47.185>you, <00:46:47.385>you <00:46:47.585>will <00:46:47.785>need <00:46:47.985>to, <00:46:48.185>you'll <00:46:48.385>need

943
00:46:49.275 --> 00:46:51.795
<00:46:49.275>to <00:46:49.475>like <00:46:49.675>think <00:46:49.875>about, <00:46:50.075>um, <00:46:50.275>what <00:46:50.475>you <00:46:50.675>want

944
00:46:51.795 --> 00:46:53.275
<00:46:51.795>for <00:46:52.128>colors <00:46:52.461>and <00:46:52.794>fonts <00:46:53.127>beforehand.

945
00:46:53.495 --> 00:46:54.755
<00:46:53.495>You <00:46:53.721>can <00:46:53.948>either <00:46:54.175>ask <00:46:54.402>a <00:46:54.629>designer

946
00:46:54.815 --> 00:46:58.195
<00:46:54.815>or <00:46:54.955>I <00:46:55.095>have <00:46:55.235>some <00:46:55.375>tools <00:46:55.515>like <00:46:55.655>a, <00:46:55.795>a <00:46:55.935>color, <00:46:56.075>um, <00:46:56.215>page

947
00:46:58.195 --> 00:47:00.755
<00:46:58.195>where <00:46:58.350>you <00:46:58.506>can <00:46:58.661>enter <00:46:58.817>colors <00:46:58.972>and <00:46:59.128>see <00:46:59.283>others <00:46:59.439>that <00:46:59.595>fit.

948
00:47:00.815 --> 00:47:04.075
<00:47:00.815>And <00:47:00.970>then <00:47:01.126>I <00:47:01.281>usually <00:47:01.437>enter <00:47:01.592>this <00:47:01.748>as <00:47:01.903>a <00:47:02.059>primary <00:47:02.215>swatch.

949
00:47:04.295 --> 00:47:07.755
<00:47:04.295>Um, <00:47:04.528>or <00:47:04.761>I <00:47:04.995>define <00:47:05.228>every <00:47:05.461>color <00:47:05.695>singularly.

950
00:47:07.855 --> 00:47:10.075
<00:47:07.855>It <00:47:08.055>depends <00:47:08.255>on <00:47:08.455>if <00:47:08.655>this <00:47:08.855>app <00:47:09.055>is <00:47:09.255>supposed

951
00:47:10.075 --> 00:47:12.115
<00:47:10.075>to <00:47:10.274>have <00:47:10.475>several <00:47:10.674>colors, <00:47:10.875>like <00:47:11.075>five <00:47:11.274>different <00:47:11.475>colors,

952
00:47:12.575 --> 00:47:15.155
<00:47:12.575>or <00:47:12.702>if <00:47:12.829>you <00:47:12.956>just <00:47:13.084>want <00:47:13.211>to <00:47:13.338>have <00:47:13.465>one <00:47:13.593>color <00:47:13.720>or <00:47:13.847>two <00:47:13.975>colors

953
00:47:15.155 --> 00:47:16.795
<00:47:15.155>and <00:47:15.505>you <00:47:15.855>can <00:47:16.205>use <00:47:16.555>swatches.

954
00:47:17.135 --> 00:47:20.355
<00:47:17.135>And <00:47:17.275>sometimes <00:47:17.415>it's <00:47:17.555>really <00:47:17.695>necessary <00:47:17.835>to <00:47:17.975>do <00:47:18.115>it <00:47:18.255>page <00:47:18.395>by <00:47:18.535>page.

955
00:47:20.495 --> 00:47:22.195
<00:47:20.495>So, <00:47:20.845>or <00:47:21.194>widget <00:47:21.545>by <00:47:21.895>widget

956
00:47:22.195 --> 00:47:25.715
<00:47:22.195>and <00:47:22.335>really <00:47:22.475>define <00:47:22.615>the, <00:47:22.755>the <00:47:22.895>color <00:47:23.035>of <00:47:23.175>every, <00:47:23.315>of <00:47:23.455>every <00:47:23.595>widget.

957
00:47:26.455 --> 00:47:28.315
<00:47:26.455>And <00:47:26.654>it <00:47:26.855>depends <00:47:27.055>how <00:47:27.255>big <00:47:27.455>your <00:47:27.654>project <00:47:27.855>is.

958
00:47:28.375 --> 00:47:32.525
<00:47:28.375>It, <00:47:28.502>it <00:47:28.629>depends <00:47:28.756>how <00:47:28.884>much <00:47:29.011>you <00:47:29.138>have <00:47:29.265>of <00:47:29.393>a <00:47:29.520>fixed <00:47:29.647>graphic <00:47:29.775>design

959
00:47:32.625 --> 00:47:36.285
<00:47:32.625>or <00:47:32.800>if <00:47:32.975>you're <00:47:33.150>just <00:47:33.325>improvising <00:47:33.500>it <00:47:33.675>yourself, <00:47:33.850>I <00:47:34.025>guess.

960
00:47:37.265 --> 00:47:39.285
<00:47:37.265>All <00:47:37.498>right. <00:47:37.731>Well <00:47:37.964>thanks <00:47:38.198>a <00:47:38.431>lot <00:47:38.665>Mira.

961
00:47:39.285 --> 00:47:41.365
<00:47:39.285>There's <00:47:39.484>a <00:47:39.685>few <00:47:39.884>more <00:47:40.085>questions <00:47:40.285>on <00:47:40.484>swap <00:47:40.685>card.

962
00:47:41.465 --> 00:47:45.685
<00:47:41.465>So <00:47:41.592>if <00:47:41.719>you <00:47:41.846>would, <00:47:41.974>uh, <00:47:42.101>uh, <00:47:42.228>go <00:47:42.355>into <00:47:42.483>the <00:47:42.610>swap <00:47:42.737>card <00:47:42.865>chat

963
00:47:46.145 --> 00:47:47.765
<00:47:46.145>and <00:47:46.425>answer <00:47:46.705>the <00:47:46.985>last <00:47:47.265>questions <00:47:47.545>there,

964
00:47:47.955 --> 00:47:49.405
<00:47:47.955>then <00:47:48.216>I <00:47:48.477>can <00:47:48.738>close <00:47:48.999>up <00:47:49.260>here.

965
00:47:49.555 --> 00:47:52.365
<00:47:49.555>Okay. <00:47:49.682>Uh, <00:47:49.809>thanks <00:47:49.936>a <00:47:50.064>lot <00:47:50.191>Mira. <00:47:50.318>Uh, <00:47:50.445>sure. <00:47:50.573>It's <00:47:50.700>been <00:47:50.827>a <00:47:50.955>pleasure.

966
00:47:53.065 --> 00:47:55.085
<00:47:53.065>You <00:47:53.265>can <00:47:53.465>also <00:47:53.665>write <00:47:53.865>me, <00:47:54.065>uh, <00:47:54.265>um, <00:47:54.465>messages,

967
00:47:55.245 --> 00:47:56.805
<00:47:55.245>I <00:47:55.478>think <00:47:55.711>on, <00:47:55.944>on <00:47:56.178>on <00:47:56.411>spot <00:47:56.645>court.

968
00:47:56.805 --> 00:47:58.045
<00:47:56.805>That's <00:47:57.176>also <00:47:57.549>possible, <00:47:57.921>right?

969
00:47:58.155 --> 00:47:59.365
<00:47:58.155>They <00:47:58.427>can <00:47:58.699>find <00:47:58.971>my <00:47:59.243>profile

970
00:47:59.365 --> 00:48:01.445
<00:47:59.365>and <00:47:59.504>write <00:47:59.645>me <00:47:59.785>messages <00:47:59.924>there <00:48:00.064>if <00:48:00.205>they <00:48:00.345>want <00:48:00.484>to <00:48:00.625>know <00:48:00.765>anything.

971
00:48:01.905 --> 00:48:04.685
<00:48:01.905>And <00:48:02.138>also, <00:48:02.371>uh, <00:48:02.605>over <00:48:02.838>cuckoo <00:48:03.071>coding, <00:48:03.305>um,

972
00:48:05.025 --> 00:48:06.525
<00:48:05.025>you <00:48:05.295>can <00:48:05.565>find <00:48:05.835>an <00:48:06.105>email <00:48:06.375>there

973
00:48:06.545 --> 00:48:08.365
<00:48:06.545>and <00:48:06.720>write <00:48:06.895>me <00:48:07.070>there <00:48:07.245>if <00:48:07.420>you <00:48:07.595>have <00:48:07.770>any <00:48:07.945>questions

974
00:48:09.585 --> 00:48:11.445
<00:48:09.585>or <00:48:09.785>just <00:48:09.985>visit <00:48:10.185>or <00:48:10.385>a <00:48:10.585>Google <00:48:10.785>deaf <00:48:10.985>group.

975
00:48:11.465 --> 00:48:13.925
<00:48:11.465>We <00:48:11.605>have <00:48:11.745>a <00:48:11.885>lot <00:48:12.025>of, <00:48:12.165>uh, <00:48:12.305>flatter <00:48:12.445>talks <00:48:12.585>there. <00:48:12.725>Um <00:48:12.865>mm-hmm.

976
00:48:13.925 --> 00:48:15.085
<00:48:13.925>If <00:48:14.099>you <00:48:14.273>wanna <00:48:14.447>learn <00:48:14.621>a <00:48:14.795>bit <00:48:14.969>further.

977
00:48:16.075 --> 00:48:18.445
<00:48:16.075>Yeah. <00:48:16.250>But, <00:48:16.424>uh, <00:48:16.600>now <00:48:16.774>I'm <00:48:16.950>just <00:48:17.125>specifically <00:48:17.299>talking <00:48:17.475>about

978
00:48:18.445 --> 00:48:20.485
<00:48:18.445>the, <00:48:18.620>the <00:48:18.795>questions <00:48:18.970>that <00:48:19.145>are <00:48:19.320>asked <00:48:19.495>already <00:48:19.670>in, <00:48:19.845>uh,

979
00:48:20.485 --> 00:48:21.605
<00:48:20.485>so <00:48:21.493>Alright.

980
00:48:21.605 --> 00:48:24.125
<00:48:21.605>Thanks <00:48:21.780>lot, <00:48:21.955>Mira. <00:48:22.130>I'm <00:48:22.305>going <00:48:22.480>to <00:48:22.655>close <00:48:22.830>up <00:48:23.005>here.

981
00:48:24.195 --> 00:48:25.205
<00:48:24.195>Have <00:48:24.422>a <00:48:24.649>nice <00:48:24.876>day. <00:48:25.104>Bye.