WEBVTT
Kind: captions
Language: en

00:00:00.000 --> 00:00:01.550 align:start position:0%
 
In<00:00:00.200><c> this</c><00:00:00.400><c> video,</c><00:00:00.800><c> we're</c><00:00:01.000><c> going</c><00:00:01.160><c> to</c><00:00:01.240><c> do</c><00:00:01.440><c> a</c>

00:00:01.550 --> 00:00:01.560 align:start position:0%
In this video, we're going to do a
 

00:00:01.560 --> 00:00:04.190 align:start position:0%
In this video, we're going to do a
comprehensive<00:00:02.480><c> Codex</c><00:00:02.960><c> tutorial.</c><00:00:03.880><c> I</c><00:00:03.960><c> want</c><00:00:04.160><c> to</c>

00:00:04.190 --> 00:00:04.200 align:start position:0%
comprehensive Codex tutorial. I want to
 

00:00:04.200 --> 00:00:07.110 align:start position:0%
comprehensive Codex tutorial. I want to
show<00:00:04.440><c> you</c><00:00:04.560><c> not</c><00:00:04.880><c> just</c><00:00:05.200><c> what</c><00:00:05.400><c> Codex</c><00:00:05.920><c> is,</c><00:00:06.680><c> but</c><00:00:06.920><c> how</c>

00:00:07.110 --> 00:00:07.120 align:start position:0%
show you not just what Codex is, but how
 

00:00:07.120 --> 00:00:09.830 align:start position:0%
show you not just what Codex is, but how
to<00:00:07.280><c> actually</c><00:00:07.760><c> use</c><00:00:08.160><c> it</c><00:00:08.440><c> as</c><00:00:08.680><c> a</c><00:00:08.800><c> serious</c><00:00:09.560><c> app</c>

00:00:09.830 --> 00:00:09.840 align:start position:0%
to actually use it as a serious app
 

00:00:09.840 --> 00:00:11.830 align:start position:0%
to actually use it as a serious app
building<00:00:10.320><c> agent.</c><00:00:11.000><c> We'll</c><00:00:11.160><c> start</c><00:00:11.600><c> with</c><00:00:11.720><c> the</c>

00:00:11.830 --> 00:00:11.840 align:start position:0%
building agent. We'll start with the
 

00:00:11.840 --> 00:00:15.110 align:start position:0%
building agent. We'll start with the
foundations,<00:00:13.080><c> how</c><00:00:13.280><c> Codex</c><00:00:13.880><c> works,</c><00:00:14.760><c> how</c><00:00:14.960><c> the</c>

00:00:15.110 --> 00:00:15.120 align:start position:0%
foundations, how Codex works, how the
 

00:00:15.120 --> 00:00:18.630 align:start position:0%
foundations, how Codex works, how the
Mac<00:00:15.640><c> app</c><00:00:15.920><c> and</c><00:00:16.080><c> the</c><00:00:16.160><c> CLI</c><00:00:16.840><c> fit</c><00:00:17.160><c> together,</c><00:00:18.320><c> how</c><00:00:18.480><c> to</c>

00:00:18.630 --> 00:00:18.640 align:start position:0%
Mac app and the CLI fit together, how to
 

00:00:18.640 --> 00:00:20.990 align:start position:0%
Mac app and the CLI fit together, how to
choose<00:00:18.960><c> models</c><00:00:19.600><c> and</c><00:00:19.760><c> thinking</c><00:00:20.160><c> modes,</c><00:00:20.720><c> how</c>

00:00:20.990 --> 00:00:21.000 align:start position:0%
choose models and thinking modes, how
 

00:00:21.000 --> 00:00:23.910 align:start position:0%
choose models and thinking modes, how
threads<00:00:21.480><c> and</c><00:00:21.640><c> contexts</c><00:00:22.400><c> work,</c><00:00:23.280><c> and</c><00:00:23.560><c> how</c><00:00:23.720><c> to</c>

00:00:23.910 --> 00:00:23.920 align:start position:0%
threads and contexts work, and how to
 

00:00:23.920 --> 00:00:26.350 align:start position:0%
threads and contexts work, and how to
use<00:00:24.160><c> tools</c><00:00:24.600><c> like</c><00:00:24.840><c> the</c><00:00:24.960><c> browser,</c><00:00:25.760><c> terminal,</c>

00:00:26.350 --> 00:00:26.360 align:start position:0%
use tools like the browser, terminal,
 

00:00:26.360 --> 00:00:29.030 align:start position:0%
use tools like the browser, terminal,
files,<00:00:27.160><c> and</c><00:00:27.320><c> external</c><00:00:27.840><c> systems.</c><00:00:28.640><c> Then,</c><00:00:28.880><c> we'll</c>

00:00:29.030 --> 00:00:29.040 align:start position:0%
files, and external systems. Then, we'll
 

00:00:29.040 --> 00:00:31.070 align:start position:0%
files, and external systems. Then, we'll
turn<00:00:29.320><c> that</c><00:00:29.520><c> foundation</c><00:00:30.200><c> into</c><00:00:30.600><c> a</c><00:00:30.720><c> real</c>

00:00:31.070 --> 00:00:31.080 align:start position:0%
turn that foundation into a real
 

00:00:31.080 --> 00:00:34.030 align:start position:0%
turn that foundation into a real
workflow.<00:00:31.960><c> We'll</c><00:00:32.160><c> use</c><00:00:32.480><c> Codex</c><00:00:33.000><c> to</c><00:00:33.160><c> plan,</c>

00:00:34.030 --> 00:00:34.040 align:start position:0%
workflow. We'll use Codex to plan,
 

00:00:34.040 --> 00:00:37.950 align:start position:0%
workflow. We'll use Codex to plan,
architect,<00:00:35.080><c> design,</c><00:00:35.800><c> implement,</c><00:00:36.400><c> debug,</c><00:00:37.640><c> and</c>

00:00:37.950 --> 00:00:37.960 align:start position:0%
architect, design, implement, debug, and
 

00:00:37.960 --> 00:00:41.390 align:start position:0%
architect, design, implement, debug, and
ultimately<00:00:38.600><c> deploy</c><00:00:39.360><c> a</c><00:00:39.520><c> production-ready</c><00:00:40.800><c> app</c>

00:00:41.390 --> 00:00:41.400 align:start position:0%
ultimately deploy a production-ready app
 

00:00:41.400 --> 00:00:43.070 align:start position:0%
ultimately deploy a production-ready app
from<00:00:41.640><c> scratch.</c><00:00:42.280><c> By</c><00:00:42.360><c> the</c><00:00:42.600><c> end,</c><00:00:42.760><c> you</c><00:00:42.880><c> should</c>

00:00:43.070 --> 00:00:43.080 align:start position:0%
from scratch. By the end, you should
 

00:00:43.080 --> 00:00:45.550 align:start position:0%
from scratch. By the end, you should
understand<00:00:43.600><c> the</c><00:00:43.720><c> full</c><00:00:44.040><c> Codex</c><00:00:44.600><c> workflow</c><00:00:45.240><c> well</c>

00:00:45.550 --> 00:00:45.560 align:start position:0%
understand the full Codex workflow well
 

00:00:45.560 --> 00:00:48.230 align:start position:0%
understand the full Codex workflow well
enough<00:00:45.960><c> to</c><00:00:46.040><c> take</c><00:00:46.360><c> your</c><00:00:46.640><c> app</c><00:00:46.920><c> idea,</c><00:00:47.760><c> break</c><00:00:48.120><c> it</c>

00:00:48.230 --> 00:00:48.240 align:start position:0%
enough to take your app idea, break it
 

00:00:48.240 --> 00:00:51.270 align:start position:0%
enough to take your app idea, break it
into<00:00:48.480><c> manageable</c><00:00:49.080><c> steps,</c><00:00:50.080><c> and</c><00:00:50.240><c> use</c><00:00:50.480><c> Codex</c><00:00:51.120><c> to</c>

00:00:51.270 --> 00:00:51.280 align:start position:0%
into manageable steps, and use Codex to
 

00:00:51.280 --> 00:00:53.950 align:start position:0%
into manageable steps, and use Codex to
build<00:00:51.640><c> it</c><00:00:51.760><c> with</c><00:00:51.960><c> much</c><00:00:52.400><c> more</c><00:00:52.760><c> confidence.</c><00:00:53.720><c> Now,</c>

00:00:53.950 --> 00:00:53.960 align:start position:0%
build it with much more confidence. Now,
 

00:00:53.960 --> 00:00:56.230 align:start position:0%
build it with much more confidence. Now,
when<00:00:54.120><c> you</c><00:00:54.200><c> Google</c><00:00:54.480><c> for</c><00:00:54.680><c> Codex,</c><00:00:55.480><c> you're</c><00:00:55.960><c> going</c>

00:00:56.230 --> 00:00:56.240 align:start position:0%
when you Google for Codex, you're going
 

00:00:56.240 --> 00:01:00.390 align:start position:0%
when you Google for Codex, you're going
to<00:00:56.480><c> land</c><00:00:57.080><c> on</c><00:00:57.520><c> this</c><00:00:57.880><c> website</c><00:00:58.560><c> here.</c><00:00:59.640><c> And</c><00:01:00.040><c> here,</c>

00:01:00.390 --> 00:01:00.400 align:start position:0%
to land on this website here. And here,
 

00:01:00.400 --> 00:01:02.670 align:start position:0%
to land on this website here. And here,
you<00:01:00.560><c> can</c><00:01:00.840><c> learn</c><00:01:01.200><c> more</c><00:01:01.440><c> about</c><00:01:01.880><c> Codex,</c><00:01:02.440><c> and</c><00:01:02.560><c> you</c>

00:01:02.670 --> 00:01:02.680 align:start position:0%
you can learn more about Codex, and you
 

00:01:02.680 --> 00:01:05.030 align:start position:0%
you can learn more about Codex, and you
can<00:01:03.080><c> also</c><00:01:03.600><c> download</c><00:01:04.160><c> the</c><00:01:04.320><c> app.</c><00:01:04.720><c> Now,</c><00:01:04.879><c> as</c><00:01:04.960><c> you</c>

00:01:05.030 --> 00:01:05.040 align:start position:0%
can also download the app. Now, as you
 

00:01:05.040 --> 00:01:06.710 align:start position:0%
can also download the app. Now, as you
can<00:01:05.199><c> see,</c><00:01:05.360><c> it</c><00:01:05.440><c> says</c><00:01:05.720><c> here</c><00:01:06.080><c> download</c><00:01:06.560><c> for</c>

00:01:06.710 --> 00:01:06.720 align:start position:0%
can see, it says here download for
 

00:01:06.720 --> 00:01:09.710 align:start position:0%
can see, it says here download for
macOS.<00:01:07.840><c> That</c><00:01:08.120><c> is</c><00:01:08.240><c> because</c><00:01:08.560><c> I</c><00:01:08.600><c> have</c><00:01:08.840><c> macOS.</c><00:01:09.560><c> If</c>

00:01:09.710 --> 00:01:09.720 align:start position:0%
macOS. That is because I have macOS. If
 

00:01:09.720 --> 00:01:12.110 align:start position:0%
macOS. That is because I have macOS. If
you're<00:01:09.960><c> running</c><00:01:10.360><c> Windows,</c><00:01:11.440><c> you're</c><00:01:11.840><c> going</c><00:01:12.000><c> to</c>

00:01:12.110 --> 00:01:12.120 align:start position:0%
you're running Windows, you're going to
 

00:01:12.120 --> 00:01:14.350 align:start position:0%
you're running Windows, you're going to
have<00:01:12.520><c> a</c><00:01:12.600><c> button</c><00:01:13.080><c> that</c><00:01:13.360><c> says</c><00:01:13.680><c> download</c><00:01:14.200><c> for</c>

00:01:14.350 --> 00:01:14.360 align:start position:0%
have a button that says download for
 

00:01:14.360 --> 00:01:16.950 align:start position:0%
have a button that says download for
Windows.<00:01:14.840><c> So,</c><00:01:14.960><c> it</c><00:01:15.040><c> does</c><00:01:15.280><c> support</c><00:01:15.760><c> macOS</c><00:01:16.600><c> and</c>

00:01:16.950 --> 00:01:16.960 align:start position:0%
Windows. So, it does support macOS and
 

00:01:16.960 --> 00:01:19.190 align:start position:0%
Windows. So, it does support macOS and
Windows.<00:01:17.720><c> And</c><00:01:18.000><c> when</c><00:01:18.160><c> you</c><00:01:18.280><c> scroll</c><00:01:18.680><c> down,</c><00:01:19.080><c> you</c>

00:01:19.190 --> 00:01:19.200 align:start position:0%
Windows. And when you scroll down, you
 

00:01:19.200 --> 00:01:22.310 align:start position:0%
Windows. And when you scroll down, you
can<00:01:19.360><c> see</c><00:01:19.600><c> the</c><00:01:19.760><c> main</c><00:01:20.200><c> screenshot</c><00:01:21.600><c> that</c><00:01:21.920><c> kind</c><00:01:22.240><c> of</c>

00:01:22.310 --> 00:01:22.320 align:start position:0%
can see the main screenshot that kind of
 

00:01:22.320 --> 00:01:25.590 align:start position:0%
can see the main screenshot that kind of
gives<00:01:22.760><c> you</c><00:01:22.960><c> a</c><00:01:23.120><c> general</c><00:01:24.400><c> overview,</c><00:01:25.040><c> general</c>

00:01:25.590 --> 00:01:25.600 align:start position:0%
gives you a general overview, general
 

00:01:25.600 --> 00:01:29.190 align:start position:0%
gives you a general overview, general
idea<00:01:26.680><c> of</c><00:01:27.080><c> what</c><00:01:27.520><c> this</c><00:01:27.920><c> app</c><00:01:28.320><c> looks</c><00:01:28.720><c> like,</c><00:01:29.000><c> okay?</c>

00:01:29.190 --> 00:01:29.200 align:start position:0%
idea of what this app looks like, okay?
 

00:01:29.200 --> 00:01:30.870 align:start position:0%
idea of what this app looks like, okay?
And<00:01:29.320><c> you</c><00:01:29.400><c> can</c><00:01:29.560><c> kind</c><00:01:29.760><c> of</c><00:01:30.000><c> scroll</c><00:01:30.240><c> down,</c><00:01:30.600><c> you</c><00:01:30.720><c> can</c>

00:01:30.870 --> 00:01:30.880 align:start position:0%
And you can kind of scroll down, you can
 

00:01:30.880 --> 00:01:33.830 align:start position:0%
And you can kind of scroll down, you can
learn<00:01:31.160><c> more</c><00:01:31.440><c> about</c><00:01:31.840><c> it.</c><00:01:32.200><c> Or</c><00:01:32.520><c> we</c><00:01:32.680><c> can</c><00:01:32.920><c> jump</c><00:01:33.440><c> into</c>

00:01:33.830 --> 00:01:33.840 align:start position:0%
learn more about it. Or we can jump into
 

00:01:33.840 --> 00:01:36.230 align:start position:0%
learn more about it. Or we can jump into
my<00:01:34.160><c> Codex</c><00:01:34.840><c> instance</c><00:01:35.440><c> here,</c><00:01:35.720><c> and</c><00:01:35.840><c> I</c><00:01:35.880><c> can</c><00:01:36.040><c> give</c>

00:01:36.230 --> 00:01:36.240 align:start position:0%
my Codex instance here, and I can give
 

00:01:36.240 --> 00:01:37.550 align:start position:0%
my Codex instance here, and I can give
you<00:01:36.320><c> a</c><00:01:36.400><c> quick</c><00:01:36.680><c> overview.</c><00:01:37.160><c> So,</c><00:01:37.320><c> on</c><00:01:37.440><c> the</c>

00:01:37.550 --> 00:01:37.560 align:start position:0%
you a quick overview. So, on the
 

00:01:37.560 --> 00:01:39.950 align:start position:0%
you a quick overview. So, on the
left-hand<00:01:38.160><c> side,</c><00:01:39.000><c> we</c><00:01:39.160><c> have</c><00:01:39.320><c> things</c><00:01:39.640><c> like</c>

00:01:39.950 --> 00:01:39.960 align:start position:0%
left-hand side, we have things like
 

00:01:39.960 --> 00:01:42.430 align:start position:0%
left-hand side, we have things like
starting<00:01:40.360><c> a</c><00:01:40.440><c> new</c><00:01:40.640><c> chat,</c><00:01:41.320><c> search,</c><00:01:41.920><c> various</c>

00:01:42.430 --> 00:01:42.440 align:start position:0%
starting a new chat, search, various
 

00:01:42.440 --> 00:01:45.390 align:start position:0%
starting a new chat, search, various
plugins,<00:01:43.120><c> automations.</c><00:01:44.000><c> Just</c><00:01:44.440><c> below</c><00:01:44.840><c> that,</c>

00:01:45.390 --> 00:01:45.400 align:start position:0%
plugins, automations. Just below that,
 

00:01:45.400 --> 00:01:49.310 align:start position:0%
plugins, automations. Just below that,
we<00:01:45.640><c> have</c><00:01:46.120><c> our</c><00:01:46.600><c> main</c><00:01:47.760><c> organization,</c><00:01:49.040><c> right?</c>

00:01:49.310 --> 00:01:49.320 align:start position:0%
we have our main organization, right?
 

00:01:49.320 --> 00:01:51.110 align:start position:0%
we have our main organization, right?
And<00:01:49.440><c> this</c><00:01:49.600><c> is</c><00:01:49.760><c> where</c><00:01:50.000><c> you</c><00:01:50.080><c> can</c><00:01:50.320><c> organize</c><00:01:50.880><c> your</c>

00:01:51.110 --> 00:01:51.120 align:start position:0%
And this is where you can organize your
 

00:01:51.120 --> 00:01:54.070 align:start position:0%
And this is where you can organize your
projects,<00:01:52.040><c> okay?</c><00:01:52.880><c> And</c><00:01:53.040><c> the</c><00:01:53.120><c> idea</c><00:01:53.600><c> here</c><00:01:53.880><c> is</c>

00:01:54.070 --> 00:01:54.080 align:start position:0%
projects, okay? And the idea here is
 

00:01:54.080 --> 00:01:56.710 align:start position:0%
projects, okay? And the idea here is
that<00:01:54.600><c> anytime</c><00:01:55.120><c> you</c><00:01:55.200><c> have</c><00:01:55.440><c> a</c><00:01:55.520><c> project,</c><00:01:56.560><c> you</c>

00:01:56.710 --> 00:01:56.720 align:start position:0%
that anytime you have a project, you
 

00:01:56.720 --> 00:01:58.910 align:start position:0%
that anytime you have a project, you
want<00:01:56.880><c> to</c><00:01:57.000><c> click</c><00:01:57.360><c> here,</c><00:01:57.880><c> and</c><00:01:58.040><c> you</c><00:01:58.120><c> want</c><00:01:58.320><c> to</c>

00:01:58.910 --> 00:01:58.920 align:start position:0%
want to click here, and you want to
 

00:01:58.920 --> 00:02:01.710 align:start position:0%
want to click here, and you want to
either<00:01:59.320><c> start</c><00:01:59.600><c> it</c><00:01:59.720><c> from</c><00:01:59.880><c> scratch</c><00:02:00.840><c> or</c><00:02:01.040><c> you</c><00:02:01.400><c> use</c>

00:02:01.710 --> 00:02:01.720 align:start position:0%
either start it from scratch or you use
 

00:02:01.720 --> 00:02:04.710 align:start position:0%
either start it from scratch or you use
an<00:02:01.840><c> existing</c><00:02:02.320><c> folder</c><00:02:02.840><c> because</c><00:02:03.920><c> these</c><00:02:04.240><c> are</c><00:02:04.360><c> not</c>

00:02:04.710 --> 00:02:04.720 align:start position:0%
an existing folder because these are not
 

00:02:04.720 --> 00:02:06.830 align:start position:0%
an existing folder because these are not
organized<00:02:05.520><c> just</c><00:02:05.800><c> logically.</c><00:02:06.520><c> They're</c>

00:02:06.830 --> 00:02:06.840 align:start position:0%
organized just logically. They're
 

00:02:06.840 --> 00:02:10.950 align:start position:0%
organized just logically. They're
actually<00:02:07.400><c> linked</c><00:02:07.920><c> to</c><00:02:08.280><c> folders</c><00:02:09.399><c> on</c><00:02:09.800><c> your</c><00:02:10.200><c> disk,</c>

00:02:10.950 --> 00:02:10.960 align:start position:0%
actually linked to folders on your disk,
 

00:02:10.960 --> 00:02:13.150 align:start position:0%
actually linked to folders on your disk,
okay?<00:02:11.400><c> And</c><00:02:11.600><c> so,</c><00:02:12.080><c> everything</c><00:02:12.600><c> that</c><00:02:12.800><c> you</c><00:02:12.920><c> see</c>

00:02:13.150 --> 00:02:13.160 align:start position:0%
okay? And so, everything that you see
 

00:02:13.160 --> 00:02:16.750 align:start position:0%
okay? And so, everything that you see
here<00:02:14.160><c> represents</c><00:02:15.120><c> actual</c><00:02:15.680><c> folders.</c><00:02:16.400><c> Now,</c>

00:02:16.750 --> 00:02:16.760 align:start position:0%
here represents actual folders. Now,
 

00:02:16.760 --> 00:02:19.350 align:start position:0%
here represents actual folders. Now,
inside<00:02:17.360><c> of</c><00:02:17.480><c> these</c><00:02:17.680><c> folders,</c><00:02:18.440><c> we</c><00:02:18.720><c> have</c><00:02:19.040><c> some</c>

00:02:19.350 --> 00:02:19.360 align:start position:0%
inside of these folders, we have some
 

00:02:19.360 --> 00:02:21.430 align:start position:0%
inside of these folders, we have some
items<00:02:19.760><c> here.</c><00:02:19.959><c> Now,</c><00:02:20.160><c> these</c><00:02:20.400><c> are</c><00:02:20.520><c> not</c><00:02:20.800><c> files,</c>

00:02:21.430 --> 00:02:21.440 align:start position:0%
items here. Now, these are not files,
 

00:02:21.440 --> 00:02:23.350 align:start position:0%
items here. Now, these are not files,
and<00:02:21.600><c> they</c><00:02:21.760><c> do</c><00:02:21.920><c> not</c><00:02:22.240><c> represent</c><00:02:22.840><c> anything</c><00:02:23.240><c> on</c>

00:02:23.350 --> 00:02:23.360 align:start position:0%
and they do not represent anything on
 

00:02:23.360 --> 00:02:25.310 align:start position:0%
and they do not represent anything on
the<00:02:23.480><c> disk.</c><00:02:24.280><c> These</c><00:02:24.600><c> are</c><00:02:24.800><c> actually</c>

00:02:25.310 --> 00:02:25.320 align:start position:0%
the disk. These are actually
 

00:02:25.320 --> 00:02:27.270 align:start position:0%
the disk. These are actually
conversations,<00:02:26.440><c> right?</c><00:02:26.720><c> And</c><00:02:26.800><c> you</c><00:02:26.880><c> can</c><00:02:27.040><c> think</c>

00:02:27.270 --> 00:02:27.280 align:start position:0%
conversations, right? And you can think
 

00:02:27.280 --> 00:02:30.310 align:start position:0%
conversations, right? And you can think
of<00:02:27.440><c> them</c><00:02:28.160><c> as,</c><00:02:28.640><c> you</c><00:02:28.720><c> know,</c><00:02:28.959><c> similar</c><00:02:29.640><c> to</c><00:02:30.040><c> what</c>

00:02:30.310 --> 00:02:30.320 align:start position:0%
of them as, you know, similar to what
 

00:02:30.320 --> 00:02:32.990 align:start position:0%
of them as, you know, similar to what
you<00:02:30.440><c> might</c><00:02:30.640><c> have</c><00:02:30.840><c> in</c><00:02:30.959><c> Chat</c><00:02:31.440><c> GPT,</c><00:02:32.320><c> okay?</c><00:02:32.600><c> So,</c><00:02:32.840><c> if</c>

00:02:32.990 --> 00:02:33.000 align:start position:0%
you might have in Chat GPT, okay? So, if
 

00:02:33.000 --> 00:02:35.070 align:start position:0%
you might have in Chat GPT, okay? So, if
you're<00:02:33.160><c> working</c><00:02:33.560><c> on</c><00:02:33.680><c> this</c><00:02:33.840><c> project,</c><00:02:34.680><c> you</c><00:02:34.880><c> can</c>

00:02:35.070 --> 00:02:35.080 align:start position:0%
you're working on this project, you can
 

00:02:35.080 --> 00:02:37.830 align:start position:0%
you're working on this project, you can
create<00:02:35.520><c> a</c><00:02:35.600><c> new</c><00:02:35.800><c> conversation</c><00:02:36.760><c> simply</c><00:02:37.160><c> by,</c><00:02:37.760><c> you</c>

00:02:37.830 --> 00:02:37.840 align:start position:0%
create a new conversation simply by, you
 

00:02:37.840 --> 00:02:39.750 align:start position:0%
create a new conversation simply by, you
know,<00:02:38.000><c> clicking</c><00:02:38.360><c> here</c><00:02:38.720><c> or</c><00:02:38.880><c> pressing</c><00:02:39.240><c> command</c>

00:02:39.750 --> 00:02:39.760 align:start position:0%
know, clicking here or pressing command
 

00:02:39.760 --> 00:02:42.430 align:start position:0%
know, clicking here or pressing command
and<00:02:40.520><c> and</c><00:02:40.760><c> telling</c><00:02:41.240><c> it</c><00:02:41.560><c> what</c><00:02:41.880><c> you</c><00:02:42.000><c> want</c><00:02:42.280><c> to</c>

00:02:42.430 --> 00:02:42.440 align:start position:0%
and and telling it what you want to
 

00:02:42.440 --> 00:02:44.630 align:start position:0%
and and telling it what you want to
happen.<00:02:43.000><c> Now,</c><00:02:43.280><c> in</c><00:02:43.440><c> the</c><00:02:43.560><c> center</c><00:02:44.080><c> pane</c><00:02:44.440><c> over</c>

00:02:44.630 --> 00:02:44.640 align:start position:0%
happen. Now, in the center pane over
 

00:02:44.640 --> 00:02:47.030 align:start position:0%
happen. Now, in the center pane over
here,<00:02:45.520><c> this</c><00:02:45.840><c> is</c><00:02:46.040><c> where</c><00:02:46.400><c> you're</c><00:02:46.640><c> going</c><00:02:46.800><c> to</c><00:02:46.880><c> be</c>

00:02:47.030 --> 00:02:47.040 align:start position:0%
here, this is where you're going to be
 

00:02:47.040 --> 00:02:48.910 align:start position:0%
here, this is where you're going to be
communicating,<00:02:47.959><c> right?</c><00:02:48.200><c> So,</c><00:02:48.320><c> if</c><00:02:48.400><c> we</c><00:02:48.520><c> scroll</c>

00:02:48.910 --> 00:02:48.920 align:start position:0%
communicating, right? So, if we scroll
 

00:02:48.920 --> 00:02:52.350 align:start position:0%
communicating, right? So, if we scroll
back<00:02:49.280><c> up,</c><00:02:49.959><c> this</c><00:02:50.240><c> was</c><00:02:50.480><c> my</c><00:02:50.840><c> initial</c><00:02:51.920><c> prompt</c>

00:02:52.350 --> 00:02:52.360 align:start position:0%
back up, this was my initial prompt
 

00:02:52.360 --> 00:02:53.830 align:start position:0%
back up, this was my initial prompt
here.<00:02:52.560><c> I</c><00:02:52.640><c> want</c><00:02:52.840><c> to</c><00:02:52.880><c> build</c><00:02:53.160><c> a</c><00:02:53.240><c> very,</c><00:02:53.560><c> very</c>

00:02:53.830 --> 00:02:53.840 align:start position:0%
here. I want to build a very, very
 

00:02:53.840 --> 00:02:57.150 align:start position:0%
here. I want to build a very, very
simple<00:02:54.240><c> web</c><00:02:54.520><c> app</c><00:02:55.320><c> that</c><00:02:55.760><c> arranges</c><00:02:56.440><c> items</c><00:02:56.880><c> as</c><00:02:57.080><c> a</c>

00:02:57.150 --> 00:02:57.160 align:start position:0%
simple web app that arranges items as a
 

00:02:57.160 --> 00:02:59.790 align:start position:0%
simple web app that arranges items as a
Trello<00:02:57.560><c> Kanban</c><00:02:58.120><c> board</c><00:02:58.440><c> style,</c><00:02:58.840><c> etc.</c><00:02:59.440><c> And</c><00:02:59.600><c> then</c>

00:02:59.790 --> 00:02:59.800 align:start position:0%
Trello Kanban board style, etc. And then
 

00:02:59.800 --> 00:03:02.070 align:start position:0%
Trello Kanban board style, etc. And then
I<00:02:59.880><c> have</c><00:03:00.120><c> this</c><00:03:00.560><c> interaction</c><00:03:01.400><c> here,</c><00:03:01.640><c> right?</c><00:03:01.959><c> It</c>

00:03:02.070 --> 00:03:02.080 align:start position:0%
I have this interaction here, right? It
 

00:03:02.080 --> 00:03:05.030 align:start position:0%
I have this interaction here, right? It
does<00:03:02.400><c> something,</c><00:03:03.519><c> I</c><00:03:03.760><c> ask</c><00:03:04.160><c> it</c><00:03:04.280><c> to</c><00:03:04.400><c> do</c><00:03:04.560><c> something</c>

00:03:05.030 --> 00:03:05.040 align:start position:0%
does something, I ask it to do something
 

00:03:05.040 --> 00:03:08.910 align:start position:0%
does something, I ask it to do something
else,<00:03:05.360><c> etc.,</c><00:03:05.920><c> etc.</c><00:03:06.800><c> Now,</c><00:03:07.040><c> just</c><00:03:07.400><c> below</c><00:03:07.880><c> that</c><00:03:08.640><c> is</c>

00:03:08.910 --> 00:03:08.920 align:start position:0%
else, etc., etc. Now, just below that is
 

00:03:08.920 --> 00:03:10.670 align:start position:0%
else, etc., etc. Now, just below that is
where<00:03:09.320><c> you're</c><00:03:09.519><c> going</c><00:03:09.680><c> to</c><00:03:09.720><c> be</c><00:03:09.880><c> entering</c><00:03:10.480><c> your</c>

00:03:10.670 --> 00:03:10.680 align:start position:0%
where you're going to be entering your
 

00:03:10.680 --> 00:03:12.670 align:start position:0%
where you're going to be entering your
prompt,<00:03:11.320><c> okay?</c><00:03:11.720><c> So,</c><00:03:12.000><c> you're</c><00:03:12.200><c> going</c><00:03:12.320><c> to</c><00:03:12.400><c> be</c>

00:03:12.670 --> 00:03:12.680 align:start position:0%
prompt, okay? So, you're going to be
 

00:03:12.680 --> 00:03:14.470 align:start position:0%
prompt, okay? So, you're going to be
selecting<00:03:13.200><c> the</c><00:03:13.320><c> model,</c>

00:03:14.470 --> 00:03:14.480 align:start position:0%
selecting the model,
 

00:03:14.480 --> 00:03:16.030 align:start position:0%
selecting the model,
uh<00:03:14.560><c> the</c><00:03:14.680><c> different</c><00:03:15.120><c> reasoning,</c><00:03:15.760><c> and</c><00:03:15.920><c> we're</c>

00:03:16.030 --> 00:03:16.040 align:start position:0%
uh the different reasoning, and we're
 

00:03:16.040 --> 00:03:17.870 align:start position:0%
uh the different reasoning, and we're
going<00:03:16.200><c> to</c><00:03:16.239><c> be</c><00:03:16.360><c> covering</c><00:03:16.880><c> all</c><00:03:17.120><c> that,</c><00:03:17.519><c> but</c><00:03:17.680><c> this</c>

00:03:17.870 --> 00:03:17.880 align:start position:0%
going to be covering all that, but this
 

00:03:17.880 --> 00:03:20.310 align:start position:0%
going to be covering all that, but this
is<00:03:18.000><c> the</c><00:03:18.120><c> main</c><00:03:18.440><c> text</c><00:03:18.720><c> box</c><00:03:19.000><c> for</c><00:03:19.120><c> the</c><00:03:19.239><c> model.</c><00:03:20.040><c> Now,</c>

00:03:20.310 --> 00:03:20.320 align:start position:0%
is the main text box for the model. Now,
 

00:03:20.320 --> 00:03:22.509 align:start position:0%
is the main text box for the model. Now,
on<00:03:20.480><c> the</c><00:03:20.680><c> right-hand</c><00:03:21.360><c> side,</c><00:03:21.880><c> there's</c><00:03:22.080><c> a</c><00:03:22.160><c> lot</c><00:03:22.400><c> of</c>

00:03:22.509 --> 00:03:22.519 align:start position:0%
on the right-hand side, there's a lot of
 

00:03:22.519 --> 00:03:24.270 align:start position:0%
on the right-hand side, there's a lot of
interesting<00:03:22.959><c> things</c><00:03:23.239><c> happening</c><00:03:23.800><c> here</c><00:03:24.040><c> that</c><00:03:24.239><c> a</c>

00:03:24.270 --> 00:03:24.280 align:start position:0%
interesting things happening here that a
 

00:03:24.280 --> 00:03:26.910 align:start position:0%
interesting things happening here that a
lot<00:03:24.600><c> of</c><00:03:24.720><c> people</c><00:03:25.440><c> are</c><00:03:25.560><c> not</c><00:03:25.800><c> really</c><00:03:26.040><c> aware</c><00:03:26.560><c> of,</c>

00:03:26.910 --> 00:03:26.920 align:start position:0%
lot of people are not really aware of,
 

00:03:26.920 --> 00:03:29.509 align:start position:0%
lot of people are not really aware of,
okay?<00:03:27.320><c> And</c><00:03:27.640><c> a</c><00:03:27.720><c> lot</c><00:03:27.959><c> of</c><00:03:28.080><c> people</c><00:03:28.880><c> are</c><00:03:29.000><c> not</c><00:03:29.239><c> really</c>

00:03:29.509 --> 00:03:29.519 align:start position:0%
okay? And a lot of people are not really
 

00:03:29.519 --> 00:03:31.390 align:start position:0%
okay? And a lot of people are not really
like<00:03:29.880><c> using</c><00:03:30.400><c> it.</c><00:03:30.640><c> And</c><00:03:30.840><c> And</c><00:03:31.000><c> you</c><00:03:31.080><c> need</c><00:03:31.320><c> to</c>

00:03:31.390 --> 00:03:31.400 align:start position:0%
like using it. And And you need to
 

00:03:31.400 --> 00:03:33.670 align:start position:0%
like using it. And And you need to
understand<00:03:32.360><c> to</c><00:03:32.480><c> leverage</c><00:03:33.040><c> this</c><00:03:33.200><c> whole</c><00:03:33.480><c> app</c>

00:03:33.670 --> 00:03:33.680 align:start position:0%
understand to leverage this whole app
 

00:03:33.680 --> 00:03:36.550 align:start position:0%
understand to leverage this whole app
experience,<00:03:34.440><c> right?</c><00:03:35.200><c> So,</c><00:03:35.600><c> right</c><00:03:36.040><c> here,</c><00:03:36.400><c> we</c>

00:03:36.550 --> 00:03:36.560 align:start position:0%
experience, right? So, right here, we
 

00:03:36.560 --> 00:03:39.990 align:start position:0%
experience, right? So, right here, we
have<00:03:36.840><c> this</c><00:03:37.160><c> little</c><00:03:37.640><c> card</c><00:03:38.680><c> that</c><00:03:39.120><c> displays</c><00:03:39.920><c> a</c>

00:03:39.990 --> 00:03:40.000 align:start position:0%
have this little card that displays a
 

00:03:40.000 --> 00:03:42.350 align:start position:0%
have this little card that displays a
little<00:03:40.320><c> bit</c><00:03:40.440><c> of</c><00:03:40.560><c> information</c><00:03:41.360><c> about</c><00:03:42.120><c> this</c>

00:03:42.350 --> 00:03:42.360 align:start position:0%
little bit of information about this
 

00:03:42.360 --> 00:03:44.229 align:start position:0%
little bit of information about this
specific<00:03:42.840><c> conversation,</c><00:03:43.760><c> right?</c><00:03:44.000><c> So,</c><00:03:44.120><c> we</c>

00:03:44.229 --> 00:03:44.239 align:start position:0%
specific conversation, right? So, we
 

00:03:44.239 --> 00:03:46.310 align:start position:0%
specific conversation, right? So, we
have<00:03:44.440><c> branch</c><00:03:44.800><c> details,</c><00:03:45.760><c> we</c><00:03:45.920><c> have</c><00:03:46.080><c> some</c>

00:03:46.310 --> 00:03:46.320 align:start position:0%
have branch details, we have some
 

00:03:46.320 --> 00:03:49.910 align:start position:0%
have branch details, we have some
artifacts,<00:03:47.440><c> right?</c><00:03:47.760><c> And</c><00:03:47.880><c> these</c><00:03:48.120><c> are</c><00:03:48.760><c> the</c><00:03:49.000><c> data</c>

00:03:49.910 --> 00:03:49.920 align:start position:0%
artifacts, right? And these are the data
 

00:03:49.920 --> 00:03:52.630 align:start position:0%
artifacts, right? And these are the data
that<00:03:50.239><c> happened</c><00:03:50.800><c> as</c><00:03:51.040><c> a</c><00:03:51.120><c> result</c><00:03:51.680><c> of</c><00:03:51.800><c> this</c><00:03:52.040><c> convo,</c>

00:03:52.630 --> 00:03:52.640 align:start position:0%
that happened as a result of this convo,
 

00:03:52.640 --> 00:03:54.110 align:start position:0%
that happened as a result of this convo,
right?<00:03:52.840><c> And</c><00:03:53.000><c> so,</c><00:03:53.120><c> if</c><00:03:53.280><c> I</c><00:03:53.360><c> go</c><00:03:53.560><c> to</c><00:03:53.720><c> another</c>

00:03:54.110 --> 00:03:54.120 align:start position:0%
right? And so, if I go to another
 

00:03:54.120 --> 00:03:55.990 align:start position:0%
right? And so, if I go to another
conversation,<00:03:55.000><c> we</c><00:03:55.160><c> might</c><00:03:55.360><c> have</c><00:03:55.560><c> different</c>

00:03:55.990 --> 00:03:56.000 align:start position:0%
conversation, we might have different
 

00:03:56.000 --> 00:03:57.990 align:start position:0%
conversation, we might have different
artifacts,<00:03:56.640><c> right?</c><00:03:57.240><c> And</c><00:03:57.400><c> you</c><00:03:57.520><c> can</c><00:03:57.680><c> think</c><00:03:57.880><c> of</c>

00:03:57.990 --> 00:03:58.000 align:start position:0%
artifacts, right? And you can think of
 

00:03:58.000 --> 00:04:01.390 align:start position:0%
artifacts, right? And you can think of
an<00:03:58.160><c> artifact</c><00:03:58.840><c> as</c><00:03:59.120><c> a</c><00:03:59.280><c> side</c><00:03:59.760><c> effect</c><00:04:00.560><c> of,</c><00:04:01.280><c> you</c>

00:04:01.390 --> 00:04:01.400 align:start position:0%
an artifact as a side effect of, you
 

00:04:01.400 --> 00:04:03.910 align:start position:0%
an artifact as a side effect of, you
know,<00:04:01.600><c> of</c><00:04:01.840><c> your</c><00:04:02.160><c> conversation,</c><00:04:03.240><c> okay?</c><00:04:03.560><c> So,</c><00:04:03.760><c> if</c>

00:04:03.910 --> 00:04:03.920 align:start position:0%
know, of your conversation, okay? So, if
 

00:04:03.920 --> 00:04:05.950 align:start position:0%
know, of your conversation, okay? So, if
you've<00:04:04.120><c> created</c><00:04:04.560><c> a</c><00:04:04.640><c> readme</c><00:04:05.040><c> file,</c><00:04:05.760><c> you're</c>

00:04:05.950 --> 00:04:05.960 align:start position:0%
you've created a readme file, you're
 

00:04:05.960 --> 00:04:07.470 align:start position:0%
you've created a readme file, you're
going<00:04:06.080><c> to</c><00:04:06.160><c> see</c><00:04:06.360><c> it</c><00:04:06.480><c> here.</c><00:04:06.720><c> If</c><00:04:06.840><c> you</c><00:04:06.920><c> did</c><00:04:07.120><c> a</c><00:04:07.200><c> web</c>

00:04:07.470 --> 00:04:07.480 align:start position:0%
going to see it here. If you did a web
 

00:04:07.480 --> 00:04:09.310 align:start position:0%
going to see it here. If you did a web
search,<00:04:08.240><c> you're</c><00:04:08.440><c> going</c><00:04:08.560><c> to</c><00:04:08.680><c> see</c><00:04:08.880><c> it</c><00:04:09.040><c> here.</c>

00:04:09.310 --> 00:04:09.320 align:start position:0%
search, you're going to see it here.
 

00:04:09.320 --> 00:04:11.030 align:start position:0%
search, you're going to see it here.
Now,<00:04:09.640><c> one</c><00:04:09.880><c> of</c><00:04:09.959><c> the</c><00:04:10.040><c> more</c><00:04:10.280><c> interesting</c><00:04:10.760><c> things</c>

00:04:11.030 --> 00:04:11.040 align:start position:0%
Now, one of the more interesting things
 

00:04:11.040 --> 00:04:13.790 align:start position:0%
Now, one of the more interesting things
happens<00:04:12.080><c> when</c><00:04:12.320><c> you</c><00:04:12.440><c> click</c><00:04:12.760><c> this</c><00:04:13.080><c> button</c><00:04:13.560><c> and</c>

00:04:13.790 --> 00:04:13.800 align:start position:0%
happens when you click this button and
 

00:04:13.800 --> 00:04:16.069 align:start position:0%
happens when you click this button and
open<00:04:14.160><c> the</c><00:04:14.320><c> right-hand</c><00:04:14.920><c> pane.</c><00:04:15.400><c> And</c><00:04:15.600><c> here,</c><00:04:15.959><c> you</c>

00:04:16.069 --> 00:04:16.079 align:start position:0%
open the right-hand pane. And here, you
 

00:04:16.079 --> 00:04:17.910 align:start position:0%
open the right-hand pane. And here, you
can<00:04:16.239><c> see</c><00:04:16.400><c> all</c><00:04:16.600><c> kinds</c><00:04:16.880><c> of</c><00:04:17.000><c> interesting</c><00:04:17.519><c> things,</c>

00:04:17.910 --> 00:04:17.920 align:start position:0%
can see all kinds of interesting things,
 

00:04:17.920 --> 00:04:19.590 align:start position:0%
can see all kinds of interesting things,
right?<00:04:18.200><c> So,</c><00:04:18.320><c> for</c><00:04:18.480><c> instance,</c><00:04:18.799><c> if</c><00:04:18.959><c> I</c><00:04:19.040><c> click</c><00:04:19.359><c> this</c>

00:04:19.590 --> 00:04:19.600 align:start position:0%
right? So, for instance, if I click this
 

00:04:19.600 --> 00:04:23.070 align:start position:0%
right? So, for instance, if I click this
button,<00:04:20.440><c> I</c><00:04:20.600><c> can</c><00:04:20.799><c> have</c><00:04:21.000><c> a</c><00:04:21.079><c> side</c><00:04:21.640><c> chat,</c><00:04:22.440><c> or</c><00:04:22.800><c> I</c><00:04:22.880><c> can</c>

00:04:23.070 --> 00:04:23.080 align:start position:0%
button, I can have a side chat, or I can
 

00:04:23.080 --> 00:04:25.270 align:start position:0%
button, I can have a side chat, or I can
have<00:04:23.280><c> a</c><00:04:23.360><c> browser.</c><00:04:24.000><c> Now,</c><00:04:24.200><c> the</c><00:04:24.360><c> browser</c><00:04:24.960><c> feature</c>

00:04:25.270 --> 00:04:25.280 align:start position:0%
have a browser. Now, the browser feature
 

00:04:25.280 --> 00:04:27.870 align:start position:0%
have a browser. Now, the browser feature
is<00:04:25.440><c> actually</c><00:04:25.880><c> very,</c><00:04:26.280><c> very</c><00:04:26.560><c> powerful,</c><00:04:27.560><c> because</c>

00:04:27.870 --> 00:04:27.880 align:start position:0%
is actually very, very powerful, because
 

00:04:27.880 --> 00:04:31.470 align:start position:0%
is actually very, very powerful, because
I<00:04:27.960><c> can</c><00:04:28.160><c> simply</c><00:04:28.560><c> open</c><00:04:28.960><c> this</c><00:04:29.320><c> up</c><00:04:29.600><c> here,</c><00:04:30.480><c> and</c><00:04:31.240><c> as</c>

00:04:31.470 --> 00:04:31.480 align:start position:0%
I can simply open this up here, and as
 

00:04:31.480 --> 00:04:34.230 align:start position:0%
I can simply open this up here, and as
I'm<00:04:31.680><c> developing</c><00:04:32.280><c> this</c><00:04:32.600><c> app,</c><00:04:33.560><c> it's</c><00:04:33.840><c> going</c><00:04:34.080><c> to</c>

00:04:34.230 --> 00:04:34.240 align:start position:0%
I'm developing this app, it's going to
 

00:04:34.240 --> 00:04:36.990 align:start position:0%
I'm developing this app, it's going to
give<00:04:34.480><c> me</c><00:04:34.720><c> a</c><00:04:34.840><c> URL</c><00:04:35.600><c> that</c><00:04:35.800><c> I</c><00:04:35.880><c> can</c><00:04:36.120><c> open</c><00:04:36.520><c> here</c><00:04:36.880><c> in</c>

00:04:36.990 --> 00:04:37.000 align:start position:0%
give me a URL that I can open here in
 

00:04:37.000 --> 00:04:39.190 align:start position:0%
give me a URL that I can open here in
this<00:04:37.160><c> browser,</c><00:04:37.720><c> and</c><00:04:37.840><c> that</c><00:04:38.080><c> will</c><00:04:38.240><c> allow</c><00:04:38.680><c> me</c>

00:04:39.190 --> 00:04:39.200 align:start position:0%
this browser, and that will allow me
 

00:04:39.200 --> 00:04:41.430 align:start position:0%
this browser, and that will allow me
quick<00:04:39.640><c> iteration,</c><00:04:40.400><c> because</c><00:04:40.680><c> I'll</c><00:04:40.880><c> be</c><00:04:41.040><c> able</c><00:04:41.320><c> to</c>

00:04:41.430 --> 00:04:41.440 align:start position:0%
quick iteration, because I'll be able to
 

00:04:41.440 --> 00:04:45.070 align:start position:0%
quick iteration, because I'll be able to
see<00:04:42.240><c> exactly</c><00:04:43.040><c> how</c><00:04:43.200><c> the</c><00:04:43.400><c> app</c><00:04:43.680><c> looks</c><00:04:44.440><c> as</c><00:04:44.880><c> I'm</c>

00:04:45.070 --> 00:04:45.080 align:start position:0%
see exactly how the app looks as I'm
 

00:04:45.080 --> 00:04:46.870 align:start position:0%
see exactly how the app looks as I'm
developing<00:04:45.840><c> it.</c><00:04:46.120><c> And</c><00:04:46.400><c> we're</c><00:04:46.560><c> going</c><00:04:46.680><c> to</c><00:04:46.760><c> be</c>

00:04:46.870 --> 00:04:46.880 align:start position:0%
developing it. And we're going to be
 

00:04:46.880 --> 00:04:48.990 align:start position:0%
developing it. And we're going to be
doing<00:04:47.240><c> all</c><00:04:47.520><c> of</c><00:04:47.640><c> that</c><00:04:47.960><c> in</c><00:04:48.120><c> more</c><00:04:48.360><c> detail</c><00:04:48.919><c> a</c>

00:04:48.990 --> 00:04:49.000 align:start position:0%
doing all of that in more detail a
 

00:04:49.000 --> 00:04:53.870 align:start position:0%
doing all of that in more detail a
little<00:04:49.280><c> bit</c><00:04:49.480><c> later</c><00:04:49.919><c> in</c><00:04:50.080><c> this</c><00:04:50.280><c> tutorial.</c>

00:04:53.870 --> 00:04:53.880 align:start position:0%
 
 

00:04:53.880 --> 00:04:56.470 align:start position:0%
 
First,<00:04:54.440><c> let's</c><00:04:54.720><c> talk</c><00:04:54.960><c> about</c><00:04:55.280><c> Codex.</c><00:04:56.280><c> The</c>

00:04:56.470 --> 00:04:56.480 align:start position:0%
First, let's talk about Codex. The
 

00:04:56.480 --> 00:04:59.190 align:start position:0%
First, let's talk about Codex. The
easiest<00:04:57.160><c> way</c><00:04:57.360><c> to</c><00:04:57.520><c> understand</c><00:04:58.000><c> Codex</c>

00:04:59.190 --> 00:04:59.200 align:start position:0%
easiest way to understand Codex
 

00:04:59.200 --> 00:05:01.390 align:start position:0%
easiest way to understand Codex
is<00:04:59.400><c> that</c><00:04:59.600><c> it</c><00:04:59.720><c> starts</c><00:05:00.160><c> from</c><00:05:00.320><c> the</c><00:05:00.440><c> same</c><00:05:00.919><c> basic</c>

00:05:01.390 --> 00:05:01.400 align:start position:0%
is that it starts from the same basic
 

00:05:01.400 --> 00:05:04.750 align:start position:0%
is that it starts from the same basic
idea<00:05:01.840><c> as</c><00:05:02.080><c> ChatGPT,</c><00:05:03.280><c> but</c><00:05:03.680><c> it</c><00:05:03.800><c> is</c><00:05:04.000><c> connected</c><00:05:04.640><c> to</c>

00:05:04.750 --> 00:05:04.760 align:start position:0%
idea as ChatGPT, but it is connected to
 

00:05:04.760 --> 00:05:06.990 align:start position:0%
idea as ChatGPT, but it is connected to
your<00:05:05.000><c> actual</c><00:05:05.560><c> working</c><00:05:06.000><c> environment.</c><00:05:06.840><c> So,</c>

00:05:06.990 --> 00:05:07.000 align:start position:0%
your actual working environment. So,
 

00:05:07.000 --> 00:05:09.590 align:start position:0%
your actual working environment. So,
instead<00:05:07.400><c> of</c><00:05:07.520><c> only</c><00:05:07.800><c> answering</c><00:05:08.280><c> questions,</c><00:05:09.440><c> it</c>

00:05:09.590 --> 00:05:09.600 align:start position:0%
instead of only answering questions, it
 

00:05:09.600 --> 00:05:12.750 align:start position:0%
instead of only answering questions, it
can<00:05:09.800><c> inspect</c><00:05:10.360><c> files,</c><00:05:11.280><c> edit</c><00:05:11.640><c> code,</c><00:05:12.480><c> run</c>

00:05:12.750 --> 00:05:12.760 align:start position:0%
can inspect files, edit code, run
 

00:05:12.760 --> 00:05:16.710 align:start position:0%
can inspect files, edit code, run
commands,<00:05:13.960><c> use</c><00:05:14.280><c> the</c><00:05:14.400><c> browser,</c><00:05:15.400><c> test</c><00:05:15.720><c> the</c><00:05:15.840><c> app,</c>

00:05:16.710 --> 00:05:16.720 align:start position:0%
commands, use the browser, test the app,
 

00:05:16.720 --> 00:05:19.710 align:start position:0%
commands, use the browser, test the app,
and<00:05:17.000><c> help</c><00:05:17.400><c> move</c><00:05:17.800><c> a</c><00:05:17.960><c> project</c><00:05:18.919><c> forward.</c><00:05:19.600><c> The</c>

00:05:19.710 --> 00:05:19.720 align:start position:0%
and help move a project forward. The
 

00:05:19.720 --> 00:05:22.550 align:start position:0%
and help move a project forward. The
difference<00:05:20.240><c> matters</c><00:05:20.640><c> a</c><00:05:20.720><c> lot.</c><00:05:21.480><c> ChatGPT</c><00:05:22.360><c> is</c>

00:05:22.550 --> 00:05:22.560 align:start position:0%
difference matters a lot. ChatGPT is
 

00:05:22.560 --> 00:05:25.070 align:start position:0%
difference matters a lot. ChatGPT is
great<00:05:23.160><c> when</c><00:05:23.320><c> I</c><00:05:23.400><c> want</c><00:05:23.640><c> an</c><00:05:23.760><c> explanation,</c><00:05:24.919><c> a</c>

00:05:25.070 --> 00:05:25.080 align:start position:0%
great when I want an explanation, a
 

00:05:25.080 --> 00:05:27.990 align:start position:0%
great when I want an explanation, a
rewrite,<00:05:25.919><c> a</c><00:05:26.040><c> brainstorm,</c><00:05:27.360><c> or</c><00:05:27.560><c> a</c><00:05:27.640><c> quick</c>

00:05:27.990 --> 00:05:28.000 align:start position:0%
rewrite, a brainstorm, or a quick
 

00:05:28.000 --> 00:05:30.590 align:start position:0%
rewrite, a brainstorm, or a quick
answer.<00:05:28.680><c> Codex</c><00:05:29.280><c> is</c><00:05:29.480><c> what</c><00:05:29.640><c> I</c><00:05:29.720><c> use</c><00:05:30.040><c> when</c><00:05:30.240><c> I</c><00:05:30.320><c> want</c>

00:05:30.590 --> 00:05:30.600 align:start position:0%
answer. Codex is what I use when I want
 

00:05:30.600 --> 00:05:34.150 align:start position:0%
answer. Codex is what I use when I want
work<00:05:31.120><c> to</c><00:05:31.280><c> happen</c><00:05:31.680><c> inside</c><00:05:32.200><c> a</c><00:05:32.320><c> real</c><00:05:32.640><c> project.</c><00:05:33.960><c> It</c>

00:05:34.150 --> 00:05:34.160 align:start position:0%
work to happen inside a real project. It
 

00:05:34.160 --> 00:05:36.750 align:start position:0%
work to happen inside a real project. It
can<00:05:34.320><c> do</c><00:05:34.520><c> many</c><00:05:34.919><c> of</c><00:05:35.040><c> the</c><00:05:35.160><c> same</c><00:05:35.600><c> reasoning</c><00:05:36.160><c> tasks</c>

00:05:36.750 --> 00:05:36.760 align:start position:0%
can do many of the same reasoning tasks
 

00:05:36.760 --> 00:05:38.710 align:start position:0%
can do many of the same reasoning tasks
as<00:05:37.040><c> ChatGPT,</c>

00:05:38.710 --> 00:05:38.720 align:start position:0%
as ChatGPT,
 

00:05:38.720 --> 00:05:40.950 align:start position:0%
as ChatGPT,
but<00:05:38.880><c> it</c><00:05:39.000><c> can</c><00:05:39.200><c> also</c><00:05:39.760><c> act</c><00:05:40.080><c> on</c><00:05:40.200><c> the</c><00:05:40.320><c> project</c>

00:05:40.950 --> 00:05:40.960 align:start position:0%
but it can also act on the project
 

00:05:40.960 --> 00:05:44.350 align:start position:0%
but it can also act on the project
directly.<00:05:42.200><c> That</c><00:05:42.520><c> is</c><00:05:42.720><c> why</c><00:05:43.040><c> I</c><00:05:43.160><c> keep</c><00:05:43.480><c> ChatGPT</c>

00:05:44.350 --> 00:05:44.360 align:start position:0%
directly. That is why I keep ChatGPT
 

00:05:44.360 --> 00:05:47.630 align:start position:0%
directly. That is why I keep ChatGPT
mostly<00:05:44.880><c> for</c><00:05:45.120><c> pure</c><00:05:45.640><c> informational</c><00:05:46.400><c> questions,</c>

00:05:47.630 --> 00:05:47.640 align:start position:0%
mostly for pure informational questions,
 

00:05:47.640 --> 00:05:50.950 align:start position:0%
mostly for pure informational questions,
and<00:05:47.880><c> I</c><00:05:47.960><c> keep</c><00:05:48.280><c> Coda</c><00:05:48.880><c> for</c><00:05:49.240><c> work</c><00:05:49.600><c> threads.</c><00:05:50.600><c> So,</c><00:05:50.760><c> my</c>

00:05:50.950 --> 00:05:50.960 align:start position:0%
and I keep Coda for work threads. So, my
 

00:05:50.960 --> 00:05:54.830 align:start position:0%
and I keep Coda for work threads. So, my
project<00:05:51.640><c> context</c><00:05:52.480><c> stays</c><00:05:53.000><c> focused</c><00:05:54.000><c> and</c><00:05:54.200><c> clean.</c>

00:05:54.830 --> 00:05:54.840 align:start position:0%
project context stays focused and clean.
 

00:05:54.840 --> 00:05:57.350 align:start position:0%
project context stays focused and clean.
There<00:05:55.000><c> are</c><00:05:55.080><c> two</c><00:05:55.280><c> main</c><00:05:55.600><c> ways</c><00:05:56.000><c> to</c><00:05:56.120><c> use</c><00:05:56.360><c> Coda.</c><00:05:57.200><c> The</c>

00:05:57.350 --> 00:05:57.360 align:start position:0%
There are two main ways to use Coda. The
 

00:05:57.360 --> 00:06:00.590 align:start position:0%
There are two main ways to use Coda. The
first<00:05:58.120><c> is</c><00:05:58.280><c> through</c><00:05:58.480><c> the</c><00:05:58.640><c> CLI,</c><00:05:59.560><c> which</c><00:05:59.800><c> is</c><00:06:00.000><c> best</c>

00:06:00.590 --> 00:06:00.600 align:start position:0%
first is through the CLI, which is best
 

00:06:00.600 --> 00:06:02.510 align:start position:0%
first is through the CLI, which is best
when<00:06:00.760><c> you</c><00:06:00.880><c> already</c><00:06:01.280><c> live</c><00:06:01.600><c> in</c><00:06:01.680><c> the</c><00:06:01.800><c> terminal</c>

00:06:02.510 --> 00:06:02.520 align:start position:0%
when you already live in the terminal
 

00:06:02.520 --> 00:06:05.110 align:start position:0%
when you already live in the terminal
and<00:06:02.720><c> want</c><00:06:02.920><c> to</c><00:06:03.040><c> run</c><00:06:03.240><c> quick</c><00:06:03.600><c> repo</c><00:06:04.040><c> tasks,</c>

00:06:05.110 --> 00:06:05.120 align:start position:0%
and want to run quick repo tasks,
 

00:06:05.120 --> 00:06:09.110 align:start position:0%
and want to run quick repo tasks,
scripts,<00:06:06.360><c> lightweight</c><00:06:07.040><c> edits,</c><00:06:08.040><c> or</c><00:06:08.360><c> developer</c>

00:06:09.110 --> 00:06:09.120 align:start position:0%
scripts, lightweight edits, or developer
 

00:06:09.120 --> 00:06:12.270 align:start position:0%
scripts, lightweight edits, or developer
style<00:06:09.640><c> iterations.</c><00:06:10.720><c> The</c><00:06:10.880><c> second</c><00:06:11.440><c> is</c><00:06:11.680><c> the</c><00:06:11.800><c> Mac</c>

00:06:12.270 --> 00:06:12.280 align:start position:0%
style iterations. The second is the Mac
 

00:06:12.280 --> 00:06:15.070 align:start position:0%
style iterations. The second is the Mac
app,<00:06:12.680><c> which</c><00:06:12.920><c> is</c><00:06:13.080><c> usually</c><00:06:13.600><c> better</c><00:06:13.960><c> for</c><00:06:14.280><c> visual</c>

00:06:15.070 --> 00:06:15.080 align:start position:0%
app, which is usually better for visual
 

00:06:15.080 --> 00:06:17.230 align:start position:0%
app, which is usually better for visual
app<00:06:15.360><c> building</c><00:06:15.840><c> work.</c><00:06:16.400><c> If</c><00:06:16.600><c> I</c><00:06:16.680><c> want</c><00:06:16.880><c> to</c><00:06:16.960><c> see</c><00:06:17.120><c> the</c>

00:06:17.230 --> 00:06:17.240 align:start position:0%
app building work. If I want to see the
 

00:06:17.240 --> 00:06:20.430 align:start position:0%
app building work. If I want to see the
browser<00:06:17.760><c> preview,</c><00:06:18.440><c> inspect</c><00:06:19.120><c> file</c><00:06:19.560><c> changes,</c>

00:06:20.430 --> 00:06:20.440 align:start position:0%
browser preview, inspect file changes,
 

00:06:20.440 --> 00:06:22.830 align:start position:0%
browser preview, inspect file changes,
manage<00:06:21.000><c> a</c><00:06:21.080><c> longer</c><00:06:21.480><c> project,</c><00:06:22.480><c> approve</c>

00:06:22.830 --> 00:06:22.840 align:start position:0%
manage a longer project, approve
 

00:06:22.840 --> 00:06:26.270 align:start position:0%
manage a longer project, approve
permissions,<00:06:23.960><c> review</c><00:06:24.400><c> artifacts,</c><00:06:25.640><c> or</c><00:06:25.840><c> teach</c>

00:06:26.270 --> 00:06:26.280 align:start position:0%
permissions, review artifacts, or teach
 

00:06:26.280 --> 00:06:29.390 align:start position:0%
permissions, review artifacts, or teach
the<00:06:26.440><c> workflow</c><00:06:27.000><c> on</c><00:06:27.200><c> screen,</c><00:06:28.360><c> the</c><00:06:28.480><c> Mac</c><00:06:29.000><c> app</c>

00:06:29.390 --> 00:06:29.400 align:start position:0%
the workflow on screen, the Mac app
 

00:06:29.400 --> 00:06:32.750 align:start position:0%
the workflow on screen, the Mac app
gives<00:06:29.720><c> me</c><00:06:29.919><c> a</c><00:06:30.080><c> much</c><00:06:30.760><c> clearer</c><00:06:31.360><c> workspace.</c><00:06:32.600><c> And</c>

00:06:32.750 --> 00:06:32.760 align:start position:0%
gives me a much clearer workspace. And
 

00:06:32.760 --> 00:06:34.909 align:start position:0%
gives me a much clearer workspace. And
that<00:06:32.880><c> is</c><00:06:33.040><c> why</c><00:06:33.280><c> I</c><00:06:33.360><c> highly</c><00:06:33.800><c> prefer</c><00:06:34.440><c> to</c><00:06:34.600><c> use</c><00:06:34.800><c> the</c>

00:06:34.909 --> 00:06:34.919 align:start position:0%
that is why I highly prefer to use the
 

00:06:34.919 --> 00:06:37.150 align:start position:0%
that is why I highly prefer to use the
Mac<00:06:35.320><c> app,</c><00:06:35.640><c> and</c><00:06:35.800><c> that</c><00:06:35.919><c> is</c><00:06:36.080><c> what</c><00:06:36.240><c> I</c><00:06:36.320><c> recommend</c>

00:06:37.150 --> 00:06:37.160 align:start position:0%
Mac app, and that is what I recommend
 

00:06:37.160 --> 00:06:39.950 align:start position:0%
Mac app, and that is what I recommend
you<00:06:37.320><c> use</c><00:06:37.760><c> as</c><00:06:38.000><c> well.</c><00:06:38.440><c> Inside</c><00:06:39.000><c> the</c><00:06:39.120><c> Mac</c><00:06:39.520><c> app,</c><00:06:39.840><c> the</c>

00:06:39.950 --> 00:06:39.960 align:start position:0%
you use as well. Inside the Mac app, the
 

00:06:39.960 --> 00:06:41.990 align:start position:0%
you use as well. Inside the Mac app, the
main<00:06:40.360><c> pieces</c><00:06:40.800><c> to</c><00:06:40.919><c> understand</c><00:06:41.680><c> are</c><00:06:41.840><c> the</c>

00:06:41.990 --> 00:06:42.000 align:start position:0%
main pieces to understand are the
 

00:06:42.000 --> 00:06:45.030 align:start position:0%
main pieces to understand are the
project<00:06:42.960><c> or</c><00:06:43.080><c> the</c><00:06:43.200><c> workspace,</c><00:06:44.440><c> the</c><00:06:44.600><c> thread</c>

00:06:45.030 --> 00:06:45.040 align:start position:0%
project or the workspace, the thread
 

00:06:45.040 --> 00:06:48.670 align:start position:0%
project or the workspace, the thread
area,<00:06:46.080><c> the</c><00:06:46.200><c> model</c><00:06:46.760><c> selector,</c><00:06:47.960><c> the</c><00:06:48.120><c> thinking</c>

00:06:48.670 --> 00:06:48.680 align:start position:0%
area, the model selector, the thinking
 

00:06:48.680 --> 00:06:52.430 align:start position:0%
area, the model selector, the thinking
mode<00:06:49.000><c> selector,</c><00:06:50.240><c> file</c><00:06:50.680><c> changes,</c><00:06:51.840><c> terminal</c>

00:06:52.430 --> 00:06:52.440 align:start position:0%
mode selector, file changes, terminal
 

00:06:52.440 --> 00:06:56.270 align:start position:0%
mode selector, file changes, terminal
output,<00:06:53.520><c> browser</c><00:06:54.160><c> preview,</c><00:06:55.000><c> artifacts,</c>

00:06:56.270 --> 00:06:56.280 align:start position:0%
output, browser preview, artifacts,
 

00:06:56.280 --> 00:06:59.350 align:start position:0%
output, browser preview, artifacts,
permissions,<00:06:57.680><c> and</c><00:06:57.800><c> the</c><00:06:57.919><c> review</c><00:06:58.360><c> flow.</c><00:06:58.919><c> Once</c>

00:06:59.350 --> 00:06:59.360 align:start position:0%
permissions, and the review flow. Once
 

00:06:59.360 --> 00:07:03.030 align:start position:0%
permissions, and the review flow. Once
those<00:06:59.800><c> pieces</c><00:07:00.320><c> make</c><00:07:00.640><c> sense,</c><00:07:01.800><c> Coda</c><00:07:02.520><c> stops</c>

00:07:03.030 --> 00:07:03.040 align:start position:0%
those pieces make sense, Coda stops
 

00:07:03.040 --> 00:07:05.909 align:start position:0%
those pieces make sense, Coda stops
feeling<00:07:03.400><c> like</c><00:07:03.640><c> a</c><00:07:03.720><c> chat</c><00:07:04.160><c> box</c><00:07:05.080><c> and</c><00:07:05.320><c> starts</c>

00:07:05.909 --> 00:07:05.919 align:start position:0%
feeling like a chat box and starts
 

00:07:05.919 --> 00:07:08.070 align:start position:0%
feeling like a chat box and starts
feeling<00:07:06.360><c> like</c><00:07:06.560><c> an</c><00:07:06.800><c> app</c><00:07:07.240><c> building</c>

00:07:08.070 --> 00:07:08.080 align:start position:0%
feeling like an app building
 

00:07:08.080 --> 00:07:10.550 align:start position:0%
feeling like an app building
environment.<00:07:08.880><c> The</c><00:07:09.000><c> project</c><00:07:09.600><c> pane</c><00:07:10.000><c> is</c><00:07:10.280><c> where</c>

00:07:10.550 --> 00:07:10.560 align:start position:0%
environment. The project pane is where
 

00:07:10.560 --> 00:07:13.550 align:start position:0%
environment. The project pane is where
you<00:07:10.800><c> open</c><00:07:11.240><c> or</c><00:07:11.400><c> switch</c><00:07:11.880><c> between</c><00:07:12.200><c> projects.</c>

00:07:13.550 --> 00:07:13.560 align:start position:0%
you open or switch between projects.
 

00:07:13.560 --> 00:07:15.110 align:start position:0%
you open or switch between projects.
The<00:07:13.720><c> thread</c><00:07:14.160><c> area</c><00:07:14.560><c> is</c><00:07:14.800><c> where</c><00:07:15.000><c> the</c>

00:07:15.110 --> 00:07:15.120 align:start position:0%
The thread area is where the
 

00:07:15.120 --> 00:07:18.750 align:start position:0%
The thread area is where the
conversation<00:07:16.200><c> and</c><00:07:16.440><c> task</c><00:07:16.919><c> history</c><00:07:17.560><c> lives.</c>

00:07:18.750 --> 00:07:18.760 align:start position:0%
conversation and task history lives.
 

00:07:18.760 --> 00:07:21.350 align:start position:0%
conversation and task history lives.
The<00:07:18.880><c> file</c><00:07:19.320><c> change</c><00:07:19.720><c> view</c><00:07:20.000><c> shows</c><00:07:20.520><c> what</c><00:07:20.760><c> Coda</c>

00:07:21.350 --> 00:07:21.360 align:start position:0%
The file change view shows what Coda
 

00:07:21.360 --> 00:07:24.470 align:start position:0%
The file change view shows what Coda
wants<00:07:21.640><c> to</c><00:07:21.800><c> edit</c><00:07:22.640><c> before</c><00:07:23.200><c> those</c><00:07:23.640><c> changes</c><00:07:24.280><c> are</c>

00:07:24.470 --> 00:07:24.480 align:start position:0%
wants to edit before those changes are
 

00:07:24.480 --> 00:07:26.909 align:start position:0%
wants to edit before those changes are
accepted.<00:07:25.240><c> The</c><00:07:25.400><c> terminal</c><00:07:26.000><c> output</c><00:07:26.520><c> shows</c>

00:07:26.909 --> 00:07:26.919 align:start position:0%
accepted. The terminal output shows
 

00:07:26.919 --> 00:07:29.750 align:start position:0%
accepted. The terminal output shows
commands,<00:07:27.960><c> builds,</c><00:07:28.640><c> errors,</c><00:07:29.600><c> and</c>

00:07:29.750 --> 00:07:29.760 align:start position:0%
commands, builds, errors, and
 

00:07:29.760 --> 00:07:32.590 align:start position:0%
commands, builds, errors, and
verification<00:07:30.680><c> steps.</c><00:07:31.400><c> The</c><00:07:31.520><c> browser</c><00:07:32.080><c> preview</c>

00:07:32.590 --> 00:07:32.600 align:start position:0%
verification steps. The browser preview
 

00:07:32.600 --> 00:07:34.950 align:start position:0%
verification steps. The browser preview
is<00:07:32.840><c> where</c><00:07:33.080><c> you</c><00:07:33.200><c> can</c><00:07:33.440><c> inspect</c><00:07:34.120><c> the</c><00:07:34.240><c> running</c><00:07:34.640><c> app</c>

00:07:34.950 --> 00:07:34.960 align:start position:0%
is where you can inspect the running app
 

00:07:34.960 --> 00:07:36.310 align:start position:0%
is where you can inspect the running app
visually.

00:07:36.310 --> 00:07:36.320 align:start position:0%
visually.
 

00:07:36.320 --> 00:07:39.670 align:start position:0%
visually.
Together,<00:07:37.440><c> these</c><00:07:37.919><c> pieces</c><00:07:38.520><c> make</c><00:07:38.840><c> Coda</c><00:07:39.360><c> feel</c>

00:07:39.670 --> 00:07:39.680 align:start position:0%
Together, these pieces make Coda feel
 

00:07:39.680 --> 00:07:42.590 align:start position:0%
Together, these pieces make Coda feel
less<00:07:40.000><c> like</c><00:07:40.280><c> a</c><00:07:40.360><c> chat</c><00:07:40.840><c> bot</c><00:07:41.720><c> and</c><00:07:41.919><c> more</c><00:07:42.160><c> like</c><00:07:42.480><c> a</c>

00:07:42.590 --> 00:07:42.600 align:start position:0%
less like a chat bot and more like a
 

00:07:42.600 --> 00:07:44.710 align:start position:0%
less like a chat bot and more like a
working<00:07:43.200><c> development</c><00:07:44.120><c> environment.</c>

00:07:44.710 --> 00:07:44.720 align:start position:0%
working development environment.
 

00:07:44.720 --> 00:07:47.150 align:start position:0%
working development environment.
Permission<00:07:45.200><c> flow</c><00:07:45.520><c> is</c><00:07:45.680><c> also</c><00:07:46.080><c> important.</c>

00:07:47.150 --> 00:07:47.160 align:start position:0%
Permission flow is also important.
 

00:07:47.160 --> 00:07:49.590 align:start position:0%
Permission flow is also important.
Cortex<00:07:47.680><c> should</c><00:07:47.960><c> never</c><00:07:48.320><c> feel</c><00:07:48.720><c> like</c><00:07:49.040><c> a</c><00:07:49.160><c> black</c>

00:07:49.590 --> 00:07:49.600 align:start position:0%
Cortex should never feel like a black
 

00:07:49.600 --> 00:07:53.030 align:start position:0%
Cortex should never feel like a black
box<00:07:50.480><c> that</c><00:07:50.720><c> silently</c><00:07:51.480><c> changes</c><00:07:52.120><c> everything.</c><00:07:52.880><c> As</c>

00:07:53.030 --> 00:07:53.040 align:start position:0%
box that silently changes everything. As
 

00:07:53.040 --> 00:07:55.350 align:start position:0%
box that silently changes everything. As
soon<00:07:53.280><c> as</c><00:07:53.440><c> it</c><00:07:53.600><c> finishes</c><00:07:54.120><c> running</c><00:07:54.480><c> commands,</c>

00:07:55.350 --> 00:07:55.360 align:start position:0%
soon as it finishes running commands,
 

00:07:55.360 --> 00:07:57.830 align:start position:0%
soon as it finishes running commands,
editing<00:07:55.800><c> files,</c><00:07:56.560><c> or</c><00:07:56.760><c> taking</c><00:07:57.200><c> an</c><00:07:57.320><c> action</c><00:07:57.640><c> that</c>

00:07:57.830 --> 00:07:57.840 align:start position:0%
editing files, or taking an action that
 

00:07:57.840 --> 00:08:00.550 align:start position:0%
editing files, or taking an action that
matters,<00:07:58.600><c> you</c><00:07:58.760><c> can</c><00:07:58.960><c> always</c><00:07:59.360><c> inspect</c><00:08:00.400><c> what</c>

00:08:00.550 --> 00:08:00.560 align:start position:0%
matters, you can always inspect what
 

00:08:00.560 --> 00:08:03.510 align:start position:0%
matters, you can always inspect what
it's<00:08:00.840><c> doing,</c><00:08:01.600><c> approve</c><00:08:02.040><c> the</c><00:08:02.160><c> right</c><00:08:02.480><c> actions,</c>

00:08:03.510 --> 00:08:03.520 align:start position:0%
it's doing, approve the right actions,
 

00:08:03.520 --> 00:08:08.990 align:start position:0%
it's doing, approve the right actions,
and<00:08:03.760><c> keep</c><00:08:04.120><c> control</c><00:08:04.840><c> over</c><00:08:05.080><c> the</c><00:08:05.200><c> project.</c>

00:08:08.990 --> 00:08:09.000 align:start position:0%
 
 

00:08:09.000 --> 00:08:10.430 align:start position:0%
 
The<00:08:09.040><c> next</c><00:08:09.320><c> thing</c><00:08:09.480><c> to</c><00:08:09.600><c> understand</c><00:08:10.120><c> is</c><00:08:10.240><c> that</c>

00:08:10.430 --> 00:08:10.440 align:start position:0%
The next thing to understand is that
 

00:08:10.440 --> 00:08:13.710 align:start position:0%
The next thing to understand is that
Cortex<00:08:10.920><c> is</c><00:08:11.080><c> not</c><00:08:11.400><c> just</c><00:08:11.760><c> one</c><00:08:12.000><c> fixed</c><00:08:12.360><c> experience.</c>

00:08:13.710 --> 00:08:13.720 align:start position:0%
Cortex is not just one fixed experience.
 

00:08:13.720 --> 00:08:15.550 align:start position:0%
Cortex is not just one fixed experience.
There<00:08:13.880><c> are</c><00:08:14.000><c> a</c><00:08:14.040><c> few</c><00:08:14.360><c> workflow</c><00:08:14.840><c> decisions</c><00:08:15.440><c> you</c>

00:08:15.550 --> 00:08:15.560 align:start position:0%
There are a few workflow decisions you
 

00:08:15.560 --> 00:08:17.950 align:start position:0%
There are a few workflow decisions you
make<00:08:15.919><c> each</c><00:08:16.080><c> time</c><00:08:16.280><c> you</c><00:08:16.400><c> use</c><00:08:16.760><c> it,</c><00:08:17.360><c> and</c><00:08:17.480><c> the</c><00:08:17.600><c> first</c>

00:08:17.950 --> 00:08:17.960 align:start position:0%
make each time you use it, and the first
 

00:08:17.960 --> 00:08:20.950 align:start position:0%
make each time you use it, and the first
one<00:08:18.200><c> is</c><00:08:18.440><c> which</c><00:08:18.760><c> model</c><00:08:19.280><c> to</c><00:08:19.440><c> use.</c><00:08:19.960><c> In</c><00:08:20.160><c> practice,</c>

00:08:20.950 --> 00:08:20.960 align:start position:0%
one is which model to use. In practice,
 

00:08:20.960 --> 00:08:23.110 align:start position:0%
one is which model to use. In practice,
I<00:08:21.040><c> usually</c><00:08:21.520><c> default</c><00:08:22.200><c> to</c><00:08:22.320><c> the</c><00:08:22.480><c> latest</c>

00:08:23.110 --> 00:08:23.120 align:start position:0%
I usually default to the latest
 

00:08:23.120 --> 00:08:25.950 align:start position:0%
I usually default to the latest
strongest<00:08:23.720><c> model</c><00:08:24.600><c> unless</c><00:08:25.000><c> I</c><00:08:25.080><c> have</c><00:08:25.280><c> a</c><00:08:25.400><c> clear</c>

00:08:25.950 --> 00:08:25.960 align:start position:0%
strongest model unless I have a clear
 

00:08:25.960 --> 00:08:27.790 align:start position:0%
strongest model unless I have a clear
reason<00:08:26.520><c> not</c><00:08:26.880><c> to.</c>

00:08:27.790 --> 00:08:27.800 align:start position:0%
reason not to.
 

00:08:27.800 --> 00:08:30.909 align:start position:0%
reason not to.
Because<00:08:28.160><c> most</c><00:08:28.720><c> app</c><00:08:29.000><c> building</c><00:08:29.440><c> tasks</c><00:08:30.280><c> benefit</c>

00:08:30.909 --> 00:08:30.919 align:start position:0%
Because most app building tasks benefit
 

00:08:30.919 --> 00:08:33.469 align:start position:0%
Because most app building tasks benefit
from<00:08:31.280><c> better</c><00:08:31.800><c> reasoning.</c><00:08:32.440><c> Here's</c><00:08:32.840><c> a</c><00:08:33.000><c> rough</c>

00:08:33.469 --> 00:08:33.479 align:start position:0%
from better reasoning. Here's a rough
 

00:08:33.479 --> 00:08:36.630 align:start position:0%
from better reasoning. Here's a rough
guide<00:08:34.320><c> to</c><00:08:34.479><c> picking</c><00:08:35.000><c> the</c><00:08:35.120><c> correct</c><00:08:35.760><c> model</c><00:08:36.360><c> for</c>

00:08:36.630 --> 00:08:36.640 align:start position:0%
guide to picking the correct model for
 

00:08:36.640 --> 00:08:38.870 align:start position:0%
guide to picking the correct model for
your<00:08:36.960><c> specific</c><00:08:37.640><c> task.</c><00:08:38.240><c> So,</c><00:08:38.520><c> for</c>

00:08:38.870 --> 00:08:38.880 align:start position:0%
your specific task. So, for
 

00:08:38.880 --> 00:08:41.709 align:start position:0%
your specific task. So, for
architecture,<00:08:40.240><c> back-end</c><00:08:40.760><c> design,</c>

00:08:41.709 --> 00:08:41.719 align:start position:0%
architecture, back-end design,
 

00:08:41.719 --> 00:08:44.270 align:start position:0%
architecture, back-end design,
multi-step<00:08:42.520><c> implementation,</c><00:08:43.760><c> difficult</c>

00:08:44.270 --> 00:08:44.280 align:start position:0%
multi-step implementation, difficult
 

00:08:44.280 --> 00:08:47.390 align:start position:0%
multi-step implementation, difficult
debugging,<00:08:44.960><c> or</c><00:08:45.160><c> final</c><00:08:45.720><c> review</c><00:08:46.040><c> passes,</c><00:08:47.120><c> I</c>

00:08:47.390 --> 00:08:47.400 align:start position:0%
debugging, or final review passes, I
 

00:08:47.400 --> 00:08:51.590 align:start position:0%
debugging, or final review passes, I
want<00:08:47.760><c> a</c><00:08:47.880><c> stronger</c><00:08:48.480><c> model,</c><00:08:49.120><c> such</c><00:08:49.360><c> as</c><00:08:49.480><c> GPT-5.5.</c>

00:08:51.590 --> 00:08:51.600 align:start position:0%
want a stronger model, such as GPT-5.5.
 

00:08:51.600 --> 00:08:56.030 align:start position:0%
want a stronger model, such as GPT-5.5.
For<00:08:51.800><c> small</c><00:08:52.400><c> copy</c><00:08:52.839><c> tweaks,</c><00:08:53.920><c> simple</c><00:08:54.520><c> UI</c><00:08:54.839><c> polish,</c>

00:08:56.030 --> 00:08:56.040 align:start position:0%
For small copy tweaks, simple UI polish,
 

00:08:56.040 --> 00:08:59.870 align:start position:0%
For small copy tweaks, simple UI polish,
short<00:08:56.720><c> refactors,</c><00:08:57.800><c> or</c><00:08:58.160><c> low-risk</c><00:08:58.960><c> tasks,</c><00:08:59.720><c> a</c>

00:08:59.870 --> 00:08:59.880 align:start position:0%
short refactors, or low-risk tasks, a
 

00:08:59.880 --> 00:09:02.990 align:start position:0%
short refactors, or low-risk tasks, a
faster,<00:09:00.800><c> a</c><00:09:00.920><c> lighter</c><00:09:01.440><c> model</c><00:09:02.120><c> can</c><00:09:02.360><c> be</c><00:09:02.520><c> a</c><00:09:02.640><c> better</c>

00:09:02.990 --> 00:09:03.000 align:start position:0%
faster, a lighter model can be a better
 

00:09:03.000 --> 00:09:05.070 align:start position:0%
faster, a lighter model can be a better
tool.<00:09:03.680><c> And</c><00:09:03.839><c> here's</c><00:09:04.160><c> where</c><00:09:04.400><c> you</c><00:09:04.520><c> can</c><00:09:04.720><c> use</c><00:09:04.920><c> an</c>

00:09:05.070 --> 00:09:05.080 align:start position:0%
tool. And here's where you can use an
 

00:09:05.080 --> 00:09:08.590 align:start position:0%
tool. And here's where you can use an
older<00:09:05.440><c> model,</c><00:09:06.280><c> or</c><00:09:06.720><c> a</c><00:09:06.880><c> mini,</c><00:09:07.640><c> or</c><00:09:07.920><c> a</c><00:09:08.040><c> nano</c>

00:09:08.590 --> 00:09:08.600 align:start position:0%
older model, or a mini, or a nano
 

00:09:08.600 --> 00:09:11.950 align:start position:0%
older model, or a mini, or a nano
version<00:09:09.400><c> of</c><00:09:09.560><c> the</c><00:09:09.720><c> current</c><00:09:10.560><c> latest</c><00:09:11.120><c> model.</c><00:09:11.800><c> For</c>

00:09:11.950 --> 00:09:11.960 align:start position:0%
version of the current latest model. For
 

00:09:11.960 --> 00:09:14.630 align:start position:0%
version of the current latest model. For
example,<00:09:12.520><c> if</c><00:09:12.720><c> I'm</c><00:09:12.920><c> asking</c><00:09:13.360><c> Cortex</c><00:09:13.960><c> to</c><00:09:14.080><c> rename</c>

00:09:14.630 --> 00:09:14.640 align:start position:0%
example, if I'm asking Cortex to rename
 

00:09:14.640 --> 00:09:18.270 align:start position:0%
example, if I'm asking Cortex to rename
a<00:09:14.760><c> button,</c><00:09:15.720><c> tighten</c><00:09:16.200><c> some</c><00:09:16.480><c> copy,</c><00:09:17.400><c> or</c><00:09:17.600><c> adjust</c>

00:09:18.270 --> 00:09:18.280 align:start position:0%
a button, tighten some copy, or adjust
 

00:09:18.280 --> 00:09:21.550 align:start position:0%
a button, tighten some copy, or adjust
spacing<00:09:18.880><c> on</c><00:09:19.040><c> one</c><00:09:19.280><c> component,</c><00:09:20.520><c> I</c><00:09:20.600><c> do</c><00:09:20.800><c> not</c><00:09:21.280><c> need</c>

00:09:21.550 --> 00:09:21.560 align:start position:0%
spacing on one component, I do not need
 

00:09:21.560 --> 00:09:24.110 align:start position:0%
spacing on one component, I do not need
to<00:09:21.760><c> overthink</c><00:09:22.360><c> the</c><00:09:22.480><c> model</c><00:09:22.839><c> choice.</c>

00:09:24.110 --> 00:09:24.120 align:start position:0%
to overthink the model choice.
 

00:09:24.120 --> 00:09:26.550 align:start position:0%
to overthink the model choice.
But<00:09:24.240><c> if</c><00:09:24.400><c> I'm</c><00:09:24.600><c> asking</c><00:09:25.040><c> Cortex</c><00:09:25.600><c> to</c><00:09:25.760><c> design</c><00:09:26.440><c> the</c>

00:09:26.550 --> 00:09:26.560 align:start position:0%
But if I'm asking Cortex to design the
 

00:09:26.560 --> 00:09:29.110 align:start position:0%
But if I'm asking Cortex to design the
Convex<00:09:27.320><c> schema,</c><00:09:28.560><c> think</c><00:09:28.880><c> through</c>

00:09:29.110 --> 00:09:29.120 align:start position:0%
Convex schema, think through
 

00:09:29.120 --> 00:09:32.790 align:start position:0%
Convex schema, think through
permissions,<00:09:30.440><c> restructure</c><00:09:31.240><c> several</c><00:09:31.720><c> files,</c>

00:09:32.790 --> 00:09:32.800 align:start position:0%
permissions, restructure several files,
 

00:09:32.800 --> 00:09:35.990 align:start position:0%
permissions, restructure several files,
or<00:09:33.080><c> debug</c><00:09:33.720><c> a</c><00:09:33.839><c> problem</c><00:09:34.560><c> that</c><00:09:34.800><c> spans</c><00:09:35.360><c> front-end</c>

00:09:35.990 --> 00:09:36.000 align:start position:0%
or debug a problem that spans front-end
 

00:09:36.000 --> 00:09:37.870 align:start position:0%
or debug a problem that spans front-end
and<00:09:36.280><c> back-end</c><00:09:36.839><c> code,</c>

00:09:37.870 --> 00:09:37.880 align:start position:0%
and back-end code,
 

00:09:37.880 --> 00:09:40.750 align:start position:0%
and back-end code,
That<00:09:38.200><c> is</c><00:09:38.400><c> where</c><00:09:38.720><c> I</c><00:09:38.840><c> want</c><00:09:39.400><c> the</c><00:09:39.520><c> strongest</c><00:09:40.320><c> model</c>

00:09:40.750 --> 00:09:40.760 align:start position:0%
That is where I want the strongest model
 

00:09:40.760 --> 00:09:42.070 align:start position:0%
That is where I want the strongest model
available.

00:09:42.070 --> 00:09:42.080 align:start position:0%
available.
 

00:09:42.080 --> 00:09:44.910 align:start position:0%
available.
The<00:09:42.240><c> more</c><00:09:42.600><c> expensive</c><00:09:43.480><c> the</c><00:09:43.600><c> mistake,</c>

00:09:44.910 --> 00:09:44.920 align:start position:0%
The more expensive the mistake,
 

00:09:44.920 --> 00:09:48.190 align:start position:0%
The more expensive the mistake,
the<00:09:45.160><c> more</c><00:09:45.640><c> I</c><00:09:45.760><c> want</c><00:09:46.040><c> to</c><00:09:46.160><c> slow</c><00:09:46.600><c> down</c><00:09:47.520><c> and</c><00:09:47.760><c> use</c><00:09:48.000><c> the</c>

00:09:48.190 --> 00:09:48.200 align:start position:0%
the more I want to slow down and use the
 

00:09:48.200 --> 00:09:53.710 align:start position:0%
the more I want to slow down and use the
better<00:09:48.840><c> reasoning</c><00:09:49.720><c> setup.</c>

00:09:53.710 --> 00:09:53.720 align:start position:0%
 
 

00:09:53.720 --> 00:09:55.590 align:start position:0%
 
The<00:09:53.840><c> next</c><00:09:54.200><c> important</c><00:09:54.600><c> decision</c><00:09:55.240><c> is</c><00:09:55.440><c> the</c>

00:09:55.590 --> 00:09:55.600 align:start position:0%
The next important decision is the
 

00:09:55.600 --> 00:09:58.590 align:start position:0%
The next important decision is the
reasoning<00:09:56.160><c> mode.</c><00:09:57.080><c> This</c><00:09:57.440><c> controls</c><00:09:58.040><c> how</c><00:09:58.240><c> much</c>

00:09:58.590 --> 00:09:58.600 align:start position:0%
reasoning mode. This controls how much
 

00:09:58.600 --> 00:10:01.990 align:start position:0%
reasoning mode. This controls how much
time<00:09:59.080><c> and</c><00:09:59.280><c> effort</c><00:10:00.200><c> Cortex</c><00:10:00.880><c> spends</c><00:10:01.480><c> thinking</c>

00:10:01.990 --> 00:10:02.000 align:start position:0%
time and effort Cortex spends thinking
 

00:10:02.000 --> 00:10:05.110 align:start position:0%
time and effort Cortex spends thinking
through<00:10:02.200><c> the</c><00:10:02.360><c> task</c><00:10:03.320><c> before</c><00:10:04.120><c> and</c><00:10:04.360><c> during</c><00:10:05.000><c> the</c>

00:10:05.110 --> 00:10:05.120 align:start position:0%
through the task before and during the
 

00:10:05.120 --> 00:10:07.110 align:start position:0%
through the task before and during the
work.<00:10:05.640><c> This</c><00:10:05.880><c> decision</c><00:10:06.400><c> is</c><00:10:06.560><c> a</c><00:10:06.640><c> little</c><00:10:06.880><c> more</c>

00:10:07.110 --> 00:10:07.120 align:start position:0%
work. This decision is a little more
 

00:10:07.120 --> 00:10:10.430 align:start position:0%
work. This decision is a little more
nuanced<00:10:08.200><c> than</c><00:10:08.440><c> model</c><00:10:08.800><c> choice</c><00:10:09.680><c> because</c><00:10:10.080><c> every</c>

00:10:10.430 --> 00:10:10.440 align:start position:0%
nuanced than model choice because every
 

00:10:10.440 --> 00:10:13.910 align:start position:0%
nuanced than model choice because every
reasoning<00:10:11.040><c> mode</c><00:10:11.840><c> has</c><00:10:12.120><c> a</c><00:10:12.240><c> place.</c><00:10:12.920><c> Low</c><00:10:13.360><c> thinking</c>

00:10:13.910 --> 00:10:13.920 align:start position:0%
reasoning mode has a place. Low thinking
 

00:10:13.920 --> 00:10:17.670 align:start position:0%
reasoning mode has a place. Low thinking
is<00:10:14.160><c> useful</c><00:10:14.640><c> for</c><00:10:14.880><c> quick,</c><00:10:15.840><c> obvious</c><00:10:16.440><c> tasks</c><00:10:17.400><c> where</c>

00:10:17.670 --> 00:10:17.680 align:start position:0%
is useful for quick, obvious tasks where
 

00:10:17.680 --> 00:10:21.190 align:start position:0%
is useful for quick, obvious tasks where
the<00:10:17.880><c> risk</c><00:10:18.280><c> is</c><00:10:18.480><c> small.</c><00:10:19.480><c> Medium</c><00:10:20.520><c> is</c><00:10:20.720><c> good</c><00:10:20.960><c> for</c>

00:10:21.190 --> 00:10:21.200 align:start position:0%
the risk is small. Medium is good for
 

00:10:21.200 --> 00:10:25.350 align:start position:0%
the risk is small. Medium is good for
normal<00:10:22.080><c> app</c><00:10:22.360><c> building</c><00:10:22.920><c> work,</c><00:10:23.800><c> first</c><00:10:24.360><c> pass</c><00:10:24.880><c> UI</c>

00:10:25.350 --> 00:10:25.360 align:start position:0%
normal app building work, first pass UI
 

00:10:25.360 --> 00:10:26.950 align:start position:0%
normal app building work, first pass UI
implementation,

00:10:26.950 --> 00:10:26.960 align:start position:0%
implementation,
 

00:10:26.960 --> 00:10:30.270 align:start position:0%
implementation,
straightforward<00:10:27.960><c> debugging,</c><00:10:29.120><c> and</c><00:10:29.400><c> routine</c>

00:10:30.270 --> 00:10:30.280 align:start position:0%
straightforward debugging, and routine
 

00:10:30.280 --> 00:10:32.750 align:start position:0%
straightforward debugging, and routine
feature<00:10:30.800><c> work.</c><00:10:31.320><c> High</c><00:10:31.760><c> is</c><00:10:32.000><c> what</c><00:10:32.200><c> I</c><00:10:32.280><c> use</c><00:10:32.600><c> when</c>

00:10:32.750 --> 00:10:32.760 align:start position:0%
feature work. High is what I use when
 

00:10:32.760 --> 00:10:35.150 align:start position:0%
feature work. High is what I use when
the<00:10:32.840><c> decision</c><00:10:33.520><c> is</c><00:10:33.680><c> more</c><00:10:33.920><c> expensive.</c>

00:10:35.150 --> 00:10:35.160 align:start position:0%
the decision is more expensive.
 

00:10:35.160 --> 00:10:39.310 align:start position:0%
the decision is more expensive.
Architecture,<00:10:36.560><c> convex</c><00:10:37.360><c> data</c><00:10:37.800><c> model</c><00:10:38.160><c> design,</c>

00:10:39.310 --> 00:10:39.320 align:start position:0%
Architecture, convex data model design,
 

00:10:39.320 --> 00:10:43.590 align:start position:0%
Architecture, convex data model design,
authentication,<00:10:40.760><c> permissions,</c><00:10:42.120><c> hard</c><00:10:42.600><c> bugs,</c>

00:10:43.590 --> 00:10:43.600 align:start position:0%
authentication, permissions, hard bugs,
 

00:10:43.600 --> 00:10:46.829 align:start position:0%
authentication, permissions, hard bugs,
multi-file<00:10:44.640><c> changes,</c><00:10:45.640><c> and</c><00:10:45.839><c> the</c><00:10:45.960><c> final</c>

00:10:46.829 --> 00:10:46.839 align:start position:0%
multi-file changes, and the final
 

00:10:46.839 --> 00:10:49.870 align:start position:0%
multi-file changes, and the final
review.<00:10:47.480><c> My</c><00:10:47.680><c> default</c><00:10:48.480><c> for</c><00:10:48.720><c> serious</c><00:10:49.560><c> app</c>

00:10:49.870 --> 00:10:49.880 align:start position:0%
review. My default for serious app
 

00:10:49.880 --> 00:10:53.670 align:start position:0%
review. My default for serious app
building<00:10:50.440><c> work</c><00:10:51.200><c> is</c><00:10:51.440><c> usually</c><00:10:52.080><c> a</c><00:10:52.240><c> strong</c><00:10:52.800><c> model</c>

00:10:53.670 --> 00:10:53.680 align:start position:0%
building work is usually a strong model
 

00:10:53.680 --> 00:10:56.430 align:start position:0%
building work is usually a strong model
with<00:10:53.920><c> high</c><00:10:54.240><c> thinking</c><00:10:55.360><c> because</c><00:10:55.720><c> that</c><00:10:56.040><c> gives</c><00:10:56.280><c> me</c>

00:10:56.430 --> 00:10:56.440 align:start position:0%
with high thinking because that gives me
 

00:10:56.440 --> 00:10:59.870 align:start position:0%
with high thinking because that gives me
the<00:10:56.640><c> best</c><00:10:57.120><c> balance</c><00:10:58.200><c> between</c><00:10:58.640><c> speed</c><00:10:59.680><c> and</c>

00:10:59.870 --> 00:10:59.880 align:start position:0%
the best balance between speed and
 

00:10:59.880 --> 00:11:01.190 align:start position:0%
the best balance between speed and
quality.

00:11:01.190 --> 00:11:01.200 align:start position:0%
quality.
 

00:11:01.200 --> 00:11:03.750 align:start position:0%
quality.
But,<00:11:01.360><c> the</c><00:11:01.480><c> practical</c><00:11:02.160><c> lesson</c><00:11:02.560><c> is</c><00:11:02.760><c> simple.</c>

00:11:03.750 --> 00:11:03.760 align:start position:0%
But, the practical lesson is simple.
 

00:11:03.760 --> 00:11:06.750 align:start position:0%
But, the practical lesson is simple.
Match<00:11:04.320><c> the</c><00:11:04.480><c> model</c><00:11:05.080><c> and</c><00:11:05.240><c> thinking</c><00:11:05.680><c> mode</c><00:11:06.440><c> to</c><00:11:06.560><c> the</c>

00:11:06.750 --> 00:11:06.760 align:start position:0%
Match the model and thinking mode to the
 

00:11:06.760 --> 00:11:09.790 align:start position:0%
Match the model and thinking mode to the
risk<00:11:07.280><c> of</c><00:11:07.440><c> the</c><00:11:07.560><c> decision.</c><00:11:08.800><c> If</c><00:11:08.960><c> the</c><00:11:09.120><c> task</c><00:11:09.600><c> is</c>

00:11:09.790 --> 00:11:09.800 align:start position:0%
risk of the decision. If the task is
 

00:11:09.800 --> 00:11:13.230 align:start position:0%
risk of the decision. If the task is
small<00:11:10.360><c> and</c><00:11:10.520><c> reversible,</c><00:11:11.920><c> keep</c><00:11:12.160><c> it</c><00:11:12.320><c> fast.</c><00:11:13.080><c> If</c>

00:11:13.230 --> 00:11:13.240 align:start position:0%
small and reversible, keep it fast. If
 

00:11:13.240 --> 00:11:15.390 align:start position:0%
small and reversible, keep it fast. If
the<00:11:13.400><c> task</c><00:11:13.839><c> affects</c><00:11:14.320><c> the</c><00:11:14.440><c> structure</c><00:11:15.040><c> of</c><00:11:15.240><c> the</c>

00:11:15.390 --> 00:11:15.400 align:start position:0%
the task affects the structure of the
 

00:11:15.400 --> 00:11:18.710 align:start position:0%
the task affects the structure of the
app,<00:11:15.880><c> slow</c><00:11:16.320><c> the</c><00:11:16.480><c> model</c><00:11:16.880><c> down</c><00:11:17.839><c> and</c><00:11:18.120><c> let</c><00:11:18.400><c> it</c>

00:11:18.710 --> 00:11:18.720 align:start position:0%
app, slow the model down and let it
 

00:11:18.720 --> 00:11:21.070 align:start position:0%
app, slow the model down and let it
reason.<00:11:19.320><c> Now,</c><00:11:19.560><c> as</c><00:11:19.839><c> you're</c><00:11:20.120><c> working</c><00:11:20.640><c> on</c><00:11:20.839><c> your</c>

00:11:21.070 --> 00:11:21.080 align:start position:0%
reason. Now, as you're working on your
 

00:11:21.080 --> 00:11:23.430 align:start position:0%
reason. Now, as you're working on your
project<00:11:21.880><c> and</c><00:11:22.040><c> you're</c><00:11:22.200><c> in</c><00:11:22.320><c> this</c><00:11:22.520><c> conversation</c>

00:11:23.430 --> 00:11:23.440 align:start position:0%
project and you're in this conversation
 

00:11:23.440 --> 00:11:24.350 align:start position:0%
project and you're in this conversation
view,

00:11:24.350 --> 00:11:24.360 align:start position:0%
view,
 

00:11:24.360 --> 00:11:27.110 align:start position:0%
view,
you<00:11:24.560><c> can</c><00:11:24.839><c> enter</c><00:11:25.240><c> your</c><00:11:25.520><c> prompts</c><00:11:26.040><c> here,</c><00:11:26.600><c> and</c>

00:11:27.110 --> 00:11:27.120 align:start position:0%
you can enter your prompts here, and
 

00:11:27.120 --> 00:11:29.990 align:start position:0%
you can enter your prompts here, and
just<00:11:27.560><c> below,</c><00:11:28.480><c> you</c><00:11:28.680><c> can</c><00:11:28.960><c> select</c><00:11:29.480><c> various</c>

00:11:29.990 --> 00:11:30.000 align:start position:0%
just below, you can select various
 

00:11:30.000 --> 00:11:32.390 align:start position:0%
just below, you can select various
things.<00:11:30.360><c> Now,</c><00:11:30.600><c> first</c><00:11:31.040><c> of</c><00:11:31.200><c> all,</c><00:11:31.760><c> you</c><00:11:31.960><c> have</c><00:11:32.240><c> your</c>

00:11:32.390 --> 00:11:32.400 align:start position:0%
things. Now, first of all, you have your
 

00:11:32.400 --> 00:11:34.630 align:start position:0%
things. Now, first of all, you have your
contacts<00:11:33.120><c> window</c><00:11:33.520><c> here,</c><00:11:33.840><c> right?</c><00:11:34.160><c> Here</c><00:11:34.480><c> you</c>

00:11:34.630 --> 00:11:34.640 align:start position:0%
contacts window here, right? Here you
 

00:11:34.640 --> 00:11:36.790 align:start position:0%
contacts window here, right? Here you
can<00:11:34.880><c> see</c><00:11:35.200><c> how</c><00:11:35.360><c> much</c><00:11:35.640><c> of</c><00:11:35.720><c> the</c><00:11:35.840><c> context</c><00:11:36.480><c> you</c><00:11:36.600><c> have</c>

00:11:36.790 --> 00:11:36.800 align:start position:0%
can see how much of the context you have
 

00:11:36.800 --> 00:11:39.830 align:start position:0%
can see how much of the context you have
used.<00:11:37.720><c> Now,</c><00:11:38.000><c> Korax</c><00:11:38.680><c> says</c><00:11:39.520><c> that</c><00:11:39.680><c> it</c>

00:11:39.830 --> 00:11:39.840 align:start position:0%
used. Now, Korax says that it
 

00:11:39.840 --> 00:11:43.470 align:start position:0%
used. Now, Korax says that it
automatically<00:11:40.760><c> compacts</c><00:11:41.960><c> its</c><00:11:42.240><c> contacts.</c><00:11:43.320><c> And</c>

00:11:43.470 --> 00:11:43.480 align:start position:0%
automatically compacts its contacts. And
 

00:11:43.480 --> 00:11:46.430 align:start position:0%
automatically compacts its contacts. And
yeah,<00:11:43.680><c> you</c><00:11:43.840><c> can</c><00:11:44.080><c> do</c><00:11:44.360><c> that,</c><00:11:45.080><c> but</c><00:11:45.400><c> over</c><00:11:45.760><c> time,</c>

00:11:46.430 --> 00:11:46.440 align:start position:0%
yeah, you can do that, but over time,
 

00:11:46.440 --> 00:11:48.590 align:start position:0%
yeah, you can do that, but over time,
it's<00:11:46.680><c> not</c><00:11:46.920><c> going</c><00:11:47.040><c> to</c><00:11:47.160><c> be</c><00:11:47.440><c> as</c><00:11:47.880><c> effective.</c><00:11:48.480><c> And</c>

00:11:48.590 --> 00:11:48.600 align:start position:0%
it's not going to be as effective. And
 

00:11:48.600 --> 00:11:50.470 align:start position:0%
it's not going to be as effective. And
so,<00:11:48.800><c> you</c><00:11:48.960><c> always</c><00:11:49.360><c> want</c><00:11:49.480><c> to</c><00:11:49.560><c> be</c><00:11:49.680><c> starting</c><00:11:50.160><c> new</c>

00:11:50.470 --> 00:11:50.480 align:start position:0%
so, you always want to be starting new
 

00:11:50.480 --> 00:11:53.150 align:start position:0%
so, you always want to be starting new
conversations<00:11:51.640><c> anytime</c><00:11:52.320><c> you're</c><00:11:52.560><c> working</c><00:11:53.000><c> on</c>

00:11:53.150 --> 00:11:53.160 align:start position:0%
conversations anytime you're working on
 

00:11:53.160 --> 00:11:56.470 align:start position:0%
conversations anytime you're working on
something<00:11:53.800><c> new</c><00:11:54.600><c> that</c><00:11:54.880><c> requires</c><00:11:55.680><c> a</c><00:11:55.800><c> context</c>

00:11:56.470 --> 00:11:56.480 align:start position:0%
something new that requires a context
 

00:11:56.480 --> 00:11:59.550 align:start position:0%
something new that requires a context
switch,<00:11:57.120><c> okay?</c><00:11:58.000><c> Next,</c><00:11:58.680><c> we</c><00:11:58.840><c> have</c><00:11:59.120><c> here</c><00:11:59.400><c> the</c>

00:11:59.550 --> 00:11:59.560 align:start position:0%
switch, okay? Next, we have here the
 

00:11:59.560 --> 00:12:02.030 align:start position:0%
switch, okay? Next, we have here the
all-important<00:12:00.600><c> model</c><00:12:01.040><c> selector,</c><00:12:01.640><c> okay?</c><00:12:01.920><c> So,</c>

00:12:02.030 --> 00:12:02.040 align:start position:0%
all-important model selector, okay? So,
 

00:12:02.040 --> 00:12:04.150 align:start position:0%
all-important model selector, okay? So,
if<00:12:02.200><c> I</c><00:12:02.280><c> click</c><00:12:02.600><c> over</c><00:12:02.800><c> here,</c><00:12:03.680><c> I</c><00:12:03.800><c> have</c><00:12:04.000><c> it</c>

00:12:04.150 --> 00:12:04.160 align:start position:0%
if I click over here, I have it
 

00:12:04.160 --> 00:12:07.190 align:start position:0%
if I click over here, I have it
automatically<00:12:04.960><c> set</c><00:12:05.240><c> to</c><00:12:05.360><c> GPT-5.5,</c>

00:12:07.190 --> 00:12:07.200 align:start position:0%
automatically set to GPT-5.5,
 

00:12:07.200 --> 00:12:09.670 align:start position:0%
automatically set to GPT-5.5,
which<00:12:07.400><c> is</c><00:12:07.520><c> the</c><00:12:07.640><c> newest</c><00:12:08.080><c> model</c><00:12:08.640><c> as</c><00:12:08.960><c> of</c><00:12:09.120><c> the</c><00:12:09.240><c> time</c>

00:12:09.670 --> 00:12:09.680 align:start position:0%
which is the newest model as of the time
 

00:12:09.680 --> 00:12:11.830 align:start position:0%
which is the newest model as of the time
of<00:12:09.840><c> recording</c><00:12:10.360><c> this</c><00:12:10.600><c> video,</c><00:12:11.120><c> okay?</c><00:12:11.520><c> You</c><00:12:11.640><c> can</c>

00:12:11.830 --> 00:12:11.840 align:start position:0%
of recording this video, okay? You can
 

00:12:11.840 --> 00:12:13.510 align:start position:0%
of recording this video, okay? You can
also<00:12:12.120><c> switch</c><00:12:12.480><c> it</c><00:12:12.560><c> to</c><00:12:12.640><c> some</c><00:12:12.880><c> of</c><00:12:12.960><c> the</c><00:12:13.080><c> older</c>

00:12:13.510 --> 00:12:13.520 align:start position:0%
also switch it to some of the older
 

00:12:13.520 --> 00:12:16.470 align:start position:0%
also switch it to some of the older
models<00:12:13.960><c> as</c><00:12:14.120><c> well,</c><00:12:14.720><c> but</c><00:12:14.880><c> I</c><00:12:15.000><c> see</c><00:12:15.240><c> no</c><00:12:15.640><c> reason</c><00:12:16.280><c> to</c>

00:12:16.470 --> 00:12:16.480 align:start position:0%
models as well, but I see no reason to
 

00:12:16.480 --> 00:12:18.510 align:start position:0%
models as well, but I see no reason to
do<00:12:16.720><c> that</c><00:12:16.960><c> because</c><00:12:17.280><c> this</c><00:12:17.560><c> model</c><00:12:18.000><c> has</c><00:12:18.280><c> been</c>

00:12:18.510 --> 00:12:18.520 align:start position:0%
do that because this model has been
 

00:12:18.520 --> 00:12:21.270 align:start position:0%
do that because this model has been
very,<00:12:18.920><c> very</c><00:12:19.280><c> capable.</c><00:12:20.320><c> We</c><00:12:20.480><c> also</c><00:12:20.800><c> have</c><00:12:21.000><c> things</c>

00:12:21.270 --> 00:12:21.280 align:start position:0%
very, very capable. We also have things
 

00:12:21.280 --> 00:12:25.430 align:start position:0%
very, very capable. We also have things
like<00:12:21.600><c> speed,</c><00:12:22.600><c> standard</c><00:12:23.440><c> versus</c><00:12:23.960><c> fast.</c><00:12:24.920><c> Fast</c>

00:12:25.430 --> 00:12:25.440 align:start position:0%
like speed, standard versus fast. Fast
 

00:12:25.440 --> 00:12:28.310 align:start position:0%
like speed, standard versus fast. Fast
is<00:12:25.760><c> 1</c><00:12:25.920><c> and</c><00:12:26.040><c> 1/2</c><00:12:26.320><c> times</c><00:12:26.640><c> faster,</c><00:12:27.280><c> but</c><00:12:27.480><c> it</c><00:12:27.680><c> also</c>

00:12:28.310 --> 00:12:28.320 align:start position:0%
is 1 and 1/2 times faster, but it also
 

00:12:28.320 --> 00:12:31.710 align:start position:0%
is 1 and 1/2 times faster, but it also
uses<00:12:29.120><c> more</c><00:12:30.000><c> of</c><00:12:30.200><c> your</c><00:12:30.360><c> usage,</c><00:12:31.160><c> okay?</c><00:12:31.520><c> So,</c>

00:12:31.710 --> 00:12:31.720 align:start position:0%
uses more of your usage, okay? So,
 

00:12:31.720 --> 00:12:34.070 align:start position:0%
uses more of your usage, okay? So,
depending<00:12:32.200><c> on</c><00:12:32.320><c> which</c><00:12:32.600><c> plan</c><00:12:32.920><c> you're</c><00:12:33.160><c> at,</c><00:12:33.920><c> you</c>

00:12:34.070 --> 00:12:34.080 align:start position:0%
depending on which plan you're at, you
 

00:12:34.080 --> 00:12:36.310 align:start position:0%
depending on which plan you're at, you
may<00:12:34.280><c> want</c><00:12:34.520><c> to</c><00:12:34.680><c> stay</c><00:12:34.960><c> on</c><00:12:35.120><c> standard.</c><00:12:35.600><c> I</c><00:12:35.760><c> mostly</c>

00:12:36.310 --> 00:12:36.320 align:start position:0%
may want to stay on standard. I mostly
 

00:12:36.320 --> 00:12:38.390 align:start position:0%
may want to stay on standard. I mostly
keep<00:12:36.560><c> it</c><00:12:36.680><c> on</c><00:12:36.839><c> standard</c><00:12:37.560><c> unless,</c><00:12:38.160><c> you</c><00:12:38.240><c> know,</c>

00:12:38.390 --> 00:12:38.400 align:start position:0%
keep it on standard unless, you know,
 

00:12:38.400 --> 00:12:39.829 align:start position:0%
keep it on standard unless, you know,
I'm<00:12:38.520><c> in</c><00:12:38.640><c> a</c><00:12:38.680><c> hurry</c><00:12:39.040><c> and</c><00:12:39.160><c> I</c><00:12:39.200><c> want</c><00:12:39.400><c> to</c><00:12:39.480><c> switch</c><00:12:39.720><c> it</c>

00:12:39.829 --> 00:12:39.839 align:start position:0%
I'm in a hurry and I want to switch it
 

00:12:39.839 --> 00:12:42.470 align:start position:0%
I'm in a hurry and I want to switch it
on<00:12:39.960><c> fast.</c><00:12:40.880><c> Next,</c><00:12:41.360><c> we</c><00:12:41.520><c> have</c><00:12:41.680><c> intelligence,</c>

00:12:42.470 --> 00:12:42.480 align:start position:0%
on fast. Next, we have intelligence,
 

00:12:42.480 --> 00:12:43.790 align:start position:0%
on fast. Next, we have intelligence,
right?<00:12:42.720><c> Now,</c><00:12:42.839><c> this</c><00:12:43.080><c> is</c><00:12:43.240><c> very,</c><00:12:43.520><c> very</c>

00:12:43.790 --> 00:12:43.800 align:start position:0%
right? Now, this is very, very
 

00:12:43.800 --> 00:12:47.030 align:start position:0%
right? Now, this is very, very
important.<00:12:44.760><c> By</c><00:12:45.000><c> default,</c><00:12:45.920><c> I</c><00:12:46.120><c> keep</c><00:12:46.480><c> this</c><00:12:46.760><c> on</c>

00:12:47.030 --> 00:12:47.040 align:start position:0%
important. By default, I keep this on
 

00:12:47.040 --> 00:12:51.110 align:start position:0%
important. By default, I keep this on
high.<00:12:47.640><c> I</c><00:12:47.800><c> found</c><00:12:48.200><c> that</c><00:12:48.560><c> to</c><00:12:48.720><c> be</c><00:12:49.520><c> a</c><00:12:49.680><c> good</c><00:12:50.040><c> balance</c>

00:12:51.110 --> 00:12:51.120 align:start position:0%
high. I found that to be a good balance
 

00:12:51.120 --> 00:12:54.750 align:start position:0%
high. I found that to be a good balance
between<00:12:51.839><c> speed</c><00:12:52.680><c> and</c><00:12:52.880><c> quality</c><00:12:53.560><c> because</c><00:12:54.240><c> as</c><00:12:54.600><c> you</c>

00:12:54.750 --> 00:12:54.760 align:start position:0%
between speed and quality because as you
 

00:12:54.760 --> 00:12:57.790 align:start position:0%
between speed and quality because as you
go<00:12:55.160><c> towards</c><00:12:55.640><c> lower</c><00:12:56.040><c> intelligence,</c><00:12:57.200><c> the</c><00:12:57.320><c> model</c>

00:12:57.790 --> 00:12:57.800 align:start position:0%
go towards lower intelligence, the model
 

00:12:57.800 --> 00:12:59.870 align:start position:0%
go towards lower intelligence, the model
is<00:12:57.960><c> going</c><00:12:58.080><c> to</c><00:12:58.160><c> be</c><00:12:58.280><c> faster,</c><00:12:59.280><c> but</c><00:12:59.480><c> you're</c><00:12:59.720><c> going</c>

00:12:59.870 --> 00:12:59.880 align:start position:0%
is going to be faster, but you're going
 

00:12:59.880 --> 00:13:02.470 align:start position:0%
is going to be faster, but you're going
to<00:13:00.000><c> be</c><00:13:00.200><c> giving</c><00:13:00.720><c> up</c><00:13:01.200><c> quality,</c><00:13:02.040><c> right?</c><00:13:02.320><c> You're</c>

00:13:02.470 --> 00:13:02.480 align:start position:0%
to be giving up quality, right? You're
 

00:13:02.480 --> 00:13:04.510 align:start position:0%
to be giving up quality, right? You're
going<00:13:02.640><c> to</c><00:13:02.720><c> be</c><00:13:02.839><c> giving</c><00:13:03.240><c> up</c><00:13:03.400><c> intelligence.</c><00:13:04.360><c> On</c>

00:13:04.510 --> 00:13:04.520 align:start position:0%
going to be giving up intelligence. On
 

00:13:04.520 --> 00:13:06.430 align:start position:0%
going to be giving up intelligence. On
the<00:13:04.640><c> other</c><00:13:04.839><c> hand,</c><00:13:05.160><c> as</c><00:13:05.480><c> you</c><00:13:05.600><c> go</c><00:13:05.760><c> into</c><00:13:06.040><c> higher</c>

00:13:06.430 --> 00:13:06.440 align:start position:0%
the other hand, as you go into higher
 

00:13:06.440 --> 00:13:08.829 align:start position:0%
the other hand, as you go into higher
and<00:13:06.560><c> higher</c><00:13:06.880><c> intelligence,</c><00:13:08.040><c> the</c><00:13:08.160><c> model</c><00:13:08.680><c> is</c>

00:13:08.829 --> 00:13:08.839 align:start position:0%
and higher intelligence, the model is
 

00:13:08.839 --> 00:13:10.990 align:start position:0%
and higher intelligence, the model is
going<00:13:09.000><c> to</c><00:13:09.080><c> be</c><00:13:09.200><c> slower,</c><00:13:10.280><c> but</c><00:13:10.480><c> it's</c><00:13:10.640><c> going</c><00:13:10.800><c> to</c><00:13:10.880><c> be</c>

00:13:10.990 --> 00:13:11.000 align:start position:0%
going to be slower, but it's going to be
 

00:13:11.000 --> 00:13:12.829 align:start position:0%
going to be slower, but it's going to be
thinking<00:13:11.520><c> more,</c><00:13:11.800><c> right?</c><00:13:12.120><c> It's</c><00:13:12.320><c> kind</c><00:13:12.520><c> of</c><00:13:12.640><c> like</c>

00:13:12.829 --> 00:13:12.839 align:start position:0%
thinking more, right? It's kind of like
 

00:13:12.839 --> 00:13:15.470 align:start position:0%
thinking more, right? It's kind of like
a<00:13:12.960><c> person,</c><00:13:13.880><c> right?</c><00:13:14.240><c> You</c><00:13:14.320><c> can</c><00:13:14.560><c> ask</c><00:13:14.920><c> a</c><00:13:15.040><c> person</c><00:13:15.440><c> a</c>

00:13:15.470 --> 00:13:15.480 align:start position:0%
a person, right? You can ask a person a
 

00:13:15.480 --> 00:13:18.829 align:start position:0%
a person, right? You can ask a person a
question,<00:13:16.600><c> and</c><00:13:16.960><c> that</c><00:13:17.280><c> person</c><00:13:17.920><c> may</c><00:13:18.240><c> think</c>

00:13:18.829 --> 00:13:18.839 align:start position:0%
question, and that person may think
 

00:13:18.839 --> 00:13:21.550 align:start position:0%
question, and that person may think
more,<00:13:19.960><c> think</c><00:13:20.240><c> through</c><00:13:20.480><c> something</c><00:13:21.040><c> longer,</c>

00:13:21.550 --> 00:13:21.560 align:start position:0%
more, think through something longer,
 

00:13:21.560 --> 00:13:23.150 align:start position:0%
more, think through something longer,
right?<00:13:21.839><c> You</c><00:13:21.880><c> know</c><00:13:22.000><c> how</c><00:13:22.120><c> people</c><00:13:22.480><c> say,</c><00:13:22.760><c> "Let</c><00:13:22.960><c> me</c>

00:13:23.150 --> 00:13:23.160 align:start position:0%
right? You know how people say, "Let me
 

00:13:23.160 --> 00:13:26.390 align:start position:0%
right? You know how people say, "Let me
sleep<00:13:23.640><c> or</c><00:13:24.160><c> let</c><00:13:24.320><c> me</c><00:13:24.440><c> sleep</c><00:13:24.920><c> on</c><00:13:25.200><c> it."</c><00:13:25.839><c> Or</c><00:13:26.120><c> let</c><00:13:26.320><c> me</c>

00:13:26.390 --> 00:13:26.400 align:start position:0%
sleep or let me sleep on it." Or let me
 

00:13:26.400 --> 00:13:28.790 align:start position:0%
sleep or let me sleep on it." Or let me
think<00:13:26.720><c> it</c><00:13:26.920><c> over,</c><00:13:27.440><c> right?</c><00:13:27.880><c> The</c><00:13:28.080><c> longer</c><00:13:28.640><c> you</c>

00:13:28.790 --> 00:13:28.800 align:start position:0%
think it over, right? The longer you
 

00:13:28.800 --> 00:13:31.070 align:start position:0%
think it over, right? The longer you
think,<00:13:29.280><c> the</c><00:13:29.400><c> more</c><00:13:30.080><c> the</c><00:13:30.240><c> more</c><00:13:30.640><c> you</c><00:13:30.760><c> figure</c>

00:13:31.070 --> 00:13:31.080 align:start position:0%
think, the more the more you figure
 

00:13:31.080 --> 00:13:34.430 align:start position:0%
think, the more the more you figure
something<00:13:31.560><c> out,</c><00:13:32.280><c> and</c><00:13:32.800><c> the</c><00:13:33.000><c> the</c><00:13:33.600><c> the</c><00:13:33.960><c> the</c><00:13:34.280><c> the</c>

00:13:34.430 --> 00:13:34.440 align:start position:0%
something out, and the the the the the
 

00:13:34.440 --> 00:13:37.150 align:start position:0%
something out, and the the the the the
higher<00:13:34.840><c> chance</c><00:13:35.440><c> you're</c><00:13:35.640><c> going</c><00:13:35.760><c> to</c><00:13:35.880><c> arrive</c><00:13:37.000><c> at</c>

00:13:37.150 --> 00:13:37.160 align:start position:0%
higher chance you're going to arrive at
 

00:13:37.160 --> 00:13:39.110 align:start position:0%
higher chance you're going to arrive at
the<00:13:37.280><c> correct</c><00:13:37.880><c> answer,</c><00:13:38.320><c> at</c><00:13:38.440><c> least</c><00:13:38.720><c> for</c><00:13:38.880><c> you.</c>

00:13:39.110 --> 00:13:39.120 align:start position:0%
the correct answer, at least for you.
 

00:13:39.120 --> 00:13:40.350 align:start position:0%
the correct answer, at least for you.
You're<00:13:39.280><c> going</c><00:13:39.400><c> to</c><00:13:39.520><c> think</c><00:13:39.840><c> through</c><00:13:40.040><c> all</c><00:13:40.240><c> the</c>

00:13:40.350 --> 00:13:40.360 align:start position:0%
You're going to think through all the
 

00:13:40.360 --> 00:13:44.030 align:start position:0%
You're going to think through all the
possibilities,<00:13:41.640><c> whereas</c><00:13:42.400><c> the</c><00:13:42.560><c> first</c><00:13:43.200><c> answer</c>

00:13:44.030 --> 00:13:44.040 align:start position:0%
possibilities, whereas the first answer
 

00:13:44.040 --> 00:13:46.470 align:start position:0%
possibilities, whereas the first answer
might<00:13:44.400><c> be</c><00:13:44.560><c> wrong,</c><00:13:45.280><c> and</c><00:13:45.440><c> usually</c><00:13:45.960><c> is</c><00:13:46.200><c> because</c>

00:13:46.470 --> 00:13:46.480 align:start position:0%
might be wrong, and usually is because
 

00:13:46.480 --> 00:13:48.670 align:start position:0%
might be wrong, and usually is because
you<00:13:46.600><c> haven't</c><00:13:47.000><c> thought</c><00:13:47.320><c> everything</c><00:13:47.840><c> through.</c>

00:13:48.670 --> 00:13:48.680 align:start position:0%
you haven't thought everything through.
 

00:13:48.680 --> 00:13:50.750 align:start position:0%
you haven't thought everything through.
And<00:13:48.800><c> it's</c><00:13:48.960><c> the</c><00:13:49.080><c> exact</c><00:13:49.640><c> same</c><00:13:49.960><c> thing</c><00:13:50.240><c> here,</c>

00:13:50.750 --> 00:13:50.760 align:start position:0%
And it's the exact same thing here,
 

00:13:50.760 --> 00:13:52.950 align:start position:0%
And it's the exact same thing here,
right?<00:13:51.120><c> If</c><00:13:51.240><c> you</c><00:13:51.360><c> set</c><00:13:51.600><c> something</c><00:13:52.000><c> too</c><00:13:52.160><c> low,</c><00:13:52.840><c> and</c>

00:13:52.950 --> 00:13:52.960 align:start position:0%
right? If you set something too low, and
 

00:13:52.960 --> 00:13:54.750 align:start position:0%
right? If you set something too low, and
you're<00:13:53.240><c> working</c><00:13:53.760><c> through</c><00:13:53.960><c> something</c><00:13:54.360><c> fairly</c>

00:13:54.750 --> 00:13:54.760 align:start position:0%
you're working through something fairly
 

00:13:54.760 --> 00:13:57.390 align:start position:0%
you're working through something fairly
complex,<00:13:55.840><c> well,</c><00:13:56.160><c> the</c><00:13:56.320><c> model</c><00:13:56.760><c> is</c><00:13:56.920><c> not</c><00:13:57.120><c> going</c><00:13:57.240><c> to</c>

00:13:57.390 --> 00:13:57.400 align:start position:0%
complex, well, the model is not going to
 

00:13:57.400 --> 00:13:59.670 align:start position:0%
complex, well, the model is not going to
think<00:13:57.800><c> it</c><00:13:58.000><c> through.</c><00:13:58.840><c> It's</c><00:13:59.080><c> going</c><00:13:59.200><c> to</c><00:13:59.320><c> give</c><00:13:59.520><c> you</c>

00:13:59.670 --> 00:13:59.680 align:start position:0%
think it through. It's going to give you
 

00:13:59.680 --> 00:14:03.190 align:start position:0%
think it through. It's going to give you
an<00:13:59.880><c> answer</c><00:14:00.840><c> that</c><00:14:01.560><c> well,</c><00:14:02.000><c> it's</c><00:14:02.240><c> an</c><00:14:02.440><c> answer,</c><00:14:03.000><c> but</c>

00:14:03.190 --> 00:14:03.200 align:start position:0%
an answer that well, it's an answer, but
 

00:14:03.200 --> 00:14:06.750 align:start position:0%
an answer that well, it's an answer, but
it<00:14:03.600><c> might</c><00:14:03.920><c> not</c><00:14:04.200><c> be</c><00:14:04.320><c> the</c><00:14:04.520><c> ideal</c><00:14:05.000><c> answer,</c><00:14:05.680><c> okay?</c>

00:14:06.750 --> 00:14:06.760 align:start position:0%
it might not be the ideal answer, okay?
 

00:14:06.760 --> 00:14:09.230 align:start position:0%
it might not be the ideal answer, okay?
On<00:14:06.840><c> the</c><00:14:06.960><c> other</c><00:14:07.160><c> hand,</c><00:14:07.360><c> with</c><00:14:07.600><c> extra</c><00:14:08.080><c> high,</c><00:14:09.080><c> you</c>

00:14:09.230 --> 00:14:09.240 align:start position:0%
On the other hand, with extra high, you
 

00:14:09.240 --> 00:14:11.070 align:start position:0%
On the other hand, with extra high, you
know,<00:14:09.520><c> the</c><00:14:09.680><c> model</c><00:14:10.080><c> is</c><00:14:10.200><c> going</c><00:14:10.320><c> to</c><00:14:10.480><c> think</c>

00:14:11.070 --> 00:14:11.080 align:start position:0%
know, the model is going to think
 

00:14:11.080 --> 00:14:15.550 align:start position:0%
know, the model is going to think
longer,<00:14:12.440><c> but</c><00:14:13.000><c> it</c><00:14:13.240><c> may</c><00:14:13.560><c> not</c><00:14:13.960><c> be</c><00:14:14.160><c> necessary</c><00:14:15.240><c> in</c><00:14:15.480><c> a</c>

00:14:15.550 --> 00:14:15.560 align:start position:0%
longer, but it may not be necessary in a
 

00:14:15.560 --> 00:14:17.910 align:start position:0%
longer, but it may not be necessary in a
lot<00:14:15.880><c> of</c><00:14:16.000><c> situations.</c><00:14:16.800><c> And</c><00:14:16.960><c> so,</c><00:14:17.160><c> I</c><00:14:17.280><c> typically</c>

00:14:17.910 --> 00:14:17.920 align:start position:0%
lot of situations. And so, I typically
 

00:14:17.920 --> 00:14:21.670 align:start position:0%
lot of situations. And so, I typically
keep<00:14:18.160><c> it</c><00:14:18.280><c> on</c><00:14:18.400><c> high,</c><00:14:19.280><c> sometimes</c><00:14:20.040><c> medium,</c><00:14:21.120><c> very</c>

00:14:21.670 --> 00:14:21.680 align:start position:0%
keep it on high, sometimes medium, very
 

00:14:21.680 --> 00:14:24.790 align:start position:0%
keep it on high, sometimes medium, very
rarely<00:14:22.280><c> low,</c><00:14:22.720><c> and</c><00:14:22.920><c> also</c><00:14:23.360><c> very</c><00:14:23.880><c> rarely</c><00:14:24.400><c> extra</c>

00:14:24.790 --> 00:14:24.800 align:start position:0%
rarely low, and also very rarely extra
 

00:14:24.800 --> 00:14:27.310 align:start position:0%
rarely low, and also very rarely extra
high,<00:14:25.080><c> unless</c><00:14:26.400><c> I'm</c><00:14:27.040><c> working</c><00:14:27.120><c> through</c>

00:14:27.310 --> 00:14:27.320 align:start position:0%
high, unless I'm working through
 

00:14:27.320 --> 00:14:29.150 align:start position:0%
high, unless I'm working through
something<00:14:27.800><c> that</c><00:14:27.960><c> the</c><00:14:28.080><c> model</c><00:14:28.560><c> has</c><00:14:28.760><c> trouble</c>

00:14:29.150 --> 00:14:29.160 align:start position:0%
something that the model has trouble
 

00:14:29.160 --> 00:14:30.990 align:start position:0%
something that the model has trouble
with<00:14:29.400><c> high.</c><00:14:29.720><c> You</c><00:14:29.800><c> know,</c><00:14:29.960><c> the</c><00:14:30.080><c> situations</c>

00:14:30.990 --> 00:14:31.000 align:start position:0%
with high. You know, the situations
 

00:14:31.000 --> 00:14:33.110 align:start position:0%
with high. You know, the situations
where<00:14:31.200><c> extra</c><00:14:31.680><c> high</c><00:14:31.960><c> really</c><00:14:32.240><c> proven</c><00:14:32.680><c> itself</c>

00:14:33.110 --> 00:14:33.120 align:start position:0%
where extra high really proven itself
 

00:14:33.120 --> 00:14:35.670 align:start position:0%
where extra high really proven itself
over<00:14:33.480><c> high,</c><00:14:34.160><c> it</c><00:14:34.280><c> hasn't</c><00:14:34.640><c> been</c><00:14:34.800><c> that</c><00:14:35.080><c> many.</c><00:14:35.560><c> And</c>

00:14:35.670 --> 00:14:35.680 align:start position:0%
over high, it hasn't been that many. And
 

00:14:35.680 --> 00:14:37.230 align:start position:0%
over high, it hasn't been that many. And
so,<00:14:35.800><c> for</c><00:14:35.920><c> the</c><00:14:36.040><c> most</c><00:14:36.360><c> part,</c><00:14:36.680><c> I</c><00:14:36.760><c> keep</c><00:14:37.040><c> it</c><00:14:37.120><c> on</c>

00:14:37.230 --> 00:14:37.240 align:start position:0%
so, for the most part, I keep it on
 

00:14:37.240 --> 00:14:39.750 align:start position:0%
so, for the most part, I keep it on
high,<00:14:37.680><c> sometimes</c><00:14:38.520><c> I</c><00:14:38.560><c> also</c><00:14:38.920><c> switch</c><00:14:39.240><c> it</c><00:14:39.360><c> back</c><00:14:39.640><c> to</c>

00:14:39.750 --> 00:14:39.760 align:start position:0%
high, sometimes I also switch it back to
 

00:14:39.760 --> 00:14:42.430 align:start position:0%
high, sometimes I also switch it back to
medium.<00:14:40.240><c> And</c><00:14:40.440><c> as</c><00:14:40.680><c> you</c><00:14:41.040><c> start</c><00:14:41.520><c> to</c><00:14:41.640><c> use</c><00:14:41.920><c> Codex</c>

00:14:42.430 --> 00:14:42.440 align:start position:0%
medium. And as you start to use Codex
 

00:14:42.440 --> 00:14:43.829 align:start position:0%
medium. And as you start to use Codex
more<00:14:42.760><c> and</c><00:14:42.880><c> more,</c>

00:14:43.829 --> 00:14:43.839 align:start position:0%
more and more,
 

00:14:43.839 --> 00:14:45.790 align:start position:0%
more and more,
and<00:14:44.000><c> as</c><00:14:44.160><c> you</c><00:14:44.240><c> begin</c><00:14:44.640><c> building</c><00:14:45.120><c> more</c><00:14:45.360><c> and</c><00:14:45.480><c> more</c>

00:14:45.790 --> 00:14:45.800 align:start position:0%
and as you begin building more and more
 

00:14:45.800 --> 00:14:47.790 align:start position:0%
and as you begin building more and more
apps<00:14:46.240><c> with</c><00:14:46.480><c> it,</c><00:14:46.839><c> and</c><00:14:47.000><c> you'll</c><00:14:47.160><c> be</c><00:14:47.360><c> able</c><00:14:47.640><c> to</c>

00:14:47.790 --> 00:14:47.800 align:start position:0%
apps with it, and you'll be able to
 

00:14:47.800 --> 00:14:50.510 align:start position:0%
apps with it, and you'll be able to
better<00:14:48.160><c> judge</c><00:14:48.920><c> which</c><00:14:49.400><c> thinking</c><00:14:49.880><c> mode</c><00:14:50.360><c> to</c>

00:14:50.510 --> 00:14:50.520 align:start position:0%
better judge which thinking mode to
 

00:14:50.520 --> 00:14:54.230 align:start position:0%
better judge which thinking mode to
select.

00:14:54.230 --> 00:14:54.240 align:start position:0%
 
 

00:14:54.240 --> 00:14:55.910 align:start position:0%
 
Now,<00:14:54.480><c> before</c><00:14:54.920><c> we</c><00:14:55.040><c> go</c><00:14:55.200><c> deeper</c><00:14:55.600><c> into</c><00:14:55.800><c> the</c>

00:14:55.910 --> 00:14:55.920 align:start position:0%
Now, before we go deeper into the
 

00:14:55.920 --> 00:14:58.030 align:start position:0%
Now, before we go deeper into the
workflow,<00:14:56.440><c> I</c><00:14:56.520><c> want</c><00:14:56.720><c> to</c><00:14:57.000><c> quickly</c><00:14:57.440><c> talk</c><00:14:57.760><c> about</c>

00:14:58.030 --> 00:14:58.040 align:start position:0%
workflow, I want to quickly talk about
 

00:14:58.040 --> 00:15:00.230 align:start position:0%
workflow, I want to quickly talk about
pricing<00:14:58.560><c> and</c><00:14:58.680><c> plans</c><00:14:59.280><c> because</c><00:14:59.640><c> this</c><00:14:59.839><c> is</c><00:14:59.960><c> one</c><00:15:00.120><c> of</c>

00:15:00.230 --> 00:15:00.240 align:start position:0%
pricing and plans because this is one of
 

00:15:00.240 --> 00:15:02.190 align:start position:0%
pricing and plans because this is one of
the<00:15:00.360><c> first</c><00:15:00.800><c> practical</c><00:15:01.360><c> questions</c><00:15:01.880><c> people</c>

00:15:02.190 --> 00:15:02.200 align:start position:0%
the first practical questions people
 

00:15:02.200 --> 00:15:03.829 align:start position:0%
the first practical questions people
have<00:15:02.400><c> with</c><00:15:02.560><c> Codex.</c><00:15:03.080><c> For</c><00:15:03.240><c> most</c><00:15:03.560><c> people</c>

00:15:03.829 --> 00:15:03.839 align:start position:0%
have with Codex. For most people
 

00:15:03.839 --> 00:15:05.670 align:start position:0%
have with Codex. For most people
learning<00:15:04.200><c> Codex,</c><00:15:04.720><c> the</c><00:15:04.839><c> important</c><00:15:05.240><c> question</c>

00:15:05.670 --> 00:15:05.680 align:start position:0%
learning Codex, the important question
 

00:15:05.680 --> 00:15:07.950 align:start position:0%
learning Codex, the important question
is<00:15:05.839><c> not</c><00:15:06.240><c> what</c><00:15:06.360><c> is</c><00:15:06.480><c> the</c><00:15:06.600><c> most</c><00:15:06.920><c> expensive</c><00:15:07.520><c> plan.</c>

00:15:07.950 --> 00:15:07.960 align:start position:0%
is not what is the most expensive plan.
 

00:15:07.960 --> 00:15:10.390 align:start position:0%
is not what is the most expensive plan.
The<00:15:08.080><c> question</c><00:15:08.480><c> is,</c><00:15:08.720><c> what</c><00:15:09.040><c> do</c><00:15:09.240><c> I</c><00:15:09.320><c> actually</c><00:15:09.800><c> need</c>

00:15:10.390 --> 00:15:10.400 align:start position:0%
The question is, what do I actually need
 

00:15:10.400 --> 00:15:12.230 align:start position:0%
The question is, what do I actually need
for<00:15:10.520><c> the</c><00:15:10.640><c> kind</c><00:15:10.920><c> of</c><00:15:11.080><c> work</c><00:15:11.400><c> I'm</c><00:15:11.560><c> doing?</c><00:15:12.120><c> If</c>

00:15:12.230 --> 00:15:12.240 align:start position:0%
for the kind of work I'm doing? If
 

00:15:12.240 --> 00:15:14.390 align:start position:0%
for the kind of work I'm doing? If
you're<00:15:12.480><c> learning,</c><00:15:13.200><c> testing</c><00:15:13.680><c> prompts,</c><00:15:14.280><c> and</c>

00:15:14.390 --> 00:15:14.400 align:start position:0%
you're learning, testing prompts, and
 

00:15:14.400 --> 00:15:16.270 align:start position:0%
you're learning, testing prompts, and
building<00:15:14.720><c> smaller</c><00:15:15.160><c> projects,</c><00:15:16.000><c> you</c><00:15:16.120><c> can</c>

00:15:16.270 --> 00:15:16.280 align:start position:0%
building smaller projects, you can
 

00:15:16.280 --> 00:15:18.590 align:start position:0%
building smaller projects, you can
usually<00:15:16.680><c> start</c><00:15:17.080><c> with</c><00:15:17.240><c> the</c><00:15:17.320><c> normal</c><00:15:17.800><c> Chat</c><00:15:18.120><c> GPT</c>

00:15:18.590 --> 00:15:18.600 align:start position:0%
usually start with the normal Chat GPT
 

00:15:18.600 --> 00:15:21.270 align:start position:0%
usually start with the normal Chat GPT
plan<00:15:19.120><c> access</c><00:15:19.600><c> available</c><00:15:20.160><c> to</c><00:15:20.440><c> you.</c><00:15:21.000><c> If</c><00:15:21.120><c> you're</c>

00:15:21.270 --> 00:15:21.280 align:start position:0%
plan access available to you. If you're
 

00:15:21.280 --> 00:15:24.070 align:start position:0%
plan access available to you. If you're
doing<00:15:21.560><c> heavier</c><00:15:22.120><c> app</c><00:15:22.440><c> builds,</c><00:15:23.000><c> longer</c><00:15:23.560><c> agent</c>

00:15:24.070 --> 00:15:24.080 align:start position:0%
doing heavier app builds, longer agent
 

00:15:24.080 --> 00:15:26.510 align:start position:0%
doing heavier app builds, longer agent
runs,<00:15:24.640><c> team</c><00:15:25.000><c> workflows,</c><00:15:25.720><c> or</c><00:15:25.920><c> professional</c>

00:15:26.510 --> 00:15:26.520 align:start position:0%
runs, team workflows, or professional
 

00:15:26.520 --> 00:15:29.390 align:start position:0%
runs, team workflows, or professional
coding<00:15:26.880><c> work,</c><00:15:27.560><c> then</c><00:15:27.800><c> plan</c><00:15:28.240><c> limits,</c><00:15:28.680><c> credits,</c>

00:15:29.390 --> 00:15:29.400 align:start position:0%
coding work, then plan limits, credits,
 

00:15:29.400 --> 00:15:31.750 align:start position:0%
coding work, then plan limits, credits,
and<00:15:29.600><c> business</c><00:15:30.120><c> options</c><00:15:30.720><c> start</c><00:15:31.160><c> to</c><00:15:31.280><c> matter</c>

00:15:31.750 --> 00:15:31.760 align:start position:0%
and business options start to matter
 

00:15:31.760 --> 00:15:35.390 align:start position:0%
and business options start to matter
more.<00:15:32.280><c> Now,</c><00:15:32.520><c> here</c><00:15:32.920><c> I</c><00:15:33.080><c> am</c><00:15:33.440><c> on</c><00:15:33.680><c> OpenAI's</c><00:15:34.720><c> Codex</c>

00:15:35.390 --> 00:15:35.400 align:start position:0%
more. Now, here I am on OpenAI's Codex
 

00:15:35.400 --> 00:15:37.630 align:start position:0%
more. Now, here I am on OpenAI's Codex
pricing<00:15:35.960><c> page.</c><00:15:36.360><c> And</c><00:15:36.480><c> if</c><00:15:36.600><c> you</c><00:15:36.720><c> scroll</c><00:15:37.080><c> down,</c>

00:15:37.630 --> 00:15:37.640 align:start position:0%
pricing page. And if you scroll down,
 

00:15:37.640 --> 00:15:39.790 align:start position:0%
pricing page. And if you scroll down,
you<00:15:37.920><c> can</c><00:15:38.160><c> see</c><00:15:38.360><c> the</c><00:15:38.520><c> prices</c><00:15:39.320><c> that</c><00:15:39.640><c> are</c>

00:15:39.790 --> 00:15:39.800 align:start position:0%
you can see the prices that are
 

00:15:39.800 --> 00:15:42.470 align:start position:0%
you can see the prices that are
available<00:15:40.600><c> at</c><00:15:40.760><c> the</c><00:15:40.880><c> time</c><00:15:41.320><c> of</c><00:15:41.480><c> filming</c><00:15:42.080><c> this</c>

00:15:42.470 --> 00:15:42.480 align:start position:0%
available at the time of filming this
 

00:15:42.480 --> 00:15:44.710 align:start position:0%
available at the time of filming this
video,<00:15:42.960><c> right?</c><00:15:43.240><c> So,</c><00:15:43.360><c> we</c><00:15:43.480><c> have</c><00:15:43.680><c> the</c><00:15:43.800><c> free</c><00:15:44.160><c> plan,</c>

00:15:44.710 --> 00:15:44.720 align:start position:0%
video, right? So, we have the free plan,
 

00:15:44.720 --> 00:15:46.710 align:start position:0%
video, right? So, we have the free plan,
and<00:15:44.840><c> this</c><00:15:45.000><c> allows</c><00:15:45.440><c> you</c><00:15:45.560><c> to</c><00:15:45.720><c> explore</c><00:15:46.200><c> Codex</c>

00:15:46.710 --> 00:15:46.720 align:start position:0%
and this allows you to explore Codex
 

00:15:46.720 --> 00:15:49.510 align:start position:0%
and this allows you to explore Codex
capabilities<00:15:47.560><c> on</c><00:15:47.880><c> quick</c><00:15:48.240><c> coding</c><00:15:48.640><c> tasks.</c><00:15:49.400><c> We</c>

00:15:49.510 --> 00:15:49.520 align:start position:0%
capabilities on quick coding tasks. We
 

00:15:49.520 --> 00:15:52.150 align:start position:0%
capabilities on quick coding tasks. We
have<00:15:49.720><c> the</c><00:15:49.880><c> gold</c><00:15:50.200><c> plan,</c><00:15:50.600><c> which</c><00:15:50.840><c> is</c><00:15:51.000><c> $8</c><00:15:51.600><c> a</c><00:15:51.640><c> month,</c>

00:15:52.150 --> 00:15:52.160 align:start position:0%
have the gold plan, which is $8 a month,
 

00:15:52.160 --> 00:15:54.390 align:start position:0%
have the gold plan, which is $8 a month,
and<00:15:52.600><c> you</c><00:15:52.720><c> can</c><00:15:52.840><c> use</c><00:15:53.000><c> Codex</c><00:15:53.440><c> for</c><00:15:53.640><c> lightweight</c>

00:15:54.390 --> 00:15:54.400 align:start position:0%
and you can use Codex for lightweight
 

00:15:54.400 --> 00:15:56.790 align:start position:0%
and you can use Codex for lightweight
coding<00:15:54.760><c> tasks.</c><00:15:55.280><c> We</c><00:15:55.400><c> have</c><00:15:55.640><c> the</c><00:15:55.760><c> plus</c><00:15:56.280><c> plan,</c>

00:15:56.790 --> 00:15:56.800 align:start position:0%
coding tasks. We have the plus plan,
 

00:15:56.800 --> 00:15:59.670 align:start position:0%
coding tasks. We have the plus plan,
which<00:15:57.200><c> is</c><00:15:57.680><c> fairly</c><00:15:58.120><c> popular,</c><00:15:58.880><c> 20</c><00:15:59.320><c> bucks</c><00:15:59.600><c> a</c>

00:15:59.670 --> 00:15:59.680 align:start position:0%
which is fairly popular, 20 bucks a
 

00:15:59.680 --> 00:16:02.750 align:start position:0%
which is fairly popular, 20 bucks a
month,<00:16:00.080><c> and</c><00:16:00.240><c> here</c><00:16:00.640><c> you</c><00:16:00.920><c> can</c><00:16:01.360><c> finally</c><00:16:02.040><c> start</c><00:16:02.600><c> to</c>

00:16:02.750 --> 00:16:02.760 align:start position:0%
month, and here you can finally start to
 

00:16:02.760 --> 00:16:05.590 align:start position:0%
month, and here you can finally start to
actually<00:16:03.400><c> do</c><00:16:03.720><c> something</c><00:16:04.600><c> meaningful,</c><00:16:05.280><c> right?</c>

00:16:05.590 --> 00:16:05.600 align:start position:0%
actually do something meaningful, right?
 

00:16:05.600 --> 00:16:07.350 align:start position:0%
actually do something meaningful, right?
Something<00:16:06.200><c> like,</c><00:16:06.480><c> you</c><00:16:06.520><c> know,</c><00:16:06.680><c> building</c><00:16:07.240><c> a</c>

00:16:07.350 --> 00:16:07.360 align:start position:0%
Something like, you know, building a
 

00:16:07.360 --> 00:16:08.950 align:start position:0%
Something like, you know, building a
part<00:16:07.640><c> of</c><00:16:07.720><c> an</c><00:16:07.880><c> app,</c><00:16:08.280><c> or</c><00:16:08.440><c> building</c><00:16:08.800><c> some</c>

00:16:08.950 --> 00:16:08.960 align:start position:0%
part of an app, or building some
 

00:16:08.960 --> 00:16:11.630 align:start position:0%
part of an app, or building some
scripts.<00:16:09.640><c> And</c><00:16:09.800><c> they</c><00:16:09.920><c> say</c><00:16:10.320><c> this</c><00:16:10.720><c> can</c><00:16:10.960><c> power</c><00:16:11.520><c> a</c>

00:16:11.630 --> 00:16:11.640 align:start position:0%
scripts. And they say this can power a
 

00:16:11.640 --> 00:16:14.670 align:start position:0%
scripts. And they say this can power a
few<00:16:12.040><c> focused</c><00:16:12.920><c> coding</c><00:16:13.320><c> sessions</c><00:16:13.920><c> each</c><00:16:14.240><c> week.</c>

00:16:14.670 --> 00:16:14.680 align:start position:0%
few focused coding sessions each week.
 

00:16:14.680 --> 00:16:16.710 align:start position:0%
few focused coding sessions each week.
Next,<00:16:15.040><c> we</c><00:16:15.200><c> have</c><00:16:15.360><c> the</c><00:16:15.480><c> pro</c><00:16:15.800><c> plan,</c><00:16:16.240><c> right?</c><00:16:16.600><c> And</c>

00:16:16.710 --> 00:16:16.720 align:start position:0%
Next, we have the pro plan, right? And
 

00:16:16.720 --> 00:16:18.470 align:start position:0%
Next, we have the pro plan, right? And
so,<00:16:16.840><c> here</c><00:16:17.160><c> you</c><00:16:17.280><c> can</c><00:16:17.440><c> choose</c><00:16:17.880><c> whether</c><00:16:18.160><c> you</c><00:16:18.240><c> want</c>

00:16:18.470 --> 00:16:18.480 align:start position:0%
so, here you can choose whether you want
 

00:16:18.480 --> 00:16:22.230 align:start position:0%
so, here you can choose whether you want
the<00:16:18.560><c> 5x</c><00:16:19.520><c> or</c><00:16:19.720><c> the</c><00:16:20.000><c> 20x</c><00:16:20.800><c> higher</c><00:16:21.240><c> rate</c><00:16:21.640><c> limits</c>

00:16:22.230 --> 00:16:22.240 align:start position:0%
the 5x or the 20x higher rate limits
 

00:16:22.240 --> 00:16:25.110 align:start position:0%
the 5x or the 20x higher rate limits
than<00:16:22.560><c> plus,</c><00:16:23.000><c> and</c><00:16:23.120><c> this</c><00:16:23.320><c> is</c><00:16:23.520><c> $100</c><00:16:24.440><c> a</c><00:16:24.520><c> month.</c><00:16:24.880><c> I'm</c>

00:16:25.110 --> 00:16:25.120 align:start position:0%
than plus, and this is $100 a month. I'm
 

00:16:25.120 --> 00:16:28.670 align:start position:0%
than plus, and this is $100 a month. I'm
actually<00:16:25.640><c> using</c><00:16:26.240><c> the</c><00:16:26.400><c> pro</c><00:16:26.760><c> plan</c><00:16:27.360><c> 20x.</c><00:16:28.360><c> Okay,</c>

00:16:28.670 --> 00:16:28.680 align:start position:0%
actually using the pro plan 20x. Okay,
 

00:16:28.680 --> 00:16:31.710 align:start position:0%
actually using the pro plan 20x. Okay,
so<00:16:28.880><c> I'm</c><00:16:29.080><c> paying</c><00:16:29.440><c> 200</c><00:16:29.920><c> bucks</c><00:16:30.160><c> a</c><00:16:30.240><c> month,</c><00:16:30.720><c> and</c><00:16:31.480><c> at</c>

00:16:31.710 --> 00:16:31.720 align:start position:0%
so I'm paying 200 bucks a month, and at
 

00:16:31.720 --> 00:16:34.790 align:start position:0%
so I'm paying 200 bucks a month, and at
this<00:16:32.080><c> level,</c><00:16:32.800><c> I</c><00:16:32.920><c> am</c><00:16:33.280><c> at</c><00:16:33.400><c> a</c><00:16:33.480><c> point</c><00:16:34.040><c> where</c><00:16:34.600><c> I</c>

00:16:34.790 --> 00:16:34.800 align:start position:0%
this level, I am at a point where I
 

00:16:34.800 --> 00:16:37.670 align:start position:0%
this level, I am at a point where I
pretty<00:16:35.200><c> much</c><00:16:35.560><c> never</c><00:16:36.120><c> reach</c><00:16:36.480><c> any</c><00:16:36.680><c> limits.</c><00:16:37.320><c> And</c>

00:16:37.670 --> 00:16:37.680 align:start position:0%
pretty much never reach any limits. And
 

00:16:37.680 --> 00:16:39.630 align:start position:0%
pretty much never reach any limits. And
that<00:16:37.920><c> means</c><00:16:38.280><c> I</c><00:16:38.360><c> can</c><00:16:38.720><c> build,</c><00:16:39.400><c> you</c><00:16:39.480><c> know,</c>

00:16:39.630 --> 00:16:39.640 align:start position:0%
that means I can build, you know,
 

00:16:39.640 --> 00:16:42.750 align:start position:0%
that means I can build, you know,
multiple<00:16:40.160><c> projects</c><00:16:40.680><c> at</c><00:16:41.000><c> once,</c><00:16:41.720><c> and</c><00:16:42.080><c> use</c><00:16:42.320><c> Codex</c>

00:16:42.750 --> 00:16:42.760 align:start position:0%
multiple projects at once, and use Codex
 

00:16:42.760 --> 00:16:45.590 align:start position:0%
multiple projects at once, and use Codex
for<00:16:43.000><c> all</c><00:16:43.200><c> kinds</c><00:16:43.520><c> of</c><00:16:43.640><c> tasks,</c><00:16:44.400><c> and</c><00:16:44.800><c> still</c><00:16:45.240><c> not</c>

00:16:45.590 --> 00:16:45.600 align:start position:0%
for all kinds of tasks, and still not
 

00:16:45.600 --> 00:16:48.070 align:start position:0%
for all kinds of tasks, and still not
reach<00:16:45.960><c> limits.</c><00:16:46.440><c> And</c><00:16:46.640><c> so,</c><00:16:47.200><c> during</c><00:16:47.520><c> the</c><00:16:47.640><c> time</c>

00:16:48.070 --> 00:16:48.080 align:start position:0%
reach limits. And so, during the time
 

00:16:48.080 --> 00:16:49.590 align:start position:0%
reach limits. And so, during the time
where<00:16:48.200><c> I'm</c><00:16:48.360><c> when</c><00:16:48.600><c> I'm,</c><00:16:48.800><c> you</c><00:16:48.880><c> know,</c><00:16:49.040><c> building</c>

00:16:49.590 --> 00:16:49.600 align:start position:0%
where I'm when I'm, you know, building
 

00:16:49.600 --> 00:16:51.870 align:start position:0%
where I'm when I'm, you know, building
heavy<00:16:50.040><c> apps</c><00:16:50.480><c> and</c><00:16:50.720><c> and</c><00:16:50.880><c> doing</c><00:16:51.120><c> some</c><00:16:51.320><c> serious</c>

00:16:51.870 --> 00:16:51.880 align:start position:0%
heavy apps and and doing some serious
 

00:16:51.880 --> 00:16:54.510 align:start position:0%
heavy apps and and doing some serious
work,<00:16:52.440><c> I</c><00:16:52.520><c> might</c><00:16:52.720><c> get</c><00:16:53.000><c> close,</c><00:16:54.000><c> right?</c><00:16:54.240><c> But</c><00:16:54.440><c> I</c>

00:16:54.510 --> 00:16:54.520 align:start position:0%
work, I might get close, right? But I
 

00:16:54.520 --> 00:16:56.790 align:start position:0%
work, I might get close, right? But I
never<00:16:55.000><c> really</c><00:16:55.280><c> get</c><00:16:55.760><c> to</c><00:16:55.880><c> the</c><00:16:56.000><c> limit.</c><00:16:56.360><c> You</c><00:16:56.520><c> need</c>

00:16:56.790 --> 00:16:56.800 align:start position:0%
never really get to the limit. You need
 

00:16:56.800 --> 00:16:59.470 align:start position:0%
never really get to the limit. You need
to<00:16:56.920><c> decide</c><00:16:58.000><c> which</c><00:16:58.320><c> plan</c><00:16:58.640><c> is</c><00:16:58.839><c> right</c><00:16:59.120><c> for</c><00:16:59.320><c> you.</c>

00:16:59.470 --> 00:16:59.480 align:start position:0%
to decide which plan is right for you.
 

00:16:59.480 --> 00:17:02.030 align:start position:0%
to decide which plan is right for you.
Now,<00:16:59.720><c> from</c><00:17:00.040><c> what</c><00:17:00.240><c> I</c><00:17:00.320><c> understand,</c><00:17:01.160><c> plus</c><00:17:01.680><c> plan</c>

00:17:02.030 --> 00:17:02.040 align:start position:0%
Now, from what I understand, plus plan
 

00:17:02.040 --> 00:17:04.069 align:start position:0%
Now, from what I understand, plus plan
is<00:17:02.280><c> very,</c><00:17:02.560><c> very</c><00:17:02.839><c> popular.</c><00:17:03.480><c> And</c><00:17:03.600><c> so,</c><00:17:03.760><c> what</c><00:17:03.960><c> I</c>

00:17:04.069 --> 00:17:04.079 align:start position:0%
is very, very popular. And so, what I
 

00:17:04.079 --> 00:17:05.910 align:start position:0%
is very, very popular. And so, what I
would<00:17:04.280><c> do</c><00:17:04.480><c> is</c><00:17:04.720><c> I</c><00:17:04.839><c> would</c><00:17:05.079><c> obviously,</c><00:17:05.720><c> you</c><00:17:05.800><c> know,</c>

00:17:05.910 --> 00:17:05.920 align:start position:0%
would do is I would obviously, you know,
 

00:17:05.920 --> 00:17:08.390 align:start position:0%
would do is I would obviously, you know,
try<00:17:06.199><c> the</c><00:17:06.360><c> free</c><00:17:06.680><c> plan,</c><00:17:07.280><c> try</c><00:17:07.560><c> to</c><00:17:07.720><c> see</c><00:17:07.920><c> how</c><00:17:08.120><c> that</c>

00:17:08.390 --> 00:17:08.400 align:start position:0%
try the free plan, try to see how that
 

00:17:08.400 --> 00:17:10.470 align:start position:0%
try the free plan, try to see how that
goes,<00:17:09.000><c> and,</c><00:17:09.560><c> you</c><00:17:09.600><c> know,</c><00:17:09.800><c> obviously,</c><00:17:10.400><c> you</c>

00:17:10.470 --> 00:17:10.480 align:start position:0%
goes, and, you know, obviously, you
 

00:17:10.480 --> 00:17:12.429 align:start position:0%
goes, and, you know, obviously, you
know,<00:17:10.640><c> if</c><00:17:10.760><c> you</c><00:17:10.880><c> do</c><00:17:11.040><c> anything</c><00:17:11.600><c> serious</c><00:17:12.319><c> or</c>

00:17:12.429 --> 00:17:12.439 align:start position:0%
know, if you do anything serious or
 

00:17:12.439 --> 00:17:14.309 align:start position:0%
know, if you do anything serious or
remotely<00:17:13.000><c> serious,</c><00:17:13.600><c> you're</c><00:17:13.760><c> probably,</c><00:17:14.240><c> you</c>

00:17:14.309 --> 00:17:14.319 align:start position:0%
remotely serious, you're probably, you
 

00:17:14.319 --> 00:17:15.790 align:start position:0%
remotely serious, you're probably, you
know,<00:17:14.439><c> you're</c><00:17:14.600><c> going</c><00:17:14.720><c> to</c><00:17:14.839><c> run</c><00:17:15.120><c> out</c><00:17:15.280><c> run</c><00:17:15.600><c> out</c><00:17:15.720><c> of</c>

00:17:15.790 --> 00:17:15.800 align:start position:0%
know, you're going to run out run out of
 

00:17:15.800 --> 00:17:17.870 align:start position:0%
know, you're going to run out run out of
this<00:17:16.000><c> plan.</c><00:17:16.280><c> And</c><00:17:16.400><c> so,</c><00:17:16.520><c> the</c><00:17:16.640><c> next</c><00:17:17.000><c> logical</c><00:17:17.400><c> step</c>

00:17:17.870 --> 00:17:17.880 align:start position:0%
this plan. And so, the next logical step
 

00:17:17.880 --> 00:17:19.990 align:start position:0%
this plan. And so, the next logical step
is<00:17:18.000><c> to</c><00:17:18.120><c> try</c><00:17:18.439><c> out</c><00:17:18.640><c> the</c><00:17:18.760><c> plus</c><00:17:19.240><c> plan.</c><00:17:19.520><c> The</c><00:17:19.640><c> plus</c>

00:17:19.990 --> 00:17:20.000 align:start position:0%
is to try out the plus plan. The plus
 

00:17:20.000 --> 00:17:22.510 align:start position:0%
is to try out the plus plan. The plus
plan<00:17:20.280><c> is</c><00:17:20.439><c> where</c><00:17:20.600><c> a</c><00:17:20.680><c> lot</c><00:17:20.959><c> of</c><00:17:21.040><c> people</c><00:17:21.319><c> start</c><00:17:22.000><c> and</c>

00:17:22.510 --> 00:17:22.520 align:start position:0%
plan is where a lot of people start and
 

00:17:22.520 --> 00:17:25.630 align:start position:0%
plan is where a lot of people start and
it<00:17:22.800><c> gives</c><00:17:23.240><c> you</c><00:17:23.480><c> a</c><00:17:23.640><c> reference</c><00:17:24.319><c> point</c><00:17:24.959><c> as</c><00:17:25.319><c> to,</c>

00:17:25.630 --> 00:17:25.640 align:start position:0%
it gives you a reference point as to,
 

00:17:25.640 --> 00:17:27.429 align:start position:0%
it gives you a reference point as to,
you<00:17:25.720><c> know,</c><00:17:25.920><c> the</c><00:17:26.160><c> amount</c><00:17:26.640><c> of</c><00:17:26.800><c> work</c><00:17:27.079><c> that</c><00:17:27.240><c> you're</c>

00:17:27.429 --> 00:17:27.439 align:start position:0%
you know, the amount of work that you're
 

00:17:27.439 --> 00:17:29.590 align:start position:0%
you know, the amount of work that you're
doing,<00:17:27.800><c> how</c><00:17:28.040><c> much</c><00:17:28.360><c> can</c><00:17:28.520><c> this</c><00:17:28.840><c> plan</c><00:17:29.200><c> actually</c>

00:17:29.590 --> 00:17:29.600 align:start position:0%
doing, how much can this plan actually
 

00:17:29.600 --> 00:17:31.390 align:start position:0%
doing, how much can this plan actually
cover<00:17:30.280><c> the</c><00:17:30.360><c> amount</c><00:17:30.720><c> of</c><00:17:30.800><c> work</c><00:17:31.040><c> you're</c><00:17:31.160><c> doing.</c>

00:17:31.390 --> 00:17:31.400 align:start position:0%
cover the amount of work you're doing.
 

00:17:31.400 --> 00:17:33.510 align:start position:0%
cover the amount of work you're doing.
Because<00:17:31.680><c> the</c><00:17:31.800><c> fact</c><00:17:32.200><c> of</c><00:17:32.280><c> the</c><00:17:32.400><c> matter</c><00:17:32.840><c> is</c><00:17:33.320><c> there</c>

00:17:33.510 --> 00:17:33.520 align:start position:0%
Because the fact of the matter is there
 

00:17:33.520 --> 00:17:36.510 align:start position:0%
Because the fact of the matter is there
people<00:17:33.920><c> that</c><00:17:34.160><c> work</c><00:17:34.600><c> on</c><00:17:34.920><c> very</c><00:17:35.360><c> heavy</c><00:17:35.680><c> projects</c>

00:17:36.510 --> 00:17:36.520 align:start position:0%
people that work on very heavy projects
 

00:17:36.520 --> 00:17:38.430 align:start position:0%
people that work on very heavy projects
and,<00:17:37.000><c> you</c><00:17:37.040><c> know,</c><00:17:37.200><c> there</c><00:17:37.400><c> they</c><00:17:37.560><c> work</c><00:17:37.840><c> on</c><00:17:38.000><c> big</c>

00:17:38.430 --> 00:17:38.440 align:start position:0%
and, you know, there they work on big
 

00:17:38.440 --> 00:17:40.430 align:start position:0%
and, you know, there they work on big
repos,<00:17:39.040><c> right?</c><00:17:39.360><c> Lots</c><00:17:39.720><c> and</c><00:17:39.800><c> lots</c><00:17:40.000><c> of</c><00:17:40.160><c> code</c>

00:17:40.430 --> 00:17:40.440 align:start position:0%
repos, right? Lots and lots of code
 

00:17:40.440 --> 00:17:42.950 align:start position:0%
repos, right? Lots and lots of code
base.<00:17:40.880><c> They</c><00:17:41.080><c> run</c><00:17:41.320><c> out</c><00:17:41.560><c> of</c><00:17:41.680><c> their</c><00:17:41.880><c> plan</c><00:17:42.440><c> very,</c>

00:17:42.950 --> 00:17:42.960 align:start position:0%
base. They run out of their plan very,
 

00:17:42.960 --> 00:17:45.230 align:start position:0%
base. They run out of their plan very,
very<00:17:43.240><c> quickly.</c><00:17:43.800><c> But</c><00:17:44.120><c> if</c><00:17:44.280><c> you're</c><00:17:44.520><c> working</c><00:17:45.080><c> on</c><00:17:45.160><c> a</c>

00:17:45.230 --> 00:17:45.240 align:start position:0%
very quickly. But if you're working on a
 

00:17:45.240 --> 00:17:47.510 align:start position:0%
very quickly. But if you're working on a
smaller<00:17:45.720><c> projects,</c><00:17:46.440><c> you're</c><00:17:46.640><c> not</c><00:17:47.000><c> using</c><00:17:47.360><c> the</c>

00:17:47.510 --> 00:17:47.520 align:start position:0%
smaller projects, you're not using the
 

00:17:47.520 --> 00:17:49.390 align:start position:0%
smaller projects, you're not using the
fast<00:17:48.000><c> mode.</c><00:17:48.360><c> So</c><00:17:48.480><c> for</c><00:17:48.640><c> instance,</c><00:17:48.960><c> you're</c><00:17:49.080><c> not</c>

00:17:49.390 --> 00:17:49.400 align:start position:0%
fast mode. So for instance, you're not
 

00:17:49.400 --> 00:17:51.110 align:start position:0%
fast mode. So for instance, you're not
coming<00:17:49.760><c> here</c><00:17:50.000><c> and</c><00:17:50.120><c> you're</c><00:17:50.280><c> changing</c><00:17:50.960><c> you're</c>

00:17:51.110 --> 00:17:51.120 align:start position:0%
coming here and you're changing you're
 

00:17:51.120 --> 00:17:53.470 align:start position:0%
coming here and you're changing you're
not<00:17:51.400><c> changing</c><00:17:51.880><c> speed</c><00:17:52.320><c> because</c><00:17:52.760><c> I'm</c><00:17:53.040><c> using</c><00:17:53.360><c> the</c>

00:17:53.470 --> 00:17:53.480 align:start position:0%
not changing speed because I'm using the
 

00:17:53.480 --> 00:17:55.990 align:start position:0%
not changing speed because I'm using the
fast<00:17:53.880><c> mode</c><00:17:54.200><c> from</c><00:17:54.440><c> time</c><00:17:54.800><c> to</c><00:17:54.960><c> time</c><00:17:55.360><c> and</c><00:17:55.520><c> that,</c>

00:17:55.990 --> 00:17:56.000 align:start position:0%
fast mode from time to time and that,
 

00:17:56.000 --> 00:17:57.830 align:start position:0%
fast mode from time to time and that,
you<00:17:56.080><c> know,</c><00:17:56.240><c> increases</c><00:17:56.920><c> the</c><00:17:57.040><c> usage</c><00:17:57.440><c> as</c><00:17:57.640><c> well.</c>

00:17:57.830 --> 00:17:57.840 align:start position:0%
you know, increases the usage as well.
 

00:17:57.840 --> 00:17:59.630 align:start position:0%
you know, increases the usage as well.
So<00:17:57.960><c> if</c><00:17:58.080><c> you're</c><00:17:58.240><c> on</c><00:17:58.400><c> standard</c><00:17:59.280><c> and</c><00:17:59.440><c> you're</c>

00:17:59.630 --> 00:17:59.640 align:start position:0%
So if you're on standard and you're
 

00:17:59.640 --> 00:18:01.990 align:start position:0%
So if you're on standard and you're
using<00:18:00.040><c> maybe</c><00:18:00.360><c> medium</c><00:18:01.040><c> often,</c><00:18:01.560><c> right?</c><00:18:01.880><c> You're</c>

00:18:01.990 --> 00:18:02.000 align:start position:0%
using maybe medium often, right? You're
 

00:18:02.000 --> 00:18:04.310 align:start position:0%
using maybe medium often, right? You're
not<00:18:02.240><c> really</c><00:18:02.480><c> using</c><00:18:03.040><c> high</c><00:18:03.400><c> that</c><00:18:03.680><c> much</c><00:18:04.200><c> and</c>

00:18:04.310 --> 00:18:04.320 align:start position:0%
not really using high that much and
 

00:18:04.320 --> 00:18:06.470 align:start position:0%
not really using high that much and
you're<00:18:04.480><c> almost</c><00:18:04.880><c> never</c><00:18:05.160><c> using</c><00:18:05.480><c> extra</c><00:18:05.880><c> high,</c>

00:18:06.470 --> 00:18:06.480 align:start position:0%
you're almost never using extra high,
 

00:18:06.480 --> 00:18:09.030 align:start position:0%
you're almost never using extra high,
you<00:18:06.720><c> can</c><00:18:07.000><c> get</c><00:18:07.400><c> a</c><00:18:07.480><c> lot</c><00:18:07.840><c> of</c><00:18:07.960><c> mileage</c><00:18:08.560><c> out</c><00:18:08.720><c> of</c><00:18:08.840><c> this</c>

00:18:09.030 --> 00:18:09.040 align:start position:0%
you can get a lot of mileage out of this
 

00:18:09.040 --> 00:18:11.510 align:start position:0%
you can get a lot of mileage out of this
plus<00:18:09.440><c> plan.</c><00:18:09.840><c> And</c><00:18:10.080><c> when</c><00:18:10.440><c> this</c><00:18:10.720><c> plus</c><00:18:11.120><c> plan</c>

00:18:11.510 --> 00:18:11.520 align:start position:0%
plus plan. And when this plus plan
 

00:18:11.520 --> 00:18:13.870 align:start position:0%
plus plan. And when this plus plan
starts<00:18:12.240><c> to</c><00:18:12.600><c> run</c><00:18:12.920><c> out,</c><00:18:13.280><c> you</c><00:18:13.360><c> know,</c><00:18:13.480><c> you're</c>

00:18:13.870 --> 00:18:13.880 align:start position:0%
starts to run out, you know, you're
 

00:18:13.880 --> 00:18:15.510 align:start position:0%
starts to run out, you know, you're
you're<00:18:14.000><c> starting</c><00:18:14.400><c> to</c><00:18:14.520><c> notice</c><00:18:15.000><c> some</c><00:18:15.160><c> tight</c>

00:18:15.510 --> 00:18:15.520 align:start position:0%
you're starting to notice some tight
 

00:18:15.520 --> 00:18:17.310 align:start position:0%
you're starting to notice some tight
limits,<00:18:16.080><c> you</c><00:18:16.200><c> may</c><00:18:16.360><c> want</c><00:18:16.600><c> to</c><00:18:16.720><c> switch</c><00:18:17.080><c> to</c><00:18:17.240><c> a</c>

00:18:17.310 --> 00:18:17.320 align:start position:0%
limits, you may want to switch to a
 

00:18:17.320 --> 00:18:20.630 align:start position:0%
limits, you may want to switch to a
higher<00:18:17.720><c> plan,</c><00:18:18.320><c> okay?</c><00:18:18.800><c> Such</c><00:18:19.080><c> as</c><00:18:19.200><c> the</c><00:18:19.320><c> pro</c><00:18:19.720><c> 5x</c><00:18:20.400><c> or</c>

00:18:20.630 --> 00:18:20.640 align:start position:0%
higher plan, okay? Such as the pro 5x or
 

00:18:20.640 --> 00:18:23.310 align:start position:0%
higher plan, okay? Such as the pro 5x or
20x.<00:18:21.440><c> Now</c><00:18:21.560><c> you</c><00:18:21.720><c> can</c><00:18:21.880><c> also</c><00:18:22.160><c> ask</c><00:18:22.440><c> Codex</c><00:18:22.960><c> to</c><00:18:23.080><c> help</c>

00:18:23.310 --> 00:18:23.320 align:start position:0%
20x. Now you can also ask Codex to help
 

00:18:23.320 --> 00:18:25.750 align:start position:0%
20x. Now you can also ask Codex to help
you<00:18:23.440><c> choose</c><00:18:23.760><c> the</c><00:18:23.880><c> right</c><00:18:24.160><c> Codex</c><00:18:24.640><c> plan</c><00:18:25.120><c> for</c><00:18:25.360><c> your</c>

00:18:25.750 --> 00:18:25.760 align:start position:0%
you choose the right Codex plan for your
 

00:18:25.760 --> 00:18:27.670 align:start position:0%
you choose the right Codex plan for your
specific<00:18:26.320><c> use</c><00:18:26.600><c> case.</c><00:18:26.960><c> For</c><00:18:27.080><c> instance,</c><00:18:27.440><c> you</c><00:18:27.520><c> can</c>

00:18:27.670 --> 00:18:27.680 align:start position:0%
specific use case. For instance, you can
 

00:18:27.680 --> 00:18:29.710 align:start position:0%
specific use case. For instance, you can
use<00:18:27.880><c> this</c><00:18:28.080><c> prompt</c><00:18:28.440><c> here,</c><00:18:28.640><c> help</c><00:18:28.960><c> me</c><00:18:29.120><c> choose</c><00:18:29.560><c> the</c>

00:18:29.710 --> 00:18:29.720 align:start position:0%
use this prompt here, help me choose the
 

00:18:29.720 --> 00:18:32.990 align:start position:0%
use this prompt here, help me choose the
right<00:18:30.120><c> Codex</c><00:18:30.640><c> plan</c><00:18:31.200><c> for</c><00:18:31.400><c> my</c><00:18:31.760><c> use</c><00:18:32.120><c> case,</c><00:18:32.560><c> okay?</c>

00:18:32.990 --> 00:18:33.000 align:start position:0%
right Codex plan for my use case, okay?
 

00:18:33.000 --> 00:18:35.350 align:start position:0%
right Codex plan for my use case, okay?
Use<00:18:33.240><c> only</c><00:18:33.520><c> current</c><00:18:33.840><c> official</c><00:18:34.280><c> OpenAI</c><00:18:34.840><c> pricing</c>

00:18:35.350 --> 00:18:35.360 align:start position:0%
Use only current official OpenAI pricing
 

00:18:35.360 --> 00:18:37.630 align:start position:0%
Use only current official OpenAI pricing
and<00:18:35.440><c> help</c><00:18:35.760><c> center</c><00:18:36.360><c> information.</c><00:18:37.320><c> And</c><00:18:37.520><c> I'm</c>

00:18:37.630 --> 00:18:37.640 align:start position:0%
and help center information. And I'm
 

00:18:37.640 --> 00:18:39.510 align:start position:0%
and help center information. And I'm
going<00:18:37.760><c> to</c><00:18:37.840><c> go</c><00:18:37.960><c> ahead</c><00:18:38.240><c> and</c><00:18:38.440><c> run</c><00:18:38.680><c> this</c><00:18:39.040><c> and</c><00:18:39.320><c> see</c>

00:18:39.510 --> 00:18:39.520 align:start position:0%
going to go ahead and run this and see
 

00:18:39.520 --> 00:18:41.030 align:start position:0%
going to go ahead and run this and see
what<00:18:39.680><c> it</c><00:18:39.800><c> says.</c><00:18:40.360><c> All</c><00:18:40.400><c> right,</c><00:18:40.600><c> then</c><00:18:40.720><c> this</c><00:18:40.920><c> is</c>

00:18:41.030 --> 00:18:41.040 align:start position:0%
what it says. All right, then this is
 

00:18:41.040 --> 00:18:43.590 align:start position:0%
what it says. All right, then this is
what<00:18:41.240><c> we</c><00:18:41.320><c> got</c><00:18:41.600><c> back.</c><00:18:42.200><c> As</c><00:18:42.560><c> of</c><00:18:42.880><c> this</c><00:18:43.240><c> day,</c>

00:18:43.590 --> 00:18:43.600 align:start position:0%
what we got back. As of this day,
 

00:18:43.600 --> 00:18:46.350 align:start position:0%
what we got back. As of this day,
ChatGPT<00:18:44.400><c> plan</c><00:18:45.040><c> is</c><00:18:45.040><c> that</c><00:18:45.320><c> include</c><00:18:45.720><c> Codex,</c>

00:18:46.350 --> 00:18:46.360 align:start position:0%
ChatGPT plan is that include Codex,
 

00:18:46.360 --> 00:18:48.310 align:start position:0%
ChatGPT plan is that include Codex,
okay?<00:18:46.640><c> So</c><00:18:46.800><c> this</c><00:18:47.000><c> is</c><00:18:47.120><c> the</c><00:18:47.240><c> practical</c><00:18:47.840><c> read.</c>

00:18:48.310 --> 00:18:48.320 align:start position:0%
okay? So this is the practical read.
 

00:18:48.320 --> 00:18:51.470 align:start position:0%
okay? So this is the practical read.
Free,<00:18:48.880><c> try</c><00:18:49.200><c> Codex</c><00:18:49.800><c> on</c><00:18:50.040><c> quick</c><00:18:50.400><c> tasks.</c><00:18:51.040><c> Go</c>

00:18:51.470 --> 00:18:51.480 align:start position:0%
Free, try Codex on quick tasks. Go
 

00:18:51.480 --> 00:18:54.150 align:start position:0%
Free, try Codex on quick tasks. Go
lightweight<00:18:52.200><c> coding</c><00:18:52.560><c> tasks.</c><00:18:53.120><c> Plus</c><00:18:53.680><c> a</c><00:18:53.840><c> few</c>

00:18:54.150 --> 00:18:54.160 align:start position:0%
lightweight coding tasks. Plus a few
 

00:18:54.160 --> 00:18:56.670 align:start position:0%
lightweight coding tasks. Plus a few
focus<00:18:54.640><c> coding</c><00:18:55.000><c> sessions</c><00:18:55.480><c> each</c><00:18:55.760><c> week,</c><00:18:56.360><c> okay?</c>

00:18:56.670 --> 00:18:56.680 align:start position:0%
focus coding sessions each week, okay?
 

00:18:56.680 --> 00:18:59.190 align:start position:0%
focus coding sessions each week, okay?
And<00:18:56.800><c> this</c><00:18:56.960><c> is</c><00:18:57.080><c> exactly</c><00:18:57.600><c> what</c><00:18:58.000><c> I</c><00:18:58.120><c> just</c><00:18:58.360><c> told</c><00:18:58.600><c> you</c>

00:18:59.190 --> 00:18:59.200 align:start position:0%
And this is exactly what I just told you
 

00:18:59.200 --> 00:19:00.870 align:start position:0%
And this is exactly what I just told you
from<00:18:59.400><c> that</c><00:18:59.600><c> official</c><00:19:00.040><c> page.</c><00:19:00.400><c> And</c><00:19:00.520><c> so</c><00:19:00.640><c> if</c><00:19:00.760><c> you</c>

00:19:00.870 --> 00:19:00.880 align:start position:0%
from that official page. And so if you
 

00:19:00.880 --> 00:19:03.350 align:start position:0%
from that official page. And so if you
scroll<00:19:01.200><c> down,</c><00:19:01.480><c> you</c><00:19:01.560><c> can</c><00:19:01.720><c> see</c><00:19:01.880><c> how</c><00:19:02.160><c> Codex</c><00:19:02.760><c> usage</c>

00:19:03.350 --> 00:19:03.360 align:start position:0%
scroll down, you can see how Codex usage
 

00:19:03.360 --> 00:19:05.030 align:start position:0%
scroll down, you can see how Codex usage
and<00:19:03.480><c> credits</c><00:19:03.960><c> work.</c><00:19:04.240><c> You</c><00:19:04.320><c> can</c><00:19:04.480><c> learn</c><00:19:04.760><c> you</c><00:19:04.880><c> can</c>

00:19:05.030 --> 00:19:05.040 align:start position:0%
and credits work. You can learn you can
 

00:19:05.040 --> 00:19:07.950 align:start position:0%
and credits work. You can learn you can
read<00:19:05.320><c> this.</c><00:19:05.800><c> Best</c><00:19:06.320><c> fit</c><00:19:06.600><c> for</c><00:19:06.840><c> your</c><00:19:07.200><c> use</c><00:19:07.600><c> case,</c>

00:19:07.950 --> 00:19:07.960 align:start position:0%
read this. Best fit for your use case,
 

00:19:07.960 --> 00:19:09.750 align:start position:0%
read this. Best fit for your use case,
okay?<00:19:08.200><c> For</c><00:19:08.360><c> learning</c><00:19:08.680><c> Codex</c><00:19:09.240><c> and</c><00:19:09.400><c> building</c>

00:19:09.750 --> 00:19:09.760 align:start position:0%
okay? For learning Codex and building
 

00:19:09.760 --> 00:19:12.870 align:start position:0%
okay? For learning Codex and building
small<00:19:10.160><c> to</c><00:19:10.320><c> medium</c><00:19:10.680><c> apps,</c><00:19:11.200><c> ChatGPT</c><00:19:12.000><c> plus</c><00:19:12.600><c> is</c>

00:19:12.870 --> 00:19:12.880 align:start position:0%
small to medium apps, ChatGPT plus is
 

00:19:12.880 --> 00:19:14.750 align:start position:0%
small to medium apps, ChatGPT plus is
the<00:19:13.000><c> sensible</c><00:19:13.640><c> default.</c><00:19:14.160><c> If</c><00:19:14.280><c> your</c><00:19:14.440><c> current</c>

00:19:14.750 --> 00:19:14.760 align:start position:0%
the sensible default. If your current
 

00:19:14.760 --> 00:19:17.390 align:start position:0%
the sensible default. If your current
plan<00:19:15.400><c> is</c><00:19:15.600><c> Plus,</c><00:19:16.040><c> I</c><00:19:16.160><c> would</c><00:19:16.360><c> not</c><00:19:16.640><c> upgrade</c><00:19:17.080><c> until</c>

00:19:17.390 --> 00:19:17.400 align:start position:0%
plan is Plus, I would not upgrade until
 

00:19:17.400 --> 00:19:19.230 align:start position:0%
plan is Plus, I would not upgrade until
you<00:19:17.520><c> actually</c><00:19:17.920><c> hit</c><00:19:18.080><c> Codex</c><00:19:18.480><c> limits</c><00:19:18.840><c> often</c>

00:19:19.230 --> 00:19:19.240 align:start position:0%
you actually hit Codex limits often
 

00:19:19.240 --> 00:19:20.990 align:start position:0%
you actually hit Codex limits often
enough<00:19:19.520><c> that</c><00:19:19.600><c> the</c><00:19:19.720><c> friction</c><00:19:20.240><c> matters.</c><00:19:20.760><c> Okay,</c>

00:19:20.990 --> 00:19:21.000 align:start position:0%
enough that the friction matters. Okay,
 

00:19:21.000 --> 00:19:23.190 align:start position:0%
enough that the friction matters. Okay,
when<00:19:21.320><c> heavier</c><00:19:21.800><c> or</c><00:19:21.960><c> business</c><00:19:22.440><c> plans</c><00:19:22.880><c> make</c>

00:19:23.190 --> 00:19:23.200 align:start position:0%
when heavier or business plans make
 

00:19:23.200 --> 00:19:25.710 align:start position:0%
when heavier or business plans make
sense,<00:19:23.720><c> what</c><00:19:24.000><c> to</c><00:19:24.120><c> verify</c><00:19:24.720><c> live</c><00:19:25.320><c> before</c>

00:19:25.710 --> 00:19:25.720 align:start position:0%
sense, what to verify live before
 

00:19:25.720 --> 00:19:28.230 align:start position:0%
sense, what to verify live before
deciding?<00:19:26.640><c> And</c><00:19:26.800><c> so,</c><00:19:27.000><c> a</c><00:19:27.080><c> sensible</c><00:19:27.680><c> thing</c><00:19:27.920><c> to</c><00:19:28.040><c> do</c>

00:19:28.230 --> 00:19:28.240 align:start position:0%
deciding? And so, a sensible thing to do
 

00:19:28.240 --> 00:19:31.070 align:start position:0%
deciding? And so, a sensible thing to do
would<00:19:28.400><c> be</c><00:19:28.520><c> to</c><00:19:28.680><c> try</c><00:19:29.080><c> Codex</c><00:19:29.640><c> Plus</c><00:19:30.400><c> and</c><00:19:30.640><c> see</c><00:19:30.960><c> if</c>

00:19:31.070 --> 00:19:31.080 align:start position:0%
would be to try Codex Plus and see if
 

00:19:31.080 --> 00:19:32.830 align:start position:0%
would be to try Codex Plus and see if
that's<00:19:31.360><c> enough</c><00:19:31.720><c> for</c><00:19:31.840><c> your</c><00:19:32.000><c> specific</c><00:19:32.600><c> use</c>

00:19:32.830 --> 00:19:32.840 align:start position:0%
that's enough for your specific use
 

00:19:32.840 --> 00:19:35.190 align:start position:0%
that's enough for your specific use
case.<00:19:33.080><c> If</c><00:19:33.200><c> you're</c><00:19:33.360><c> not</c><00:19:33.880><c> a</c><00:19:34.000><c> heavy</c><00:19:34.320><c> Codex</c><00:19:34.800><c> user,</c>

00:19:35.190 --> 00:19:35.200 align:start position:0%
case. If you're not a heavy Codex user,
 

00:19:35.200 --> 00:19:36.910 align:start position:0%
case. If you're not a heavy Codex user,
if<00:19:35.360><c> you</c><00:19:35.440><c> just</c><00:19:35.640><c> want</c><00:19:35.800><c> to</c><00:19:35.840><c> experiment,</c><00:19:36.720><c> it</c>

00:19:36.910 --> 00:19:36.920 align:start position:0%
if you just want to experiment, it
 

00:19:36.920 --> 00:19:38.830 align:start position:0%
if you just want to experiment, it
should<00:19:37.080><c> be</c><00:19:37.200><c> more</c><00:19:37.560><c> than</c><00:19:37.800><c> enough.</c><00:19:38.400><c> And</c><00:19:38.520><c> then</c><00:19:38.760><c> you</c>

00:19:38.830 --> 00:19:38.840 align:start position:0%
should be more than enough. And then you
 

00:19:38.840 --> 00:19:40.590 align:start position:0%
should be more than enough. And then you
can<00:19:39.000><c> decide</c><00:19:39.600><c> whether</c><00:19:39.800><c> you</c><00:19:39.920><c> want</c><00:19:40.040><c> to</c><00:19:40.120><c> upgrade</c>

00:19:40.590 --> 00:19:40.600 align:start position:0%
can decide whether you want to upgrade
 

00:19:40.600 --> 00:19:45.470 align:start position:0%
can decide whether you want to upgrade
to<00:19:40.680><c> the</c><00:19:40.800><c> higher</c><00:19:41.240><c> tier</c><00:19:41.640><c> plans.</c>

00:19:45.470 --> 00:19:45.480 align:start position:0%
 
 

00:19:45.480 --> 00:19:46.950 align:start position:0%
 
Now,<00:19:45.640><c> before</c><00:19:45.960><c> we</c><00:19:46.080><c> move</c><00:19:46.360><c> into</c><00:19:46.560><c> the</c><00:19:46.720><c> app</c>

00:19:46.950 --> 00:19:46.960 align:start position:0%
Now, before we move into the app
 

00:19:46.960 --> 00:19:48.550 align:start position:0%
Now, before we move into the app
building<00:19:47.400><c> workflow,</c><00:19:47.880><c> I</c><00:19:47.960><c> want</c><00:19:48.160><c> to</c><00:19:48.240><c> take</c><00:19:48.480><c> a</c>

00:19:48.550 --> 00:19:48.560 align:start position:0%
building workflow, I want to take a
 

00:19:48.560 --> 00:19:50.190 align:start position:0%
building workflow, I want to take a
moment<00:19:49.000><c> to</c><00:19:49.080><c> talk</c><00:19:49.280><c> about</c><00:19:49.560><c> some</c><00:19:49.720><c> of</c><00:19:49.840><c> the</c><00:19:49.920><c> things</c>

00:19:50.190 --> 00:19:50.200 align:start position:0%
moment to talk about some of the things
 

00:19:50.200 --> 00:19:52.510 align:start position:0%
moment to talk about some of the things
Codex<00:19:50.680><c> does</c><00:19:51.040><c> that</c><00:19:51.200><c> can</c><00:19:51.400><c> greatly</c><00:19:52.040><c> increase</c>

00:19:52.510 --> 00:19:52.520 align:start position:0%
Codex does that can greatly increase
 

00:19:52.520 --> 00:19:54.710 align:start position:0%
Codex does that can greatly increase
your<00:19:52.720><c> productivity.</c><00:19:53.680><c> These</c><00:19:53.960><c> are</c><00:19:54.080><c> features</c><00:19:54.640><c> I</c>

00:19:54.710 --> 00:19:54.720 align:start position:0%
your productivity. These are features I
 

00:19:54.720 --> 00:19:56.670 align:start position:0%
your productivity. These are features I
use<00:19:55.040><c> all</c><00:19:55.320><c> the</c><00:19:55.480><c> time</c><00:19:56.000><c> across</c><00:19:56.320><c> different</c>

00:19:56.670 --> 00:19:56.680 align:start position:0%
use all the time across different
 

00:19:56.680 --> 00:20:01.350 align:start position:0%
use all the time across different
projects.<00:19:57.920><c> Skills,</c><00:19:58.960><c> plugins,</c><00:20:00.000><c> automations,</c>

00:20:01.350 --> 00:20:01.360 align:start position:0%
projects. Skills, plugins, automations,
 

00:20:01.360 --> 00:20:04.470 align:start position:0%
projects. Skills, plugins, automations,
and<00:20:01.600><c> MCP</c><00:20:02.840><c> along</c><00:20:03.200><c> with</c><00:20:03.400><c> its</c><00:20:03.720><c> tools</c><00:20:04.280><c> and</c>

00:20:04.470 --> 00:20:04.480 align:start position:0%
and MCP along with its tools and
 

00:20:04.480 --> 00:20:06.550 align:start position:0%
and MCP along with its tools and
connectors.<00:20:05.360><c> The</c><00:20:05.480><c> best</c><00:20:05.760><c> way</c><00:20:05.880><c> to</c><00:20:06.040><c> think</c><00:20:06.240><c> about</c>

00:20:06.550 --> 00:20:06.560 align:start position:0%
connectors. The best way to think about
 

00:20:06.560 --> 00:20:10.150 align:start position:0%
connectors. The best way to think about
all<00:20:06.720><c> that</c><00:20:07.120><c> is</c><00:20:07.880><c> skills</c><00:20:08.800><c> tell</c><00:20:09.120><c> Codex</c><00:20:09.640><c> how</c><00:20:09.800><c> to</c><00:20:10.000><c> do</c>

00:20:10.150 --> 00:20:10.160 align:start position:0%
all that is skills tell Codex how to do
 

00:20:10.160 --> 00:20:11.590 align:start position:0%
all that is skills tell Codex how to do
a<00:20:10.280><c> workflow,</c>

00:20:11.590 --> 00:20:11.600 align:start position:0%
a workflow,
 

00:20:11.600 --> 00:20:14.550 align:start position:0%
a workflow,
plugins<00:20:12.400><c> package</c><00:20:12.920><c> capabilities,</c>

00:20:14.550 --> 00:20:14.560 align:start position:0%
plugins package capabilities,
 

00:20:14.560 --> 00:20:17.830 align:start position:0%
plugins package capabilities,
automations<00:20:15.520><c> let</c><00:20:15.880><c> work</c><00:20:16.200><c> happen</c><00:20:16.680><c> later,</c>

00:20:17.830 --> 00:20:17.840 align:start position:0%
automations let work happen later,
 

00:20:17.840 --> 00:20:20.910 align:start position:0%
automations let work happen later,
and<00:20:18.080><c> MCP</c><00:20:18.720><c> tools</c><00:20:19.080><c> and</c><00:20:19.240><c> connectors</c><00:20:20.120><c> give</c><00:20:20.400><c> Codex</c>

00:20:20.910 --> 00:20:20.920 align:start position:0%
and MCP tools and connectors give Codex
 

00:20:20.920 --> 00:20:24.270 align:start position:0%
and MCP tools and connectors give Codex
controlled<00:20:21.640><c> access</c><00:20:22.680><c> to</c><00:20:22.880><c> outside</c><00:20:23.480><c> systems.</c>

00:20:24.270 --> 00:20:24.280 align:start position:0%
controlled access to outside systems.
 

00:20:24.280 --> 00:20:26.750 align:start position:0%
controlled access to outside systems.
Once<00:20:24.640><c> those</c><00:20:24.960><c> pieces</c><00:20:25.400><c> make</c><00:20:25.680><c> sense,</c>

00:20:26.750 --> 00:20:26.760 align:start position:0%
Once those pieces make sense,
 

00:20:26.760 --> 00:20:29.350 align:start position:0%
Once those pieces make sense,
Codex<00:20:27.200><c> feels</c><00:20:27.520><c> less</c><00:20:27.760><c> like</c><00:20:27.920><c> a</c><00:20:28.000><c> code</c><00:20:28.360><c> editor</c><00:20:29.200><c> and</c>

00:20:29.350 --> 00:20:29.360 align:start position:0%
Codex feels less like a code editor and
 

00:20:29.360 --> 00:20:32.190 align:start position:0%
Codex feels less like a code editor and
more<00:20:29.600><c> like</c><00:20:29.880><c> a</c><00:20:30.000><c> project</c><00:20:30.760><c> agent.</c><00:20:31.400><c> First,</c><00:20:31.880><c> let's</c>

00:20:32.190 --> 00:20:32.200 align:start position:0%
more like a project agent. First, let's
 

00:20:32.200 --> 00:20:34.230 align:start position:0%
more like a project agent. First, let's
talk<00:20:32.400><c> about</c><00:20:32.640><c> one</c><00:20:32.840><c> of</c><00:20:32.920><c> my</c><00:20:33.080><c> favorite</c><00:20:33.680><c> features</c>

00:20:34.230 --> 00:20:34.240 align:start position:0%
talk about one of my favorite features
 

00:20:34.240 --> 00:20:36.150 align:start position:0%
talk about one of my favorite features
that<00:20:34.400><c> I</c><00:20:34.480><c> use</c><00:20:34.720><c> pretty</c><00:20:34.920><c> much</c><00:20:35.160><c> all</c><00:20:35.360><c> the</c><00:20:35.480><c> time,</c>

00:20:36.150 --> 00:20:36.160 align:start position:0%
that I use pretty much all the time,
 

00:20:36.160 --> 00:20:39.830 align:start position:0%
that I use pretty much all the time,
skills.<00:20:36.960><c> Skills</c><00:20:37.480><c> are</c><00:20:37.640><c> reusable</c><00:20:38.480><c> instructions</c>

00:20:39.830 --> 00:20:39.840 align:start position:0%
skills. Skills are reusable instructions
 

00:20:39.840 --> 00:20:42.950 align:start position:0%
skills. Skills are reusable instructions
for<00:20:40.040><c> how</c><00:20:40.320><c> Codex</c><00:20:41.040><c> should</c><00:20:41.400><c> do</c><00:20:41.680><c> a</c><00:20:41.840><c> workflow.</c>

00:20:42.950 --> 00:20:42.960 align:start position:0%
for how Codex should do a workflow.
 

00:20:42.960 --> 00:20:44.630 align:start position:0%
for how Codex should do a workflow.
They're<00:20:43.160><c> not</c><00:20:43.560><c> external</c><00:20:44.120><c> tools</c><00:20:44.480><c> by</c>

00:20:44.630 --> 00:20:44.640 align:start position:0%
They're not external tools by
 

00:20:44.640 --> 00:20:47.190 align:start position:0%
They're not external tools by
themselves.<00:20:45.960><c> They're</c><00:20:46.160><c> more</c><00:20:46.440><c> like</c><00:20:46.760><c> local</c>

00:20:47.190 --> 00:20:47.200 align:start position:0%
themselves. They're more like local
 

00:20:47.200 --> 00:20:50.510 align:start position:0%
themselves. They're more like local
playbooks<00:20:48.200><c> that</c><00:20:48.440><c> tell</c><00:20:48.760><c> Codex</c><00:20:49.240><c> the</c><00:20:49.360><c> style,</c>

00:20:50.510 --> 00:20:50.520 align:start position:0%
playbooks that tell Codex the style,
 

00:20:50.520 --> 00:20:54.030 align:start position:0%
playbooks that tell Codex the style,
process,<00:20:51.560><c> output</c><00:20:52.080><c> format,</c><00:20:53.080><c> and</c><00:20:53.240><c> validation</c>

00:20:54.030 --> 00:20:54.040 align:start position:0%
process, output format, and validation
 

00:20:54.040 --> 00:20:56.950 align:start position:0%
process, output format, and validation
steps<00:20:54.680><c> for</c><00:20:55.040><c> a</c><00:20:55.160><c> specific</c><00:20:55.960><c> kind</c><00:20:56.320><c> of</c><00:20:56.480><c> work.</c><00:20:56.840><c> For</c>

00:20:56.950 --> 00:20:56.960 align:start position:0%
steps for a specific kind of work. For
 

00:20:56.960 --> 00:20:59.390 align:start position:0%
steps for a specific kind of work. For
example,<00:20:57.480><c> this</c><00:20:57.760><c> course</c><00:20:58.280><c> uses</c><00:20:58.680><c> skills</c><00:20:59.160><c> for</c>

00:20:59.390 --> 00:20:59.400 align:start position:0%
example, this course uses skills for
 

00:20:59.400 --> 00:21:02.790 align:start position:0%
example, this course uses skills for
explainers,<00:21:00.800><c> Notion</c><00:21:01.400><c> editing,</c><00:21:02.240><c> video</c>

00:21:02.790 --> 00:21:02.800 align:start position:0%
explainers, Notion editing, video
 

00:21:02.800 --> 00:21:05.030 align:start position:0%
explainers, Notion editing, video
timelines,<00:21:03.760><c> and</c><00:21:04.000><c> other</c><00:21:04.400><c> repeatable</c>

00:21:05.030 --> 00:21:05.040 align:start position:0%
timelines, and other repeatable
 

00:21:05.040 --> 00:21:06.790 align:start position:0%
timelines, and other repeatable
production<00:21:05.600><c> tasks.</c>

00:21:06.790 --> 00:21:06.800 align:start position:0%
production tasks.
 

00:21:06.800 --> 00:21:08.950 align:start position:0%
production tasks.
Instead<00:21:07.200><c> of</c><00:21:07.320><c> explaining</c><00:21:08.000><c> the</c><00:21:08.120><c> same</c><00:21:08.560><c> rules</c>

00:21:08.950 --> 00:21:08.960 align:start position:0%
Instead of explaining the same rules
 

00:21:08.960 --> 00:21:11.990 align:start position:0%
Instead of explaining the same rules
every<00:21:09.320><c> time,</c><00:21:10.240><c> I</c><00:21:10.360><c> can</c><00:21:10.600><c> point</c><00:21:11.000><c> Codex</c><00:21:11.720><c> to</c><00:21:11.840><c> the</c>

00:21:11.990 --> 00:21:12.000 align:start position:0%
every time, I can point Codex to the
 

00:21:12.000 --> 00:21:15.390 align:start position:0%
every time, I can point Codex to the
skill<00:21:12.880><c> and</c><00:21:13.080><c> it</c><00:21:13.240><c> knows</c><00:21:13.680><c> the</c><00:21:13.800><c> house</c><00:21:14.200><c> style,</c><00:21:15.240><c> the</c>

00:21:15.390 --> 00:21:15.400 align:start position:0%
skill and it knows the house style, the
 

00:21:15.400 --> 00:21:18.550 align:start position:0%
skill and it knows the house style, the
workflow,<00:21:16.320><c> and</c><00:21:16.520><c> the</c><00:21:16.600><c> mistakes</c><00:21:17.240><c> to</c><00:21:17.360><c> avoid.</c>

00:21:18.550 --> 00:21:18.560 align:start position:0%
workflow, and the mistakes to avoid.
 

00:21:18.560 --> 00:21:20.990 align:start position:0%
workflow, and the mistakes to avoid.
The<00:21:18.720><c> rule</c><00:21:18.920><c> is</c><00:21:19.120><c> simple.</c><00:21:20.000><c> Anything</c><00:21:20.520><c> that</c><00:21:20.720><c> gets</c>

00:21:20.990 --> 00:21:21.000 align:start position:0%
The rule is simple. Anything that gets
 

00:21:21.000 --> 00:21:23.910 align:start position:0%
The rule is simple. Anything that gets
used<00:21:21.440><c> over</c><00:21:21.800><c> and</c><00:21:22.000><c> over</c><00:21:22.280><c> again</c><00:21:23.080><c> becomes</c><00:21:23.800><c> a</c>

00:21:23.910 --> 00:21:23.920 align:start position:0%
used over and over again becomes a
 

00:21:23.920 --> 00:21:26.310 align:start position:0%
used over and over again becomes a
skill.<00:21:24.600><c> That</c><00:21:24.960><c> matters</c><00:21:25.520><c> because</c><00:21:25.840><c> a</c><00:21:25.920><c> lot</c><00:21:26.200><c> of</c>

00:21:26.310 --> 00:21:26.320 align:start position:0%
skill. That matters because a lot of
 

00:21:26.320 --> 00:21:28.550 align:start position:0%
skill. That matters because a lot of
real<00:21:26.560><c> work</c><00:21:26.920><c> is</c><00:21:27.160><c> not</c><00:21:27.520><c> just</c><00:21:27.800><c> about</c><00:21:28.120><c> getting</c><00:21:28.400><c> an</c>

00:21:28.550 --> 00:21:28.560 align:start position:0%
real work is not just about getting an
 

00:21:28.560 --> 00:21:30.870 align:start position:0%
real work is not just about getting an
answer.<00:21:29.280><c> It's</c><00:21:29.520><c> about</c><00:21:29.840><c> getting</c><00:21:30.160><c> an</c><00:21:30.320><c> answer</c><00:21:30.760><c> in</c>

00:21:30.870 --> 00:21:30.880 align:start position:0%
answer. It's about getting an answer in
 

00:21:30.880 --> 00:21:33.310 align:start position:0%
answer. It's about getting an answer in
the<00:21:31.000><c> right</c><00:21:31.320><c> format,</c><00:21:32.320><c> following</c><00:21:32.880><c> the</c><00:21:33.000><c> right</c>

00:21:33.310 --> 00:21:33.320 align:start position:0%
the right format, following the right
 

00:21:33.320 --> 00:21:35.990 align:start position:0%
the right format, following the right
process,<00:21:34.560><c> and</c><00:21:34.720><c> producing</c><00:21:35.480><c> something</c>

00:21:35.990 --> 00:21:36.000 align:start position:0%
process, and producing something
 

00:21:36.000 --> 00:21:39.150 align:start position:0%
process, and producing something
consistent<00:21:37.360><c> with</c><00:21:37.520><c> the</c><00:21:37.680><c> rest</c><00:21:38.320><c> of</c><00:21:38.440><c> the</c><00:21:38.560><c> project.</c>

00:21:39.150 --> 00:21:39.160 align:start position:0%
consistent with the rest of the project.
 

00:21:39.160 --> 00:21:41.470 align:start position:0%
consistent with the rest of the project.
All<00:21:39.240><c> right,</c><00:21:39.440><c> so</c><00:21:39.560><c> here</c><00:21:40.000><c> I</c><00:21:40.120><c> am</c><00:21:40.400><c> in</c><00:21:40.560><c> my</c><00:21:40.840><c> Codex</c>

00:21:41.470 --> 00:21:41.480 align:start position:0%
All right, so here I am in my Codex
 

00:21:41.480 --> 00:21:43.390 align:start position:0%
All right, so here I am in my Codex
instance<00:21:42.040><c> here,</c><00:21:42.400><c> and</c><00:21:42.560><c> I</c><00:21:42.640><c> want</c><00:21:42.840><c> to</c><00:21:42.920><c> show</c><00:21:43.240><c> you</c>

00:21:43.390 --> 00:21:43.400 align:start position:0%
instance here, and I want to show you
 

00:21:43.400 --> 00:21:45.390 align:start position:0%
instance here, and I want to show you
some<00:21:43.640><c> things</c><00:21:43.920><c> that</c><00:21:44.080><c> you</c><00:21:44.200><c> can</c><00:21:44.360><c> do</c><00:21:44.480><c> with</c><00:21:44.680><c> skills.</c>

00:21:45.390 --> 00:21:45.400 align:start position:0%
some things that you can do with skills.
 

00:21:45.400 --> 00:21:47.590 align:start position:0%
some things that you can do with skills.
So,<00:21:45.560><c> I</c><00:21:45.640><c> have</c><00:21:45.880><c> here</c><00:21:46.120><c> a</c><00:21:46.240><c> conversation</c><00:21:47.240><c> for</c><00:21:47.440><c> an</c>

00:21:47.590 --> 00:21:47.600 align:start position:0%
So, I have here a conversation for an
 

00:21:47.600 --> 00:21:49.190 align:start position:0%
So, I have here a conversation for an
app<00:21:47.760><c> that</c><00:21:47.880><c> I</c><00:21:47.960><c> was</c><00:21:48.160><c> building.</c>

00:21:49.190 --> 00:21:49.200 align:start position:0%
app that I was building.
 

00:21:49.200 --> 00:21:52.230 align:start position:0%
app that I was building.
And<00:21:49.680><c> if</c><00:21:49.960><c> I</c><00:21:50.120><c> press</c><00:21:50.600><c> the</c><00:21:51.000><c> the</c><00:21:51.320><c> forward</c><00:21:51.760><c> slash,</c>

00:21:52.230 --> 00:21:52.240 align:start position:0%
And if I press the the forward slash,
 

00:21:52.240 --> 00:21:54.190 align:start position:0%
And if I press the the forward slash,
you<00:21:52.440><c> can</c><00:21:52.680><c> see</c><00:21:52.880><c> that</c><00:21:53.080><c> I</c><00:21:53.160><c> have</c><00:21:53.400><c> many</c><00:21:53.720><c> options</c>

00:21:54.190 --> 00:21:54.200 align:start position:0%
you can see that I have many options
 

00:21:54.200 --> 00:21:56.550 align:start position:0%
you can see that I have many options
here,<00:21:54.440><c> right?</c><00:21:54.680><c> I</c><00:21:54.760><c> can</c><00:21:54.880><c> do</c><00:21:55.040><c> many,</c><00:21:55.360><c> many</c><00:21:55.640><c> things.</c>

00:21:56.550 --> 00:21:56.560 align:start position:0%
here, right? I can do many, many things.
 

00:21:56.560 --> 00:21:58.470 align:start position:0%
here, right? I can do many, many things.
And<00:21:56.920><c> as</c><00:21:57.080><c> you</c><00:21:57.160><c> can</c><00:21:57.320><c> see</c><00:21:57.480><c> for</c><00:21:57.680><c> skills,</c><00:21:58.200><c> I</c><00:21:58.240><c> have</c>

00:21:58.470 --> 00:21:58.480 align:start position:0%
And as you can see for skills, I have
 

00:21:58.480 --> 00:22:01.030 align:start position:0%
And as you can see for skills, I have
lots<00:21:59.160><c> and</c><00:21:59.280><c> lots</c><00:21:59.560><c> of</c><00:21:59.680><c> skills.</c><00:22:00.080><c> I</c><00:22:00.120><c> have</c><00:22:00.360><c> tons</c><00:22:00.880><c> and</c>

00:22:01.030 --> 00:22:01.040 align:start position:0%
lots and lots of skills. I have tons and
 

00:22:01.040 --> 00:22:03.750 align:start position:0%
lots and lots of skills. I have tons and
tons<00:22:01.360><c> of</c><00:22:01.480><c> skills</c><00:22:01.880><c> over</c><00:22:02.040><c> there.</c><00:22:02.400><c> And</c><00:22:03.000><c> skills</c>

00:22:03.750 --> 00:22:03.760 align:start position:0%
tons of skills over there. And skills
 

00:22:03.760 --> 00:22:06.950 align:start position:0%
tons of skills over there. And skills
allow<00:22:04.320><c> me</c><00:22:05.040><c> to</c><00:22:05.120><c> package</c><00:22:05.920><c> a</c><00:22:06.040><c> repeatable</c>

00:22:06.950 --> 00:22:06.960 align:start position:0%
allow me to package a repeatable
 

00:22:06.960 --> 00:22:09.430 align:start position:0%
allow me to package a repeatable
process.<00:22:08.200><c> You</c><00:22:08.360><c> can</c><00:22:08.560><c> think</c><00:22:08.840><c> of</c><00:22:08.960><c> it</c><00:22:09.120><c> as</c><00:22:09.320><c> a</c>

00:22:09.430 --> 00:22:09.440 align:start position:0%
process. You can think of it as a
 

00:22:09.440 --> 00:22:11.470 align:start position:0%
process. You can think of it as a
function<00:22:10.240><c> that</c><00:22:10.440><c> does</c><00:22:10.680><c> something.</c><00:22:11.040><c> It</c><00:22:11.200><c> gets</c>

00:22:11.470 --> 00:22:11.480 align:start position:0%
function that does something. It gets
 

00:22:11.480 --> 00:22:14.150 align:start position:0%
function that does something. It gets
some<00:22:11.720><c> input</c><00:22:12.560><c> and</c><00:22:12.760><c> it</c><00:22:12.840><c> produces</c><00:22:13.400><c> an</c><00:22:13.560><c> output.</c>

00:22:14.150 --> 00:22:14.160 align:start position:0%
some input and it produces an output.
 

00:22:14.160 --> 00:22:16.110 align:start position:0%
some input and it produces an output.
And<00:22:14.320><c> the</c><00:22:14.400><c> goal</c><00:22:14.640><c> is</c><00:22:14.760><c> to</c><00:22:14.880><c> produce</c><00:22:15.320><c> consistent</c>

00:22:16.110 --> 00:22:16.120 align:start position:0%
And the goal is to produce consistent
 

00:22:16.120 --> 00:22:19.110 align:start position:0%
And the goal is to produce consistent
output<00:22:16.920><c> as</c><00:22:17.240><c> you've</c><00:22:17.400><c> done</c><00:22:17.640><c> before.</c><00:22:18.680><c> And</c><00:22:18.840><c> so,</c><00:22:19.000><c> as</c>

00:22:19.110 --> 00:22:19.120 align:start position:0%
output as you've done before. And so, as
 

00:22:19.120 --> 00:22:21.350 align:start position:0%
output as you've done before. And so, as
an<00:22:19.240><c> example,</c><00:22:19.760><c> let's</c><00:22:20.000><c> say</c><00:22:20.280><c> if</c><00:22:20.480><c> I'm</c><00:22:20.760><c> working</c><00:22:21.240><c> in</c>

00:22:21.350 --> 00:22:21.360 align:start position:0%
an example, let's say if I'm working in
 

00:22:21.360 --> 00:22:24.470 align:start position:0%
an example, let's say if I'm working in
this<00:22:21.560><c> convo</c><00:22:22.040><c> here,</c><00:22:22.320><c> right?</c><00:22:23.200><c> And</c><00:22:23.760><c> I</c><00:22:23.960><c> asked</c><00:22:24.360><c> the</c>

00:22:24.470 --> 00:22:24.480 align:start position:0%
this convo here, right? And I asked the
 

00:22:24.480 --> 00:22:26.470 align:start position:0%
this convo here, right? And I asked the
model<00:22:24.920><c> to</c><00:22:25.040><c> do</c><00:22:25.240><c> something</c><00:22:25.640><c> for</c><00:22:25.800><c> me.</c><00:22:25.920><c> So,</c><00:22:26.080><c> here</c><00:22:26.400><c> I</c>

00:22:26.470 --> 00:22:26.480 align:start position:0%
model to do something for me. So, here I
 

00:22:26.480 --> 00:22:28.510 align:start position:0%
model to do something for me. So, here I
have<00:22:26.800><c> I</c><00:22:26.880><c> want</c><00:22:27.080><c> to</c><00:22:27.120><c> build</c><00:22:27.360><c> a</c><00:22:27.440><c> very</c><00:22:27.840><c> simple</c><00:22:28.240><c> web</c>

00:22:28.510 --> 00:22:28.520 align:start position:0%
have I want to build a very simple web
 

00:22:28.520 --> 00:22:30.750 align:start position:0%
have I want to build a very simple web
app<00:22:28.800><c> that</c><00:22:29.000><c> arranges</c><00:22:29.600><c> items</c><00:22:30.000><c> as</c><00:22:30.160><c> a</c><00:22:30.280><c> Trello</c>

00:22:30.750 --> 00:22:30.760 align:start position:0%
app that arranges items as a Trello
 

00:22:30.760 --> 00:22:32.710 align:start position:0%
app that arranges items as a Trello
Kanban<00:22:31.320><c> board</c><00:22:31.600><c> style,</c><00:22:31.960><c> okay?</c><00:22:32.200><c> And</c><00:22:32.320><c> it</c><00:22:32.440><c> comes</c>

00:22:32.710 --> 00:22:32.720 align:start position:0%
Kanban board style, okay? And it comes
 

00:22:32.720 --> 00:22:35.150 align:start position:0%
Kanban board style, okay? And it comes
up<00:22:32.880><c> with</c><00:22:33.040><c> this.</c><00:22:33.840><c> Now,</c><00:22:34.120><c> right</c><00:22:34.520><c> here</c><00:22:35.000><c> can</c>

00:22:35.150 --> 00:22:35.160 align:start position:0%
up with this. Now, right here can
 

00:22:35.160 --> 00:22:37.270 align:start position:0%
up with this. Now, right here can
package<00:22:35.680><c> that</c><00:22:35.920><c> as</c><00:22:36.120><c> a</c><00:22:36.240><c> skill.</c><00:22:36.680><c> Now,</c><00:22:36.840><c> what</c><00:22:37.040><c> do</c><00:22:37.200><c> I</c>

00:22:37.270 --> 00:22:37.280 align:start position:0%
package that as a skill. Now, what do I
 

00:22:37.280 --> 00:22:39.750 align:start position:0%
package that as a skill. Now, what do I
want<00:22:37.480><c> to</c><00:22:37.560><c> package</c><00:22:38.000><c> as</c><00:22:38.120><c> a</c><00:22:38.200><c> skill?</c><00:22:39.120><c> Well,</c><00:22:39.440><c> I</c><00:22:39.560><c> want</c>

00:22:39.750 --> 00:22:39.760 align:start position:0%
want to package as a skill? Well, I want
 

00:22:39.760 --> 00:22:41.670 align:start position:0%
want to package as a skill? Well, I want
to<00:22:39.840><c> package,</c><00:22:40.400><c> for</c><00:22:40.520><c> instance,</c><00:22:40.880><c> maybe</c><00:22:41.240><c> creating</c>

00:22:41.670 --> 00:22:41.680 align:start position:0%
to package, for instance, maybe creating
 

00:22:41.680 --> 00:22:43.790 align:start position:0%
to package, for instance, maybe creating
the<00:22:41.760><c> architecture.</c><00:22:43.000><c> So,</c><00:22:43.320><c> I</c><00:22:43.440><c> can</c><00:22:43.600><c> say</c>

00:22:43.790 --> 00:22:43.800 align:start position:0%
the architecture. So, I can say
 

00:22:43.800 --> 00:22:47.510 align:start position:0%
the architecture. So, I can say
something<00:22:44.280><c> like</c><00:22:44.960><c> package</c><00:22:46.200><c> the</c><00:22:46.440><c> architecture</c>

00:22:47.510 --> 00:22:47.520 align:start position:0%
something like package the architecture
 

00:22:47.520 --> 00:22:50.990 align:start position:0%
something like package the architecture
step<00:22:48.520><c> as</c><00:22:48.920><c> a</c><00:22:49.040><c> skill,</c><00:22:50.000><c> and</c><00:22:50.200><c> then</c><00:22:50.360><c> I</c><00:22:50.480><c> just</c><00:22:50.720><c> give</c><00:22:50.880><c> it</c>

00:22:50.990 --> 00:22:51.000 align:start position:0%
step as a skill, and then I just give it
 

00:22:51.000 --> 00:22:54.670 align:start position:0%
step as a skill, and then I just give it
a<00:22:51.040><c> name</c><00:22:51.440><c> of</c><00:22:51.520><c> the</c><00:22:51.640><c> skill.</c><00:22:52.000><c> Sample</c><00:22:52.960><c> arch</c><00:22:53.640><c> stack.</c>

00:22:54.670 --> 00:22:54.680 align:start position:0%
a name of the skill. Sample arch stack.
 

00:22:54.680 --> 00:22:57.670 align:start position:0%
a name of the skill. Sample arch stack.
Okay?<00:22:55.600><c> And</c><00:22:55.760><c> that's</c><00:22:56.080><c> going</c><00:22:56.400><c> to</c><00:22:56.600><c> create</c><00:22:57.440><c> a</c>

00:22:57.670 --> 00:22:57.680 align:start position:0%
Okay? And that's going to create a
 

00:22:57.680 --> 00:23:01.310 align:start position:0%
Okay? And that's going to create a
repeatable<00:22:58.440><c> skill</c><00:22:59.320><c> that</c><00:22:59.600><c> will</c><00:22:59.800><c> allow</c><00:23:00.240><c> me</c><00:23:00.440><c> to</c>

00:23:01.310 --> 00:23:01.320 align:start position:0%
repeatable skill that will allow me to
 

00:23:01.320 --> 00:23:04.470 align:start position:0%
repeatable skill that will allow me to
generate<00:23:02.080><c> an</c><00:23:02.280><c> architecture</c><00:23:03.160><c> for</c><00:23:03.880><c> any</c><00:23:04.160><c> kind</c><00:23:04.360><c> of</c>

00:23:04.470 --> 00:23:04.480 align:start position:0%
generate an architecture for any kind of
 

00:23:04.480 --> 00:23:06.190 align:start position:0%
generate an architecture for any kind of
project<00:23:05.040><c> that</c><00:23:05.160><c> I</c><00:23:05.240><c> may</c><00:23:05.480><c> be</c><00:23:05.600><c> working</c><00:23:06.000><c> in</c><00:23:06.120><c> the</c>

00:23:06.190 --> 00:23:06.200 align:start position:0%
project that I may be working in the
 

00:23:06.200 --> 00:23:07.630 align:start position:0%
project that I may be working in the
future.<00:23:06.720><c> So,</c><00:23:06.760><c> I'm</c><00:23:06.840><c> going</c><00:23:06.960><c> to</c><00:23:07.040><c> go</c><00:23:07.160><c> ahead</c><00:23:07.440><c> and</c>

00:23:07.630 --> 00:23:07.640 align:start position:0%
future. So, I'm going to go ahead and
 

00:23:07.640 --> 00:23:10.110 align:start position:0%
future. So, I'm going to go ahead and
jump<00:23:07.920><c> into</c><00:23:08.160><c> the</c><00:23:08.280><c> plan</c><00:23:08.680><c> mode</c><00:23:09.320><c> in</c><00:23:09.520><c> case</c><00:23:10.000><c> the</c>

00:23:10.110 --> 00:23:10.120 align:start position:0%
jump into the plan mode in case the
 

00:23:10.120 --> 00:23:12.470 align:start position:0%
jump into the plan mode in case the
model<00:23:10.760><c> wants</c><00:23:11.160><c> to</c><00:23:11.360><c> confirm</c><00:23:11.880><c> something</c><00:23:12.320><c> or</c>

00:23:12.470 --> 00:23:12.480 align:start position:0%
model wants to confirm something or
 

00:23:12.480 --> 00:23:14.550 align:start position:0%
model wants to confirm something or
clarify<00:23:13.080><c> something.</c><00:23:13.920><c> And</c><00:23:14.120><c> I'm</c><00:23:14.240><c> going</c><00:23:14.360><c> to</c><00:23:14.440><c> go</c>

00:23:14.550 --> 00:23:14.560 align:start position:0%
clarify something. And I'm going to go
 

00:23:14.560 --> 00:23:16.470 align:start position:0%
clarify something. And I'm going to go
ahead<00:23:14.840><c> and</c><00:23:14.960><c> execute</c><00:23:15.520><c> this.</c><00:23:15.800><c> And</c><00:23:16.120><c> let's</c><00:23:16.360><c> see</c>

00:23:16.470 --> 00:23:16.480 align:start position:0%
ahead and execute this. And let's see
 

00:23:16.480 --> 00:23:18.870 align:start position:0%
ahead and execute this. And let's see
what<00:23:16.640><c> happens.</c><00:23:17.280><c> Now,</c><00:23:17.520><c> it</c><00:23:17.680><c> came</c><00:23:17.920><c> back</c><00:23:18.280><c> to</c><00:23:18.440><c> me</c>

00:23:18.870 --> 00:23:18.880 align:start position:0%
what happens. Now, it came back to me
 

00:23:18.880 --> 00:23:22.310 align:start position:0%
what happens. Now, it came back to me
and<00:23:19.360><c> it</c><00:23:19.560><c> wants</c><00:23:19.920><c> me</c><00:23:20.200><c> to</c><00:23:20.400><c> answer</c><00:23:20.920><c> a</c><00:23:21.000><c> question.</c>

00:23:22.310 --> 00:23:22.320 align:start position:0%
and it wants me to answer a question.
 

00:23:22.320 --> 00:23:25.110 align:start position:0%
and it wants me to answer a question.
Should<00:23:22.680><c> the</c><00:23:22.800><c> sample</c><00:23:23.440><c> arch</c><00:23:23.760><c> stack</c><00:23:24.200><c> package</c>

00:23:25.110 --> 00:23:25.120 align:start position:0%
Should the sample arch stack package
 

00:23:25.120 --> 00:23:27.550 align:start position:0%
Should the sample arch stack package
this<00:23:25.400><c> as</c><00:23:25.600><c> a</c><00:23:25.720><c> general</c><00:23:26.440><c> architecture</c><00:23:27.120><c> planning</c>

00:23:27.550 --> 00:23:27.560 align:start position:0%
this as a general architecture planning
 

00:23:27.560 --> 00:23:30.190 align:start position:0%
this as a general architecture planning
skill<00:23:27.880><c> or</c><00:23:28.040><c> specifically</c><00:23:28.840><c> as</c><00:23:29.040><c> the</c><00:23:29.160><c> Kanban</c>

00:23:30.190 --> 00:23:30.200 align:start position:0%
skill or specifically as the Kanban
 

00:23:30.200 --> 00:23:32.870 align:start position:0%
skill or specifically as the Kanban
Trello<00:23:30.680><c> app</c><00:23:30.960><c> architecture,</c><00:23:31.680><c> right?</c><00:23:32.440><c> So,</c><00:23:32.760><c> we</c>

00:23:32.870 --> 00:23:32.880 align:start position:0%
Trello app architecture, right? So, we
 

00:23:32.880 --> 00:23:34.550 align:start position:0%
Trello app architecture, right? So, we
want<00:23:33.080><c> it</c><00:23:33.200><c> to</c><00:23:33.280><c> be</c><00:23:33.440><c> a</c><00:23:33.520><c> general</c><00:23:34.280><c> app</c>

00:23:34.550 --> 00:23:34.560 align:start position:0%
want it to be a general app
 

00:23:34.560 --> 00:23:36.030 align:start position:0%
want it to be a general app
architecture.<00:23:35.280><c> So,</c><00:23:35.400><c> I'm</c><00:23:35.480><c> going</c><00:23:35.600><c> to</c><00:23:35.720><c> go</c><00:23:35.800><c> ahead</c>

00:23:36.030 --> 00:23:36.040 align:start position:0%
architecture. So, I'm going to go ahead
 

00:23:36.040 --> 00:23:38.350 align:start position:0%
architecture. So, I'm going to go ahead
and<00:23:36.200><c> save</c><00:23:36.480><c> this.</c><00:23:37.040><c> And</c><00:23:37.240><c> now</c><00:23:37.480><c> it</c><00:23:37.640><c> came</c><00:23:37.880><c> back</c><00:23:38.160><c> with</c>

00:23:38.350 --> 00:23:38.360 align:start position:0%
and save this. And now it came back with
 

00:23:38.360 --> 00:23:41.110 align:start position:0%
and save this. And now it came back with
a<00:23:38.440><c> plan,</c><00:23:39.000><c> okay?</c><00:23:39.360><c> Create</c><00:23:39.800><c> the</c><00:23:39.960><c> reusable</c><00:23:40.680><c> Codex</c>

00:23:41.110 --> 00:23:41.120 align:start position:0%
a plan, okay? Create the reusable Codex
 

00:23:41.120 --> 00:23:45.030 align:start position:0%
a plan, okay? Create the reusable Codex
skill<00:23:41.520><c> named</c><00:23:42.400><c> sample</c><00:23:43.080><c> arch</c><00:23:43.440><c> stack</c><00:23:44.040><c> under</c>

00:23:45.030 --> 00:23:45.040 align:start position:0%
skill named sample arch stack under
 

00:23:45.040 --> 00:23:47.310 align:start position:0%
skill named sample arch stack under
wherever<00:23:45.520><c> it's</c><00:23:45.680><c> storing</c><00:23:46.080><c> those</c><00:23:46.320><c> skills.</c><00:23:47.200><c> The</c>

00:23:47.310 --> 00:23:47.320 align:start position:0%
wherever it's storing those skills. The
 

00:23:47.320 --> 00:23:48.990 align:start position:0%
wherever it's storing those skills. The
skill<00:23:47.720><c> will</c><00:23:47.880><c> guide</c><00:23:48.200><c> Codex</c><00:23:48.640><c> through</c><00:23:48.880><c> the</c>

00:23:48.990 --> 00:23:49.000 align:start position:0%
skill will guide Codex through the
 

00:23:49.000 --> 00:23:51.550 align:start position:0%
skill will guide Codex through the
architecture<00:23:49.680><c> step</c><00:23:50.080><c> for</c><00:23:50.200><c> simple</c><00:23:50.720><c> app</c><00:23:50.960><c> ideas.</c>

00:23:51.550 --> 00:23:51.560 align:start position:0%
architecture step for simple app ideas.
 

00:23:51.560 --> 00:23:53.870 align:start position:0%
architecture step for simple app ideas.
And<00:23:51.720><c> it's</c><00:23:51.840><c> going</c><00:23:51.960><c> to</c><00:23:52.040><c> package</c><00:23:52.520><c> that</c><00:23:52.760><c> step</c><00:23:53.600><c> into</c>

00:23:53.870 --> 00:23:53.880 align:start position:0%
And it's going to package that step into
 

00:23:53.880 --> 00:23:55.990 align:start position:0%
And it's going to package that step into
a<00:23:54.000><c> reusable</c><00:23:54.720><c> process.</c><00:23:55.440><c> All</c><00:23:55.520><c> right.</c><00:23:55.760><c> And</c><00:23:55.880><c> now</c>

00:23:55.990 --> 00:23:56.000 align:start position:0%
a reusable process. All right. And now
 

00:23:56.000 --> 00:23:58.110 align:start position:0%
a reusable process. All right. And now
it<00:23:56.120><c> tells</c><00:23:56.360><c> me</c><00:23:56.480><c> that</c><00:23:56.680><c> created</c><00:23:57.120><c> the</c><00:23:57.240><c> skill</c><00:23:57.720><c> app.</c>

00:23:58.110 --> 00:23:58.120 align:start position:0%
it tells me that created the skill app.
 

00:23:58.120 --> 00:24:00.830 align:start position:0%
it tells me that created the skill app.
It<00:23:58.280><c> contains</c><00:23:58.880><c> skill.md</c><00:24:00.320><c> and</c><00:24:00.480><c> then</c>

00:24:00.830 --> 00:24:00.840 align:start position:0%
It contains skill.md and then
 

00:24:00.840 --> 00:24:04.270 align:start position:0%
It contains skill.md and then
agents.for.openai.yaml.

00:24:04.270 --> 00:24:04.280 align:start position:0%
 
 

00:24:04.280 --> 00:24:07.030 align:start position:0%
 
Validation<00:24:05.080><c> passed,</c><00:24:05.680><c> etc.</c><00:24:06.160><c> etc.</c><00:24:06.720><c> And</c><00:24:06.880><c> now</c>

00:24:07.030 --> 00:24:07.040 align:start position:0%
Validation passed, etc. etc. And now
 

00:24:07.040 --> 00:24:09.390 align:start position:0%
Validation passed, etc. etc. And now
what<00:24:07.240><c> I</c><00:24:07.320><c> can</c><00:24:07.520><c> do</c><00:24:07.680><c> is</c><00:24:07.840><c> I</c><00:24:07.880><c> can</c><00:24:08.080><c> enter</c><00:24:08.440><c> a</c><00:24:08.560><c> prompt</c>

00:24:09.390 --> 00:24:09.400 align:start position:0%
what I can do is I can enter a prompt
 

00:24:09.400 --> 00:24:12.630 align:start position:0%
what I can do is I can enter a prompt
and<00:24:09.560><c> I</c><00:24:09.600><c> can</c><00:24:09.800><c> say</c><00:24:10.080><c> use</c><00:24:10.440><c> this</c><00:24:10.680><c> skill</c><00:24:11.520><c> for</c><00:24:11.840><c> a</c><00:24:11.960><c> brand</c>

00:24:12.630 --> 00:24:12.640 align:start position:0%
and I can say use this skill for a brand
 

00:24:12.640 --> 00:24:16.190 align:start position:0%
and I can say use this skill for a brand
new<00:24:13.680><c> project</c><00:24:14.360><c> management</c><00:24:15.160><c> app</c><00:24:15.760><c> and</c><00:24:15.880><c> it</c><00:24:16.000><c> should</c>

00:24:16.190 --> 00:24:16.200 align:start position:0%
new project management app and it should
 

00:24:16.200 --> 00:24:19.630 align:start position:0%
new project management app and it should
use<00:24:16.440><c> this</c><00:24:16.680><c> skill</c><00:24:17.360><c> to</c><00:24:17.800><c> create</c><00:24:18.640><c> an</c><00:24:18.840><c> architecture</c>

00:24:19.630 --> 00:24:19.640 align:start position:0%
use this skill to create an architecture
 

00:24:19.640 --> 00:24:22.350 align:start position:0%
use this skill to create an architecture
stack<00:24:20.600><c> for</c><00:24:20.760><c> this</c><00:24:21.080><c> kind</c><00:24:21.360><c> of</c><00:24:21.520><c> app.</c><00:24:21.760><c> So,</c><00:24:21.960><c> it</c><00:24:22.080><c> wants</c>

00:24:22.350 --> 00:24:22.360 align:start position:0%
stack for this kind of app. So, it wants
 

00:24:22.360 --> 00:24:24.150 align:start position:0%
stack for this kind of app. So, it wants
to<00:24:22.480><c> know</c><00:24:22.720><c> for</c><00:24:22.840><c> the</c><00:24:22.960><c> brand</c><00:24:23.320><c> new</c><00:24:23.600><c> project</c>

00:24:24.150 --> 00:24:24.160 align:start position:0%
to know for the brand new project
 

00:24:24.160 --> 00:24:26.110 align:start position:0%
to know for the brand new project
management<00:24:24.720><c> app,</c><00:24:25.040><c> what</c><00:24:25.240><c> should</c><00:24:25.440><c> the</c><00:24:25.640><c> version</c>

00:24:26.110 --> 00:24:26.120 align:start position:0%
management app, what should the version
 

00:24:26.120 --> 00:24:27.870 align:start position:0%
management app, what should the version
one<00:24:26.320><c> data</c><00:24:26.640><c> model</c><00:24:26.960><c> support?</c><00:24:27.440><c> We're</c><00:24:27.560><c> just</c><00:24:27.760><c> going</c>

00:24:27.870 --> 00:24:27.880 align:start position:0%
one data model support? We're just going
 

00:24:27.880 --> 00:24:29.950 align:start position:0%
one data model support? We're just going
to<00:24:27.960><c> do</c><00:24:28.120><c> local</c><00:24:28.520><c> only.</c><00:24:29.000><c> And</c><00:24:29.160><c> here</c><00:24:29.360><c> it</c><00:24:29.480><c> came</c><00:24:29.680><c> back</c>

00:24:29.950 --> 00:24:29.960 align:start position:0%
to do local only. And here it came back
 

00:24:29.960 --> 00:24:31.870 align:start position:0%
to do local only. And here it came back
with<00:24:30.120><c> a</c><00:24:30.200><c> plan.</c><00:24:30.600><c> Brand</c><00:24:30.920><c> new</c><00:24:31.080><c> local</c><00:24:31.520><c> only</c>

00:24:31.870 --> 00:24:31.880 align:start position:0%
with a plan. Brand new local only
 

00:24:31.880 --> 00:24:34.470 align:start position:0%
with a plan. Brand new local only
project<00:24:32.680><c> management</c><00:24:33.440><c> app</c><00:24:33.800><c> architecture,</c>

00:24:34.470 --> 00:24:34.480 align:start position:0%
project management app architecture,
 

00:24:34.480 --> 00:24:36.350 align:start position:0%
project management app architecture,
right?<00:24:34.720><c> That's</c><00:24:35.000><c> the</c><00:24:35.120><c> purpose</c><00:24:35.520><c> of</c><00:24:35.640><c> the</c><00:24:35.760><c> skill,</c>

00:24:36.350 --> 00:24:36.360 align:start position:0%
right? That's the purpose of the skill,
 

00:24:36.360 --> 00:24:38.750 align:start position:0%
right? That's the purpose of the skill,
okay?<00:24:37.080><c> We're</c><00:24:37.240><c> going</c><00:24:37.400><c> to</c><00:24:37.480><c> expand</c><00:24:38.080><c> this</c><00:24:38.640><c> and</c>

00:24:38.750 --> 00:24:38.760 align:start position:0%
okay? We're going to expand this and
 

00:24:38.760 --> 00:24:40.510 align:start position:0%
okay? We're going to expand this and
it's<00:24:38.960><c> coming</c><00:24:39.360><c> up</c><00:24:39.480><c> with</c><00:24:39.600><c> this</c><00:24:39.800><c> architecture,</c>

00:24:40.510 --> 00:24:40.520 align:start position:0%
it's coming up with this architecture,
 

00:24:40.520 --> 00:24:43.750 align:start position:0%
it's coming up with this architecture,
right?<00:24:41.360><c> App</c><00:24:41.720><c> shape,</c><00:24:42.600><c> data</c><00:24:43.000><c> state</c><00:24:43.360><c> model,</c>

00:24:43.750 --> 00:24:43.760 align:start position:0%
right? App shape, data state model,
 

00:24:43.760 --> 00:24:46.710 align:start position:0%
right? App shape, data state model,
component<00:24:44.440><c> architecture,</c><00:24:45.280><c> test</c><00:24:45.760><c> plan,</c><00:24:46.160><c> etc.</c>

00:24:46.710 --> 00:24:46.720 align:start position:0%
component architecture, test plan, etc.
 

00:24:46.720 --> 00:24:49.030 align:start position:0%
component architecture, test plan, etc.
etc.<00:24:47.160><c> And</c><00:24:47.240><c> we</c><00:24:47.360><c> can</c><00:24:47.520><c> say</c><00:24:47.800><c> yes</c><00:24:48.640><c> and</c><00:24:48.760><c> it's</c><00:24:48.880><c> going</c>

00:24:49.030 --> 00:24:49.040 align:start position:0%
etc. And we can say yes and it's going
 

00:24:49.040 --> 00:24:50.750 align:start position:0%
etc. And we can say yes and it's going
to<00:24:49.120><c> go</c><00:24:49.280><c> ahead</c><00:24:49.600><c> and</c><00:24:49.720><c> implement</c><00:24:50.280><c> all</c><00:24:50.400><c> that.</c><00:24:50.640><c> And</c>

00:24:50.750 --> 00:24:50.760 align:start position:0%
to go ahead and implement all that. And
 

00:24:50.760 --> 00:24:53.590 align:start position:0%
to go ahead and implement all that. And
so,<00:24:50.880><c> this</c><00:24:51.120><c> is</c><00:24:51.240><c> actually</c><00:24:51.720><c> a</c><00:24:51.840><c> fairly</c><00:24:52.920><c> valuable</c>

00:24:53.590 --> 00:24:53.600 align:start position:0%
so, this is actually a fairly valuable
 

00:24:53.600 --> 00:24:56.030 align:start position:0%
so, this is actually a fairly valuable
skill<00:24:54.520><c> because</c><00:24:54.920><c> that</c><00:24:55.120><c> is</c><00:24:55.240><c> exactly</c><00:24:55.760><c> what</c><00:24:55.920><c> you</c>

00:24:56.030 --> 00:24:56.040 align:start position:0%
skill because that is exactly what you
 

00:24:56.040 --> 00:24:58.270 align:start position:0%
skill because that is exactly what you
want<00:24:56.200><c> to</c><00:24:56.280><c> be</c><00:24:56.400><c> doing</c><00:24:56.720><c> in</c><00:24:56.920><c> those</c><00:24:57.160><c> initial</c><00:24:57.680><c> stages</c>

00:24:58.270 --> 00:24:58.280 align:start position:0%
want to be doing in those initial stages
 

00:24:58.280 --> 00:24:59.870 align:start position:0%
want to be doing in those initial stages
when<00:24:58.440><c> you're</c><00:24:58.600><c> building</c><00:24:59.040><c> an</c><00:24:59.160><c> app,</c><00:24:59.440><c> as</c><00:24:59.720><c> you're</c>

00:24:59.870 --> 00:24:59.880 align:start position:0%
when you're building an app, as you're
 

00:24:59.880 --> 00:25:02.590 align:start position:0%
when you're building an app, as you're
going<00:25:00.000><c> to</c><00:25:00.120><c> see</c><00:25:00.240><c> a</c><00:25:00.320><c> little</c><00:25:00.600><c> bit</c><00:25:00.800><c> later.</c><00:25:01.680><c> But,</c><00:25:02.360><c> by</c>

00:25:02.590 --> 00:25:02.600 align:start position:0%
going to see a little bit later. But, by
 

00:25:02.600 --> 00:25:05.710 align:start position:0%
going to see a little bit later. But, by
having<00:25:03.080><c> the</c><00:25:03.240><c> skill,</c><00:25:04.160><c> we</c><00:25:04.400><c> do</c><00:25:04.560><c> not</c><00:25:04.920><c> need</c><00:25:05.320><c> to</c>

00:25:05.710 --> 00:25:05.720 align:start position:0%
having the skill, we do not need to
 

00:25:05.720 --> 00:25:08.510 align:start position:0%
having the skill, we do not need to
explain<00:25:06.520><c> all</c><00:25:06.760><c> of</c><00:25:06.880><c> that</c><00:25:07.240><c> over</c><00:25:07.640><c> and</c><00:25:07.800><c> over</c><00:25:08.080><c> again.</c>

00:25:08.510 --> 00:25:08.520 align:start position:0%
explain all of that over and over again.
 

00:25:08.520 --> 00:25:10.270 align:start position:0%
explain all of that over and over again.
So,<00:25:08.760><c> as</c><00:25:09.000><c> you're</c><00:25:09.160><c> building</c><00:25:09.640><c> more</c><00:25:09.880><c> and</c><00:25:09.960><c> more</c>

00:25:10.270 --> 00:25:10.280 align:start position:0%
So, as you're building more and more
 

00:25:10.280 --> 00:25:13.510 align:start position:0%
So, as you're building more and more
apps,<00:25:10.960><c> you</c><00:25:11.160><c> can</c><00:25:11.360><c> simply</c><00:25:11.920><c> reuse</c><00:25:12.600><c> this</c><00:25:12.960><c> skill</c>

00:25:13.510 --> 00:25:13.520 align:start position:0%
apps, you can simply reuse this skill
 

00:25:13.520 --> 00:25:15.990 align:start position:0%
apps, you can simply reuse this skill
from<00:25:13.760><c> now</c><00:25:14.040><c> on.</c><00:25:14.480><c> Now,</c><00:25:14.680><c> before</c><00:25:15.080><c> moving</c><00:25:15.480><c> further,</c>

00:25:15.990 --> 00:25:16.000 align:start position:0%
from now on. Now, before moving further,
 

00:25:16.000 --> 00:25:18.830 align:start position:0%
from now on. Now, before moving further,
I<00:25:16.120><c> also</c><00:25:16.480><c> want</c><00:25:16.640><c> to</c><00:25:16.760><c> explain</c><00:25:17.520><c> a</c><00:25:17.600><c> few</c><00:25:17.960><c> terms</c><00:25:18.640><c> that</c>

00:25:18.830 --> 00:25:18.840 align:start position:0%
I also want to explain a few terms that
 

00:25:18.840 --> 00:25:21.590 align:start position:0%
I also want to explain a few terms that
can<00:25:19.000><c> sound</c><00:25:19.400><c> similar</c><00:25:19.840><c> at</c><00:25:20.000><c> first,</c><00:25:20.960><c> plugins,</c>

00:25:21.590 --> 00:25:21.600 align:start position:0%
can sound similar at first, plugins,
 

00:25:21.600 --> 00:25:23.830 align:start position:0%
can sound similar at first, plugins,
automations,<00:25:22.400><c> and</c><00:25:22.520><c> MCP.</c>

00:25:23.830 --> 00:25:23.840 align:start position:0%
automations, and MCP.
 

00:25:23.840 --> 00:25:26.790 align:start position:0%
automations, and MCP.
They<00:25:24.000><c> all</c><00:25:24.240><c> expand</c><00:25:24.960><c> what</c><00:25:25.120><c> Codex</c><00:25:25.640><c> can</c><00:25:25.840><c> do,</c><00:25:26.680><c> but</c>

00:25:26.790 --> 00:25:26.800 align:start position:0%
They all expand what Codex can do, but
 

00:25:26.800 --> 00:25:29.550 align:start position:0%
They all expand what Codex can do, but
they<00:25:26.920><c> are</c><00:25:27.040><c> not</c><00:25:27.360><c> the</c><00:25:27.480><c> same</c><00:25:27.840><c> thing.</c><00:25:28.680><c> Plugins</c><00:25:29.320><c> are</c>

00:25:29.550 --> 00:25:29.560 align:start position:0%
they are not the same thing. Plugins are
 

00:25:29.560 --> 00:25:32.550 align:start position:0%
they are not the same thing. Plugins are
packaged<00:25:30.240><c> capabilities</c><00:25:31.240><c> or</c><00:25:31.560><c> workflows</c><00:25:32.360><c> that</c>

00:25:32.550 --> 00:25:32.560 align:start position:0%
packaged capabilities or workflows that
 

00:25:32.560 --> 00:25:35.750 align:start position:0%
packaged capabilities or workflows that
make<00:25:32.840><c> Codex</c><00:25:33.320><c> better</c><00:25:34.200><c> at</c><00:25:34.360><c> a</c><00:25:34.480><c> specific</c><00:25:35.280><c> kind</c><00:25:35.640><c> of</c>

00:25:35.750 --> 00:25:35.760 align:start position:0%
make Codex better at a specific kind of
 

00:25:35.760 --> 00:25:36.710 align:start position:0%
make Codex better at a specific kind of
work.

00:25:36.710 --> 00:25:36.720 align:start position:0%
work.
 

00:25:36.720 --> 00:25:39.590 align:start position:0%
work.
For<00:25:36.840><c> example,</c><00:25:37.480><c> a</c><00:25:37.600><c> Notion</c><00:25:38.200><c> plugin</c><00:25:39.080><c> can</c><00:25:39.280><c> help</c>

00:25:39.590 --> 00:25:39.600 align:start position:0%
For example, a Notion plugin can help
 

00:25:39.600 --> 00:25:42.910 align:start position:0%
For example, a Notion plugin can help
Codex<00:25:40.200><c> read</c><00:25:40.720><c> and</c><00:25:40.880><c> update</c><00:25:41.280><c> Notion</c><00:25:41.680><c> pages.</c><00:25:42.800><c> A</c>

00:25:42.910 --> 00:25:42.920 align:start position:0%
Codex read and update Notion pages. A
 

00:25:42.920 --> 00:25:45.630 align:start position:0%
Codex read and update Notion pages. A
Vercel<00:25:43.600><c> plugin</c><00:25:44.200><c> can</c><00:25:44.400><c> help</c><00:25:44.640><c> with</c><00:25:44.840><c> deploys</c><00:25:45.480><c> and</c>

00:25:45.630 --> 00:25:45.640 align:start position:0%
Vercel plugin can help with deploys and
 

00:25:45.640 --> 00:25:47.270 align:start position:0%
Vercel plugin can help with deploys and
project<00:25:46.160><c> settings.</c>

00:25:47.270 --> 00:25:47.280 align:start position:0%
project settings.
 

00:25:47.280 --> 00:25:49.670 align:start position:0%
project settings.
A<00:25:47.480><c> Hyperframes</c><00:25:48.400><c> plugin</c><00:25:48.880><c> can</c><00:25:49.080><c> help</c><00:25:49.320><c> create</c>

00:25:49.670 --> 00:25:49.680 align:start position:0%
A Hyperframes plugin can help create
 

00:25:49.680 --> 00:25:52.710 align:start position:0%
A Hyperframes plugin can help create
explainers,<00:25:50.680><c> and</c><00:25:51.120><c> browser</c><00:25:51.840><c> or</c><00:25:52.040><c> document</c>

00:25:52.710 --> 00:25:52.720 align:start position:0%
explainers, and browser or document
 

00:25:52.720 --> 00:25:56.110 align:start position:0%
explainers, and browser or document
tools<00:25:53.120><c> can</c><00:25:53.320><c> help</c><00:25:53.640><c> Codex</c><00:25:54.160><c> inspect</c><00:25:55.040><c> apps</c><00:25:55.800><c> or</c>

00:25:56.110 --> 00:25:56.120 align:start position:0%
tools can help Codex inspect apps or
 

00:25:56.120 --> 00:25:58.030 align:start position:0%
tools can help Codex inspect apps or
work<00:25:56.560><c> with</c><00:25:56.800><c> files.</c>

00:25:58.030 --> 00:25:58.040 align:start position:0%
work with files.
 

00:25:58.040 --> 00:26:00.390 align:start position:0%
work with files.
The<00:25:58.200><c> simple</c><00:25:58.760><c> way</c><00:25:58.960><c> to</c><00:25:59.120><c> think</c><00:25:59.320><c> about</c><00:25:59.600><c> plugins</c><00:26:00.160><c> is</c>

00:26:00.390 --> 00:26:00.400 align:start position:0%
The simple way to think about plugins is
 

00:26:00.400 --> 00:26:03.910 align:start position:0%
The simple way to think about plugins is
this.<00:26:01.320><c> They</c><00:26:01.480><c> give</c><00:26:01.760><c> Codex</c><00:26:02.520><c> a</c><00:26:02.680><c> more</c><00:26:03.000><c> specialized</c>

00:26:03.910 --> 00:26:03.920 align:start position:0%
this. They give Codex a more specialized
 

00:26:03.920 --> 00:26:07.430 align:start position:0%
this. They give Codex a more specialized
tool<00:26:04.240><c> set</c><00:26:05.120><c> for</c><00:26:05.480><c> a</c><00:26:05.600><c> specific</c><00:26:06.280><c> job.</c>

00:26:07.430 --> 00:26:07.440 align:start position:0%
tool set for a specific job.
 

00:26:07.440 --> 00:26:10.790 align:start position:0%
tool set for a specific job.
Codex<00:26:08.000><c> still</c><00:26:08.440><c> needs</c><00:26:08.840><c> the</c><00:26:09.000><c> right</c><00:26:09.360><c> context</c><00:26:10.640><c> and</c>

00:26:10.790 --> 00:26:10.800 align:start position:0%
Codex still needs the right context and
 

00:26:10.800 --> 00:26:13.350 align:start position:0%
Codex still needs the right context and
the<00:26:10.880><c> right</c><00:26:11.160><c> instruction,</c><00:26:12.480><c> but</c><00:26:12.640><c> the</c><00:26:12.760><c> plugin</c>

00:26:13.350 --> 00:26:13.360 align:start position:0%
the right instruction, but the plugin
 

00:26:13.360 --> 00:26:17.310 align:start position:0%
the right instruction, but the plugin
gives<00:26:13.680><c> it</c><00:26:13.840><c> a</c><00:26:13.960><c> cleaner</c><00:26:14.640><c> way</c><00:26:15.200><c> to</c><00:26:15.480><c> operate</c><00:26:16.320><c> inside</c>

00:26:17.310 --> 00:26:17.320 align:start position:0%
gives it a cleaner way to operate inside
 

00:26:17.320 --> 00:26:19.470 align:start position:0%
gives it a cleaner way to operate inside
that<00:26:17.640><c> workflow.</c><00:26:18.560><c> Automations</c><00:26:19.360><c> are</c>

00:26:19.470 --> 00:26:19.480 align:start position:0%
that workflow. Automations are
 

00:26:19.480 --> 00:26:21.950 align:start position:0%
that workflow. Automations are
different.<00:26:20.120><c> A</c><00:26:20.280><c> plugin</c><00:26:21.000><c> gives</c><00:26:21.320><c> Codex</c><00:26:21.840><c> a</c>

00:26:21.950 --> 00:26:21.960 align:start position:0%
different. A plugin gives Codex a
 

00:26:21.960 --> 00:26:23.590 align:start position:0%
different. A plugin gives Codex a
capability,

00:26:23.590 --> 00:26:23.600 align:start position:0%
capability,
 

00:26:23.600 --> 00:26:25.790 align:start position:0%
capability,
but<00:26:23.760><c> an</c><00:26:23.960><c> automation</c><00:26:24.760><c> gives</c><00:26:25.120><c> Codex</c><00:26:25.680><c> a</c>

00:26:25.790 --> 00:26:25.800 align:start position:0%
but an automation gives Codex a
 

00:26:25.800 --> 00:26:30.190 align:start position:0%
but an automation gives Codex a
time-based<00:26:26.880><c> job</c><00:26:27.840><c> or</c><00:26:28.040><c> follow-up</c><00:26:28.880><c> behavior.</c>

00:26:30.190 --> 00:26:30.200 align:start position:0%
time-based job or follow-up behavior.
 

00:26:30.200 --> 00:26:33.190 align:start position:0%
time-based job or follow-up behavior.
That<00:26:30.480><c> might</c><00:26:30.760><c> be</c><00:26:31.000><c> a</c><00:26:31.120><c> reminder,</c><00:26:32.360><c> a</c><00:26:32.520><c> recurring</c>

00:26:33.190 --> 00:26:33.200 align:start position:0%
That might be a reminder, a recurring
 

00:26:33.200 --> 00:26:37.510 align:start position:0%
That might be a reminder, a recurring
check,<00:26:34.160><c> a</c><00:26:34.360><c> scheduled</c><00:26:35.200><c> review,</c><00:26:36.280><c> or</c><00:26:36.560><c> a</c><00:26:36.680><c> request</c>

00:26:37.510 --> 00:26:37.520 align:start position:0%
check, a scheduled review, or a request
 

00:26:37.520 --> 00:26:40.070 align:start position:0%
check, a scheduled review, or a request
to<00:26:37.640><c> come</c><00:26:37.880><c> back</c><00:26:38.120><c> to</c><00:26:38.320><c> a</c><00:26:38.400><c> thread</c><00:26:38.840><c> later</c><00:26:39.840><c> and</c>

00:26:40.070 --> 00:26:40.080 align:start position:0%
to come back to a thread later and
 

00:26:40.080 --> 00:26:42.430 align:start position:0%
to come back to a thread later and
continue<00:26:41.200><c> the</c><00:26:41.360><c> work.</c>

00:26:42.430 --> 00:26:42.440 align:start position:0%
continue the work.
 

00:26:42.440 --> 00:26:45.310 align:start position:0%
continue the work.
This<00:26:42.720><c> is</c><00:26:42.920><c> useful</c><00:26:43.520><c> because</c><00:26:43.880><c> not</c><00:26:44.200><c> every</c><00:26:44.520><c> task</c>

00:26:45.310 --> 00:26:45.320 align:start position:0%
This is useful because not every task
 

00:26:45.320 --> 00:26:47.910 align:start position:0%
This is useful because not every task
needs<00:26:45.640><c> to</c><00:26:45.760><c> happen</c><00:26:46.200><c> immediately.</c><00:26:47.120><c> Sometimes,</c>

00:26:47.910 --> 00:26:47.920 align:start position:0%
needs to happen immediately. Sometimes,
 

00:26:47.920 --> 00:26:50.310 align:start position:0%
needs to happen immediately. Sometimes,
you<00:26:48.040><c> might</c><00:26:48.240><c> want</c><00:26:48.600><c> Codex</c><00:26:49.200><c> to</c><00:26:49.400><c> check</c><00:26:49.800><c> something</c>

00:26:50.310 --> 00:26:50.320 align:start position:0%
you might want Codex to check something
 

00:26:50.320 --> 00:26:53.670 align:start position:0%
you might want Codex to check something
again<00:26:50.680><c> tomorrow,</c><00:26:51.960><c> remind</c><00:26:52.720><c> you</c><00:26:52.920><c> to</c><00:26:53.080><c> review</c><00:26:53.480><c> an</c>

00:26:53.670 --> 00:26:53.680 align:start position:0%
again tomorrow, remind you to review an
 

00:26:53.680 --> 00:26:56.950 align:start position:0%
again tomorrow, remind you to review an
outline,<00:26:54.440><c> monitor</c><00:26:55.320><c> whether</c><00:26:55.720><c> a</c><00:26:55.840><c> deployment</c><00:26:56.760><c> is</c>

00:26:56.950 --> 00:26:56.960 align:start position:0%
outline, monitor whether a deployment is
 

00:26:56.960 --> 00:27:00.510 align:start position:0%
outline, monitor whether a deployment is
still<00:26:57.280><c> working,</c><00:26:58.400><c> or</c><00:26:58.920><c> wake</c><00:26:59.400><c> this</c><00:26:59.720><c> thread</c><00:27:00.160><c> back</c>

00:27:00.510 --> 00:27:00.520 align:start position:0%
still working, or wake this thread back
 

00:27:00.520 --> 00:27:02.990 align:start position:0%
still working, or wake this thread back
up<00:27:00.880><c> when</c><00:27:01.240><c> you</c><00:27:01.440><c> need</c><00:27:01.720><c> it</c><00:27:01.880><c> to</c><00:27:02.000><c> continue.</c>

00:27:02.990 --> 00:27:03.000 align:start position:0%
up when you need it to continue.
 

00:27:03.000 --> 00:27:06.030 align:start position:0%
up when you need it to continue.
Automations<00:27:04.040><c> turn</c><00:27:04.360><c> Codex</c><00:27:04.920><c> from</c><00:27:05.200><c> a</c><00:27:05.320><c> one-time</c>

00:27:06.030 --> 00:27:06.040 align:start position:0%
Automations turn Codex from a one-time
 

00:27:06.040 --> 00:27:08.830 align:start position:0%
Automations turn Codex from a one-time
assistant<00:27:07.040><c> into</c><00:27:07.440><c> something</c><00:27:08.120><c> that</c><00:27:08.360><c> can</c><00:27:08.520><c> help</c>

00:27:08.830 --> 00:27:08.840 align:start position:0%
assistant into something that can help
 

00:27:08.840 --> 00:27:11.430 align:start position:0%
assistant into something that can help
manage<00:27:09.560><c> longer-running</c><00:27:10.760><c> work.</c><00:27:11.320><c> The</c>

00:27:11.430 --> 00:27:11.440 align:start position:0%
manage longer-running work. The
 

00:27:11.440 --> 00:27:14.390 align:start position:0%
manage longer-running work. The
important<00:27:11.920><c> distinction</c><00:27:12.520><c> is</c><00:27:12.680><c> simple.</c><00:27:13.560><c> Plugins</c>

00:27:14.390 --> 00:27:14.400 align:start position:0%
important distinction is simple. Plugins
 

00:27:14.400 --> 00:27:16.950 align:start position:0%
important distinction is simple. Plugins
are<00:27:14.560><c> about</c><00:27:14.960><c> what</c><00:27:15.200><c> Codex</c><00:27:15.720><c> can</c><00:27:15.960><c> do,</c>

00:27:16.950 --> 00:27:16.960 align:start position:0%
are about what Codex can do,
 

00:27:16.960 --> 00:27:20.430 align:start position:0%
are about what Codex can do,
and<00:27:17.240><c> automations</c><00:27:18.240><c> are</c><00:27:18.440><c> about</c><00:27:19.040><c> when</c><00:27:19.720><c> Codex</c>

00:27:20.430 --> 00:27:20.440 align:start position:0%
and automations are about when Codex
 

00:27:20.440 --> 00:27:22.510 align:start position:0%
and automations are about when Codex
should<00:27:20.840><c> do</c><00:27:21.040><c> it.</c><00:27:21.520><c> All</c><00:27:21.600><c> right,</c><00:27:21.800><c> so</c><00:27:21.920><c> here</c><00:27:22.240><c> I</c><00:27:22.320><c> am</c>

00:27:22.510 --> 00:27:22.520 align:start position:0%
should do it. All right, so here I am
 

00:27:22.520 --> 00:27:24.790 align:start position:0%
should do it. All right, so here I am
back<00:27:22.880><c> in</c><00:27:23.080><c> Codex,</c><00:27:23.800><c> and</c><00:27:24.160><c> I</c><00:27:24.240><c> want</c><00:27:24.440><c> to</c><00:27:24.520><c> show</c><00:27:24.720><c> you</c>

00:27:24.790 --> 00:27:24.800 align:start position:0%
back in Codex, and I want to show you
 

00:27:24.800 --> 00:27:26.390 align:start position:0%
back in Codex, and I want to show you
how<00:27:25.000><c> plugins</c><00:27:25.560><c> work,</c><00:27:25.840><c> right?</c><00:27:26.080><c> So,</c><00:27:26.160><c> if</c><00:27:26.280><c> you</c>

00:27:26.390 --> 00:27:26.400 align:start position:0%
how plugins work, right? So, if you
 

00:27:26.400 --> 00:27:28.550 align:start position:0%
how plugins work, right? So, if you
click<00:27:26.640><c> over</c><00:27:26.800><c> here</c><00:27:26.960><c> on</c><00:27:27.080><c> plugins,</c><00:27:27.840><c> you</c><00:27:28.040><c> can</c><00:27:28.280><c> see</c>

00:27:28.550 --> 00:27:28.560 align:start position:0%
click over here on plugins, you can see
 

00:27:28.560 --> 00:27:30.470 align:start position:0%
click over here on plugins, you can see
all<00:27:28.960><c> the</c><00:27:29.080><c> plugins</c><00:27:29.560><c> that</c><00:27:29.720><c> you</c><00:27:29.840><c> have</c><00:27:30.120><c> here,</c>

00:27:30.470 --> 00:27:30.480 align:start position:0%
all the plugins that you have here,
 

00:27:30.480 --> 00:27:32.550 align:start position:0%
all the plugins that you have here,
okay?<00:27:30.840><c> And</c><00:27:31.000><c> so,</c><00:27:31.120><c> it</c><00:27:31.520><c> it</c><00:27:31.640><c> tells</c><00:27:31.880><c> you</c><00:27:31.960><c> that</c><00:27:32.200><c> make</c>

00:27:32.550 --> 00:27:32.560 align:start position:0%
okay? And so, it it tells you that make
 

00:27:32.560 --> 00:27:35.310 align:start position:0%
okay? And so, it it tells you that make
Codex<00:27:33.120><c> work</c><00:27:33.560><c> your</c><00:27:33.840><c> way,</c><00:27:34.360><c> and</c><00:27:34.680><c> if</c><00:27:34.840><c> you</c><00:27:34.960><c> scroll</c>

00:27:35.310 --> 00:27:35.320 align:start position:0%
Codex work your way, and if you scroll
 

00:27:35.320 --> 00:27:36.750 align:start position:0%
Codex work your way, and if you scroll
down,<00:27:35.600><c> you</c><00:27:35.720><c> can</c><00:27:35.880><c> see</c><00:27:36.080><c> all</c><00:27:36.320><c> the</c><00:27:36.440><c> different</c>

00:27:36.750 --> 00:27:36.760 align:start position:0%
down, you can see all the different
 

00:27:36.760 --> 00:27:38.350 align:start position:0%
down, you can see all the different
plugins,<00:27:37.280><c> right?</c><00:27:37.520><c> So,</c><00:27:37.640><c> you</c><00:27:37.720><c> can</c><00:27:37.880><c> click</c><00:27:38.200><c> on</c><00:27:38.280><c> the</c>

00:27:38.350 --> 00:27:38.360 align:start position:0%
plugins, right? So, you can click on the
 

00:27:38.360 --> 00:27:40.630 align:start position:0%
plugins, right? So, you can click on the
plugin,<00:27:39.160><c> and</c><00:27:39.280><c> you</c><00:27:39.400><c> can</c><00:27:39.560><c> learn</c><00:27:39.840><c> more</c><00:27:40.120><c> about</c><00:27:40.480><c> it,</c>

00:27:40.630 --> 00:27:40.640 align:start position:0%
plugin, and you can learn more about it,
 

00:27:40.640 --> 00:27:41.670 align:start position:0%
plugin, and you can learn more about it,
right?<00:27:40.920><c> So,</c><00:27:41.040><c> for</c><00:27:41.160><c> instance,</c><00:27:41.480><c> this</c>

00:27:41.670 --> 00:27:41.680 align:start position:0%
right? So, for instance, this
 

00:27:41.680 --> 00:27:44.510 align:start position:0%
right? So, for instance, this
spreadsheets<00:27:43.040><c> allows</c><00:27:43.560><c> you</c><00:27:43.680><c> to</c><00:27:43.840><c> create</c><00:27:44.360><c> and</c>

00:27:44.510 --> 00:27:44.520 align:start position:0%
spreadsheets allows you to create and
 

00:27:44.520 --> 00:27:46.870 align:start position:0%
spreadsheets allows you to create and
edit<00:27:44.760><c> spreadsheet</c><00:27:45.320><c> files,</c><00:27:45.800><c> right?</c><00:27:46.440><c> You</c><00:27:46.640><c> can</c>

00:27:46.870 --> 00:27:46.880 align:start position:0%
edit spreadsheet files, right? You can
 

00:27:46.880 --> 00:27:49.110 align:start position:0%
edit spreadsheet files, right? You can
use<00:27:47.200><c> this</c><00:27:47.400><c> plugin</c><00:27:47.840><c> to</c><00:27:47.960><c> create</c><00:27:48.320><c> a</c><00:27:48.440><c> spreadsheet</c>

00:27:49.110 --> 00:27:49.120 align:start position:0%
use this plugin to create a spreadsheet
 

00:27:49.120 --> 00:27:51.030 align:start position:0%
use this plugin to create a spreadsheet
to<00:27:49.240><c> analyze</c><00:27:49.720><c> this</c><00:27:50.000><c> company's</c><00:27:50.360><c> financial,</c>

00:27:51.030 --> 00:27:51.040 align:start position:0%
to analyze this company's financial,
 

00:27:51.040 --> 00:27:53.950 align:start position:0%
to analyze this company's financial,
etc.,<00:27:51.560><c> etc.,</c><00:27:52.120><c> right?</c><00:27:53.040><c> Create,</c><00:27:53.600><c> edit,</c>

00:27:53.950 --> 00:27:53.960 align:start position:0%
etc., etc., right? Create, edit,
 

00:27:53.960 --> 00:27:56.390 align:start position:0%
etc., etc., right? Create, edit,
inspect,<00:27:54.680><c> render,</c><00:27:55.040><c> verify,</c><00:27:55.520><c> and</c><00:27:55.640><c> export</c>

00:27:56.390 --> 00:27:56.400 align:start position:0%
inspect, render, verify, and export
 

00:27:56.400 --> 00:27:59.430 align:start position:0%
inspect, render, verify, and export
Excel<00:27:56.960><c> SX,</c><00:27:57.600><c> CSV,</c><00:27:58.200><c> and</c><00:27:58.400><c> TSV</c><00:27:58.840><c> spreadsheets</c>

00:27:59.430 --> 00:27:59.440 align:start position:0%
Excel SX, CSV, and TSV spreadsheets
 

00:27:59.440 --> 00:28:01.590 align:start position:0%
Excel SX, CSV, and TSV spreadsheets
locally.<00:27:59.920><c> Use</c><00:28:00.160><c> spreadsheets</c><00:28:01.320><c> when</c><00:28:01.480><c> the</c>

00:28:01.590 --> 00:28:01.600 align:start position:0%
locally. Use spreadsheets when the
 

00:28:01.600 --> 00:28:03.430 align:start position:0%
locally. Use spreadsheets when the
durable<00:28:02.080><c> output</c><00:28:02.560><c> or</c><00:28:02.680><c> target</c><00:28:03.160><c> is</c><00:28:03.360><c> a</c>

00:28:03.430 --> 00:28:03.440 align:start position:0%
durable output or target is a
 

00:28:03.440 --> 00:28:06.070 align:start position:0%
durable output or target is a
spreadsheet<00:28:04.040><c> workbook,</c><00:28:04.520><c> etc.,</c><00:28:05.000><c> etc.</c><00:28:05.920><c> So,</c>

00:28:06.070 --> 00:28:06.080 align:start position:0%
spreadsheet workbook, etc., etc. So,
 

00:28:06.080 --> 00:28:08.550 align:start position:0%
spreadsheet workbook, etc., etc. So,
this<00:28:06.400><c> includes</c><00:28:07.400><c> the</c><00:28:07.560><c> skill,</c><00:28:08.080><c> right?</c><00:28:08.400><c> So,</c><00:28:08.480><c> you</c>

00:28:08.550 --> 00:28:08.560 align:start position:0%
this includes the skill, right? So, you
 

00:28:08.560 --> 00:28:10.790 align:start position:0%
this includes the skill, right? So, you
can<00:28:08.720><c> think</c><00:28:08.920><c> of</c><00:28:09.080><c> package</c><00:28:10.080><c> as</c><00:28:10.320><c> kind</c><00:28:10.560><c> of</c><00:28:10.680><c> an</c>

00:28:10.790 --> 00:28:10.800 align:start position:0%
can think of package as kind of an
 

00:28:10.800 --> 00:28:13.950 align:start position:0%
can think of package as kind of an
umbrella<00:28:11.560><c> that</c><00:28:11.840><c> includes</c><00:28:12.680><c> a</c><00:28:12.760><c> skill,</c>

00:28:13.950 --> 00:28:13.960 align:start position:0%
umbrella that includes a skill,
 

00:28:13.960 --> 00:28:18.550 align:start position:0%
umbrella that includes a skill,
but<00:28:14.120><c> it</c><00:28:14.320><c> also</c><00:28:15.560><c> gives</c><00:28:16.200><c> Codex</c><00:28:17.040><c> an</c><00:28:17.240><c> ability</c><00:28:18.000><c> to</c><00:28:18.400><c> to</c>

00:28:18.550 --> 00:28:18.560 align:start position:0%
but it also gives Codex an ability to to
 

00:28:18.560 --> 00:28:20.790 align:start position:0%
but it also gives Codex an ability to to
connect<00:28:19.080><c> to</c><00:28:19.200><c> external</c><00:28:19.800><c> systems,</c><00:28:20.360><c> right?</c><00:28:20.600><c> It's</c>

00:28:20.790 --> 00:28:20.800 align:start position:0%
connect to external systems, right? It's
 

00:28:20.800 --> 00:28:23.350 align:start position:0%
connect to external systems, right? It's
kind<00:28:21.000><c> of</c><00:28:21.120><c> this</c><00:28:21.320><c> higher-level</c><00:28:22.440><c> structure,</c>

00:28:23.350 --> 00:28:23.360 align:start position:0%
kind of this higher-level structure,
 

00:28:23.360 --> 00:28:26.270 align:start position:0%
kind of this higher-level structure,
okay?<00:28:23.640><c> Whereas</c><00:28:23.960><c> a</c><00:28:24.040><c> skill</c><00:28:25.000><c> is</c><00:28:25.440><c> a</c><00:28:25.560><c> very,</c><00:28:25.960><c> very</c>

00:28:26.270 --> 00:28:26.280 align:start position:0%
okay? Whereas a skill is a very, very
 

00:28:26.280 --> 00:28:29.230 align:start position:0%
okay? Whereas a skill is a very, very
specific<00:28:27.280><c> thing.</c><00:28:27.960><c> It's</c><00:28:28.160><c> a</c><00:28:28.240><c> specific</c><00:28:28.840><c> piece</c><00:28:29.120><c> of</c>

00:28:29.230 --> 00:28:29.240 align:start position:0%
specific thing. It's a specific piece of
 

00:28:29.240 --> 00:28:31.030 align:start position:0%
specific thing. It's a specific piece of
instruction.<00:28:29.840><c> Essentially,</c><00:28:30.360><c> a</c><00:28:30.440><c> specific</c>

00:28:31.030 --> 00:28:31.040 align:start position:0%
instruction. Essentially, a specific
 

00:28:31.040 --> 00:28:34.230 align:start position:0%
instruction. Essentially, a specific
prompt.<00:28:31.600><c> A</c><00:28:31.760><c> plugin</c><00:28:32.520><c> is</c><00:28:32.760><c> this</c><00:28:33.000><c> umbrella</c><00:28:33.920><c> that</c>

00:28:34.230 --> 00:28:34.240 align:start position:0%
prompt. A plugin is this umbrella that
 

00:28:34.240 --> 00:28:35.990 align:start position:0%
prompt. A plugin is this umbrella that
contains<00:28:34.880><c> a</c><00:28:34.960><c> skill,</c><00:28:35.360><c> right?</c><00:28:35.640><c> So,</c><00:28:35.720><c> you</c><00:28:35.840><c> can</c>

00:28:35.990 --> 00:28:36.000 align:start position:0%
contains a skill, right? So, you can
 

00:28:36.000 --> 00:28:38.350 align:start position:0%
contains a skill, right? So, you can
have<00:28:36.280><c> that.</c><00:28:36.680><c> One</c><00:28:37.080><c> plugin</c><00:28:37.600><c> that</c><00:28:37.760><c> I</c><00:28:37.800><c> use</c><00:28:38.080><c> all</c><00:28:38.240><c> the</c>

00:28:38.350 --> 00:28:38.360 align:start position:0%
have that. One plugin that I use all the
 

00:28:38.360 --> 00:28:40.350 align:start position:0%
have that. One plugin that I use all the
time<00:28:38.720><c> is</c><00:28:38.920><c> Notion.</c><00:28:39.440><c> So,</c><00:28:39.560><c> if</c><00:28:39.640><c> we</c><00:28:39.760><c> click</c><00:28:40.120><c> over</c>

00:28:40.350 --> 00:28:40.360 align:start position:0%
time is Notion. So, if we click over
 

00:28:40.360 --> 00:28:42.750 align:start position:0%
time is Notion. So, if we click over
here,<00:28:40.880><c> you</c><00:28:41.080><c> can</c><00:28:41.320><c> see</c><00:28:41.680><c> that</c><00:28:41.960><c> this</c><00:28:42.280><c> actually</c>

00:28:42.750 --> 00:28:42.760 align:start position:0%
here, you can see that this actually
 

00:28:42.760 --> 00:28:44.630 align:start position:0%
here, you can see that this actually
includes<00:28:43.160><c> a</c><00:28:43.240><c> lot</c><00:28:43.640><c> more</c><00:28:43.840><c> interesting</c><00:28:44.280><c> things,</c>

00:28:44.630 --> 00:28:44.640 align:start position:0%
includes a lot more interesting things,
 

00:28:44.640 --> 00:28:47.510 align:start position:0%
includes a lot more interesting things,
right?<00:28:45.520><c> Notion</c><00:28:46.080><c> workflows</c><00:28:46.720><c> for</c><00:28:46.920><c> specs,</c>

00:28:47.510 --> 00:28:47.520 align:start position:0%
right? Notion workflows for specs,
 

00:28:47.520 --> 00:28:49.990 align:start position:0%
right? Notion workflows for specs,
research,<00:28:48.280><c> meetings,</c><00:28:49.240><c> and</c><00:28:49.480><c> knowledge</c>

00:28:49.990 --> 00:28:50.000 align:start position:0%
research, meetings, and knowledge
 

00:28:50.000 --> 00:28:52.430 align:start position:0%
research, meetings, and knowledge
capture,<00:28:50.680><c> right?</c><00:28:51.040><c> So,</c><00:28:51.400><c> you</c><00:28:51.560><c> can</c><00:28:51.760><c> specify</c>

00:28:52.430 --> 00:28:52.440 align:start position:0%
capture, right? So, you can specify
 

00:28:52.440 --> 00:28:54.510 align:start position:0%
capture, right? So, you can specify
this,<00:28:53.200><c> and</c><00:28:53.320><c> then</c><00:28:53.520><c> you</c><00:28:53.600><c> can</c><00:28:53.760><c> give</c><00:28:53.920><c> it</c><00:28:54.000><c> a</c><00:28:54.080><c> prompt.</c>

00:28:54.510 --> 00:28:54.520 align:start position:0%
this, and then you can give it a prompt.
 

00:28:54.520 --> 00:28:56.030 align:start position:0%
this, and then you can give it a prompt.
And<00:28:54.640><c> if</c><00:28:54.720><c> you</c><00:28:54.840><c> scroll</c><00:28:55.200><c> down,</c><00:28:55.480><c> you</c><00:28:55.560><c> can</c><00:28:55.720><c> see</c><00:28:55.880><c> that</c>

00:28:56.030 --> 00:28:56.040 align:start position:0%
And if you scroll down, you can see that
 

00:28:56.040 --> 00:28:58.870 align:start position:0%
And if you scroll down, you can see that
it<00:28:56.160><c> includes</c><00:28:57.120><c> the</c><00:28:57.240><c> Notion</c><00:28:57.880><c> app,</c><00:28:58.720><c> the</c>

00:28:58.870 --> 00:28:58.880 align:start position:0%
it includes the Notion app, the
 

00:28:58.880 --> 00:29:01.150 align:start position:0%
it includes the Notion app, the
knowledge<00:28:59.440><c> capture.</c><00:28:59.920><c> These</c><00:29:00.240><c> are</c><00:29:00.400><c> skills.</c>

00:29:01.150 --> 00:29:01.160 align:start position:0%
knowledge capture. These are skills.
 

00:29:01.160 --> 00:29:04.590 align:start position:0%
knowledge capture. These are skills.
This<00:29:01.480><c> is</c><00:29:01.640><c> an</c><00:29:01.880><c> app.</c><00:29:02.560><c> Okay,</c><00:29:02.960><c> so</c><00:29:03.160><c> this</c><00:29:03.520><c> allows</c><00:29:04.120><c> it</c>

00:29:04.590 --> 00:29:04.600 align:start position:0%
This is an app. Okay, so this allows it
 

00:29:04.600 --> 00:29:06.630 align:start position:0%
This is an app. Okay, so this allows it
to<00:29:04.760><c> connect</c><00:29:05.200><c> to</c><00:29:05.280><c> an</c><00:29:05.400><c> external</c><00:29:05.920><c> system,</c><00:29:06.400><c> right?</c>

00:29:06.630 --> 00:29:06.640 align:start position:0%
to connect to an external system, right?
 

00:29:06.640 --> 00:29:08.310 align:start position:0%
to connect to an external system, right?
So,<00:29:06.720><c> if</c><00:29:06.840><c> I</c><00:29:06.920><c> click</c><00:29:07.200><c> over</c><00:29:07.400><c> here,</c><00:29:07.680><c> I</c><00:29:07.760><c> can</c><00:29:07.920><c> manage</c>

00:29:08.310 --> 00:29:08.320 align:start position:0%
So, if I click over here, I can manage
 

00:29:08.320 --> 00:29:11.030 align:start position:0%
So, if I click over here, I can manage
this<00:29:08.920><c> in</c><00:29:09.080><c> ChatGPT</c><00:29:09.920><c> as</c><00:29:10.080><c> well,</c><00:29:10.520><c> because</c><00:29:10.760><c> it's</c><00:29:10.960><c> an</c>

00:29:11.030 --> 00:29:11.040 align:start position:0%
this in ChatGPT as well, because it's an
 

00:29:11.040 --> 00:29:13.670 align:start position:0%
this in ChatGPT as well, because it's an
external<00:29:11.640><c> app.</c><00:29:12.480><c> And</c><00:29:12.680><c> this</c><00:29:12.920><c> right</c><00:29:13.200><c> here,</c><00:29:13.440><c> these</c>

00:29:13.670 --> 00:29:13.680 align:start position:0%
external app. And this right here, these
 

00:29:13.680 --> 00:29:15.990 align:start position:0%
external app. And this right here, these
are<00:29:13.800><c> skills,</c><00:29:14.360><c> right?</c><00:29:14.600><c> I</c><00:29:14.680><c> can</c><00:29:15.000><c> open</c><00:29:15.360><c> that,</c><00:29:15.880><c> and</c>

00:29:15.990 --> 00:29:16.000 align:start position:0%
are skills, right? I can open that, and
 

00:29:16.000 --> 00:29:17.350 align:start position:0%
are skills, right? I can open that, and
that's<00:29:16.200><c> going</c><00:29:16.320><c> to</c><00:29:16.400><c> open</c><00:29:16.680><c> the</c><00:29:16.800><c> skill</c><00:29:17.120><c> right</c>

00:29:17.350 --> 00:29:17.360 align:start position:0%
that's going to open the skill right
 

00:29:17.360 --> 00:29:19.510 align:start position:0%
that's going to open the skill right
here,<00:29:18.160><c> right?</c><00:29:18.440><c> This</c><00:29:18.640><c> is</c><00:29:18.800><c> This</c><00:29:19.040><c> is</c><00:29:19.160><c> how</c><00:29:19.400><c> the</c>

00:29:19.510 --> 00:29:19.520 align:start position:0%
here, right? This is This is how the
 

00:29:19.520 --> 00:29:22.630 align:start position:0%
here, right? This is This is how the
skill<00:29:19.920><c> is</c><00:29:20.040><c> actually</c><00:29:20.880><c> stored.</c><00:29:21.720><c> And</c><00:29:22.040><c> I</c><00:29:22.160><c> can</c><00:29:22.320><c> also</c>

00:29:22.630 --> 00:29:22.640 align:start position:0%
skill is actually stored. And I can also
 

00:29:22.640 --> 00:29:24.710 align:start position:0%
skill is actually stored. And I can also
turn<00:29:22.880><c> it</c><00:29:23.040><c> off</c><00:29:23.360><c> or</c><00:29:23.520><c> turn</c><00:29:23.760><c> it</c><00:29:23.880><c> on,</c><00:29:24.120><c> depending</c><00:29:24.600><c> on</c>

00:29:24.710 --> 00:29:24.720 align:start position:0%
turn it off or turn it on, depending on
 

00:29:24.720 --> 00:29:26.510 align:start position:0%
turn it off or turn it on, depending on
if<00:29:24.880><c> I</c><00:29:24.960><c> want</c><00:29:25.200><c> that</c><00:29:25.360><c> skill</c><00:29:25.640><c> enabled</c><00:29:26.160><c> or</c><00:29:26.240><c> not.</c>

00:29:26.510 --> 00:29:26.520 align:start position:0%
if I want that skill enabled or not.
 

00:29:26.520 --> 00:29:28.350 align:start position:0%
if I want that skill enabled or not.
Now,<00:29:26.680><c> this</c><00:29:26.920><c> is</c><00:29:27.080><c> a</c><00:29:27.160><c> plugin</c><00:29:27.600><c> that</c><00:29:27.760><c> I</c><00:29:27.800><c> use</c><00:29:28.080><c> all</c><00:29:28.200><c> the</c>

00:29:28.350 --> 00:29:28.360 align:start position:0%
Now, this is a plugin that I use all the
 

00:29:28.360 --> 00:29:31.910 align:start position:0%
Now, this is a plugin that I use all the
time,<00:29:28.880><c> right?</c><00:29:29.320><c> I</c><00:29:29.680><c> use</c><00:29:30.080><c> Notion</c><00:29:31.080><c> for</c><00:29:31.640><c> my</c>

00:29:31.910 --> 00:29:31.920 align:start position:0%
time, right? I use Notion for my
 

00:29:31.920 --> 00:29:35.390 align:start position:0%
time, right? I use Notion for my
planning,<00:29:33.200><c> for,</c><00:29:33.840><c> you</c><00:29:33.960><c> know,</c><00:29:34.160><c> writing</c><00:29:34.640><c> stuff,</c>

00:29:35.390 --> 00:29:35.400 align:start position:0%
planning, for, you know, writing stuff,
 

00:29:35.400 --> 00:29:37.390 align:start position:0%
planning, for, you know, writing stuff,
scheduling<00:29:36.280><c> stuff</c><00:29:36.600><c> like</c><00:29:36.800><c> that.</c><00:29:37.040><c> It's</c><00:29:37.240><c> the</c>

00:29:37.390 --> 00:29:37.400 align:start position:0%
scheduling stuff like that. It's the
 

00:29:37.400 --> 00:29:40.830 align:start position:0%
scheduling stuff like that. It's the
brain<00:29:38.320><c> of</c><00:29:38.880><c> my</c><00:29:39.160><c> workflow,</c><00:29:39.800><c> essentially.</c><00:29:40.680><c> And</c>

00:29:40.830 --> 00:29:40.840 align:start position:0%
brain of my workflow, essentially. And
 

00:29:40.840 --> 00:29:43.390 align:start position:0%
brain of my workflow, essentially. And
then<00:29:41.000><c> I</c><00:29:41.080><c> installed</c><00:29:41.560><c> this</c><00:29:41.880><c> pre-built</c><00:29:42.840><c> Notion</c>

00:29:43.390 --> 00:29:43.400 align:start position:0%
then I installed this pre-built Notion
 

00:29:43.400 --> 00:29:47.270 align:start position:0%
then I installed this pre-built Notion
plugin,<00:29:44.520><c> and</c><00:29:45.480><c> the</c><00:29:45.680><c> first</c><00:29:46.160><c> time</c><00:29:46.400><c> I</c><00:29:46.520><c> ran</c><00:29:46.880><c> it,</c><00:29:47.080><c> it</c>

00:29:47.270 --> 00:29:47.280 align:start position:0%
plugin, and the first time I ran it, it
 

00:29:47.280 --> 00:29:50.270 align:start position:0%
plugin, and the first time I ran it, it
authenticated<00:29:48.520><c> against</c><00:29:49.120><c> my</c><00:29:49.640><c> Notion</c>

00:29:50.270 --> 00:29:50.280 align:start position:0%
authenticated against my Notion
 

00:29:50.280 --> 00:29:52.590 align:start position:0%
authenticated against my Notion
workspace,<00:29:51.080><c> right?</c><00:29:51.400><c> Connected</c><00:29:51.880><c> to</c><00:29:51.960><c> my</c><00:29:52.160><c> Notion</c>

00:29:52.590 --> 00:29:52.600 align:start position:0%
workspace, right? Connected to my Notion
 

00:29:52.600 --> 00:29:55.030 align:start position:0%
workspace, right? Connected to my Notion
account.<00:29:53.320><c> And</c><00:29:53.480><c> from</c><00:29:53.720><c> then</c><00:29:54.080><c> on,</c><00:29:54.400><c> I</c><00:29:54.480><c> can</c><00:29:54.680><c> simply</c>

00:29:55.030 --> 00:29:55.040 align:start position:0%
account. And from then on, I can simply
 

00:29:55.040 --> 00:29:57.310 align:start position:0%
account. And from then on, I can simply
say,<00:29:55.320><c> "Hey,</c><00:29:55.960><c> you</c><00:29:56.080><c> know,</c><00:29:56.240><c> use</c><00:29:56.560><c> this</c><00:29:56.800><c> Notion</c>

00:29:57.310 --> 00:29:57.320 align:start position:0%
say, "Hey, you know, use this Notion
 

00:29:57.320 --> 00:30:00.030 align:start position:0%
say, "Hey, you know, use this Notion
spec<00:29:57.800><c> to</c><00:29:57.920><c> do</c><00:29:58.080><c> this,</c><00:29:58.680><c> or</c><00:29:58.880><c> to</c><00:29:59.040><c> do</c><00:29:59.200><c> that,</c><00:29:59.680><c> or,</c><00:29:59.960><c> you</c>

00:30:00.030 --> 00:30:00.040 align:start position:0%
spec to do this, or to do that, or, you
 

00:30:00.040 --> 00:30:01.910 align:start position:0%
spec to do this, or to do that, or, you
know,<00:30:00.200><c> edit</c><00:30:00.480><c> this</c><00:30:00.800><c> document,</c><00:30:01.400><c> edit</c><00:30:01.680><c> that</c>

00:30:01.910 --> 00:30:01.920 align:start position:0%
know, edit this document, edit that
 

00:30:01.920 --> 00:30:05.070 align:start position:0%
know, edit this document, edit that
document."<00:30:02.560><c> And</c><00:30:02.720><c> it's</c><00:30:03.240><c> able</c><00:30:03.600><c> to</c><00:30:03.720><c> go</c><00:30:03.920><c> out</c><00:30:04.400><c> and</c>

00:30:05.070 --> 00:30:05.080 align:start position:0%
document." And it's able to go out and
 

00:30:05.080 --> 00:30:07.550 align:start position:0%
document." And it's able to go out and
edit<00:30:05.400><c> the</c><00:30:05.520><c> right</c><00:30:05.800><c> documents,</c><00:30:07.000><c> and</c>

00:30:07.550 --> 00:30:07.560 align:start position:0%
edit the right documents, and
 

00:30:07.560 --> 00:30:10.910 align:start position:0%
edit the right documents, and
essentially<00:30:08.240><c> make</c><00:30:08.640><c> Notion</c><00:30:09.760><c> an</c><00:30:09.920><c> extension</c><00:30:10.760><c> of</c>

00:30:10.910 --> 00:30:10.920 align:start position:0%
essentially make Notion an extension of
 

00:30:10.920 --> 00:30:12.910 align:start position:0%
essentially make Notion an extension of
Codex.<00:30:11.640><c> That's</c><00:30:11.920><c> kind</c><00:30:12.120><c> of</c><00:30:12.200><c> the</c><00:30:12.320><c> purpose</c><00:30:12.720><c> of</c><00:30:12.840><c> a</c>

00:30:12.910 --> 00:30:12.920 align:start position:0%
Codex. That's kind of the purpose of a
 

00:30:12.920 --> 00:30:15.550 align:start position:0%
Codex. That's kind of the purpose of a
skill,<00:30:13.360><c> to</c><00:30:13.520><c> make</c><00:30:13.960><c> something</c><00:30:14.560><c> an</c><00:30:14.720><c> extension</c><00:30:15.400><c> of</c>

00:30:15.550 --> 00:30:15.560 align:start position:0%
skill, to make something an extension of
 

00:30:15.560 --> 00:30:18.550 align:start position:0%
skill, to make something an extension of
Codex.<00:30:16.520><c> Right?</c><00:30:16.960><c> And</c><00:30:17.280><c> that's</c><00:30:17.640><c> the</c><00:30:17.800><c> main</c><00:30:18.240><c> idea</c>

00:30:18.550 --> 00:30:18.560 align:start position:0%
Codex. Right? And that's the main idea
 

00:30:18.560 --> 00:30:20.350 align:start position:0%
Codex. Right? And that's the main idea
with<00:30:18.760><c> all</c><00:30:18.960><c> of</c><00:30:19.040><c> this,</c><00:30:19.280><c> right?</c><00:30:19.560><c> Another</c><00:30:20.040><c> really</c>

00:30:20.350 --> 00:30:20.360 align:start position:0%
with all of this, right? Another really
 

00:30:20.360 --> 00:30:21.910 align:start position:0%
with all of this, right? Another really
cool<00:30:20.640><c> one</c><00:30:20.800><c> is,</c><00:30:20.960><c> like,</c><00:30:21.160><c> for</c><00:30:21.280><c> instance,</c><00:30:21.600><c> Google</c>

00:30:21.910 --> 00:30:21.920 align:start position:0%
cool one is, like, for instance, Google
 

00:30:21.920 --> 00:30:24.110 align:start position:0%
cool one is, like, for instance, Google
Calendar<00:30:22.440><c> is</c><00:30:22.560><c> another</c><00:30:22.880><c> one,</c><00:30:23.080><c> right?</c><00:30:23.760><c> Instead</c>

00:30:24.110 --> 00:30:24.120 align:start position:0%
Calendar is another one, right? Instead
 

00:30:24.120 --> 00:30:26.030 align:start position:0%
Calendar is another one, right? Instead
of<00:30:24.200><c> connecting</c><00:30:24.640><c> to</c><00:30:24.720><c> Notion,</c><00:30:25.160><c> or</c><00:30:25.400><c> in</c><00:30:25.560><c> addition</c>

00:30:26.030 --> 00:30:26.040 align:start position:0%
of connecting to Notion, or in addition
 

00:30:26.040 --> 00:30:28.510 align:start position:0%
of connecting to Notion, or in addition
to<00:30:26.120><c> connecting</c><00:30:26.880><c> to</c><00:30:27.000><c> Notion,</c><00:30:27.880><c> you</c><00:30:28.040><c> can</c><00:30:28.200><c> also</c>

00:30:28.510 --> 00:30:28.520 align:start position:0%
to connecting to Notion, you can also
 

00:30:28.520 --> 00:30:30.350 align:start position:0%
to connecting to Notion, you can also
connect<00:30:28.840><c> to</c><00:30:28.920><c> Google</c><00:30:29.240><c> Calendar.</c><00:30:29.720><c> I</c><00:30:29.840><c> personally</c>

00:30:30.350 --> 00:30:30.360 align:start position:0%
connect to Google Calendar. I personally
 

00:30:30.360 --> 00:30:31.910 align:start position:0%
connect to Google Calendar. I personally
do<00:30:30.480><c> not</c><00:30:30.840><c> use</c><00:30:31.000><c> Google</c><00:30:31.280><c> Calendar,</c><00:30:31.720><c> I</c><00:30:31.760><c> use</c>

00:30:31.910 --> 00:30:31.920 align:start position:0%
do not use Google Calendar, I use
 

00:30:31.920 --> 00:30:34.550 align:start position:0%
do not use Google Calendar, I use
Notion,<00:30:32.760><c> so</c><00:30:33.000><c> I</c><00:30:33.080><c> do</c><00:30:33.240><c> not</c><00:30:33.520><c> have</c><00:30:33.800><c> this</c><00:30:34.000><c> skill</c><00:30:34.320><c> set</c>

00:30:34.550 --> 00:30:34.560 align:start position:0%
Notion, so I do not have this skill set
 

00:30:34.560 --> 00:30:37.750 align:start position:0%
Notion, so I do not have this skill set
up.<00:30:35.240><c> Another</c><00:30:35.760><c> really</c><00:30:36.120><c> useful</c><00:30:36.600><c> skill</c><00:30:37.080><c> that</c>

00:30:37.750 --> 00:30:37.760 align:start position:0%
up. Another really useful skill that
 

00:30:37.760 --> 00:30:39.390 align:start position:0%
up. Another really useful skill that
you're<00:30:38.000><c> definitely</c><00:30:38.440><c> going</c><00:30:38.600><c> to</c><00:30:38.640><c> be</c><00:30:38.800><c> using</c><00:30:39.280><c> if</c>

00:30:39.390 --> 00:30:39.400 align:start position:0%
you're definitely going to be using if
 

00:30:39.400 --> 00:30:41.430 align:start position:0%
you're definitely going to be using if
you're<00:30:39.560><c> building</c><00:30:39.960><c> apps</c><00:30:40.320><c> is</c><00:30:40.520><c> Vercel,</c><00:30:41.160><c> right?</c>

00:30:41.430 --> 00:30:41.440 align:start position:0%
you're building apps is Vercel, right?
 

00:30:41.440 --> 00:30:45.150 align:start position:0%
you're building apps is Vercel, right?
Vercel,<00:30:42.000><c> or</c><00:30:42.120><c> maybe</c><00:30:42.840><c> something</c><00:30:43.280><c> like</c><00:30:43.640><c> Netlify</c>

00:30:45.150 --> 00:30:45.160 align:start position:0%
Vercel, or maybe something like Netlify
 

00:30:45.160 --> 00:30:48.110 align:start position:0%
Vercel, or maybe something like Netlify
for<00:30:46.160><c> deploying</c><00:30:46.880><c> your</c><00:30:47.120><c> apps,</c><00:30:47.440><c> right?</c><00:30:47.800><c> I</c><00:30:47.880><c> use</c>

00:30:48.110 --> 00:30:48.120 align:start position:0%
for deploying your apps, right? I use
 

00:30:48.120 --> 00:30:52.030 align:start position:0%
for deploying your apps, right? I use
Vercel<00:30:49.080><c> when</c><00:30:49.560><c> demoing</c><00:30:50.320><c> apps.</c><00:30:51.200><c> And</c><00:30:51.480><c> by</c><00:30:51.680><c> having</c>

00:30:52.030 --> 00:30:52.040 align:start position:0%
Vercel when demoing apps. And by having
 

00:30:52.040 --> 00:30:54.790 align:start position:0%
Vercel when demoing apps. And by having
this<00:30:52.240><c> package</c><00:30:52.680><c> installed,</c><00:30:53.840><c> it</c><00:30:54.080><c> can</c><00:30:54.320><c> figure</c>

00:30:54.790 --> 00:30:54.800 align:start position:0%
this package installed, it can figure
 

00:30:54.800 --> 00:30:57.150 align:start position:0%
this package installed, it can figure
out<00:30:55.200><c> how</c><00:30:55.440><c> to</c><00:30:55.640><c> deploy,</c><00:30:56.360><c> how</c><00:30:56.600><c> to</c><00:30:56.800><c> check</c>

00:30:57.150 --> 00:30:57.160 align:start position:0%
out how to deploy, how to check
 

00:30:57.160 --> 00:30:59.030 align:start position:0%
out how to deploy, how to check
deployment,<00:30:57.800><c> how</c><00:30:57.920><c> to</c><00:30:58.080><c> do</c><00:30:58.160><c> everything</c><00:30:58.600><c> without</c>

00:30:59.030 --> 00:30:59.040 align:start position:0%
deployment, how to do everything without
 

00:30:59.040 --> 00:31:01.590 align:start position:0%
deployment, how to do everything without
me<00:30:59.240><c> needing</c><00:30:59.680><c> to</c><00:31:00.240><c> actually</c><00:31:00.760><c> understand</c><00:31:01.440><c> how</c>

00:31:01.590 --> 00:31:01.600 align:start position:0%
me needing to actually understand how
 

00:31:01.600 --> 00:31:03.310 align:start position:0%
me needing to actually understand how
all<00:31:01.760><c> of</c><00:31:01.840><c> that</c><00:31:02.040><c> works,</c><00:31:02.320><c> without</c><00:31:02.600><c> me</c><00:31:02.760><c> needing</c><00:31:03.160><c> to</c>

00:31:03.310 --> 00:31:03.320 align:start position:0%
all of that works, without me needing to
 

00:31:03.320 --> 00:31:06.310 align:start position:0%
all of that works, without me needing to
go<00:31:03.480><c> to</c><00:31:03.800><c> to</c><00:31:03.960><c> Vercel</c><00:31:05.000><c> and</c><00:31:05.200><c> read</c><00:31:05.440><c> their</c><00:31:05.680><c> docs</c><00:31:06.200><c> and</c>

00:31:06.310 --> 00:31:06.320 align:start position:0%
go to to Vercel and read their docs and
 

00:31:06.320 --> 00:31:07.870 align:start position:0%
go to to Vercel and read their docs and
understand<00:31:06.840><c> how</c><00:31:06.960><c> to</c><00:31:07.080><c> deploy</c><00:31:07.520><c> and</c><00:31:07.640><c> all</c><00:31:07.760><c> of</c>

00:31:07.870 --> 00:31:07.880 align:start position:0%
understand how to deploy and all of
 

00:31:07.880 --> 00:31:10.190 align:start position:0%
understand how to deploy and all of
that.<00:31:08.400><c> I</c><00:31:08.520><c> simply</c><00:31:08.920><c> install</c><00:31:09.400><c> this</c><00:31:09.640><c> skill</c><00:31:09.960><c> and</c>

00:31:10.190 --> 00:31:10.200 align:start position:0%
that. I simply install this skill and
 

00:31:10.200 --> 00:31:13.150 align:start position:0%
that. I simply install this skill and
then<00:31:10.640><c> I</c><00:31:10.720><c> you</c><00:31:10.800><c> know,</c><00:31:10.920><c> I</c><00:31:11.000><c> click</c><00:31:11.400><c> here</c><00:31:12.000><c> and</c><00:31:12.800><c> now</c><00:31:13.080><c> I</c>

00:31:13.150 --> 00:31:13.160 align:start position:0%
then I you know, I click here and now I
 

00:31:13.160 --> 00:31:15.150 align:start position:0%
then I you know, I click here and now I
can<00:31:13.360><c> say,</c><00:31:13.640><c> you</c><00:31:13.720><c> know,</c><00:31:13.880><c> Vercel,</c><00:31:14.560><c> order</c><00:31:14.880><c> this</c>

00:31:15.150 --> 00:31:15.160 align:start position:0%
can say, you know, Vercel, order this
 

00:31:15.160 --> 00:31:17.910 align:start position:0%
can say, you know, Vercel, order this
repo<00:31:15.560><c> for</c><00:31:15.760><c> Vercel</c><00:31:16.240><c> deployment</c><00:31:16.840><c> risk.</c><00:31:17.600><c> Or</c>

00:31:17.910 --> 00:31:17.920 align:start position:0%
repo for Vercel deployment risk. Or
 

00:31:17.920 --> 00:31:20.830 align:start position:0%
repo for Vercel deployment risk. Or
Vercel,<00:31:18.640><c> which</c><00:31:18.960><c> Vercel</c><00:31:19.440><c> tools</c><00:31:19.800><c> fit</c><00:31:20.360><c> fit</c><00:31:20.600><c> this</c>

00:31:20.830 --> 00:31:20.840 align:start position:0%
Vercel, which Vercel tools fit fit this
 

00:31:20.840 --> 00:31:24.230 align:start position:0%
Vercel, which Vercel tools fit fit this
app<00:31:21.480><c> app</c><00:31:21.720><c> best.</c><00:31:22.520><c> Or</c><00:31:22.760><c> Vercel,</c><00:31:23.440><c> deploy</c><00:31:23.920><c> this</c>

00:31:24.230 --> 00:31:24.240 align:start position:0%
app app best. Or Vercel, deploy this
 

00:31:24.240 --> 00:31:26.470 align:start position:0%
app app best. Or Vercel, deploy this
app,<00:31:24.640><c> right?</c><00:31:25.440><c> And</c><00:31:25.680><c> if</c><00:31:25.800><c> you</c><00:31:25.880><c> scroll</c><00:31:26.160><c> down,</c><00:31:26.400><c> you</c>

00:31:26.470 --> 00:31:26.480 align:start position:0%
app, right? And if you scroll down, you
 

00:31:26.480 --> 00:31:28.350 align:start position:0%
app, right? And if you scroll down, you
can<00:31:26.640><c> see</c><00:31:26.840><c> that</c><00:31:27.000><c> this</c><00:31:27.200><c> has</c><00:31:27.440><c> this</c><00:31:27.760><c> app</c><00:31:28.080><c> and</c><00:31:28.200><c> then</c>

00:31:28.350 --> 00:31:28.360 align:start position:0%
can see that this has this app and then
 

00:31:28.360 --> 00:31:30.950 align:start position:0%
can see that this has this app and then
it<00:31:28.480><c> has</c><00:31:28.720><c> all</c><00:31:29.080><c> of</c><00:31:29.200><c> these</c><00:31:29.440><c> skills.</c><00:31:30.160><c> All</c><00:31:30.640><c> of</c><00:31:30.760><c> these</c>

00:31:30.950 --> 00:31:30.960 align:start position:0%
it has all of these skills. All of these
 

00:31:30.960 --> 00:31:32.710 align:start position:0%
it has all of these skills. All of these
different<00:31:31.320><c> skills.</c><00:31:31.680><c> Look</c><00:31:31.840><c> at</c><00:31:31.960><c> this.</c><00:31:32.240><c> It</c><00:31:32.360><c> has</c><00:31:32.600><c> a</c>

00:31:32.710 --> 00:31:32.720 align:start position:0%
different skills. Look at this. It has a
 

00:31:32.720 --> 00:31:35.910 align:start position:0%
different skills. Look at this. It has a
ton<00:31:33.440><c> a</c><00:31:33.520><c> ton</c><00:31:33.800><c> of</c><00:31:33.920><c> skills.</c><00:31:34.320><c> Vercel</c><00:31:34.800><c> CLI,</c><00:31:35.440><c> Vercel</c>

00:31:35.910 --> 00:31:35.920 align:start position:0%
ton a ton of skills. Vercel CLI, Vercel
 

00:31:35.920 --> 00:31:37.910 align:start position:0%
ton a ton of skills. Vercel CLI, Vercel
agent,<00:31:36.440><c> all</c><00:31:36.800><c> of</c><00:31:36.880><c> these.</c><00:31:37.120><c> And</c><00:31:37.360><c> obviously,</c>

00:31:37.910 --> 00:31:37.920 align:start position:0%
agent, all of these. And obviously,
 

00:31:37.920 --> 00:31:41.430 align:start position:0%
agent, all of these. And obviously,
these<00:31:38.320><c> skills</c><00:31:39.240><c> are</c><00:31:39.400><c> not</c><00:31:39.960><c> just</c><00:31:40.400><c> for</c><00:31:40.640><c> deploying,</c>

00:31:41.430 --> 00:31:41.440 align:start position:0%
these skills are not just for deploying,
 

00:31:41.440 --> 00:31:43.630 align:start position:0%
these skills are not just for deploying,
right?<00:31:41.760><c> Because</c><00:31:42.000><c> we</c><00:31:42.080><c> also</c><00:31:42.280><c> have</c><00:31:42.480><c> payments.</c><00:31:43.480><c> We</c>

00:31:43.630 --> 00:31:43.640 align:start position:0%
right? Because we also have payments. We
 

00:31:43.640 --> 00:31:46.630 align:start position:0%
right? Because we also have payments. We
have<00:31:43.920><c> best</c><00:31:44.240><c> practices.</c><00:31:45.440><c> We</c><00:31:45.640><c> have</c><00:31:46.320><c> all</c><00:31:46.560><c> of</c>

00:31:46.630 --> 00:31:46.640 align:start position:0%
have best practices. We have all of
 

00:31:46.640 --> 00:31:49.270 align:start position:0%
have best practices. We have all of
these<00:31:46.840><c> other</c><00:31:47.080><c> ones.</c><00:31:47.360><c> So,</c><00:31:47.560><c> these</c><00:31:48.120><c> skills</c>

00:31:49.270 --> 00:31:49.280 align:start position:0%
these other ones. So, these skills
 

00:31:49.280 --> 00:31:52.910 align:start position:0%
these other ones. So, these skills
essentially<00:31:50.000><c> map</c><00:31:51.160><c> to</c><00:31:51.320><c> different</c><00:31:52.280><c> parts</c><00:31:52.800><c> of</c>

00:31:52.910 --> 00:31:52.920 align:start position:0%
essentially map to different parts of
 

00:31:52.920 --> 00:31:55.230 align:start position:0%
essentially map to different parts of
Vercel,<00:31:53.520><c> to</c><00:31:53.640><c> different</c><00:31:54.120><c> features</c><00:31:54.720><c> of</c><00:31:54.840><c> Vercel.</c>

00:31:55.230 --> 00:31:55.240 align:start position:0%
Vercel, to different features of Vercel.
 

00:31:55.240 --> 00:31:57.710 align:start position:0%
Vercel, to different features of Vercel.
We're<00:31:55.360><c> not</c><00:31:55.640><c> just</c><00:31:55.880><c> talking</c><00:31:56.200><c> about,</c><00:31:57.040><c> you</c><00:31:57.200><c> know,</c>

00:31:57.710 --> 00:31:57.720 align:start position:0%
We're not just talking about, you know,
 

00:31:57.720 --> 00:31:59.310 align:start position:0%
We're not just talking about, you know,
deploying<00:31:58.280><c> your</c><00:31:58.520><c> app,</c><00:31:58.640><c> because</c><00:31:58.920><c> this</c><00:31:59.120><c> could</c>

00:31:59.310 --> 00:31:59.320 align:start position:0%
deploying your app, because this could
 

00:31:59.320 --> 00:32:01.790 align:start position:0%
deploying your app, because this could
be<00:31:59.440><c> just</c><00:31:59.720><c> a</c><00:31:59.760><c> skill,</c><00:32:00.240><c> deployment,</c><00:32:01.320><c> right?</c><00:32:01.640><c> This</c>

00:32:01.790 --> 00:32:01.800 align:start position:0%
be just a skill, deployment, right? This
 

00:32:01.800 --> 00:32:04.030 align:start position:0%
be just a skill, deployment, right? This
could<00:32:02.000><c> be</c><00:32:02.160><c> one</c><00:32:02.520><c> skill</c><00:32:02.840><c> that</c><00:32:02.960><c> I</c><00:32:03.040><c> may</c><00:32:03.240><c> need.</c><00:32:03.640><c> I</c><00:32:03.920><c> I</c>

00:32:04.030 --> 00:32:04.040 align:start position:0%
could be one skill that I may need. I I
 

00:32:04.040 --> 00:32:06.550 align:start position:0%
could be one skill that I may need. I I
may<00:32:04.240><c> not</c><00:32:04.600><c> need</c><00:32:04.880><c> all</c><00:32:05.040><c> of</c><00:32:05.120><c> these</c><00:32:05.320><c> other</c><00:32:05.520><c> skills.</c>

00:32:06.550 --> 00:32:06.560 align:start position:0%
may not need all of these other skills.
 

00:32:06.560 --> 00:32:09.070 align:start position:0%
may not need all of these other skills.
But<00:32:06.880><c> why</c><00:32:07.080><c> not?</c><00:32:07.520><c> You</c><00:32:07.600><c> know,</c><00:32:07.760><c> Codex</c><00:32:08.440><c> will</c><00:32:08.680><c> figure</c>

00:32:09.070 --> 00:32:09.080 align:start position:0%
But why not? You know, Codex will figure
 

00:32:09.080 --> 00:32:12.630 align:start position:0%
But why not? You know, Codex will figure
out<00:32:09.920><c> which</c><00:32:10.280><c> skill</c><00:32:10.640><c> it</c><00:32:10.760><c> needs</c><00:32:11.120><c> to</c><00:32:11.240><c> consult,</c>

00:32:12.630 --> 00:32:12.640 align:start position:0%
out which skill it needs to consult,
 

00:32:12.640 --> 00:32:14.310 align:start position:0%
out which skill it needs to consult,
you<00:32:12.720><c> know,</c><00:32:13.040><c> according</c><00:32:13.520><c> to</c><00:32:13.640><c> the</c><00:32:13.760><c> prompt</c><00:32:14.120><c> that</c><00:32:14.240><c> I</c>

00:32:14.310 --> 00:32:14.320 align:start position:0%
you know, according to the prompt that I
 

00:32:14.320 --> 00:32:15.710 align:start position:0%
you know, according to the prompt that I
give<00:32:14.560><c> it.</c><00:32:14.720><c> So,</c><00:32:14.920><c> it</c><00:32:15.040><c> doesn't</c><00:32:15.320><c> you</c><00:32:15.400><c> know,</c><00:32:15.560><c> it's</c>

00:32:15.710 --> 00:32:15.720 align:start position:0%
give it. So, it doesn't you know, it's
 

00:32:15.720 --> 00:32:17.310 align:start position:0%
give it. So, it doesn't you know, it's
not<00:32:15.920><c> a</c><00:32:16.000><c> big</c><00:32:16.240><c> deal</c><00:32:16.480><c> to</c><00:32:16.600><c> have</c><00:32:16.800><c> all</c><00:32:16.960><c> of</c><00:32:17.080><c> these</c>

00:32:17.310 --> 00:32:17.320 align:start position:0%
not a big deal to have all of these
 

00:32:17.320 --> 00:32:19.870 align:start position:0%
not a big deal to have all of these
enabled<00:32:18.080><c> if</c><00:32:18.280><c> I'm</c><00:32:18.480><c> using</c><00:32:18.840><c> Vercel.</c><00:32:19.480><c> And</c><00:32:19.600><c> like</c><00:32:19.800><c> I</c>

00:32:19.870 --> 00:32:19.880 align:start position:0%
enabled if I'm using Vercel. And like I
 

00:32:19.880 --> 00:32:22.670 align:start position:0%
enabled if I'm using Vercel. And like I
said,<00:32:20.120><c> this</c><00:32:20.320><c> allows</c><00:32:20.960><c> me</c><00:32:21.200><c> to</c><00:32:21.760><c> basically</c><00:32:22.360><c> bring</c>

00:32:22.670 --> 00:32:22.680 align:start position:0%
said, this allows me to basically bring
 

00:32:22.680 --> 00:32:25.550 align:start position:0%
said, this allows me to basically bring
Vercel<00:32:23.640><c> into</c><00:32:23.960><c> my</c><00:32:24.240><c> Codex</c><00:32:24.760><c> workflow.</c><00:32:25.240><c> That's</c>

00:32:25.550 --> 00:32:25.560 align:start position:0%
Vercel into my Codex workflow. That's
 

00:32:25.560 --> 00:32:27.910 align:start position:0%
Vercel into my Codex workflow. That's
the<00:32:25.680><c> beauty</c><00:32:26.080><c> of</c><00:32:26.280><c> these</c><00:32:26.480><c> plugins,</c><00:32:27.120><c> okay?</c><00:32:27.800><c> And</c>

00:32:27.910 --> 00:32:27.920 align:start position:0%
the beauty of these plugins, okay? And
 

00:32:27.920 --> 00:32:29.670 align:start position:0%
the beauty of these plugins, okay? And
that's<00:32:28.120><c> the</c><00:32:28.240><c> same</c><00:32:28.640><c> idea</c><00:32:29.040><c> with</c><00:32:29.200><c> all</c><00:32:29.360><c> of</c><00:32:29.480><c> these</c>

00:32:29.670 --> 00:32:29.680 align:start position:0%
that's the same idea with all of these
 

00:32:29.680 --> 00:32:31.430 align:start position:0%
that's the same idea with all of these
plugins.<00:32:30.160><c> You're</c><00:32:30.280><c> essentially</c><00:32:30.840><c> bringing</c><00:32:31.320><c> an</c>

00:32:31.430 --> 00:32:31.440 align:start position:0%
plugins. You're essentially bringing an
 

00:32:31.440 --> 00:32:34.790 align:start position:0%
plugins. You're essentially bringing an
external<00:32:31.920><c> system</c><00:32:32.840><c> and</c><00:32:33.120><c> letting</c><00:32:33.600><c> Codex</c><00:32:34.240><c> manage</c>

00:32:34.790 --> 00:32:34.800 align:start position:0%
external system and letting Codex manage
 

00:32:34.800 --> 00:32:37.750 align:start position:0%
external system and letting Codex manage
it<00:32:35.120><c> for</c><00:32:35.480><c> you.</c><00:32:35.840><c> Now,</c><00:32:36.120><c> automations</c><00:32:37.120><c> work</c><00:32:37.480><c> very,</c>

00:32:37.750 --> 00:32:37.760 align:start position:0%
it for you. Now, automations work very,
 

00:32:37.760 --> 00:32:39.910 align:start position:0%
it for you. Now, automations work very,
very<00:32:38.160><c> differently.</c><00:32:39.160><c> So,</c><00:32:39.360><c> if</c><00:32:39.480><c> you</c><00:32:39.560><c> click</c><00:32:39.800><c> on</c>

00:32:39.910 --> 00:32:39.920 align:start position:0%
very differently. So, if you click on
 

00:32:39.920 --> 00:32:41.630 align:start position:0%
very differently. So, if you click on
automations<00:32:40.640><c> here,</c><00:32:40.960><c> you</c><00:32:41.080><c> can</c><00:32:41.240><c> see</c><00:32:41.400><c> that</c>

00:32:41.630 --> 00:32:41.640 align:start position:0%
automations here, you can see that
 

00:32:41.640 --> 00:32:44.630 align:start position:0%
automations here, you can see that
automations,<00:32:42.840><c> they</c><00:32:43.040><c> allow</c><00:32:43.480><c> you</c><00:32:43.640><c> to</c><00:32:44.120><c> automate</c>

00:32:44.630 --> 00:32:44.640 align:start position:0%
automations, they allow you to automate
 

00:32:44.640 --> 00:32:47.510 align:start position:0%
automations, they allow you to automate
work<00:32:45.320><c> by</c><00:32:45.520><c> setting</c><00:32:46.000><c> up</c><00:32:46.160><c> scheduled</c><00:32:46.760><c> chats,</c>

00:32:47.510 --> 00:32:47.520 align:start position:0%
work by setting up scheduled chats,
 

00:32:47.520 --> 00:32:49.470 align:start position:0%
work by setting up scheduled chats,
okay?<00:32:47.800><c> And</c><00:32:47.920><c> you</c><00:32:47.960><c> can</c><00:32:48.160><c> learn</c><00:32:48.400><c> more</c><00:32:48.640><c> here.</c><00:32:49.280><c> Now,</c>

00:32:49.470 --> 00:32:49.480 align:start position:0%
okay? And you can learn more here. Now,
 

00:32:49.480 --> 00:32:50.510 align:start position:0%
okay? And you can learn more here. Now,
if<00:32:49.600><c> you</c><00:32:49.680><c> click</c><00:32:49.920><c> on</c><00:32:50.040><c> any</c><00:32:50.200><c> of</c><00:32:50.280><c> these</c>

00:32:50.510 --> 00:32:50.520 align:start position:0%
if you click on any of these
 

00:32:50.520 --> 00:32:53.270 align:start position:0%
if you click on any of these
automations,<00:32:51.240><c> you</c><00:32:51.440><c> can</c><00:32:51.720><c> see</c><00:32:52.200><c> exactly</c><00:32:53.040><c> how</c>

00:32:53.270 --> 00:32:53.280 align:start position:0%
automations, you can see exactly how
 

00:32:53.280 --> 00:32:54.430 align:start position:0%
automations, you can see exactly how
they're<00:32:53.440><c> going</c><00:32:53.560><c> to</c><00:32:53.640><c> be</c><00:32:53.760><c> working.</c><00:32:54.120><c> So,</c><00:32:54.240><c> if</c><00:32:54.360><c> I</c>

00:32:54.430 --> 00:32:54.440 align:start position:0%
they're going to be working. So, if I
 

00:32:54.440 --> 00:32:56.590 align:start position:0%
they're going to be working. So, if I
click<00:32:54.680><c> on</c><00:32:54.800><c> something</c><00:32:55.120><c> like</c><00:32:55.760><c> summarize</c>

00:32:56.590 --> 00:32:56.600 align:start position:0%
click on something like summarize
 

00:32:56.600 --> 00:32:59.470 align:start position:0%
click on something like summarize
yesterday's<00:32:57.320><c> Git</c><00:32:57.640><c> activity</c><00:32:58.160><c> for</c><00:32:58.320><c> standup,</c>

00:32:59.470 --> 00:32:59.480 align:start position:0%
yesterday's Git activity for standup,
 

00:32:59.480 --> 00:33:01.310 align:start position:0%
yesterday's Git activity for standup,
you<00:32:59.680><c> can</c><00:32:59.880><c> see</c><00:33:00.120><c> that</c><00:33:00.280><c> it</c><00:33:00.400><c> wants</c><00:33:00.720><c> to</c><00:33:00.800><c> create</c><00:33:01.160><c> an</c>

00:33:01.310 --> 00:33:01.320 align:start position:0%
you can see that it wants to create an
 

00:33:01.320 --> 00:33:03.510 align:start position:0%
you can see that it wants to create an
automation<00:33:01.880><c> for</c><00:33:02.120><c> me,</c><00:33:02.360><c> okay?</c><00:33:03.200><c> And</c><00:33:03.400><c> what</c>

00:33:03.510 --> 00:33:03.520 align:start position:0%
automation for me, okay? And what
 

00:33:03.520 --> 00:33:05.750 align:start position:0%
automation for me, okay? And what
exactly<00:33:04.080><c> is</c><00:33:04.200><c> it</c><00:33:04.280><c> trying</c><00:33:04.640><c> to</c><00:33:04.760><c> do?</c><00:33:05.080><c> Well,</c><00:33:05.520><c> it's</c>

00:33:05.750 --> 00:33:05.760 align:start position:0%
exactly is it trying to do? Well, it's
 

00:33:05.760 --> 00:33:07.670 align:start position:0%
exactly is it trying to do? Well, it's
essentially<00:33:06.400><c> trying</c><00:33:06.800><c> to</c><00:33:06.920><c> create</c><00:33:07.560><c> a</c>

00:33:07.670 --> 00:33:07.680 align:start position:0%
essentially trying to create a
 

00:33:07.680 --> 00:33:09.190 align:start position:0%
essentially trying to create a
conversation

00:33:09.190 --> 00:33:09.200 align:start position:0%
conversation
 

00:33:09.200 --> 00:33:11.830 align:start position:0%
conversation
that<00:33:09.600><c> will</c><00:33:09.800><c> be</c><00:33:10.000><c> repeatable,</c><00:33:11.040><c> okay?</c><00:33:11.440><c> So,</c><00:33:11.720><c> it</c>

00:33:11.830 --> 00:33:11.840 align:start position:0%
that will be repeatable, okay? So, it
 

00:33:11.840 --> 00:33:13.390 align:start position:0%
that will be repeatable, okay? So, it
creates<00:33:12.280><c> this</c><00:33:12.480><c> automation.</c><00:33:13.000><c> This</c><00:33:13.200><c> is</c><00:33:13.320><c> the</c>

00:33:13.390 --> 00:33:13.400 align:start position:0%
creates this automation. This is the
 

00:33:13.400 --> 00:33:15.830 align:start position:0%
creates this automation. This is the
name<00:33:13.680><c> of</c><00:33:13.760><c> the</c><00:33:13.840><c> automation,</c><00:33:14.920><c> right?</c><00:33:15.400><c> This</c><00:33:15.680><c> is</c>

00:33:15.830 --> 00:33:15.840 align:start position:0%
name of the automation, right? This is
 

00:33:15.840 --> 00:33:17.710 align:start position:0%
name of the automation, right? This is
the<00:33:15.960><c> prompt.</c><00:33:16.920><c> This</c><00:33:17.160><c> right</c><00:33:17.320><c> here</c><00:33:17.520><c> is</c><00:33:17.640><c> the</c>

00:33:17.710 --> 00:33:17.720 align:start position:0%
the prompt. This right here is the
 

00:33:17.720 --> 00:33:20.510 align:start position:0%
the prompt. This right here is the
prompt.<00:33:18.760><c> And</c><00:33:19.320><c> the</c><00:33:19.440><c> prompt</c><00:33:19.800><c> is</c><00:33:20.000><c> summarize</c>

00:33:20.510 --> 00:33:20.520 align:start position:0%
prompt. And the prompt is summarize
 

00:33:20.520 --> 00:33:22.910 align:start position:0%
prompt. And the prompt is summarize
yesterday's<00:33:21.040><c> Git</c><00:33:21.240><c> activity</c><00:33:21.680><c> for</c><00:33:21.880><c> standup,</c>

00:33:22.910 --> 00:33:22.920 align:start position:0%
yesterday's Git activity for standup,
 

00:33:22.920 --> 00:33:24.990 align:start position:0%
yesterday's Git activity for standup,
grounding<00:33:23.520><c> rules,</c><00:33:23.800><c> etc.,</c><00:33:24.240><c> etc.</c><00:33:24.680><c> We</c><00:33:24.840><c> can</c>

00:33:24.990 --> 00:33:25.000 align:start position:0%
grounding rules, etc., etc. We can
 

00:33:25.000 --> 00:33:27.430 align:start position:0%
grounding rules, etc., etc. We can
select<00:33:25.440><c> a</c><00:33:25.560><c> work</c><00:33:25.920><c> tree.</c><00:33:26.560><c> We</c><00:33:26.720><c> can</c><00:33:26.920><c> select</c><00:33:27.360><c> a</c>

00:33:27.430 --> 00:33:27.440 align:start position:0%
select a work tree. We can select a
 

00:33:27.440 --> 00:33:30.910 align:start position:0%
select a work tree. We can select a
project<00:33:28.160><c> here.</c><00:33:28.960><c> And</c><00:33:29.160><c> then</c><00:33:29.400><c> we</c><00:33:29.560><c> can</c><00:33:29.840><c> select</c><00:33:30.760><c> the</c>

00:33:30.910 --> 00:33:30.920 align:start position:0%
project here. And then we can select the
 

00:33:30.920 --> 00:33:34.070 align:start position:0%
project here. And then we can select the
time<00:33:31.760><c> where</c><00:33:32.280><c> it's</c><00:33:32.560><c> going</c><00:33:32.840><c> to</c><00:33:33.200><c> run</c><00:33:33.600><c> over</c><00:33:33.960><c> and</c>

00:33:34.070 --> 00:33:34.080 align:start position:0%
time where it's going to run over and
 

00:33:34.080 --> 00:33:36.310 align:start position:0%
time where it's going to run over and
over<00:33:34.320><c> again,</c><00:33:34.600><c> right?</c><00:33:35.040><c> So,</c><00:33:35.600><c> with</c><00:33:35.760><c> this</c><00:33:35.960><c> kind</c><00:33:36.200><c> of</c>

00:33:36.310 --> 00:33:36.320 align:start position:0%
over again, right? So, with this kind of
 

00:33:36.320 --> 00:33:38.510 align:start position:0%
over again, right? So, with this kind of
automation,<00:33:37.120><c> you</c><00:33:37.320><c> may</c><00:33:37.480><c> want</c><00:33:37.720><c> to</c><00:33:37.920><c> run</c><00:33:38.160><c> it</c><00:33:38.320><c> on</c>

00:33:38.510 --> 00:33:38.520 align:start position:0%
automation, you may want to run it on
 

00:33:38.520 --> 00:33:41.030 align:start position:0%
automation, you may want to run it on
weekdays<00:33:39.200><c> at</c><00:33:39.440><c> 9:00</c><00:33:39.760><c> a.m.</c><00:33:40.360><c> But,</c><00:33:40.520><c> you</c><00:33:40.600><c> can</c><00:33:40.760><c> also</c>

00:33:41.030 --> 00:33:41.040 align:start position:0%
weekdays at 9:00 a.m. But, you can also
 

00:33:41.040 --> 00:33:43.830 align:start position:0%
weekdays at 9:00 a.m. But, you can also
select<00:33:41.520><c> it,</c><00:33:41.640><c> make</c><00:33:41.840><c> it</c><00:33:42.040><c> hourly,</c><00:33:43.000><c> daily,</c>

00:33:43.830 --> 00:33:43.840 align:start position:0%
select it, make it hourly, daily,
 

00:33:43.840 --> 00:33:46.990 align:start position:0%
select it, make it hourly, daily,
weekly,<00:33:44.680><c> etc.,</c><00:33:45.280><c> etc.</c><00:33:46.200><c> And</c><00:33:46.440><c> you</c><00:33:46.520><c> can</c><00:33:46.680><c> also</c>

00:33:46.990 --> 00:33:47.000 align:start position:0%
weekly, etc., etc. And you can also
 

00:33:47.000 --> 00:33:49.190 align:start position:0%
weekly, etc., etc. And you can also
change<00:33:47.280><c> the</c><00:33:47.400><c> time,</c><00:33:47.800><c> obviously.</c><00:33:48.440><c> Now,</c><00:33:48.680><c> here</c>

00:33:49.190 --> 00:33:49.200 align:start position:0%
change the time, obviously. Now, here
 

00:33:49.200 --> 00:33:51.830 align:start position:0%
change the time, obviously. Now, here
you<00:33:49.360><c> can</c><00:33:49.520><c> change</c><00:33:50.040><c> the</c><00:33:50.160><c> model,</c><00:33:51.160><c> and</c><00:33:51.360><c> here</c><00:33:51.720><c> you</c>

00:33:51.830 --> 00:33:51.840 align:start position:0%
you can change the model, and here you
 

00:33:51.840 --> 00:33:54.030 align:start position:0%
you can change the model, and here you
can<00:33:52.040><c> change</c><00:33:52.440><c> the</c><00:33:52.640><c> reasoning</c><00:33:53.320><c> level.</c><00:33:53.800><c> Now,</c>

00:33:54.030 --> 00:33:54.040 align:start position:0%
can change the reasoning level. Now,
 

00:33:54.040 --> 00:33:55.430 align:start position:0%
can change the reasoning level. Now,
with<00:33:54.160><c> this</c><00:33:54.320><c> kind</c><00:33:54.520><c> of</c><00:33:54.640><c> automation,</c><00:33:55.160><c> you</c><00:33:55.240><c> don't</c>

00:33:55.430 --> 00:33:55.440 align:start position:0%
with this kind of automation, you don't
 

00:33:55.440 --> 00:33:57.830 align:start position:0%
with this kind of automation, you don't
really<00:33:55.640><c> need</c><00:33:55.960><c> a</c><00:33:56.120><c> high</c><00:33:56.480><c> reasoning.</c><00:33:57.120><c> Medium</c><00:33:57.680><c> is</c>

00:33:57.830 --> 00:33:57.840 align:start position:0%
really need a high reasoning. Medium is
 

00:33:57.840 --> 00:34:00.150 align:start position:0%
really need a high reasoning. Medium is
going<00:33:57.960><c> to</c><00:33:58.040><c> be</c><00:33:58.160><c> just</c><00:33:58.640><c> fine.</c><00:33:59.320><c> And</c><00:33:59.600><c> after</c><00:33:59.960><c> you're</c>

00:34:00.150 --> 00:34:00.160 align:start position:0%
going to be just fine. And after you're
 

00:34:00.160 --> 00:34:02.110 align:start position:0%
going to be just fine. And after you're
done,<00:34:00.440><c> you</c><00:34:00.560><c> can</c><00:34:00.680><c> simply</c><00:34:01.040><c> click</c><00:34:01.360><c> create,</c><00:34:01.960><c> and</c>

00:34:02.110 --> 00:34:02.120 align:start position:0%
done, you can simply click create, and
 

00:34:02.120 --> 00:34:03.910 align:start position:0%
done, you can simply click create, and
now<00:34:02.440><c> you're</c><00:34:02.640><c> going</c><00:34:02.760><c> to</c><00:34:02.840><c> have</c><00:34:03.000><c> an</c><00:34:03.160><c> automation</c>

00:34:03.910 --> 00:34:03.920 align:start position:0%
now you're going to have an automation
 

00:34:03.920 --> 00:34:08.149 align:start position:0%
now you're going to have an automation
that<00:34:04.200><c> will</c><00:34:04.520><c> run</c><00:34:05.400><c> every</c><00:34:05.960><c> weekday</c><00:34:06.680><c> at</c><00:34:06.920><c> 9:00</c><00:34:07.320><c> a.m.</c>

00:34:08.149 --> 00:34:08.159 align:start position:0%
that will run every weekday at 9:00 a.m.
 

00:34:08.159 --> 00:34:10.110 align:start position:0%
that will run every weekday at 9:00 a.m.
running<00:34:08.760><c> this</c><00:34:09.120><c> prompt.</c><00:34:09.600><c> And</c><00:34:09.720><c> And</c><00:34:09.840><c> remember,</c>

00:34:10.110 --> 00:34:10.120 align:start position:0%
running this prompt. And And remember,
 

00:34:10.120 --> 00:34:12.350 align:start position:0%
running this prompt. And And remember,
this<00:34:10.320><c> is</c><00:34:10.480><c> a</c><00:34:10.560><c> special</c><00:34:11.080><c> prompt.</c><00:34:11.639><c> Here,</c><00:34:12.040><c> you're</c>

00:34:12.350 --> 00:34:12.360 align:start position:0%
this is a special prompt. Here, you're
 

00:34:12.360 --> 00:34:14.869 align:start position:0%
this is a special prompt. Here, you're
asking<00:34:12.840><c> it</c><00:34:13.040><c> to</c><00:34:13.159><c> consult</c><00:34:13.679><c> Git</c><00:34:13.879><c> activity.</c><00:34:14.760><c> And</c>

00:34:14.869 --> 00:34:14.879 align:start position:0%
asking it to consult Git activity. And
 

00:34:14.879 --> 00:34:17.669 align:start position:0%
asking it to consult Git activity. And
so,<00:34:15.040><c> the</c><00:34:15.159><c> idea</c><00:34:15.600><c> is</c><00:34:16.240><c> you</c><00:34:16.440><c> may</c><00:34:16.679><c> have,</c><00:34:17.360><c> you</c><00:34:17.480><c> know,</c>

00:34:17.669 --> 00:34:17.679 align:start position:0%
so, the idea is you may have, you know,
 

00:34:17.679 --> 00:34:21.270 align:start position:0%
so, the idea is you may have, you know,
Git<00:34:18.080><c> connected</c><00:34:18.800><c> via</c><00:34:19.200><c> a</c><00:34:19.360><c> plugin</c><00:34:20.399><c> or</c><00:34:20.800><c> something</c>

00:34:21.270 --> 00:34:21.280 align:start position:0%
Git connected via a plugin or something
 

00:34:21.280 --> 00:34:23.830 align:start position:0%
Git connected via a plugin or something
else,<00:34:22.040><c> and</c><00:34:22.240><c> it's</c><00:34:22.440><c> going</c><00:34:22.679><c> to</c><00:34:22.840><c> connect</c><00:34:23.360><c> to</c><00:34:23.480><c> your</c>

00:34:23.830 --> 00:34:23.840 align:start position:0%
else, and it's going to connect to your
 

00:34:23.840 --> 00:34:25.950 align:start position:0%
else, and it's going to connect to your
Git<00:34:24.200><c> environment,</c><00:34:25.200><c> and</c><00:34:25.360><c> then</c><00:34:25.560><c> figure</c>

00:34:25.950 --> 00:34:25.960 align:start position:0%
Git environment, and then figure
 

00:34:25.960 --> 00:34:27.310 align:start position:0%
Git environment, and then figure
something<00:34:26.399><c> out</c><00:34:26.639><c> for</c><00:34:26.879><c> you.</c><00:34:26.919><c> And</c><00:34:27.000><c> that's</c><00:34:27.200><c> going</c>

00:34:27.310 --> 00:34:27.320 align:start position:0%
something out for you. And that's going
 

00:34:27.320 --> 00:34:29.790 align:start position:0%
something out for you. And that's going
to<00:34:27.480><c> run</c><00:34:27.840><c> every</c><00:34:28.280><c> weekday</c><00:34:28.879><c> at</c><00:34:29.080><c> 9:00</c><00:34:29.440><c> a.m.,</c>

00:34:29.790 --> 00:34:29.800 align:start position:0%
to run every weekday at 9:00 a.m.,
 

00:34:29.800 --> 00:34:32.350 align:start position:0%
to run every weekday at 9:00 a.m.,
right?<00:34:30.080><c> So,</c><00:34:30.200><c> instead</c><00:34:30.520><c> of</c><00:34:30.679><c> you</c><00:34:30.840><c> needing</c><00:34:31.919><c> to,</c>

00:34:32.350 --> 00:34:32.360 align:start position:0%
right? So, instead of you needing to,
 

00:34:32.360 --> 00:34:35.310 align:start position:0%
right? So, instead of you needing to,
you<00:34:32.520><c> know,</c><00:34:32.840><c> jump</c><00:34:33.320><c> into</c><00:34:33.560><c> Codox</c><00:34:34.120><c> first</c><00:34:34.520><c> thing</c>

00:34:35.310 --> 00:34:35.320 align:start position:0%
you know, jump into Codox first thing
 

00:34:35.320 --> 00:34:38.550 align:start position:0%
you know, jump into Codox first thing
weekday<00:34:36.280><c> morning</c><00:34:37.280><c> and</c><00:34:37.560><c> execute</c><00:34:38.000><c> this</c><00:34:38.200><c> prompt</c>

00:34:38.550 --> 00:34:38.560 align:start position:0%
weekday morning and execute this prompt
 

00:34:38.560 --> 00:34:41.070 align:start position:0%
weekday morning and execute this prompt
manually,<00:34:39.200><c> you</c><00:34:39.440><c> can</c><00:34:39.679><c> create</c><00:34:40.080><c> an</c><00:34:40.280><c> automation</c>

00:34:41.070 --> 00:34:41.080 align:start position:0%
manually, you can create an automation
 

00:34:41.080 --> 00:34:42.990 align:start position:0%
manually, you can create an automation
to<00:34:41.240><c> do</c><00:34:41.480><c> just</c><00:34:41.800><c> that.</c><00:34:42.159><c> If</c><00:34:42.280><c> you</c><00:34:42.399><c> scroll</c><00:34:42.679><c> down,</c><00:34:42.879><c> you</c>

00:34:42.990 --> 00:34:43.000 align:start position:0%
to do just that. If you scroll down, you
 

00:34:43.000 --> 00:34:44.909 align:start position:0%
to do just that. If you scroll down, you
can<00:34:43.120><c> see</c><00:34:43.240><c> some</c><00:34:43.440><c> other</c><00:34:43.679><c> automations</c><00:34:44.280><c> here.</c><00:34:44.720><c> You</c>

00:34:44.909 --> 00:34:44.919 align:start position:0%
can see some other automations here. You
 

00:34:44.919 --> 00:34:47.590 align:start position:0%
can see some other automations here. You
have<00:34:45.159><c> incidents,</c><00:34:46.200><c> you</c><00:34:46.360><c> have</c><00:34:46.600><c> code</c><00:34:47.000><c> quality,</c>

00:34:47.590 --> 00:34:47.600 align:start position:0%
have incidents, you have code quality,
 

00:34:47.600 --> 00:34:49.430 align:start position:0%
have incidents, you have code quality,
right?<00:34:47.919><c> Maybe</c><00:34:48.159><c> you</c><00:34:48.280><c> want</c><00:34:48.399><c> to</c><00:34:48.520><c> run</c><00:34:48.879><c> a</c><00:34:49.000><c> code</c>

00:34:49.430 --> 00:34:49.440 align:start position:0%
right? Maybe you want to run a code
 

00:34:49.440 --> 00:34:52.550 align:start position:0%
right? Maybe you want to run a code
quality<00:34:50.000><c> check</c><00:34:50.919><c> every</c><00:34:51.280><c> 24</c><00:34:51.879><c> hours.</c><00:34:52.280><c> Well,</c><00:34:52.440><c> you</c>

00:34:52.550 --> 00:34:52.560 align:start position:0%
quality check every 24 hours. Well, you
 

00:34:52.560 --> 00:34:55.389 align:start position:0%
quality check every 24 hours. Well, you
can<00:34:52.679><c> click</c><00:34:52.960><c> here</c><00:34:53.280><c> daily</c><00:34:54.240><c> at</c><00:34:54.480><c> 9:00</c><00:34:54.879><c> a.m.,</c>

00:34:55.389 --> 00:34:55.399 align:start position:0%
can click here daily at 9:00 a.m.,
 

00:34:55.399 --> 00:34:58.230 align:start position:0%
can click here daily at 9:00 a.m.,
right?<00:34:55.760><c> Scan</c><00:34:56.280><c> recent</c><00:34:56.760><c> commits</c><00:34:57.800><c> since</c><00:34:58.120><c> the</c>

00:34:58.230 --> 00:34:58.240 align:start position:0%
right? Scan recent commits since the
 

00:34:58.240 --> 00:35:01.550 align:start position:0%
right? Scan recent commits since the
last<00:34:58.720><c> run</c><00:34:59.400><c> or</c><00:34:59.640><c> last</c><00:35:00.000><c> 24</c><00:35:00.520><c> hours</c><00:35:00.840><c> for</c><00:35:01.040><c> likely</c>

00:35:01.550 --> 00:35:01.560 align:start position:0%
last run or last 24 hours for likely
 

00:35:01.560 --> 00:35:04.710 align:start position:0%
last run or last 24 hours for likely
bugs<00:35:02.480><c> and</c><00:35:02.720><c> propose</c><00:35:03.320><c> minimal</c><00:35:03.840><c> fixes.</c><00:35:04.480><c> Okay,</c>

00:35:04.710 --> 00:35:04.720 align:start position:0%
bugs and propose minimal fixes. Okay,
 

00:35:04.720 --> 00:35:07.550 align:start position:0%
bugs and propose minimal fixes. Okay,
that's<00:35:05.000><c> another</c><00:35:05.720><c> very,</c><00:35:06.160><c> very</c><00:35:06.680><c> useful</c>

00:35:07.550 --> 00:35:07.560 align:start position:0%
that's another very, very useful
 

00:35:07.560 --> 00:35:10.750 align:start position:0%
that's another very, very useful
automation,<00:35:08.680><c> right?</c><00:35:09.360><c> Repo</c><00:35:09.840><c> maintenance.</c><00:35:10.600><c> You</c>

00:35:10.750 --> 00:35:10.760 align:start position:0%
automation, right? Repo maintenance. You
 

00:35:10.760 --> 00:35:14.030 align:start position:0%
automation, right? Repo maintenance. You
have<00:35:11.000><c> here</c><00:35:11.480><c> growth</c><00:35:12.680><c> and</c><00:35:12.880><c> exploration,</c><00:35:13.800><c> right?</c>

00:35:14.030 --> 00:35:14.040 align:start position:0%
have here growth and exploration, right?
 

00:35:14.040 --> 00:35:17.670 align:start position:0%
have here growth and exploration, right?
Click<00:35:14.280><c> here</c><00:35:14.640><c> from</c><00:35:15.000><c> recent</c><00:35:15.440><c> PRs</c><00:35:16.520><c> and</c><00:35:16.680><c> reviews,</c>

00:35:17.670 --> 00:35:17.680 align:start position:0%
Click here from recent PRs and reviews,
 

00:35:17.680 --> 00:35:20.270 align:start position:0%
Click here from recent PRs and reviews,
suggest<00:35:18.480><c> next</c><00:35:18.920><c> skills</c><00:35:19.360><c> to</c><00:35:19.520><c> deepen.</c><00:35:19.960><c> This</c><00:35:20.120><c> is</c>

00:35:20.270 --> 00:35:20.280 align:start position:0%
suggest next skills to deepen. This is
 

00:35:20.280 --> 00:35:23.030 align:start position:0%
suggest next skills to deepen. This is
great,<00:35:20.680><c> right?</c><00:35:20.960><c> So,</c><00:35:21.600><c> automations,</c><00:35:22.800><c> they</c>

00:35:23.030 --> 00:35:23.040 align:start position:0%
great, right? So, automations, they
 

00:35:23.040 --> 00:35:24.710 align:start position:0%
great, right? So, automations, they
could<00:35:23.200><c> be</c><00:35:23.360><c> used</c><00:35:23.640><c> for</c><00:35:23.760><c> pretty</c><00:35:23.960><c> much</c><00:35:24.240><c> anything,</c>

00:35:24.710 --> 00:35:24.720 align:start position:0%
could be used for pretty much anything,
 

00:35:24.720 --> 00:35:26.150 align:start position:0%
could be used for pretty much anything,
right?<00:35:25.040><c> And</c><00:35:25.280><c> they</c><00:35:25.600><c> are,</c><00:35:25.880><c> you</c><00:35:26.000><c> know,</c><00:35:26.120><c> it</c>

00:35:26.150 --> 00:35:26.160 align:start position:0%
right? And they are, you know, it
 

00:35:26.160 --> 00:35:27.830 align:start position:0%
right? And they are, you know, it
doesn't<00:35:26.400><c> really</c><00:35:26.600><c> matter</c><00:35:26.960><c> what</c><00:35:27.080><c> kind</c><00:35:27.280><c> of</c><00:35:27.440><c> niche</c>

00:35:27.830 --> 00:35:27.840 align:start position:0%
doesn't really matter what kind of niche
 

00:35:27.840 --> 00:35:29.110 align:start position:0%
doesn't really matter what kind of niche
you're<00:35:28.040><c> in.</c><00:35:28.160><c> You</c><00:35:28.280><c> don't</c><00:35:28.480><c> need</c><00:35:28.760><c> to</c><00:35:28.880><c> be</c><00:35:29.000><c> in</c>

00:35:29.110 --> 00:35:29.120 align:start position:0%
you're in. You don't need to be in
 

00:35:29.120 --> 00:35:31.550 align:start position:0%
you're in. You don't need to be in
software<00:35:29.560><c> development</c><00:35:30.720><c> or</c><00:35:30.920><c> project</c>

00:35:31.550 --> 00:35:31.560 align:start position:0%
software development or project
 

00:35:31.560 --> 00:35:33.350 align:start position:0%
software development or project
management<00:35:32.280><c> or</c><00:35:32.360><c> anything</c><00:35:32.720><c> like</c><00:35:32.960><c> that.</c><00:35:33.240><c> You</c>

00:35:33.350 --> 00:35:33.360 align:start position:0%
management or anything like that. You
 

00:35:33.360 --> 00:35:35.350 align:start position:0%
management or anything like that. You
can<00:35:33.480><c> be</c><00:35:33.640><c> a</c><00:35:33.760><c> writer,</c><00:35:34.680><c> right?</c><00:35:35.000><c> You</c><00:35:35.120><c> want</c><00:35:35.280><c> a</c>

00:35:35.350 --> 00:35:35.360 align:start position:0%
can be a writer, right? You want a
 

00:35:35.360 --> 00:35:37.550 align:start position:0%
can be a writer, right? You want a
status.<00:35:35.960><c> You're</c><00:35:36.120><c> writing</c><00:35:36.480><c> maybe</c><00:35:36.720><c> 1,000</c><00:35:37.280><c> words</c>

00:35:37.550 --> 00:35:37.560 align:start position:0%
status. You're writing maybe 1,000 words
 

00:35:37.560 --> 00:35:39.190 align:start position:0%
status. You're writing maybe 1,000 words
every<00:35:37.840><c> day.</c><00:35:38.280><c> You</c><00:35:38.400><c> know,</c><00:35:38.560><c> you</c><00:35:38.720><c> can</c><00:35:38.880><c> have</c><00:35:39.080><c> an</c>

00:35:39.190 --> 00:35:39.200 align:start position:0%
every day. You know, you can have an
 

00:35:39.200 --> 00:35:41.790 align:start position:0%
every day. You know, you can have an
automation<00:35:39.920><c> that</c><00:35:40.200><c> checks</c><00:35:40.800><c> for</c><00:35:41.160><c> spelling,</c>

00:35:41.790 --> 00:35:41.800 align:start position:0%
automation that checks for spelling,
 

00:35:41.800 --> 00:35:44.230 align:start position:0%
automation that checks for spelling,
grammar<00:35:42.400><c> errors</c><00:35:42.840><c> that</c><00:35:43.040><c> you</c><00:35:43.120><c> may</c><00:35:43.280><c> have</c><00:35:43.480><c> done,</c>

00:35:44.230 --> 00:35:44.240 align:start position:0%
grammar errors that you may have done,
 

00:35:44.240 --> 00:35:46.590 align:start position:0%
grammar errors that you may have done,
and<00:35:44.440><c> then</c><00:35:44.680><c> it</c><00:35:44.800><c> may</c><00:35:45.040><c> suggest</c><00:35:45.720><c> some</c><00:35:45.920><c> fixes</c><00:35:46.480><c> and</c>

00:35:46.590 --> 00:35:46.600 align:start position:0%
and then it may suggest some fixes and
 

00:35:46.600 --> 00:35:48.510 align:start position:0%
and then it may suggest some fixes and
also<00:35:46.840><c> another</c><00:35:47.160><c> automation</c><00:35:47.840><c> that</c><00:35:48.240><c> gives</c><00:35:48.440><c> you</c>

00:35:48.510 --> 00:35:48.520 align:start position:0%
also another automation that gives you
 

00:35:48.520 --> 00:35:50.190 align:start position:0%
also another automation that gives you
more<00:35:48.760><c> ideas,</c><00:35:49.280><c> you</c><00:35:49.360><c> know,</c><00:35:49.480><c> to</c><00:35:49.640><c> break</c><00:35:49.960><c> through</c>

00:35:50.190 --> 00:35:50.200 align:start position:0%
more ideas, you know, to break through
 

00:35:50.200 --> 00:35:52.470 align:start position:0%
more ideas, you know, to break through
writer's<00:35:50.600><c> block.</c><00:35:51.280><c> And</c><00:35:51.440><c> that</c><00:35:51.680><c> can</c><00:35:51.880><c> run</c><00:35:52.160><c> every</c>

00:35:52.470 --> 00:35:52.480 align:start position:0%
writer's block. And that can run every
 

00:35:52.480 --> 00:35:55.870 align:start position:0%
writer's block. And that can run every
morning<00:35:53.120><c> at</c><00:35:53.440><c> 9:00</c><00:35:53.920><c> or</c><00:35:54.080><c> 10:00</c><00:35:54.440><c> a.m.,</c><00:35:55.000><c> okay?</c><00:35:55.760><c> And</c>

00:35:55.870 --> 00:35:55.880 align:start position:0%
morning at 9:00 or 10:00 a.m., okay? And
 

00:35:55.880 --> 00:35:59.510 align:start position:0%
morning at 9:00 or 10:00 a.m., okay? And
so,<00:35:56.040><c> automations</c><00:35:56.760><c> are</c><00:35:57.000><c> very,</c><00:35:57.720><c> very</c><00:35:58.200><c> useful</c><00:35:59.160><c> if</c>

00:35:59.510 --> 00:35:59.520 align:start position:0%
so, automations are very, very useful if
 

00:35:59.520 --> 00:36:01.750 align:start position:0%
so, automations are very, very useful if
you<00:35:59.680><c> need</c><00:36:00.120><c> some</c><00:36:00.320><c> kind</c><00:36:00.640><c> of</c><00:36:00.800><c> a</c><00:36:00.880><c> repeatable</c>

00:36:01.750 --> 00:36:01.760 align:start position:0%
you need some kind of a repeatable
 

00:36:01.760 --> 00:36:04.790 align:start position:0%
you need some kind of a repeatable
structure<00:36:02.960><c> in</c><00:36:03.160><c> your</c><00:36:03.640><c> workflows.</c><00:36:04.360><c> And</c><00:36:04.520><c> I</c><00:36:04.600><c> want</c>

00:36:04.790 --> 00:36:04.800 align:start position:0%
structure in your workflows. And I want
 

00:36:04.800 --> 00:36:08.150 align:start position:0%
structure in your workflows. And I want
to<00:36:04.880><c> talk</c><00:36:05.200><c> a</c><00:36:05.240><c> little</c><00:36:05.520><c> bit</c><00:36:05.640><c> about</c><00:36:06.000><c> MCP.</c><00:36:06.680><c> So,</c><00:36:06.880><c> MCP</c>

00:36:08.150 --> 00:36:08.160 align:start position:0%
to talk a little bit about MCP. So, MCP
 

00:36:08.160 --> 00:36:11.550 align:start position:0%
to talk a little bit about MCP. So, MCP
or<00:36:08.480><c> model</c><00:36:09.040><c> context</c><00:36:09.680><c> protocol</c><00:36:10.240><c> is</c><00:36:10.560><c> very,</c><00:36:11.160><c> very</c>

00:36:11.550 --> 00:36:11.560 align:start position:0%
or model context protocol is very, very
 

00:36:11.560 --> 00:36:13.790 align:start position:0%
or model context protocol is very, very
important,<00:36:12.280><c> okay?</c><00:36:13.000><c> So,</c><00:36:13.160><c> if</c><00:36:13.320><c> you</c><00:36:13.440><c> press</c>

00:36:13.790 --> 00:36:13.800 align:start position:0%
important, okay? So, if you press
 

00:36:13.800 --> 00:36:16.710 align:start position:0%
important, okay? So, if you press
command<00:36:14.520><c> comma</c><00:36:15.280><c> or</c><00:36:15.560><c> you</c><00:36:15.680><c> go</c><00:36:15.920><c> into</c><00:36:16.200><c> settings</c>

00:36:16.710 --> 00:36:16.720 align:start position:0%
command comma or you go into settings
 

00:36:16.720 --> 00:36:17.950 align:start position:0%
command comma or you go into settings
over<00:36:16.920><c> here,</c><00:36:17.120><c> you're</c><00:36:17.280><c> going</c><00:36:17.440><c> to</c><00:36:17.520><c> be</c><00:36:17.600><c> on</c><00:36:17.720><c> this</c>

00:36:17.950 --> 00:36:17.960 align:start position:0%
over here, you're going to be on this
 

00:36:17.960 --> 00:36:20.470 align:start position:0%
over here, you're going to be on this
screen.<00:36:18.280><c> And</c><00:36:18.400><c> if</c><00:36:18.520><c> you</c><00:36:18.640><c> choose</c><00:36:18.880><c> MCP</c><00:36:19.360><c> servers,</c>

00:36:20.470 --> 00:36:20.480 align:start position:0%
screen. And if you choose MCP servers,
 

00:36:20.480 --> 00:36:23.430 align:start position:0%
screen. And if you choose MCP servers,
you're<00:36:20.680><c> going</c><00:36:20.840><c> to</c><00:36:20.920><c> see</c><00:36:21.320><c> all</c><00:36:21.840><c> your</c><00:36:22.240><c> MCP</c><00:36:22.840><c> servers</c>

00:36:23.430 --> 00:36:23.440 align:start position:0%
you're going to see all your MCP servers
 

00:36:23.440 --> 00:36:25.390 align:start position:0%
you're going to see all your MCP servers
that<00:36:23.640><c> you</c><00:36:23.760><c> have</c><00:36:24.000><c> here</c><00:36:24.200><c> configured,</c><00:36:25.200><c> and</c><00:36:25.320><c> you</c>

00:36:25.390 --> 00:36:25.400 align:start position:0%
that you have here configured, and you
 

00:36:25.400 --> 00:36:27.710 align:start position:0%
that you have here configured, and you
can<00:36:25.560><c> also</c><00:36:26.000><c> see</c><00:36:26.280><c> whether</c><00:36:26.720><c> they're</c><00:36:27.080><c> enabled</c><00:36:27.600><c> or</c>

00:36:27.710 --> 00:36:27.720 align:start position:0%
can also see whether they're enabled or
 

00:36:27.720 --> 00:36:30.630 align:start position:0%
can also see whether they're enabled or
not.<00:36:28.120><c> Now,</c><00:36:28.280><c> an</c><00:36:28.400><c> MCP</c><00:36:28.880><c> server</c><00:36:29.760><c> is</c><00:36:29.960><c> basically</c><00:36:30.520><c> a</c>

00:36:30.630 --> 00:36:30.640 align:start position:0%
not. Now, an MCP server is basically a
 

00:36:30.640 --> 00:36:33.990 align:start position:0%
not. Now, an MCP server is basically a
server.<00:36:31.360><c> It's</c><00:36:31.560><c> a</c><00:36:31.640><c> remote</c><00:36:32.120><c> system</c><00:36:33.160><c> that</c><00:36:33.600><c> your</c>

00:36:33.990 --> 00:36:34.000 align:start position:0%
server. It's a remote system that your
 

00:36:34.000 --> 00:36:36.430 align:start position:0%
server. It's a remote system that your
Codex<00:36:34.680><c> instance</c><00:36:35.280><c> can</c><00:36:35.520><c> connect</c><00:36:35.960><c> to.</c><00:36:36.160><c> So,</c><00:36:36.320><c> as</c>

00:36:36.430 --> 00:36:36.440 align:start position:0%
Codex instance can connect to. So, as
 

00:36:36.440 --> 00:36:37.790 align:start position:0%
Codex instance can connect to. So, as
you<00:36:36.520><c> can</c><00:36:36.680><c> see,</c><00:36:36.800><c> I</c><00:36:36.840><c> have</c><00:36:36.960><c> a</c><00:36:37.040><c> bunch</c><00:36:37.280><c> of</c><00:36:37.400><c> MCP</c>

00:36:37.790 --> 00:36:37.800 align:start position:0%
you can see, I have a bunch of MCP
 

00:36:37.800 --> 00:36:39.830 align:start position:0%
you can see, I have a bunch of MCP
servers<00:36:38.320><c> here</c><00:36:38.920><c> that</c><00:36:39.040><c> do</c><00:36:39.240><c> all</c><00:36:39.480><c> kinds</c><00:36:39.760><c> of</c>

00:36:39.830 --> 00:36:39.840 align:start position:0%
servers here that do all kinds of
 

00:36:39.840 --> 00:36:41.550 align:start position:0%
servers here that do all kinds of
interesting<00:36:40.320><c> things.</c><00:36:40.760><c> For</c><00:36:40.880><c> instance,</c><00:36:41.240><c> I</c><00:36:41.360><c> have</c>

00:36:41.550 --> 00:36:41.560 align:start position:0%
interesting things. For instance, I have
 

00:36:41.560 --> 00:36:45.110 align:start position:0%
interesting things. For instance, I have
here<00:36:42.160><c> a</c><00:36:42.320><c> Stitch</c><00:36:42.960><c> MCP</c><00:36:43.560><c> server</c><00:36:44.040><c> configured.</c><00:36:45.000><c> I</c>

00:36:45.110 --> 00:36:45.120 align:start position:0%
here a Stitch MCP server configured. I
 

00:36:45.120 --> 00:36:48.550 align:start position:0%
here a Stitch MCP server configured. I
have<00:36:45.400><c> here</c><00:36:45.680><c> a</c><00:36:45.760><c> Superbase</c><00:36:46.480><c> MCP</c><00:36:47.000><c> server.</c><00:36:48.040><c> I</c><00:36:48.160><c> also</c>

00:36:48.550 --> 00:36:48.560 align:start position:0%
have here a Superbase MCP server. I also
 

00:36:48.560 --> 00:36:50.470 align:start position:0%
have here a Superbase MCP server. I also
have,<00:36:49.040><c> you</c><00:36:49.120><c> know,</c><00:36:49.280><c> Flow</c><00:36:49.560><c> Upload</c><00:36:49.880><c> Designer,</c>

00:36:50.470 --> 00:36:50.480 align:start position:0%
have, you know, Flow Upload Designer,
 

00:36:50.480 --> 00:36:53.750 align:start position:0%
have, you know, Flow Upload Designer,
Flow<00:36:50.880><c> Base,</c><00:36:51.280><c> a</c><00:36:51.360><c> bunch</c><00:36:51.720><c> of</c><00:36:51.840><c> apps</c><00:36:52.760><c> that</c><00:36:53.160><c> support</c>

00:36:53.750 --> 00:36:53.760 align:start position:0%
Flow Base, a bunch of apps that support
 

00:36:53.760 --> 00:36:57.830 align:start position:0%
Flow Base, a bunch of apps that support
MCP.<00:36:55.240><c> And</c><00:36:55.640><c> when</c><00:36:55.840><c> you</c><00:36:55.960><c> connect</c><00:36:56.400><c> to</c><00:36:56.520><c> them,</c><00:36:56.880><c> Codex</c>

00:36:57.830 --> 00:36:57.840 align:start position:0%
MCP. And when you connect to them, Codex
 

00:36:57.840 --> 00:36:59.990 align:start position:0%
MCP. And when you connect to them, Codex
is<00:36:58.120><c> acting</c><00:36:58.520><c> like</c><00:36:58.720><c> an</c><00:36:58.840><c> MCP</c><00:36:59.320><c> client.</c><00:36:59.800><c> So,</c><00:36:59.880><c> you</c>

00:36:59.990 --> 00:37:00.000 align:start position:0%
is acting like an MCP client. So, you
 

00:37:00.000 --> 00:37:02.550 align:start position:0%
is acting like an MCP client. So, you
have<00:37:00.120><c> that</c><00:37:00.360><c> same</c><00:37:00.880><c> client-server</c>

00:37:02.550 --> 00:37:02.560 align:start position:0%
have that same client-server
 

00:37:02.560 --> 00:37:04.710 align:start position:0%
have that same client-server
paradigm.<00:37:03.400><c> Now,</c><00:37:03.640><c> why</c><00:37:03.920><c> would</c><00:37:04.120><c> you</c><00:37:04.240><c> want</c><00:37:04.400><c> to</c><00:37:04.480><c> use</c>

00:37:04.710 --> 00:37:04.720 align:start position:0%
paradigm. Now, why would you want to use
 

00:37:04.720 --> 00:37:06.670 align:start position:0%
paradigm. Now, why would you want to use
an<00:37:04.840><c> MCP</c><00:37:05.280><c> server</c><00:37:05.760><c> to</c><00:37:05.880><c> connect</c><00:37:06.200><c> to</c><00:37:06.320><c> something</c>

00:37:06.670 --> 00:37:06.680 align:start position:0%
an MCP server to connect to something
 

00:37:06.680 --> 00:37:09.470 align:start position:0%
an MCP server to connect to something
like<00:37:06.920><c> Superbase</c><00:37:07.760><c> or</c><00:37:07.960><c> something</c><00:37:08.400><c> else?</c><00:37:09.080><c> Well,</c>

00:37:09.470 --> 00:37:09.480 align:start position:0%
like Superbase or something else? Well,
 

00:37:09.480 --> 00:37:12.390 align:start position:0%
like Superbase or something else? Well,
the<00:37:09.600><c> reason</c><00:37:10.000><c> is</c><00:37:10.160><c> very</c><00:37:10.520><c> simple.</c><00:37:11.560><c> You</c><00:37:12.000><c> want</c>

00:37:12.390 --> 00:37:12.400 align:start position:0%
the reason is very simple. You want
 

00:37:12.400 --> 00:37:15.790 align:start position:0%
the reason is very simple. You want
Codex<00:37:13.320><c> to</c><00:37:13.480><c> do</c><00:37:13.800><c> all</c><00:37:14.200><c> the</c><00:37:14.320><c> administration,</c><00:37:15.360><c> all</c>

00:37:15.790 --> 00:37:15.800 align:start position:0%
Codex to do all the administration, all
 

00:37:15.800 --> 00:37:17.550 align:start position:0%
Codex to do all the administration, all
the<00:37:15.960><c> work</c><00:37:16.320><c> for</c><00:37:16.680><c> you,</c><00:37:16.880><c> right?</c><00:37:17.160><c> So,</c><00:37:17.240><c> if</c><00:37:17.360><c> you're</c>

00:37:17.550 --> 00:37:17.560 align:start position:0%
the work for you, right? So, if you're
 

00:37:17.560 --> 00:37:20.030 align:start position:0%
the work for you, right? So, if you're
building<00:37:18.040><c> an</c><00:37:18.200><c> app</c><00:37:19.080><c> using</c><00:37:19.440><c> something</c><00:37:19.800><c> like</c>

00:37:20.030 --> 00:37:20.040 align:start position:0%
building an app using something like
 

00:37:20.040 --> 00:37:22.070 align:start position:0%
building an app using something like
Superbase,<00:37:20.600><c> and</c><00:37:20.720><c> we're</c><00:37:20.840><c> going</c><00:37:21.000><c> to</c><00:37:21.360><c> touch</c><00:37:21.720><c> upon</c>

00:37:22.070 --> 00:37:22.080 align:start position:0%
Superbase, and we're going to touch upon
 

00:37:22.080 --> 00:37:24.590 align:start position:0%
Superbase, and we're going to touch upon
that<00:37:22.760><c> a</c><00:37:22.840><c> little</c><00:37:23.040><c> bit</c><00:37:23.200><c> later</c><00:37:23.520><c> in</c><00:37:23.640><c> the</c><00:37:23.720><c> video,</c>

00:37:24.590 --> 00:37:24.600 align:start position:0%
that a little bit later in the video,
 

00:37:24.600 --> 00:37:27.630 align:start position:0%
that a little bit later in the video,
you<00:37:24.960><c> can</c><00:37:25.320><c> set</c><00:37:25.680><c> up</c><00:37:25.800><c> Superbase</c><00:37:26.720><c> yourself.</c><00:37:27.520><c> You</c>

00:37:27.630 --> 00:37:27.640 align:start position:0%
you can set up Superbase yourself. You
 

00:37:27.640 --> 00:37:29.310 align:start position:0%
you can set up Superbase yourself. You
can<00:37:27.800><c> configure</c><00:37:28.280><c> all</c><00:37:28.440><c> of</c><00:37:28.520><c> that.</c><00:37:28.760><c> That</c><00:37:28.960><c> takes</c>

00:37:29.310 --> 00:37:29.320 align:start position:0%
can configure all of that. That takes
 

00:37:29.320 --> 00:37:30.550 align:start position:0%
can configure all of that. That takes
time,<00:37:29.760><c> but</c><00:37:29.840><c> it's,</c><00:37:30.000><c> you</c><00:37:30.120><c> know,</c><00:37:30.200><c> it's</c><00:37:30.320><c> very,</c>

00:37:30.550 --> 00:37:30.560 align:start position:0%
time, but it's, you know, it's very,
 

00:37:30.560 --> 00:37:32.750 align:start position:0%
time, but it's, you know, it's very,
very<00:37:30.840><c> doable.</c><00:37:31.560><c> Or,</c><00:37:32.080><c> you</c><00:37:32.200><c> can</c><00:37:32.400><c> simply</c>

00:37:32.750 --> 00:37:32.760 align:start position:0%
very doable. Or, you can simply
 

00:37:32.760 --> 00:37:37.110 align:start position:0%
very doable. Or, you can simply
configure<00:37:34.000><c> a</c><00:37:34.160><c> Superbase</c><00:37:34.880><c> MCP</c><00:37:35.560><c> server</c><00:37:36.320><c> in</c><00:37:36.720><c> your</c>

00:37:37.110 --> 00:37:37.120 align:start position:0%
configure a Superbase MCP server in your
 

00:37:37.120 --> 00:37:40.550 align:start position:0%
configure a Superbase MCP server in your
Codex<00:37:37.640><c> instance.</c><00:37:38.640><c> And</c><00:37:38.920><c> that</c><00:37:39.400><c> will</c><00:37:39.760><c> allow</c>

00:37:40.550 --> 00:37:40.560 align:start position:0%
Codex instance. And that will allow
 

00:37:40.560 --> 00:37:43.590 align:start position:0%
Codex instance. And that will allow
Codex<00:37:41.600><c> to</c><00:37:41.920><c> use</c><00:37:42.320><c> that</c><00:37:42.520><c> MCP</c><00:37:43.120><c> server</c><00:37:43.480><c> to</c>

00:37:43.590 --> 00:37:43.600 align:start position:0%
Codex to use that MCP server to
 

00:37:43.600 --> 00:37:47.110 align:start position:0%
Codex to use that MCP server to
essentially<00:37:44.200><c> manage</c><00:37:45.360><c> this</c><00:37:45.880><c> remote</c><00:37:46.520><c> server,</c>

00:37:47.110 --> 00:37:47.120 align:start position:0%
essentially manage this remote server,
 

00:37:47.120 --> 00:37:50.470 align:start position:0%
essentially manage this remote server,
this<00:37:47.840><c> tool,</c><00:37:48.280><c> this</c><00:37:48.680><c> app</c><00:37:49.120><c> for</c><00:37:49.520><c> you.</c><00:37:50.120><c> And</c><00:37:50.320><c> as</c>

00:37:50.470 --> 00:37:50.480 align:start position:0%
this tool, this app for you. And as
 

00:37:50.480 --> 00:37:51.990 align:start position:0%
this tool, this app for you. And as
you're<00:37:50.640><c> going</c><00:37:50.760><c> to</c><00:37:50.880><c> see</c><00:37:51.040><c> a</c><00:37:51.080><c> little</c><00:37:51.320><c> bit</c><00:37:51.560><c> later</c>

00:37:51.990 --> 00:37:52.000 align:start position:0%
you're going to see a little bit later
 

00:37:52.000 --> 00:37:54.950 align:start position:0%
you're going to see a little bit later
in<00:37:52.080><c> this</c><00:37:52.240><c> tutorial,</c><00:37:52.920><c> this</c><00:37:53.240><c> is</c><00:37:53.520><c> very,</c><00:37:54.280><c> very</c>

00:37:54.950 --> 00:37:54.960 align:start position:0%
in this tutorial, this is very, very
 

00:37:54.960 --> 00:37:57.030 align:start position:0%
in this tutorial, this is very, very
helpful<00:37:55.400><c> to</c><00:37:55.600><c> us</c><00:37:55.760><c> because</c><00:37:56.000><c> it</c><00:37:56.120><c> saves</c><00:37:56.480><c> a</c><00:37:56.560><c> lot</c><00:37:56.880><c> of</c>

00:37:57.030 --> 00:37:57.040 align:start position:0%
helpful to us because it saves a lot of
 

00:37:57.040 --> 00:38:00.030 align:start position:0%
helpful to us because it saves a lot of
time<00:37:58.000><c> and</c><00:37:58.200><c> it</c><00:37:58.320><c> enables</c><00:37:59.160><c> things</c><00:37:59.720><c> that</c><00:37:59.920><c> we</c>

00:38:00.030 --> 00:38:00.040 align:start position:0%
time and it enables things that we
 

00:38:00.040 --> 00:38:01.830 align:start position:0%
time and it enables things that we
couldn't<00:38:00.280><c> really</c><00:38:00.520><c> do</c><00:38:00.680><c> before</c><00:38:01.160><c> because</c><00:38:01.520><c> now</c>

00:38:01.830 --> 00:38:01.840 align:start position:0%
couldn't really do before because now
 

00:38:01.840 --> 00:38:05.470 align:start position:0%
couldn't really do before because now
Codex<00:38:02.280><c> understands</c><00:38:02.840><c> One</c><00:38:03.120><c> Piece</c><00:38:03.960><c> and</c><00:38:04.360><c> via</c><00:38:04.760><c> MCP</c>

00:38:05.470 --> 00:38:05.480 align:start position:0%
Codex understands One Piece and via MCP
 

00:38:05.480 --> 00:38:08.630 align:start position:0%
Codex understands One Piece and via MCP
it<00:38:05.680><c> can</c><00:38:05.880><c> get</c><00:38:06.160><c> more</c><00:38:06.560><c> contacts</c><00:38:07.520><c> and</c><00:38:07.720><c> create</c><00:38:08.440><c> a</c>

00:38:08.630 --> 00:38:08.640 align:start position:0%
it can get more contacts and create a
 

00:38:08.640 --> 00:38:11.830 align:start position:0%
it can get more contacts and create a
much<00:38:09.280><c> more</c><00:38:09.640><c> robust</c><00:38:10.440><c> app</c><00:38:10.760><c> for</c><00:38:10.920><c> you</c><00:38:11.120><c> or</c><00:38:11.360><c> a</c><00:38:11.440><c> tool</c>

00:38:11.830 --> 00:38:11.840 align:start position:0%
much more robust app for you or a tool
 

00:38:11.840 --> 00:38:14.150 align:start position:0%
much more robust app for you or a tool
for<00:38:12.040><c> you</c><00:38:12.160><c> or</c><00:38:12.400><c> anything</c><00:38:12.800><c> else,</c><00:38:13.040><c> a</c><00:38:13.160><c> system,</c><00:38:13.960><c> if</c>

00:38:14.150 --> 00:38:14.160 align:start position:0%
for you or anything else, a system, if
 

00:38:14.160 --> 00:38:16.910 align:start position:0%
for you or anything else, a system, if
you<00:38:14.280><c> will,</c><00:38:14.960><c> because</c><00:38:15.480><c> now</c><00:38:15.840><c> it</c><00:38:16.000><c> can</c><00:38:16.200><c> connect</c><00:38:16.640><c> to</c>

00:38:16.910 --> 00:38:16.920 align:start position:0%
you will, because now it can connect to
 

00:38:16.920 --> 00:38:19.030 align:start position:0%
you will, because now it can connect to
other<00:38:17.200><c> remote</c><00:38:17.600><c> systems</c><00:38:18.360><c> and</c><00:38:18.480><c> essentially</c>

00:38:19.030 --> 00:38:19.040 align:start position:0%
other remote systems and essentially
 

00:38:19.040 --> 00:38:21.390 align:start position:0%
other remote systems and essentially
consult<00:38:19.880><c> that</c><00:38:20.240><c> data</c><00:38:20.640><c> with</c><00:38:20.800><c> the</c><00:38:20.880><c> data</c><00:38:21.240><c> we</c>

00:38:21.390 --> 00:38:21.400 align:start position:0%
consult that data with the data we
 

00:38:21.400 --> 00:38:23.750 align:start position:0%
consult that data with the data we
already<00:38:21.680><c> have,</c><00:38:22.080><c> such</c><00:38:22.320><c> as</c><00:38:22.440><c> the</c><00:38:22.560><c> code</c><00:38:23.000><c> or</c><00:38:23.160><c> things</c>

00:38:23.750 --> 00:38:23.760 align:start position:0%
already have, such as the code or things
 

00:38:23.760 --> 00:38:26.710 align:start position:0%
already have, such as the code or things
it<00:38:23.920><c> has</c><00:38:24.160><c> been</c><00:38:24.360><c> working</c><00:38:24.760><c> on,</c><00:38:25.160><c> and</c><00:38:25.640><c> figure</c><00:38:26.160><c> out</c><00:38:26.560><c> a</c>

00:38:26.710 --> 00:38:26.720 align:start position:0%
it has been working on, and figure out a
 

00:38:26.720 --> 00:38:29.510 align:start position:0%
it has been working on, and figure out a
unified<00:38:27.600><c> solution.</c><00:38:28.320><c> And</c><00:38:28.480><c> this</c><00:38:28.680><c> is</c><00:38:28.800><c> extremely</c>

00:38:29.510 --> 00:38:29.520 align:start position:0%
unified solution. And this is extremely
 

00:38:29.520 --> 00:38:31.910 align:start position:0%
unified solution. And this is extremely
helpful<00:38:30.000><c> to</c><00:38:30.200><c> us,</c><00:38:30.440><c> okay?</c><00:38:31.240><c> And</c><00:38:31.400><c> so,</c><00:38:31.600><c> there's</c><00:38:31.880><c> a</c>

00:38:31.910 --> 00:38:31.920 align:start position:0%
helpful to us, okay? And so, there's a
 

00:38:31.920 --> 00:38:33.550 align:start position:0%
helpful to us, okay? And so, there's a
couple<00:38:32.280><c> of</c><00:38:32.400><c> ways</c><00:38:32.680><c> that</c><00:38:32.880><c> you</c><00:38:32.960><c> can</c><00:38:33.240><c> add</c><00:38:33.520><c> a</c>

00:38:33.550 --> 00:38:33.560 align:start position:0%
couple of ways that you can add a
 

00:38:33.560 --> 00:38:35.310 align:start position:0%
couple of ways that you can add a
server.<00:38:34.040><c> You</c><00:38:34.160><c> can</c><00:38:34.360><c> click</c><00:38:34.640><c> here,</c><00:38:34.960><c> and</c><00:38:35.080><c> you</c><00:38:35.160><c> can</c>

00:38:35.310 --> 00:38:35.320 align:start position:0%
server. You can click here, and you can
 

00:38:35.320 --> 00:38:37.910 align:start position:0%
server. You can click here, and you can
fill<00:38:35.600><c> all</c><00:38:35.760><c> of</c><00:38:35.840><c> this</c><00:38:36.080><c> manually.</c><00:38:37.160><c> Or,</c><00:38:37.600><c> you</c><00:38:37.760><c> can</c>

00:38:37.910 --> 00:38:37.920 align:start position:0%
fill all of this manually. Or, you can
 

00:38:37.920 --> 00:38:41.190 align:start position:0%
fill all of this manually. Or, you can
simply<00:38:38.240><c> tell</c><00:38:38.480><c> Codex,</c><00:38:39.480><c> "Set</c><00:38:39.920><c> up</c><00:38:40.200><c> and</c><00:38:40.440><c> activate</c>

00:38:41.190 --> 00:38:41.200 align:start position:0%
simply tell Codex, "Set up and activate
 

00:38:41.200 --> 00:38:42.950 align:start position:0%
simply tell Codex, "Set up and activate
a<00:38:41.280><c> Supabase</c><00:38:41.920><c> MCP</c><00:38:42.360><c> server."</c><00:38:42.640><c> It's</c><00:38:42.760><c> going</c><00:38:42.880><c> to</c>

00:38:42.950 --> 00:38:42.960 align:start position:0%
a Supabase MCP server." It's going to
 

00:38:42.960 --> 00:38:44.510 align:start position:0%
a Supabase MCP server." It's going to
figure<00:38:43.360><c> out</c><00:38:43.520><c> how</c><00:38:43.640><c> to</c><00:38:43.760><c> do</c><00:38:43.960><c> that.</c><00:38:44.160><c> It's</c><00:38:44.280><c> going</c><00:38:44.400><c> to</c>

00:38:44.510 --> 00:38:44.520 align:start position:0%
figure out how to do that. It's going to
 

00:38:44.520 --> 00:38:45.950 align:start position:0%
figure out how to do that. It's going to
search<00:38:44.960><c> for</c><00:38:45.120><c> it.</c><00:38:45.240><c> It's</c><00:38:45.360><c> going</c><00:38:45.480><c> to</c><00:38:45.560><c> figure</c><00:38:45.800><c> out</c>

00:38:45.950 --> 00:38:45.960 align:start position:0%
search for it. It's going to figure out
 

00:38:45.960 --> 00:38:48.230 align:start position:0%
search for it. It's going to figure out
the<00:38:46.080><c> specs,</c><00:38:47.040><c> and</c><00:38:47.200><c> it's</c><00:38:47.320><c> going</c><00:38:47.560><c> to</c><00:38:47.720><c> set</c><00:38:47.960><c> it</c><00:38:48.120><c> up</c>

00:38:48.230 --> 00:38:48.240 align:start position:0%
the specs, and it's going to set it up
 

00:38:48.240 --> 00:38:49.750 align:start position:0%
the specs, and it's going to set it up
for<00:38:48.440><c> you.</c><00:38:48.520><c> And</c><00:38:48.640><c> the</c><00:38:48.680><c> same</c><00:38:49.040><c> thing</c><00:38:49.240><c> for</c><00:38:49.480><c> all</c><00:38:49.680><c> of</c>

00:38:49.750 --> 00:38:49.760 align:start position:0%
for you. And the same thing for all of
 

00:38:49.760 --> 00:38:51.710 align:start position:0%
for you. And the same thing for all of
these<00:38:50.000><c> other</c><00:38:50.160><c> ones.</c><00:38:50.640><c> Now,</c><00:38:50.800><c> after</c><00:38:51.200><c> setting</c><00:38:51.600><c> up</c>

00:38:51.710 --> 00:38:51.720 align:start position:0%
these other ones. Now, after setting up
 

00:38:51.720 --> 00:38:53.830 align:start position:0%
these other ones. Now, after setting up
the<00:38:51.840><c> MCP</c><00:38:52.320><c> server,</c><00:38:52.840><c> you</c><00:38:53.000><c> can</c><00:38:53.200><c> simply</c><00:38:53.560><c> tell</c>

00:38:53.830 --> 00:38:53.840 align:start position:0%
the MCP server, you can simply tell
 

00:38:53.840 --> 00:38:55.750 align:start position:0%
the MCP server, you can simply tell
Codex<00:38:54.360><c> to</c><00:38:54.480><c> use</c><00:38:54.720><c> it.</c><00:38:54.840><c> So,</c><00:38:54.920><c> I</c><00:38:55.000><c> can</c><00:38:55.160><c> say</c><00:38:55.360><c> something</c>

00:38:55.750 --> 00:38:55.760 align:start position:0%
Codex to use it. So, I can say something
 

00:38:55.760 --> 00:39:00.910 align:start position:0%
Codex to use it. So, I can say something
like,<00:38:56.360><c> "Use</c><00:38:57.000><c> the</c><00:38:57.160><c> Supabase</c><00:38:58.560><c> MCP</c><00:38:59.240><c> server</c><00:39:00.320><c> to</c>

00:39:00.910 --> 00:39:00.920 align:start position:0%
like, "Use the Supabase MCP server to
 

00:39:00.920 --> 00:39:03.910 align:start position:0%
like, "Use the Supabase MCP server to
query<00:39:01.480><c> data,</c><00:39:02.240><c> or</c><00:39:02.480><c> check</c><00:39:02.880><c> how</c><00:39:03.000><c> many</c><00:39:03.280><c> tables</c><00:39:03.760><c> we</c>

00:39:03.910 --> 00:39:03.920 align:start position:0%
query data, or check how many tables we
 

00:39:03.920 --> 00:39:05.590 align:start position:0%
query data, or check how many tables we
have,<00:39:04.120><c> or</c><00:39:04.280><c> pretty</c><00:39:04.480><c> much</c><00:39:04.720><c> anything</c><00:39:05.120><c> else."</c><00:39:05.480><c> And</c>

00:39:05.590 --> 00:39:05.600 align:start position:0%
have, or pretty much anything else." And
 

00:39:05.600 --> 00:39:07.710 align:start position:0%
have, or pretty much anything else." And
it's<00:39:05.760><c> going</c><00:39:05.880><c> to</c><00:39:06.000><c> go</c><00:39:06.200><c> ahead</c><00:39:06.760><c> and</c><00:39:07.040><c> connect</c><00:39:07.600><c> to</c>

00:39:07.710 --> 00:39:07.720 align:start position:0%
it's going to go ahead and connect to
 

00:39:07.720 --> 00:39:10.310 align:start position:0%
it's going to go ahead and connect to
your<00:39:08.080><c> Supabase</c><00:39:08.640><c> instance</c><00:39:09.120><c> in</c><00:39:09.240><c> this</c><00:39:09.400><c> example</c>

00:39:10.310 --> 00:39:10.320 align:start position:0%
your Supabase instance in this example
 

00:39:10.320 --> 00:39:15.990 align:start position:0%
your Supabase instance in this example
via<00:39:10.920><c> the</c><00:39:11.280><c> configured</c><00:39:12.000><c> MCP</c><00:39:12.480><c> server.</c>

00:39:15.990 --> 00:39:16.000 align:start position:0%
 
 

00:39:16.000 --> 00:39:18.030 align:start position:0%
 
Now<00:39:16.160><c> that</c><00:39:16.360><c> we</c><00:39:16.480><c> have</c><00:39:16.720><c> laid</c><00:39:17.000><c> the</c><00:39:17.120><c> foundation,</c>

00:39:18.030 --> 00:39:18.040 align:start position:0%
Now that we have laid the foundation,
 

00:39:18.040 --> 00:39:20.070 align:start position:0%
Now that we have laid the foundation,
and<00:39:18.200><c> before</c><00:39:18.600><c> we</c><00:39:18.760><c> start</c><00:39:19.200><c> building</c><00:39:19.600><c> the</c><00:39:19.760><c> real</c>

00:39:20.070 --> 00:39:20.080 align:start position:0%
and before we start building the real
 

00:39:20.080 --> 00:39:23.070 align:start position:0%
and before we start building the real
app,<00:39:20.840><c> let's</c><00:39:21.240><c> talk</c><00:39:21.520><c> about</c><00:39:21.840><c> the</c><00:39:21.920><c> ideal</c><00:39:22.480><c> Codex</c>

00:39:23.070 --> 00:39:23.080 align:start position:0%
app, let's talk about the ideal Codex
 

00:39:23.080 --> 00:39:25.390 align:start position:0%
app, let's talk about the ideal Codex
workflow.<00:39:24.160><c> What</c><00:39:24.440><c> is</c><00:39:24.560><c> the</c><00:39:24.680><c> best</c><00:39:25.040><c> way</c><00:39:25.240><c> to</c>

00:39:25.390 --> 00:39:25.400 align:start position:0%
workflow. What is the best way to
 

00:39:25.400 --> 00:39:27.630 align:start position:0%
workflow. What is the best way to
approach<00:39:25.960><c> it?</c><00:39:26.160><c> Before</c><00:39:26.640><c> we</c><00:39:26.800><c> begin</c><00:39:27.160><c> building</c>

00:39:27.630 --> 00:39:27.640 align:start position:0%
approach it? Before we begin building
 

00:39:27.640 --> 00:39:29.630 align:start position:0%
approach it? Before we begin building
our<00:39:27.880><c> app,</c><00:39:28.560><c> you</c><00:39:28.680><c> want</c><00:39:28.840><c> to</c><00:39:28.920><c> establish</c><00:39:29.520><c> the</c>

00:39:29.630 --> 00:39:29.640 align:start position:0%
our app, you want to establish the
 

00:39:29.640 --> 00:39:31.790 align:start position:0%
our app, you want to establish the
workflow<00:39:30.160><c> that</c><00:39:30.360><c> you're</c><00:39:30.560><c> going</c><00:39:30.680><c> to</c><00:39:30.800><c> use</c><00:39:31.320><c> again</c>

00:39:31.790 --> 00:39:31.800 align:start position:0%
workflow that you're going to use again
 

00:39:31.800 --> 00:39:35.750 align:start position:0%
workflow that you're going to use again
and<00:39:31.920><c> again.</c><00:39:32.880><c> The</c><00:39:33.040><c> loop</c><00:39:33.360><c> is</c><00:39:33.520><c> simple.</c><00:39:34.480><c> Inspect,</c>

00:39:35.750 --> 00:39:35.760 align:start position:0%
and again. The loop is simple. Inspect,
 

00:39:35.760 --> 00:39:39.510 align:start position:0%
and again. The loop is simple. Inspect,
plan,<00:39:36.680><c> edit,</c><00:39:37.480><c> verify,</c><00:39:38.600><c> and</c><00:39:38.760><c> report.</c><00:39:39.280><c> That</c>

00:39:39.510 --> 00:39:39.520 align:start position:0%
plan, edit, verify, and report. That
 

00:39:39.520 --> 00:39:41.870 align:start position:0%
plan, edit, verify, and report. That
sounds<00:39:39.920><c> basic,</c><00:39:40.680><c> but</c><00:39:40.880><c> it</c><00:39:41.000><c> is</c><00:39:41.120><c> the</c><00:39:41.240><c> difference</c>

00:39:41.870 --> 00:39:41.880 align:start position:0%
sounds basic, but it is the difference
 

00:39:41.880 --> 00:39:44.390 align:start position:0%
sounds basic, but it is the difference
between<00:39:42.240><c> using</c><00:39:42.600><c> Codex</c><00:39:43.160><c> as</c><00:39:43.360><c> a</c><00:39:43.480><c> random</c><00:39:44.040><c> code</c>

00:39:44.390 --> 00:39:44.400 align:start position:0%
between using Codex as a random code
 

00:39:44.400 --> 00:39:47.030 align:start position:0%
between using Codex as a random code
generator<00:39:45.560><c> and</c><00:39:45.760><c> using</c><00:39:46.120><c> Codex</c><00:39:46.760><c> as</c><00:39:46.960><c> a</c>

00:39:47.030 --> 00:39:47.040 align:start position:0%
generator and using Codex as a
 

00:39:47.040 --> 00:39:50.070 align:start position:0%
generator and using Codex as a
controlled<00:39:48.000><c> build</c><00:39:48.360><c> partner.</c><00:39:49.400><c> The</c><00:39:49.520><c> mistake</c><00:39:50.040><c> a</c>

00:39:50.070 --> 00:39:50.080 align:start position:0%
controlled build partner. The mistake a
 

00:39:50.080 --> 00:39:52.030 align:start position:0%
controlled build partner. The mistake a
lot<00:39:50.280><c> of</c><00:39:50.360><c> people</c><00:39:50.640><c> make</c><00:39:51.120><c> is</c><00:39:51.240><c> that</c><00:39:51.440><c> they</c><00:39:51.600><c> jump</c>

00:39:52.030 --> 00:39:52.040 align:start position:0%
lot of people make is that they jump
 

00:39:52.040 --> 00:39:55.630 align:start position:0%
lot of people make is that they jump
straight<00:39:52.680><c> to</c><00:39:53.360><c> "Build</c><00:39:53.760><c> this</c><00:39:54.080><c> app."</c><00:39:54.800><c> or</c><00:39:55.320><c> "Fix</c>

00:39:55.630 --> 00:39:55.640 align:start position:0%
straight to "Build this app." or "Fix
 

00:39:55.640 --> 00:39:58.550 align:start position:0%
straight to "Build this app." or "Fix
this<00:39:55.840><c> problem."</c><00:39:56.960><c> without</c><00:39:57.440><c> giving</c><00:39:57.800><c> the</c><00:39:57.960><c> agent</c>

00:39:58.550 --> 00:39:58.560 align:start position:0%
this problem." without giving the agent
 

00:39:58.560 --> 00:40:00.470 align:start position:0%
this problem." without giving the agent
a<00:39:58.680><c> clean</c><00:39:59.200><c> process.</c>

00:40:00.470 --> 00:40:00.480 align:start position:0%
a clean process.
 

00:40:00.480 --> 00:40:03.270 align:start position:0%
a clean process.
That<00:40:00.840><c> can</c><00:40:01.080><c> work</c><00:40:01.320><c> for</c><00:40:01.480><c> small</c><00:40:02.000><c> tasks,</c><00:40:03.000><c> but</c><00:40:03.160><c> it</c>

00:40:03.270 --> 00:40:03.280 align:start position:0%
That can work for small tasks, but it
 

00:40:03.280 --> 00:40:06.390 align:start position:0%
That can work for small tasks, but it
breaks<00:40:03.640><c> down</c><00:40:03.960><c> quickly</c><00:40:04.880><c> on</c><00:40:05.120><c> real</c><00:40:05.480><c> projects.</c>

00:40:06.390 --> 00:40:06.400 align:start position:0%
breaks down quickly on real projects.
 

00:40:06.400 --> 00:40:08.750 align:start position:0%
breaks down quickly on real projects.
For<00:40:06.640><c> a</c><00:40:06.720><c> serious</c><00:40:07.400><c> build,</c><00:40:07.880><c> you</c><00:40:08.000><c> want</c><00:40:08.200><c> Codex</c><00:40:08.640><c> to</c>

00:40:08.750 --> 00:40:08.760 align:start position:0%
For a serious build, you want Codex to
 

00:40:08.760 --> 00:40:11.590 align:start position:0%
For a serious build, you want Codex to
understand<00:40:09.320><c> the</c><00:40:09.440><c> repo</c><00:40:09.840><c> first,</c><00:40:10.840><c> explain</c><00:40:11.480><c> the</c>

00:40:11.590 --> 00:40:11.600 align:start position:0%
understand the repo first, explain the
 

00:40:11.600 --> 00:40:15.350 align:start position:0%
understand the repo first, explain the
plan,<00:40:12.520><c> make</c><00:40:12.880><c> a</c><00:40:13.000><c> focused</c><00:40:13.680><c> change,</c><00:40:14.560><c> verify</c><00:40:15.200><c> the</c>

00:40:15.350 --> 00:40:15.360 align:start position:0%
plan, make a focused change, verify the
 

00:40:15.360 --> 00:40:18.390 align:start position:0%
plan, make a focused change, verify the
result,<00:40:16.200><c> and</c><00:40:16.360><c> then</c><00:40:16.560><c> report</c><00:40:17.120><c> back</c><00:40:17.680><c> in</c><00:40:17.840><c> a</c><00:40:17.920><c> way</c>

00:40:18.390 --> 00:40:18.400 align:start position:0%
result, and then report back in a way
 

00:40:18.400 --> 00:40:20.830 align:start position:0%
result, and then report back in a way
that<00:40:18.640><c> you</c><00:40:18.760><c> can</c><00:40:19.000><c> re-review.</c><00:40:19.880><c> A</c><00:40:20.040><c> good</c><00:40:20.360><c> Codex</c>

00:40:20.830 --> 00:40:20.840 align:start position:0%
that you can re-review. A good Codex
 

00:40:20.840 --> 00:40:23.310 align:start position:0%
that you can re-review. A good Codex
prompt<00:40:21.360><c> is</c><00:40:21.560><c> not</c><00:40:21.840><c> just</c><00:40:22.160><c> a</c><00:40:22.280><c> request.</c><00:40:22.920><c> It</c><00:40:23.040><c> is</c><00:40:23.200><c> a</c>

00:40:23.310 --> 00:40:23.320 align:start position:0%
prompt is not just a request. It is a
 

00:40:23.320 --> 00:40:25.870 align:start position:0%
prompt is not just a request. It is a
small<00:40:23.800><c> project</c><00:40:24.400><c> brief.</c><00:40:25.320><c> The</c><00:40:25.440><c> better</c><00:40:25.760><c> the</c>

00:40:25.870 --> 00:40:25.880 align:start position:0%
small project brief. The better the
 

00:40:25.880 --> 00:40:29.070 align:start position:0%
small project brief. The better the
prompt<00:40:26.320><c> is,</c><00:40:27.000><c> the</c><00:40:27.240><c> easier</c><00:40:27.840><c> it</c><00:40:28.000><c> is</c><00:40:28.200><c> for</c><00:40:28.400><c> Codex</c><00:40:28.960><c> to</c>

00:40:29.070 --> 00:40:29.080 align:start position:0%
prompt is, the easier it is for Codex to
 

00:40:29.080 --> 00:40:31.630 align:start position:0%
prompt is, the easier it is for Codex to
understand<00:40:29.760><c> the</c><00:40:29.840><c> current</c><00:40:30.240><c> state,</c><00:40:31.160><c> choose</c><00:40:31.520><c> the</c>

00:40:31.630 --> 00:40:31.640 align:start position:0%
understand the current state, choose the
 

00:40:31.640 --> 00:40:34.110 align:start position:0%
understand the current state, choose the
right<00:40:31.880><c> amount</c><00:40:32.240><c> of</c><00:40:32.360><c> work,</c><00:40:33.080><c> and</c><00:40:33.320><c> verify</c><00:40:33.960><c> the</c>

00:40:34.110 --> 00:40:34.120 align:start position:0%
right amount of work, and verify the
 

00:40:34.120 --> 00:40:36.990 align:start position:0%
right amount of work, and verify the
result.<00:40:34.720><c> The</c><00:40:34.840><c> basic</c><00:40:35.360><c> structure</c><00:40:35.920><c> is</c><00:40:36.120><c> simple.</c>

00:40:36.990 --> 00:40:37.000 align:start position:0%
result. The basic structure is simple.
 

00:40:37.000 --> 00:40:39.430 align:start position:0%
result. The basic structure is simple.
Explain<00:40:37.640><c> the</c><00:40:37.720><c> goal,</c><00:40:38.560><c> give</c><00:40:38.840><c> the</c><00:40:38.960><c> relevant</c>

00:40:39.430 --> 00:40:39.440 align:start position:0%
Explain the goal, give the relevant
 

00:40:39.440 --> 00:40:43.030 align:start position:0%
Explain the goal, give the relevant
context,<00:40:40.560><c> define</c><00:40:41.560><c> what</c><00:40:41.800><c> should</c><00:40:42.040><c> change,</c>

00:40:43.030 --> 00:40:43.040 align:start position:0%
context, define what should change,
 

00:40:43.040 --> 00:40:46.030 align:start position:0%
context, define what should change,
define<00:40:43.680><c> what</c><00:40:43.880><c> should</c><00:40:44.120><c> not</c><00:40:44.480><c> change,</c><00:40:45.560><c> and</c><00:40:45.800><c> tell</c>

00:40:46.030 --> 00:40:46.040 align:start position:0%
define what should not change, and tell
 

00:40:46.040 --> 00:40:48.510 align:start position:0%
define what should not change, and tell
Codex<00:40:46.560><c> how</c><00:40:46.720><c> to</c><00:40:46.880><c> verify</c><00:40:47.480><c> the</c><00:40:47.640><c> work.</c><00:40:48.160><c> If</c><00:40:48.360><c> the</c>

00:40:48.510 --> 00:40:48.520 align:start position:0%
Codex how to verify the work. If the
 

00:40:48.520 --> 00:40:52.150 align:start position:0%
Codex how to verify the work. If the
task<00:40:49.040><c> is</c><00:40:49.240><c> risky</c><00:40:49.840><c> or</c><00:40:50.080><c> unclear,</c><00:40:51.120><c> ask</c><00:40:51.560><c> Codex</c><00:40:52.040><c> to</c>

00:40:52.150 --> 00:40:52.160 align:start position:0%
task is risky or unclear, ask Codex to
 

00:40:52.160 --> 00:40:55.510 align:start position:0%
task is risky or unclear, ask Codex to
inspect<00:40:52.880><c> first</c><00:40:53.600><c> and</c><00:40:53.840><c> make</c><00:40:54.240><c> a</c><00:40:54.360><c> plan</c><00:40:54.960><c> before</c>

00:40:55.510 --> 00:40:55.520 align:start position:0%
inspect first and make a plan before
 

00:40:55.520 --> 00:40:58.110 align:start position:0%
inspect first and make a plan before
editing.<00:40:56.120><c> For</c><00:40:56.280><c> instance,</c><00:40:56.840><c> instead</c><00:40:57.200><c> of</c><00:40:57.320><c> saying</c>

00:40:58.110 --> 00:40:58.120 align:start position:0%
editing. For instance, instead of saying
 

00:40:58.120 --> 00:41:01.390 align:start position:0%
editing. For instance, instead of saying
"Build<00:40:58.520><c> the</c><00:40:58.680><c> app,"</c><00:40:59.520><c> I</c><00:40:59.680><c> would</c><00:40:59.920><c> say,</c><00:41:00.720><c> "Inspect</c>

00:41:01.390 --> 00:41:01.400 align:start position:0%
"Build the app," I would say, "Inspect
 

00:41:01.400 --> 00:41:04.470 align:start position:0%
"Build the app," I would say, "Inspect
the<00:41:01.480><c> project</c><00:41:02.000><c> first,</c><00:41:02.800><c> do</c><00:41:02.960><c> not</c><00:41:03.360><c> edit</c><00:41:03.720><c> yet,</c>

00:41:04.470 --> 00:41:04.480 align:start position:0%
the project first, do not edit yet,
 

00:41:04.480 --> 00:41:07.550 align:start position:0%
the project first, do not edit yet,
identify<00:41:05.280><c> the</c><00:41:05.440><c> existing</c><00:41:06.000><c> structure,</c><00:41:06.960><c> propose</c>

00:41:07.550 --> 00:41:07.560 align:start position:0%
identify the existing structure, propose
 

00:41:07.560 --> 00:41:10.310 align:start position:0%
identify the existing structure, propose
the<00:41:07.680><c> smallest</c><00:41:08.400><c> first</c><00:41:08.760><c> version,</c><00:41:09.800><c> list</c><00:41:10.200><c> the</c>

00:41:10.310 --> 00:41:10.320 align:start position:0%
the smallest first version, list the
 

00:41:10.320 --> 00:41:13.030 align:start position:0%
the smallest first version, list the
files<00:41:10.800><c> you</c><00:41:10.920><c> expect</c><00:41:11.480><c> to</c><00:41:11.600><c> touch,</c><00:41:12.200><c> and</c><00:41:12.360><c> explain</c>

00:41:13.030 --> 00:41:13.040 align:start position:0%
files you expect to touch, and explain
 

00:41:13.040 --> 00:41:16.230 align:start position:0%
files you expect to touch, and explain
how<00:41:13.280><c> you</c><00:41:13.480><c> will</c><00:41:13.880><c> verify."</c><00:41:14.840><c> That</c><00:41:15.200><c> gives</c><00:41:15.480><c> Codex</c><00:41:16.080><c> a</c>

00:41:16.230 --> 00:41:16.240 align:start position:0%
how you will verify." That gives Codex a
 

00:41:16.240 --> 00:41:19.590 align:start position:0%
how you will verify." That gives Codex a
much<00:41:17.000><c> cleaner</c><00:41:17.760><c> job.</c><00:41:18.480><c> For</c><00:41:18.680><c> implementation</c>

00:41:19.590 --> 00:41:19.600 align:start position:0%
much cleaner job. For implementation
 

00:41:19.600 --> 00:41:21.670 align:start position:0%
much cleaner job. For implementation
prompts,<00:41:20.440><c> I</c><00:41:20.560><c> want</c><00:41:20.800><c> the</c><00:41:20.920><c> request</c><00:41:21.440><c> to</c><00:41:21.520><c> be</c>

00:41:21.670 --> 00:41:21.680 align:start position:0%
prompts, I want the request to be
 

00:41:21.680 --> 00:41:25.190 align:start position:0%
prompts, I want the request to be
specific<00:41:22.360><c> enough</c><00:41:23.040><c> that</c><00:41:23.240><c> Codex</c><00:41:23.760><c> can</c><00:41:24.080><c> act,</c><00:41:24.960><c> but</c>

00:41:25.190 --> 00:41:25.200 align:start position:0%
specific enough that Codex can act, but
 

00:41:25.200 --> 00:41:27.270 align:start position:0%
specific enough that Codex can act, but
not<00:41:25.520><c> so</c><00:41:25.760><c> over-specified</c><00:41:26.960><c> that</c><00:41:27.160><c> I</c>

00:41:27.270 --> 00:41:27.280 align:start position:0%
not so over-specified that I
 

00:41:27.280 --> 00:41:30.750 align:start position:0%
not so over-specified that I
accidentally<00:41:28.240><c> force</c><00:41:28.920><c> the</c><00:41:29.120><c> wrong</c><00:41:29.440><c> solution.</c>

00:41:30.750 --> 00:41:30.760 align:start position:0%
accidentally force the wrong solution.
 

00:41:30.760 --> 00:41:33.430 align:start position:0%
accidentally force the wrong solution.
I<00:41:30.880><c> usually</c><00:41:31.360><c> describe</c><00:41:31.920><c> the</c><00:41:32.040><c> outcome</c><00:41:32.520><c> I</c><00:41:32.640><c> want,</c>

00:41:33.430 --> 00:41:33.440 align:start position:0%
I usually describe the outcome I want,
 

00:41:33.440 --> 00:41:35.750 align:start position:0%
I usually describe the outcome I want,
the<00:41:33.560><c> constraints</c><00:41:34.240><c> I</c><00:41:34.360><c> care</c><00:41:34.720><c> about,</c><00:41:35.480><c> and</c><00:41:35.640><c> the</c>

00:41:35.750 --> 00:41:35.760 align:start position:0%
the constraints I care about, and the
 

00:41:35.760 --> 00:41:38.910 align:start position:0%
the constraints I care about, and the
checks<00:41:36.480><c> that</c><00:41:36.760><c> need</c><00:41:37.080><c> to</c><00:41:37.240><c> pass.</c><00:41:37.880><c> Then</c><00:41:38.280><c> Codex</c><00:41:38.760><c> can</c>

00:41:38.910 --> 00:41:38.920 align:start position:0%
checks that need to pass. Then Codex can
 

00:41:38.920 --> 00:41:42.070 align:start position:0%
checks that need to pass. Then Codex can
use<00:41:39.120><c> the</c><00:41:39.280><c> actual</c><00:41:39.760><c> project</c><00:41:40.320><c> context</c><00:41:41.440><c> to</c><00:41:41.600><c> choose</c>

00:41:42.070 --> 00:41:42.080 align:start position:0%
use the actual project context to choose
 

00:41:42.080 --> 00:41:44.110 align:start position:0%
use the actual project context to choose
the<00:41:42.200><c> cleanest</c><00:41:42.920><c> path.</c><00:41:43.400><c> As</c><00:41:43.600><c> part</c><00:41:43.840><c> of</c><00:41:43.920><c> this</c>

00:41:44.110 --> 00:41:44.120 align:start position:0%
the cleanest path. As part of this
 

00:41:44.120 --> 00:41:46.510 align:start position:0%
the cleanest path. As part of this
workflow,<00:41:45.040><c> I</c><00:41:45.160><c> want</c><00:41:45.360><c> to</c><00:41:45.440><c> introduce</c><00:41:46.000><c> you</c><00:41:46.120><c> to</c><00:41:46.280><c> one</c>

00:41:46.510 --> 00:41:46.520 align:start position:0%
workflow, I want to introduce you to one
 

00:41:46.520 --> 00:41:49.150 align:start position:0%
workflow, I want to introduce you to one
of<00:41:46.600><c> the</c><00:41:46.720><c> most</c><00:41:47.120><c> important</c><00:41:47.600><c> Codex</c><00:41:48.040><c> features,</c>

00:41:49.150 --> 00:41:49.160 align:start position:0%
of the most important Codex features,
 

00:41:49.160 --> 00:41:52.630 align:start position:0%
of the most important Codex features,
plan<00:41:49.520><c> mode.</c><00:41:50.400><c> Plan</c><00:41:50.800><c> mode</c><00:41:51.120><c> is</c><00:41:51.320><c> a</c><00:41:51.400><c> superpower</c>

00:41:52.630 --> 00:41:52.640 align:start position:0%
plan mode. Plan mode is a superpower
 

00:41:52.640 --> 00:41:56.630 align:start position:0%
plan mode. Plan mode is a superpower
that<00:41:52.800><c> I</c><00:41:52.880><c> use</c><00:41:53.160><c> for</c><00:41:53.480><c> 80</c><00:41:53.960><c> to</c><00:41:54.120><c> 90%</c><00:41:55.160><c> of</c><00:41:55.320><c> my</c><00:41:55.480><c> prompts.</c>

00:41:56.630 --> 00:41:56.640 align:start position:0%
that I use for 80 to 90% of my prompts.
 

00:41:56.640 --> 00:41:58.830 align:start position:0%
that I use for 80 to 90% of my prompts.
There<00:41:56.800><c> are</c><00:41:56.880><c> two</c><00:41:57.240><c> main</c><00:41:57.600><c> benefits</c><00:41:58.240><c> to</c><00:41:58.360><c> using</c><00:41:58.720><c> the</c>

00:41:58.830 --> 00:41:58.840 align:start position:0%
There are two main benefits to using the
 

00:41:58.840 --> 00:42:00.190 align:start position:0%
There are two main benefits to using the
plan<00:41:59.200><c> mode.</c>

00:42:00.190 --> 00:42:00.200 align:start position:0%
plan mode.
 

00:42:00.200 --> 00:42:03.510 align:start position:0%
plan mode.
First,<00:42:01.120><c> it's</c><00:42:01.400><c> a</c><00:42:01.520><c> form</c><00:42:02.000><c> of</c><00:42:02.240><c> brainstorming</c>

00:42:03.510 --> 00:42:03.520 align:start position:0%
First, it's a form of brainstorming
 

00:42:03.520 --> 00:42:06.390 align:start position:0%
First, it's a form of brainstorming
where<00:42:03.760><c> the</c><00:42:03.920><c> model</c><00:42:04.400><c> cannot</c><00:42:04.840><c> change</c><00:42:05.520><c> or</c><00:42:05.800><c> alter</c>

00:42:06.390 --> 00:42:06.400 align:start position:0%
where the model cannot change or alter
 

00:42:06.400 --> 00:42:09.350 align:start position:0%
where the model cannot change or alter
your<00:42:06.640><c> files.</c><00:42:07.360><c> Second,</c><00:42:08.240><c> it's</c><00:42:08.560><c> a</c><00:42:08.720><c> way</c><00:42:09.080><c> for</c><00:42:09.240><c> the</c>

00:42:09.350 --> 00:42:09.360 align:start position:0%
your files. Second, it's a way for the
 

00:42:09.360 --> 00:42:12.870 align:start position:0%
your files. Second, it's a way for the
model<00:42:09.840><c> to</c><00:42:10.000><c> clarify</c><00:42:10.720><c> your</c><00:42:10.880><c> requests</c><00:42:11.960><c> by</c><00:42:12.280><c> asking</c>

00:42:12.870 --> 00:42:12.880 align:start position:0%
model to clarify your requests by asking
 

00:42:12.880 --> 00:42:15.550 align:start position:0%
model to clarify your requests by asking
follow-up<00:42:13.680><c> questions.</c><00:42:14.520><c> This</c><00:42:14.760><c> is</c><00:42:14.880><c> especially</c>

00:42:15.550 --> 00:42:15.560 align:start position:0%
follow-up questions. This is especially
 

00:42:15.560 --> 00:42:17.430 align:start position:0%
follow-up questions. This is especially
useful<00:42:16.120><c> when</c><00:42:16.280><c> the</c><00:42:16.400><c> request</c><00:42:16.960><c> is</c><00:42:17.120><c> under</c>

00:42:17.430 --> 00:42:17.440 align:start position:0%
useful when the request is under
 

00:42:17.440 --> 00:42:20.030 align:start position:0%
useful when the request is under
specified.<00:42:18.200><c> If</c><00:42:18.360><c> I</c><00:42:18.480><c> say,</c><00:42:19.080><c> "Build</c><00:42:19.520><c> the</c><00:42:19.600><c> booking</c>

00:42:20.030 --> 00:42:20.040 align:start position:0%
specified. If I say, "Build the booking
 

00:42:20.040 --> 00:42:21.870 align:start position:0%
specified. If I say, "Build the booking
flow."<00:42:20.840><c> there</c><00:42:21.040><c> are</c><00:42:21.120><c> a</c><00:42:21.160><c> lot</c><00:42:21.520><c> of</c><00:42:21.640><c> hidden</c>

00:42:21.870 --> 00:42:21.880 align:start position:0%
flow." there are a lot of hidden
 

00:42:21.880 --> 00:42:24.670 align:start position:0%
flow." there are a lot of hidden
decisions<00:42:22.600><c> inside</c><00:42:23.160><c> that</c><00:42:23.360><c> request.</c><00:42:24.360><c> What</c>

00:42:24.670 --> 00:42:24.680 align:start position:0%
decisions inside that request. What
 

00:42:24.680 --> 00:42:27.710 align:start position:0%
decisions inside that request. What
fields<00:42:25.280><c> does</c><00:42:25.480><c> the</c><00:42:25.600><c> form</c><00:42:25.920><c> need?</c><00:42:26.680><c> What</c><00:42:27.000><c> status</c>

00:42:27.710 --> 00:42:27.720 align:start position:0%
fields does the form need? What status
 

00:42:27.720 --> 00:42:30.070 align:start position:0%
fields does the form need? What status
should<00:42:27.920><c> the</c><00:42:28.040><c> booking</c><00:42:28.400><c> start</c><00:42:28.840><c> with?</c><00:42:29.400><c> Where</c>

00:42:30.070 --> 00:42:30.080 align:start position:0%
should the booking start with? Where
 

00:42:30.080 --> 00:42:31.790 align:start position:0%
should the booking start with? Where
should<00:42:30.360><c> the</c><00:42:30.440><c> booking</c><00:42:30.800><c> appear</c><00:42:31.560><c> for</c><00:42:31.680><c> the</c>

00:42:31.790 --> 00:42:31.800 align:start position:0%
should the booking appear for the
 

00:42:31.800 --> 00:42:34.710 align:start position:0%
should the booking appear for the
helper?<00:42:32.760><c> What</c><00:42:33.320><c> should</c><00:42:33.600><c> happen</c><00:42:34.320><c> after</c>

00:42:34.710 --> 00:42:34.720 align:start position:0%
helper? What should happen after
 

00:42:34.720 --> 00:42:37.190 align:start position:0%
helper? What should happen after
submission?<00:42:35.520><c> Plan</c><00:42:35.960><c> mode</c><00:42:36.280><c> gives</c><00:42:36.560><c> Codex</c><00:42:37.080><c> a</c>

00:42:37.190 --> 00:42:37.200 align:start position:0%
submission? Plan mode gives Codex a
 

00:42:37.200 --> 00:42:41.110 align:start position:0%
submission? Plan mode gives Codex a
chance<00:42:38.320><c> to</c><00:42:38.480><c> surface</c><00:42:39.200><c> those</c><00:42:39.480><c> questions</c><00:42:40.440><c> before</c>

00:42:41.110 --> 00:42:41.120 align:start position:0%
chance to surface those questions before
 

00:42:41.120 --> 00:42:43.870 align:start position:0%
chance to surface those questions before
it<00:42:41.320><c> edits</c><00:42:41.840><c> the</c><00:42:42.000><c> app.</c><00:42:42.440><c> I</c><00:42:42.560><c> also</c><00:42:42.960><c> use</c><00:42:43.240><c> plan</c><00:42:43.600><c> mode</c>

00:42:43.870 --> 00:42:43.880 align:start position:0%
it edits the app. I also use plan mode
 

00:42:43.880 --> 00:42:46.550 align:start position:0%
it edits the app. I also use plan mode
as<00:42:44.080><c> a</c><00:42:44.160><c> quality</c><00:42:44.760><c> filter.</c><00:42:45.680><c> If</c><00:42:45.840><c> the</c><00:42:45.960><c> plan</c><00:42:46.320><c> is</c>

00:42:46.550 --> 00:42:46.560 align:start position:0%
as a quality filter. If the plan is
 

00:42:46.560 --> 00:42:49.750 align:start position:0%
as a quality filter. If the plan is
vague,<00:42:47.520><c> too</c><00:42:47.800><c> large,</c><00:42:48.640><c> or</c><00:42:48.880><c> misses</c><00:42:49.360><c> something</c>

00:42:49.750 --> 00:42:49.760 align:start position:0%
vague, too large, or misses something
 

00:42:49.760 --> 00:42:52.310 align:start position:0%
vague, too large, or misses something
important,<00:42:50.800><c> I</c><00:42:50.960><c> know</c><00:42:51.280><c> the</c><00:42:51.400><c> implementation</c>

00:42:52.310 --> 00:42:52.320 align:start position:0%
important, I know the implementation
 

00:42:52.320 --> 00:42:54.470 align:start position:0%
important, I know the implementation
will<00:42:52.440><c> probably</c><00:42:52.960><c> be</c><00:42:53.160><c> messy.</c><00:42:53.760><c> If</c><00:42:53.920><c> the</c><00:42:54.040><c> plan</c><00:42:54.360><c> is</c>

00:42:54.470 --> 00:42:54.480 align:start position:0%
will probably be messy. If the plan is
 

00:42:54.480 --> 00:42:58.270 align:start position:0%
will probably be messy. If the plan is
specific,<00:42:55.520><c> scoped,</c><00:42:56.440><c> and</c><00:42:56.680><c> easy</c><00:42:57.000><c> to</c><00:42:57.200><c> verify,</c>

00:42:58.270 --> 00:42:58.280 align:start position:0%
specific, scoped, and easy to verify,
 

00:42:58.280 --> 00:43:01.630 align:start position:0%
specific, scoped, and easy to verify,
then<00:42:58.440><c> the</c><00:42:58.560><c> actual</c><00:42:59.040><c> coding</c><00:42:59.480><c> step</c><00:43:00.160><c> becomes</c><00:43:00.760><c> much</c>

00:43:01.630 --> 00:43:01.640 align:start position:0%
then the actual coding step becomes much
 

00:43:01.640 --> 00:43:03.950 align:start position:0%
then the actual coding step becomes much
safer.<00:43:02.520><c> So,</c><00:43:02.720><c> you</c><00:43:02.840><c> want</c><00:43:03.040><c> to</c><00:43:03.120><c> use</c><00:43:03.320><c> plan</c><00:43:03.720><c> mode</c>

00:43:03.950 --> 00:43:03.960 align:start position:0%
safer. So, you want to use plan mode
 

00:43:03.960 --> 00:43:06.870 align:start position:0%
safer. So, you want to use plan mode
initially<00:43:04.640><c> while</c><00:43:04.960><c> brainstorming</c><00:43:06.200><c> and</c><00:43:06.400><c> also</c>

00:43:06.870 --> 00:43:06.880 align:start position:0%
initially while brainstorming and also
 

00:43:06.880 --> 00:43:09.230 align:start position:0%
initially while brainstorming and also
as<00:43:07.000><c> you</c><00:43:07.120><c> enhance</c><00:43:07.680><c> your</c><00:43:07.960><c> app</c><00:43:08.560><c> because</c><00:43:08.880><c> it</c><00:43:09.000><c> gives</c>

00:43:09.230 --> 00:43:09.240 align:start position:0%
as you enhance your app because it gives
 

00:43:09.240 --> 00:43:11.750 align:start position:0%
as you enhance your app because it gives
the<00:43:09.360><c> model</c><00:43:09.800><c> a</c><00:43:10.000><c> chance</c><00:43:10.680><c> to</c><00:43:10.840><c> ask</c><00:43:11.120><c> follow-up</c>

00:43:11.750 --> 00:43:11.760 align:start position:0%
the model a chance to ask follow-up
 

00:43:11.760 --> 00:43:14.190 align:start position:0%
the model a chance to ask follow-up
questions<00:43:12.720><c> to</c><00:43:12.840><c> ensure</c><00:43:13.440><c> there's</c><00:43:13.720><c> no</c>

00:43:14.190 --> 00:43:14.200 align:start position:0%
questions to ensure there's no
 

00:43:14.200 --> 00:43:16.550 align:start position:0%
questions to ensure there's no
misunderstanding.<00:43:15.440><c> Now,</c><00:43:15.720><c> if</c><00:43:15.920><c> you're</c><00:43:16.120><c> working</c>

00:43:16.550 --> 00:43:16.560 align:start position:0%
misunderstanding. Now, if you're working
 

00:43:16.560 --> 00:43:19.150 align:start position:0%
misunderstanding. Now, if you're working
with<00:43:16.720><c> an</c><00:43:16.840><c> existing</c><00:43:17.440><c> repo,</c><00:43:18.280><c> the</c><00:43:18.440><c> first</c><00:43:18.880><c> step</c>

00:43:19.150 --> 00:43:19.160 align:start position:0%
with an existing repo, the first step
 

00:43:19.160 --> 00:43:21.990 align:start position:0%
with an existing repo, the first step
should<00:43:19.440><c> always</c><00:43:20.000><c> be</c><00:43:20.160><c> to</c><00:43:20.320><c> inspect.</c><00:43:21.480><c> Codex</c>

00:43:21.990 --> 00:43:22.000 align:start position:0%
should always be to inspect. Codex
 

00:43:22.000 --> 00:43:24.510 align:start position:0%
should always be to inspect. Codex
should<00:43:22.280><c> understand</c><00:43:22.840><c> the</c><00:43:22.920><c> files,</c><00:43:24.040><c> the</c><00:43:24.240><c> app</c>

00:43:24.510 --> 00:43:24.520 align:start position:0%
should understand the files, the app
 

00:43:24.520 --> 00:43:27.270 align:start position:0%
should understand the files, the app
structure,<00:43:25.520><c> the</c><00:43:25.640><c> current</c><00:43:26.080><c> state,</c><00:43:26.960><c> and</c><00:43:27.160><c> the</c>

00:43:27.270 --> 00:43:27.280 align:start position:0%
structure, the current state, and the
 

00:43:27.280 --> 00:43:30.150 align:start position:0%
structure, the current state, and the
goal<00:43:27.840><c> before</c><00:43:28.240><c> changing</c><00:43:28.920><c> anything.</c>

00:43:30.150 --> 00:43:30.160 align:start position:0%
goal before changing anything.
 

00:43:30.160 --> 00:43:32.550 align:start position:0%
goal before changing anything.
Then<00:43:30.400><c> it</c><00:43:30.520><c> should</c><00:43:30.760><c> plan</c><00:43:31.160><c> the</c><00:43:31.280><c> work</c><00:43:31.800><c> in</c><00:43:31.920><c> a</c><00:43:32.000><c> way</c>

00:43:32.550 --> 00:43:32.560 align:start position:0%
Then it should plan the work in a way
 

00:43:32.560 --> 00:43:35.310 align:start position:0%
Then it should plan the work in a way
that<00:43:32.760><c> is</c><00:43:32.920><c> small</c><00:43:33.400><c> enough</c><00:43:33.680><c> to</c><00:43:33.800><c> review.</c><00:43:34.960><c> Only</c>

00:43:35.310 --> 00:43:35.320 align:start position:0%
that is small enough to review. Only
 

00:43:35.320 --> 00:43:38.070 align:start position:0%
that is small enough to review. Only
then,<00:43:36.120><c> once</c><00:43:36.480><c> Codex</c><00:43:36.960><c> is</c><00:43:37.160><c> fully</c><00:43:37.480><c> in</c><00:43:37.640><c> sync</c><00:43:37.960><c> with</c>

00:43:38.070 --> 00:43:38.080 align:start position:0%
then, once Codex is fully in sync with
 

00:43:38.080 --> 00:43:40.510 align:start position:0%
then, once Codex is fully in sync with
your<00:43:38.280><c> goals,</c><00:43:39.040><c> should</c><00:43:39.280><c> it</c><00:43:39.400><c> make</c><00:43:39.800><c> the</c><00:43:39.960><c> actual</c>

00:43:40.510 --> 00:43:40.520 align:start position:0%
your goals, should it make the actual
 

00:43:40.520 --> 00:43:43.270 align:start position:0%
your goals, should it make the actual
edits<00:43:41.200><c> and</c><00:43:41.480><c> write</c><00:43:41.760><c> code.</c><00:43:42.320><c> Once</c><00:43:42.640><c> the</c><00:43:42.760><c> code</c><00:43:43.080><c> is</c>

00:43:43.270 --> 00:43:43.280 align:start position:0%
edits and write code. Once the code is
 

00:43:43.280 --> 00:43:45.630 align:start position:0%
edits and write code. Once the code is
written,<00:43:44.000><c> it</c><00:43:44.160><c> should</c><00:43:44.440><c> verify</c><00:43:45.040><c> the</c><00:43:45.160><c> code</c><00:43:45.520><c> with</c>

00:43:45.630 --> 00:43:45.640 align:start position:0%
written, it should verify the code with
 

00:43:45.640 --> 00:43:48.870 align:start position:0%
written, it should verify the code with
the<00:43:45.760><c> browser,</c><00:43:46.720><c> terminal,</c><00:43:47.640><c> using</c><00:43:48.000><c> tests,</c><00:43:48.640><c> or</c>

00:43:48.870 --> 00:43:48.880 align:start position:0%
the browser, terminal, using tests, or
 

00:43:48.880 --> 00:43:51.430 align:start position:0%
the browser, terminal, using tests, or
the<00:43:49.080><c> build</c><00:43:49.480><c> output.</c><00:43:50.040><c> And</c><00:43:50.240><c> finally,</c><00:43:51.040><c> it</c><00:43:51.200><c> should</c>

00:43:51.430 --> 00:43:51.440 align:start position:0%
the build output. And finally, it should
 

00:43:51.440 --> 00:43:54.830 align:start position:0%
the build output. And finally, it should
report<00:43:52.040><c> what</c><00:43:52.320><c> changed</c><00:43:53.240><c> and</c><00:43:53.480><c> what</c><00:43:53.760><c> still</c><00:43:54.320><c> needs</c>

00:43:54.830 --> 00:43:54.840 align:start position:0%
report what changed and what still needs
 

00:43:54.840 --> 00:43:57.270 align:start position:0%
report what changed and what still needs
attention.<00:43:55.560><c> Verification</c><00:43:56.560><c> is</c><00:43:56.680><c> the</c><00:43:56.840><c> part</c><00:43:57.200><c> I</c>

00:43:57.270 --> 00:43:57.280 align:start position:0%
attention. Verification is the part I
 

00:43:57.280 --> 00:43:59.670 align:start position:0%
attention. Verification is the part I
want<00:43:57.480><c> to</c><00:43:57.560><c> emphasize.</c><00:43:58.560><c> A</c><00:43:58.720><c> task</c><00:43:59.280><c> is</c><00:43:59.400><c> not</c>

00:43:59.670 --> 00:43:59.680 align:start position:0%
want to emphasize. A task is not
 

00:43:59.680 --> 00:44:03.310 align:start position:0%
want to emphasize. A task is not
finished<00:44:00.720><c> just</c><00:44:01.120><c> because</c><00:44:01.560><c> Codex</c><00:44:02.080><c> wrote</c><00:44:02.400><c> code.</c>

00:44:03.310 --> 00:44:03.320 align:start position:0%
finished just because Codex wrote code.
 

00:44:03.320 --> 00:44:06.070 align:start position:0%
finished just because Codex wrote code.
For<00:44:03.480><c> UI</c><00:44:03.880><c> work,</c><00:44:04.440><c> I</c><00:44:04.520><c> want</c><00:44:04.720><c> to</c><00:44:04.760><c> see</c><00:44:04.920><c> the</c><00:44:05.040><c> browser.</c>

00:44:06.070 --> 00:44:06.080 align:start position:0%
For UI work, I want to see the browser.
 

00:44:06.080 --> 00:44:08.110 align:start position:0%
For UI work, I want to see the browser.
For<00:44:06.280><c> back-end</c><00:44:06.880><c> work,</c><00:44:07.480><c> I</c><00:44:07.640><c> want</c><00:44:07.840><c> to</c><00:44:07.880><c> see</c><00:44:08.000><c> the</c>

00:44:08.110 --> 00:44:08.120 align:start position:0%
For back-end work, I want to see the
 

00:44:08.120 --> 00:44:10.950 align:start position:0%
For back-end work, I want to see the
function<00:44:08.560><c> call,</c><00:44:09.200><c> the</c><00:44:09.360><c> dashboard</c><00:44:09.960><c> row,</c><00:44:10.600><c> or</c><00:44:10.760><c> the</c>

00:44:10.950 --> 00:44:10.960 align:start position:0%
function call, the dashboard row, or the
 

00:44:10.960 --> 00:44:14.310 align:start position:0%
function call, the dashboard row, or the
test<00:44:11.400><c> results.</c><00:44:12.440><c> For</c><00:44:12.640><c> deployment</c><00:44:13.440><c> work,</c><00:44:14.200><c> I</c>

00:44:14.310 --> 00:44:14.320 align:start position:0%
test results. For deployment work, I
 

00:44:14.320 --> 00:44:17.990 align:start position:0%
test results. For deployment work, I
want<00:44:14.560><c> the</c><00:44:14.680><c> live</c><00:44:15.080><c> URL</c><00:44:15.960><c> and</c><00:44:16.120><c> a</c><00:44:16.240><c> real</c><00:44:16.600><c> smoke</c><00:44:17.080><c> test.</c>

00:44:17.990 --> 00:44:18.000 align:start position:0%
want the live URL and a real smoke test.
 

00:44:18.000 --> 00:44:20.550 align:start position:0%
want the live URL and a real smoke test.
That<00:44:18.360><c> habit</c><00:44:19.040><c> keeps</c><00:44:19.320><c> the</c><00:44:19.440><c> workflow</c><00:44:19.920><c> grounded</c>

00:44:20.550 --> 00:44:20.560 align:start position:0%
That habit keeps the workflow grounded
 

00:44:20.560 --> 00:44:23.350 align:start position:0%
That habit keeps the workflow grounded
in<00:44:20.720><c> evidence</c><00:44:21.720><c> instead</c><00:44:22.120><c> of</c><00:44:22.440><c> trusting</c><00:44:23.080><c> that</c><00:44:23.240><c> the</c>

00:44:23.350 --> 00:44:23.360 align:start position:0%
in evidence instead of trusting that the
 

00:44:23.360 --> 00:44:26.550 align:start position:0%
in evidence instead of trusting that the
code<00:44:23.720><c> is</c><00:44:23.960><c> probably</c><00:44:24.840><c> fine.</c><00:44:25.440><c> Additionally,</c><00:44:26.320><c> you</c>

00:44:26.550 --> 00:44:26.560 align:start position:0%
code is probably fine. Additionally, you
 

00:44:26.560 --> 00:44:29.270 align:start position:0%
code is probably fine. Additionally, you
always<00:44:27.160><c> want</c><00:44:27.360><c> to</c><00:44:27.440><c> break</c><00:44:27.880><c> big</c><00:44:28.200><c> tasks</c><00:44:29.000><c> into</c>

00:44:29.270 --> 00:44:29.280 align:start position:0%
always want to break big tasks into
 

00:44:29.280 --> 00:44:32.150 align:start position:0%
always want to break big tasks into
smaller<00:44:29.800><c> one.</c><00:44:30.560><c> Instead</c><00:44:30.880><c> of</c><00:44:31.000><c> asking</c><00:44:31.400><c> Codex</c><00:44:32.000><c> to</c>

00:44:32.150 --> 00:44:32.160 align:start position:0%
smaller one. Instead of asking Codex to
 

00:44:32.160 --> 00:44:34.390 align:start position:0%
smaller one. Instead of asking Codex to
build<00:44:32.560><c> the</c><00:44:32.640><c> whole</c><00:44:32.840><c> marketplace</c><00:44:33.960><c> as</c><00:44:34.160><c> one</c>

00:44:34.390 --> 00:44:34.400 align:start position:0%
build the whole marketplace as one
 

00:44:34.400 --> 00:44:36.990 align:start position:0%
build the whole marketplace as one
prompt,<00:44:35.440><c> you</c><00:44:35.560><c> want</c><00:44:35.720><c> to</c><00:44:35.800><c> ask</c><00:44:36.160><c> it</c><00:44:36.320><c> to</c><00:44:36.480><c> plan</c><00:44:36.840><c> the</c>

00:44:36.990 --> 00:44:37.000 align:start position:0%
prompt, you want to ask it to plan the
 

00:44:37.000 --> 00:44:40.630 align:start position:0%
prompt, you want to ask it to plan the
app,<00:44:37.840><c> build</c><00:44:38.160><c> the</c><00:44:38.280><c> first</c><00:44:38.680><c> UI</c><00:44:38.960><c> shell,</c><00:44:39.840><c> wire</c><00:44:40.360><c> one</c>

00:44:40.630 --> 00:44:40.640 align:start position:0%
app, build the first UI shell, wire one
 

00:44:40.640 --> 00:44:43.710 align:start position:0%
app, build the first UI shell, wire one
initial<00:44:41.120><c> database</c><00:44:41.800><c> backed</c><00:44:42.200><c> version,</c><00:44:43.280><c> add</c><00:44:43.600><c> the</c>

00:44:43.710 --> 00:44:43.720 align:start position:0%
initial database backed version, add the
 

00:44:43.720 --> 00:44:46.510 align:start position:0%
initial database backed version, add the
booking<00:44:44.120><c> flow,</c><00:44:44.720><c> add</c><00:44:45.000><c> the</c><00:44:45.120><c> helper</c><00:44:45.520><c> dashboard,</c>

00:44:46.510 --> 00:44:46.520 align:start position:0%
booking flow, add the helper dashboard,
 

00:44:46.520 --> 00:44:47.870 align:start position:0%
booking flow, add the helper dashboard,
and<00:44:46.680><c> so</c><00:44:47.000><c> on.</c>

00:44:47.870 --> 00:44:47.880 align:start position:0%
and so on.
 

00:44:47.880 --> 00:44:51.270 align:start position:0%
and so on.
Each<00:44:48.240><c> step</c><00:44:48.720><c> has</c><00:44:48.920><c> a</c><00:44:49.040><c> clear</c><00:44:49.440><c> target</c><00:44:50.360><c> and</c><00:44:50.600><c> a</c><00:44:50.680><c> clear</c>

00:44:51.270 --> 00:44:51.280 align:start position:0%
Each step has a clear target and a clear
 

00:44:51.280 --> 00:44:54.030 align:start position:0%
Each step has a clear target and a clear
way<00:44:51.600><c> to</c><00:44:51.800><c> check</c><00:44:52.640><c> whether</c><00:44:53.000><c> it</c><00:44:53.080><c> worked.</c><00:44:53.640><c> A</c><00:44:53.760><c> good</c>

00:44:54.030 --> 00:44:54.040 align:start position:0%
way to check whether it worked. A good
 

00:44:54.040 --> 00:44:56.870 align:start position:0%
way to check whether it worked. A good
Codex<00:44:54.560><c> task</c><00:44:55.200><c> should</c><00:44:55.440><c> usually</c><00:44:55.840><c> fit</c><00:44:56.200><c> into</c><00:44:56.480><c> one</c>

00:44:56.870 --> 00:44:56.880 align:start position:0%
Codex task should usually fit into one
 

00:44:56.880 --> 00:44:59.430 align:start position:0%
Codex task should usually fit into one
reviewable<00:44:57.640><c> outcome.</c><00:44:58.360><c> Create</c><00:44:58.920><c> the</c><00:44:59.040><c> first</c>

00:44:59.430 --> 00:44:59.440 align:start position:0%
reviewable outcome. Create the first
 

00:44:59.440 --> 00:45:01.870 align:start position:0%
reviewable outcome. Create the first
static<00:45:00.000><c> marketplace</c><00:45:00.680><c> homepage</c><00:45:01.640><c> is</c>

00:45:01.870 --> 00:45:01.880 align:start position:0%
static marketplace homepage is
 

00:45:01.880 --> 00:45:04.790 align:start position:0%
static marketplace homepage is
reviewable.<00:45:02.760><c> Wire</c><00:45:03.240><c> service</c><00:45:03.960><c> listings</c><00:45:04.520><c> from</c>

00:45:04.790 --> 00:45:04.800 align:start position:0%
reviewable. Wire service listings from
 

00:45:04.800 --> 00:45:08.430 align:start position:0%
reviewable. Wire service listings from
Convex<00:45:06.040><c> is</c><00:45:06.320><c> reviewable.</c><00:45:07.640><c> Add</c><00:45:08.040><c> booking</c>

00:45:08.430 --> 00:45:08.440 align:start position:0%
Convex is reviewable. Add booking
 

00:45:08.440 --> 00:45:10.590 align:start position:0%
Convex is reviewable. Add booking
creation<00:45:09.160><c> and</c><00:45:09.360><c> verify</c><00:45:09.920><c> the</c><00:45:10.040><c> booking</c><00:45:10.440><c> row</c>

00:45:10.590 --> 00:45:10.600 align:start position:0%
creation and verify the booking row
 

00:45:10.600 --> 00:45:13.750 align:start position:0%
creation and verify the booking row
appears<00:45:11.760><c> is</c><00:45:12.040><c> reviewable.</c><00:45:12.880><c> Build</c><00:45:13.280><c> the</c><00:45:13.400><c> whole</c>

00:45:13.750 --> 00:45:13.760 align:start position:0%
appears is reviewable. Build the whole
 

00:45:13.760 --> 00:45:17.150 align:start position:0%
appears is reviewable. Build the whole
app<00:45:14.680><c> is</c><00:45:14.840><c> not</c><00:45:15.160><c> reviewable</c><00:45:16.200><c> because</c><00:45:16.880><c> there</c><00:45:17.040><c> are</c>

00:45:17.150 --> 00:45:17.160 align:start position:0%
app is not reviewable because there are
 

00:45:17.160 --> 00:45:19.950 align:start position:0%
app is not reviewable because there are
too<00:45:17.400><c> many</c><00:45:17.720><c> decisions</c><00:45:18.480><c> happening</c><00:45:19.280><c> at</c><00:45:19.480><c> once.</c>

00:45:19.950 --> 00:45:19.960 align:start position:0%
too many decisions happening at once.
 

00:45:19.960 --> 00:45:22.430 align:start position:0%
too many decisions happening at once.
So,<00:45:20.120><c> the</c><00:45:20.280><c> workflow</c><00:45:20.800><c> is</c><00:45:21.040><c> not</c><00:45:21.440><c> just</c><00:45:21.720><c> a</c><00:45:21.840><c> technical</c>

00:45:22.430 --> 00:45:22.440 align:start position:0%
So, the workflow is not just a technical
 

00:45:22.440 --> 00:45:25.670 align:start position:0%
So, the workflow is not just a technical
process.<00:45:23.640><c> It</c><00:45:23.760><c> is</c><00:45:23.920><c> also</c><00:45:24.480><c> a</c><00:45:24.640><c> way</c><00:45:25.080><c> to</c><00:45:25.280><c> stay</c><00:45:25.560><c> in</c>

00:45:25.670 --> 00:45:25.680 align:start position:0%
process. It is also a way to stay in
 

00:45:25.680 --> 00:45:28.630 align:start position:0%
process. It is also a way to stay in
control.<00:45:26.800><c> We</c><00:45:27.000><c> let</c><00:45:27.280><c> Codex</c><00:45:27.760><c> do</c><00:45:27.960><c> meaningful</c>

00:45:28.630 --> 00:45:28.640 align:start position:0%
control. We let Codex do meaningful
 

00:45:28.640 --> 00:45:31.870 align:start position:0%
control. We let Codex do meaningful
work,<00:45:29.560><c> but</c><00:45:29.840><c> we</c><00:45:30.080><c> keep</c><00:45:30.520><c> the</c><00:45:30.640><c> work</c><00:45:31.000><c> divided</c><00:45:31.600><c> into</c>

00:45:31.870 --> 00:45:31.880 align:start position:0%
work, but we keep the work divided into
 

00:45:31.880 --> 00:45:34.110 align:start position:0%
work, but we keep the work divided into
chunks<00:45:32.760><c> where</c><00:45:33.080><c> we</c><00:45:33.240><c> can</c><00:45:33.440><c> understand</c><00:45:34.040><c> the</c>

00:45:34.110 --> 00:45:34.120 align:start position:0%
chunks where we can understand the
 

00:45:34.120 --> 00:45:37.350 align:start position:0%
chunks where we can understand the
change,<00:45:35.000><c> approve</c><00:45:35.400><c> the</c><00:45:35.520><c> direction,</c><00:45:36.680><c> and</c><00:45:36.880><c> catch</c>

00:45:37.350 --> 00:45:37.360 align:start position:0%
change, approve the direction, and catch
 

00:45:37.360 --> 00:45:40.270 align:start position:0%
change, approve the direction, and catch
problems<00:45:38.360><c> before</c><00:45:39.120><c> they</c><00:45:39.320><c> spread.</c><00:45:40.000><c> And</c><00:45:40.120><c> so,</c>

00:45:40.270 --> 00:45:40.280 align:start position:0%
problems before they spread. And so,
 

00:45:40.280 --> 00:45:42.350 align:start position:0%
problems before they spread. And so,
here<00:45:40.560><c> I</c><00:45:40.640><c> am</c><00:45:40.840><c> back</c><00:45:41.080><c> in</c><00:45:41.200><c> Codex,</c><00:45:41.760><c> and</c><00:45:42.040><c> you</c><00:45:42.160><c> can</c>

00:45:42.350 --> 00:45:42.360 align:start position:0%
here I am back in Codex, and you can
 

00:45:42.360 --> 00:45:45.110 align:start position:0%
here I am back in Codex, and you can
enable<00:45:42.880><c> plan</c><00:45:43.200><c> mode</c><00:45:43.440><c> by</c><00:45:43.600><c> pressing</c><00:45:44.080><c> shift</c><00:45:44.480><c> tab,</c>

00:45:45.110 --> 00:45:45.120 align:start position:0%
enable plan mode by pressing shift tab,
 

00:45:45.120 --> 00:45:47.070 align:start position:0%
enable plan mode by pressing shift tab,
and<00:45:45.280><c> here</c><00:45:45.520><c> you</c><00:45:45.640><c> have</c><00:45:45.840><c> plan</c><00:45:46.160><c> mode.</c><00:45:46.440><c> Or,</c><00:45:46.840><c> you</c><00:45:46.960><c> can</c>

00:45:47.070 --> 00:45:47.080 align:start position:0%
and here you have plan mode. Or, you can
 

00:45:47.080 --> 00:45:49.870 align:start position:0%
and here you have plan mode. Or, you can
click<00:45:47.400><c> here</c><00:45:48.240><c> and</c><00:45:48.480><c> toggle</c><00:45:49.000><c> this.</c><00:45:49.360><c> I</c><00:45:49.440><c> typically</c>

00:45:49.870 --> 00:45:49.880 align:start position:0%
click here and toggle this. I typically
 

00:45:49.880 --> 00:45:52.030 align:start position:0%
click here and toggle this. I typically
just<00:45:50.120><c> use</c><00:45:50.320><c> shift</c><00:45:50.600><c> tab</c><00:45:51.000><c> cuz</c><00:45:51.160><c> it's</c><00:45:51.360><c> a</c><00:45:51.400><c> lot</c><00:45:51.680><c> easier</c>

00:45:52.030 --> 00:45:52.040 align:start position:0%
just use shift tab cuz it's a lot easier
 

00:45:52.040 --> 00:45:53.830 align:start position:0%
just use shift tab cuz it's a lot easier
and<00:45:52.160><c> it's</c><00:45:52.320><c> a</c><00:45:52.360><c> lot</c><00:45:52.600><c> faster.</c>

00:45:53.830 --> 00:45:53.840 align:start position:0%
and it's a lot faster.
 

00:45:53.840 --> 00:45:55.750 align:start position:0%
and it's a lot faster.
And<00:45:53.960><c> then,</c><00:45:54.120><c> whenever</c><00:45:54.560><c> I'm</c><00:45:54.720><c> in</c><00:45:54.880><c> plan</c><00:45:55.320><c> mode,</c><00:45:55.640><c> I</c>

00:45:55.750 --> 00:45:55.760 align:start position:0%
And then, whenever I'm in plan mode, I
 

00:45:55.760 --> 00:45:58.070 align:start position:0%
And then, whenever I'm in plan mode, I
can<00:45:55.920><c> start</c><00:45:56.520><c> brainstorming.</c><00:45:57.480><c> And</c><00:45:57.600><c> not</c><00:45:57.840><c> only</c>

00:45:58.070 --> 00:45:58.080 align:start position:0%
can start brainstorming. And not only
 

00:45:58.080 --> 00:46:01.510 align:start position:0%
can start brainstorming. And not only
that,<00:45:58.920><c> it's</c><00:45:59.200><c> useful</c><00:45:59.720><c> because</c><00:46:00.240><c> Codex</c><00:46:00.920><c> will</c><00:46:01.120><c> not</c>

00:46:01.510 --> 00:46:01.520 align:start position:0%
that, it's useful because Codex will not
 

00:46:01.520 --> 00:46:03.950 align:start position:0%
that, it's useful because Codex will not
make<00:46:01.840><c> changes</c><00:46:02.440><c> whenever</c><00:46:02.760><c> it's</c><00:46:02.920><c> in</c><00:46:03.000><c> plan</c><00:46:03.320><c> mode,</c>

00:46:03.950 --> 00:46:03.960 align:start position:0%
make changes whenever it's in plan mode,
 

00:46:03.960 --> 00:46:06.710 align:start position:0%
make changes whenever it's in plan mode,
and<00:46:04.120><c> it</c><00:46:04.280><c> also</c><00:46:04.680><c> gives</c><00:46:04.960><c> Codex</c><00:46:05.560><c> to</c><00:46:05.840><c> come</c><00:46:06.240><c> back</c><00:46:06.600><c> to</c>

00:46:06.710 --> 00:46:06.720 align:start position:0%
and it also gives Codex to come back to
 

00:46:06.720 --> 00:46:09.110 align:start position:0%
and it also gives Codex to come back to
you<00:46:06.840><c> with</c><00:46:07.080><c> follow-up</c><00:46:07.760><c> clarifying</c><00:46:08.480><c> questions,</c>

00:46:09.110 --> 00:46:09.120 align:start position:0%
you with follow-up clarifying questions,
 

00:46:09.120 --> 00:46:11.790 align:start position:0%
you with follow-up clarifying questions,
and<00:46:09.240><c> I</c><00:46:09.320><c> find</c><00:46:09.560><c> that</c><00:46:09.800><c> super</c><00:46:10.840><c> super</c><00:46:11.240><c> helpful</c>

00:46:11.790 --> 00:46:11.800 align:start position:0%
and I find that super super helpful
 

00:46:11.800 --> 00:46:14.750 align:start position:0%
and I find that super super helpful
because<00:46:12.880><c> we</c><00:46:13.080><c> always</c><00:46:13.600><c> want</c><00:46:13.800><c> to</c><00:46:13.840><c> make</c><00:46:14.120><c> sure</c><00:46:14.520><c> that</c>

00:46:14.750 --> 00:46:14.760 align:start position:0%
because we always want to make sure that
 

00:46:14.760 --> 00:46:17.350 align:start position:0%
because we always want to make sure that
Codex<00:46:15.280><c> knows</c><00:46:15.640><c> exactly</c><00:46:16.560><c> what</c><00:46:16.720><c> it's</c><00:46:16.880><c> doing.</c><00:46:17.240><c> We</c>

00:46:17.350 --> 00:46:17.360 align:start position:0%
Codex knows exactly what it's doing. We
 

00:46:17.360 --> 00:46:18.710 align:start position:0%
Codex knows exactly what it's doing. We
never

00:46:18.710 --> 00:46:18.720 align:start position:0%
never
 

00:46:18.720 --> 00:46:21.590 align:start position:0%
never
the<00:46:18.880><c> last</c><00:46:19.240><c> thing</c><00:46:19.400><c> that</c><00:46:19.560><c> we</c><00:46:19.720><c> want</c><00:46:20.320><c> is</c><00:46:20.840><c> for</c><00:46:21.040><c> Codex</c>

00:46:21.590 --> 00:46:21.600 align:start position:0%
the last thing that we want is for Codex
 

00:46:21.600 --> 00:46:24.390 align:start position:0%
the last thing that we want is for Codex
to<00:46:21.760><c> assume</c><00:46:22.320><c> something.</c><00:46:23.360><c> We</c><00:46:23.520><c> never</c><00:46:24.000><c> want</c><00:46:24.200><c> it</c><00:46:24.280><c> to</c>

00:46:24.390 --> 00:46:24.400 align:start position:0%
to assume something. We never want it to
 

00:46:24.400 --> 00:46:26.550 align:start position:0%
to assume something. We never want it to
assume<00:46:24.800><c> anything.</c><00:46:25.320><c> We</c><00:46:25.520><c> always</c><00:46:26.120><c> want</c><00:46:26.280><c> to</c><00:46:26.360><c> make</c>

00:46:26.550 --> 00:46:26.560 align:start position:0%
assume anything. We always want to make
 

00:46:26.560 --> 00:46:28.870 align:start position:0%
assume anything. We always want to make
sure<00:46:26.960><c> that</c><00:46:27.200><c> we</c><00:46:27.360><c> are</c><00:46:27.480><c> on</c><00:46:27.600><c> the</c><00:46:27.680><c> same</c><00:46:28.040><c> page.</c><00:46:28.720><c> And</c>

00:46:28.870 --> 00:46:28.880 align:start position:0%
sure that we are on the same page. And
 

00:46:28.880 --> 00:46:30.510 align:start position:0%
sure that we are on the same page. And
so,<00:46:29.040><c> let's</c><00:46:29.280><c> say</c><00:46:29.440><c> I</c><00:46:29.480><c> have</c><00:46:29.640><c> a</c><00:46:29.720><c> command</c><00:46:30.160><c> over</c><00:46:30.320><c> here</c>

00:46:30.510 --> 00:46:30.520 align:start position:0%
so, let's say I have a command over here
 

00:46:30.520 --> 00:46:32.830 align:start position:0%
so, let's say I have a command over here
going,<00:46:31.360><c> and</c><00:46:31.920><c> I</c><00:46:32.080><c> want</c><00:46:32.320><c> to</c><00:46:32.400><c> build</c><00:46:32.720><c> an</c>

00:46:32.830 --> 00:46:32.840 align:start position:0%
going, and I want to build an
 

00:46:32.840 --> 00:46:34.670 align:start position:0%
going, and I want to build an
architecture.<00:46:33.600><c> I</c><00:46:33.640><c> want</c><00:46:33.880><c> to</c><00:46:33.920><c> build</c><00:46:34.200><c> some</c><00:46:34.440><c> kind</c>

00:46:34.670 --> 00:46:34.680 align:start position:0%
architecture. I want to build some kind
 

00:46:34.680 --> 00:46:37.350 align:start position:0%
architecture. I want to build some kind
of<00:46:34.800><c> a</c><00:46:35.280><c> an</c><00:46:35.440><c> intricate</c><00:46:35.960><c> architecture.</c>

00:46:37.350 --> 00:46:37.360 align:start position:0%
of a an intricate architecture.
 

00:46:37.360 --> 00:46:40.070 align:start position:0%
of a an intricate architecture.
And,<00:46:38.280><c> you</c><00:46:38.360><c> know,</c><00:46:38.600><c> I</c><00:46:38.920><c> I</c><00:46:39.080><c> want</c><00:46:39.320><c> to</c><00:46:39.400><c> make</c><00:46:39.640><c> sure</c>

00:46:40.070 --> 00:46:40.080 align:start position:0%
And, you know, I I want to make sure
 

00:46:40.080 --> 00:46:41.870 align:start position:0%
And, you know, I I want to make sure
that<00:46:40.320><c> we</c><00:46:40.440><c> built</c><00:46:40.720><c> out</c><00:46:40.840><c> an</c><00:46:40.960><c> architecture.</c><00:46:41.560><c> I</c><00:46:41.680><c> may</c>

00:46:41.870 --> 00:46:41.880 align:start position:0%
that we built out an architecture. I may
 

00:46:41.880 --> 00:46:44.510 align:start position:0%
that we built out an architecture. I may
not<00:46:42.360><c> know</c><00:46:42.600><c> exactly</c><00:46:43.480><c> how</c><00:46:43.680><c> far</c><00:46:43.960><c> I</c><00:46:44.040><c> want</c><00:46:44.240><c> to</c><00:46:44.320><c> go,</c>

00:46:44.510 --> 00:46:44.520 align:start position:0%
not know exactly how far I want to go,
 

00:46:44.520 --> 00:46:46.510 align:start position:0%
not know exactly how far I want to go,
exactly<00:46:45.120><c> all</c><00:46:45.240><c> the</c><00:46:45.360><c> details,</c>

00:46:46.510 --> 00:46:46.520 align:start position:0%
exactly all the details,
 

00:46:46.520 --> 00:46:48.870 align:start position:0%
exactly all the details,
but<00:46:46.640><c> I</c><00:46:46.720><c> want</c><00:46:46.920><c> to</c><00:46:46.960><c> make</c><00:46:47.160><c> sure</c><00:46:47.320><c> that</c><00:46:47.520><c> Codex</c><00:46:48.520><c> is</c><00:46:48.760><c> on</c>

00:46:48.870 --> 00:46:48.880 align:start position:0%
but I want to make sure that Codex is on
 

00:46:48.880 --> 00:46:50.790 align:start position:0%
but I want to make sure that Codex is on
the<00:46:49.000><c> same</c><00:46:49.400><c> page.</c><00:46:49.760><c> So,</c><00:46:49.880><c> I</c><00:46:49.920><c> can</c><00:46:50.120><c> say</c><00:46:50.320><c> something</c>

00:46:50.790 --> 00:46:50.800 align:start position:0%
the same page. So, I can say something
 

00:46:50.800 --> 00:46:55.070 align:start position:0%
the same page. So, I can say something
like,<00:46:51.680><c> "Come</c><00:46:52.120><c> up</c><00:46:52.760><c> with</c><00:46:52.960><c> an</c><00:46:53.120><c> architecture</c><00:46:54.560><c> that</c>

00:46:55.070 --> 00:46:55.080 align:start position:0%
like, "Come up with an architecture that
 

00:46:55.080 --> 00:46:59.470 align:start position:0%
like, "Come up with an architecture that
will<00:46:55.360><c> allow</c><00:46:55.960><c> me</c><00:46:56.480><c> to</c><00:46:56.720><c> create</c><00:46:57.400><c> both</c><00:46:58.560><c> web</c><00:46:59.240><c> and</c>

00:46:59.470 --> 00:46:59.480 align:start position:0%
will allow me to create both web and
 

00:46:59.480 --> 00:47:02.470 align:start position:0%
will allow me to create both web and
mobile<00:47:00.240><c> and</c><00:47:00.520><c> desktop</c><00:47:01.200><c> versions</c><00:47:01.880><c> of</c><00:47:02.040><c> the</c><00:47:02.160><c> app.</c>

00:47:02.470 --> 00:47:02.480 align:start position:0%
mobile and desktop versions of the app.
 

00:47:02.480 --> 00:47:07.110 align:start position:0%
mobile and desktop versions of the app.
Ensure<00:47:03.200><c> it</c><00:47:03.360><c> is</c><00:47:03.560><c> fast</c><00:47:04.680><c> and</c><00:47:04.920><c> robust.</c><00:47:05.880><c> Okay?</c><00:47:06.840><c> I'm</c>

00:47:07.110 --> 00:47:07.120 align:start position:0%
Ensure it is fast and robust. Okay? I'm
 

00:47:07.120 --> 00:47:09.230 align:start position:0%
Ensure it is fast and robust. Okay? I'm
here<00:47:07.360><c> in</c><00:47:07.520><c> plan</c><00:47:07.880><c> mode,</c><00:47:08.240><c> and</c><00:47:08.400><c> typically</c><00:47:08.960><c> with</c>

00:47:09.230 --> 00:47:09.240 align:start position:0%
here in plan mode, and typically with
 

00:47:09.240 --> 00:47:12.670 align:start position:0%
here in plan mode, and typically with
this<00:47:09.560><c> kind</c><00:47:09.880><c> of</c><00:47:10.040><c> prompt,</c><00:47:11.000><c> it's</c><00:47:11.280><c> not</c><00:47:11.640><c> clear</c><00:47:12.440><c> what</c>

00:47:12.670 --> 00:47:12.680 align:start position:0%
this kind of prompt, it's not clear what
 

00:47:12.680 --> 00:47:14.710 align:start position:0%
this kind of prompt, it's not clear what
I<00:47:12.800><c> want.</c><00:47:13.240><c> I</c><00:47:13.360><c> don't</c><00:47:13.640><c> even</c><00:47:13.800><c> know</c><00:47:14.000><c> what</c><00:47:14.160><c> I</c><00:47:14.280><c> want.</c><00:47:14.640><c> I</c>

00:47:14.710 --> 00:47:14.720 align:start position:0%
I want. I don't even know what I want. I
 

00:47:14.720 --> 00:47:16.590 align:start position:0%
I want. I don't even know what I want. I
want<00:47:14.960><c> Codex</c><00:47:15.360><c> to</c><00:47:15.480><c> figure</c><00:47:15.760><c> it</c><00:47:15.880><c> out,</c><00:47:16.160><c> but</c><00:47:16.320><c> I</c><00:47:16.360><c> want</c>

00:47:16.590 --> 00:47:16.600 align:start position:0%
want Codex to figure it out, but I want
 

00:47:16.600 --> 00:47:19.070 align:start position:0%
want Codex to figure it out, but I want
Codex<00:47:16.960><c> to</c><00:47:17.080><c> come</c><00:47:17.240><c> back</c><00:47:17.560><c> to</c><00:47:17.680><c> me</c><00:47:18.040><c> and</c><00:47:18.520><c> confirm</c>

00:47:19.070 --> 00:47:19.080 align:start position:0%
Codex to come back to me and confirm
 

00:47:19.080 --> 00:47:21.150 align:start position:0%
Codex to come back to me and confirm
with<00:47:19.280><c> me.</c><00:47:19.680><c> And</c><00:47:19.840><c> so,</c><00:47:20.080><c> if</c><00:47:20.280><c> we</c><00:47:20.440><c> execute</c><00:47:20.960><c> this</c>

00:47:21.150 --> 00:47:21.160 align:start position:0%
with me. And so, if we execute this
 

00:47:21.160 --> 00:47:22.710 align:start position:0%
with me. And so, if we execute this
prompt,<00:47:21.520><c> hopefully</c><00:47:22.040><c> it's</c><00:47:22.160><c> going</c><00:47:22.280><c> to</c><00:47:22.360><c> ask</c><00:47:22.640><c> me</c>

00:47:22.710 --> 00:47:22.720 align:start position:0%
prompt, hopefully it's going to ask me
 

00:47:22.720 --> 00:47:25.110 align:start position:0%
prompt, hopefully it's going to ask me
some<00:47:23.120><c> follow-up</c><00:47:23.680><c> questions.</c><00:47:24.280><c> Let's</c><00:47:24.600><c> see.</c><00:47:25.000><c> And</c>

00:47:25.110 --> 00:47:25.120 align:start position:0%
some follow-up questions. Let's see. And
 

00:47:25.120 --> 00:47:27.630 align:start position:0%
some follow-up questions. Let's see. And
so,<00:47:25.320><c> as</c><00:47:25.560><c> expected,</c><00:47:26.400><c> Codex</c><00:47:26.960><c> came</c><00:47:27.200><c> back</c><00:47:27.440><c> with</c><00:47:27.560><c> a</c>

00:47:27.630 --> 00:47:27.640 align:start position:0%
so, as expected, Codex came back with a
 

00:47:27.640 --> 00:47:31.070 align:start position:0%
so, as expected, Codex came back with a
question,<00:47:28.280><c> "Which</c><00:47:29.400><c> cross-platform</c>

00:47:31.070 --> 00:47:31.080 align:start position:0%
question, "Which cross-platform
 

00:47:31.080 --> 00:47:32.390 align:start position:0%
question, "Which cross-platform
strategy<00:47:31.400><c> should</c><00:47:31.560><c> the</c><00:47:31.680><c> architecture</c>

00:47:32.390 --> 00:47:32.400 align:start position:0%
strategy should the architecture
 

00:47:32.400 --> 00:47:33.670 align:start position:0%
strategy should the architecture
optimize<00:47:33.000><c> for?"</c><00:47:33.200><c> And</c><00:47:33.280><c> there</c><00:47:33.400><c> are</c><00:47:33.440><c> two</c>

00:47:33.670 --> 00:47:33.680 align:start position:0%
optimize for?" And there are two
 

00:47:33.680 --> 00:47:36.830 align:start position:0%
optimize for?" And there are two
questions,<00:47:34.320><c> okay?</c><00:47:35.080><c> Do</c><00:47:35.200><c> we</c><00:47:35.320><c> want</c><00:47:35.640><c> shared</c><00:47:36.240><c> core</c>

00:47:36.830 --> 00:47:36.840 align:start position:0%
questions, okay? Do we want shared core
 

00:47:36.840 --> 00:47:39.110 align:start position:0%
questions, okay? Do we want shared core
native<00:47:37.280><c> shells,</c><00:47:37.800><c> and</c><00:47:37.960><c> you</c><00:47:38.040><c> can</c><00:47:38.200><c> click</c><00:47:38.480><c> here,</c>

00:47:39.110 --> 00:47:39.120 align:start position:0%
native shells, and you can click here,
 

00:47:39.120 --> 00:47:41.030 align:start position:0%
native shells, and you can click here,
and<00:47:39.520><c> you</c><00:47:39.600><c> can</c><00:47:39.760><c> get</c><00:47:39.920><c> a</c><00:47:39.960><c> little</c><00:47:40.280><c> detail.</c><00:47:40.840><c> You</c>

00:47:41.030 --> 00:47:41.040 align:start position:0%
and you can get a little detail. You
 

00:47:41.040 --> 00:47:44.030 align:start position:0%
and you can get a little detail. You
share<00:47:41.640><c> TypeScript</c><00:47:42.320><c> domain</c><00:47:42.840><c> logic</c><00:47:43.840><c> with</c>

00:47:44.030 --> 00:47:44.040 align:start position:0%
share TypeScript domain logic with
 

00:47:44.040 --> 00:47:46.870 align:start position:0%
share TypeScript domain logic with
separate<00:47:44.480><c> Expo</c><00:47:44.840><c> mobile,</c><00:47:45.360><c> etc.</c><00:47:46.120><c> Do</c><00:47:46.240><c> we</c><00:47:46.400><c> want</c><00:47:46.760><c> a</c>

00:47:46.870 --> 00:47:46.880 align:start position:0%
separate Expo mobile, etc. Do we want a
 

00:47:46.880 --> 00:47:49.990 align:start position:0%
separate Expo mobile, etc. Do we want a
one<00:47:47.400><c> universal</c><00:47:48.120><c> app,</c><00:47:48.760><c> or</c><00:47:48.960><c> do</c><00:47:49.080><c> we</c><00:47:49.200><c> want</c><00:47:49.600><c> web</c>

00:47:49.990 --> 00:47:50.000 align:start position:0%
one universal app, or do we want web
 

00:47:50.000 --> 00:47:53.110 align:start position:0%
one universal app, or do we want web
first<00:47:50.480><c> wrappers,</c><00:47:51.120><c> right?</c><00:47:51.440><c> Because</c><00:47:51.920><c> I</c><00:47:52.160><c> asked</c>

00:47:53.110 --> 00:47:53.120 align:start position:0%
first wrappers, right? Because I asked
 

00:47:53.120 --> 00:47:55.790 align:start position:0%
first wrappers, right? Because I asked
for<00:47:53.480><c> a</c><00:47:53.600><c> cross-platform</c><00:47:54.840><c> product,</c><00:47:55.720><c> but</c>

00:47:55.790 --> 00:47:55.800 align:start position:0%
for a cross-platform product, but
 

00:47:55.800 --> 00:47:57.630 align:start position:0%
for a cross-platform product, but
there's<00:47:56.120><c> many</c><00:47:56.520><c> ways</c><00:47:56.800><c> of</c><00:47:57.000><c> doing</c><00:47:57.360><c> it,</c><00:47:57.520><c> and</c>

00:47:57.630 --> 00:47:57.640 align:start position:0%
there's many ways of doing it, and
 

00:47:57.640 --> 00:47:59.950 align:start position:0%
there's many ways of doing it, and
there's<00:47:58.080><c> many</c><00:47:58.480><c> trade-offs</c><00:47:59.480><c> with</c><00:47:59.720><c> each</c>

00:47:59.950 --> 00:47:59.960 align:start position:0%
there's many trade-offs with each
 

00:47:59.960 --> 00:48:02.910 align:start position:0%
there's many trade-offs with each
approach.<00:48:01.040><c> And</c><00:48:01.160><c> so,</c><00:48:01.320><c> it</c><00:48:01.440><c> came</c><00:48:01.720><c> back</c><00:48:02.000><c> to</c><00:48:02.160><c> me,</c>

00:48:02.910 --> 00:48:02.920 align:start position:0%
approach. And so, it came back to me,
 

00:48:02.920 --> 00:48:05.350 align:start position:0%
approach. And so, it came back to me,
and<00:48:03.080><c> it</c><00:48:03.200><c> wants</c><00:48:03.480><c> to</c><00:48:03.600><c> clarify</c><00:48:04.360><c> one</c><00:48:04.680><c> universal</c>

00:48:05.350 --> 00:48:05.360 align:start position:0%
and it wants to clarify one universal
 

00:48:05.360 --> 00:48:07.430 align:start position:0%
and it wants to clarify one universal
app,<00:48:05.960><c> this</c><00:48:06.240><c> or</c><00:48:06.400><c> that.</c><00:48:06.680><c> So,</c><00:48:06.800><c> I'm</c><00:48:06.920><c> going</c><00:48:07.040><c> to</c><00:48:07.160><c> say</c>

00:48:07.430 --> 00:48:07.440 align:start position:0%
app, this or that. So, I'm going to say
 

00:48:07.440 --> 00:48:08.950 align:start position:0%
app, this or that. So, I'm going to say
this<00:48:07.840><c> one.</c><00:48:08.120><c> I'm</c><00:48:08.240><c> going</c><00:48:08.360><c> to</c><00:48:08.480><c> I'm</c><00:48:08.600><c> going</c><00:48:08.760><c> to</c><00:48:08.800><c> go</c>

00:48:08.950 --> 00:48:08.960 align:start position:0%
this one. I'm going to I'm going to go
 

00:48:08.960 --> 00:48:10.790 align:start position:0%
this one. I'm going to I'm going to go
with<00:48:09.160><c> recommended.</c><00:48:09.960><c> And</c><00:48:10.080><c> now,</c><00:48:10.320><c> it</c><00:48:10.480><c> wants</c><00:48:10.720><c> to</c>

00:48:10.790 --> 00:48:10.800 align:start position:0%
with recommended. And now, it wants to
 

00:48:10.800 --> 00:48:12.710 align:start position:0%
with recommended. And now, it wants to
know<00:48:11.040><c> what</c><00:48:11.360><c> should</c><00:48:11.600><c> the</c><00:48:11.720><c> app</c><00:48:11.960><c> support</c><00:48:12.520><c> for</c>

00:48:12.710 --> 00:48:12.720 align:start position:0%
know what should the app support for
 

00:48:12.720 --> 00:48:15.630 align:start position:0%
know what should the app support for
data<00:48:13.520><c> and</c><00:48:13.680><c> reliability.</c><00:48:14.600><c> Offline</c><00:48:15.280><c> first</c>

00:48:15.630 --> 00:48:15.640 align:start position:0%
data and reliability. Offline first
 

00:48:15.640 --> 00:48:18.710 align:start position:0%
data and reliability. Offline first
cloud<00:48:16.120><c> sync,</c><00:48:16.880><c> cloud</c><00:48:17.440><c> only</c><00:48:17.800><c> real-time,</c><00:48:18.520><c> or</c>

00:48:18.710 --> 00:48:18.720 align:start position:0%
cloud sync, cloud only real-time, or
 

00:48:18.720 --> 00:48:20.910 align:start position:0%
cloud sync, cloud only real-time, or
local<00:48:19.320><c> only.</c><00:48:20.000><c> And</c><00:48:20.160><c> you</c><00:48:20.240><c> can</c><00:48:20.360><c> click</c><00:48:20.680><c> and</c><00:48:20.840><c> you</c>

00:48:20.910 --> 00:48:20.920 align:start position:0%
local only. And you can click and you
 

00:48:20.920 --> 00:48:23.350 align:start position:0%
local only. And you can click and you
can<00:48:21.080><c> hover</c><00:48:21.360><c> over</c><00:48:21.560><c> the</c><00:48:21.680><c> little</c><00:48:22.040><c> I</c><00:48:22.760><c> to</c><00:48:22.880><c> get</c><00:48:23.120><c> more</c>

00:48:23.350 --> 00:48:23.360 align:start position:0%
can hover over the little I to get more
 

00:48:23.360 --> 00:48:27.070 align:start position:0%
can hover over the little I to get more
details.<00:48:24.440><c> Users</c><00:48:25.160><c> can</c><00:48:25.720><c> can</c><00:48:25.920><c> work</c><00:48:26.200><c> offline</c><00:48:26.920><c> and</c>

00:48:27.070 --> 00:48:27.080 align:start position:0%
details. Users can can work offline and
 

00:48:27.080 --> 00:48:30.110 align:start position:0%
details. Users can can work offline and
sync<00:48:27.320><c> across</c><00:48:27.640><c> devices.</c><00:48:28.600><c> Cloud</c><00:48:29.080><c> only,</c><00:48:29.480><c> simpler</c>

00:48:30.110 --> 00:48:30.120 align:start position:0%
sync across devices. Cloud only, simpler
 

00:48:30.120 --> 00:48:32.710 align:start position:0%
sync across devices. Cloud only, simpler
shared<00:48:30.560><c> back</c><00:48:30.960><c> and</c><00:48:31.080><c> live</c><00:48:31.520><c> updates,</c><00:48:32.120><c> but</c><00:48:32.360><c> weaker</c>

00:48:32.710 --> 00:48:32.720 align:start position:0%
shared back and live updates, but weaker
 

00:48:32.720 --> 00:48:34.870 align:start position:0%
shared back and live updates, but weaker
offline<00:48:33.080><c> behavior.</c><00:48:33.680><c> Now,</c><00:48:33.880><c> here</c><00:48:34.280><c> you</c><00:48:34.400><c> can</c><00:48:34.560><c> also</c>

00:48:34.870 --> 00:48:34.880 align:start position:0%
offline behavior. Now, here you can also
 

00:48:34.880 --> 00:48:36.550 align:start position:0%
offline behavior. Now, here you can also
tell<00:48:35.160><c> Codex</c><00:48:35.600><c> something</c><00:48:35.960><c> else.</c><00:48:36.200><c> You</c><00:48:36.280><c> can</c><00:48:36.400><c> say,</c>

00:48:36.550 --> 00:48:36.560 align:start position:0%
tell Codex something else. You can say,
 

00:48:36.560 --> 00:48:38.910 align:start position:0%
tell Codex something else. You can say,
"Well,<00:48:36.840><c> I</c><00:48:36.920><c> want</c><00:48:37.200><c> this,</c><00:48:37.520><c> this,</c><00:48:37.840><c> this,</c><00:48:38.120><c> this."</c>

00:48:38.910 --> 00:48:38.920 align:start position:0%
"Well, I want this, this, this, this."
 

00:48:38.920 --> 00:48:41.910 align:start position:0%
"Well, I want this, this, this, this."
Right?<00:48:39.760><c> Or,</c><00:48:40.240><c> you</c><00:48:40.360><c> can</c><00:48:40.520><c> press</c><00:48:40.800><c> escape,</c><00:48:41.640><c> and</c><00:48:41.840><c> you</c>

00:48:41.910 --> 00:48:41.920 align:start position:0%
Right? Or, you can press escape, and you
 

00:48:41.920 --> 00:48:44.790 align:start position:0%
Right? Or, you can press escape, and you
can<00:48:42.160><c> ask</c><00:48:42.520><c> Codex</c><00:48:43.200><c> to</c><00:48:43.360><c> explain</c><00:48:44.080><c> the</c><00:48:44.200><c> question.</c><00:48:44.760><c> I</c>

00:48:44.790 --> 00:48:44.800 align:start position:0%
can ask Codex to explain the question. I
 

00:48:44.800 --> 00:48:47.070 align:start position:0%
can ask Codex to explain the question. I
can<00:48:44.960><c> say</c><00:48:45.120><c> something</c><00:48:45.520><c> like</c><00:48:45.720><c> this,</c><00:48:46.280><c> "Explain</c>

00:48:47.070 --> 00:48:47.080 align:start position:0%
can say something like this, "Explain
 

00:48:47.080 --> 00:48:50.270 align:start position:0%
can say something like this, "Explain
the<00:48:47.200><c> last</c><00:48:47.560><c> question</c><00:48:48.440><c> in</c><00:48:48.640><c> simple</c><00:48:49.360><c> terms."</c>

00:48:50.270 --> 00:48:50.280 align:start position:0%
the last question in simple terms."
 

00:48:50.280 --> 00:48:52.390 align:start position:0%
the last question in simple terms."
Okay?<00:48:50.800><c> I</c><00:48:50.880><c> don't</c><00:48:51.120><c> need</c><00:48:51.360><c> to</c><00:48:51.520><c> answer</c><00:48:52.040><c> it</c><00:48:52.160><c> right</c>

00:48:52.390 --> 00:48:52.400 align:start position:0%
Okay? I don't need to answer it right
 

00:48:52.400 --> 00:48:55.070 align:start position:0%
Okay? I don't need to answer it right
away.<00:48:52.720><c> I</c><00:48:52.840><c> can</c><00:48:53.000><c> get</c><00:48:53.240><c> Codex</c><00:48:53.760><c> to</c><00:48:53.880><c> kind</c><00:48:54.120><c> of</c><00:48:54.520><c> walk</c><00:48:55.000><c> me</c>

00:48:55.070 --> 00:48:55.080 align:start position:0%
away. I can get Codex to kind of walk me
 

00:48:55.080 --> 00:48:56.550 align:start position:0%
away. I can get Codex to kind of walk me
through<00:48:55.280><c> it,</c><00:48:55.440><c> right?</c><00:48:55.720><c> Explain</c><00:48:56.160><c> the</c><00:48:56.280><c> last</c>

00:48:56.550 --> 00:48:56.560 align:start position:0%
through it, right? Explain the last
 

00:48:56.560 --> 00:48:58.350 align:start position:0%
through it, right? Explain the last
question.<00:48:57.000><c> Let's</c><00:48:57.160><c> see</c><00:48:57.320><c> what</c><00:48:57.440><c> it</c><00:48:57.560><c> says.</c><00:48:58.040><c> I</c><00:48:58.120><c> was</c>

00:48:58.350 --> 00:48:58.360 align:start position:0%
question. Let's see what it says. I was
 

00:48:58.360 --> 00:49:00.430 align:start position:0%
question. Let's see what it says. I was
asking<00:48:58.800><c> two</c><00:48:59.040><c> choices.</c>

00:49:00.430 --> 00:49:00.440 align:start position:0%
asking two choices.
 

00:49:00.440 --> 00:49:03.430 align:start position:0%
asking two choices.
How<00:49:00.720><c> should</c><00:49:01.040><c> data</c><00:49:01.440><c> work?</c><00:49:02.360><c> My</c><00:49:02.600><c> recommendation,</c>

00:49:03.430 --> 00:49:03.440 align:start position:0%
How should data work? My recommendation,
 

00:49:03.440 --> 00:49:05.670 align:start position:0%
How should data work? My recommendation,
shared<00:49:03.800><c> code</c><00:49:04.360><c> and</c><00:49:04.560><c> native</c><00:49:04.920><c> shells</c><00:49:05.280><c> plus</c>

00:49:05.670 --> 00:49:05.680 align:start position:0%
shared code and native shells plus
 

00:49:05.680 --> 00:49:07.670 align:start position:0%
shared code and native shells plus
offline<00:49:06.320><c> first</c><00:49:06.680><c> cloud</c><00:49:07.000><c> sync.</c><00:49:07.280><c> If</c><00:49:07.400><c> you</c><00:49:07.520><c> want</c>

00:49:07.670 --> 00:49:07.680 align:start position:0%
offline first cloud sync. If you want
 

00:49:07.680 --> 00:49:09.550 align:start position:0%
offline first cloud sync. If you want
this<00:49:07.840><c> to</c><00:49:07.920><c> become</c><00:49:08.240><c> a</c><00:49:08.320><c> serious</c><00:49:08.920><c> app.</c><00:49:09.320><c> So,</c><00:49:09.480><c> it</c>

00:49:09.550 --> 00:49:09.560 align:start position:0%
this to become a serious app. So, it
 

00:49:09.560 --> 00:49:11.230 align:start position:0%
this to become a serious app. So, it
tells<00:49:09.840><c> you</c><00:49:09.920><c> these</c><00:49:10.120><c> things.</c><00:49:10.800><c> And</c><00:49:10.920><c> so,</c><00:49:11.120><c> you</c>

00:49:11.230 --> 00:49:11.240 align:start position:0%
tells you these things. And so, you
 

00:49:11.240 --> 00:49:13.630 align:start position:0%
tells you these things. And so, you
don't<00:49:11.440><c> need</c><00:49:11.800><c> to</c><00:49:12.200><c> pick</c><00:49:12.440><c> a</c><00:49:12.640><c> pick</c><00:49:12.840><c> a</c><00:49:12.920><c> choice</c><00:49:13.520><c> or</c>

00:49:13.630 --> 00:49:13.640 align:start position:0%
don't need to pick a pick a choice or
 

00:49:13.640 --> 00:49:15.670 align:start position:0%
don't need to pick a pick a choice or
tell<00:49:13.960><c> it</c><00:49:14.040><c> something</c><00:49:14.320><c> else.</c><00:49:14.920><c> You</c><00:49:15.080><c> can</c><00:49:15.280><c> close</c>

00:49:15.670 --> 00:49:15.680 align:start position:0%
tell it something else. You can close
 

00:49:15.680 --> 00:49:19.950 align:start position:0%
tell it something else. You can close
that,<00:49:16.560><c> and</c><00:49:17.080><c> you</c><00:49:17.480><c> can</c><00:49:18.000><c> ask</c><00:49:18.600><c> Codex</c><00:49:19.040><c> to</c><00:49:19.160><c> clarify.</c>

00:49:19.950 --> 00:49:19.960 align:start position:0%
that, and you can ask Codex to clarify.
 

00:49:19.960 --> 00:49:22.670 align:start position:0%
that, and you can ask Codex to clarify.
And<00:49:20.160><c> now,</c><00:49:20.360><c> what</c><00:49:20.480><c> we</c><00:49:20.600><c> can</c><00:49:20.800><c> do</c><00:49:20.960><c> is</c><00:49:21.240><c> ask</c><00:49:21.680><c> me</c><00:49:22.360><c> those</c>

00:49:22.670 --> 00:49:22.680 align:start position:0%
And now, what we can do is ask me those
 

00:49:22.680 --> 00:49:25.590 align:start position:0%
And now, what we can do is ask me those
questions<00:49:23.200><c> again.</c><00:49:24.120><c> You</c><00:49:24.280><c> can</c><00:49:24.480><c> do</c><00:49:24.640><c> that,</c><00:49:25.320><c> or</c><00:49:25.480><c> you</c>

00:49:25.590 --> 00:49:25.600 align:start position:0%
questions again. You can do that, or you
 

00:49:25.600 --> 00:49:26.990 align:start position:0%
questions again. You can do that, or you
can<00:49:25.720><c> simply</c><00:49:26.080><c> answer</c><00:49:26.360><c> it</c><00:49:26.440><c> here.</c><00:49:26.640><c> It</c><00:49:26.680><c> doesn't</c>

00:49:26.990 --> 00:49:27.000 align:start position:0%
can simply answer it here. It doesn't
 

00:49:27.000 --> 00:49:28.310 align:start position:0%
can simply answer it here. It doesn't
matter.<00:49:27.240><c> So,</c><00:49:27.360><c> if</c><00:49:27.480><c> you</c><00:49:27.600><c> do</c><00:49:27.760><c> that,</c><00:49:28.040><c> it's</c><00:49:28.160><c> going</c>

00:49:28.310 --> 00:49:28.320 align:start position:0%
matter. So, if you do that, it's going
 

00:49:28.320 --> 00:49:29.630 align:start position:0%
matter. So, if you do that, it's going
to<00:49:28.400><c> come</c><00:49:28.600><c> back</c><00:49:28.800><c> with</c><00:49:28.920><c> that</c><00:49:29.080><c> question</c><00:49:29.520><c> here</c>

00:49:29.630 --> 00:49:29.640 align:start position:0%
to come back with that question here
 

00:49:29.640 --> 00:49:31.310 align:start position:0%
to come back with that question here
again.<00:49:30.160><c> And</c><00:49:30.320><c> here</c><00:49:30.520><c> are</c><00:49:30.600><c> the</c><00:49:30.720><c> questions.</c><00:49:31.240><c> I'm</c>

00:49:31.310 --> 00:49:31.320 align:start position:0%
again. And here are the questions. I'm
 

00:49:31.320 --> 00:49:33.070 align:start position:0%
again. And here are the questions. I'm
going<00:49:31.440><c> to</c><00:49:31.560><c> say</c><00:49:31.760><c> this,</c><00:49:32.120><c> and</c><00:49:32.280><c> now</c><00:49:32.520><c> I</c><00:49:32.600><c> want</c><00:49:32.800><c> to</c><00:49:32.880><c> say</c>

00:49:33.070 --> 00:49:33.080 align:start position:0%
going to say this, and now I want to say
 

00:49:33.080 --> 00:49:36.190 align:start position:0%
going to say this, and now I want to say
this<00:49:33.560><c> because</c><00:49:34.000><c> I</c><00:49:34.200><c> I</c><00:49:34.560><c> I</c><00:49:34.680><c> understood</c><00:49:35.960><c> what</c><00:49:36.120><c> it</c>

00:49:36.190 --> 00:49:36.200 align:start position:0%
this because I I I understood what it
 

00:49:36.200 --> 00:49:38.910 align:start position:0%
this because I I I understood what it
was<00:49:36.400><c> asking</c><00:49:36.880><c> me.</c><00:49:37.240><c> Got</c><00:49:37.560><c> it.</c><00:49:37.760><c> Your</c><00:49:38.080><c> choices</c><00:49:38.680><c> are</c>

00:49:38.910 --> 00:49:38.920 align:start position:0%
was asking me. Got it. Your choices are
 

00:49:38.920 --> 00:49:40.310 align:start position:0%
was asking me. Got it. Your choices are
that<00:49:39.200><c> means</c><00:49:39.440><c> the</c><00:49:39.520><c> architecture</c><00:49:40.120><c> should</c>

00:49:40.310 --> 00:49:40.320 align:start position:0%
that means the architecture should
 

00:49:40.320 --> 00:49:43.510 align:start position:0%
that means the architecture should
prioritize<00:49:41.080><c> a</c><00:49:41.240><c> shared</c><00:49:42.240><c> TypeScript</c><00:49:43.120><c> app</c><00:49:43.440><c> a</c>

00:49:43.510 --> 00:49:43.520 align:start position:0%
prioritize a shared TypeScript app a
 

00:49:43.520 --> 00:49:45.870 align:start position:0%
prioritize a shared TypeScript app a
brand<00:49:44.040><c> used</c><00:49:44.320><c> by</c><00:49:44.560><c> this,</c><00:49:44.880><c> this,</c><00:49:45.160><c> this,</c><00:49:45.440><c> this.</c>

00:49:45.870 --> 00:49:45.880 align:start position:0%
brand used by this, this, this, this.
 

00:49:45.880 --> 00:49:47.670 align:start position:0%
brand used by this, this, this, this.
And<00:49:46.040><c> that's</c><00:49:46.240><c> good.</c><00:49:46.440><c> And</c><00:49:46.520><c> now,</c><00:49:46.760><c> I</c><00:49:46.880><c> can</c><00:49:47.120><c> exit</c><00:49:47.560><c> the</c>

00:49:47.670 --> 00:49:47.680 align:start position:0%
And that's good. And now, I can exit the
 

00:49:47.680 --> 00:49:49.510 align:start position:0%
And that's good. And now, I can exit the
plan<00:49:48.040><c> mode,</c><00:49:48.200><c> and</c><00:49:48.280><c> I</c><00:49:48.360><c> can</c><00:49:48.520><c> say,</c><00:49:48.760><c> "Go</c><00:49:49.040><c> ahead</c><00:49:49.400><c> and</c>

00:49:49.510 --> 00:49:49.520 align:start position:0%
plan mode, and I can say, "Go ahead and
 

00:49:49.520 --> 00:49:52.030 align:start position:0%
plan mode, and I can say, "Go ahead and
do<00:49:49.720><c> it.</c><00:49:50.000><c> Go</c><00:49:50.360><c> and</c><00:49:50.720><c> implement</c><00:49:51.240><c> this."</c><00:49:51.640><c> Something</c>

00:49:52.030 --> 00:49:52.040 align:start position:0%
do it. Go and implement this." Something
 

00:49:52.040 --> 00:49:53.830 align:start position:0%
do it. Go and implement this." Something
like<00:49:52.240><c> this</c><00:49:52.480><c> or</c><00:49:52.600><c> something</c><00:49:52.960><c> more</c><00:49:53.200><c> specific.</c>

00:49:53.830 --> 00:49:53.840 align:start position:0%
like this or something more specific.
 

00:49:53.840 --> 00:49:55.670 align:start position:0%
like this or something more specific.
And<00:49:54.000><c> so,</c><00:49:54.240><c> plan</c><00:49:54.720><c> mode</c><00:49:55.000><c> is</c><00:49:55.120><c> something</c><00:49:55.480><c> that</c><00:49:55.640><c> I</c>

00:49:55.670 --> 00:49:55.680 align:start position:0%
And so, plan mode is something that I
 

00:49:55.680 --> 00:49:57.750 align:start position:0%
And so, plan mode is something that I
use<00:49:56.000><c> all</c><00:49:56.320><c> the</c><00:49:56.480><c> time,</c><00:49:57.120><c> and</c><00:49:57.400><c> you</c><00:49:57.560><c> should</c>

00:49:57.750 --> 00:49:57.760 align:start position:0%
use all the time, and you should
 

00:49:57.760 --> 00:50:00.630 align:start position:0%
use all the time, and you should
definitely<00:49:58.200><c> make</c><00:49:58.640><c> it</c><00:49:58.840><c> an</c><00:49:59.040><c> integral</c><00:49:59.640><c> part</c><00:50:00.400><c> of</c>

00:50:00.630 --> 00:50:00.640 align:start position:0%
definitely make it an integral part of
 

00:50:00.640 --> 00:50:05.310 align:start position:0%
definitely make it an integral part of
your<00:50:01.120><c> workflow</c><00:50:01.840><c> as</c><00:50:02.080><c> well.</c>

00:50:05.310 --> 00:50:05.320 align:start position:0%
 
 

00:50:05.320 --> 00:50:06.710 align:start position:0%
 
Now,<00:50:05.560><c> I</c><00:50:05.640><c> want</c><00:50:05.800><c> to</c><00:50:05.880><c> talk</c><00:50:06.120><c> to</c><00:50:06.200><c> you</c><00:50:06.280><c> about</c><00:50:06.560><c> some</c>

00:50:06.710 --> 00:50:06.720 align:start position:0%
Now, I want to talk to you about some
 

00:50:06.720 --> 00:50:08.910 align:start position:0%
Now, I want to talk to you about some
advanced<00:50:07.280><c> Codex</c><00:50:07.760><c> workflow</c><00:50:08.200><c> techniques.</c>

00:50:08.910 --> 00:50:08.920 align:start position:0%
advanced Codex workflow techniques.
 

00:50:08.920 --> 00:50:10.190 align:start position:0%
advanced Codex workflow techniques.
These<00:50:09.080><c> are</c><00:50:09.160><c> the</c><00:50:09.280><c> little</c><00:50:09.560><c> tips</c><00:50:09.840><c> and</c><00:50:09.960><c> tricks</c>

00:50:10.190 --> 00:50:10.200 align:start position:0%
These are the little tips and tricks
 

00:50:10.200 --> 00:50:12.190 align:start position:0%
These are the little tips and tricks
that<00:50:10.360><c> I</c><00:50:10.400><c> use</c><00:50:10.640><c> all</c><00:50:10.800><c> the</c><00:50:10.960><c> time</c><00:50:11.400><c> and</c><00:50:11.520><c> will</c><00:50:11.680><c> greatly</c>

00:50:12.190 --> 00:50:12.200 align:start position:0%
that I use all the time and will greatly
 

00:50:12.200 --> 00:50:14.630 align:start position:0%
that I use all the time and will greatly
help<00:50:12.480><c> you</c><00:50:12.600><c> when</c><00:50:12.800><c> using</c><00:50:13.160><c> Codex</c><00:50:14.000><c> to</c><00:50:14.120><c> to</c><00:50:14.240><c> build</c>

00:50:14.630 --> 00:50:14.640 align:start position:0%
help you when using Codex to to build
 

00:50:14.640 --> 00:50:17.030 align:start position:0%
help you when using Codex to to build
apps<00:50:15.080><c> and</c><00:50:15.280><c> solve</c><00:50:15.600><c> problems.</c><00:50:16.320><c> One</c><00:50:16.520><c> thing</c><00:50:16.760><c> I</c><00:50:16.840><c> do</c>

00:50:17.030 --> 00:50:17.040 align:start position:0%
apps and solve problems. One thing I do
 

00:50:17.040 --> 00:50:19.190 align:start position:0%
apps and solve problems. One thing I do
all<00:50:17.200><c> the</c><00:50:17.320><c> time</c><00:50:17.640><c> is</c><00:50:17.800><c> asking</c><00:50:18.160><c> Codex</c><00:50:18.560><c> to</c><00:50:18.680><c> create</c><00:50:19.080><c> a</c>

00:50:19.190 --> 00:50:19.200 align:start position:0%
all the time is asking Codex to create a
 

00:50:19.200 --> 00:50:21.550 align:start position:0%
all the time is asking Codex to create a
handoff<00:50:19.840><c> before</c><00:50:20.240><c> I</c><00:50:20.320><c> start</c><00:50:20.880><c> a</c><00:50:20.920><c> new</c><00:50:21.160><c> thread.</c>

00:50:21.550 --> 00:50:21.560 align:start position:0%
handoff before I start a new thread.
 

00:50:21.560 --> 00:50:23.750 align:start position:0%
handoff before I start a new thread.
This<00:50:21.840><c> is</c><00:50:22.000><c> useful</c><00:50:22.680><c> when</c><00:50:22.880><c> a</c><00:50:22.960><c> thread</c><00:50:23.240><c> has</c><00:50:23.400><c> gotten</c>

00:50:23.750 --> 00:50:23.760 align:start position:0%
This is useful when a thread has gotten
 

00:50:23.760 --> 00:50:25.630 align:start position:0%
This is useful when a thread has gotten
long,<00:50:24.400><c> when</c><00:50:24.560><c> the</c><00:50:24.680><c> context</c><00:50:25.280><c> has</c><00:50:25.440><c> been</c>

00:50:25.630 --> 00:50:25.640 align:start position:0%
long, when the context has been
 

00:50:25.640 --> 00:50:27.910 align:start position:0%
long, when the context has been
compacted,<00:50:26.560><c> or</c><00:50:26.720><c> when</c><00:50:26.920><c> I</c><00:50:27.000><c> want</c><00:50:27.240><c> to</c><00:50:27.360><c> move</c><00:50:27.640><c> from</c>

00:50:27.910 --> 00:50:27.920 align:start position:0%
compacted, or when I want to move from
 

00:50:27.920 --> 00:50:29.910 align:start position:0%
compacted, or when I want to move from
planning<00:50:28.520><c> to</c><00:50:28.680><c> implementation</c><00:50:29.680><c> with</c><00:50:29.840><c> a</c>

00:50:29.910 --> 00:50:29.920 align:start position:0%
planning to implementation with a
 

00:50:29.920 --> 00:50:32.710 align:start position:0%
planning to implementation with a
cleaner<00:50:30.520><c> workspace.</c><00:50:31.240><c> A</c><00:50:31.320><c> good</c><00:50:31.640><c> handoff</c><00:50:32.280><c> is</c><00:50:32.440><c> not</c>

00:50:32.710 --> 00:50:32.720 align:start position:0%
cleaner workspace. A good handoff is not
 

00:50:32.720 --> 00:50:34.790 align:start position:0%
cleaner workspace. A good handoff is not
a<00:50:32.840><c> vague</c><00:50:33.280><c> summary.</c><00:50:33.840><c> I</c><00:50:33.960><c> want</c><00:50:34.200><c> the</c><00:50:34.280><c> current</c>

00:50:34.790 --> 00:50:34.800 align:start position:0%
a vague summary. I want the current
 

00:50:34.800 --> 00:50:36.870 align:start position:0%
a vague summary. I want the current
state,<00:50:35.440><c> the</c><00:50:35.560><c> files</c><00:50:36.000><c> that</c><00:50:36.240><c> changed,</c><00:50:36.800><c> the</c>

00:50:36.870 --> 00:50:36.880 align:start position:0%
state, the files that changed, the
 

00:50:36.880 --> 00:50:39.510 align:start position:0%
state, the files that changed, the
commands<00:50:37.480><c> that</c><00:50:37.680><c> were</c><00:50:37.840><c> run,</c><00:50:38.480><c> what</c><00:50:38.760><c> still</c><00:50:39.200><c> needs</c>

00:50:39.510 --> 00:50:39.520 align:start position:0%
commands that were run, what still needs
 

00:50:39.520 --> 00:50:42.310 align:start position:0%
commands that were run, what still needs
to<00:50:39.640><c> happen,</c><00:50:40.400><c> and</c><00:50:40.680><c> any</c><00:50:41.040><c> risks</c><00:50:41.680><c> or</c><00:50:41.960><c> open</c>

00:50:42.310 --> 00:50:42.320 align:start position:0%
to happen, and any risks or open
 

00:50:42.320 --> 00:50:44.550 align:start position:0%
to happen, and any risks or open
decisions.<00:50:43.160><c> That</c><00:50:43.440><c> way,</c><00:50:43.640><c> the</c><00:50:43.760><c> next</c><00:50:44.120><c> Codex</c>

00:50:44.550 --> 00:50:44.560 align:start position:0%
decisions. That way, the next Codex
 

00:50:44.560 --> 00:50:46.310 align:start position:0%
decisions. That way, the next Codex
thread<00:50:44.880><c> can</c><00:50:45.040><c> pick</c><00:50:45.280><c> up</c><00:50:45.400><c> the</c><00:50:45.520><c> work</c><00:50:45.920><c> without</c>

00:50:46.310 --> 00:50:46.320 align:start position:0%
thread can pick up the work without
 

00:50:46.320 --> 00:50:48.990 align:start position:0%
thread can pick up the work without
rereading<00:50:46.960><c> the</c><00:50:47.080><c> entire</c><00:50:47.640><c> conversation</c><00:50:48.760><c> or</c>

00:50:48.990 --> 00:50:49.000 align:start position:0%
rereading the entire conversation or
 

00:50:49.000 --> 00:50:51.150 align:start position:0%
rereading the entire conversation or
repeating<00:50:49.760><c> mistakes.</c><00:50:50.440><c> And</c><00:50:50.520><c> there</c><00:50:50.720><c> are</c><00:50:50.800><c> two</c>

00:50:51.150 --> 00:50:51.160 align:start position:0%
repeating mistakes. And there are two
 

00:50:51.160 --> 00:50:53.270 align:start position:0%
repeating mistakes. And there are two
main<00:50:51.520><c> reasons</c><00:50:52.120><c> that</c><00:50:52.360><c> you</c><00:50:52.480><c> may</c><00:50:52.680><c> want</c><00:50:52.960><c> to</c><00:50:53.080><c> do</c>

00:50:53.270 --> 00:50:53.280 align:start position:0%
main reasons that you may want to do
 

00:50:53.280 --> 00:50:55.870 align:start position:0%
main reasons that you may want to do
that.<00:50:53.560><c> The</c><00:50:53.680><c> first</c><00:50:54.200><c> reason</c><00:50:54.840><c> is</c><00:50:54.960><c> that</c><00:50:55.280><c> after</c><00:50:55.760><c> a</c>

00:50:55.870 --> 00:50:55.880 align:start position:0%
that. The first reason is that after a
 

00:50:55.880 --> 00:50:58.670 align:start position:0%
that. The first reason is that after a
while,<00:50:56.600><c> this</c><00:50:56.920><c> conversation</c><00:50:57.880><c> here,</c><00:50:58.120><c> this</c><00:50:58.480><c> it</c>

00:50:58.670 --> 00:50:58.680 align:start position:0%
while, this conversation here, this it
 

00:50:58.680 --> 00:51:01.270 align:start position:0%
while, this conversation here, this it
starts<00:50:59.120><c> to</c><00:50:59.280><c> degrade.</c><00:51:00.040><c> As</c><00:51:00.360><c> you</c><00:51:00.480><c> keep</c><00:51:00.800><c> typing</c>

00:51:01.270 --> 00:51:01.280 align:start position:0%
starts to degrade. As you keep typing
 

00:51:01.280 --> 00:51:04.030 align:start position:0%
starts to degrade. As you keep typing
new<00:51:01.520><c> prompts,</c><00:51:02.080><c> and</c><00:51:02.320><c> as</c><00:51:02.600><c> the</c><00:51:02.720><c> model</c><00:51:03.200><c> answers,</c>

00:51:04.030 --> 00:51:04.040 align:start position:0%
new prompts, and as the model answers,
 

00:51:04.040 --> 00:51:06.830 align:start position:0%
new prompts, and as the model answers,
the<00:51:04.160><c> convo</c><00:51:04.720><c> starts</c><00:51:05.200><c> to</c><00:51:05.320><c> degrade.</c><00:51:06.080><c> Now,</c><00:51:06.240><c> Codex</c>

00:51:06.830 --> 00:51:06.840 align:start position:0%
the convo starts to degrade. Now, Codex
 

00:51:06.840 --> 00:51:10.510 align:start position:0%
the convo starts to degrade. Now, Codex
tells<00:51:07.280><c> you</c><00:51:07.960><c> that</c><00:51:08.400><c> it</c><00:51:08.640><c> automatically</c><00:51:09.520><c> compacts</c>

00:51:10.510 --> 00:51:10.520 align:start position:0%
tells you that it automatically compacts
 

00:51:10.520 --> 00:51:12.510 align:start position:0%
tells you that it automatically compacts
its<00:51:10.680><c> context,</c><00:51:11.320><c> and</c><00:51:11.480><c> that</c><00:51:11.680><c> is</c><00:51:11.880><c> true.</c><00:51:12.400><c> You</c><00:51:12.480><c> do</c>

00:51:12.510 --> 00:51:12.520 align:start position:0%
its context, and that is true. You do
 

00:51:12.520 --> 00:51:15.870 align:start position:0%
its context, and that is true. You do
not<00:51:12.920><c> need</c><00:51:13.440><c> to</c><00:51:13.800><c> start</c><00:51:14.200><c> a</c><00:51:14.280><c> new</c><00:51:14.960><c> convo</c><00:51:15.560><c> every</c>

00:51:15.870 --> 00:51:15.880 align:start position:0%
not need to start a new convo every
 

00:51:15.880 --> 00:51:18.470 align:start position:0%
not need to start a new convo every
time.<00:51:16.400><c> It</c><00:51:16.640><c> it</c><00:51:16.800><c> does</c><00:51:17.160><c> automatically</c><00:51:17.800><c> compact</c>

00:51:18.470 --> 00:51:18.480 align:start position:0%
time. It it does automatically compact
 

00:51:18.480 --> 00:51:21.590 align:start position:0%
time. It it does automatically compact
it.<00:51:19.160><c> But,</c><00:51:19.720><c> you're</c><00:51:20.000><c> going</c><00:51:20.160><c> to</c><00:51:20.280><c> notice</c><00:51:20.800><c> that</c><00:51:21.240><c> as</c>

00:51:21.590 --> 00:51:21.600 align:start position:0%
it. But, you're going to notice that as
 

00:51:21.600 --> 00:51:23.990 align:start position:0%
it. But, you're going to notice that as
your<00:51:21.720><c> conversations</c><00:51:22.600><c> get</c><00:51:22.840><c> long</c><00:51:23.440><c> and</c><00:51:23.600><c> you</c><00:51:23.720><c> keep</c>

00:51:23.990 --> 00:51:24.000 align:start position:0%
your conversations get long and you keep
 

00:51:24.000 --> 00:51:26.630 align:start position:0%
your conversations get long and you keep
asking<00:51:24.440><c> questions</c><00:51:25.240><c> and</c><00:51:25.360><c> it</c><00:51:25.600><c> keeps</c><00:51:25.960><c> answering,</c>

00:51:26.630 --> 00:51:26.640 align:start position:0%
asking questions and it keeps answering,
 

00:51:26.640 --> 00:51:29.190 align:start position:0%
asking questions and it keeps answering,
quality<00:51:27.120><c> of</c><00:51:27.240><c> the</c><00:51:27.360><c> responses</c><00:51:28.200><c> will</c><00:51:28.400><c> degrade.</c>

00:51:29.190 --> 00:51:29.200 align:start position:0%
quality of the responses will degrade.
 

00:51:29.200 --> 00:51:30.750 align:start position:0%
quality of the responses will degrade.
And<00:51:29.360><c> moreover,</c><00:51:30.080><c> you</c><00:51:30.200><c> know,</c><00:51:30.480><c> your</c>

00:51:30.750 --> 00:51:30.760 align:start position:0%
And moreover, you know, your
 

00:51:30.760 --> 00:51:32.510 align:start position:0%
And moreover, you know, your
conversation<00:51:31.520><c> is</c><00:51:31.640><c> going</c><00:51:31.800><c> to</c><00:51:31.840><c> get</c><00:51:32.080><c> fairly</c>

00:51:32.510 --> 00:51:32.520 align:start position:0%
conversation is going to get fairly
 

00:51:32.520 --> 00:51:34.590 align:start position:0%
conversation is going to get fairly
long,<00:51:32.880><c> and</c><00:51:32.960><c> that</c><00:51:33.200><c> might,</c><00:51:33.600><c> you</c><00:51:33.720><c> know,</c><00:51:33.920><c> degrade</c>

00:51:34.590 --> 00:51:34.600 align:start position:0%
long, and that might, you know, degrade
 

00:51:34.600 --> 00:51:37.350 align:start position:0%
long, and that might, you know, degrade
the<00:51:34.720><c> performance</c><00:51:35.480><c> of</c><00:51:35.600><c> the</c><00:51:35.760><c> app</c><00:51:36.320><c> itself.</c><00:51:37.160><c> right</c>

00:51:37.350 --> 00:51:37.360 align:start position:0%
the performance of the app itself. right
 

00:51:37.360 --> 00:51:39.870 align:start position:0%
the performance of the app itself. right
there<00:51:37.560><c> is</c><00:51:37.760><c> a</c><00:51:37.840><c> good</c><00:51:38.120><c> use</c><00:51:38.440><c> case</c><00:51:39.040><c> to</c><00:51:39.240><c> create</c><00:51:39.760><c> a</c>

00:51:39.870 --> 00:51:39.880 align:start position:0%
there is a good use case to create a
 

00:51:39.880 --> 00:51:43.270 align:start position:0%
there is a good use case to create a
brand<00:51:40.280><c> new</c><00:51:40.440><c> convo</c><00:51:41.280><c> using</c><00:51:41.920><c> the</c><00:51:42.240><c> handoff</c><00:51:43.040><c> as</c><00:51:43.160><c> the</c>

00:51:43.270 --> 00:51:43.280 align:start position:0%
brand new convo using the handoff as the
 

00:51:43.280 --> 00:51:45.590 align:start position:0%
brand new convo using the handoff as the
starting<00:51:43.800><c> point.</c><00:51:44.200><c> Another</c><00:51:44.920><c> really,</c><00:51:45.280><c> really</c>

00:51:45.590 --> 00:51:45.600 align:start position:0%
starting point. Another really, really
 

00:51:45.600 --> 00:51:48.350 align:start position:0%
starting point. Another really, really
good<00:51:45.960><c> reason</c><00:51:46.400><c> to</c><00:51:46.520><c> create</c><00:51:46.960><c> a</c><00:51:47.040><c> new</c><00:51:47.320><c> convo</c><00:51:48.040><c> with</c><00:51:48.280><c> a</c>

00:51:48.350 --> 00:51:48.360 align:start position:0%
good reason to create a new convo with a
 

00:51:48.360 --> 00:51:50.710 align:start position:0%
good reason to create a new convo with a
handoff<00:51:49.000><c> is</c><00:51:49.160><c> when</c><00:51:49.520><c> you're</c><00:51:49.760><c> trying</c><00:51:50.200><c> to</c><00:51:50.360><c> solve</c><00:51:50.680><c> a</c>

00:51:50.710 --> 00:51:50.720 align:start position:0%
handoff is when you're trying to solve a
 

00:51:50.720 --> 00:51:53.750 align:start position:0%
handoff is when you're trying to solve a
problem<00:51:51.360><c> but</c><00:51:51.960><c> the</c><00:51:52.120><c> model</c><00:51:52.680><c> is</c><00:51:52.880><c> not</c><00:51:53.280><c> getting</c><00:51:53.640><c> you</c>

00:51:53.750 --> 00:51:53.760 align:start position:0%
problem but the model is not getting you
 

00:51:53.760 --> 00:51:55.510 align:start position:0%
problem but the model is not getting you
the<00:51:53.880><c> solution</c><00:51:54.400><c> that</c><00:51:54.600><c> you</c><00:51:54.760><c> want.</c><00:51:55.160><c> And</c><00:51:55.280><c> so</c><00:51:55.400><c> if</c>

00:51:55.510 --> 00:51:55.520 align:start position:0%
the solution that you want. And so if
 

00:51:55.520 --> 00:51:57.070 align:start position:0%
the solution that you want. And so if
you're<00:51:55.680><c> trying</c><00:51:56.080><c> to</c><00:51:56.200><c> solve</c><00:51:56.440><c> a</c><00:51:56.520><c> particular</c>

00:51:57.070 --> 00:51:57.080 align:start position:0%
you're trying to solve a particular
 

00:51:57.080 --> 00:51:59.190 align:start position:0%
you're trying to solve a particular
problem<00:51:57.760><c> and</c><00:51:57.920><c> you've</c><00:51:58.120><c> prompted</c><00:51:58.680><c> the</c><00:51:58.760><c> model</c><00:51:59.120><c> a</c>

00:51:59.190 --> 00:51:59.200 align:start position:0%
problem and you've prompted the model a
 

00:51:59.200 --> 00:52:01.110 align:start position:0%
problem and you've prompted the model a
couple<00:51:59.520><c> of</c><00:51:59.640><c> ways</c><00:52:00.080><c> and</c><00:52:00.240><c> it's</c><00:52:00.440><c> trying</c><00:52:00.920><c> it's</c>

00:52:01.110 --> 00:52:01.120 align:start position:0%
couple of ways and it's trying it's
 

00:52:01.120 --> 00:52:03.310 align:start position:0%
couple of ways and it's trying it's
giving<00:52:01.440><c> you</c><00:52:01.600><c> answers</c><00:52:02.120><c> but</c><00:52:02.320><c> those</c><00:52:02.680><c> answers</c><00:52:03.160><c> are</c>

00:52:03.310 --> 00:52:03.320 align:start position:0%
giving you answers but those answers are
 

00:52:03.320 --> 00:52:05.510 align:start position:0%
giving you answers but those answers are
not<00:52:03.640><c> ideal.</c><00:52:04.320><c> It</c><00:52:04.400><c> doesn't</c><00:52:04.760><c> give</c><00:52:04.920><c> you</c><00:52:05.040><c> the</c><00:52:05.200><c> right</c>

00:52:05.510 --> 00:52:05.520 align:start position:0%
not ideal. It doesn't give you the right
 

00:52:05.520 --> 00:52:07.350 align:start position:0%
not ideal. It doesn't give you the right
algorithm.<00:52:06.120><c> It</c><00:52:06.240><c> doesn't</c><00:52:06.560><c> give</c><00:52:06.720><c> you</c><00:52:06.840><c> the</c><00:52:07.000><c> right</c>

00:52:07.350 --> 00:52:07.360 align:start position:0%
algorithm. It doesn't give you the right
 

00:52:07.360 --> 00:52:09.310 align:start position:0%
algorithm. It doesn't give you the right
solution.<00:52:07.960><c> There's</c><00:52:08.200><c> a</c><00:52:08.280><c> high</c><00:52:08.560><c> chance</c><00:52:09.040><c> that</c>

00:52:09.310 --> 00:52:09.320 align:start position:0%
solution. There's a high chance that
 

00:52:09.320 --> 00:52:11.230 align:start position:0%
solution. There's a high chance that
each<00:52:09.600><c> additional</c><00:52:10.120><c> prompt</c><00:52:10.600><c> is</c><00:52:10.760><c> not</c><00:52:11.000><c> going</c><00:52:11.160><c> to</c>

00:52:11.230 --> 00:52:11.240 align:start position:0%
each additional prompt is not going to
 

00:52:11.240 --> 00:52:13.310 align:start position:0%
each additional prompt is not going to
get<00:52:11.480><c> you</c><00:52:11.600><c> closer</c><00:52:12.120><c> to</c><00:52:12.280><c> a</c><00:52:12.360><c> solution.</c><00:52:12.920><c> So</c><00:52:13.080><c> when</c>

00:52:13.310 --> 00:52:13.320 align:start position:0%
get you closer to a solution. So when
 

00:52:13.320 --> 00:52:15.430 align:start position:0%
get you closer to a solution. So when
you<00:52:13.440><c> experience</c><00:52:14.120><c> something</c><00:52:14.480><c> like</c><00:52:14.680><c> that</c><00:52:15.320><c> the</c>

00:52:15.430 --> 00:52:15.440 align:start position:0%
you experience something like that the
 

00:52:15.440 --> 00:52:16.830 align:start position:0%
you experience something like that the
best<00:52:15.760><c> thing</c><00:52:15.920><c> that</c><00:52:16.120><c> you</c><00:52:16.200><c> can</c><00:52:16.360><c> do</c><00:52:16.520><c> would</c><00:52:16.680><c> be</c>

00:52:16.830 --> 00:52:16.840 align:start position:0%
best thing that you can do would be
 

00:52:16.840 --> 00:52:18.830 align:start position:0%
best thing that you can do would be
starting<00:52:17.320><c> over</c><00:52:17.840><c> by</c><00:52:18.080><c> creating</c><00:52:18.600><c> a</c><00:52:18.640><c> new</c>

00:52:18.830 --> 00:52:18.840 align:start position:0%
starting over by creating a new
 

00:52:18.840 --> 00:52:21.150 align:start position:0%
starting over by creating a new
conversation<00:52:19.920><c> and</c><00:52:20.160><c> giving</c><00:52:20.480><c> the</c><00:52:20.600><c> model</c><00:52:21.040><c> a</c>

00:52:21.150 --> 00:52:21.160 align:start position:0%
conversation and giving the model a
 

00:52:21.160 --> 00:52:23.870 align:start position:0%
conversation and giving the model a
handoff<00:52:21.960><c> with</c><00:52:22.200><c> the</c><00:52:22.360><c> things</c><00:52:22.760><c> that</c><00:52:22.920><c> it</c><00:52:23.040><c> has</c><00:52:23.320><c> done</c>

00:52:23.870 --> 00:52:23.880 align:start position:0%
handoff with the things that it has done
 

00:52:23.880 --> 00:52:25.870 align:start position:0%
handoff with the things that it has done
and<00:52:24.200><c> the</c><00:52:24.320><c> things</c><00:52:24.680><c> that</c><00:52:24.960><c> that</c><00:52:25.120><c> are</c><00:52:25.200><c> not</c><00:52:25.440><c> working</c>

00:52:25.870 --> 00:52:25.880 align:start position:0%
and the things that that are not working
 

00:52:25.880 --> 00:52:28.110 align:start position:0%
and the things that that are not working
and<00:52:26.080><c> where</c><00:52:26.400><c> you</c><00:52:26.560><c> are</c><00:52:26.760><c> right</c><00:52:27.000><c> now</c><00:52:27.400><c> and</c><00:52:27.680><c> telling</c>

00:52:28.110 --> 00:52:28.120 align:start position:0%
and where you are right now and telling
 

00:52:28.120 --> 00:52:30.470 align:start position:0%
and where you are right now and telling
the<00:52:28.240><c> model</c><00:52:28.840><c> as</c><00:52:29.040><c> part</c><00:52:29.200><c> of</c><00:52:29.240><c> that</c><00:52:29.440><c> handoff</c><00:52:29.920><c> prompt</c>

00:52:30.470 --> 00:52:30.480 align:start position:0%
the model as part of that handoff prompt
 

00:52:30.480 --> 00:52:32.390 align:start position:0%
the model as part of that handoff prompt
to<00:52:30.680><c> work</c><00:52:31.120><c> on</c><00:52:31.240><c> a</c><00:52:31.320><c> different</c><00:52:31.800><c> solution.</c><00:52:32.280><c> And</c>

00:52:32.390 --> 00:52:32.400 align:start position:0%
to work on a different solution. And
 

00:52:32.400 --> 00:52:35.430 align:start position:0%
to work on a different solution. And
because<00:52:32.760><c> AI</c><00:52:33.240><c> is</c><00:52:33.520><c> is</c><00:52:33.800><c> can</c><00:52:34.000><c> be</c><00:52:34.120><c> fairly</c><00:52:34.680><c> random</c><00:52:35.280><c> in</c>

00:52:35.430 --> 00:52:35.440 align:start position:0%
because AI is is can be fairly random in
 

00:52:35.440 --> 00:52:37.910 align:start position:0%
because AI is is can be fairly random in
some<00:52:35.680><c> ways,</c><00:52:36.040><c> creating</c><00:52:36.520><c> a</c><00:52:36.600><c> new</c><00:52:36.760><c> conversation</c>

00:52:37.910 --> 00:52:37.920 align:start position:0%
some ways, creating a new conversation
 

00:52:37.920 --> 00:52:40.270 align:start position:0%
some ways, creating a new conversation
usually<00:52:38.680><c> give</c><00:52:38.920><c> you</c><00:52:39.120><c> a</c><00:52:39.240><c> different</c><00:52:39.800><c> solution.</c>

00:52:40.270 --> 00:52:40.280 align:start position:0%
usually give you a different solution.
 

00:52:40.280 --> 00:52:42.070 align:start position:0%
usually give you a different solution.
That<00:52:40.480><c> solution</c><00:52:41.000><c> might</c><00:52:41.240><c> actually</c><00:52:41.680><c> work.</c><00:52:41.960><c> Now</c>

00:52:42.070 --> 00:52:42.080 align:start position:0%
That solution might actually work. Now
 

00:52:42.080 --> 00:52:44.670 align:start position:0%
That solution might actually work. Now
there<00:52:42.240><c> are</c><00:52:42.320><c> various</c><00:52:42.960><c> ways</c><00:52:43.560><c> to</c><00:52:43.680><c> create</c><00:52:44.320><c> this</c>

00:52:44.670 --> 00:52:44.680 align:start position:0%
there are various ways to create this
 

00:52:44.680 --> 00:52:47.030 align:start position:0%
there are various ways to create this
handoff<00:52:45.320><c> prompt</c><00:52:46.040><c> that's</c><00:52:46.360><c> going</c><00:52:46.560><c> to</c><00:52:46.720><c> give</c><00:52:46.920><c> you</c>

00:52:47.030 --> 00:52:47.040 align:start position:0%
handoff prompt that's going to give you
 

00:52:47.040 --> 00:52:49.550 align:start position:0%
handoff prompt that's going to give you
a<00:52:47.160><c> handoff</c><00:52:47.680><c> for</c><00:52:47.880><c> a</c><00:52:47.920><c> new</c><00:52:48.160><c> conversation.</c><00:52:49.200><c> One</c><00:52:49.440><c> of</c>

00:52:49.550 --> 00:52:49.560 align:start position:0%
a handoff for a new conversation. One of
 

00:52:49.560 --> 00:52:52.430 align:start position:0%
a handoff for a new conversation. One of
the<00:52:49.680><c> simplest</c><00:52:50.280><c> ways</c><00:52:51.040><c> would</c><00:52:51.280><c> be</c><00:52:51.440><c> by</c><00:52:51.880><c> typing</c>

00:52:52.430 --> 00:52:52.440 align:start position:0%
the simplest ways would be by typing
 

00:52:52.440 --> 00:52:54.110 align:start position:0%
the simplest ways would be by typing
something<00:52:52.880><c> like</c><00:52:53.120><c> this.</c><00:52:53.400><c> Okay,</c><00:52:53.600><c> this</c><00:52:53.840><c> is</c><00:52:54.000><c> a</c>

00:52:54.110 --> 00:52:54.120 align:start position:0%
something like this. Okay, this is a
 

00:52:54.120 --> 00:52:56.670 align:start position:0%
something like this. Okay, this is a
very<00:52:54.560><c> very</c><00:52:54.840><c> simple</c><00:52:55.280><c> prompt</c><00:52:55.960><c> that</c><00:52:56.160><c> still</c>

00:52:56.670 --> 00:52:56.680 align:start position:0%
very very simple prompt that still
 

00:52:56.680 --> 00:52:59.870 align:start position:0%
very very simple prompt that still
delivers<00:52:57.520><c> a</c><00:52:57.640><c> fairly</c><00:52:58.320><c> high</c><00:52:58.600><c> quality</c><00:52:59.240><c> handoff.</c>

00:52:59.870 --> 00:52:59.880 align:start position:0%
delivers a fairly high quality handoff.
 

00:52:59.880 --> 00:53:03.110 align:start position:0%
delivers a fairly high quality handoff.
Okay,<00:53:00.160><c> so</c><00:53:00.840><c> you</c><00:53:01.000><c> can</c><00:53:01.200><c> type</c><00:53:01.600><c> create</c><00:53:02.320><c> a</c><00:53:02.440><c> detailed</c>

00:53:03.110 --> 00:53:03.120 align:start position:0%
Okay, so you can type create a detailed
 

00:53:03.120 --> 00:53:05.470 align:start position:0%
Okay, so you can type create a detailed
handoff<00:53:03.600><c> prompt</c><00:53:04.080><c> that</c><00:53:04.240><c> I</c><00:53:04.280><c> can</c><00:53:04.520><c> use</c><00:53:04.760><c> for</c><00:53:04.920><c> a</c><00:53:05.000><c> new</c>

00:53:05.470 --> 00:53:05.480 align:start position:0%
handoff prompt that I can use for a new
 

00:53:05.480 --> 00:53:08.430 align:start position:0%
handoff prompt that I can use for a new
Codex<00:53:06.040><c> convo.</c><00:53:06.680><c> Okay.</c><00:53:07.360><c> So</c><00:53:07.520><c> let's</c><00:53:07.800><c> go</c><00:53:07.960><c> ahead</c><00:53:08.240><c> and</c>

00:53:08.430 --> 00:53:08.440 align:start position:0%
Codex convo. Okay. So let's go ahead and
 

00:53:08.440 --> 00:53:11.470 align:start position:0%
Codex convo. Okay. So let's go ahead and
send<00:53:08.800><c> this</c><00:53:09.240><c> and</c><00:53:09.480><c> see</c><00:53:09.840><c> what</c><00:53:10.520><c> what</c><00:53:10.840><c> answer</c><00:53:11.280><c> we</c>

00:53:11.470 --> 00:53:11.480 align:start position:0%
send this and see what what answer we
 

00:53:11.480 --> 00:53:13.270 align:start position:0%
send this and see what what answer we
get.<00:53:11.760><c> Right.</c><00:53:11.920><c> And</c><00:53:12.040><c> this</c><00:53:12.240><c> is</c><00:53:12.360><c> the</c><00:53:12.480><c> response</c><00:53:13.120><c> we</c>

00:53:13.270 --> 00:53:13.280 align:start position:0%
get. Right. And this is the response we
 

00:53:13.280 --> 00:53:15.870 align:start position:0%
get. Right. And this is the response we
got.<00:53:13.640><c> I</c><00:53:13.720><c> want</c><00:53:13.920><c> to</c><00:53:13.960><c> design</c><00:53:14.440><c> a</c><00:53:14.520><c> fast</c><00:53:15.160><c> robust</c>

00:53:15.870 --> 00:53:15.880 align:start position:0%
got. I want to design a fast robust
 

00:53:15.880 --> 00:53:18.030 align:start position:0%
got. I want to design a fast robust
cross<00:53:16.280><c> platform</c><00:53:16.760><c> project</c><00:53:17.320><c> management</c><00:53:17.880><c> app.</c>

00:53:18.030 --> 00:53:18.040 align:start position:0%
cross platform project management app.
 

00:53:18.040 --> 00:53:19.950 align:start position:0%
cross platform project management app.
So<00:53:18.160><c> it's</c><00:53:18.360><c> essentially</c><00:53:19.120><c> summarizing</c>

00:53:19.950 --> 00:53:19.960 align:start position:0%
So it's essentially summarizing
 

00:53:19.960 --> 00:53:21.270 align:start position:0%
So it's essentially summarizing
everything<00:53:20.400><c> that</c><00:53:20.600><c> has</c><00:53:20.760><c> happened</c><00:53:21.080><c> in</c><00:53:21.160><c> the</c>

00:53:21.270 --> 00:53:21.280 align:start position:0%
everything that has happened in the
 

00:53:21.280 --> 00:53:23.670 align:start position:0%
everything that has happened in the
convo,<00:53:21.720><c> right?</c><00:53:22.360><c> This</c><00:53:22.560><c> is</c><00:53:22.680><c> the</c><00:53:22.800><c> context.</c><00:53:23.480><c> This</c>

00:53:23.670 --> 00:53:23.680 align:start position:0%
convo, right? This is the context. This
 

00:53:23.680 --> 00:53:25.310 align:start position:0%
convo, right? This is the context. This
is<00:53:23.800><c> the</c><00:53:23.920><c> product</c><00:53:24.400><c> direction.</c><00:53:24.920><c> This</c><00:53:25.080><c> is</c><00:53:25.200><c> the</c>

00:53:25.310 --> 00:53:25.320 align:start position:0%
is the product direction. This is the
 

00:53:25.320 --> 00:53:27.550 align:start position:0%
is the product direction. This is the
architecture<00:53:25.920><c> preference.</c><00:53:26.560><c> Please</c><00:53:27.000><c> produce</c>

00:53:27.550 --> 00:53:27.560 align:start position:0%
architecture preference. Please produce
 

00:53:27.560 --> 00:53:30.190 align:start position:0%
architecture preference. Please produce
a<00:53:27.720><c> detailed</c><00:53:28.400><c> architecture</c><00:53:29.080><c> plan</c><00:53:29.400><c> covering</c>

00:53:30.190 --> 00:53:30.200 align:start position:0%
a detailed architecture plan covering
 

00:53:30.200 --> 00:53:32.230 align:start position:0%
a detailed architecture plan covering
all<00:53:30.360><c> this</c><00:53:30.600><c> important,</c><00:53:31.560><c> right?</c><00:53:31.800><c> Also</c><00:53:32.040><c> some</c>

00:53:32.230 --> 00:53:32.240 align:start position:0%
all this important, right? Also some
 

00:53:32.240 --> 00:53:33.870 align:start position:0%
all this important, right? Also some
constraints.<00:53:33.000><c> And</c><00:53:33.120><c> so</c><00:53:33.240><c> what</c><00:53:33.440><c> you</c><00:53:33.520><c> can</c><00:53:33.640><c> do</c><00:53:33.760><c> is</c>

00:53:33.870 --> 00:53:33.880 align:start position:0%
constraints. And so what you can do is
 

00:53:33.880 --> 00:53:36.070 align:start position:0%
constraints. And so what you can do is
you<00:53:33.960><c> can</c><00:53:34.160><c> copy</c><00:53:34.640><c> that</c><00:53:35.360><c> and</c><00:53:35.480><c> then</c><00:53:35.640><c> you</c><00:53:35.720><c> can</c><00:53:35.880><c> go</c>

00:53:36.070 --> 00:53:36.080 align:start position:0%
you can copy that and then you can go
 

00:53:36.080 --> 00:53:38.910 align:start position:0%
you can copy that and then you can go
ahead<00:53:36.400><c> and</c><00:53:36.560><c> create</c><00:53:37.320><c> a</c><00:53:37.440><c> brand</c><00:53:38.040><c> new</c><00:53:38.240><c> convo.</c><00:53:38.760><c> For</c>

00:53:38.910 --> 00:53:38.920 align:start position:0%
ahead and create a brand new convo. For
 

00:53:38.920 --> 00:53:40.710 align:start position:0%
ahead and create a brand new convo. For
instance,<00:53:39.200><c> you</c><00:53:39.280><c> can</c><00:53:39.440><c> click</c><00:53:39.720><c> here</c><00:53:40.320><c> and</c><00:53:40.440><c> you</c><00:53:40.560><c> can</c>

00:53:40.710 --> 00:53:40.720 align:start position:0%
instance, you can click here and you can
 

00:53:40.720 --> 00:53:43.230 align:start position:0%
instance, you can click here and you can
simply<00:53:41.200><c> paste</c><00:53:41.640><c> it.</c><00:53:42.160><c> Okay,</c><00:53:42.560><c> well</c><00:53:42.880><c> you</c><00:53:43.120><c> you</c>

00:53:43.230 --> 00:53:43.240 align:start position:0%
simply paste it. Okay, well you you
 

00:53:43.240 --> 00:53:44.630 align:start position:0%
simply paste it. Okay, well you you
don't<00:53:43.360><c> want</c><00:53:43.520><c> to</c><00:53:43.560><c> delete</c><00:53:43.920><c> that.</c><00:53:44.320><c> You</c><00:53:44.400><c> want</c><00:53:44.560><c> to</c>

00:53:44.630 --> 00:53:44.640 align:start position:0%
don't want to delete that. You want to
 

00:53:44.640 --> 00:53:47.150 align:start position:0%
don't want to delete that. You want to
delete<00:53:45.040><c> like</c><00:53:45.520><c> the</c><00:53:45.640><c> top.</c><00:53:46.440><c> You</c><00:53:46.560><c> want</c><00:53:46.720><c> to</c><00:53:46.800><c> delete</c>

00:53:47.150 --> 00:53:47.160 align:start position:0%
delete like the top. You want to delete
 

00:53:47.160 --> 00:53:49.190 align:start position:0%
delete like the top. You want to delete
that.<00:53:47.680><c> And</c><00:53:47.840><c> when</c><00:53:48.000><c> you</c><00:53:48.120><c> paste</c><00:53:48.680><c> it,</c><00:53:48.920><c> that's</c>

00:53:49.190 --> 00:53:49.200 align:start position:0%
that. And when you paste it, that's
 

00:53:49.200 --> 00:53:51.110 align:start position:0%
that. And when you paste it, that's
going<00:53:49.360><c> to</c><00:53:49.440><c> create</c><00:53:49.760><c> a</c><00:53:49.800><c> conversation</c><00:53:50.800><c> and</c><00:53:51.040><c> the</c>

00:53:51.110 --> 00:53:51.120 align:start position:0%
going to create a conversation and the
 

00:53:51.120 --> 00:53:53.990 align:start position:0%
going to create a conversation and the
model<00:53:51.640><c> can</c><00:53:51.800><c> simply</c><00:53:52.200><c> continue</c><00:53:53.240><c> where</c><00:53:53.800><c> the</c>

00:53:53.990 --> 00:53:54.000 align:start position:0%
model can simply continue where the
 

00:53:54.000 --> 00:53:56.150 align:start position:0%
model can simply continue where the
other<00:53:54.280><c> conversation.</c><00:53:55.240><c> That</c><00:53:55.440><c> is</c><00:53:55.600><c> one</c><00:53:55.840><c> way</c><00:53:56.000><c> to</c>

00:53:56.150 --> 00:53:56.160 align:start position:0%
other conversation. That is one way to
 

00:53:56.160 --> 00:53:59.190 align:start position:0%
other conversation. That is one way to
do<00:53:56.320><c> it.</c><00:53:57.000><c> Another</c><00:53:57.520><c> way</c><00:53:57.760><c> to</c><00:53:57.960><c> do</c><00:53:58.200><c> it</c><00:53:58.440><c> is</c><00:53:58.600><c> by</c><00:53:58.800><c> giving</c>

00:53:59.190 --> 00:53:59.200 align:start position:0%
do it. Another way to do it is by giving
 

00:53:59.200 --> 00:54:02.150 align:start position:0%
do it. Another way to do it is by giving
it<00:53:59.440><c> a</c><00:53:59.600><c> more</c><00:54:00.400><c> detailed</c><00:54:01.160><c> handoff</c><00:54:01.640><c> prompt.</c><00:54:02.040><c> So,</c>

00:54:02.150 --> 00:54:02.160 align:start position:0%
it a more detailed handoff prompt. So,
 

00:54:02.160 --> 00:54:04.230 align:start position:0%
it a more detailed handoff prompt. So,
let's<00:54:02.400><c> go</c><00:54:02.600><c> back</c><00:54:02.960><c> here</c><00:54:03.320><c> and</c><00:54:03.520><c> let's</c><00:54:03.800><c> go</c><00:54:03.920><c> ahead</c>

00:54:04.230 --> 00:54:04.240 align:start position:0%
let's go back here and let's go ahead
 

00:54:04.240 --> 00:54:06.390 align:start position:0%
let's go back here and let's go ahead
and<00:54:04.400><c> give</c><00:54:04.640><c> it</c><00:54:04.840><c> a</c><00:54:04.960><c> slightly</c><00:54:05.600><c> different</c><00:54:06.080><c> prompt.</c>

00:54:06.390 --> 00:54:06.400 align:start position:0%
and give it a slightly different prompt.
 

00:54:06.400 --> 00:54:09.150 align:start position:0%
and give it a slightly different prompt.
Create<00:54:07.040><c> a</c><00:54:07.160><c> clean</c><00:54:07.560><c> handoff</c><00:54:08.120><c> for</c><00:54:08.320><c> a</c><00:54:08.360><c> new</c><00:54:08.680><c> Codex</c>

00:54:09.150 --> 00:54:09.160 align:start position:0%
Create a clean handoff for a new Codex
 

00:54:09.160 --> 00:54:11.510 align:start position:0%
Create a clean handoff for a new Codex
thread.<00:54:09.520><c> Include</c><00:54:10.120><c> all</c><00:54:10.480><c> of</c><00:54:10.600><c> this.</c><00:54:10.800><c> Do</c><00:54:10.920><c> not</c><00:54:11.240><c> make</c>

00:54:11.510 --> 00:54:11.520 align:start position:0%
thread. Include all of this. Do not make
 

00:54:11.520 --> 00:54:14.630 align:start position:0%
thread. Include all of this. Do not make
any<00:54:11.760><c> changes.</c><00:54:12.360><c> So,</c><00:54:12.560><c> this</c><00:54:12.920><c> prompt</c><00:54:13.720><c> is</c><00:54:13.920><c> slightly</c>

00:54:14.630 --> 00:54:14.640 align:start position:0%
any changes. So, this prompt is slightly
 

00:54:14.640 --> 00:54:16.470 align:start position:0%
any changes. So, this prompt is slightly
more<00:54:14.960><c> detailed</c><00:54:15.560><c> and</c><00:54:15.680><c> you</c><00:54:15.760><c> can</c><00:54:16.000><c> bet</c><00:54:16.240><c> that</c><00:54:16.360><c> it's</c>

00:54:16.470 --> 00:54:16.480 align:start position:0%
more detailed and you can bet that it's
 

00:54:16.480 --> 00:54:18.030 align:start position:0%
more detailed and you can bet that it's
going<00:54:16.600><c> to</c><00:54:16.680><c> give</c><00:54:16.840><c> you</c><00:54:16.960><c> a</c><00:54:17.040><c> higher</c><00:54:17.480><c> quality</c>

00:54:18.030 --> 00:54:18.040 align:start position:0%
going to give you a higher quality
 

00:54:18.040 --> 00:54:20.390 align:start position:0%
going to give you a higher quality
handoff.<00:54:18.720><c> Okay,</c><00:54:19.080><c> so</c><00:54:19.240><c> let's</c><00:54:19.520><c> go</c><00:54:19.640><c> ahead</c><00:54:20.000><c> and</c><00:54:20.120><c> run</c>

00:54:20.390 --> 00:54:20.400 align:start position:0%
handoff. Okay, so let's go ahead and run
 

00:54:20.400 --> 00:54:23.030 align:start position:0%
handoff. Okay, so let's go ahead and run
this<00:54:21.120><c> and</c><00:54:21.280><c> then</c><00:54:21.480><c> we</c><00:54:21.600><c> can</c><00:54:21.960><c> compare</c><00:54:22.680><c> the</c><00:54:22.840><c> two</c>

00:54:23.030 --> 00:54:23.040 align:start position:0%
this and then we can compare the two
 

00:54:23.040 --> 00:54:25.670 align:start position:0%
this and then we can compare the two
handoffs<00:54:23.720><c> and</c><00:54:23.960><c> see</c><00:54:24.280><c> which</c><00:54:24.600><c> one</c><00:54:24.920><c> is</c><00:54:25.360><c> more</c>

00:54:25.670 --> 00:54:25.680 align:start position:0%
handoffs and see which one is more
 

00:54:25.680 --> 00:54:27.670 align:start position:0%
handoffs and see which one is more
detailed.<00:54:26.440><c> Now,</c><00:54:26.680><c> take</c><00:54:27.080><c> a</c><00:54:27.160><c> look</c><00:54:27.400><c> at</c><00:54:27.480><c> this</c>

00:54:27.670 --> 00:54:27.680 align:start position:0%
detailed. Now, take a look at this
 

00:54:27.680 --> 00:54:29.710 align:start position:0%
detailed. Now, take a look at this
handoff<00:54:28.280><c> right</c><00:54:28.520><c> here.</c><00:54:28.720><c> Look</c><00:54:28.960><c> at</c><00:54:29.080><c> how</c><00:54:29.320><c> much</c>

00:54:29.710 --> 00:54:29.720 align:start position:0%
handoff right here. Look at how much
 

00:54:29.720 --> 00:54:33.110 align:start position:0%
handoff right here. Look at how much
more<00:54:30.080><c> detailed</c><00:54:30.960><c> this</c><00:54:31.360><c> handoff</c><00:54:32.160><c> versus</c><00:54:32.760><c> this</c>

00:54:33.110 --> 00:54:33.120 align:start position:0%
more detailed this handoff versus this
 

00:54:33.120 --> 00:54:35.230 align:start position:0%
more detailed this handoff versus this
handoff<00:54:33.640><c> right</c><00:54:33.880><c> here.</c><00:54:34.120><c> Now,</c><00:54:34.280><c> this</c><00:54:34.600><c> handoff</c>

00:54:35.230 --> 00:54:35.240 align:start position:0%
handoff right here. Now, this handoff
 

00:54:35.240 --> 00:54:37.790 align:start position:0%
handoff right here. Now, this handoff
would<00:54:35.440><c> definitely</c><00:54:35.960><c> work,</c><00:54:36.600><c> but</c><00:54:36.840><c> this</c><00:54:37.120><c> handoff</c>

00:54:37.790 --> 00:54:37.800 align:start position:0%
would definitely work, but this handoff
 

00:54:37.800 --> 00:54:39.990 align:start position:0%
would definitely work, but this handoff
would<00:54:38.080><c> work</c><00:54:38.360><c> even</c><00:54:38.720><c> better.</c><00:54:39.240><c> Going</c><00:54:39.360><c> to</c><00:54:39.440><c> result</c>

00:54:39.990 --> 00:54:40.000 align:start position:0%
would work even better. Going to result
 

00:54:40.000 --> 00:54:42.350 align:start position:0%
would work even better. Going to result
in<00:54:40.160><c> a</c><00:54:40.240><c> higher</c><00:54:40.680><c> quality</c><00:54:41.160><c> conversation.</c><00:54:42.120><c> Okay,</c>

00:54:42.350 --> 00:54:42.360 align:start position:0%
in a higher quality conversation. Okay,
 

00:54:42.360 --> 00:54:44.550 align:start position:0%
in a higher quality conversation. Okay,
so<00:54:42.560><c> given</c><00:54:42.880><c> an</c><00:54:43.040><c> option,</c><00:54:43.640><c> you</c><00:54:43.760><c> can</c><00:54:43.960><c> certainly</c>

00:54:44.550 --> 00:54:44.560 align:start position:0%
so given an option, you can certainly
 

00:54:44.560 --> 00:54:47.070 align:start position:0%
so given an option, you can certainly
use<00:54:45.200><c> a</c><00:54:45.320><c> prompt</c><00:54:45.760><c> such</c><00:54:46.000><c> as</c><00:54:46.160><c> this,</c><00:54:46.680><c> but</c><00:54:46.840><c> it's</c><00:54:47.000><c> a</c>

00:54:47.070 --> 00:54:47.080 align:start position:0%
use a prompt such as this, but it's a
 

00:54:47.080 --> 00:54:49.390 align:start position:0%
use a prompt such as this, but it's a
lot<00:54:47.480><c> better</c><00:54:47.800><c> to</c><00:54:48.000><c> use</c><00:54:48.480><c> something</c><00:54:49.000><c> like</c><00:54:49.200><c> this</c>

00:54:49.390 --> 00:54:49.400 align:start position:0%
lot better to use something like this
 

00:54:49.400 --> 00:54:51.310 align:start position:0%
lot better to use something like this
that's<00:54:49.640><c> more</c><00:54:49.920><c> detailed</c><00:54:50.640><c> and</c><00:54:50.800><c> it's</c><00:54:50.920><c> going</c><00:54:51.160><c> to</c>

00:54:51.310 --> 00:54:51.320 align:start position:0%
that's more detailed and it's going to
 

00:54:51.320 --> 00:54:56.990 align:start position:0%
that's more detailed and it's going to
save<00:54:51.760><c> you</c><00:54:51.840><c> a</c><00:54:51.960><c> lot</c><00:54:52.280><c> of</c><00:54:52.440><c> time</c><00:54:53.120><c> in</c><00:54:53.280><c> the</c><00:54:53.400><c> long</c><00:54:53.760><c> run.</c>

00:54:56.990 --> 00:54:57.000 align:start position:0%
 
 

00:54:57.000 --> 00:55:00.190 align:start position:0%
 
The<00:54:57.080><c> next</c><00:54:57.400><c> practical</c><00:54:58.000><c> habit</c><00:54:58.440><c> is</c><00:54:58.680><c> using</c><00:54:59.240><c> Git</c><00:55:00.000><c> as</c>

00:55:00.190 --> 00:55:00.200 align:start position:0%
The next practical habit is using Git as
 

00:55:00.200 --> 00:55:02.870 align:start position:0%
The next practical habit is using Git as
a<00:55:00.320><c> checkpoint</c><00:55:01.080><c> system.</c><00:55:01.720><c> Before</c><00:55:02.120><c> I</c><00:55:02.200><c> let</c><00:55:02.440><c> Codex</c>

00:55:02.870 --> 00:55:02.880 align:start position:0%
a checkpoint system. Before I let Codex
 

00:55:02.880 --> 00:55:04.590 align:start position:0%
a checkpoint system. Before I let Codex
do<00:55:03.040><c> meaningful</c><00:55:03.640><c> work,</c><00:55:04.160><c> I</c><00:55:04.200><c> want</c><00:55:04.360><c> to</c><00:55:04.400><c> know</c>

00:55:04.590 --> 00:55:04.600 align:start position:0%
do meaningful work, I want to know
 

00:55:04.600 --> 00:55:06.550 align:start position:0%
do meaningful work, I want to know
whether<00:55:04.880><c> the</c><00:55:04.960><c> current</c><00:55:05.400><c> state</c><00:55:05.760><c> is</c><00:55:05.960><c> clean.</c>

00:55:06.550 --> 00:55:06.560 align:start position:0%
whether the current state is clean.
 

00:55:06.560 --> 00:55:09.510 align:start position:0%
whether the current state is clean.
After<00:55:06.920><c> each</c><00:55:07.240><c> milestone,</c><00:55:08.160><c> I</c><00:55:08.240><c> want</c><00:55:08.480><c> a</c><00:55:08.560><c> diff</c><00:55:09.360><c> that</c>

00:55:09.510 --> 00:55:09.520 align:start position:0%
After each milestone, I want a diff that
 

00:55:09.520 --> 00:55:11.950 align:start position:0%
After each milestone, I want a diff that
is<00:55:09.680><c> small</c><00:55:10.160><c> enough</c><00:55:10.520><c> to</c><00:55:10.680><c> review</c><00:55:11.080><c> and</c><00:55:11.200><c> explain.</c>

00:55:11.950 --> 00:55:11.960 align:start position:0%
is small enough to review and explain.
 

00:55:11.960 --> 00:55:14.310 align:start position:0%
is small enough to review and explain.
That<00:55:12.240><c> is</c><00:55:12.400><c> what</c><00:55:12.640><c> keeps</c><00:55:12.960><c> an</c><00:55:13.080><c> agentic</c><00:55:13.760><c> workflow</c>

00:55:14.310 --> 00:55:14.320 align:start position:0%
That is what keeps an agentic workflow
 

00:55:14.320 --> 00:55:17.390 align:start position:0%
That is what keeps an agentic workflow
from<00:55:14.600><c> turning</c><00:55:15.160><c> into</c><00:55:15.520><c> one</c><00:55:15.920><c> giant</c><00:55:16.760><c> mystery</c>

00:55:17.390 --> 00:55:17.400 align:start position:0%
from turning into one giant mystery
 

00:55:17.400 --> 00:55:20.030 align:start position:0%
from turning into one giant mystery
edit.<00:55:17.960><c> The</c><00:55:18.080><c> useful</c><00:55:18.520><c> trick</c><00:55:18.920><c> is</c><00:55:19.080><c> to</c><00:55:19.200><c> make</c><00:55:19.440><c> Codex</c>

00:55:20.030 --> 00:55:20.040 align:start position:0%
edit. The useful trick is to make Codex
 

00:55:20.040 --> 00:55:22.390 align:start position:0%
edit. The useful trick is to make Codex
summarize<00:55:20.720><c> the</c><00:55:20.840><c> diff</c><00:55:21.200><c> in</c><00:55:21.400><c> plain</c><00:55:21.760><c> English.</c><00:55:22.320><c> I</c>

00:55:22.390 --> 00:55:22.400 align:start position:0%
summarize the diff in plain English. I
 

00:55:22.400 --> 00:55:24.150 align:start position:0%
summarize the diff in plain English. I
do<00:55:22.520><c> not</c><00:55:22.840><c> only</c><00:55:23.120><c> want</c><00:55:23.320><c> to</c><00:55:23.360><c> know</c><00:55:23.560><c> what</c><00:55:23.760><c> files</c>

00:55:24.150 --> 00:55:24.160 align:start position:0%
do not only want to know what files
 

00:55:24.160 --> 00:55:26.550 align:start position:0%
do not only want to know what files
change,<00:55:24.800><c> I</c><00:55:24.920><c> want</c><00:55:25.120><c> to</c><00:55:25.200><c> know</c><00:55:25.400><c> why</c><00:55:25.720><c> they</c><00:55:25.920><c> changed,</c>

00:55:26.550 --> 00:55:26.560 align:start position:0%
change, I want to know why they changed,
 

00:55:26.560 --> 00:55:28.990 align:start position:0%
change, I want to know why they changed,
whether<00:55:26.880><c> each</c><00:55:27.160><c> change</c><00:55:27.640><c> belongs</c><00:55:28.080><c> to</c><00:55:28.160><c> the</c><00:55:28.320><c> task,</c>

00:55:28.990 --> 00:55:29.000 align:start position:0%
whether each change belongs to the task,
 

00:55:29.000 --> 00:55:31.190 align:start position:0%
whether each change belongs to the task,
and<00:55:29.160><c> whether</c><00:55:29.520><c> anything</c><00:55:30.040><c> looks</c><00:55:30.360><c> unrelated</c>

00:55:31.190 --> 00:55:31.200 align:start position:0%
and whether anything looks unrelated
 

00:55:31.200 --> 00:55:34.670 align:start position:0%
and whether anything looks unrelated
before<00:55:31.840><c> I</c><00:55:31.960><c> accept</c><00:55:32.600><c> it</c><00:55:32.960><c> or</c><00:55:33.480><c> move</c><00:55:33.760><c> on.</c><00:55:34.240><c> So,</c><00:55:34.480><c> when</c>

00:55:34.670 --> 00:55:34.680 align:start position:0%
before I accept it or move on. So, when
 

00:55:34.680 --> 00:55:36.870 align:start position:0%
before I accept it or move on. So, when
you<00:55:34.840><c> are</c><00:55:35.000><c> working</c><00:55:35.440><c> in</c><00:55:35.600><c> Codex,</c><00:55:36.240><c> you</c><00:55:36.400><c> do</c><00:55:36.560><c> not</c>

00:55:36.870 --> 00:55:36.880 align:start position:0%
you are working in Codex, you do not
 

00:55:36.880 --> 00:55:40.390 align:start position:0%
you are working in Codex, you do not
want<00:55:37.080><c> to</c><00:55:37.160><c> be</c><00:55:37.480><c> just</c><00:55:38.240><c> creating</c><00:55:38.880><c> edits</c><00:55:39.560><c> without</c>

00:55:40.390 --> 00:55:40.400 align:start position:0%
want to be just creating edits without
 

00:55:40.400 --> 00:55:42.990 align:start position:0%
want to be just creating edits without
recording<00:55:41.280><c> what</c><00:55:41.480><c> the</c><00:55:41.640><c> edit</c><00:55:42.000><c> is</c><00:55:42.200><c> all</c><00:55:42.360><c> about.</c>

00:55:42.990 --> 00:55:43.000 align:start position:0%
recording what the edit is all about.
 

00:55:43.000 --> 00:55:45.070 align:start position:0%
recording what the edit is all about.
And<00:55:43.120><c> in</c><00:55:43.240><c> software</c><00:55:43.800><c> development,</c><00:55:44.600><c> you</c><00:55:44.800><c> want</c><00:55:45.000><c> to</c>

00:55:45.070 --> 00:55:45.080 align:start position:0%
And in software development, you want to
 

00:55:45.080 --> 00:55:48.230 align:start position:0%
And in software development, you want to
be<00:55:45.240><c> using</c><00:55:45.880><c> a</c><00:55:46.240><c> source</c><00:55:46.720><c> control</c><00:55:47.200><c> system,</c><00:55:47.920><c> such</c>

00:55:48.230 --> 00:55:48.240 align:start position:0%
be using a source control system, such
 

00:55:48.240 --> 00:55:51.030 align:start position:0%
be using a source control system, such
as<00:55:48.640><c> Git.</c><00:55:49.000><c> We</c><00:55:49.160><c> have</c><00:55:49.400><c> here</c><00:55:49.600><c> a</c><00:55:49.680><c> convo</c><00:55:50.440><c> where</c><00:55:50.840><c> we</c>

00:55:51.030 --> 00:55:51.040 align:start position:0%
as Git. We have here a convo where we
 

00:55:51.040 --> 00:55:53.550 align:start position:0%
as Git. We have here a convo where we
were<00:55:51.280><c> building</c><00:55:51.800><c> an</c><00:55:52.000><c> app,</c><00:55:52.440><c> and</c><00:55:53.080><c> in</c><00:55:53.280><c> this</c>

00:55:53.550 --> 00:55:53.560 align:start position:0%
were building an app, and in this
 

00:55:53.560 --> 00:55:56.190 align:start position:0%
were building an app, and in this
particular<00:55:54.200><c> instance,</c><00:55:54.880><c> we</c><00:55:55.120><c> did</c><00:55:55.320><c> not</c><00:55:55.640><c> use</c><00:55:55.920><c> Git.</c>

00:55:56.190 --> 00:55:56.200 align:start position:0%
particular instance, we did not use Git.
 

00:55:56.200 --> 00:55:58.950 align:start position:0%
particular instance, we did not use Git.
And<00:55:56.320><c> so,</c><00:55:56.720><c> I</c><00:55:56.880><c> do</c><00:55:57.080><c> not</c><00:55:57.400><c> know,</c><00:55:57.840><c> I</c><00:55:57.920><c> have</c><00:55:58.160><c> no</c><00:55:58.520><c> way</c><00:55:58.760><c> to</c>

00:55:58.950 --> 00:55:58.960 align:start position:0%
And so, I do not know, I have no way to
 

00:55:58.960 --> 00:56:01.830 align:start position:0%
And so, I do not know, I have no way to
check<00:55:59.640><c> which</c><00:56:00.040><c> changes</c><00:56:00.800><c> were</c><00:56:00.920><c> made</c><00:56:01.320><c> where.</c><00:56:01.760><c> I</c>

00:56:01.830 --> 00:56:01.840 align:start position:0%
check which changes were made where. I
 

00:56:01.840 --> 00:56:04.390 align:start position:0%
check which changes were made where. I
have<00:56:02.080><c> no</c><00:56:02.440><c> way</c><00:56:02.760><c> to</c><00:56:03.000><c> revert</c><00:56:03.520><c> the</c><00:56:03.640><c> changes.</c><00:56:04.360><c> I</c>

00:56:04.390 --> 00:56:04.400 align:start position:0%
have no way to revert the changes. I
 

00:56:04.400 --> 00:56:06.710 align:start position:0%
have no way to revert the changes. I
have<00:56:04.600><c> no</c><00:56:04.880><c> way</c><00:56:05.120><c> to</c><00:56:05.320><c> see</c><00:56:05.840><c> what</c><00:56:06.120><c> the</c><00:56:06.240><c> actual</c>

00:56:06.710 --> 00:56:06.720 align:start position:0%
have no way to see what the actual
 

00:56:06.720 --> 00:56:09.510 align:start position:0%
have no way to see what the actual
change<00:56:07.200><c> represents.</c><00:56:08.240><c> And</c><00:56:08.360><c> if</c><00:56:08.600><c> working</c><00:56:09.280><c> in,</c>

00:56:09.510 --> 00:56:09.520 align:start position:0%
change represents. And if working in,
 

00:56:09.520 --> 00:56:11.990 align:start position:0%
change represents. And if working in,
you<00:56:09.640><c> know,</c><00:56:09.800><c> bigger</c><00:56:10.200><c> teams,</c><00:56:10.840><c> I</c><00:56:10.960><c> do</c><00:56:11.120><c> not</c><00:56:11.480><c> know</c>

00:56:11.990 --> 00:56:12.000 align:start position:0%
you know, bigger teams, I do not know
 

00:56:12.000 --> 00:56:13.870 align:start position:0%
you know, bigger teams, I do not know
who<00:56:12.160><c> was</c><00:56:12.360><c> the</c><00:56:12.440><c> person</c><00:56:12.880><c> responsible</c><00:56:13.640><c> for</c><00:56:13.760><c> the</c>

00:56:13.870 --> 00:56:13.880 align:start position:0%
who was the person responsible for the
 

00:56:13.880 --> 00:56:15.590 align:start position:0%
who was the person responsible for the
change.<00:56:14.200><c> Now,</c><00:56:14.440><c> in</c><00:56:14.600><c> this</c><00:56:14.840><c> convo,</c><00:56:15.320><c> we</c><00:56:15.440><c> have</c>

00:56:15.590 --> 00:56:15.600 align:start position:0%
change. Now, in this convo, we have
 

00:56:15.600 --> 00:56:17.670 align:start position:0%
change. Now, in this convo, we have
another<00:56:15.960><c> problem,</c><00:56:16.520><c> okay?</c><00:56:17.000><c> The</c><00:56:17.160><c> current</c>

00:56:17.670 --> 00:56:17.680 align:start position:0%
another problem, okay? The current
 

00:56:17.680 --> 00:56:19.950 align:start position:0%
another problem, okay? The current
working<00:56:18.080><c> directory</c><00:56:18.720><c> is</c><00:56:18.920><c> missing.</c><00:56:19.520><c> And</c><00:56:19.640><c> so,</c><00:56:19.840><c> in</c>

00:56:19.950 --> 00:56:19.960 align:start position:0%
working directory is missing. And so, in
 

00:56:19.960 --> 00:56:21.870 align:start position:0%
working directory is missing. And so, in
this<00:56:20.200><c> case,</c><00:56:20.440><c> what</c><00:56:20.600><c> we</c><00:56:20.720><c> can</c><00:56:20.920><c> do</c><00:56:21.120><c> is</c><00:56:21.280><c> we</c><00:56:21.400><c> can</c><00:56:21.520><c> take</c>

00:56:21.870 --> 00:56:21.880 align:start position:0%
this case, what we can do is we can take
 

00:56:21.880 --> 00:56:24.190 align:start position:0%
this case, what we can do is we can take
a<00:56:22.000><c> handoff</c><00:56:22.520><c> prompt,</c><00:56:23.040><c> and</c><00:56:23.280><c> we</c><00:56:23.400><c> can</c><00:56:23.600><c> create</c><00:56:24.080><c> a</c>

00:56:24.190 --> 00:56:24.200 align:start position:0%
a handoff prompt, and we can create a
 

00:56:24.200 --> 00:56:26.710 align:start position:0%
a handoff prompt, and we can create a
brand<00:56:24.640><c> new</c><00:56:24.800><c> project,</c><00:56:25.560><c> insert</c><00:56:26.000><c> that</c><00:56:26.240><c> handoff</c>

00:56:26.710 --> 00:56:26.720 align:start position:0%
brand new project, insert that handoff
 

00:56:26.720 --> 00:56:29.150 align:start position:0%
brand new project, insert that handoff
prompt,<00:56:27.320><c> start</c><00:56:27.720><c> a</c><00:56:27.760><c> new</c><00:56:27.960><c> convo,</c><00:56:28.680><c> and</c><00:56:28.840><c> then</c>

00:56:29.150 --> 00:56:29.160 align:start position:0%
prompt, start a new convo, and then
 

00:56:29.160 --> 00:56:31.910 align:start position:0%
prompt, start a new convo, and then
enabled<00:56:29.960><c> Git,</c><00:56:30.520><c> and</c><00:56:30.760><c> set</c><00:56:31.040><c> up</c><00:56:31.200><c> so</c><00:56:31.320><c> that</c><00:56:31.560><c> we</c><00:56:31.680><c> have</c>

00:56:31.910 --> 00:56:31.920 align:start position:0%
enabled Git, and set up so that we have
 

00:56:31.920 --> 00:56:33.590 align:start position:0%
enabled Git, and set up so that we have
Git<00:56:32.160><c> control.</c><00:56:32.800><c> So,</c><00:56:32.880><c> I'm</c><00:56:33.000><c> going</c><00:56:33.120><c> to</c><00:56:33.240><c> go</c><00:56:33.360><c> over</c>

00:56:33.590 --> 00:56:33.600 align:start position:0%
Git control. So, I'm going to go over
 

00:56:33.600 --> 00:56:35.030 align:start position:0%
Git control. So, I'm going to go over
here.<00:56:33.800><c> I'm</c><00:56:33.920><c> just</c><00:56:34.080><c> going</c><00:56:34.200><c> to</c><00:56:34.280><c> do</c><00:56:34.440><c> start</c><00:56:34.760><c> from</c>

00:56:35.030 --> 00:56:35.040 align:start position:0%
here. I'm just going to do start from
 

00:56:35.040 --> 00:56:37.310 align:start position:0%
here. I'm just going to do start from
scratch.<00:56:35.480><c> I'm</c><00:56:35.520><c> going</c><00:56:35.640><c> to</c><00:56:35.760><c> paste</c><00:56:36.440><c> this</c><00:56:36.760><c> handoff</c>

00:56:37.310 --> 00:56:37.320 align:start position:0%
scratch. I'm going to paste this handoff
 

00:56:37.320 --> 00:56:40.030 align:start position:0%
scratch. I'm going to paste this handoff
prompt<00:56:37.720><c> to</c><00:56:37.840><c> start</c><00:56:38.360><c> a</c><00:56:38.480><c> brand</c><00:56:38.880><c> new</c><00:56:39.000><c> convo.</c><00:56:39.760><c> And</c>

00:56:40.030 --> 00:56:40.040 align:start position:0%
prompt to start a brand new convo. And
 

00:56:40.040 --> 00:56:42.910 align:start position:0%
prompt to start a brand new convo. And
I'm<00:56:40.160><c> going</c><00:56:40.280><c> to</c><00:56:40.400><c> preface</c><00:56:41.160><c> it</c><00:56:41.680><c> by</c><00:56:42.000><c> telling</c><00:56:42.600><c> it</c><00:56:42.800><c> to</c>

00:56:42.910 --> 00:56:42.920 align:start position:0%
I'm going to preface it by telling it to
 

00:56:42.920 --> 00:56:46.750 align:start position:0%
I'm going to preface it by telling it to
create<00:56:43.560><c> a</c><00:56:43.720><c> Git</c><00:56:44.120><c> repository.</c><00:56:45.240><c> Create</c><00:56:46.160><c> a</c><00:56:46.240><c> Git</c>

00:56:46.750 --> 00:56:46.760 align:start position:0%
create a Git repository. Create a Git
 

00:56:46.760 --> 00:56:49.870 align:start position:0%
create a Git repository. Create a Git
repo<00:56:47.720><c> if</c><00:56:48.000><c> it</c><00:56:48.080><c> doesn't</c><00:56:48.400><c> exist,</c><00:56:49.000><c> and</c><00:56:49.280><c> do</c><00:56:49.680><c> an</c>

00:56:49.870 --> 00:56:49.880 align:start position:0%
repo if it doesn't exist, and do an
 

00:56:49.880 --> 00:56:52.430 align:start position:0%
repo if it doesn't exist, and do an
initial<00:56:50.520><c> commit</c><00:56:51.400><c> with</c><00:56:51.560><c> the</c><00:56:51.680><c> code.</c><00:56:52.240><c> So,</c><00:56:52.360><c> I'm</c>

00:56:52.430 --> 00:56:52.440 align:start position:0%
initial commit with the code. So, I'm
 

00:56:52.440 --> 00:56:55.110 align:start position:0%
initial commit with the code. So, I'm
going<00:56:52.560><c> to</c><00:56:52.720><c> run</c><00:56:52.960><c> that.</c><00:56:53.520><c> And</c><00:56:53.720><c> the</c><00:56:53.800><c> idea</c><00:56:54.440><c> is</c><00:56:54.960><c> we</c>

00:56:55.110 --> 00:56:55.120 align:start position:0%
going to run that. And the idea is we
 

00:56:55.120 --> 00:56:57.790 align:start position:0%
going to run that. And the idea is we
are<00:56:55.240><c> going</c><00:56:55.560><c> to</c><00:56:55.760><c> initialize</c><00:56:56.600><c> Git</c><00:56:57.000><c> if</c><00:56:57.240><c> needed,</c>

00:56:57.790 --> 00:56:57.800 align:start position:0%
are going to initialize Git if needed,
 

00:56:57.800 --> 00:57:00.070 align:start position:0%
are going to initialize Git if needed,
and<00:56:57.920><c> then</c><00:56:58.120><c> commit</c><00:56:58.560><c> the</c><00:56:58.640><c> current</c><00:56:59.000><c> code</c><00:56:59.360><c> as</c><00:56:59.640><c> is.</c>

00:57:00.070 --> 00:57:00.080 align:start position:0%
and then commit the current code as is.
 

00:57:00.080 --> 00:57:01.590 align:start position:0%
and then commit the current code as is.
All<00:57:00.120><c> right.</c><00:57:00.320><c> So,</c><00:57:00.480><c> what</c><00:57:00.680><c> it</c><00:57:00.800><c> did</c><00:57:01.120><c> was</c><00:57:01.400><c> it</c>

00:57:01.590 --> 00:57:01.600 align:start position:0%
All right. So, what it did was it
 

00:57:01.600 --> 00:57:04.190 align:start position:0%
All right. So, what it did was it
initialized<00:57:02.400><c> a</c><00:57:02.520><c> Git</c><00:57:03.080><c> repo</c><00:57:03.840><c> in</c><00:57:03.960><c> this</c>

00:57:04.190 --> 00:57:04.200 align:start position:0%
initialized a Git repo in this
 

00:57:04.200 --> 00:57:06.750 align:start position:0%
initialized a Git repo in this
directory,<00:57:04.800><c> and</c><00:57:05.040><c> made</c><00:57:05.480><c> an</c><00:57:05.640><c> initial</c><00:57:06.120><c> commit.</c>

00:57:06.750 --> 00:57:06.760 align:start position:0%
directory, and made an initial commit.
 

00:57:06.760 --> 00:57:08.990 align:start position:0%
directory, and made an initial commit.
Initial<00:57:07.200><c> architecture</c><00:57:07.840><c> plan</c><00:57:08.120><c> here,</c><00:57:08.480><c> okay?</c>

00:57:08.990 --> 00:57:09.000 align:start position:0%
Initial architecture plan here, okay?
 

00:57:09.000 --> 00:57:10.310 align:start position:0%
Initial architecture plan here, okay?
The<00:57:09.120><c> workspace</c><00:57:09.600><c> was</c><00:57:09.800><c> empty</c><00:57:10.120><c> when</c><00:57:10.280><c> I</c>

00:57:10.310 --> 00:57:10.320 align:start position:0%
The workspace was empty when I
 

00:57:10.320 --> 00:57:11.990 align:start position:0%
The workspace was empty when I
inspected.<00:57:10.880><c> There</c><00:57:10.960><c> was</c><00:57:11.160><c> nothing</c><00:57:11.640><c> there.</c><00:57:11.880><c> We</c>

00:57:11.990 --> 00:57:12.000 align:start position:0%
inspected. There was nothing there. We
 

00:57:12.000 --> 00:57:14.350 align:start position:0%
inspected. There was nothing there. We
just<00:57:12.240><c> created</c><00:57:12.680><c> a</c><00:57:12.800><c> brand</c><00:57:13.200><c> new</c><00:57:13.320><c> project,</c><00:57:14.120><c> and</c><00:57:14.240><c> it</c>

00:57:14.350 --> 00:57:14.360 align:start position:0%
just created a brand new project, and it
 

00:57:14.360 --> 00:57:16.310 align:start position:0%
just created a brand new project, and it
essentially<00:57:14.960><c> created</c><00:57:15.360><c> an</c><00:57:15.480><c> architecture.</c><00:57:16.160><c> And</c>

00:57:16.310 --> 00:57:16.320 align:start position:0%
essentially created an architecture. And
 

00:57:16.320 --> 00:57:18.350 align:start position:0%
essentially created an architecture. And
so,<00:57:16.480><c> at</c><00:57:16.560><c> this</c><00:57:16.760><c> point,</c><00:57:17.080><c> we</c><00:57:17.240><c> have</c><00:57:17.480><c> here</c><00:57:17.760><c> a</c><00:57:17.880><c> Git</c>

00:57:18.350 --> 00:57:18.360 align:start position:0%
so, at this point, we have here a Git
 

00:57:18.360 --> 00:57:21.150 align:start position:0%
so, at this point, we have here a Git
repo,<00:57:19.120><c> which</c><00:57:19.360><c> means</c><00:57:19.760><c> that</c><00:57:20.120><c> each</c><00:57:20.480><c> additional</c>

00:57:21.150 --> 00:57:21.160 align:start position:0%
repo, which means that each additional
 

00:57:21.160 --> 00:57:23.430 align:start position:0%
repo, which means that each additional
change<00:57:21.800><c> will</c><00:57:21.960><c> be</c><00:57:22.120><c> automatically</c><00:57:22.880><c> tracked.</c>

00:57:23.430 --> 00:57:23.440 align:start position:0%
change will be automatically tracked.
 

00:57:23.440 --> 00:57:24.910 align:start position:0%
change will be automatically tracked.
So,<00:57:23.560><c> for</c><00:57:23.720><c> instance,</c><00:57:24.040><c> I</c><00:57:24.120><c> can</c><00:57:24.280><c> say</c><00:57:24.520><c> something</c>

00:57:24.910 --> 00:57:24.920 align:start position:0%
So, for instance, I can say something
 

00:57:24.920 --> 00:57:28.070 align:start position:0%
So, for instance, I can say something
like,<00:57:25.400><c> "Make</c><00:57:26.040><c> the</c><00:57:26.280><c> smallest</c><00:57:27.320><c> possible</c>

00:57:28.070 --> 00:57:28.080 align:start position:0%
like, "Make the smallest possible
 

00:57:28.080 --> 00:57:32.110 align:start position:0%
like, "Make the smallest possible
change,<00:57:28.960><c> a</c><00:57:29.560><c> route</c><00:57:30.320><c> that</c><00:57:30.600><c> displays</c><00:57:31.760><c> 'Hello,</c>

00:57:32.110 --> 00:57:32.120 align:start position:0%
change, a route that displays 'Hello,
 

00:57:32.120 --> 00:57:33.950 align:start position:0%
change, a route that displays 'Hello,
world.'"<00:57:32.680><c> Okay?</c><00:57:33.000><c> Let's</c><00:57:33.200><c> go</c><00:57:33.400><c> ahead</c><00:57:33.600><c> and</c><00:57:33.760><c> run</c>

00:57:33.950 --> 00:57:33.960 align:start position:0%
world.'" Okay? Let's go ahead and run
 

00:57:33.960 --> 00:57:35.630 align:start position:0%
world.'" Okay? Let's go ahead and run
that.<00:57:34.320><c> So,</c><00:57:34.400><c> it</c><00:57:34.560><c> now</c><00:57:34.880><c> created</c><00:57:35.400><c> this</c>

00:57:35.630 --> 00:57:35.640 align:start position:0%
that. So, it now created this
 

00:57:35.640 --> 00:57:38.070 align:start position:0%
that. So, it now created this
index.html.<00:57:36.920><c> We're</c><00:57:37.040><c> going</c><00:57:37.160><c> to</c><00:57:37.280><c> open</c><00:57:37.640><c> it,</c><00:57:37.960><c> and</c>

00:57:38.070 --> 00:57:38.080 align:start position:0%
index.html. We're going to open it, and
 

00:57:38.080 --> 00:57:40.270 align:start position:0%
index.html. We're going to open it, and
it<00:57:38.200><c> says</c><00:57:38.520><c> hello</c><00:57:38.840><c> world.</c><00:57:39.400><c> And</c><00:57:39.560><c> so,</c><00:57:39.720><c> now</c><00:57:40.040><c> what</c><00:57:40.160><c> we</c>

00:57:40.270 --> 00:57:40.280 align:start position:0%
it says hello world. And so, now what we
 

00:57:40.280 --> 00:57:44.350 align:start position:0%
it says hello world. And so, now what we
can<00:57:40.520><c> do</c><00:57:40.760><c> is</c><00:57:41.560><c> we</c><00:57:41.840><c> can</c><00:57:42.200><c> say</c><00:57:42.920><c> check</c><00:57:43.720><c> the</c><00:57:43.880><c> Git</c>

00:57:44.350 --> 00:57:44.360 align:start position:0%
can do is we can say check the Git
 

00:57:44.360 --> 00:57:47.030 align:start position:0%
can do is we can say check the Git
status.<00:57:45.280><c> And</c><00:57:45.440><c> obviously,</c><00:57:45.880><c> this</c><00:57:46.200><c> file</c><00:57:46.560><c> is</c><00:57:46.760><c> not</c>

00:57:47.030 --> 00:57:47.040 align:start position:0%
status. And obviously, this file is not
 

00:57:47.040 --> 00:57:49.790 align:start position:0%
status. And obviously, this file is not
going<00:57:47.360><c> to</c><00:57:47.520><c> be</c><00:57:47.680><c> in</c><00:57:47.920><c> our</c><00:57:48.160><c> Git,</c><00:57:48.640><c> right?</c><00:57:49.400><c> You</c><00:57:49.560><c> see</c>

00:57:49.790 --> 00:57:49.800 align:start position:0%
going to be in our Git, right? You see
 

00:57:49.800 --> 00:57:52.310 align:start position:0%
going to be in our Git, right? You see
this<00:57:50.040><c> is</c><00:57:50.160><c> not</c><00:57:50.400><c> tracked,</c><00:57:51.160><c> an</c><00:57:51.360><c> untracked</c><00:57:51.920><c> file.</c>

00:57:52.310 --> 00:57:52.320 align:start position:0%
this is not tracked, an untracked file.
 

00:57:52.320 --> 00:57:54.670 align:start position:0%
this is not tracked, an untracked file.
So,<00:57:52.480><c> what</c><00:57:52.640><c> we</c><00:57:52.760><c> want</c><00:57:53.240><c> is</c><00:57:53.440><c> we</c><00:57:53.560><c> want</c><00:57:53.800><c> to</c><00:57:53.920><c> commit</c>

00:57:54.670 --> 00:57:54.680 align:start position:0%
So, what we want is we want to commit
 

00:57:54.680 --> 00:57:58.270 align:start position:0%
So, what we want is we want to commit
index.html<00:57:56.000><c> as</c><00:57:56.560><c> initial</c><00:57:57.080><c> commit.</c><00:57:57.720><c> Because</c><00:57:58.040><c> in</c>

00:57:58.270 --> 00:57:58.280 align:start position:0%
index.html as initial commit. Because in
 

00:57:58.280 --> 00:58:00.070 align:start position:0%
index.html as initial commit. Because in
Git,<00:57:58.840><c> you</c><00:57:58.960><c> can</c><00:57:59.160><c> have</c><00:57:59.400><c> files</c><00:57:59.800><c> that</c><00:57:59.960><c> are</c>

00:58:00.070 --> 00:58:00.080 align:start position:0%
Git, you can have files that are
 

00:58:00.080 --> 00:58:01.990 align:start position:0%
Git, you can have files that are
tracked,<00:58:00.560><c> and</c><00:58:00.720><c> also</c><00:58:01.080><c> files</c><00:58:01.440><c> that</c><00:58:01.600><c> are</c><00:58:01.680><c> not</c>

00:58:01.990 --> 00:58:02.000 align:start position:0%
tracked, and also files that are not
 

00:58:02.000 --> 00:58:03.910 align:start position:0%
tracked, and also files that are not
tracked.<00:58:02.440><c> The</c><00:58:02.560><c> files</c><00:58:02.840><c> that</c><00:58:03.000><c> are</c><00:58:03.080><c> not</c><00:58:03.440><c> tracked</c>

00:58:03.910 --> 00:58:03.920 align:start position:0%
tracked. The files that are not tracked
 

00:58:03.920 --> 00:58:05.230 align:start position:0%
tracked. The files that are not tracked
are<00:58:04.040><c> the</c><00:58:04.160><c> files</c><00:58:04.520><c> you</c><00:58:04.560><c> don't</c><00:58:04.760><c> really</c><00:58:04.960><c> care</c>

00:58:05.230 --> 00:58:05.240 align:start position:0%
are the files you don't really care
 

00:58:05.240 --> 00:58:06.590 align:start position:0%
are the files you don't really care
about,<00:58:05.560><c> right?</c><00:58:05.800><c> You</c><00:58:05.880><c> don't</c><00:58:06.120><c> You</c><00:58:06.200><c> don't</c><00:58:06.400><c> really</c>

00:58:06.590 --> 00:58:06.600 align:start position:0%
about, right? You don't You don't really
 

00:58:06.600 --> 00:58:08.790 align:start position:0%
about, right? You don't You don't really
need<00:58:06.920><c> to</c><00:58:07.040><c> store</c><00:58:07.440><c> them</c><00:58:07.640><c> in</c><00:58:07.760><c> Git.</c><00:58:08.360><c> These</c><00:58:08.600><c> could</c>

00:58:08.790 --> 00:58:08.800 align:start position:0%
need to store them in Git. These could
 

00:58:08.800 --> 00:58:11.990 align:start position:0%
need to store them in Git. These could
be<00:58:08.920><c> like</c><00:58:09.320><c> media</c><00:58:09.760><c> files,</c><00:58:10.520><c> or</c><00:58:10.720><c> generated</c><00:58:11.400><c> files,</c>

00:58:11.990 --> 00:58:12.000 align:start position:0%
be like media files, or generated files,
 

00:58:12.000 --> 00:58:13.790 align:start position:0%
be like media files, or generated files,
code<00:58:12.240><c> generated</c><00:58:12.760><c> files</c><00:58:13.080><c> that</c><00:58:13.320><c> that</c><00:58:13.560><c> can</c>

00:58:13.790 --> 00:58:13.800 align:start position:0%
code generated files that that can
 

00:58:13.800 --> 00:58:16.150 align:start position:0%
code generated files that that can
always<00:58:14.320><c> be</c><00:58:14.520><c> regenerated.</c><00:58:15.400><c> But</c><00:58:15.680><c> for</c><00:58:15.920><c> your</c>

00:58:16.150 --> 00:58:16.160 align:start position:0%
always be regenerated. But for your
 

00:58:16.160 --> 00:58:18.110 align:start position:0%
always be regenerated. But for your
actual<00:58:16.680><c> code,</c><00:58:17.160><c> you</c><00:58:17.280><c> always</c><00:58:17.800><c> want</c><00:58:17.960><c> to</c><00:58:18.000><c> be</c>

00:58:18.110 --> 00:58:18.120 align:start position:0%
actual code, you always want to be
 

00:58:18.120 --> 00:58:19.950 align:start position:0%
actual code, you always want to be
tracking<00:58:18.680><c> them,</c><00:58:18.920><c> right?</c><00:58:19.160><c> So,</c><00:58:19.280><c> we</c><00:58:19.560><c> we</c><00:58:19.720><c> have</c>

00:58:19.950 --> 00:58:19.960 align:start position:0%
tracking them, right? So, we we have
 

00:58:19.960 --> 00:58:22.710 align:start position:0%
tracking them, right? So, we we have
this<00:58:20.280><c> commit,</c><00:58:20.960><c> and</c><00:58:21.320><c> now</c><00:58:21.640><c> this</c><00:58:21.880><c> files</c><00:58:22.320><c> is</c><00:58:22.480><c> going</c>

00:58:22.710 --> 00:58:22.720 align:start position:0%
this commit, and now this files is going
 

00:58:22.720 --> 00:58:24.390 align:start position:0%
this commit, and now this files is going
to<00:58:22.840><c> be</c><00:58:22.960><c> tracked,</c><00:58:23.600><c> and</c><00:58:23.800><c> it's</c><00:58:23.920><c> going</c><00:58:24.160><c> to</c><00:58:24.280><c> be</c>

00:58:24.390 --> 00:58:24.400 align:start position:0%
to be tracked, and it's going to be
 

00:58:24.400 --> 00:58:26.590 align:start position:0%
to be tracked, and it's going to be
committed<00:58:24.880><c> as</c><00:58:25.080><c> well.</c><00:58:25.520><c> Okay?</c><00:58:25.800><c> So,</c><00:58:26.000><c> now</c><00:58:26.240><c> it</c><00:58:26.320><c> says</c>

00:58:26.590 --> 00:58:26.600 align:start position:0%
committed as well. Okay? So, now it says
 

00:58:26.600 --> 00:58:29.030 align:start position:0%
committed as well. Okay? So, now it says
committed<00:58:27.360><c> as</c><00:58:27.560><c> initial</c><00:58:28.040><c> commit,</c><00:58:28.640><c> right?</c><00:58:28.920><c> We</c>

00:58:29.030 --> 00:58:29.040 align:start position:0%
committed as initial commit, right? We
 

00:58:29.040 --> 00:58:31.110 align:start position:0%
committed as initial commit, right? We
have<00:58:29.240><c> this</c><00:58:29.520><c> It's</c><00:58:29.720><c> now</c><00:58:30.080><c> on</c><00:58:30.160><c> main,</c><00:58:30.520><c> which</c><00:58:30.720><c> is</c><00:58:30.840><c> the</c>

00:58:31.110 --> 00:58:31.120 align:start position:0%
have this It's now on main, which is the
 

00:58:31.120 --> 00:58:33.270 align:start position:0%
have this It's now on main, which is the
a<00:58:31.160><c> type</c><00:58:31.520><c> of</c><00:58:31.680><c> branch.</c><00:58:32.360><c> And</c><00:58:32.560><c> so,</c><00:58:32.680><c> now</c><00:58:32.960><c> if</c><00:58:33.040><c> we</c><00:58:33.160><c> go</c>

00:58:33.270 --> 00:58:33.280 align:start position:0%
a type of branch. And so, now if we go
 

00:58:33.280 --> 00:58:35.670 align:start position:0%
a type of branch. And so, now if we go
into<00:58:33.520><c> changes,</c><00:58:34.400><c> you</c><00:58:34.480><c> can</c><00:58:34.760><c> see</c><00:58:35.040><c> that</c><00:58:35.400><c> we</c><00:58:35.480><c> can</c>

00:58:35.670 --> 00:58:35.680 align:start position:0%
into changes, you can see that we can
 

00:58:35.680 --> 00:58:37.910 align:start position:0%
into changes, you can see that we can
select<00:58:36.160><c> a</c><00:58:36.240><c> branch</c><00:58:36.800><c> here.</c><00:58:37.240><c> And</c><00:58:37.400><c> as</c><00:58:37.520><c> you</c><00:58:37.600><c> can</c><00:58:37.760><c> see</c>

00:58:37.910 --> 00:58:37.920 align:start position:0%
select a branch here. And as you can see
 

00:58:37.920 --> 00:58:39.670 align:start position:0%
select a branch here. And as you can see
here,<00:58:38.120><c> it</c><00:58:38.200><c> says</c><00:58:38.360><c> no</c><00:58:38.560><c> file</c><00:58:38.880><c> changes</c><00:58:39.320><c> yet.</c><00:58:39.600><c> And</c>

00:58:39.670 --> 00:58:39.680 align:start position:0%
here, it says no file changes yet. And
 

00:58:39.680 --> 00:58:41.990 align:start position:0%
here, it says no file changes yet. And
that<00:58:39.840><c> is</c><00:58:39.920><c> because</c><00:58:40.360><c> we</c><00:58:40.520><c> have</c><00:58:40.760><c> not</c><00:58:41.280><c> made</c><00:58:41.680><c> any</c>

00:58:41.990 --> 00:58:42.000 align:start position:0%
that is because we have not made any
 

00:58:42.000 --> 00:58:44.510 align:start position:0%
that is because we have not made any
changes<00:58:42.840><c> since</c><00:58:43.400><c> tracking</c><00:58:43.880><c> that</c><00:58:44.080><c> file.</c><00:58:44.400><c> So,</c>

00:58:44.510 --> 00:58:44.520 align:start position:0%
changes since tracking that file. So,
 

00:58:44.520 --> 00:58:46.790 align:start position:0%
changes since tracking that file. So,
what<00:58:44.680><c> I'm</c><00:58:44.760><c> going</c><00:58:44.920><c> to</c><00:58:45.000><c> do</c><00:58:45.160><c> now</c><00:58:45.480><c> is</c><00:58:45.680><c> that</c><00:58:46.160><c> make</c>

00:58:46.790 --> 00:58:46.800 align:start position:0%
what I'm going to do now is that make
 

00:58:46.800 --> 00:58:50.870 align:start position:0%
what I'm going to do now is that make
index.html<00:58:48.280><c> output</c><00:58:49.080><c> hello</c><00:58:49.680><c> James.</c><00:58:50.440><c> That</c><00:58:50.640><c> has</c>

00:58:50.870 --> 00:58:50.880 align:start position:0%
index.html output hello James. That has
 

00:58:50.880 --> 00:58:52.950 align:start position:0%
index.html output hello James. That has
updated,<00:58:51.440><c> and</c><00:58:51.520><c> now</c><00:58:51.720><c> it</c><00:58:51.840><c> says</c><00:58:52.040><c> hello</c><00:58:52.360><c> James.</c>

00:58:52.950 --> 00:58:52.960 align:start position:0%
updated, and now it says hello James.
 

00:58:52.960 --> 00:58:54.670 align:start position:0%
updated, and now it says hello James.
And<00:58:53.080><c> now</c><00:58:53.320><c> what</c><00:58:53.440><c> we</c><00:58:53.560><c> can</c><00:58:53.720><c> do</c><00:58:53.840><c> is</c><00:58:53.960><c> we</c><00:58:54.080><c> can</c><00:58:54.240><c> commit</c>

00:58:54.670 --> 00:58:54.680 align:start position:0%
And now what we can do is we can commit
 

00:58:54.680 --> 00:58:57.670 align:start position:0%
And now what we can do is we can commit
it.<00:58:55.040><c> Commit</c><00:58:55.800><c> index.html.</c><00:58:57.040><c> And</c><00:58:57.200><c> now</c><00:58:57.440><c> if</c><00:58:57.560><c> we</c>

00:58:57.670 --> 00:58:57.680 align:start position:0%
it. Commit index.html. And now if we
 

00:58:57.680 --> 00:59:00.150 align:start position:0%
it. Commit index.html. And now if we
type<00:58:58.320><c> give</c><00:58:58.560><c> me</c><00:58:58.720><c> Git</c><00:58:59.080><c> status,</c><00:58:59.760><c> it's</c><00:58:59.960><c> going</c><00:59:00.080><c> to</c>

00:59:00.150 --> 00:59:00.160 align:start position:0%
type give me Git status, it's going to
 

00:59:00.160 --> 00:59:02.190 align:start position:0%
type give me Git status, it's going to
tell<00:59:00.560><c> you</c><00:59:00.680><c> that</c><00:59:01.160><c> it's</c><00:59:01.400><c> not</c><00:59:01.640><c> It</c><00:59:01.760><c> hasn't</c><00:59:02.040><c> been</c>

00:59:02.190 --> 00:59:02.200 align:start position:0%
tell you that it's not It hasn't been
 

00:59:02.200 --> 00:59:04.030 align:start position:0%
tell you that it's not It hasn't been
committed,<00:59:02.640><c> right?</c><00:59:02.840><c> It's</c><00:59:03.080><c> modified,</c><00:59:03.880><c> and</c>

00:59:04.030 --> 00:59:04.040 align:start position:0%
committed, right? It's modified, and
 

00:59:04.040 --> 00:59:05.670 align:start position:0%
committed, right? It's modified, and
it's<00:59:04.200><c> tracked,</c><00:59:04.880><c> but</c><00:59:05.040><c> it</c><00:59:05.160><c> hasn't</c><00:59:05.520><c> been</c>

00:59:05.670 --> 00:59:05.680 align:start position:0%
it's tracked, but it hasn't been
 

00:59:05.680 --> 00:59:07.550 align:start position:0%
it's tracked, but it hasn't been
committed.<00:59:06.080><c> Okay?</c><00:59:06.240><c> It</c><00:59:06.320><c> has</c><00:59:06.440><c> been</c><00:59:06.800><c> modified</c>

00:59:07.550 --> 00:59:07.560 align:start position:0%
committed. Okay? It has been modified
 

00:59:07.560 --> 00:59:10.110 align:start position:0%
committed. Okay? It has been modified
and<00:59:07.760><c> uncommitted,</c><00:59:08.400><c> right?</c><00:59:09.080><c> You</c><00:59:09.200><c> see</c><00:59:09.360><c> this</c><00:59:09.640><c> M,</c>

00:59:10.110 --> 00:59:10.120 align:start position:0%
and uncommitted, right? You see this M,
 

00:59:10.120 --> 00:59:11.750 align:start position:0%
and uncommitted, right? You see this M,
which<00:59:10.320><c> means</c><00:59:10.520><c> this</c><00:59:10.640><c> has</c><00:59:10.880><c> been</c><00:59:11.040><c> modified.</c><00:59:11.640><c> So,</c>

00:59:11.750 --> 00:59:11.760 align:start position:0%
which means this has been modified. So,
 

00:59:11.760 --> 00:59:15.270 align:start position:0%
which means this has been modified. So,
we're<00:59:11.880><c> going</c><00:59:12.000><c> to</c><00:59:12.120><c> do</c><00:59:12.840><c> commit</c><00:59:13.640><c> index.html.</c>

00:59:15.270 --> 00:59:15.280 align:start position:0%
we're going to do commit index.html.
 

00:59:15.280 --> 00:59:18.270 align:start position:0%
we're going to do commit index.html.
And<00:59:15.440><c> it</c><00:59:15.560><c> will</c><00:59:15.760><c> also</c><00:59:16.680><c> generate</c><00:59:17.520><c> a</c><00:59:17.640><c> default</c>

00:59:18.270 --> 00:59:18.280 align:start position:0%
And it will also generate a default
 

00:59:18.280 --> 00:59:20.350 align:start position:0%
And it will also generate a default
message.<00:59:18.840><c> Here</c><00:59:19.120><c> it</c><00:59:19.240><c> has</c><00:59:19.440><c> committed</c><00:59:19.960><c> it.</c><00:59:20.280><c> We</c>

00:59:20.350 --> 00:59:20.360 align:start position:0%
message. Here it has committed it. We
 

00:59:20.360 --> 00:59:22.190 align:start position:0%
message. Here it has committed it. We
can<00:59:20.520><c> click</c><00:59:20.840><c> here,</c><00:59:21.160><c> and</c><00:59:21.280><c> we</c><00:59:21.360><c> can</c><00:59:21.520><c> click</c><00:59:21.800><c> select</c>

00:59:22.190 --> 00:59:22.200 align:start position:0%
can click here, and we can click select
 

00:59:22.200 --> 00:59:25.510 align:start position:0%
can click here, and we can click select
review,<00:59:22.840><c> and</c><00:59:23.400><c> you</c><00:59:23.760><c> can</c><00:59:24.240><c> select</c><00:59:24.880><c> the</c><00:59:25.000><c> the</c><00:59:25.360><c> of</c>

00:59:25.510 --> 00:59:25.520 align:start position:0%
review, and you can select the the of
 

00:59:25.520 --> 00:59:27.190 align:start position:0%
review, and you can select the the of
change<00:59:25.960><c> you</c><00:59:26.080><c> want</c><00:59:26.240><c> to</c><00:59:26.320><c> see.</c><00:59:26.600><c> You</c><00:59:26.680><c> can</c><00:59:26.840><c> see</c><00:59:27.000><c> on</c>

00:59:27.190 --> 00:59:27.200 align:start position:0%
change you want to see. You can see on
 

00:59:27.200 --> 00:59:30.870 align:start position:0%
change you want to see. You can see on
stage,<00:59:28.000><c> stage,</c><00:59:28.760><c> branch,</c><00:59:29.440><c> or</c><00:59:29.680><c> last</c><00:59:30.120><c> turn.</c><00:59:30.760><c> And</c>

00:59:30.870 --> 00:59:30.880 align:start position:0%
stage, stage, branch, or last turn. And
 

00:59:30.880 --> 00:59:33.230 align:start position:0%
stage, stage, branch, or last turn. And
when<00:59:31.000><c> you</c><00:59:31.080><c> click</c><00:59:31.320><c> on</c><00:59:31.440><c> last</c><00:59:31.760><c> turn,</c><00:59:32.160><c> you</c><00:59:32.360><c> can</c><00:59:32.640><c> see</c>

00:59:33.230 --> 00:59:33.240 align:start position:0%
when you click on last turn, you can see
 

00:59:33.240 --> 00:59:35.990 align:start position:0%
when you click on last turn, you can see
what<00:59:33.640><c> was</c><00:59:33.880><c> changed,</c><00:59:34.680><c> okay?</c><00:59:35.000><c> Because</c><00:59:35.520><c> we</c><00:59:35.800><c> are</c>

00:59:35.990 --> 00:59:36.000 align:start position:0%
what was changed, okay? Because we are
 

00:59:36.000 --> 00:59:38.350 align:start position:0%
what was changed, okay? Because we are
we<00:59:36.200><c> are</c><00:59:36.320><c> using</c><00:59:36.680><c> source</c><00:59:37.000><c> control.</c><00:59:37.600><c> We</c><00:59:37.800><c> can</c><00:59:38.080><c> see</c>

00:59:38.350 --> 00:59:38.360 align:start position:0%
we are using source control. We can see
 

00:59:38.360 --> 00:59:39.790 align:start position:0%
we are using source control. We can see
the<00:59:38.520><c> stuff</c><00:59:38.800><c> that</c><00:59:39.000><c> was</c><00:59:39.160><c> changed.</c><00:59:39.480><c> As</c><00:59:39.560><c> you</c><00:59:39.640><c> can</c>

00:59:39.790 --> 00:59:39.800 align:start position:0%
the stuff that was changed. As you can
 

00:59:39.800 --> 00:59:41.950 align:start position:0%
the stuff that was changed. As you can
see,<00:59:40.480><c> this</c><00:59:40.760><c> is</c><00:59:40.880><c> the</c><00:59:41.000><c> one</c><00:59:41.280><c> line</c><00:59:41.600><c> that</c><00:59:41.800><c> was</c>

00:59:41.950 --> 00:59:41.960 align:start position:0%
see, this is the one line that was
 

00:59:41.960 --> 00:59:44.150 align:start position:0%
see, this is the one line that was
changed.<00:59:42.400><c> Red</c><00:59:42.760><c> means</c><00:59:43.040><c> it</c><00:59:43.200><c> was</c><00:59:43.360><c> deleted,</c><00:59:44.040><c> and</c>

00:59:44.150 --> 00:59:44.160 align:start position:0%
changed. Red means it was deleted, and
 

00:59:44.160 --> 00:59:46.710 align:start position:0%
changed. Red means it was deleted, and
green<00:59:44.680><c> means</c><00:59:45.080><c> it</c><00:59:45.280><c> was</c><00:59:45.520><c> inserted.</c><00:59:46.360><c> So,</c><00:59:46.440><c> this</c>

00:59:46.710 --> 00:59:46.720 align:start position:0%
green means it was inserted. So, this
 

00:59:46.720 --> 00:59:48.910 align:start position:0%
green means it was inserted. So, this
was<00:59:46.880><c> deleted,</c><00:59:47.520><c> and</c><00:59:47.640><c> this</c><00:59:47.880><c> was</c><00:59:48.080><c> inserted.</c><00:59:48.840><c> We</c>

00:59:48.910 --> 00:59:48.920 align:start position:0%
was deleted, and this was inserted. We
 

00:59:48.920 --> 00:59:50.510 align:start position:0%
was deleted, and this was inserted. We
basically<00:59:49.440><c> changed</c><00:59:49.840><c> the</c><00:59:49.920><c> message</c><00:59:50.280><c> that</c><00:59:50.440><c> it</c>

00:59:50.510 --> 00:59:50.520 align:start position:0%
basically changed the message that it
 

00:59:50.520 --> 00:59:52.710 align:start position:0%
basically changed the message that it
says<00:59:50.680><c> from</c><00:59:50.880><c> Hello</c><00:59:51.160><c> World</c><00:59:51.640><c> to</c><00:59:51.760><c> Hello</c><00:59:52.080><c> James.</c>

00:59:52.710 --> 00:59:52.720 align:start position:0%
says from Hello World to Hello James.
 

00:59:52.720 --> 00:59:56.150 align:start position:0%
says from Hello World to Hello James.
And<00:59:52.880><c> so,</c><00:59:53.600><c> Git</c><00:59:54.280><c> is</c><00:59:54.560><c> very</c><00:59:55.080><c> very</c><00:59:55.360><c> important.</c><00:59:56.040><c> If</c>

00:59:56.150 --> 00:59:56.160 align:start position:0%
And so, Git is very very important. If
 

00:59:56.160 --> 00:59:58.590 align:start position:0%
And so, Git is very very important. If
you're<00:59:56.360><c> working</c><00:59:56.800><c> on</c><00:59:57.320><c> any</c><00:59:57.640><c> kind</c><00:59:57.840><c> of</c><00:59:57.960><c> project,</c>

00:59:58.590 --> 00:59:58.600 align:start position:0%
you're working on any kind of project,
 

00:59:58.600 --> 01:00:00.590 align:start position:0%
you're working on any kind of project,
right?<00:59:58.880><c> Anything</c><00:59:59.240><c> beyond</c><00:59:59.840><c> something</c><01:00:00.200><c> super</c>

01:00:00.590 --> 01:00:00.600 align:start position:0%
right? Anything beyond something super
 

01:00:00.600 --> 01:00:03.310 align:start position:0%
right? Anything beyond something super
simple,<01:00:01.200><c> you</c><01:00:01.360><c> want</c><01:00:01.560><c> to</c><01:00:01.640><c> create</c><01:00:02.320><c> a</c><01:00:02.440><c> repo,</c><01:00:03.160><c> and</c>

01:00:03.310 --> 01:00:03.320 align:start position:0%
simple, you want to create a repo, and
 

01:00:03.320 --> 01:00:05.710 align:start position:0%
simple, you want to create a repo, and
you<01:00:03.480><c> want</c><01:00:03.720><c> to</c><01:00:03.840><c> implement</c><01:00:04.520><c> source</c><01:00:04.960><c> control</c>

01:00:05.710 --> 01:00:05.720 align:start position:0%
you want to implement source control
 

01:00:05.720 --> 01:00:10.350 align:start position:0%
you want to implement source control
into<01:00:06.200><c> your</c><01:00:06.760><c> workflow.</c>

01:00:10.350 --> 01:00:10.360 align:start position:0%
 
 

01:00:10.360 --> 01:00:12.150 align:start position:0%
 
One<01:00:10.520><c> advanced</c><01:00:11.000><c> trick</c><01:00:11.360><c> that</c><01:00:11.520><c> becomes</c><01:00:11.880><c> more</c>

01:00:12.150 --> 01:00:12.160 align:start position:0%
One advanced trick that becomes more
 

01:00:12.160 --> 01:00:14.830 align:start position:0%
One advanced trick that becomes more
useful<01:00:12.760><c> as</c><01:00:12.960><c> projects</c><01:00:13.520><c> get</c><01:00:13.760><c> bigger</c><01:00:14.160><c> is</c><01:00:14.400><c> working</c>

01:00:14.830 --> 01:00:14.840 align:start position:0%
useful as projects get bigger is working
 

01:00:14.840 --> 01:00:17.630 align:start position:0%
useful as projects get bigger is working
with<01:00:15.120><c> Git</c><01:00:15.560><c> work</c><01:00:15.960><c> trees.</c><01:00:16.520><c> A</c><01:00:16.640><c> work</c><01:00:17.040><c> tree</c><01:00:17.320><c> is</c><01:00:17.520><c> a</c>

01:00:17.630 --> 01:00:17.640 align:start position:0%
with Git work trees. A work tree is a
 

01:00:17.640 --> 01:00:20.550 align:start position:0%
with Git work trees. A work tree is a
separate<01:00:18.240><c> working</c><01:00:18.600><c> copy</c><01:00:19.080><c> of</c><01:00:19.240><c> the</c><01:00:19.360><c> same</c><01:00:19.720><c> repo</c>

01:00:20.550 --> 01:00:20.560 align:start position:0%
separate working copy of the same repo
 

01:00:20.560 --> 01:00:22.790 align:start position:0%
separate working copy of the same repo
connected<01:00:21.400><c> to</c><01:00:21.520><c> a</c><01:00:21.600><c> different</c><01:00:22.040><c> branch.</c><01:00:22.680><c> The</c>

01:00:22.790 --> 01:00:22.800 align:start position:0%
connected to a different branch. The
 

01:00:22.800 --> 01:00:24.750 align:start position:0%
connected to a different branch. The
practical<01:00:23.360><c> benefit</c><01:00:23.840><c> is</c><01:00:24.000><c> that</c><01:00:24.200><c> you</c><01:00:24.320><c> can</c><01:00:24.480><c> keep</c>

01:00:24.750 --> 01:00:24.760 align:start position:0%
practical benefit is that you can keep
 

01:00:24.760 --> 01:00:26.710 align:start position:0%
practical benefit is that you can keep
one<01:00:25.040><c> version</c><01:00:25.440><c> of</c><01:00:25.560><c> the</c><01:00:25.680><c> app</c><01:00:25.880><c> stable</c><01:00:26.440><c> while</c>

01:00:26.710 --> 01:00:26.720 align:start position:0%
one version of the app stable while
 

01:00:26.720 --> 01:00:29.030 align:start position:0%
one version of the app stable while
trying<01:00:27.320><c> a</c><01:00:27.440><c> risky</c><01:00:27.960><c> feature,</c><01:00:28.680><c> new</c><01:00:28.880><c> eye</c>

01:00:29.030 --> 01:00:29.040 align:start position:0%
trying a risky feature, new eye
 

01:00:29.040 --> 01:00:31.870 align:start position:0%
trying a risky feature, new eye
direction,<01:00:29.840><c> or</c><01:00:30.040><c> refactor</c><01:00:31.040><c> somewhere</c><01:00:31.520><c> else.</c>

01:00:31.870 --> 01:00:31.880 align:start position:0%
direction, or refactor somewhere else.
 

01:00:31.880 --> 01:00:33.670 align:start position:0%
direction, or refactor somewhere else.
This<01:00:32.160><c> matters</c><01:00:32.560><c> a</c><01:00:32.640><c> lot</c><01:00:33.000><c> with</c><01:00:33.160><c> the</c><01:00:33.240><c> genetic</c>

01:00:33.670 --> 01:00:33.680 align:start position:0%
This matters a lot with the genetic
 

01:00:33.680 --> 01:00:35.310 align:start position:0%
This matters a lot with the genetic
coding.<01:00:34.360><c> If</c><01:00:34.520><c> you</c><01:00:34.600><c> want</c><01:00:34.760><c> to</c><01:00:34.840><c> try</c><01:00:35.120><c> two</c>

01:00:35.310 --> 01:00:35.320 align:start position:0%
coding. If you want to try two
 

01:00:35.320 --> 01:00:37.590 align:start position:0%
coding. If you want to try two
approaches<01:00:35.920><c> in</c><01:00:36.040><c> parallel,</c><01:00:36.840><c> or</c><01:00:37.040><c> or</c><01:00:37.160><c> keep</c><01:00:37.440><c> a</c>

01:00:37.590 --> 01:00:37.600 align:start position:0%
approaches in parallel, or or keep a
 

01:00:37.600 --> 01:00:40.110 align:start position:0%
approaches in parallel, or or keep a
clean<01:00:38.080><c> version</c><01:00:38.560><c> ready</c><01:00:38.880><c> for</c><01:00:39.080><c> recording</c><01:00:39.840><c> while</c>

01:00:40.110 --> 01:00:40.120 align:start position:0%
clean version ready for recording while
 

01:00:40.120 --> 01:00:42.550 align:start position:0%
clean version ready for recording while
another<01:00:40.600><c> code</c><01:00:40.880><c> expert</c><01:00:41.400><c> keeps</c><01:00:41.720><c> building,</c><01:00:42.400><c> a</c>

01:00:42.550 --> 01:00:42.560 align:start position:0%
another code expert keeps building, a
 

01:00:42.560 --> 01:00:45.270 align:start position:0%
another code expert keeps building, a
work<01:00:42.960><c> tree</c><01:00:43.320><c> gives</c><01:00:43.680><c> you</c><01:00:43.840><c> that</c><01:00:44.280><c> separation.</c>

01:00:45.270 --> 01:00:45.280 align:start position:0%
work tree gives you that separation.
 

01:00:45.280 --> 01:00:47.150 align:start position:0%
work tree gives you that separation.
Now,<01:00:45.440><c> what's</c><01:00:45.640><c> nice</c><01:00:45.880><c> about</c><01:00:46.200><c> work</c><01:00:46.480><c> trees</c><01:00:46.920><c> is</c>

01:00:47.150 --> 01:00:47.160 align:start position:0%
Now, what's nice about work trees is
 

01:00:47.160 --> 01:00:50.590 align:start position:0%
Now, what's nice about work trees is
that<01:00:47.760><c> they</c><01:00:48.160><c> give</c><01:00:48.600><c> you</c><01:00:49.080><c> parallelism.</c><01:00:50.120><c> So,</c><01:00:50.360><c> if</c>

01:00:50.590 --> 01:00:50.600 align:start position:0%
that they give you parallelism. So, if
 

01:00:50.600 --> 01:00:52.910 align:start position:0%
that they give you parallelism. So, if
you<01:00:50.800><c> are</c><01:00:50.960><c> working</c><01:00:51.480><c> on</c><01:00:51.640><c> multiple</c><01:00:52.240><c> features</c><01:00:52.800><c> in</c>

01:00:52.910 --> 01:00:52.920 align:start position:0%
you are working on multiple features in
 

01:00:52.920 --> 01:00:55.070 align:start position:0%
you are working on multiple features in
your<01:00:53.160><c> app,</c><01:00:53.320><c> maybe</c><01:00:53.600><c> you're</c><01:00:53.800><c> using</c><01:00:54.160><c> sub</c><01:00:54.520><c> agents</c>

01:00:55.070 --> 01:00:55.080 align:start position:0%
your app, maybe you're using sub agents
 

01:00:55.080 --> 01:00:58.030 align:start position:0%
your app, maybe you're using sub agents
or<01:00:55.760><c> something</c><01:00:56.200><c> else,</c><01:00:56.720><c> it's</c><01:00:56.880><c> important</c><01:00:57.600><c> that</c>

01:00:58.030 --> 01:00:58.040 align:start position:0%
or something else, it's important that
 

01:00:58.040 --> 01:01:01.510 align:start position:0%
or something else, it's important that
no<01:00:58.560><c> two</c><01:00:58.960><c> processes</c><01:00:59.920><c> work</c><01:01:00.320><c> on</c><01:01:00.480><c> the</c><01:01:00.600><c> same</c><01:01:00.920><c> file</c>

01:01:01.510 --> 01:01:01.520 align:start position:0%
no two processes work on the same file
 

01:01:01.520 --> 01:01:03.350 align:start position:0%
no two processes work on the same file
at<01:01:01.680><c> the</c><01:01:01.800><c> same</c><01:01:02.240><c> time,</c><01:01:02.680><c> because</c><01:01:03.000><c> that's</c><01:01:03.240><c> going</c>

01:01:03.350 --> 01:01:03.360 align:start position:0%
at the same time, because that's going
 

01:01:03.360 --> 01:01:05.350 align:start position:0%
at the same time, because that's going
to<01:01:03.440><c> create</c><01:01:03.920><c> corruption.</c><01:01:04.720><c> And</c><01:01:04.880><c> so,</c><01:01:05.080><c> what</c><01:01:05.280><c> you</c>

01:01:05.350 --> 01:01:05.360 align:start position:0%
to create corruption. And so, what you
 

01:01:05.360 --> 01:01:07.950 align:start position:0%
to create corruption. And so, what you
typically<01:01:05.880><c> end</c><01:01:06.080><c> up</c><01:01:06.240><c> doing</c><01:01:06.640><c> is</c><01:01:06.920><c> you</c><01:01:07.240><c> create</c><01:01:07.800><c> a</c>

01:01:07.950 --> 01:01:07.960 align:start position:0%
typically end up doing is you create a
 

01:01:07.960 --> 01:01:10.870 align:start position:0%
typically end up doing is you create a
work<01:01:08.400><c> tree</c><01:01:08.880><c> for</c><01:01:09.200><c> a</c><01:01:09.280><c> specific</c><01:01:09.920><c> feature,</c><01:01:10.720><c> and</c>

01:01:10.870 --> 01:01:10.880 align:start position:0%
work tree for a specific feature, and
 

01:01:10.880 --> 01:01:12.470 align:start position:0%
work tree for a specific feature, and
you<01:01:11.080><c> work</c><01:01:11.400><c> on</c><01:01:11.480><c> that</c><01:01:11.720><c> work</c><01:01:12.000><c> tree.</c><01:01:12.120><c> And</c><01:01:12.280><c> when</c>

01:01:12.470 --> 01:01:12.480 align:start position:0%
you work on that work tree. And when
 

01:01:12.480 --> 01:01:15.670 align:start position:0%
you work on that work tree. And when
you're<01:01:12.640><c> done,</c><01:01:13.120><c> you</c><01:01:13.360><c> merge</c><01:01:14.160><c> the</c><01:01:14.280><c> changes</c><01:01:15.080><c> back</c>

01:01:15.670 --> 01:01:15.680 align:start position:0%
you're done, you merge the changes back
 

01:01:15.680 --> 01:01:17.870 align:start position:0%
you're done, you merge the changes back
onto<01:01:16.000><c> your</c><01:01:16.280><c> main</c><01:01:16.680><c> tree.</c><01:01:17.280><c> Now,</c><01:01:17.400><c> that</c><01:01:17.600><c> doesn't</c>

01:01:17.870 --> 01:01:17.880 align:start position:0%
onto your main tree. Now, that doesn't
 

01:01:17.880 --> 01:01:19.790 align:start position:0%
onto your main tree. Now, that doesn't
mean<01:01:18.040><c> you</c><01:01:18.160><c> can</c><01:01:18.360><c> only</c><01:01:18.640><c> create</c><01:01:19.040><c> one</c><01:01:19.360><c> work</c><01:01:19.600><c> tree.</c>

01:01:19.790 --> 01:01:19.800 align:start position:0%
mean you can only create one work tree.
 

01:01:19.800 --> 01:01:22.110 align:start position:0%
mean you can only create one work tree.
You<01:01:19.920><c> can</c><01:01:20.120><c> create</c><01:01:20.480><c> multiple</c><01:01:21.240><c> work</c><01:01:21.480><c> trees,</c><01:01:21.880><c> as</c>

01:01:22.110 --> 01:01:22.120 align:start position:0%
You can create multiple work trees, as
 

01:01:22.120 --> 01:01:25.030 align:start position:0%
You can create multiple work trees, as
many<01:01:22.640><c> as</c><01:01:22.840><c> you</c><01:01:22.960><c> want,</c><01:01:23.640><c> and</c><01:01:23.840><c> you</c><01:01:23.960><c> can</c><01:01:24.160><c> also</c><01:01:24.640><c> work</c>

01:01:25.030 --> 01:01:25.040 align:start position:0%
many as you want, and you can also work
 

01:01:25.040 --> 01:01:27.990 align:start position:0%
many as you want, and you can also work
on<01:01:25.160><c> the</c><01:01:25.280><c> same</c><01:01:25.760><c> feature</c><01:01:26.440><c> because</c><01:01:27.160><c> after</c><01:01:27.680><c> one</c>

01:01:27.990 --> 01:01:28.000 align:start position:0%
on the same feature because after one
 

01:01:28.000 --> 01:01:30.230 align:start position:0%
on the same feature because after one
worktree<01:01:28.520><c> is</c><01:01:28.680><c> done,</c><01:01:29.080><c> it's</c><01:01:29.280><c> going</c><01:01:29.440><c> to</c><01:01:29.560><c> merge</c><01:01:30.080><c> to</c>

01:01:30.230 --> 01:01:30.240 align:start position:0%
worktree is done, it's going to merge to
 

01:01:30.240 --> 01:01:32.550 align:start position:0%
worktree is done, it's going to merge to
main,<01:01:30.920><c> and</c><01:01:31.080><c> if</c><01:01:31.200><c> there's</c><01:01:31.480><c> a</c><01:01:31.560><c> conflict,</c><01:01:32.360><c> it's</c>

01:01:32.550 --> 01:01:32.560 align:start position:0%
main, and if there's a conflict, it's
 

01:01:32.560 --> 01:01:34.310 align:start position:0%
main, and if there's a conflict, it's
going<01:01:32.720><c> to</c><01:01:32.800><c> resolve</c><01:01:33.240><c> that</c><01:01:33.480><c> conflict,</c><01:01:34.000><c> and</c><01:01:34.120><c> then</c>

01:01:34.310 --> 01:01:34.320 align:start position:0%
going to resolve that conflict, and then
 

01:01:34.320 --> 01:01:37.190 align:start position:0%
going to resolve that conflict, and then
another<01:01:34.800><c> worktree,</c><01:01:35.680><c> when</c><01:01:35.960><c> it</c><01:01:36.160><c> is</c><01:01:36.360><c> done,</c><01:01:37.000><c> it's</c>

01:01:37.190 --> 01:01:37.200 align:start position:0%
another worktree, when it is done, it's
 

01:01:37.200 --> 01:01:39.510 align:start position:0%
another worktree, when it is done, it's
going<01:01:37.320><c> to</c><01:01:37.440><c> also</c><01:01:37.920><c> merge</c><01:01:38.360><c> into</c><01:01:38.680><c> your</c><01:01:38.920><c> main</c>

01:01:39.510 --> 01:01:39.520 align:start position:0%
going to also merge into your main
 

01:01:39.520 --> 01:01:41.590 align:start position:0%
going to also merge into your main
branch<01:01:40.040><c> where</c><01:01:40.200><c> your</c><01:01:40.800><c> development</c><01:01:41.440><c> is</c>

01:01:41.590 --> 01:01:41.600 align:start position:0%
branch where your development is
 

01:01:41.600 --> 01:01:43.470 align:start position:0%
branch where your development is
happening,<01:01:42.120><c> and</c><01:01:42.280><c> if</c><01:01:42.400><c> there's</c><01:01:42.680><c> a</c><01:01:42.760><c> conflict</c>

01:01:43.470 --> 01:01:43.480 align:start position:0%
happening, and if there's a conflict
 

01:01:43.480 --> 01:01:44.950 align:start position:0%
happening, and if there's a conflict
because<01:01:43.800><c> they</c><01:01:44.040><c> ended</c><01:01:44.320><c> up</c><01:01:44.440><c> working</c><01:01:44.800><c> on</c><01:01:44.880><c> the</c>

01:01:44.950 --> 01:01:44.960 align:start position:0%
because they ended up working on the
 

01:01:44.960 --> 01:01:47.390 align:start position:0%
because they ended up working on the
same<01:01:45.280><c> feature,</c><01:01:45.920><c> it</c><01:01:46.080><c> will</c><01:01:46.320><c> also</c><01:01:46.760><c> resolve</c><01:01:47.200><c> that</c>

01:01:47.390 --> 01:01:47.400 align:start position:0%
same feature, it will also resolve that
 

01:01:47.400 --> 01:01:49.350 align:start position:0%
same feature, it will also resolve that
conflict<01:01:47.960><c> so</c><01:01:48.080><c> that</c><01:01:48.240><c> there's</c><01:01:48.480><c> no</c><01:01:48.720><c> corruption.</c>

01:01:49.350 --> 01:01:49.360 align:start position:0%
conflict so that there's no corruption.
 

01:01:49.360 --> 01:01:51.070 align:start position:0%
conflict so that there's no corruption.
Now,<01:01:49.520><c> this</c><01:01:49.720><c> is</c><01:01:49.840><c> a</c><01:01:50.040><c> feature</c><01:01:50.360><c> I</c><01:01:50.440><c> use</c><01:01:50.720><c> all</c><01:01:50.960><c> the</c>

01:01:51.070 --> 01:01:51.080 align:start position:0%
Now, this is a feature I use all the
 

01:01:51.080 --> 01:01:53.470 align:start position:0%
Now, this is a feature I use all the
time<01:01:51.400><c> in</c><01:01:51.520><c> big</c><01:01:51.840><c> projects.</c><01:01:52.600><c> Now,</c><01:01:52.800><c> let's</c><01:01:53.080><c> say</c><01:01:53.280><c> I'm</c>

01:01:53.470 --> 01:01:53.480 align:start position:0%
time in big projects. Now, let's say I'm
 

01:01:53.480 --> 01:01:55.390 align:start position:0%
time in big projects. Now, let's say I'm
working<01:01:53.880><c> on</c><01:01:54.000><c> this</c><01:01:54.240><c> app</c><01:01:54.480><c> over</c><01:01:54.680><c> here.</c><01:01:55.160><c> You</c><01:01:55.200><c> can</c>

01:01:55.390 --> 01:01:55.400 align:start position:0%
working on this app over here. You can
 

01:01:55.400 --> 01:01:58.590 align:start position:0%
working on this app over here. You can
ask<01:01:55.760><c> Codox</c><01:01:56.560><c> to</c><01:01:56.840><c> work</c><01:01:57.240><c> in</c><01:01:57.480><c> main</c><01:01:58.120><c> without</c>

01:01:58.590 --> 01:01:58.600 align:start position:0%
ask Codox to work in main without
 

01:01:58.600 --> 01:02:01.270 align:start position:0%
ask Codox to work in main without
creating<01:01:59.000><c> any</c><01:01:59.200><c> worktrees,</c><01:01:59.920><c> or</c><01:02:00.440><c> I</c><01:02:00.560><c> can</c><01:02:00.800><c> ask</c><01:02:01.120><c> it</c>

01:02:01.270 --> 01:02:01.280 align:start position:0%
creating any worktrees, or I can ask it
 

01:02:01.280 --> 01:02:04.150 align:start position:0%
creating any worktrees, or I can ask it
to<01:02:01.400><c> create</c><01:02:01.960><c> a</c><01:02:02.040><c> new</c><01:02:02.320><c> worktree</c><01:02:03.240><c> while</c><01:02:03.680><c> it</c><01:02:03.840><c> makes</c>

01:02:04.150 --> 01:02:04.160 align:start position:0%
to create a new worktree while it makes
 

01:02:04.160 --> 01:02:06.750 align:start position:0%
to create a new worktree while it makes
changes.<01:02:04.880><c> So,</c><01:02:05.240><c> let's</c><01:02:05.680><c> continue</c><01:02:06.280><c> what</c><01:02:06.480><c> we</c><01:02:06.600><c> were</c>

01:02:06.750 --> 01:02:06.760 align:start position:0%
changes. So, let's continue what we were
 

01:02:06.760 --> 01:02:08.510 align:start position:0%
changes. So, let's continue what we were
doing.<01:02:07.080><c> So,</c><01:02:07.240><c> let's</c><01:02:07.480><c> say</c><01:02:07.800><c> I</c><01:02:07.920><c> want</c><01:02:08.080><c> to</c><01:02:08.160><c> change</c>

01:02:08.510 --> 01:02:08.520 align:start position:0%
doing. So, let's say I want to change
 

01:02:08.520 --> 01:02:10.910 align:start position:0%
doing. So, let's say I want to change
this<01:02:08.720><c> index.html,</c><01:02:09.920><c> and</c><01:02:10.120><c> I</c><01:02:10.200><c> wanted</c><01:02:10.520><c> to</c><01:02:10.640><c> say</c>

01:02:10.910 --> 01:02:10.920 align:start position:0%
this index.html, and I wanted to say
 

01:02:10.920 --> 01:02:12.630 align:start position:0%
this index.html, and I wanted to say
something<01:02:11.400><c> else.</c><01:02:11.680><c> So,</c><01:02:12.160><c> I'm</c><01:02:12.280><c> going</c><01:02:12.400><c> to</c><01:02:12.480><c> go</c>

01:02:12.630 --> 01:02:12.640 align:start position:0%
something else. So, I'm going to go
 

01:02:12.640 --> 01:02:15.870 align:start position:0%
something else. So, I'm going to go
ahead<01:02:13.120><c> and</c><01:02:13.360><c> tell</c><01:02:13.640><c> it,</c><01:02:14.080><c> "Make</c><01:02:14.520><c> index.html</c>

01:02:15.870 --> 01:02:15.880 align:start position:0%
ahead and tell it, "Make index.html
 

01:02:15.880 --> 01:02:18.750 align:start position:0%
ahead and tell it, "Make index.html
output<01:02:16.320><c> hello,</c><01:02:17.160><c> plan."</c><01:02:17.920><c> But</c><01:02:18.120><c> this</c><01:02:18.440><c> time,</c><01:02:18.680><c> we</c>

01:02:18.750 --> 01:02:18.760 align:start position:0%
output hello, plan." But this time, we
 

01:02:18.760 --> 01:02:20.550 align:start position:0%
output hello, plan." But this time, we
want<01:02:18.960><c> to</c><01:02:19.000><c> make</c><01:02:19.200><c> sure</c><01:02:19.600><c> that</c><01:02:19.760><c> it</c><01:02:20.040><c> works</c><01:02:20.320><c> in</c><01:02:20.480><c> a</c>

01:02:20.550 --> 01:02:20.560 align:start position:0%
want to make sure that it works in a
 

01:02:20.560 --> 01:02:22.190 align:start position:0%
want to make sure that it works in a
different<01:02:21.000><c> worktree.</c><01:02:21.720><c> So,</c><01:02:21.880><c> what</c><01:02:22.000><c> I'm</c><01:02:22.080><c> going</c>

01:02:22.190 --> 01:02:22.200 align:start position:0%
different worktree. So, what I'm going
 

01:02:22.200 --> 01:02:24.590 align:start position:0%
different worktree. So, what I'm going
to<01:02:22.320><c> do</c><01:02:22.440><c> is</c><01:02:22.560><c> I'm</c><01:02:22.680><c> going</c><01:02:22.840><c> to</c><01:02:22.920><c> say,</c><01:02:23.480><c> "Work</c><01:02:24.280><c> in</c><01:02:24.440><c> a</c>

01:02:24.590 --> 01:02:24.600 align:start position:0%
to do is I'm going to say, "Work in a
 

01:02:24.600 --> 01:02:28.150 align:start position:0%
to do is I'm going to say, "Work in a
new<01:02:25.000><c> worktree,</c><01:02:25.880><c> and</c><01:02:26.080><c> then</c><01:02:26.360><c> merge,</c><01:02:27.200><c> clean</c><01:02:27.680><c> up</c>

01:02:28.150 --> 01:02:28.160 align:start position:0%
new worktree, and then merge, clean up
 

01:02:28.160 --> 01:02:29.990 align:start position:0%
new worktree, and then merge, clean up
after<01:02:28.480><c> you're</c><01:02:28.680><c> done,</c><01:02:29.280><c> okay?"</c><01:02:29.640><c> So,</c><01:02:29.840><c> we're</c>

01:02:29.990 --> 01:02:30.000 align:start position:0%
after you're done, okay?" So, we're
 

01:02:30.000 --> 01:02:31.910 align:start position:0%
after you're done, okay?" So, we're
going<01:02:30.160><c> to</c><01:02:30.240><c> go</c><01:02:30.400><c> ahead</c><01:02:30.680><c> and</c><01:02:30.840><c> run</c><01:02:31.080><c> this,</c><01:02:31.560><c> and</c><01:02:31.680><c> now</c>

01:02:31.910 --> 01:02:31.920 align:start position:0%
going to go ahead and run this, and now
 

01:02:31.920 --> 01:02:34.270 align:start position:0%
going to go ahead and run this, and now
it's<01:02:32.080><c> not</c><01:02:32.240><c> going</c><01:02:32.360><c> to</c><01:02:32.480><c> modify</c><01:02:32.920><c> the</c><01:02:33.080><c> file</c><01:02:33.640><c> on</c><01:02:33.880><c> our</c>

01:02:34.270 --> 01:02:34.280 align:start position:0%
it's not going to modify the file on our
 

01:02:34.280 --> 01:02:37.350 align:start position:0%
it's not going to modify the file on our
main<01:02:34.800><c> branch.</c><01:02:35.480><c> It's</c><01:02:35.720><c> going</c><01:02:36.000><c> to</c><01:02:36.160><c> branch</c><01:02:36.800><c> out,</c>

01:02:37.350 --> 01:02:37.360 align:start position:0%
main branch. It's going to branch out,
 

01:02:37.360 --> 01:02:39.550 align:start position:0%
main branch. It's going to branch out,
do<01:02:37.520><c> the</c><01:02:37.680><c> work,</c><01:02:38.400><c> and</c><01:02:38.560><c> then</c><01:02:38.800><c> come</c><01:02:39.080><c> back</c><01:02:39.440><c> and</c>

01:02:39.550 --> 01:02:39.560 align:start position:0%
do the work, and then come back and
 

01:02:39.560 --> 01:02:41.510 align:start position:0%
do the work, and then come back and
merge<01:02:39.920><c> the</c><01:02:40.040><c> changes</c><01:02:40.520><c> back</c><01:02:40.840><c> in.</c><01:02:41.080><c> And</c><01:02:41.240><c> so,</c><01:02:41.400><c> as</c>

01:02:41.510 --> 01:02:41.520 align:start position:0%
merge the changes back in. And so, as
 

01:02:41.520 --> 01:02:43.550 align:start position:0%
merge the changes back in. And so, as
you<01:02:41.600><c> can</c><01:02:41.800><c> see</c><01:02:42.000><c> here,</c><01:02:42.440><c> there's</c><01:02:42.800><c> more</c><01:02:43.160><c> stuff</c>

01:02:43.550 --> 01:02:43.560 align:start position:0%
you can see here, there's more stuff
 

01:02:43.560 --> 01:02:45.590 align:start position:0%
you can see here, there's more stuff
happening.<01:02:44.080><c> I'll</c><01:02:44.200><c> make</c><01:02:44.480><c> this</c><01:02:44.680><c> in</c><01:02:44.840><c> a</c><01:02:44.920><c> separate</c>

01:02:45.590 --> 01:02:45.600 align:start position:0%
happening. I'll make this in a separate
 

01:02:45.600 --> 01:02:48.190 align:start position:0%
happening. I'll make this in a separate
Git<01:02:45.920><c> worktree,</c><01:02:46.440><c> commit</c><01:02:46.920><c> there,</c><01:02:47.480><c> fast</c><01:02:47.840><c> forward</c>

01:02:48.190 --> 01:02:48.200 align:start position:0%
Git worktree, commit there, fast forward
 

01:02:48.200 --> 01:02:50.550 align:start position:0%
Git worktree, commit there, fast forward
merge<01:02:48.680><c> changes</c><01:02:49.280><c> to</c><01:02:49.400><c> main,</c><01:02:49.920><c> and</c><01:02:50.000><c> then</c><01:02:50.160><c> remove</c>

01:02:50.550 --> 01:02:50.560 align:start position:0%
merge changes to main, and then remove
 

01:02:50.560 --> 01:02:52.910 align:start position:0%
merge changes to main, and then remove
the<01:02:50.680><c> worktree</c><01:02:51.160><c> and</c><01:02:51.320><c> delete</c><01:02:51.640><c> the</c><01:02:51.760><c> branch.</c><01:02:52.280><c> And</c>

01:02:52.910 --> 01:02:52.920 align:start position:0%
the worktree and delete the branch. And
 

01:02:52.920 --> 01:02:54.510 align:start position:0%
the worktree and delete the branch. And
that's<01:02:53.120><c> exactly</c><01:02:53.600><c> what</c><01:02:53.760><c> it</c><01:02:53.880><c> did,</c><01:02:54.120><c> except</c><01:02:54.440><c> it</c>

01:02:54.510 --> 01:02:54.520 align:start position:0%
that's exactly what it did, except it
 

01:02:54.520 --> 01:02:56.270 align:start position:0%
that's exactly what it did, except it
did<01:02:54.680><c> it</c><01:02:54.840><c> very,</c><01:02:55.160><c> very</c><01:02:55.440><c> quickly</c><01:02:55.840><c> because</c><01:02:56.080><c> this</c>

01:02:56.270 --> 01:02:56.280 align:start position:0%
did it very, very quickly because this
 

01:02:56.280 --> 01:02:58.750 align:start position:0%
did it very, very quickly because this
was<01:02:56.520><c> a,</c><01:02:56.840><c> you</c><01:02:56.920><c> know,</c><01:02:57.160><c> a</c><01:02:57.280><c> very</c><01:02:57.720><c> small</c><01:02:58.080><c> change,</c>

01:02:58.750 --> 01:02:58.760 align:start position:0%
was a, you know, a very small change,
 

01:02:58.760 --> 01:03:01.950 align:start position:0%
was a, you know, a very small change,
but<01:02:59.280><c> you</c><01:02:59.520><c> saw</c><01:03:00.040><c> it</c><01:03:00.240><c> doing</c><01:03:00.600><c> all</c><01:03:00.800><c> that,</c><01:03:01.280><c> and</c>

01:03:01.950 --> 01:03:01.960 align:start position:0%
but you saw it doing all that, and
 

01:03:01.960 --> 01:03:04.190 align:start position:0%
but you saw it doing all that, and
before<01:03:02.360><c> you</c><01:03:02.520><c> know</c><01:03:02.760><c> it,</c><01:03:03.040><c> it</c><01:03:03.200><c> did</c><01:03:03.400><c> all</c><01:03:03.560><c> that,</c>

01:03:04.190 --> 01:03:04.200 align:start position:0%
before you know it, it did all that,
 

01:03:04.200 --> 01:03:06.710 align:start position:0%
before you know it, it did all that,
made<01:03:04.560><c> the</c><01:03:04.680><c> change,</c><01:03:05.280><c> merged</c><01:03:05.880><c> everything</c><01:03:06.320><c> back,</c>

01:03:06.710 --> 01:03:06.720 align:start position:0%
made the change, merged everything back,
 

01:03:06.720 --> 01:03:08.670 align:start position:0%
made the change, merged everything back,
and<01:03:06.880><c> deleted</c><01:03:07.480><c> the</c><01:03:07.600><c> worktree.</c><01:03:08.160><c> And</c><01:03:08.320><c> so,</c><01:03:08.440><c> that</c>

01:03:08.670 --> 01:03:08.680 align:start position:0%
and deleted the worktree. And so, that
 

01:03:08.680 --> 01:03:11.030 align:start position:0%
and deleted the worktree. And so, that
was<01:03:08.840><c> a</c><01:03:08.960><c> very,</c><01:03:09.440><c> very</c><01:03:09.760><c> small</c><01:03:10.160><c> change.</c><01:03:10.520><c> Now,</c>

01:03:11.030 --> 01:03:11.040 align:start position:0%
was a very, very small change. Now,
 

01:03:11.040 --> 01:03:12.590 align:start position:0%
was a very, very small change. Now,
another<01:03:11.400><c> thing</c><01:03:11.600><c> that</c><01:03:11.760><c> you</c><01:03:11.880><c> can</c><01:03:12.040><c> do</c><01:03:12.200><c> is</c><01:03:12.320><c> you</c><01:03:12.400><c> can</c>

01:03:12.590 --> 01:03:12.600 align:start position:0%
another thing that you can do is you can
 

01:03:12.600 --> 01:03:15.750 align:start position:0%
another thing that you can do is you can
click<01:03:13.000><c> here,</c><01:03:13.680><c> and</c><01:03:13.960><c> you</c><01:03:14.080><c> can</c><01:03:14.320><c> fork</c><01:03:15.200><c> this</c><01:03:15.440><c> whole</c>

01:03:15.750 --> 01:03:15.760 align:start position:0%
click here, and you can fork this whole
 

01:03:15.760 --> 01:03:18.310 align:start position:0%
click here, and you can fork this whole
convo<01:03:16.560><c> in</c><01:03:16.720><c> a</c><01:03:16.840><c> separate</c><01:03:17.400><c> worktree,</c><01:03:17.960><c> right?</c><01:03:18.240><c> So,</c>

01:03:18.310 --> 01:03:18.320 align:start position:0%
convo in a separate worktree, right? So,
 

01:03:18.320 --> 01:03:21.070 align:start position:0%
convo in a separate worktree, right? So,
if<01:03:18.480><c> I</c><01:03:18.520><c> click</c><01:03:18.840><c> over</c><01:03:19.040><c> here,</c><01:03:19.640><c> that</c><01:03:19.960><c> will</c><01:03:20.240><c> fork</c><01:03:20.760><c> it</c>

01:03:21.070 --> 01:03:21.080 align:start position:0%
if I click over here, that will fork it
 

01:03:21.080 --> 01:03:23.830 align:start position:0%
if I click over here, that will fork it
into<01:03:21.480><c> a</c><01:03:21.640><c> separate</c><01:03:22.600><c> work</c><01:03:22.960><c> tree.</c><01:03:23.240><c> And</c><01:03:23.440><c> here</c><01:03:23.720><c> you</c>

01:03:23.830 --> 01:03:23.840 align:start position:0%
into a separate work tree. And here you
 

01:03:23.840 --> 01:03:26.030 align:start position:0%
into a separate work tree. And here you
can<01:03:24.000><c> see</c><01:03:24.240><c> we're</c><01:03:24.560><c> working</c><01:03:25.000><c> in</c><01:03:25.160><c> a</c><01:03:25.240><c> separate</c><01:03:25.800><c> work</c>

01:03:26.030 --> 01:03:26.040 align:start position:0%
can see we're working in a separate work
 

01:03:26.040 --> 01:03:28.550 align:start position:0%
can see we're working in a separate work
tree<01:03:26.320><c> here,</c><01:03:26.600><c> okay?</c><01:03:27.120><c> So,</c><01:03:27.240><c> now</c><01:03:27.640><c> as</c><01:03:27.920><c> we're</c><01:03:28.200><c> doing</c>

01:03:28.550 --> 01:03:28.560 align:start position:0%
tree here, okay? So, now as we're doing
 

01:03:28.560 --> 01:03:30.790 align:start position:0%
tree here, okay? So, now as we're doing
work,<01:03:29.000><c> we</c><01:03:29.200><c> don't</c><01:03:29.320><c> need</c><01:03:29.560><c> to</c><01:03:29.680><c> constantly</c><01:03:30.400><c> tell</c>

01:03:30.790 --> 01:03:30.800 align:start position:0%
work, we don't need to constantly tell
 

01:03:30.800 --> 01:03:33.070 align:start position:0%
work, we don't need to constantly tell
Cortex,<01:03:31.480><c> "Hey,</c><01:03:32.160><c> you</c><01:03:32.240><c> know,</c><01:03:32.360><c> create</c><01:03:32.800><c> a</c><01:03:32.840><c> new</c>

01:03:33.070 --> 01:03:33.080 align:start position:0%
Cortex, "Hey, you know, create a new
 

01:03:33.080 --> 01:03:35.110 align:start position:0%
Cortex, "Hey, you know, create a new
work<01:03:33.400><c> tree,</c><01:03:33.680><c> clean</c><01:03:34.200><c> up,</c><01:03:34.480><c> and</c><01:03:34.600><c> do</c><01:03:34.720><c> all</c><01:03:34.880><c> this</c>

01:03:35.110 --> 01:03:35.120 align:start position:0%
work tree, clean up, and do all this
 

01:03:35.120 --> 01:03:36.830 align:start position:0%
work tree, clean up, and do all this
when<01:03:35.280><c> you're</c><01:03:35.440><c> done."</c><01:03:35.880><c> We</c><01:03:36.080><c> can</c><01:03:36.280><c> continue</c>

01:03:36.830 --> 01:03:36.840 align:start position:0%
when you're done." We can continue
 

01:03:36.840 --> 01:03:39.270 align:start position:0%
when you're done." We can continue
working<01:03:37.320><c> and</c><01:03:37.480><c> then</c><01:03:37.760><c> merge</c><01:03:38.240><c> our</c><01:03:38.440><c> changes.</c><01:03:39.120><c> So,</c>

01:03:39.270 --> 01:03:39.280 align:start position:0%
working and then merge our changes. So,
 

01:03:39.280 --> 01:03:41.110 align:start position:0%
working and then merge our changes. So,
for<01:03:39.440><c> instance,</c><01:03:39.800><c> I</c><01:03:39.880><c> can</c><01:03:40.080><c> say</c><01:03:40.280><c> something</c><01:03:40.760><c> like</c>

01:03:41.110 --> 01:03:41.120 align:start position:0%
for instance, I can say something like
 

01:03:41.120 --> 01:03:44.270 align:start position:0%
for instance, I can say something like
to<01:03:41.320><c> say,</c><01:03:41.960><c> "Hello,</c><01:03:42.760><c> USA."</c><01:03:43.560><c> I</c><01:03:43.600><c> can</c><01:03:43.760><c> simply</c><01:03:44.120><c> do</c>

01:03:44.270 --> 01:03:44.280 align:start position:0%
to say, "Hello, USA." I can simply do
 

01:03:44.280 --> 01:03:45.950 align:start position:0%
to say, "Hello, USA." I can simply do
that.<01:03:44.720><c> I</c><01:03:44.720><c> don't</c><01:03:44.960><c> need</c><01:03:45.120><c> to</c><01:03:45.240><c> tell</c><01:03:45.440><c> it</c><01:03:45.560><c> to</c><01:03:45.640><c> work</c><01:03:45.840><c> in</c>

01:03:45.950 --> 01:03:45.960 align:start position:0%
that. I don't need to tell it to work in
 

01:03:45.960 --> 01:03:48.070 align:start position:0%
that. I don't need to tell it to work in
a<01:03:46.040><c> separate</c><01:03:46.400><c> work</c><01:03:46.600><c> tree</c><01:03:47.120><c> because</c><01:03:47.520><c> we</c><01:03:47.760><c> are</c>

01:03:48.070 --> 01:03:48.080 align:start position:0%
a separate work tree because we are
 

01:03:48.080 --> 01:03:49.990 align:start position:0%
a separate work tree because we are
isolated<01:03:48.920><c> here,</c><01:03:49.120><c> okay?</c><01:03:49.440><c> So,</c><01:03:49.600><c> here's</c><01:03:49.880><c> the</c>

01:03:49.990 --> 01:03:50.000 align:start position:0%
isolated here, okay? So, here's the
 

01:03:50.000 --> 01:03:52.590 align:start position:0%
isolated here, okay? So, here's the
file,<01:03:50.440><c> we</c><01:03:50.560><c> can</c><01:03:50.800><c> open</c><01:03:51.120><c> it.</c><01:03:51.320><c> Hello,</c><01:03:51.680><c> USA</c><01:03:52.280><c> here.</c>

01:03:52.590 --> 01:03:52.600 align:start position:0%
file, we can open it. Hello, USA here.
 

01:03:52.600 --> 01:03:54.150 align:start position:0%
file, we can open it. Hello, USA here.
And<01:03:52.720><c> so,</c><01:03:52.840><c> at</c><01:03:52.920><c> this</c><01:03:53.120><c> point,</c><01:03:53.400><c> we</c><01:03:53.520><c> have</c><01:03:53.720><c> merged</c>

01:03:54.150 --> 01:03:54.160 align:start position:0%
And so, at this point, we have merged
 

01:03:54.160 --> 01:03:56.230 align:start position:0%
And so, at this point, we have merged
the<01:03:54.240><c> work</c><01:03:54.520><c> tree</c><01:03:54.720><c> change</c><01:03:55.120><c> into</c><01:03:55.440><c> main</c><01:03:56.080><c> and</c>

01:03:56.230 --> 01:03:56.240 align:start position:0%
the work tree change into main and
 

01:03:56.240 --> 01:03:57.990 align:start position:0%
the work tree change into main and
cleaned<01:03:56.680><c> up</c><01:03:56.800><c> the</c><01:03:56.920><c> temporary</c><01:03:57.480><c> work</c><01:03:57.800><c> tree,</c>

01:03:57.990 --> 01:03:58.000 align:start position:0%
cleaned up the temporary work tree,
 

01:03:58.000 --> 01:04:00.470 align:start position:0%
cleaned up the temporary work tree,
right?<01:03:58.280><c> Index</c><01:03:58.680><c> now</c><01:03:58.840><c> displays</c><01:03:59.280><c> Hello,</c><01:03:59.600><c> USA,</c>

01:04:00.470 --> 01:04:00.480 align:start position:0%
right? Index now displays Hello, USA,
 

01:04:00.480 --> 01:04:02.390 align:start position:0%
right? Index now displays Hello, USA,
and<01:04:00.640><c> we</c><01:04:00.760><c> no</c><01:04:01.080><c> longer</c><01:04:01.520><c> have</c><01:04:01.760><c> this</c><01:04:01.920><c> temporary</c>

01:04:02.390 --> 01:04:02.400 align:start position:0%
and we no longer have this temporary
 

01:04:02.400 --> 01:04:03.910 align:start position:0%
and we no longer have this temporary
work<01:04:02.680><c> tree.</c><01:04:02.800><c> We've</c><01:04:03.040><c> done</c><01:04:03.280><c> everything</c><01:04:03.680><c> that</c><01:04:03.840><c> we</c>

01:04:03.910 --> 01:04:03.920 align:start position:0%
work tree. We've done everything that we
 

01:04:03.920 --> 01:04:05.950 align:start position:0%
work tree. We've done everything that we
needed<01:04:04.240><c> to</c><01:04:04.360><c> do</c><01:04:04.760><c> separate</c><01:04:05.320><c> from</c><01:04:05.480><c> the</c><01:04:05.600><c> main</c>

01:04:05.950 --> 01:04:05.960 align:start position:0%
needed to do separate from the main
 

01:04:05.960 --> 01:04:07.910 align:start position:0%
needed to do separate from the main
branch<01:04:06.360><c> and</c><01:04:06.480><c> then</c><01:04:06.600><c> we</c><01:04:06.720><c> merge.</c><01:04:07.280><c> And</c><01:04:07.400><c> as</c><01:04:07.520><c> far</c><01:04:07.760><c> as</c>

01:04:07.910 --> 01:04:07.920 align:start position:0%
branch and then we merge. And as far as
 

01:04:07.920 --> 01:04:10.070 align:start position:0%
branch and then we merge. And as far as
we<01:04:08.080><c> are</c><01:04:08.200><c> concerned,</c><01:04:08.840><c> this</c><01:04:09.120><c> convo</c><01:04:09.680><c> is</c><01:04:09.840><c> now</c>

01:04:10.070 --> 01:04:10.080 align:start position:0%
we are concerned, this convo is now
 

01:04:10.080 --> 01:04:12.350 align:start position:0%
we are concerned, this convo is now
finished<01:04:10.880><c> because</c><01:04:11.200><c> it's</c><01:04:11.480><c> tied</c><01:04:11.840><c> to</c><01:04:11.920><c> the</c><01:04:12.040><c> old</c>

01:04:12.350 --> 01:04:12.360 align:start position:0%
finished because it's tied to the old
 

01:04:12.360 --> 01:04:14.510 align:start position:0%
finished because it's tied to the old
work<01:04:12.640><c> tree,</c><01:04:13.000><c> but</c><01:04:13.320><c> we've</c><01:04:13.800><c> did</c><01:04:14.040><c> everything</c><01:04:14.440><c> we</c>

01:04:14.510 --> 01:04:14.520 align:start position:0%
work tree, but we've did everything we
 

01:04:14.520 --> 01:04:16.830 align:start position:0%
work tree, but we've did everything we
needed<01:04:14.840><c> to</c><01:04:14.920><c> do.</c><01:04:15.560><c> We've</c><01:04:15.880><c> updated</c><01:04:16.320><c> the</c><01:04:16.400><c> files,</c>

01:04:16.830 --> 01:04:16.840 align:start position:0%
needed to do. We've updated the files,
 

01:04:16.840 --> 01:04:19.590 align:start position:0%
needed to do. We've updated the files,
we<01:04:17.000><c> merged</c><01:04:17.600><c> back</c><01:04:17.880><c> into</c><01:04:18.200><c> main,</c><01:04:18.840><c> and</c><01:04:19.000><c> so</c><01:04:19.160><c> now</c><01:04:19.480><c> we</c>

01:04:19.590 --> 01:04:19.600 align:start position:0%
we merged back into main, and so now we
 

01:04:19.600 --> 01:04:21.870 align:start position:0%
we merged back into main, and so now we
can<01:04:19.760><c> start</c><01:04:20.040><c> a</c><01:04:20.080><c> brand</c><01:04:20.480><c> new</c><01:04:20.680><c> convo</c><01:04:21.160><c> to</c><01:04:21.360><c> work</c><01:04:21.640><c> on</c><01:04:21.800><c> a</c>

01:04:21.870 --> 01:04:21.880 align:start position:0%
can start a brand new convo to work on a
 

01:04:21.880 --> 01:04:23.510 align:start position:0%
can start a brand new convo to work on a
different<01:04:22.240><c> feature.</c><01:04:22.720><c> And</c><01:04:22.880><c> so,</c><01:04:23.040><c> this</c><01:04:23.280><c> is</c>

01:04:23.510 --> 01:04:23.520 align:start position:0%
different feature. And so, this is
 

01:04:23.520 --> 01:04:26.150 align:start position:0%
different feature. And so, this is
really<01:04:23.920><c> nice</c><01:04:24.480><c> for</c><01:04:24.840><c> feature</c><01:04:25.400><c> isolation.</c>

01:04:26.150 --> 01:04:26.160 align:start position:0%
really nice for feature isolation.
 

01:04:26.160 --> 01:04:28.270 align:start position:0%
really nice for feature isolation.
Create<01:04:26.520><c> a</c><01:04:26.560><c> new</c><01:04:26.720><c> work</c><01:04:26.960><c> tree,</c><01:04:27.200><c> work</c><01:04:27.560><c> there,</c>

01:04:28.270 --> 01:04:28.280 align:start position:0%
Create a new work tree, work there,
 

01:04:28.280 --> 01:04:30.270 align:start position:0%
Create a new work tree, work there,
merge<01:04:28.720><c> back</c><01:04:29.000><c> into</c><01:04:29.240><c> main,</c><01:04:29.600><c> and</c><01:04:29.680><c> then</c><01:04:29.880><c> simply</c>

01:04:30.270 --> 01:04:30.280 align:start position:0%
merge back into main, and then simply
 

01:04:30.280 --> 01:04:36.510 align:start position:0%
merge back into main, and then simply
click<01:04:30.600><c> here</c><01:04:30.920><c> to</c><01:04:31.160><c> archive</c><01:04:32.200><c> this</c><01:04:32.640><c> conversation.</c>

01:04:36.510 --> 01:04:36.520 align:start position:0%
 
 

01:04:36.520 --> 01:04:38.390 align:start position:0%
 
Another<01:04:36.920><c> advanced</c><01:04:37.440><c> trick</c><01:04:37.840><c> is</c><01:04:38.040><c> using</c>

01:04:38.390 --> 01:04:38.400 align:start position:0%
Another advanced trick is using
 

01:04:38.400 --> 01:04:41.390 align:start position:0%
Another advanced trick is using
sub-agents<01:04:39.400><c> for</c><01:04:39.600><c> parallel</c><01:04:40.280><c> work.</c><01:04:40.800><c> The</c><01:04:40.920><c> idea</c>

01:04:41.390 --> 01:04:41.400 align:start position:0%
sub-agents for parallel work. The idea
 

01:04:41.400 --> 01:04:43.550 align:start position:0%
sub-agents for parallel work. The idea
is<01:04:41.600><c> not</c><01:04:41.920><c> to</c><01:04:42.040><c> throw</c><01:04:42.320><c> a</c><01:04:42.400><c> whole</c><01:04:42.680><c> project</c><01:04:43.400><c> at</c><01:04:43.520><c> a</c>

01:04:43.550 --> 01:04:43.560 align:start position:0%
is not to throw a whole project at a
 

01:04:43.560 --> 01:04:45.670 align:start position:0%
is not to throw a whole project at a
bunch<01:04:43.840><c> of</c><01:04:44.040><c> agents</c><01:04:44.600><c> and</c><01:04:44.760><c> hope</c><01:04:44.960><c> it</c><01:04:45.080><c> works.</c><01:04:45.560><c> The</c>

01:04:45.670 --> 01:04:45.680 align:start position:0%
bunch of agents and hope it works. The
 

01:04:45.680 --> 01:04:47.950 align:start position:0%
bunch of agents and hope it works. The
useful<01:04:46.120><c> version</c><01:04:46.520><c> is</c><01:04:46.680><c> much</c><01:04:46.960><c> more</c><01:04:47.160><c> controlled.</c>

01:04:47.950 --> 01:04:47.960 align:start position:0%
useful version is much more controlled.
 

01:04:47.960 --> 01:04:50.790 align:start position:0%
useful version is much more controlled.
An<01:04:48.240><c> agent</c><01:04:48.680><c> explores</c><01:04:49.240><c> the</c><01:04:49.360><c> code</c><01:04:49.720><c> base,</c><01:04:50.440><c> another</c>

01:04:50.790 --> 01:04:50.800 align:start position:0%
An agent explores the code base, another
 

01:04:50.800 --> 01:04:52.870 align:start position:0%
An agent explores the code base, another
works<01:04:51.120><c> on</c><01:04:51.280><c> a</c><01:04:51.360><c> clearly</c><01:04:51.960><c> bounded</c><01:04:52.480><c> part</c><01:04:52.680><c> of</c><01:04:52.800><c> the</c>

01:04:52.870 --> 01:04:52.880 align:start position:0%
works on a clearly bounded part of the
 

01:04:52.880 --> 01:04:56.030 align:start position:0%
works on a clearly bounded part of the
UI,<01:04:53.520><c> another</c><01:04:53.960><c> checks</c><01:04:54.400><c> tests,</c><01:04:55.040><c> or</c><01:04:55.320><c> reviews</c><01:04:55.960><c> the</c>

01:04:56.030 --> 01:04:56.040 align:start position:0%
UI, another checks tests, or reviews the
 

01:04:56.040 --> 01:04:58.310 align:start position:0%
UI, another checks tests, or reviews the
result.<01:04:56.800><c> The</c><01:04:56.920><c> key</c><01:04:57.120><c> is</c><01:04:57.320><c> ownership.</c><01:04:57.840><c> If</c><01:04:57.960><c> you</c><01:04:58.080><c> use</c>

01:04:58.310 --> 01:04:58.320 align:start position:0%
result. The key is ownership. If you use
 

01:04:58.320 --> 01:05:00.510 align:start position:0%
result. The key is ownership. If you use
sub-agents,<01:04:59.080><c> you</c><01:04:59.200><c> want</c><01:04:59.560><c> each</c><01:04:59.920><c> one</c><01:05:00.160><c> to</c><01:05:00.280><c> have</c><01:05:00.440><c> a</c>

01:05:00.510 --> 01:05:00.520 align:start position:0%
sub-agents, you want each one to have a
 

01:05:00.520 --> 01:05:03.430 align:start position:0%
sub-agents, you want each one to have a
specific<01:05:01.200><c> job,</c><01:05:01.880><c> clear</c><01:05:02.200><c> file</c><01:05:02.680><c> area,</c><01:05:03.200><c> and</c><01:05:03.360><c> a</c>

01:05:03.430 --> 01:05:03.440 align:start position:0%
specific job, clear file area, and a
 

01:05:03.440 --> 01:05:05.510 align:start position:0%
specific job, clear file area, and a
clear<01:05:03.880><c> output.</c><01:05:04.480><c> That</c><01:05:04.720><c> keeps</c><01:05:05.040><c> the</c><01:05:05.160><c> work</c>

01:05:05.510 --> 01:05:05.520 align:start position:0%
clear output. That keeps the work
 

01:05:05.520 --> 01:05:08.590 align:start position:0%
clear output. That keeps the work
parallel<01:05:06.360><c> without</c><01:05:06.760><c> turning</c><01:05:07.160><c> it</c><01:05:07.480><c> into</c><01:05:07.880><c> a</c><01:05:08.000><c> merge</c>

01:05:08.590 --> 01:05:08.600 align:start position:0%
parallel without turning it into a merge
 

01:05:08.600 --> 01:05:11.710 align:start position:0%
parallel without turning it into a merge
mess.<01:05:09.240><c> Sub-agents</c><01:05:09.960><c> are</c><01:05:10.160><c> best</c><01:05:10.800><c> when</c><01:05:11.000><c> the</c><01:05:11.160><c> tasks</c>

01:05:11.710 --> 01:05:11.720 align:start position:0%
mess. Sub-agents are best when the tasks
 

01:05:11.720 --> 01:05:13.950 align:start position:0%
mess. Sub-agents are best when the tasks
are<01:05:11.920><c> independent</c><01:05:12.640><c> enough</c><01:05:12.960><c> to</c><01:05:13.120><c> run</c><01:05:13.360><c> side</c><01:05:13.760><c> by</c>

01:05:13.950 --> 01:05:13.960 align:start position:0%
are independent enough to run side by
 

01:05:13.960 --> 01:05:16.550 align:start position:0%
are independent enough to run side by
side,<01:05:14.640><c> but</c><01:05:14.840><c> still</c><01:05:15.160><c> simple</c><01:05:15.680><c> enough</c><01:05:16.320><c> to</c>

01:05:16.550 --> 01:05:16.560 align:start position:0%
side, but still simple enough to
 

01:05:16.560 --> 01:05:18.990 align:start position:0%
side, but still simple enough to
integrate<01:05:17.320><c> at</c><01:05:17.440><c> the</c><01:05:17.640><c> end.</c><01:05:17.840><c> Now,</c><01:05:18.040><c> sub-agents</c><01:05:18.920><c> is</c>

01:05:18.990 --> 01:05:19.000 align:start position:0%
integrate at the end. Now, sub-agents is
 

01:05:19.000 --> 01:05:21.390 align:start position:0%
integrate at the end. Now, sub-agents is
another<01:05:19.440><c> really</c><01:05:19.800><c> cool</c><01:05:20.080><c> feature</c><01:05:20.760><c> that</c><01:05:21.160><c> will</c>

01:05:21.390 --> 01:05:21.400 align:start position:0%
another really cool feature that will
 

01:05:21.400 --> 01:05:23.950 align:start position:0%
another really cool feature that will
help<01:05:21.840><c> speed</c><01:05:22.400><c> up</c><01:05:22.680><c> your</c><01:05:23.080><c> workflows.</c><01:05:23.720><c> And</c><01:05:23.800><c> this</c>

01:05:23.950 --> 01:05:23.960 align:start position:0%
help speed up your workflows. And this
 

01:05:23.960 --> 01:05:26.190 align:start position:0%
help speed up your workflows. And this
is<01:05:24.080><c> something</c><01:05:24.440><c> that</c><01:05:24.600><c> I</c><01:05:24.680><c> use</c><01:05:25.040><c> all</c><01:05:25.400><c> the</c><01:05:25.560><c> time,</c>

01:05:26.190 --> 01:05:26.200 align:start position:0%
is something that I use all the time,
 

01:05:26.200 --> 01:05:28.910 align:start position:0%
is something that I use all the time,
especially<01:05:26.840><c> in</c><01:05:27.160><c> big</c><01:05:27.680><c> repos,</c><01:05:28.400><c> in</c><01:05:28.640><c> big</c>

01:05:28.910 --> 01:05:28.920 align:start position:0%
especially in big repos, in big
 

01:05:28.920 --> 01:05:31.830 align:start position:0%
especially in big repos, in big
codebases,<01:05:29.880><c> to</c><01:05:30.000><c> do</c><01:05:30.280><c> multiple</c><01:05:31.040><c> tasks</c><01:05:31.600><c> in</c>

01:05:31.830 --> 01:05:31.840 align:start position:0%
codebases, to do multiple tasks in
 

01:05:31.840 --> 01:05:33.630 align:start position:0%
codebases, to do multiple tasks in
parallel.<01:05:32.520><c> All</c><01:05:32.600><c> right,</c><01:05:32.800><c> so</c><01:05:32.920><c> here</c><01:05:33.240><c> I</c><01:05:33.280><c> have</c><01:05:33.520><c> a</c>

01:05:33.630 --> 01:05:33.640 align:start position:0%
parallel. All right, so here I have a
 

01:05:33.640 --> 01:05:36.710 align:start position:0%
parallel. All right, so here I have a
very,<01:05:34.120><c> very</c><01:05:34.480><c> simple</c><01:05:35.000><c> Kanban</c><01:05:35.720><c> app.</c><01:05:36.200><c> If</c><01:05:36.360><c> I</c><01:05:36.440><c> click</c>

01:05:36.710 --> 01:05:36.720 align:start position:0%
very, very simple Kanban app. If I click
 

01:05:36.720 --> 01:05:39.150 align:start position:0%
very, very simple Kanban app. If I click
over<01:05:36.960><c> here,</c><01:05:37.480><c> I</c><01:05:37.640><c> have</c><01:05:37.960><c> this.</c><01:05:38.360><c> I</c><01:05:38.480><c> can</c><01:05:38.640><c> drag</c><01:05:39.040><c> and</c>

01:05:39.150 --> 01:05:39.160 align:start position:0%
over here, I have this. I can drag and
 

01:05:39.160 --> 01:05:42.270 align:start position:0%
over here, I have this. I can drag and
drop.<01:05:40.040><c> create</c><01:05:40.400><c> new</c><01:05:40.560><c> tasks,</c><01:05:41.000><c> etc.,</c><01:05:41.480><c> etc.</c><01:05:42.160><c> And</c>

01:05:42.270 --> 01:05:42.280 align:start position:0%
drop. create new tasks, etc., etc. And
 

01:05:42.280 --> 01:05:44.670 align:start position:0%
drop. create new tasks, etc., etc. And
so,<01:05:42.480><c> what</c><01:05:42.640><c> I</c><01:05:42.720><c> want</c><01:05:42.880><c> to</c><01:05:42.960><c> know</c><01:05:43.400><c> is</c><01:05:44.000><c> if</c><01:05:44.240><c> I'm</c><01:05:44.440><c> going</c>

01:05:44.670 --> 01:05:44.680 align:start position:0%
so, what I want to know is if I'm going
 

01:05:44.680 --> 01:05:47.230 align:start position:0%
so, what I want to know is if I'm going
to<01:05:44.840><c> be</c><01:05:45.000><c> building</c><01:05:45.880><c> more</c><01:05:46.080><c> and</c><01:05:46.200><c> more</c><01:05:46.400><c> features,</c>

01:05:47.230 --> 01:05:47.240 align:start position:0%
to be building more and more features,
 

01:05:47.240 --> 01:05:49.870 align:start position:0%
to be building more and more features,
complex<01:05:47.960><c> stuff,</c><01:05:48.360><c> new</c><01:05:48.520><c> functionality,</c><01:05:49.640><c> I</c><01:05:49.680><c> want</c>

01:05:49.870 --> 01:05:49.880 align:start position:0%
complex stuff, new functionality, I want
 

01:05:49.880 --> 01:05:52.350 align:start position:0%
complex stuff, new functionality, I want
to<01:05:49.960><c> use</c><01:05:50.240><c> sub-agents</c><01:05:51.040><c> to</c><01:05:51.240><c> help</c><01:05:51.640><c> me</c><01:05:51.760><c> kind</c><01:05:52.080><c> of</c>

01:05:52.350 --> 01:05:52.360 align:start position:0%
to use sub-agents to help me kind of
 

01:05:52.360 --> 01:05:54.510 align:start position:0%
to use sub-agents to help me kind of
make<01:05:52.680><c> sense</c><01:05:53.080><c> of</c><01:05:53.240><c> it,</c><01:05:53.520><c> you</c><01:05:53.560><c> know,</c><01:05:53.760><c> and</c><01:05:54.080><c> help</c><01:05:54.360><c> me</c>

01:05:54.510 --> 01:05:54.520 align:start position:0%
make sense of it, you know, and help me
 

01:05:54.520 --> 01:05:56.350 align:start position:0%
make sense of it, you know, and help me
build<01:05:54.880><c> it</c><01:05:55.000><c> in</c><01:05:55.120><c> the</c><01:05:55.240><c> most</c><01:05:55.680><c> efficient</c><01:05:56.200><c> way</c>

01:05:56.350 --> 01:05:56.360 align:start position:0%
build it in the most efficient way
 

01:05:56.360 --> 01:05:57.990 align:start position:0%
build it in the most efficient way
possible.<01:05:57.120><c> And</c><01:05:57.240><c> so,</c><01:05:57.360><c> I'm</c><01:05:57.480><c> going</c><01:05:57.600><c> to</c><01:05:57.680><c> paste</c>

01:05:57.990 --> 01:05:58.000 align:start position:0%
possible. And so, I'm going to paste
 

01:05:58.000 --> 01:06:00.350 align:start position:0%
possible. And so, I'm going to paste
this<01:05:58.160><c> prompt</c><01:05:58.600><c> here.</c><01:05:58.840><c> Plan</c><01:05:59.360><c> how</c><01:05:59.560><c> to</c><01:05:59.720><c> split</c><01:06:00.080><c> this</c>

01:06:00.350 --> 01:06:00.360 align:start position:0%
this prompt here. Plan how to split this
 

01:06:00.360 --> 01:06:02.630 align:start position:0%
this prompt here. Plan how to split this
feature<01:06:00.920><c> across</c><01:06:01.360><c> sub-agents,</c><01:06:02.120><c> right?</c><01:06:02.320><c> Do</c><01:06:02.400><c> not</c>

01:06:02.630 --> 01:06:02.640 align:start position:0%
feature across sub-agents, right? Do not
 

01:06:02.640 --> 01:06:04.630 align:start position:0%
feature across sub-agents, right? Do not
edit<01:06:02.880><c> files</c><01:06:03.200><c> yet.</c><01:06:03.600><c> Recommend.</c><01:06:04.400><c> We're</c><01:06:04.520><c> going</c>

01:06:04.630 --> 01:06:04.640 align:start position:0%
edit files yet. Recommend. We're going
 

01:06:04.640 --> 01:06:07.110 align:start position:0%
edit files yet. Recommend. We're going
to<01:06:04.720><c> jump</c><01:06:05.040><c> into</c><01:06:05.320><c> plan</c><01:06:05.680><c> mode.</c><01:06:06.200><c> Preface</c><01:06:06.800><c> this</c>

01:06:07.110 --> 01:06:07.120 align:start position:0%
to jump into plan mode. Preface this
 

01:06:07.120 --> 01:06:10.070 align:start position:0%
to jump into plan mode. Preface this
with<01:06:07.320><c> the</c><01:06:07.440><c> feature.</c><01:06:08.120><c> Add</c><01:06:08.720><c> to</c><01:06:09.240><c> party</c><01:06:09.560><c> apps,</c>

01:06:10.070 --> 01:06:10.080 align:start position:0%
with the feature. Add to party apps,
 

01:06:10.080 --> 01:06:14.070 align:start position:0%
with the feature. Add to party apps,
such<01:06:10.320><c> as</c><01:06:10.800><c> make.com,</c><01:06:11.960><c> Zapier,</c><01:06:13.040><c> etc.</c><01:06:13.840><c> And</c><01:06:13.960><c> so,</c>

01:06:14.070 --> 01:06:14.080 align:start position:0%
such as make.com, Zapier, etc. And so,
 

01:06:14.080 --> 01:06:15.190 align:start position:0%
such as make.com, Zapier, etc. And so,
I'm<01:06:14.160><c> going</c><01:06:14.320><c> to</c><01:06:14.440><c> I'm</c><01:06:14.600><c> going</c><01:06:14.720><c> to</c><01:06:14.840><c> leave</c><01:06:15.040><c> it</c><01:06:15.120><c> at</c>

01:06:15.190 --> 01:06:15.200 align:start position:0%
I'm going to I'm going to leave it at
 

01:06:15.200 --> 01:06:16.870 align:start position:0%
I'm going to I'm going to leave it at
this.<01:06:15.480><c> And</c><01:06:15.800><c> I'm</c><01:06:15.920><c> going</c><01:06:16.040><c> to</c><01:06:16.120><c> go</c><01:06:16.240><c> ahead</c><01:06:16.480><c> and</c><01:06:16.680><c> run</c>

01:06:16.870 --> 01:06:16.880 align:start position:0%
this. And I'm going to go ahead and run
 

01:06:16.880 --> 01:06:18.590 align:start position:0%
this. And I'm going to go ahead and run
this.<01:06:17.280><c> And</c><01:06:17.400><c> so,</c><01:06:17.560><c> let's</c><01:06:17.760><c> go</c><01:06:17.880><c> ahead</c><01:06:18.200><c> and</c><01:06:18.360><c> run</c>

01:06:18.590 --> 01:06:18.600 align:start position:0%
this. And so, let's go ahead and run
 

01:06:18.600 --> 01:06:20.590 align:start position:0%
this. And so, let's go ahead and run
this.<01:06:19.120><c> And</c><01:06:19.280><c> here</c><01:06:19.560><c> we</c><01:06:19.680><c> have</c><01:06:19.920><c> the</c><01:06:20.040><c> plan.</c><01:06:20.480><c> The</c>

01:06:20.590 --> 01:06:20.600 align:start position:0%
this. And here we have the plan. The
 

01:06:20.600 --> 01:06:23.230 align:start position:0%
this. And here we have the plan. The
safest<01:06:21.200><c> split</c><01:06:22.000><c> is</c><01:06:22.160><c> for</c><01:06:22.280><c> the</c><01:06:22.400><c> main</c><01:06:22.760><c> thread</c><01:06:23.120><c> to</c>

01:06:23.230 --> 01:06:23.240 align:start position:0%
safest split is for the main thread to
 

01:06:23.240 --> 01:06:25.390 align:start position:0%
safest split is for the main thread to
own<01:06:23.400><c> architecture,</c><01:06:24.160><c> shared</c><01:06:24.520><c> data</c><01:06:24.840><c> contracts.</c>

01:06:25.390 --> 01:06:25.400 align:start position:0%
own architecture, shared data contracts.
 

01:06:25.400 --> 01:06:27.550 align:start position:0%
own architecture, shared data contracts.
Sub-agents<01:06:26.120><c> can</c><01:06:26.280><c> work</c><01:06:26.520><c> on</c><01:06:26.680><c> isolated</c><01:06:27.240><c> feature</c>

01:06:27.550 --> 01:06:27.560 align:start position:0%
Sub-agents can work on isolated feature
 

01:06:27.560 --> 01:06:31.110 align:start position:0%
Sub-agents can work on isolated feature
areas<01:06:28.040><c> inside</c><01:06:28.760><c> index.html,</c><01:06:30.080><c> but</c><01:06:30.280><c> they</c><01:06:30.680><c> must</c>

01:06:31.110 --> 01:06:31.120 align:start position:0%
areas inside index.html, but they must
 

01:06:31.120 --> 01:06:33.950 align:start position:0%
areas inside index.html, but they must
not<01:06:31.600><c> all</c><01:06:31.920><c> edit</c><01:06:32.240><c> the</c><01:06:32.360><c> same</c><01:06:32.800><c> broad</c><01:06:33.200><c> sections</c><01:06:33.760><c> at</c>

01:06:33.950 --> 01:06:33.960 align:start position:0%
not all edit the same broad sections at
 

01:06:33.960 --> 01:06:36.110 align:start position:0%
not all edit the same broad sections at
once.<01:06:34.520><c> Okay,</c><01:06:34.880><c> so</c><01:06:35.040><c> we</c><01:06:35.160><c> have</c><01:06:35.400><c> main</c><01:06:35.760><c> thread</c>

01:06:36.110 --> 01:06:36.120 align:start position:0%
once. Okay, so we have main thread
 

01:06:36.120 --> 01:06:37.990 align:start position:0%
once. Okay, so we have main thread
responsibilities.<01:06:37.320><c> And</c><01:06:37.480><c> then</c><01:06:37.640><c> we</c><01:06:37.760><c> have</c>

01:06:37.990 --> 01:06:38.000 align:start position:0%
responsibilities. And then we have
 

01:06:38.000 --> 01:06:40.390 align:start position:0%
responsibilities. And then we have
sub-agent<01:06:38.920><c> delegation.</c><01:06:40.000><c> Integration</c>

01:06:40.390 --> 01:06:40.400 align:start position:0%
sub-agent delegation. Integration
 

01:06:40.400 --> 01:06:42.910 align:start position:0%
sub-agent delegation. Integration
settings,<01:06:40.960><c> integration</c><01:06:41.720><c> data</c><01:06:42.080><c> model,</c><01:06:42.640><c> web</c>

01:06:42.910 --> 01:06:42.920 align:start position:0%
settings, integration data model, web
 

01:06:42.920 --> 01:06:45.310 align:start position:0%
settings, integration data model, web
hook<01:06:43.240><c> event</c><01:06:43.640><c> dispatcher.</c><01:06:44.880><c> So,</c><01:06:45.000><c> I'm</c><01:06:45.080><c> going</c><01:06:45.200><c> to</c>

01:06:45.310 --> 01:06:45.320 align:start position:0%
hook event dispatcher. So, I'm going to
 

01:06:45.320 --> 01:06:46.990 align:start position:0%
hook event dispatcher. So, I'm going to
copy<01:06:45.720><c> this</c><01:06:45.960><c> plan,</c><01:06:46.400><c> and</c><01:06:46.520><c> then</c><01:06:46.680><c> I'm</c><01:06:46.760><c> going</c><01:06:46.920><c> to</c>

01:06:46.990 --> 01:06:47.000 align:start position:0%
copy this plan, and then I'm going to
 

01:06:47.000 --> 01:06:49.270 align:start position:0%
copy this plan, and then I'm going to
preface<01:06:47.720><c> it</c><01:06:47.880><c> by</c><01:06:48.040><c> telling</c><01:06:48.520><c> it</c><01:06:48.720><c> spawn</c>

01:06:49.270 --> 01:06:49.280 align:start position:0%
preface it by telling it spawn
 

01:06:49.280 --> 01:06:51.350 align:start position:0%
preface it by telling it spawn
sub-agents<01:06:50.040><c> right</c><01:06:50.200><c> away</c><01:06:50.520><c> to</c><01:06:50.640><c> help</c><01:06:50.840><c> design</c><01:06:51.240><c> the</c>

01:06:51.350 --> 01:06:51.360 align:start position:0%
sub-agents right away to help design the
 

01:06:51.360 --> 01:06:53.870 align:start position:0%
sub-agents right away to help design the
third-party<01:06:52.120><c> API</c><01:06:52.600><c> functionality.</c><01:06:53.560><c> Let's</c><01:06:53.760><c> go</c>

01:06:53.870 --> 01:06:53.880 align:start position:0%
third-party API functionality. Let's go
 

01:06:53.880 --> 01:06:55.430 align:start position:0%
third-party API functionality. Let's go
ahead<01:06:54.120><c> and</c><01:06:54.280><c> run</c><01:06:54.480><c> this.</c><01:06:54.920><c> Right</c><01:06:55.080><c> away,</c><01:06:55.280><c> it's</c>

01:06:55.430 --> 01:06:55.440 align:start position:0%
ahead and run this. Right away, it's
 

01:06:55.440 --> 01:06:57.990 align:start position:0%
ahead and run this. Right away, it's
telling<01:06:55.760><c> me,</c><01:06:55.880><c> "I'll</c><01:06:56.120><c> spawn</c><01:06:56.640><c> the</c><01:06:56.800><c> four-focused</c>

01:06:57.990 --> 01:06:58.000 align:start position:0%
telling me, "I'll spawn the four-focused
 

01:06:58.000 --> 01:06:59.870 align:start position:0%
telling me, "I'll spawn the four-focused
sub-agents<01:06:58.760><c> and</c><01:06:58.920><c> keep</c><01:06:59.120><c> the</c><01:06:59.240><c> main</c><01:06:59.560><c> thread</c>

01:06:59.870 --> 01:06:59.880 align:start position:0%
sub-agents and keep the main thread
 

01:06:59.880 --> 01:07:01.750 align:start position:0%
sub-agents and keep the main thread
responsible<01:07:00.800><c> for</c><01:07:00.920><c> the</c><01:07:01.040><c> final."</c><01:07:01.480><c> So,</c><01:07:01.600><c> as</c><01:07:01.680><c> you</c>

01:07:01.750 --> 01:07:01.760 align:start position:0%
responsible for the final." So, as you
 

01:07:01.760 --> 01:07:03.630 align:start position:0%
responsible for the final." So, as you
can<01:07:01.920><c> see,</c><01:07:02.040><c> it's</c><01:07:02.280><c> spawning</c><01:07:02.800><c> them.</c><01:07:03.200><c> And</c><01:07:03.400><c> each</c>

01:07:03.630 --> 01:07:03.640 align:start position:0%
can see, it's spawning them. And each
 

01:07:03.640 --> 01:07:06.110 align:start position:0%
can see, it's spawning them. And each
sub-agent<01:07:04.320><c> gets</c><01:07:04.640><c> a</c><01:07:04.760><c> prompt.</c><01:07:05.400><c> It's</c><01:07:05.600><c> basically</c>

01:07:06.110 --> 01:07:06.120 align:start position:0%
sub-agent gets a prompt. It's basically
 

01:07:06.120 --> 01:07:08.270 align:start position:0%
sub-agent gets a prompt. It's basically
like<01:07:06.360><c> me</c><01:07:06.520><c> creating</c><01:07:07.000><c> a</c><01:07:07.040><c> new</c><01:07:07.200><c> conversation.</c>

01:07:08.270 --> 01:07:08.280 align:start position:0%
like me creating a new conversation.
 

01:07:08.280 --> 01:07:10.630 align:start position:0%
like me creating a new conversation.
Your<01:07:08.480><c> sub</c><01:07:08.800><c> agent</c><01:07:09.160><c> one</c><01:07:09.400><c> integration,</c><01:07:10.160><c> your</c><01:07:10.360><c> sub</c>

01:07:10.630 --> 01:07:10.640 align:start position:0%
Your sub agent one integration, your sub
 

01:07:10.640 --> 01:07:12.790 align:start position:0%
Your sub agent one integration, your sub
agent<01:07:11.000><c> two</c><01:07:11.240><c> integration</c><01:07:11.880><c> data</c><01:07:12.160><c> model,</c><01:07:12.600><c> your</c>

01:07:12.790 --> 01:07:12.800 align:start position:0%
agent two integration data model, your
 

01:07:12.800 --> 01:07:14.910 align:start position:0%
agent two integration data model, your
sub<01:07:13.120><c> agent</c><01:07:13.520><c> three,</c><01:07:13.840><c> and</c><01:07:14.000><c> they're</c><01:07:14.240><c> working</c>

01:07:14.910 --> 01:07:14.920 align:start position:0%
sub agent three, and they're working
 

01:07:14.920 --> 01:07:16.990 align:start position:0%
sub agent three, and they're working
independently.<01:07:15.920><c> And</c><01:07:16.080><c> here</c><01:07:16.280><c> it</c><01:07:16.360><c> tells</c><01:07:16.640><c> you</c><01:07:16.760><c> all</c>

01:07:16.990 --> 01:07:17.000 align:start position:0%
independently. And here it tells you all
 

01:07:17.000 --> 01:07:19.110 align:start position:0%
independently. And here it tells you all
four<01:07:17.280><c> sub</c><01:07:17.560><c> agents</c><01:07:17.880><c> are</c><01:07:18.040><c> running.</c><01:07:18.600><c> While</c><01:07:18.880><c> they</c>

01:07:19.110 --> 01:07:19.120 align:start position:0%
four sub agents are running. While they
 

01:07:19.120 --> 01:07:21.150 align:start position:0%
four sub agents are running. While they
work,<01:07:19.520><c> I'll</c><01:07:19.680><c> inspect</c><01:07:20.200><c> the</c><01:07:20.280><c> current</c><01:07:20.680><c> partial</c>

01:07:21.150 --> 01:07:21.160 align:start position:0%
work, I'll inspect the current partial
 

01:07:21.160 --> 01:07:23.030 align:start position:0%
work, I'll inspect the current partial
edit,<01:07:21.560><c> and</c><01:07:21.680><c> you</c><01:07:21.800><c> can</c><01:07:21.960><c> see</c><01:07:22.200><c> these</c><01:07:22.480><c> background</c>

01:07:23.030 --> 01:07:23.040 align:start position:0%
edit, and you can see these background
 

01:07:23.040 --> 01:07:25.230 align:start position:0%
edit, and you can see these background
agents<01:07:23.480><c> here.</c><01:07:23.960><c> Okay?</c><01:07:24.280><c> So,</c><01:07:24.440><c> they're</c><01:07:24.760><c> working</c>

01:07:25.230 --> 01:07:25.240 align:start position:0%
agents here. Okay? So, they're working
 

01:07:25.240 --> 01:07:26.910 align:start position:0%
agents here. Okay? So, they're working
in<01:07:25.400><c> parallel.</c><01:07:25.960><c> They're</c><01:07:26.200><c> working</c><01:07:26.600><c> on</c><01:07:26.720><c> their</c>

01:07:26.910 --> 01:07:26.920 align:start position:0%
in parallel. They're working on their
 

01:07:26.920 --> 01:07:29.150 align:start position:0%
in parallel. They're working on their
own<01:07:27.080><c> thing.</c><01:07:27.400><c> They</c><01:07:27.600><c> own</c><01:07:28.080><c> different</c><01:07:28.560><c> pieces</c><01:07:29.000><c> of</c>

01:07:29.150 --> 01:07:29.160 align:start position:0%
own thing. They own different pieces of
 

01:07:29.160 --> 01:07:30.950 align:start position:0%
own thing. They own different pieces of
the<01:07:29.320><c> app,</c><01:07:29.760><c> and</c><01:07:29.960><c> they're</c><01:07:30.120><c> kind</c><01:07:30.360><c> of</c><01:07:30.520><c> working.</c>

01:07:30.950 --> 01:07:30.960 align:start position:0%
the app, and they're kind of working.
 

01:07:30.960 --> 01:07:32.710 align:start position:0%
the app, and they're kind of working.
And<01:07:31.120><c> when</c><01:07:31.320><c> they're</c><01:07:31.520><c> done,</c><01:07:31.840><c> they</c><01:07:32.040><c> come</c><01:07:32.360><c> back</c><01:07:32.640><c> to</c>

01:07:32.710 --> 01:07:32.720 align:start position:0%
And when they're done, they come back to
 

01:07:32.720 --> 01:07:35.830 align:start position:0%
And when they're done, they come back to
this<01:07:33.040><c> main</c><01:07:33.680><c> agent,</c><01:07:34.240><c> right?</c><01:07:34.560><c> This</c><01:07:35.000><c> combo</c><01:07:35.360><c> here,</c>

01:07:35.830 --> 01:07:35.840 align:start position:0%
this main agent, right? This combo here,
 

01:07:35.840 --> 01:07:37.550 align:start position:0%
this main agent, right? This combo here,
and<01:07:36.200><c> tell</c><01:07:36.520><c> it</c><01:07:36.680><c> what</c><01:07:36.840><c> happened,</c><01:07:37.280><c> right?</c><01:07:37.440><c> They</c>

01:07:37.550 --> 01:07:37.560 align:start position:0%
and tell it what happened, right? They
 

01:07:37.560 --> 01:07:39.430 align:start position:0%
and tell it what happened, right? They
come<01:07:37.760><c> back</c><01:07:37.960><c> with</c><01:07:38.080><c> the</c><01:07:38.160><c> result.</c><01:07:38.880><c> And</c><01:07:39.040><c> so,</c><01:07:39.200><c> now</c>

01:07:39.430 --> 01:07:39.440 align:start position:0%
come back with the result. And so, now
 

01:07:39.440 --> 01:07:40.870 align:start position:0%
come back with the result. And so, now
it<01:07:39.560><c> says</c><01:07:39.720><c> the</c><01:07:39.840><c> persistent</c><01:07:40.360><c> sub</c><01:07:40.600><c> agent</c>

01:07:40.870 --> 01:07:40.880 align:start position:0%
it says the persistent sub agent
 

01:07:40.880 --> 01:07:43.110 align:start position:0%
it says the persistent sub agent
returned<01:07:41.320><c> a</c><01:07:41.400><c> cleaner</c><01:07:41.800><c> data</c><01:07:42.160><c> shape.</c><01:07:42.720><c> And</c><01:07:42.840><c> here</c>

01:07:43.110 --> 01:07:43.120 align:start position:0%
returned a cleaner data shape. And here
 

01:07:43.120 --> 01:07:44.830 align:start position:0%
returned a cleaner data shape. And here
you<01:07:43.240><c> can</c><01:07:43.400><c> actually</c><01:07:43.880><c> click</c><01:07:44.200><c> on</c><01:07:44.360><c> any</c><01:07:44.560><c> one</c><01:07:44.760><c> of</c>

01:07:44.830 --> 01:07:44.840 align:start position:0%
you can actually click on any one of
 

01:07:44.840 --> 01:07:46.910 align:start position:0%
you can actually click on any one of
these<01:07:45.120><c> and</c><01:07:45.320><c> see</c><01:07:45.600><c> what's</c><01:07:45.840><c> happening.</c><01:07:46.520><c> You</c><01:07:46.680><c> can</c>

01:07:46.910 --> 01:07:46.920 align:start position:0%
these and see what's happening. You can
 

01:07:46.920 --> 01:07:49.030 align:start position:0%
these and see what's happening. You can
click<01:07:47.240><c> here,</c><01:07:47.760><c> you</c><01:07:47.840><c> can</c><01:07:48.000><c> come</c><01:07:48.240><c> back,</c><01:07:48.800><c> you</c><01:07:48.880><c> can</c>

01:07:49.030 --> 01:07:49.040 align:start position:0%
click here, you can come back, you can
 

01:07:49.040 --> 01:07:50.830 align:start position:0%
click here, you can come back, you can
click<01:07:49.240><c> on</c><01:07:49.400><c> this</c><01:07:49.680><c> one,</c><01:07:50.120><c> and</c><01:07:50.280><c> see</c><01:07:50.480><c> what</c><01:07:50.680><c> it's</c>

01:07:50.830 --> 01:07:50.840 align:start position:0%
click on this one, and see what it's
 

01:07:50.840 --> 01:07:52.710 align:start position:0%
click on this one, and see what it's
doing.<01:07:51.160><c> So,</c><01:07:51.320><c> this</c><01:07:51.520><c> one</c><01:07:51.680><c> is</c><01:07:51.840><c> finished.</c><01:07:52.440><c> Some</c>

01:07:52.710 --> 01:07:52.720 align:start position:0%
doing. So, this one is finished. Some
 

01:07:52.720 --> 01:07:54.870 align:start position:0%
doing. So, this one is finished. Some
are<01:07:52.880><c> finished.</c><01:07:53.640><c> How</c><01:07:53.720><c> about</c><01:07:54.040><c> this</c><01:07:54.280><c> one?</c><01:07:54.640><c> This</c>

01:07:54.870 --> 01:07:54.880 align:start position:0%
are finished. How about this one? This
 

01:07:54.880 --> 01:07:56.950 align:start position:0%
are finished. How about this one? This
one<01:07:55.000><c> is</c><01:07:55.160><c> also</c><01:07:55.520><c> finished.</c><01:07:56.120><c> And</c><01:07:56.280><c> so,</c><01:07:56.440><c> that's</c><01:07:56.760><c> how</c>

01:07:56.950 --> 01:07:56.960 align:start position:0%
one is also finished. And so, that's how
 

01:07:56.960 --> 01:07:58.430 align:start position:0%
one is also finished. And so, that's how
it<01:07:57.040><c> works.</c><01:07:57.360><c> And</c><01:07:57.480><c> when</c><01:07:57.640><c> they</c><01:07:57.800><c> finish,</c><01:07:58.240><c> they</c>

01:07:58.430 --> 01:07:58.440 align:start position:0%
it works. And when they finish, they
 

01:07:58.440 --> 01:08:00.550 align:start position:0%
it works. And when they finish, they
come<01:07:58.680><c> back,</c><01:07:59.200><c> and</c><01:07:59.320><c> then</c><01:07:59.480><c> it</c><01:07:59.600><c> decides</c><01:08:00.240><c> what</c><01:08:00.440><c> to</c>

01:08:00.550 --> 01:08:00.560 align:start position:0%
come back, and then it decides what to
 

01:08:00.560 --> 01:08:02.750 align:start position:0%
come back, and then it decides what to
do<01:08:00.760><c> later.</c><01:08:01.480><c> Maybe</c><01:08:01.800><c> it's</c><01:08:01.920><c> going</c><01:08:02.080><c> to</c><01:08:02.160><c> respond,</c>

01:08:02.750 --> 01:08:02.760 align:start position:0%
do later. Maybe it's going to respond,
 

01:08:02.760 --> 01:08:04.030 align:start position:0%
do later. Maybe it's going to respond,
and<01:08:02.880><c> maybe</c><01:08:03.080><c> it's</c><01:08:03.200><c> going</c><01:08:03.320><c> to</c><01:08:03.400><c> spawn</c><01:08:03.720><c> something</c>

01:08:04.030 --> 01:08:04.040 align:start position:0%
and maybe it's going to spawn something
 

01:08:04.040 --> 01:08:06.030 align:start position:0%
and maybe it's going to spawn something
else.<01:08:04.280><c> Maybe</c><01:08:04.560><c> it's</c><01:08:05.000><c> done.</c><01:08:05.400><c> They</c><01:08:05.600><c> did</c><01:08:05.880><c> what</c>

01:08:06.030 --> 01:08:06.040 align:start position:0%
else. Maybe it's done. They did what
 

01:08:06.040 --> 01:08:08.030 align:start position:0%
else. Maybe it's done. They did what
they<01:08:06.160><c> needed</c><01:08:06.520><c> to</c><01:08:06.640><c> do.</c><01:08:06.840><c> They</c><01:08:07.040><c> finished</c><01:08:07.600><c> their</c>

01:08:08.030 --> 01:08:08.040 align:start position:0%
they needed to do. They finished their
 

01:08:08.040 --> 01:08:10.670 align:start position:0%
they needed to do. They finished their
isolated<01:08:08.680><c> task,</c><01:08:09.280><c> and</c><01:08:09.520><c> their</c><01:08:09.720><c> services</c><01:08:10.320><c> are</c><01:08:10.480><c> no</c>

01:08:10.670 --> 01:08:10.680 align:start position:0%
isolated task, and their services are no
 

01:08:10.680 --> 01:08:13.030 align:start position:0%
isolated task, and their services are no
longer<01:08:11.040><c> needed.</c><01:08:11.520><c> And</c><01:08:11.680><c> again,</c><01:08:12.080><c> sub</c><01:08:12.480><c> agent</c><01:08:12.880><c> is</c>

01:08:13.030 --> 01:08:13.040 align:start position:0%
longer needed. And again, sub agent is
 

01:08:13.040 --> 01:08:15.230 align:start position:0%
longer needed. And again, sub agent is
something<01:08:13.360><c> that</c><01:08:13.520><c> I</c><01:08:13.560><c> use</c><01:08:13.880><c> all</c><01:08:14.120><c> the</c><01:08:14.280><c> time.</c><01:08:14.920><c> I</c><01:08:15.040><c> use</c>

01:08:15.230 --> 01:08:15.240 align:start position:0%
something that I use all the time. I use
 

01:08:15.240 --> 01:08:16.870 align:start position:0%
something that I use all the time. I use
it<01:08:15.440><c> all</c><01:08:15.680><c> the</c><01:08:15.800><c> time,</c><01:08:16.120><c> especially</c><01:08:16.520><c> in</c><01:08:16.640><c> big</c>

01:08:16.870 --> 01:08:16.880 align:start position:0%
it all the time, especially in big
 

01:08:16.880 --> 01:08:19.150 align:start position:0%
it all the time, especially in big
repos,<01:08:17.520><c> because</c><01:08:17.880><c> they</c><01:08:18.080><c> help</c><01:08:18.440><c> speed</c><01:08:18.839><c> up</c><01:08:19.000><c> the</c>

01:08:19.150 --> 01:08:19.160 align:start position:0%
repos, because they help speed up the
 

01:08:19.160 --> 01:08:22.590 align:start position:0%
repos, because they help speed up the
work<01:08:19.680><c> by</c><01:08:20.240><c> isolating</c><01:08:21.400><c> different</c><01:08:22.040><c> areas,</c>

01:08:22.590 --> 01:08:22.600 align:start position:0%
work by isolating different areas,
 

01:08:22.600 --> 01:08:25.190 align:start position:0%
work by isolating different areas,
different<01:08:22.960><c> responsibility</c><01:08:23.960><c> clusters,</c><01:08:24.759><c> to</c>

01:08:25.190 --> 01:08:25.200 align:start position:0%
different responsibility clusters, to
 

01:08:25.200 --> 01:08:27.070 align:start position:0%
different responsibility clusters, to
different<01:08:25.680><c> agents.</c><01:08:26.160><c> And</c><01:08:26.279><c> that's</c><01:08:26.480><c> a</c><01:08:26.600><c> huge</c>

01:08:27.070 --> 01:08:27.080 align:start position:0%
different agents. And that's a huge
 

01:08:27.080 --> 01:08:31.309 align:start position:0%
different agents. And that's a huge
productivity<01:08:27.839><c> boost.</c>

01:08:31.309 --> 01:08:31.319 align:start position:0%
 
 

01:08:31.319 --> 01:08:32.950 align:start position:0%
 
Now,<01:08:31.440><c> in</c><01:08:31.560><c> this</c><01:08:31.799><c> section,</c><01:08:32.200><c> we're</c><01:08:32.400><c> going</c><01:08:32.560><c> to</c>

01:08:32.950 --> 01:08:32.960 align:start position:0%
Now, in this section, we're going to
 

01:08:32.960 --> 01:08:34.990 align:start position:0%
Now, in this section, we're going to
bring<01:08:33.400><c> all</c><01:08:33.720><c> of</c><01:08:33.839><c> the</c><01:08:33.960><c> previous</c><01:08:34.440><c> sections</c>

01:08:34.990 --> 01:08:35.000 align:start position:0%
bring all of the previous sections
 

01:08:35.000 --> 01:08:37.470 align:start position:0%
bring all of the previous sections
together<01:08:35.720><c> by</c><01:08:35.920><c> giving</c><01:08:36.319><c> Codex</c><01:08:36.920><c> project</c>

01:08:37.470 --> 01:08:37.480 align:start position:0%
together by giving Codex project
 

01:08:37.480 --> 01:08:40.990 align:start position:0%
together by giving Codex project
instructions<01:08:38.200><c> in</c><01:08:38.359><c> an</c><01:08:38.799><c> agents.md</c><01:08:40.279><c> file.</c><01:08:40.799><c> This</c>

01:08:40.990 --> 01:08:41.000 align:start position:0%
instructions in an agents.md file. This
 

01:08:41.000 --> 01:08:43.150 align:start position:0%
instructions in an agents.md file. This
is<01:08:41.160><c> where</c><01:08:41.400><c> you</c><01:08:41.520><c> can</c><01:08:41.759><c> write</c><01:08:42.120><c> down</c><01:08:42.400><c> the</c><01:08:42.560><c> rules</c>

01:08:43.150 --> 01:08:43.160 align:start position:0%
is where you can write down the rules
 

01:08:43.160 --> 01:08:45.309 align:start position:0%
is where you can write down the rules
you<01:08:43.319><c> want</c><01:08:43.600><c> Codex</c><01:08:44.080><c> to</c><01:08:44.200><c> follow</c><01:08:44.720><c> every</c><01:08:44.920><c> time</c><01:08:45.160><c> it</c>

01:08:45.309 --> 01:08:45.319 align:start position:0%
you want Codex to follow every time it
 

01:08:45.319 --> 01:08:48.030 align:start position:0%
you want Codex to follow every time it
works<01:08:45.680><c> in</c><01:08:45.880><c> a</c><01:08:45.960><c> specific</c><01:08:46.600><c> repo.</c><01:08:47.200><c> Which</c><01:08:47.480><c> commands</c>

01:08:48.030 --> 01:08:48.040 align:start position:0%
works in a specific repo. Which commands
 

01:08:48.040 --> 01:08:50.470 align:start position:0%
works in a specific repo. Which commands
to<01:08:48.200><c> run,</c><01:08:48.680><c> which</c><01:08:49.000><c> folders</c><01:08:49.560><c> matter,</c><01:08:50.160><c> which</c>

01:08:50.470 --> 01:08:50.480 align:start position:0%
to run, which folders matter, which
 

01:08:50.480 --> 01:08:52.829 align:start position:0%
to run, which folders matter, which
patterns<01:08:51.000><c> to</c><01:08:51.120><c> preserve,</c><01:08:51.920><c> how</c><01:08:52.080><c> to</c><01:08:52.279><c> verify</c>

01:08:52.829 --> 01:08:52.839 align:start position:0%
patterns to preserve, how to verify
 

01:08:52.839 --> 01:08:55.829 align:start position:0%
patterns to preserve, how to verify
changes,<01:08:53.680><c> and</c><01:08:53.920><c> when</c><01:08:54.200><c> to</c><01:08:54.359><c> use</c><01:08:54.640><c> work</c><01:08:55.000><c> trees</c><01:08:55.640><c> or</c>

01:08:55.829 --> 01:08:55.839 align:start position:0%
changes, and when to use work trees or
 

01:08:55.839 --> 01:08:58.070 align:start position:0%
changes, and when to use work trees or
sub<01:08:56.240><c> agents.</c><01:08:56.600><c> This</c><01:08:56.799><c> is</c><01:08:57.000><c> useful</c><01:08:57.560><c> because</c><01:08:57.920><c> you</c>

01:08:58.070 --> 01:08:58.080 align:start position:0%
sub agents. This is useful because you
 

01:08:58.080 --> 01:09:00.510 align:start position:0%
sub agents. This is useful because you
do<01:08:58.240><c> not</c><01:08:58.640><c> want</c><01:08:58.880><c> to</c><01:08:59.000><c> repeat</c><01:08:59.440><c> the</c><01:08:59.560><c> same</c><01:08:59.920><c> project</c>

01:09:00.510 --> 01:09:00.520 align:start position:0%
do not want to repeat the same project
 

01:09:00.520 --> 01:09:02.710 align:start position:0%
do not want to repeat the same project
rules<01:09:00.920><c> in</c><01:09:01.040><c> every</c><01:09:01.319><c> prompt.</c><01:09:01.799><c> If</c><01:09:01.880><c> this</c><01:09:02.160><c> project</c>

01:09:02.710 --> 01:09:02.720 align:start position:0%
rules in every prompt. If this project
 

01:09:02.720 --> 01:09:05.269 align:start position:0%
rules in every prompt. If this project
should<01:09:02.960><c> always</c><01:09:03.480><c> run</c><01:09:03.720><c> a</c><01:09:03.799><c> specific</c><01:09:04.400><c> check,</c><01:09:05.000><c> use</c>

01:09:05.269 --> 01:09:05.279 align:start position:0%
should always run a specific check, use
 

01:09:05.279 --> 01:09:07.950 align:start position:0%
should always run a specific check, use
a<01:09:05.359><c> specific</c><01:09:06.000><c> design</c><01:09:06.520><c> system,</c><01:09:07.040><c> avoid</c><01:09:07.600><c> certain</c>

01:09:07.950 --> 01:09:07.960 align:start position:0%
a specific design system, avoid certain
 

01:09:07.960 --> 01:09:10.349 align:start position:0%
a specific design system, avoid certain
files,<01:09:08.640><c> create</c><01:09:09.120><c> work</c><01:09:09.480><c> trees</c><01:09:09.799><c> for</c><01:09:10.000><c> risky</c>

01:09:10.349 --> 01:09:10.359 align:start position:0%
files, create work trees for risky
 

01:09:10.359 --> 01:09:13.470 align:start position:0%
files, create work trees for risky
experiments,<01:09:11.240><c> or</c><01:09:11.440><c> split</c><01:09:11.880><c> large</c><01:09:12.520><c> tasks</c><01:09:13.160><c> into</c>

01:09:13.470 --> 01:09:13.480 align:start position:0%
experiments, or split large tasks into
 

01:09:13.480 --> 01:09:16.110 align:start position:0%
experiments, or split large tasks into
sub-agents,<01:09:14.279><c> those</c><01:09:14.640><c> instructions</c><01:09:15.400><c> belong</c><01:09:15.880><c> in</c>

01:09:16.110 --> 01:09:16.120 align:start position:0%
sub-agents, those instructions belong in
 

01:09:16.120 --> 01:09:19.550 align:start position:0%
sub-agents, those instructions belong in
agents.md.<01:09:17.560><c> It</c><01:09:17.720><c> turns</c><01:09:18.120><c> your</c><01:09:18.600><c> preferences</c>

01:09:19.550 --> 01:09:19.560 align:start position:0%
agents.md. It turns your preferences
 

01:09:19.560 --> 01:09:22.550 align:start position:0%
agents.md. It turns your preferences
into<01:09:19.880><c> reusable</c><01:09:20.759><c> project</c><01:09:21.480><c> context.</c><01:09:22.279><c> And</c>

01:09:22.550 --> 01:09:22.560 align:start position:0%
into reusable project context. And
 

01:09:22.560 --> 01:09:24.670 align:start position:0%
into reusable project context. And
here's<01:09:22.920><c> a</c><01:09:23.040><c> prompt</c><01:09:23.480><c> that</c><01:09:23.640><c> you</c><01:09:23.759><c> can</c><01:09:24.000><c> use,</c><01:09:24.480><c> which</c>

01:09:24.670 --> 01:09:24.680 align:start position:0%
here's a prompt that you can use, which
 

01:09:24.680 --> 01:09:27.670 align:start position:0%
here's a prompt that you can use, which
is<01:09:24.799><c> going</c><01:09:25.040><c> to</c><01:09:25.200><c> draft</c><01:09:25.880><c> agents.md</c><01:09:27.080><c> for</c><01:09:27.279><c> this</c>

01:09:27.670 --> 01:09:27.680 align:start position:0%
is going to draft agents.md for this
 

01:09:27.680 --> 01:09:30.030 align:start position:0%
is going to draft agents.md for this
project.<01:09:28.440><c> Do</c><01:09:28.560><c> not</c><01:09:28.880><c> write</c><01:09:29.160><c> the</c><01:09:29.279><c> file</c><01:09:29.680><c> yet</c>

01:09:30.030 --> 01:09:30.040 align:start position:0%
project. Do not write the file yet
 

01:09:30.040 --> 01:09:31.870 align:start position:0%
project. Do not write the file yet
include<01:09:30.359><c> the</c><01:09:30.480><c> project</c><01:09:30.960><c> purpose,</c><01:09:31.480><c> the</c><01:09:31.600><c> main</c>

01:09:31.870 --> 01:09:31.880 align:start position:0%
include the project purpose, the main
 

01:09:31.880 --> 01:09:34.430 align:start position:0%
include the project purpose, the main
folders,<01:09:32.759><c> work</c><01:09:33.000><c> tree,</c><01:09:33.319><c> sub-agents,</c><01:09:34.160><c> stuff</c>

01:09:34.430 --> 01:09:34.440 align:start position:0%
folders, work tree, sub-agents, stuff
 

01:09:34.440 --> 01:09:35.950 align:start position:0%
folders, work tree, sub-agents, stuff
like<01:09:34.680><c> that.</c><01:09:34.920><c> So,</c><01:09:35.040><c> we're</c><01:09:35.160><c> going</c><01:09:35.279><c> to</c><01:09:35.400><c> jump</c><01:09:35.720><c> into</c>

01:09:35.950 --> 01:09:35.960 align:start position:0%
like that. So, we're going to jump into
 

01:09:35.960 --> 01:09:38.390 align:start position:0%
like that. So, we're going to jump into
plan<01:09:36.319><c> mode.</c><01:09:36.799><c> We're</c><01:09:36.920><c> going</c><01:09:37.040><c> to</c><01:09:37.120><c> go</c><01:09:37.279><c> ahead</c><01:09:37.799><c> and</c>

01:09:38.390 --> 01:09:38.400 align:start position:0%
plan mode. We're going to go ahead and
 

01:09:38.400 --> 01:09:40.710 align:start position:0%
plan mode. We're going to go ahead and
run<01:09:38.759><c> that.</c><01:09:39.120><c> And</c><01:09:39.279><c> here's</c><01:09:39.640><c> the</c><01:09:39.759><c> draft</c><01:09:40.400><c> for</c><01:09:40.480><c> this</c>

01:09:40.710 --> 01:09:40.720 align:start position:0%
run that. And here's the draft for this
 

01:09:40.720 --> 01:09:43.030 align:start position:0%
run that. And here's the draft for this
agents.md<01:09:41.839><c> tailored</c><01:09:42.440><c> to</c><01:09:42.560><c> the</c><01:09:42.680><c> current</c>

01:09:43.030 --> 01:09:43.040 align:start position:0%
agents.md tailored to the current
 

01:09:43.040 --> 01:09:45.430 align:start position:0%
agents.md tailored to the current
project,<01:09:43.600><c> right?</c><01:09:43.839><c> Project</c><01:09:44.319><c> purpose,</c><01:09:45.120><c> main</c>

01:09:45.430 --> 01:09:45.440 align:start position:0%
project, right? Project purpose, main
 

01:09:45.440 --> 01:09:48.470 align:start position:0%
project, right? Project purpose, main
folders,<01:09:46.440><c> verification</c><01:09:47.400><c> steps</c><01:09:48.040><c> after</c>

01:09:48.470 --> 01:09:48.480 align:start position:0%
folders, verification steps after
 

01:09:48.480 --> 01:09:51.230 align:start position:0%
folders, verification steps after
changes.<01:09:49.240><c> Serve</c><01:09:49.560><c> the</c><01:09:49.680><c> app</c><01:09:50.000><c> locally,</c><01:09:50.759><c> coding</c>

01:09:51.230 --> 01:09:51.240 align:start position:0%
changes. Serve the app locally, coding
 

01:09:51.240 --> 01:09:53.749 align:start position:0%
changes. Serve the app locally, coding
and<01:09:51.440><c> design</c><01:09:51.960><c> patterns</c><01:09:52.440><c> to</c><01:09:52.600><c> preserve.</c><01:09:53.440><c> When</c>

01:09:53.749 --> 01:09:53.759 align:start position:0%
and design patterns to preserve. When
 

01:09:53.759 --> 01:09:56.190 align:start position:0%
and design patterns to preserve. When
codex<01:09:54.320><c> should</c><01:09:54.600><c> use</c><01:09:54.840><c> a</c><01:09:54.960><c> work</c><01:09:55.320><c> tree.</c><01:09:55.840><c> Use</c><01:09:56.080><c> a</c>

01:09:56.190 --> 01:09:56.200 align:start position:0%
codex should use a work tree. Use a
 

01:09:56.200 --> 01:09:58.510 align:start position:0%
codex should use a work tree. Use a
separate<01:09:56.720><c> work</c><01:09:57.040><c> tree</c><01:09:57.280><c> when</c><01:09:57.520><c> these</c><01:09:57.880><c> happen.</c>

01:09:58.510 --> 01:09:58.520 align:start position:0%
separate work tree when these happen.
 

01:09:58.520 --> 01:10:00.870 align:start position:0%
separate work tree when these happen.
When<01:09:58.840><c> codex</c><01:09:59.360><c> should</c><01:09:59.680><c> use</c><01:10:00.120><c> sub-agents.</c><01:10:00.720><c> Use</c>

01:10:00.870 --> 01:10:00.880 align:start position:0%
When codex should use sub-agents. Use
 

01:10:00.880 --> 01:10:03.190 align:start position:0%
When codex should use sub-agents. Use
sub-agents<01:10:01.600><c> when</c><01:10:01.760><c> work</c><01:10:02.000><c> can</c><01:10:02.120><c> be</c><01:10:02.240><c> split</c><01:10:02.880><c> into</c>

01:10:03.190 --> 01:10:03.200 align:start position:0%
sub-agents when work can be split into
 

01:10:03.200 --> 01:10:05.870 align:start position:0%
sub-agents when work can be split into
clearly<01:10:03.800><c> separate</c><01:10:04.400><c> ownership</c><01:10:04.920><c> areas</c><01:10:05.320><c> such</c><01:10:05.640><c> as</c>

01:10:05.870 --> 01:10:05.880 align:start position:0%
clearly separate ownership areas such as
 

01:10:05.880 --> 01:10:08.510 align:start position:0%
clearly separate ownership areas such as
these.<01:10:06.320><c> What</c><01:10:06.640><c> codex</c><01:10:07.120><c> should</c><01:10:07.320><c> avoid</c><01:10:07.920><c> changing</c>

01:10:08.510 --> 01:10:08.520 align:start position:0%
these. What codex should avoid changing
 

01:10:08.520 --> 01:10:10.590 align:start position:0%
these. What codex should avoid changing
without<01:10:08.960><c> asking?</c><01:10:09.560><c> All</c><01:10:09.800><c> of</c><01:10:09.920><c> this.</c><01:10:10.320><c> Now,</c><01:10:10.480><c> the</c>

01:10:10.590 --> 01:10:10.600 align:start position:0%
without asking? All of this. Now, the
 

01:10:10.600 --> 01:10:12.870 align:start position:0%
without asking? All of this. Now, the
beautiful<01:10:11.120><c> thing</c><01:10:11.320><c> about</c><01:10:11.600><c> this</c><01:10:11.840><c> agents.md</c>

01:10:12.870 --> 01:10:12.880 align:start position:0%
beautiful thing about this agents.md
 

01:10:12.880 --> 01:10:15.950 align:start position:0%
beautiful thing about this agents.md
file<01:10:13.320><c> is</c><01:10:13.560><c> that</c><01:10:14.000><c> you</c><01:10:14.120><c> no</c><01:10:14.600><c> longer</c><01:10:15.080><c> have</c><01:10:15.320><c> to</c><01:10:15.480><c> worry</c>

01:10:15.950 --> 01:10:15.960 align:start position:0%
file is that you no longer have to worry
 

01:10:15.960 --> 01:10:19.470 align:start position:0%
file is that you no longer have to worry
about,<01:10:16.600><c> you</c><01:10:16.680><c> know,</c><01:10:16.880><c> asking</c><01:10:17.600><c> codex</c><01:10:18.280><c> to</c><01:10:18.920><c> spawn</c>

01:10:19.470 --> 01:10:19.480 align:start position:0%
about, you know, asking codex to spawn
 

01:10:19.480 --> 01:10:22.390 align:start position:0%
about, you know, asking codex to spawn
sub-agents<01:10:20.640><c> or</c><01:10:20.960><c> create</c><01:10:21.560><c> separate</c><01:10:22.080><c> work</c>

01:10:22.390 --> 01:10:22.400 align:start position:0%
sub-agents or create separate work
 

01:10:22.400 --> 01:10:25.190 align:start position:0%
sub-agents or create separate work
trees.<01:10:22.800><c> It</c><01:10:23.000><c> will</c><01:10:23.200><c> be</c><01:10:23.400><c> automatic.</c><01:10:24.360><c> It's</c><01:10:24.600><c> like</c>

01:10:25.190 --> 01:10:25.200 align:start position:0%
trees. It will be automatic. It's like
 

01:10:25.200 --> 01:10:27.750 align:start position:0%
trees. It will be automatic. It's like
saving<01:10:25.800><c> you</c><01:10:25.920><c> from</c><01:10:26.200><c> typing</c><01:10:26.800><c> those</c><01:10:27.160><c> prompts</c>

01:10:27.750 --> 01:10:27.760 align:start position:0%
saving you from typing those prompts
 

01:10:27.760 --> 01:10:29.750 align:start position:0%
saving you from typing those prompts
every<01:10:28.280><c> single</c><01:10:28.800><c> time.</c><01:10:29.360><c> So,</c><01:10:29.360><c> if</c><01:10:29.440><c> you</c><01:10:29.560><c> want</c><01:10:29.720><c> to</c>

01:10:29.750 --> 01:10:29.760 align:start position:0%
every single time. So, if you want to
 

01:10:29.760 --> 01:10:31.950 align:start position:0%
every single time. So, if you want to
add<01:10:30.000><c> a</c><01:10:30.040><c> feature,</c><01:10:30.760><c> well,</c><01:10:31.200><c> you</c><01:10:31.400><c> don't</c><01:10:31.600><c> need</c><01:10:31.840><c> to</c>

01:10:31.950 --> 01:10:31.960 align:start position:0%
add a feature, well, you don't need to
 

01:10:31.960 --> 01:10:34.110 align:start position:0%
add a feature, well, you don't need to
tell<01:10:32.360><c> it,</c><01:10:32.480><c> "Hey,</c><01:10:32.720><c> create</c><01:10:33.160><c> a</c><01:10:33.200><c> new</c><01:10:33.440><c> work</c><01:10:33.760><c> tree."</c>

01:10:34.110 --> 01:10:34.120 align:start position:0%
tell it, "Hey, create a new work tree."
 

01:10:34.120 --> 01:10:36.630 align:start position:0%
tell it, "Hey, create a new work tree."
Or<01:10:34.480><c> make</c><01:10:34.760><c> sure</c><01:10:35.080><c> you</c><01:10:35.200><c> spawn</c><01:10:35.600><c> sub-agents.</c><01:10:36.440><c> It's</c>

01:10:36.630 --> 01:10:36.640 align:start position:0%
Or make sure you spawn sub-agents. It's
 

01:10:36.640 --> 01:10:38.630 align:start position:0%
Or make sure you spawn sub-agents. It's
going<01:10:36.880><c> to</c><01:10:37.000><c> be</c><01:10:37.160><c> automatic.</c><01:10:38.000><c> And</c><01:10:38.120><c> so,</c><01:10:38.320><c> at</c><01:10:38.440><c> this</c>

01:10:38.630 --> 01:10:38.640 align:start position:0%
going to be automatic. And so, at this
 

01:10:38.640 --> 01:10:40.830 align:start position:0%
going to be automatic. And so, at this
point,<01:10:38.960><c> you</c><01:10:39.040><c> want</c><01:10:39.200><c> to</c><01:10:39.280><c> review</c><01:10:39.960><c> this</c><01:10:40.200><c> proposal</c>

01:10:40.830 --> 01:10:40.840 align:start position:0%
point, you want to review this proposal
 

01:10:40.840 --> 01:10:43.430 align:start position:0%
point, you want to review this proposal
here,<01:10:41.600><c> and</c><01:10:41.760><c> you</c><01:10:41.880><c> want</c><01:10:42.040><c> to</c><01:10:42.160><c> save</c><01:10:42.600><c> this</c><01:10:43.000><c> as</c>

01:10:43.430 --> 01:10:43.440 align:start position:0%
here, and you want to save this as
 

01:10:43.440 --> 01:10:46.030 align:start position:0%
here, and you want to save this as
agents.md.<01:10:44.600><c> So,</c><01:10:44.760><c> I'm</c><01:10:44.840><c> going</c><01:10:44.960><c> to</c><01:10:45.080><c> say,</c><01:10:45.640><c> "Save</c>

01:10:46.030 --> 01:10:46.040 align:start position:0%
agents.md. So, I'm going to say, "Save
 

01:10:46.040 --> 01:10:49.270 align:start position:0%
agents.md. So, I'm going to say, "Save
it<01:10:46.280><c> as</c><01:10:46.840><c> agents."</c><01:10:47.640><c> So,</c><01:10:47.760><c> now</c><01:10:48.040><c> it's</c><01:10:48.280><c> saved</c><01:10:48.760><c> it</c><01:10:48.920><c> as</c>

01:10:49.270 --> 01:10:49.280 align:start position:0%
it as agents." So, now it's saved it as
 

01:10:49.280 --> 01:10:51.790 align:start position:0%
it as agents." So, now it's saved it as
agents.md.<01:10:50.320><c> You</c><01:10:50.520><c> You</c><01:10:50.600><c> can</c><01:10:50.800><c> click</c><01:10:51.160><c> here,</c><01:10:51.640><c> and</c>

01:10:51.790 --> 01:10:51.800 align:start position:0%
agents.md. You You can click here, and
 

01:10:51.800 --> 01:10:54.230 align:start position:0%
agents.md. You You can click here, and
you<01:10:51.880><c> can</c><01:10:52.360><c> see</c><01:10:52.800><c> the</c><01:10:52.920><c> whole</c><01:10:53.200><c> file</c><01:10:53.640><c> right</c><01:10:53.880><c> here.</c>

01:10:54.230 --> 01:10:54.240 align:start position:0%
you can see the whole file right here.
 

01:10:54.240 --> 01:10:57.390 align:start position:0%
you can see the whole file right here.
And<01:10:54.440><c> this</c><01:10:54.760><c> file</c><01:10:55.360><c> will</c><01:10:55.560><c> be</c><01:10:55.760><c> used</c><01:10:56.200><c> only</c><01:10:56.760><c> for</c><01:10:56.960><c> this</c>

01:10:57.390 --> 01:10:57.400 align:start position:0%
And this file will be used only for this
 

01:10:57.400 --> 01:10:59.790 align:start position:0%
And this file will be used only for this
specific<01:10:58.000><c> project.</c><01:10:58.640><c> They're</c><01:10:58.840><c> based</c><01:10:59.480><c> on</c><01:10:59.640><c> a</c>

01:10:59.790 --> 01:10:59.800 align:start position:0%
specific project. They're based on a
 

01:10:59.800 --> 01:11:02.430 align:start position:0%
specific project. They're based on a
repo.<01:11:00.440><c> So</c><01:11:00.600><c> now</c><01:11:00.920><c> for</c><01:11:01.080><c> my</c><01:11:01.200><c> next</c><01:11:01.560><c> prompt,</c><01:11:02.040><c> if</c><01:11:02.200><c> it's</c>

01:11:02.430 --> 01:11:02.440 align:start position:0%
repo. So now for my next prompt, if it's
 

01:11:02.440 --> 01:11:04.630 align:start position:0%
repo. So now for my next prompt, if it's
a<01:11:02.560><c> simple</c><01:11:03.200><c> change,</c><01:11:03.920><c> it's</c><01:11:04.120><c> not</c><01:11:04.400><c> going</c><01:11:04.560><c> to</c>

01:11:04.630 --> 01:11:04.640 align:start position:0%
a simple change, it's not going to
 

01:11:04.640 --> 01:11:07.230 align:start position:0%
a simple change, it's not going to
create<01:11:05.200><c> a</c><01:11:05.320><c> work</c><01:11:05.680><c> tree</c><01:11:05.880><c> probably.</c><01:11:06.720><c> And</c><01:11:06.920><c> it</c><01:11:07.040><c> will</c>

01:11:07.230 --> 01:11:07.240 align:start position:0%
create a work tree probably. And it will
 

01:11:07.240 --> 01:11:09.750 align:start position:0%
create a work tree probably. And it will
also<01:11:07.680><c> not</c><01:11:08.080><c> spawn</c><01:11:08.440><c> sub-agents,</c><01:11:09.160><c> but</c><01:11:09.320><c> if</c><01:11:09.440><c> it's</c><01:11:09.640><c> a</c>

01:11:09.750 --> 01:11:09.760 align:start position:0%
also not spawn sub-agents, but if it's a
 

01:11:09.760 --> 01:11:12.190 align:start position:0%
also not spawn sub-agents, but if it's a
more<01:11:10.200><c> complex</c><01:11:10.840><c> change,</c><01:11:11.400><c> it</c><01:11:11.600><c> should</c><01:11:11.760><c> probably</c>

01:11:12.190 --> 01:11:12.200 align:start position:0%
more complex change, it should probably
 

01:11:12.200 --> 01:11:14.590 align:start position:0%
more complex change, it should probably
create<01:11:12.680><c> a</c><01:11:12.800><c> work</c><01:11:13.080><c> tree</c><01:11:13.360><c> and</c><01:11:13.520><c> maybe</c><01:11:13.880><c> even</c><01:11:14.160><c> spawn</c>

01:11:14.590 --> 01:11:14.600 align:start position:0%
create a work tree and maybe even spawn
 

01:11:14.600 --> 01:11:16.550 align:start position:0%
create a work tree and maybe even spawn
sub-agents.<01:11:15.360><c> So</c><01:11:15.520><c> let's</c><01:11:15.720><c> go</c><01:11:15.840><c> ahead</c><01:11:16.080><c> and</c><01:11:16.240><c> see</c><01:11:16.440><c> if</c>

01:11:16.550 --> 01:11:16.560 align:start position:0%
sub-agents. So let's go ahead and see if
 

01:11:16.560 --> 01:11:18.790 align:start position:0%
sub-agents. So let's go ahead and see if
this<01:11:16.840><c> works.</c><01:11:17.400><c> So</c><01:11:17.560><c> now,</c><01:11:18.000><c> let's</c><01:11:18.280><c> go</c><01:11:18.400><c> ahead</c><01:11:18.640><c> and</c>

01:11:18.790 --> 01:11:18.800 align:start position:0%
this works. So now, let's go ahead and
 

01:11:18.800 --> 01:11:22.310 align:start position:0%
this works. So now, let's go ahead and
ask<01:11:19.160><c> it</c><01:11:19.400><c> make</c><01:11:19.960><c> a</c><01:11:20.120><c> simple</c><01:11:20.720><c> change</c><01:11:21.560><c> that</c><01:11:22.040><c> that</c>

01:11:22.310 --> 01:11:22.320 align:start position:0%
ask it make a simple change that that
 

01:11:22.320 --> 01:11:24.990 align:start position:0%
ask it make a simple change that that
changes<01:11:23.040><c> the</c><01:11:23.240><c> title</c><01:11:23.960><c> for</c><01:11:24.080><c> the</c><01:11:24.240><c> main</c>

01:11:24.990 --> 01:11:25.000 align:start position:0%
changes the title for the main
 

01:11:25.000 --> 01:11:29.590 align:start position:0%
changes the title for the main
index.html<01:11:26.440><c> to</c><01:11:27.320><c> awesome</c><01:11:28.000><c> Kanban</c><01:11:29.000><c> app.</c><01:11:29.480><c> Okay,</c>

01:11:29.590 --> 01:11:29.600 align:start position:0%
index.html to awesome Kanban app. Okay,
 

01:11:29.600 --> 01:11:30.670 align:start position:0%
index.html to awesome Kanban app. Okay,
I'm<01:11:29.720><c> going</c><01:11:29.840><c> to</c><01:11:29.920><c> go</c><01:11:30.040><c> ahead</c><01:11:30.240><c> and</c><01:11:30.360><c> run</c><01:11:30.560><c> it</c>

01:11:30.670 --> 01:11:30.680 align:start position:0%
I'm going to go ahead and run it
 

01:11:30.680 --> 01:11:33.150 align:start position:0%
I'm going to go ahead and run it
directly.<01:11:31.360><c> So</c><01:11:31.440><c> now</c><01:11:31.760><c> the</c><01:11:31.920><c> title</c><01:11:32.360><c> is</c><01:11:32.600><c> awesome</c>

01:11:33.150 --> 01:11:33.160 align:start position:0%
directly. So now the title is awesome
 

01:11:33.160 --> 01:11:36.070 align:start position:0%
directly. So now the title is awesome
Kanban<01:11:33.920><c> app.</c><01:11:34.440><c> Okay,</c><01:11:34.960><c> but</c><01:11:35.200><c> if</c><01:11:35.360><c> we</c><01:11:35.560><c> ask</c><01:11:35.920><c> it</c>

01:11:36.070 --> 01:11:36.080 align:start position:0%
Kanban app. Okay, but if we ask it
 

01:11:36.080 --> 01:11:38.830 align:start position:0%
Kanban app. Okay, but if we ask it
something<01:11:36.560><c> more</c><01:11:36.880><c> complex,</c><01:11:37.920><c> like,</c><01:11:38.560><c> you</c><01:11:38.640><c> know,</c>

01:11:38.830 --> 01:11:38.840 align:start position:0%
something more complex, like, you know,
 

01:11:38.840 --> 01:11:41.270 align:start position:0%
something more complex, like, you know,
figure<01:11:39.360><c> out</c><01:11:39.640><c> a</c><01:11:39.760><c> third-party,</c><01:11:40.880><c> you</c><01:11:41.000><c> know,</c>

01:11:41.270 --> 01:11:41.280 align:start position:0%
figure out a third-party, you know,
 

01:11:41.280 --> 01:11:44.070 align:start position:0%
figure out a third-party, you know,
integration,<01:11:42.440><c> design,</c><01:11:43.240><c> you</c><01:11:43.320><c> know,</c><01:11:43.520><c> support</c>

01:11:44.070 --> 01:11:44.080 align:start position:0%
integration, design, you know, support
 

01:11:44.080 --> 01:11:48.150 align:start position:0%
integration, design, you know, support
API<01:11:44.680><c> calls,</c><01:11:45.680><c> or</c><01:11:46.200><c> support</c><01:11:46.840><c> MCP,</c><01:11:47.640><c> or</c><01:11:47.800><c> anything</c>

01:11:48.150 --> 01:11:48.160 align:start position:0%
API calls, or support MCP, or anything
 

01:11:48.160 --> 01:11:49.990 align:start position:0%
API calls, or support MCP, or anything
like<01:11:48.360><c> that,</c><01:11:48.760><c> it</c><01:11:48.960><c> should</c><01:11:49.200><c> probably</c><01:11:49.720><c> use</c>

01:11:49.990 --> 01:11:50.000 align:start position:0%
like that, it should probably use
 

01:11:50.000 --> 01:11:52.270 align:start position:0%
like that, it should probably use
sub-agents<01:11:50.680><c> to</c><01:11:50.800><c> figure</c><01:11:51.080><c> it</c><01:11:51.240><c> out</c><01:11:51.560><c> and</c>

01:11:52.270 --> 01:11:52.280 align:start position:0%
sub-agents to figure it out and
 

01:11:52.280 --> 01:11:54.430 align:start position:0%
sub-agents to figure it out and
implement<01:11:52.920><c> the</c><01:11:53.040><c> changes</c><01:11:53.640><c> in</c><01:11:53.760><c> its</c><01:11:53.960><c> own</c><01:11:54.160><c> work</c>

01:11:54.430 --> 01:11:54.440 align:start position:0%
implement the changes in its own work
 

01:11:54.440 --> 01:11:56.790 align:start position:0%
implement the changes in its own work
tree.<01:11:54.640><c> So</c><01:11:54.800><c> let's</c><01:11:55.040><c> see</c><01:11:55.120><c> if</c><01:11:55.240><c> this</c><01:11:55.480><c> works.</c><01:11:56.040><c> Add</c><01:11:56.600><c> a</c>

01:11:56.790 --> 01:11:56.800 align:start position:0%
tree. So let's see if this works. Add a
 

01:11:56.800 --> 01:12:00.430 align:start position:0%
tree. So let's see if this works. Add a
robust<01:11:57.760><c> API</c><01:11:58.360><c> functionality</c><01:11:59.520><c> for</c><01:11:59.720><c> handling</c>

01:12:00.430 --> 01:12:00.440 align:start position:0%
robust API functionality for handling
 

01:12:00.440 --> 01:12:03.310 align:start position:0%
robust API functionality for handling
outgoing<01:12:01.120><c> API</c><01:12:01.520><c> calls</c><01:12:02.400><c> and</c><01:12:02.720><c> incoming</c>

01:12:03.310 --> 01:12:03.320 align:start position:0%
outgoing API calls and incoming
 

01:12:03.320 --> 01:12:05.390 align:start position:0%
outgoing API calls and incoming
webhooks.<01:12:04.040><c> Okay,</c><01:12:04.560><c> I'm</c><01:12:04.680><c> going</c><01:12:04.800><c> to</c><01:12:04.880><c> jump</c><01:12:05.160><c> into</c>

01:12:05.390 --> 01:12:05.400 align:start position:0%
webhooks. Okay, I'm going to jump into
 

01:12:05.400 --> 01:12:07.710 align:start position:0%
webhooks. Okay, I'm going to jump into
plan<01:12:05.800><c> mode</c><01:12:06.360><c> to</c><01:12:06.440><c> see</c><01:12:06.560><c> if</c><01:12:06.720><c> it</c><01:12:06.800><c> has</c><01:12:07.000><c> any</c><01:12:07.200><c> questions</c>

01:12:07.710 --> 01:12:07.720 align:start position:0%
plan mode to see if it has any questions
 

01:12:07.720 --> 01:12:10.150 align:start position:0%
plan mode to see if it has any questions
for<01:12:07.880><c> me.</c><01:12:08.120><c> See</c><01:12:08.320><c> how</c><01:12:08.480><c> it</c><01:12:08.600><c> says</c><01:12:08.960><c> agents.mdx</c>

01:12:10.150 --> 01:12:10.160 align:start position:0%
for me. See how it says agents.mdx
 

01:12:10.160 --> 01:12:12.790 align:start position:0%
for me. See how it says agents.mdx
explicitly<01:12:10.760><c> says</c><01:12:11.040><c> not</c><01:12:11.480><c> to</c><01:12:11.640><c> add</c><01:12:11.880><c> a</c><01:12:12.000><c> backend</c><01:12:12.640><c> or</c>

01:12:12.790 --> 01:12:12.800 align:start position:0%
explicitly says not to add a backend or
 

01:12:12.800 --> 01:12:15.550 align:start position:0%
explicitly says not to add a backend or
proxy<01:12:13.280><c> without</c><01:12:13.640><c> asking.</c><01:12:14.360><c> Okay,</c><01:12:14.640><c> so</c><01:12:14.840><c> it</c><01:12:14.960><c> did</c>

01:12:15.550 --> 01:12:15.560 align:start position:0%
proxy without asking. Okay, so it did
 

01:12:15.560 --> 01:12:17.470 align:start position:0%
proxy without asking. Okay, so it did
consult<01:12:16.200><c> this.</c><01:12:16.520><c> So</c><01:12:16.680><c> we're</c><01:12:16.840><c> going</c><01:12:17.000><c> to</c><01:12:17.120><c> add</c><01:12:17.400><c> a</c>

01:12:17.470 --> 01:12:17.480 align:start position:0%
consult this. So we're going to add a
 

01:12:17.480 --> 01:12:20.270 align:start position:0%
consult this. So we're going to add a
backend.<01:12:18.360><c> We're</c><01:12:18.560><c> going</c><01:12:18.720><c> to</c><01:12:18.800><c> create</c><01:12:19.280><c> tasks</c><01:12:20.040><c> and</c>

01:12:20.270 --> 01:12:20.280 align:start position:0%
backend. We're going to create tasks and
 

01:12:20.280 --> 01:12:23.470 align:start position:0%
backend. We're going to create tasks and
let's<01:12:20.520><c> see</c><01:12:20.680><c> if</c><01:12:20.840><c> it's</c><01:12:21.080><c> going</c><01:12:21.440><c> to</c><01:12:21.680><c> create</c><01:12:22.600><c> a</c><01:12:23.080><c> work</c>

01:12:23.470 --> 01:12:23.480 align:start position:0%
let's see if it's going to create a work
 

01:12:23.480 --> 01:12:25.670 align:start position:0%
let's see if it's going to create a work
tree<01:12:23.760><c> automatically</c><01:12:24.640><c> and</c><01:12:25.000><c> maybe</c><01:12:25.240><c> even</c><01:12:25.480><c> use</c>

01:12:25.670 --> 01:12:25.680 align:start position:0%
tree automatically and maybe even use
 

01:12:25.680 --> 01:12:27.550 align:start position:0%
tree automatically and maybe even use
sub-agents.<01:12:26.480><c> Another</c><01:12:26.760><c> question,</c><01:12:27.240><c> should</c><01:12:27.480><c> the</c>

01:12:27.550 --> 01:12:27.560 align:start position:0%
sub-agents. Another question, should the
 

01:12:27.560 --> 01:12:29.670 align:start position:0%
sub-agents. Another question, should the
new<01:12:27.800><c> backend</c><01:12:28.280><c> become</c><01:12:28.560><c> the</c><01:12:28.680><c> source</c><01:12:29.040><c> of</c><01:12:29.160><c> truth</c>

01:12:29.670 --> 01:12:29.680 align:start position:0%
new backend become the source of truth
 

01:12:29.680 --> 01:12:31.950 align:start position:0%
new backend become the source of truth
for<01:12:29.880><c> Kanban</c><01:12:30.480><c> tasks?</c><01:12:31.040><c> Yes,</c><01:12:31.480><c> let's</c><01:12:31.680><c> just</c><01:12:31.840><c> go</c>

01:12:31.950 --> 01:12:31.960 align:start position:0%
for Kanban tasks? Yes, let's just go
 

01:12:31.960 --> 01:12:33.590 align:start position:0%
for Kanban tasks? Yes, let's just go
with<01:12:32.080><c> the</c><01:12:32.160><c> recommended.</c><01:12:33.040><c> Okay,</c><01:12:33.280><c> we're</c><01:12:33.440><c> going</c>

01:12:33.590 --> 01:12:33.600 align:start position:0%
with the recommended. Okay, we're going
 

01:12:33.600 --> 01:12:35.310 align:start position:0%
with the recommended. Okay, we're going
to<01:12:33.680><c> expand</c><01:12:34.280><c> this</c><01:12:34.480><c> plan</c><01:12:34.800><c> and</c><01:12:34.920><c> we're</c><01:12:35.040><c> going</c><01:12:35.200><c> to</c>

01:12:35.310 --> 01:12:35.320 align:start position:0%
to expand this plan and we're going to
 

01:12:35.320 --> 01:12:38.270 align:start position:0%
to expand this plan and we're going to
see<01:12:35.920><c> if</c><01:12:36.040><c> it's</c><01:12:36.200><c> going</c><01:12:36.480><c> to</c><01:12:36.600><c> be</c><01:12:36.800><c> using</c><01:12:37.440><c> a</c><01:12:37.880><c> work</c>

01:12:38.270 --> 01:12:38.280 align:start position:0%
see if it's going to be using a work
 

01:12:38.280 --> 01:12:40.910 align:start position:0%
see if it's going to be using a work
tree<01:12:38.800><c> or</c><01:12:39.000><c> sub-agents</c><01:12:39.960><c> for</c><01:12:40.320><c> any</c><01:12:40.520><c> of</c><01:12:40.680><c> these</c>

01:12:40.910 --> 01:12:40.920 align:start position:0%
tree or sub-agents for any of these
 

01:12:40.920 --> 01:12:43.630 align:start position:0%
tree or sub-agents for any of these
things.<01:12:41.520><c> Okay,</c><01:12:41.800><c> so</c><01:12:42.040><c> I</c><01:12:42.160><c> do</c><01:12:42.320><c> not</c><01:12:42.680><c> see</c><01:12:43.320><c> it's</c><01:12:43.440><c> going</c>

01:12:43.630 --> 01:12:43.640 align:start position:0%
things. Okay, so I do not see it's going
 

01:12:43.640 --> 01:12:45.910 align:start position:0%
things. Okay, so I do not see it's going
to<01:12:43.720><c> be</c><01:12:43.840><c> using</c><01:12:44.200><c> sub-agents.</c><01:12:44.920><c> Update.</c><01:12:45.800><c> So</c>

01:12:45.910 --> 01:12:45.920 align:start position:0%
to be using sub-agents. Update. So
 

01:12:45.920 --> 01:12:48.390 align:start position:0%
to be using sub-agents. Update. So
before<01:12:46.320><c> we</c><01:12:46.480><c> run</c><01:12:46.800><c> it,</c><01:12:47.000><c> let's</c><01:12:47.360><c> ask</c><01:12:47.760><c> it,</c><01:12:48.080><c> do</c><01:12:48.240><c> you</c>

01:12:48.390 --> 01:12:48.400 align:start position:0%
before we run it, let's ask it, do you
 

01:12:48.400 --> 01:12:52.230 align:start position:0%
before we run it, let's ask it, do you
plan<01:12:48.880><c> on</c><01:12:49.120><c> using</c><01:12:49.920><c> a</c><01:12:50.040><c> work</c><01:12:50.440><c> tree</c><01:12:50.960><c> or</c><01:12:51.200><c> sub-agents</c>

01:12:52.230 --> 01:12:52.240 align:start position:0%
plan on using a work tree or sub-agents
 

01:12:52.240 --> 01:12:54.310 align:start position:0%
plan on using a work tree or sub-agents
for<01:12:52.480><c> this</c><01:12:52.760><c> task.</c><01:12:53.120><c> There</c><01:12:53.320><c> you</c><01:12:53.440><c> go.</c><01:12:53.680><c> Yes,</c><01:12:54.120><c> for</c>

01:12:54.310 --> 01:12:54.320 align:start position:0%
for this task. There you go. Yes, for
 

01:12:54.320 --> 01:12:56.230 align:start position:0%
for this task. There you go. Yes, for
implementation<01:12:55.200><c> I'd</c><01:12:55.400><c> use</c><01:12:55.640><c> a</c><01:12:55.720><c> work</c><01:12:56.080><c> tree</c>

01:12:56.230 --> 01:12:56.240 align:start position:0%
implementation I'd use a work tree
 

01:12:56.240 --> 01:12:58.310 align:start position:0%
implementation I'd use a work tree
because<01:12:56.520><c> this</c><01:12:56.760><c> changes</c><01:12:57.160><c> the</c><01:12:57.240><c> project</c><01:12:58.040><c> from</c><01:12:58.240><c> a</c>

01:12:58.310 --> 01:12:58.320 align:start position:0%
because this changes the project from a
 

01:12:58.320 --> 01:13:01.950 align:start position:0%
because this changes the project from a
static<01:12:58.880><c> only</c><01:12:59.160><c> app</c><01:12:59.560><c> into</c><01:13:00.160><c> a</c><01:13:00.520><c> node</c><01:13:01.160><c> server</c><01:13:01.720><c> app</c>

01:13:01.950 --> 01:13:01.960 align:start position:0%
static only app into a node server app
 

01:13:01.960 --> 01:13:04.070 align:start position:0%
static only app into a node server app
with<01:13:02.160><c> API</c><01:13:02.520><c> routes</c><01:13:03.000><c> and</c><01:13:03.120><c> persistent</c><01:13:03.640><c> states.</c>

01:13:04.070 --> 01:13:04.080 align:start position:0%
with API routes and persistent states.
 

01:13:04.080 --> 01:13:06.390 align:start position:0%
with API routes and persistent states.
I'd<01:13:04.320><c> also</c><01:13:04.760><c> use</c><01:13:05.000><c> subagents,</c><01:13:05.640><c> but</c><01:13:05.880><c> only</c><01:13:06.200><c> for</c>

01:13:06.390 --> 01:13:06.400 align:start position:0%
I'd also use subagents, but only for
 

01:13:06.400 --> 01:13:08.870 align:start position:0%
I'd also use subagents, but only for
bounded<01:13:06.920><c> design</c><01:13:07.360><c> review</c><01:13:07.680><c> tasks.</c><01:13:08.360><c> And</c><01:13:08.520><c> so</c><01:13:08.680><c> it's</c>

01:13:08.870 --> 01:13:08.880 align:start position:0%
bounded design review tasks. And so it's
 

01:13:08.880 --> 01:13:10.630 align:start position:0%
bounded design review tasks. And so it's
telling<01:13:09.240><c> you</c><01:13:09.360><c> right</c><01:13:09.640><c> there</c><01:13:09.960><c> that</c><01:13:10.120><c> it</c><01:13:10.320><c> will</c><01:13:10.520><c> be</c>

01:13:10.630 --> 01:13:10.640 align:start position:0%
telling you right there that it will be
 

01:13:10.640 --> 01:13:12.510 align:start position:0%
telling you right there that it will be
using<01:13:11.000><c> a</c><01:13:11.120><c> work</c><01:13:11.440><c> tree</c><01:13:11.640><c> and</c><01:13:11.760><c> it</c><01:13:11.920><c> will</c><01:13:12.120><c> be</c><01:13:12.240><c> using</c>

01:13:12.510 --> 01:13:12.520 align:start position:0%
using a work tree and it will be using
 

01:13:12.520 --> 01:13:14.510 align:start position:0%
using a work tree and it will be using
subagents,<01:13:13.160><c> and</c><01:13:13.320><c> you</c><01:13:13.440><c> can</c><01:13:13.680><c> bet</c><01:13:14.000><c> that</c><01:13:14.280><c> this</c>

01:13:14.510 --> 01:13:14.520 align:start position:0%
subagents, and you can bet that this
 

01:13:14.520 --> 01:13:17.230 align:start position:0%
subagents, and you can bet that this
would<01:13:14.680><c> never</c><01:13:15.000><c> happen</c><01:13:15.560><c> if</c><01:13:15.800><c> we</c><01:13:15.960><c> didn't</c><01:13:16.640><c> have</c>

01:13:17.230 --> 01:13:17.240 align:start position:0%
would never happen if we didn't have
 

01:13:17.240 --> 01:13:21.110 align:start position:0%
would never happen if we didn't have
this<01:13:17.520><c> agents.md</c><01:13:18.560><c> file.</c><01:13:19.320><c> And</c><01:13:19.440><c> so</c><01:13:19.680><c> agents.md</c><01:13:21.000><c> is</c>

01:13:21.110 --> 01:13:21.120 align:start position:0%
this agents.md file. And so agents.md is
 

01:13:21.120 --> 01:13:22.550 align:start position:0%
this agents.md file. And so agents.md is
super<01:13:21.440><c> important.</c><01:13:21.920><c> It's</c><01:13:22.000><c> going</c><01:13:22.120><c> to</c><01:13:22.200><c> save</c><01:13:22.480><c> you</c>

01:13:22.550 --> 01:13:22.560 align:start position:0%
super important. It's going to save you
 

01:13:22.560 --> 01:13:25.190 align:start position:0%
super important. It's going to save you
a<01:13:22.640><c> lot</c><01:13:22.960><c> of</c><01:13:23.120><c> time</c><01:13:23.720><c> because</c><01:13:24.320><c> it</c><01:13:24.560><c> basically</c>

01:13:25.190 --> 01:13:25.200 align:start position:0%
a lot of time because it basically
 

01:13:25.200 --> 01:13:28.390 align:start position:0%
a lot of time because it basically
codifies<01:13:26.400><c> repeatable</c><01:13:27.160><c> tasks.</c><01:13:27.960><c> So</c><01:13:28.040><c> you</c><01:13:28.160><c> never</c>

01:13:28.390 --> 01:13:28.400 align:start position:0%
codifies repeatable tasks. So you never
 

01:13:28.400 --> 01:13:30.710 align:start position:0%
codifies repeatable tasks. So you never
have<01:13:28.600><c> to</c><01:13:28.760><c> re-prompt</c><01:13:29.400><c> the</c><01:13:29.520><c> same</c><01:13:29.920><c> thing</c><01:13:30.240><c> over</c>

01:13:30.710 --> 01:13:30.720 align:start position:0%
have to re-prompt the same thing over
 

01:13:30.720 --> 01:13:34.910 align:start position:0%
have to re-prompt the same thing over
and<01:13:30.960><c> over</c><01:13:31.320><c> again.</c>

01:13:34.910 --> 01:13:34.920 align:start position:0%
 
 

01:13:34.920 --> 01:13:36.790 align:start position:0%
 
Now,<01:13:35.120><c> before</c><01:13:35.520><c> we</c><01:13:35.640><c> build</c><01:13:35.960><c> real</c><01:13:36.240><c> apps,</c><01:13:36.520><c> there</c><01:13:36.680><c> is</c>

01:13:36.790 --> 01:13:36.800 align:start position:0%
Now, before we build real apps, there is
 

01:13:36.800 --> 01:13:38.830 align:start position:0%
Now, before we build real apps, there is
one<01:13:37.000><c> security</c><01:13:37.480><c> habit</c><01:13:37.960><c> you</c><01:13:38.040><c> want</c><01:13:38.200><c> to</c><01:13:38.280><c> establish</c>

01:13:38.830 --> 01:13:38.840 align:start position:0%
one security habit you want to establish
 

01:13:38.840 --> 01:13:40.750 align:start position:0%
one security habit you want to establish
early.<01:13:39.400><c> Codex</c><01:13:39.840><c> can</c><01:13:40.040><c> help</c><01:13:40.360><c> inspect</c>

01:13:40.750 --> 01:13:40.760 align:start position:0%
early. Codex can help inspect
 

01:13:40.760 --> 01:13:42.990 align:start position:0%
early. Codex can help inspect
configuration,<01:13:41.640><c> but</c><01:13:41.880><c> we</c><01:13:42.000><c> should</c><01:13:42.240><c> be</c><01:13:42.400><c> careful</c>

01:13:42.990 --> 01:13:43.000 align:start position:0%
configuration, but we should be careful
 

01:13:43.000 --> 01:13:45.190 align:start position:0%
configuration, but we should be careful
with<01:13:43.160><c> secrets.</c><01:13:43.920><c> An</c><01:13:44.040><c> environment</c><01:13:44.680><c> variable</c>

01:13:45.190 --> 01:13:45.200 align:start position:0%
with secrets. An environment variable
 

01:13:45.200 --> 01:13:47.150 align:start position:0%
with secrets. An environment variable
might<01:13:45.440><c> be</c><01:13:45.600><c> safe</c><01:13:46.000><c> and</c><01:13:46.160><c> public,</c><01:13:46.840><c> like</c><01:13:47.080><c> a</c>

01:13:47.150 --> 01:13:47.160 align:start position:0%
might be safe and public, like a
 

01:13:47.160 --> 01:13:49.510 align:start position:0%
might be safe and public, like a
front-end<01:13:47.640><c> URL,</c><01:13:48.280><c> or</c><01:13:48.440><c> it</c><01:13:48.560><c> might</c><01:13:48.760><c> be</c><01:13:48.920><c> private,</c>

01:13:49.510 --> 01:13:49.520 align:start position:0%
front-end URL, or it might be private,
 

01:13:49.520 --> 01:13:52.430 align:start position:0%
front-end URL, or it might be private,
like<01:13:49.800><c> an</c><01:13:49.960><c> API</c><01:13:50.440><c> key</c><01:13:50.840><c> or</c><01:13:51.040><c> deploy</c><01:13:51.520><c> token.</c><01:13:52.120><c> These</c>

01:13:52.430 --> 01:13:52.440 align:start position:0%
like an API key or deploy token. These
 

01:13:52.440 --> 01:13:54.710 align:start position:0%
like an API key or deploy token. These
should<01:13:52.720><c> not</c><01:13:53.000><c> be</c><01:13:53.120><c> casually</c><01:13:53.760><c> pasted</c><01:13:54.320><c> into</c><01:13:54.640><c> a</c>

01:13:54.710 --> 01:13:54.720 align:start position:0%
should not be casually pasted into a
 

01:13:54.720 --> 01:13:57.750 align:start position:0%
should not be casually pasted into a
prompt<01:13:55.280><c> or</c><01:13:55.520><c> committed</c><01:13:56.400><c> into</c><01:13:56.800><c> the</c><01:13:56.960><c> repo.</c><01:13:57.600><c> The</c>

01:13:57.750 --> 01:13:57.760 align:start position:0%
prompt or committed into the repo. The
 

01:13:57.760 --> 01:13:59.390 align:start position:0%
prompt or committed into the repo. The
other<01:13:57.960><c> important</c><01:13:58.400><c> thing</c><01:13:58.640><c> is</c><01:13:58.760><c> that</c><01:13:58.960><c> local</c>

01:13:59.390 --> 01:13:59.400 align:start position:0%
other important thing is that local
 

01:13:59.400 --> 01:14:01.790 align:start position:0%
other important thing is that local
config<01:14:00.080><c> and</c><01:14:00.200><c> deployment</c><01:14:00.840><c> config</c><01:14:01.280><c> are</c><01:14:01.360><c> not</c><01:14:01.680><c> the</c>

01:14:01.790 --> 01:14:01.800 align:start position:0%
config and deployment config are not the
 

01:14:01.800 --> 01:14:04.950 align:start position:0%
config and deployment config are not the
same<01:14:02.120><c> thing.</c><01:14:02.640><c> A</c><01:14:02.760><c> local.env</c><01:14:03.840><c> file</c><01:14:04.480><c> helps</c><01:14:04.800><c> the</c>

01:14:04.950 --> 01:14:04.960 align:start position:0%
same thing. A local.env file helps the
 

01:14:04.960 --> 01:14:07.030 align:start position:0%
same thing. A local.env file helps the
app<01:14:05.240><c> run</c><01:14:05.440><c> on</c><01:14:05.560><c> my</c><01:14:05.760><c> machine,</c><01:14:06.320><c> but</c><01:14:06.400><c> Vercel</c><01:14:06.880><c> does</c>

01:14:07.030 --> 01:14:07.040 align:start position:0%
app run on my machine, but Vercel does
 

01:14:07.040 --> 01:14:09.030 align:start position:0%
app run on my machine, but Vercel does
not<01:14:07.360><c> automatically</c><01:14:07.960><c> copy</c><01:14:08.320><c> that</c><01:14:08.520><c> file</c><01:14:08.800><c> into</c>

01:14:09.030 --> 01:14:09.040 align:start position:0%
not automatically copy that file into
 

01:14:09.040 --> 01:14:11.230 align:start position:0%
not automatically copy that file into
production.<01:14:09.760><c> For</c><01:14:10.000><c> a</c><01:14:10.120><c> deployed</c><01:14:10.720><c> app,</c><01:14:11.120><c> the</c>

01:14:11.230 --> 01:14:11.240 align:start position:0%
production. For a deployed app, the
 

01:14:11.240 --> 01:14:13.710 align:start position:0%
production. For a deployed app, the
required<01:14:11.880><c> variables</c><01:14:12.480><c> need</c><01:14:12.720><c> to</c><01:14:12.880><c> exist</c><01:14:13.440><c> in</c><01:14:13.560><c> the</c>

01:14:13.710 --> 01:14:13.720 align:start position:0%
required variables need to exist in the
 

01:14:13.720 --> 01:14:15.830 align:start position:0%
required variables need to exist in the
deployment<01:14:14.440><c> environment,</c><01:14:15.120><c> too.</c><01:14:15.600><c> So</c><01:14:15.680><c> the</c>

01:14:15.830 --> 01:14:15.840 align:start position:0%
deployment environment, too. So the
 

01:14:15.840 --> 01:14:17.950 align:start position:0%
deployment environment, too. So the
right<01:14:16.160><c> workflow</c><01:14:16.720><c> is</c><01:14:16.880><c> to</c><01:14:17.040><c> ask</c><01:14:17.360><c> Codex</c><01:14:17.840><c> to</c>

01:14:17.950 --> 01:14:17.960 align:start position:0%
right workflow is to ask Codex to
 

01:14:17.960 --> 01:14:20.150 align:start position:0%
right workflow is to ask Codex to
identify<01:14:18.800><c> what</c><01:14:18.840><c> variables</c><01:14:19.480><c> are</c><01:14:19.600><c> needed,</c>

01:14:20.150 --> 01:14:20.160 align:start position:0%
identify what variables are needed,
 

01:14:20.160 --> 01:14:22.470 align:start position:0%
identify what variables are needed,
classify<01:14:20.800><c> them</c><01:14:21.000><c> as</c><01:14:21.200><c> public</c><01:14:21.600><c> or</c><01:14:21.720><c> private,</c><01:14:22.360><c> and</c>

01:14:22.470 --> 01:14:22.480 align:start position:0%
classify them as public or private, and
 

01:14:22.480 --> 01:14:25.390 align:start position:0%
classify them as public or private, and
then<01:14:22.680><c> advise</c><01:14:23.400><c> you</c><01:14:23.680><c> where</c><01:14:24.080><c> each</c><01:14:24.480><c> one</c><01:14:24.880><c> needs</c><01:14:25.280><c> to</c>

01:14:25.390 --> 01:14:25.400 align:start position:0%
then advise you where each one needs to
 

01:14:25.400 --> 01:14:27.350 align:start position:0%
then advise you where each one needs to
be<01:14:25.600><c> configured.</c><01:14:26.400><c> Now,</c><01:14:26.600><c> let's</c><01:14:26.880><c> say</c><01:14:27.080><c> we're</c>

01:14:27.350 --> 01:14:27.360 align:start position:0%
be configured. Now, let's say we're
 

01:14:27.360 --> 01:14:30.470 align:start position:0%
be configured. Now, let's say we're
building<01:14:27.880><c> on</c><01:14:28.040><c> this</c><01:14:28.400><c> app,</c><01:14:29.000><c> and</c><01:14:29.480><c> we</c><01:14:29.680><c> are</c><01:14:29.960><c> adding</c>

01:14:30.470 --> 01:14:30.480 align:start position:0%
building on this app, and we are adding
 

01:14:30.480 --> 01:14:32.590 align:start position:0%
building on this app, and we are adding
external<01:14:31.160><c> services.</c><01:14:31.960><c> So</c><01:14:32.120><c> one</c><01:14:32.280><c> of</c><01:14:32.360><c> those</c>

01:14:32.590 --> 01:14:32.600 align:start position:0%
external services. So one of those
 

01:14:32.600 --> 01:14:35.710 align:start position:0%
external services. So one of those
services<01:14:33.240><c> might</c><01:14:33.560><c> be</c><01:14:33.720><c> something</c><01:14:34.200><c> like</c><01:14:34.480><c> OpenAI,</c>

01:14:35.710 --> 01:14:35.720 align:start position:0%
services might be something like OpenAI,
 

01:14:35.720 --> 01:14:38.070 align:start position:0%
services might be something like OpenAI,
or<01:14:35.920><c> another</c><01:14:36.240><c> service</c><01:14:36.720><c> could</c><01:14:36.880><c> be</c><01:14:37.040><c> Open</c><01:14:37.480><c> Router.</c>

01:14:38.070 --> 01:14:38.080 align:start position:0%
or another service could be Open Router.
 

01:14:38.080 --> 01:14:40.390 align:start position:0%
or another service could be Open Router.
Well,<01:14:38.680><c> every</c><01:14:39.000><c> time</c><01:14:39.280><c> we</c><01:14:39.400><c> connect</c><01:14:39.760><c> to</c><01:14:39.880><c> external</c>

01:14:40.390 --> 01:14:40.400 align:start position:0%
Well, every time we connect to external
 

01:14:40.400 --> 01:14:42.950 align:start position:0%
Well, every time we connect to external
services,<01:14:41.240><c> we</c><01:14:41.400><c> need</c><01:14:41.800><c> to</c><01:14:41.960><c> connect</c><01:14:42.400><c> them</c><01:14:42.600><c> using</c>

01:14:42.950 --> 01:14:42.960 align:start position:0%
services, we need to connect them using
 

01:14:42.960 --> 01:14:45.710 align:start position:0%
services, we need to connect them using
an<01:14:43.120><c> API</c><01:14:43.640><c> key,</c><01:14:44.080><c> and</c><01:14:44.400><c> those</c><01:14:44.680><c> API</c><01:14:45.120><c> keys</c><01:14:45.560><c> are</c>

01:14:45.710 --> 01:14:45.720 align:start position:0%
an API key, and those API keys are
 

01:14:45.720 --> 01:14:48.670 align:start position:0%
an API key, and those API keys are
needed<01:14:46.440><c> for</c><01:14:46.600><c> those</c><01:14:46.880><c> services</c><01:14:47.640><c> to</c><01:14:47.920><c> track</c><01:14:48.560><c> how</c>

01:14:48.670 --> 01:14:48.680 align:start position:0%
needed for those services to track how
 

01:14:48.680 --> 01:14:50.710 align:start position:0%
needed for those services to track how
much<01:14:49.000><c> usage</c><01:14:49.480><c> we</c><01:14:49.600><c> have</c><01:14:49.840><c> so</c><01:14:49.920><c> that</c><01:14:50.080><c> they</c><01:14:50.200><c> can</c><01:14:50.440><c> bill</c>

01:14:50.710 --> 01:14:50.720 align:start position:0%
much usage we have so that they can bill
 

01:14:50.720 --> 01:14:53.590 align:start position:0%
much usage we have so that they can bill
us<01:14:50.880><c> accordingly.</c><01:14:51.800><c> And</c><01:14:51.920><c> so</c><01:14:52.280><c> in</c><01:14:52.600><c> your</c><01:14:52.960><c> app,</c><01:14:53.400><c> you</c>

01:14:53.590 --> 01:14:53.600 align:start position:0%
us accordingly. And so in your app, you
 

01:14:53.600 --> 01:14:55.750 align:start position:0%
us accordingly. And so in your app, you
need<01:14:53.840><c> to</c><01:14:53.960><c> be</c><01:14:54.080><c> storing</c><01:14:54.600><c> those</c><01:14:54.880><c> API</c><01:14:55.360><c> keys</c>

01:14:55.750 --> 01:14:55.760 align:start position:0%
need to be storing those API keys
 

01:14:55.760 --> 01:14:57.230 align:start position:0%
need to be storing those API keys
because<01:14:56.200><c> when</c><01:14:56.360><c> you're</c><01:14:56.520><c> going</c><01:14:56.680><c> to</c><01:14:56.760><c> be</c><01:14:56.840><c> making</c>

01:14:57.230 --> 01:14:57.240 align:start position:0%
because when you're going to be making
 

01:14:57.240 --> 01:14:59.270 align:start position:0%
because when you're going to be making
those<01:14:57.520><c> requests,</c><01:14:58.360><c> regardless</c><01:14:59.000><c> whether</c>

01:14:59.270 --> 01:14:59.280 align:start position:0%
those requests, regardless whether
 

01:14:59.280 --> 01:15:01.470 align:start position:0%
those requests, regardless whether
that's<01:14:59.560><c> an</c><01:14:59.680><c> API</c><01:15:00.120><c> token</c><01:15:00.840><c> or</c><01:15:01.000><c> some</c><01:15:01.200><c> kind</c><01:15:01.400><c> of</c>

01:15:01.470 --> 01:15:01.480 align:start position:0%
that's an API token or some kind of
 

01:15:01.480 --> 01:15:03.510 align:start position:0%
that's an API token or some kind of
deployment<01:15:02.120><c> token</c><01:15:02.560><c> or</c><01:15:02.680><c> pretty</c><01:15:02.840><c> much</c><01:15:03.120><c> anything</c>

01:15:03.510 --> 01:15:03.520 align:start position:0%
deployment token or pretty much anything
 

01:15:03.520 --> 01:15:05.910 align:start position:0%
deployment token or pretty much anything
else,<01:15:04.000><c> you</c><01:15:04.080><c> need</c><01:15:04.280><c> to</c><01:15:04.360><c> be</c><01:15:04.520><c> very,</c><01:15:04.920><c> very</c><01:15:05.280><c> careful</c>

01:15:05.910 --> 01:15:05.920 align:start position:0%
else, you need to be very, very careful
 

01:15:05.920 --> 01:15:08.790 align:start position:0%
else, you need to be very, very careful
how<01:15:06.200><c> you</c><01:15:06.360><c> are</c><01:15:06.480><c> storing</c><01:15:07.120><c> them.</c><01:15:07.880><c> And</c><01:15:08.000><c> so</c><01:15:08.240><c> in</c><01:15:08.440><c> this</c>

01:15:08.790 --> 01:15:08.800 align:start position:0%
how you are storing them. And so in this
 

01:15:08.800 --> 01:15:11.670 align:start position:0%
how you are storing them. And so in this
app,<01:15:09.160><c> let's</c><01:15:09.560><c> say</c><01:15:09.880><c> we</c><01:15:10.120><c> want</c><01:15:10.320><c> to</c><01:15:10.440><c> use</c><01:15:10.760><c> OpenAI</c>

01:15:11.670 --> 01:15:11.680 align:start position:0%
app, let's say we want to use OpenAI
 

01:15:11.680 --> 01:15:14.670 align:start position:0%
app, let's say we want to use OpenAI
here.<01:15:11.920><c> Here.</c><01:15:12.160><c> So</c><01:15:12.320><c> I'm</c><01:15:12.400><c> going</c><01:15:12.520><c> to</c><01:15:12.640><c> say</c><01:15:13.560><c> API</c>

01:15:14.670 --> 01:15:14.680 align:start position:0%
here. Here. So I'm going to say API
 

01:15:14.680 --> 01:15:17.470 align:start position:0%
here. Here. So I'm going to say API
stack<01:15:15.320><c> and</c><01:15:15.680><c> use</c><01:15:16.040><c> the</c><01:15:16.160><c> following</c><01:15:16.760><c> key.</c><01:15:17.360><c> And</c>

01:15:17.470 --> 01:15:17.480 align:start position:0%
stack and use the following key. And
 

01:15:17.480 --> 01:15:20.270 align:start position:0%
stack and use the following key. And
let's<01:15:17.680><c> say</c><01:15:17.840><c> we</c><01:15:18.000><c> give</c><01:15:18.200><c> it</c><01:15:18.400><c> a</c><01:15:18.520><c> sample</c><01:15:19.240><c> API</c><01:15:19.840><c> key.</c>

01:15:20.270 --> 01:15:20.280 align:start position:0%
let's say we give it a sample API key.
 

01:15:20.280 --> 01:15:23.510 align:start position:0%
let's say we give it a sample API key.
Sample<01:15:21.000><c> API</c><01:15:21.560><c> key</c><01:15:22.080><c> as</c><01:15:22.400><c> a</c><01:15:22.520><c> sample.</c><01:15:23.280><c> We're</c><01:15:23.400><c> going</c>

01:15:23.510 --> 01:15:23.520 align:start position:0%
Sample API key as a sample. We're going
 

01:15:23.520 --> 01:15:25.230 align:start position:0%
Sample API key as a sample. We're going
to<01:15:23.640><c> jump</c><01:15:23.920><c> into</c><01:15:24.200><c> plan</c><01:15:24.560><c> mode.</c><01:15:24.880><c> We're</c><01:15:25.000><c> going</c><01:15:25.120><c> to</c>

01:15:25.230 --> 01:15:25.240 align:start position:0%
to jump into plan mode. We're going to
 

01:15:25.240 --> 01:15:27.790 align:start position:0%
to jump into plan mode. We're going to
select<01:15:25.640><c> this</c><01:15:25.920><c> API</c><01:15:26.440><c> stack</c><01:15:26.920><c> only.</c><01:15:27.560><c> We're</c><01:15:27.680><c> going</c>

01:15:27.790 --> 01:15:27.800 align:start position:0%
select this API stack only. We're going
 

01:15:27.800 --> 01:15:29.630 align:start position:0%
select this API stack only. We're going
to<01:15:27.920><c> be</c><01:15:28.000><c> doing</c><01:15:28.320><c> native</c><01:15:28.680><c> fetch.</c><01:15:29.280><c> All</c><01:15:29.360><c> right.</c><01:15:29.480><c> So</c>

01:15:29.630 --> 01:15:29.640 align:start position:0%
to be doing native fetch. All right. So
 

01:15:29.640 --> 01:15:32.550 align:start position:0%
to be doing native fetch. All right. So
it<01:15:29.840><c> went</c><01:15:30.080><c> ahead</c><01:15:30.480><c> and</c><01:15:30.680><c> created</c><01:15:31.360><c> our</c><01:15:31.600><c> first</c><01:15:32.080><c> API</c>

01:15:32.550 --> 01:15:32.560 align:start position:0%
it went ahead and created our first API
 

01:15:32.560 --> 01:15:35.030 align:start position:0%
it went ahead and created our first API
stack<01:15:33.040><c> here.</c><01:15:33.360><c> And</c><01:15:33.720><c> right</c><01:15:34.160><c> here</c><01:15:34.440><c> it</c><01:15:34.560><c> mentions</c>

01:15:35.030 --> 01:15:35.040 align:start position:0%
stack here. And right here it mentions
 

01:15:35.040 --> 01:15:37.230 align:start position:0%
stack here. And right here it mentions
this<01:15:35.280><c> file</c><01:15:35.680><c> where</c><01:15:35.840><c> it</c><01:15:35.960><c> stores</c><01:15:36.400><c> this</c><01:15:36.680><c> key.</c><01:15:37.040><c> And</c>

01:15:37.230 --> 01:15:37.240 align:start position:0%
this file where it stores this key. And
 

01:15:37.240 --> 01:15:39.310 align:start position:0%
this file where it stores this key. And
so<01:15:37.480><c> if</c><01:15:37.720><c> you</c><01:15:37.840><c> want</c><01:15:38.040><c> to</c><01:15:38.120><c> use</c><01:15:38.360><c> a</c><01:15:38.480><c> real</c><01:15:38.880><c> key,</c><01:15:39.160><c> you</c>

01:15:39.310 --> 01:15:39.320 align:start position:0%
so if you want to use a real key, you
 

01:15:39.320 --> 01:15:41.310 align:start position:0%
so if you want to use a real key, you
never<01:15:39.760><c> want</c><01:15:39.960><c> to</c><01:15:40.040><c> paste</c><01:15:40.440><c> it</c><01:15:40.560><c> in</c><01:15:40.680><c> chat.</c><01:15:41.040><c> What</c><01:15:41.240><c> you</c>

01:15:41.310 --> 01:15:41.320 align:start position:0%
never want to paste it in chat. What you
 

01:15:41.320 --> 01:15:43.270 align:start position:0%
never want to paste it in chat. What you
want<01:15:41.480><c> to</c><01:15:41.560><c> do</c><01:15:41.720><c> is</c><01:15:41.840><c> you</c><01:15:41.920><c> want</c><01:15:42.120><c> to</c><01:15:42.200><c> open</c><01:15:42.560><c> this</c><01:15:42.800><c> file</c>

01:15:43.270 --> 01:15:43.280 align:start position:0%
want to do is you want to open this file
 

01:15:43.280 --> 01:15:45.470 align:start position:0%
want to do is you want to open this file
and<01:15:43.480><c> modify</c><01:15:44.120><c> it</c><01:15:44.280><c> directly.</c><01:15:45.000><c> So</c><01:15:45.080><c> that's</c><01:15:45.320><c> what</c>

01:15:45.470 --> 01:15:45.480 align:start position:0%
and modify it directly. So that's what
 

01:15:45.480 --> 01:15:46.590 align:start position:0%
and modify it directly. So that's what
we're<01:15:45.600><c> going</c><01:15:45.720><c> to</c><01:15:45.800><c> do.</c><01:15:45.920><c> We're</c><01:15:46.040><c> going</c><01:15:46.160><c> to</c><01:15:46.280><c> open</c>

01:15:46.590 --> 01:15:46.600 align:start position:0%
we're going to do. We're going to open
 

01:15:46.600 --> 01:15:48.510 align:start position:0%
we're going to do. We're going to open
this<01:15:46.800><c> in</c><01:15:46.880><c> the</c><01:15:47.000><c> editor</c><01:15:47.600><c> here</c><01:15:48.040><c> and</c><01:15:48.160><c> I'm</c><01:15:48.280><c> going</c><01:15:48.400><c> to</c>

01:15:48.510 --> 01:15:48.520 align:start position:0%
this in the editor here and I'm going to
 

01:15:48.520 --> 01:15:50.470 align:start position:0%
this in the editor here and I'm going to
paste<01:15:49.000><c> this</c><01:15:49.280><c> key</c><01:15:49.600><c> right</c><01:15:50.000><c> here.</c><01:15:50.200><c> And</c><01:15:50.280><c> this</c>

01:15:50.470 --> 01:15:50.480 align:start position:0%
paste this key right here. And this
 

01:15:50.480 --> 01:15:53.030 align:start position:0%
paste this key right here. And this
right<01:15:50.680><c> here</c><01:15:50.880><c> is</c><01:15:51.000><c> my</c><01:15:51.200><c> actual</c><01:15:51.680><c> key.</c><01:15:52.040><c> And</c><01:15:52.160><c> so</c><01:15:52.360><c> now</c>

01:15:53.030 --> 01:15:53.040 align:start position:0%
right here is my actual key. And so now
 

01:15:53.040 --> 01:15:55.950 align:start position:0%
right here is my actual key. And so now
I<01:15:53.240><c> have</c><01:15:53.520><c> an</c><01:15:53.720><c> OpenAI,</c><01:15:54.640><c> have</c><01:15:54.840><c> an</c><01:15:55.000><c> API</c><01:15:55.400><c> stack</c><01:15:55.840><c> and</c>

01:15:55.950 --> 01:15:55.960 align:start position:0%
I have an OpenAI, have an API stack and
 

01:15:55.960 --> 01:15:59.150 align:start position:0%
I have an OpenAI, have an API stack and
I<01:15:56.000><c> have</c><01:15:56.240><c> a</c><01:15:56.400><c> real</c><01:15:56.920><c> key</c><01:15:57.680><c> in</c><01:15:57.920><c> this</c><01:15:58.280><c> file</c><01:15:58.720><c> here,</c>

01:15:59.150 --> 01:15:59.160 align:start position:0%
I have a real key in this file here,
 

01:15:59.160 --> 01:16:01.750 align:start position:0%
I have a real key in this file here,
okay?<01:15:59.720><c> And</c><01:16:00.240><c> now</c><01:16:00.600><c> what</c><01:16:00.760><c> I</c><01:16:00.840><c> need</c><01:16:01.080><c> to</c><01:16:01.200><c> do</c><01:16:01.440><c> is</c><01:16:01.720><c> I</c>

01:16:01.750 --> 01:16:01.760 align:start position:0%
okay? And now what I need to do is I
 

01:16:01.760 --> 01:16:04.670 align:start position:0%
okay? And now what I need to do is I
need<01:16:02.080><c> to</c><01:16:02.240><c> run</c><01:16:02.480><c> a</c><01:16:02.560><c> check</c><01:16:03.160><c> and</c><01:16:03.320><c> ensure</c><01:16:04.080><c> that</c><01:16:04.480><c> we</c>

01:16:04.670 --> 01:16:04.680 align:start position:0%
need to run a check and ensure that we
 

01:16:04.680 --> 01:16:07.470 align:start position:0%
need to run a check and ensure that we
are<01:16:04.880><c> storing</c><01:16:05.360><c> the</c><01:16:05.480><c> keys</c><01:16:05.840><c> the</c><01:16:06.000><c> right</c><01:16:06.400><c> way</c><01:16:06.960><c> and,</c>

01:16:07.470 --> 01:16:07.480 align:start position:0%
are storing the keys the right way and,
 

01:16:07.480 --> 01:16:08.750 align:start position:0%
are storing the keys the right way and,
you<01:16:07.560><c> know,</c><01:16:07.680><c> they're</c><01:16:07.880><c> going</c><01:16:08.000><c> to</c><01:16:08.080><c> be</c><01:16:08.200><c> deployed</c>

01:16:08.750 --> 01:16:08.760 align:start position:0%
you know, they're going to be deployed
 

01:16:08.760 --> 01:16:10.390 align:start position:0%
you know, they're going to be deployed
correctly<01:16:09.320><c> and</c><01:16:09.440><c> all</c><01:16:09.600><c> that.</c><01:16:09.880><c> And</c><01:16:09.960><c> so</c><01:16:10.120><c> I</c><01:16:10.200><c> have</c>

01:16:10.390 --> 01:16:10.400 align:start position:0%
correctly and all that. And so I have
 

01:16:10.400 --> 01:16:12.550 align:start position:0%
correctly and all that. And so I have
this<01:16:10.640><c> prompt</c><01:16:11.120><c> to</c><01:16:11.240><c> do</c><01:16:11.440><c> just</c><01:16:11.760><c> that</c><01:16:12.120><c> and</c><01:16:12.240><c> it</c><01:16:12.360><c> says</c>

01:16:12.550 --> 01:16:12.560 align:start position:0%
this prompt to do just that and it says
 

01:16:12.560 --> 01:16:14.110 align:start position:0%
this prompt to do just that and it says
here<01:16:12.760><c> inspect</c><01:16:13.280><c> this</c><01:16:13.480><c> project</c><01:16:13.960><c> for</c>

01:16:14.110 --> 01:16:14.120 align:start position:0%
here inspect this project for
 

01:16:14.120 --> 01:16:15.990 align:start position:0%
here inspect this project for
environment<01:16:14.720><c> variables</c><01:16:15.280><c> and</c><01:16:15.440><c> deployment</c>

01:16:15.990 --> 01:16:16.000 align:start position:0%
environment variables and deployment
 

01:16:16.000 --> 01:16:18.350 align:start position:0%
environment variables and deployment
config.<01:16:16.400><c> Do</c><01:16:16.520><c> not</c><01:16:16.880><c> print</c><01:16:17.240><c> secret</c><01:16:17.680><c> values</c><01:16:18.200><c> and</c>

01:16:18.350 --> 01:16:18.360 align:start position:0%
config. Do not print secret values and
 

01:16:18.360 --> 01:16:19.830 align:start position:0%
config. Do not print secret values and
then<01:16:18.520><c> tell</c><01:16:18.800><c> me</c><01:16:18.920><c> all</c><01:16:19.120><c> of</c><01:16:19.200><c> these</c><01:16:19.440><c> things.</c><01:16:19.720><c> So</c>

01:16:19.830 --> 01:16:19.840 align:start position:0%
then tell me all of these things. So
 

01:16:19.840 --> 01:16:21.350 align:start position:0%
then tell me all of these things. So
we're<01:16:19.920><c> going</c><01:16:20.040><c> to</c><01:16:20.160><c> run</c><01:16:20.400><c> this.</c><01:16:20.760><c> So</c><01:16:20.880><c> now</c><01:16:21.120><c> it's</c>

01:16:21.350 --> 01:16:21.360 align:start position:0%
we're going to run this. So now it's
 

01:16:21.360 --> 01:16:23.910 align:start position:0%
we're going to run this. So now it's
telling<01:16:21.800><c> us</c><01:16:22.080><c> that</c><01:16:22.640><c> environment</c><01:16:23.320><c> inspection</c>

01:16:23.910 --> 01:16:23.920 align:start position:0%
telling us that environment inspection
 

01:16:23.920 --> 01:16:26.350 align:start position:0%
telling us that environment inspection
required<01:16:24.440><c> environment</c><01:16:25.000><c> variables</c><01:16:25.680><c> required</c>

01:16:26.350 --> 01:16:26.360 align:start position:0%
required environment variables required
 

01:16:26.360 --> 01:16:28.710 align:start position:0%
required environment variables required
only<01:16:26.640><c> for</c><01:16:26.840><c> post</c><01:16:27.400><c> OpenAI</c><01:16:28.320><c> front</c><01:16:28.600><c> end</c>

01:16:28.710 --> 01:16:28.720 align:start position:0%
only for post OpenAI front end
 

01:16:28.720 --> 01:16:29.950 align:start position:0%
only for post OpenAI front end
variables,<01:16:29.200><c> right?</c><01:16:29.440><c> We</c><01:16:29.520><c> don't</c><01:16:29.640><c> have</c><01:16:29.760><c> any</c>

01:16:29.950 --> 01:16:29.960 align:start position:0%
variables, right? We don't have any
 

01:16:29.960 --> 01:16:32.350 align:start position:0%
variables, right? We don't have any
public<01:16:30.560><c> because,</c><01:16:31.240><c> you</c><01:16:31.320><c> know,</c><01:16:31.480><c> sometimes</c><01:16:32.120><c> your</c>

01:16:32.350 --> 01:16:32.360 align:start position:0%
public because, you know, sometimes your
 

01:16:32.360 --> 01:16:34.190 align:start position:0%
public because, you know, sometimes your
app<01:16:32.560><c> can</c><01:16:32.720><c> have</c><01:16:32.960><c> both</c><01:16:33.200><c> private</c><01:16:33.680><c> keys</c><01:16:34.000><c> and</c>

01:16:34.190 --> 01:16:34.200 align:start position:0%
app can have both private keys and
 

01:16:34.200 --> 01:16:36.510 align:start position:0%
app can have both private keys and
public<01:16:34.640><c> keys,</c><01:16:34.960><c> right?</c><01:16:35.600><c> So</c><01:16:35.880><c> if</c><01:16:36.040><c> you're</c><01:16:36.200><c> using</c>

01:16:36.510 --> 01:16:36.520 align:start position:0%
public keys, right? So if you're using
 

01:16:36.520 --> 01:16:38.430 align:start position:0%
public keys, right? So if you're using
something<01:16:36.880><c> like</c><01:16:37.080><c> Superbase,</c><01:16:37.760><c> Superbase</c><01:16:38.240><c> has</c>

01:16:38.430 --> 01:16:38.440 align:start position:0%
something like Superbase, Superbase has
 

01:16:38.440 --> 01:16:41.870 align:start position:0%
something like Superbase, Superbase has
an<01:16:38.560><c> anon</c><01:16:39.000><c> key</c><01:16:39.480><c> or</c><01:16:39.960><c> a</c><01:16:40.480><c> secret</c><01:16:41.040><c> key</c><01:16:41.280><c> or</c><01:16:41.520><c> they</c><01:16:41.680><c> call</c>

01:16:41.870 --> 01:16:41.880 align:start position:0%
an anon key or a secret key or they call
 

01:16:41.880 --> 01:16:43.710 align:start position:0%
an anon key or a secret key or they call
it<01:16:41.960><c> something</c><01:16:42.320><c> else</c><01:16:42.520><c> now.</c><01:16:42.720><c> And</c><01:16:43.080><c> the</c><01:16:43.160><c> idea</c><01:16:43.520><c> is</c>

01:16:43.710 --> 01:16:43.720 align:start position:0%
it something else now. And the idea is
 

01:16:43.720 --> 01:16:46.350 align:start position:0%
it something else now. And the idea is
the<01:16:43.840><c> public</c><01:16:44.320><c> key</c><01:16:44.520><c> can</c><01:16:44.920><c> be</c><01:16:45.080><c> made</c><01:16:45.440><c> available,</c>

01:16:46.350 --> 01:16:46.360 align:start position:0%
the public key can be made available,
 

01:16:46.360 --> 01:16:48.070 align:start position:0%
the public key can be made available,
but<01:16:46.480><c> it</c><01:16:46.640><c> has</c><01:16:47.040><c> very,</c><01:16:47.480><c> very</c><01:16:47.720><c> strict</c>

01:16:48.070 --> 01:16:48.080 align:start position:0%
but it has very, very strict
 

01:16:48.080 --> 01:16:49.990 align:start position:0%
but it has very, very strict
permissions.<01:16:48.600><c> Whereas</c><01:16:49.040><c> something</c><01:16:49.480><c> like</c><01:16:49.760><c> your</c>

01:16:49.990 --> 01:16:50.000 align:start position:0%
permissions. Whereas something like your
 

01:16:50.000 --> 01:16:53.350 align:start position:0%
permissions. Whereas something like your
OpenAI<01:16:50.680><c> API</c><01:16:51.320><c> key</c><01:16:51.600><c> or</c><01:16:51.800><c> your</c><01:16:52.080><c> open</c><01:16:52.440><c> router</c><01:16:52.880><c> API</c>

01:16:53.350 --> 01:16:53.360 align:start position:0%
OpenAI API key or your open router API
 

01:16:53.360 --> 01:16:55.590 align:start position:0%
OpenAI API key or your open router API
key<01:16:53.600><c> or</c><01:16:53.800><c> something</c><01:16:54.320><c> of</c><01:16:54.440><c> that</c><01:16:54.680><c> sort</c><01:16:55.240><c> needs</c><01:16:55.520><c> to</c>

01:16:55.590 --> 01:16:55.600 align:start position:0%
key or something of that sort needs to
 

01:16:55.600 --> 01:16:58.390 align:start position:0%
key or something of that sort needs to
be<01:16:55.760><c> very,</c><01:16:56.400><c> very</c><01:16:56.800><c> secret,</c><01:16:57.560><c> right?</c><01:16:57.800><c> Because</c>

01:16:58.390 --> 01:16:58.400 align:start position:0%
be very, very secret, right? Because
 

01:16:58.400 --> 01:16:59.990 align:start position:0%
be very, very secret, right? Because
with<01:16:58.560><c> that</c><01:16:58.800><c> key,</c><01:16:59.040><c> you</c><01:16:59.160><c> can</c><01:16:59.320><c> make</c><01:16:59.560><c> a</c><01:16:59.600><c> lot</c><01:16:59.840><c> of</c>

01:16:59.990 --> 01:17:00.000 align:start position:0%
with that key, you can make a lot of
 

01:17:00.000 --> 01:17:02.790 align:start position:0%
with that key, you can make a lot of
calls<01:17:00.600><c> and</c><01:17:01.240><c> do</c><01:17:01.400><c> a</c><01:17:01.440><c> lot</c><01:17:01.680><c> of</c><01:17:01.840><c> things.</c><01:17:02.440><c> And</c><01:17:02.640><c> so</c>

01:17:02.790 --> 01:17:02.800 align:start position:0%
calls and do a lot of things. And so
 

01:17:02.800 --> 01:17:04.550 align:start position:0%
calls and do a lot of things. And so
here<01:17:03.040><c> it</c><01:17:03.160><c> says</c><01:17:03.440><c> we</c><01:17:03.560><c> have</c><01:17:03.760><c> a</c><01:17:03.840><c> private</c><01:17:04.360><c> key.</c>

01:17:04.550 --> 01:17:04.560 align:start position:0%
here it says we have a private key.
 

01:17:04.560 --> 01:17:06.910 align:start position:0%
here it says we have a private key.
OpenAI<01:17:05.160><c> PK</c><01:17:05.520><c> is</c><01:17:05.680><c> private</c><01:17:06.160><c> and</c><01:17:06.320><c> must</c><01:17:06.640><c> stay</c>

01:17:06.910 --> 01:17:06.920 align:start position:0%
OpenAI PK is private and must stay
 

01:17:06.920 --> 01:17:08.950 align:start position:0%
OpenAI PK is private and must stay
server-side.<01:17:07.720><c> It</c><01:17:07.840><c> is</c><01:17:08.000><c> used</c><01:17:08.320><c> here,</c><01:17:08.640><c> needed</c>

01:17:08.950 --> 01:17:08.960 align:start position:0%
server-side. It is used here, needed
 

01:17:08.960 --> 01:17:11.950 align:start position:0%
server-side. It is used here, needed
locally.<01:17:09.680><c> Hosted</c><01:17:10.280><c> service</c><01:17:10.720><c> config</c><01:17:11.160><c> or</c><01:17:11.280><c> cell</c>

01:17:11.950 --> 01:17:11.960 align:start position:0%
locally. Hosted service config or cell
 

01:17:11.960 --> 01:17:14.550 align:start position:0%
locally. Hosted service config or cell
or<01:17:12.120><c> another</c><01:17:12.520><c> node</c><01:17:12.840><c> capable</c><01:17:13.280><c> host</c><01:17:13.600><c> config</c><01:17:14.240><c> as</c><01:17:14.480><c> a</c>

01:17:14.550 --> 01:17:14.560 align:start position:0%
or another node capable host config as a
 

01:17:14.560 --> 01:17:16.630 align:start position:0%
or another node capable host config as a
private<01:17:15.120><c> server</c><01:17:15.480><c> environment</c><01:17:16.080><c> variables,</c>

01:17:16.630 --> 01:17:16.640 align:start position:0%
private server environment variables,
 

01:17:16.640 --> 01:17:19.830 align:start position:0%
private server environment variables,
port,<01:17:17.080><c> etc.,</c><01:17:17.600><c> etc.</c><01:17:18.160><c> Okay,</c><01:17:18.440><c> dot</c><01:17:18.880><c> env</c><01:17:19.160><c> examples</c>

01:17:19.830 --> 01:17:19.840 align:start position:0%
port, etc., etc. Okay, dot env examples
 

01:17:19.840 --> 01:17:21.710 align:start position:0%
port, etc., etc. Okay, dot env examples
cuz<01:17:20.000><c> currently</c><01:17:20.400><c> untracked.</c><01:17:20.960><c> So,</c><01:17:21.400><c> what</c><01:17:21.560><c> we</c>

01:17:21.710 --> 01:17:21.720 align:start position:0%
cuz currently untracked. So, what we
 

01:17:21.720 --> 01:17:23.910 align:start position:0%
cuz currently untracked. So, what we
have<01:17:21.960><c> safest</c><01:17:22.520><c> next</c><01:17:22.880><c> step</c><01:17:23.120><c> before</c><01:17:23.440><c> deploying,</c>

01:17:23.910 --> 01:17:23.920 align:start position:0%
have safest next step before deploying,
 

01:17:23.920 --> 01:17:26.590 align:start position:0%
have safest next step before deploying,
replace<01:17:24.520><c> it</c><01:17:24.680><c> with</c><01:17:24.920><c> only</c><01:17:25.240><c> this.</c><01:17:25.800><c> Only</c><01:17:26.160><c> config</c>

01:17:26.590 --> 01:17:26.600 align:start position:0%
replace it with only this. Only config
 

01:17:26.600 --> 01:17:28.030 align:start position:0%
replace it with only this. Only config
the<01:17:26.720><c> real</c><01:17:26.960><c> key</c><01:17:27.080><c> in</c><01:17:27.200><c> the</c><01:17:27.280><c> deployment</c>

01:17:28.030 --> 01:17:28.040 align:start position:0%
the real key in the deployment
 

01:17:28.040 --> 01:17:30.190 align:start position:0%
the real key in the deployment
provider's<01:17:28.720><c> private</c><01:17:29.160><c> environment</c><01:17:29.680><c> variable</c>

01:17:30.190 --> 01:17:30.200 align:start position:0%
provider's private environment variable
 

01:17:30.200 --> 01:17:33.510 align:start position:0%
provider's private environment variable
settings.<01:17:30.720><c> Okay.</c><01:17:31.200><c> So,</c><01:17:31.800><c> I</c><01:17:31.880><c> want</c><01:17:32.360><c> to</c><01:17:32.520><c> store</c><01:17:33.400><c> the</c>

01:17:33.510 --> 01:17:33.520 align:start position:0%
settings. Okay. So, I want to store the
 

01:17:33.520 --> 01:17:36.550 align:start position:0%
settings. Okay. So, I want to store the
key<01:17:33.800><c> locally</c><01:17:34.440><c> for</c><01:17:34.640><c> testing,</c><01:17:35.480><c> and</c><01:17:35.920><c> I</c><01:17:36.040><c> want</c><01:17:36.400><c> to</c>

01:17:36.550 --> 01:17:36.560 align:start position:0%
key locally for testing, and I want to
 

01:17:36.560 --> 01:17:40.190 align:start position:0%
key locally for testing, and I want to
ensure<01:17:37.560><c> that</c><01:17:38.120><c> it</c><01:17:38.360><c> will</c><01:17:38.560><c> be</c><01:17:38.720><c> deployed</c><01:17:39.680><c> also</c>

01:17:40.190 --> 01:17:40.200 align:start position:0%
ensure that it will be deployed also
 

01:17:40.200 --> 01:17:42.590 align:start position:0%
ensure that it will be deployed also
later.<01:17:41.040><c> And</c><01:17:41.160><c> so</c><01:17:41.320><c> we</c><01:17:41.440><c> want</c><01:17:41.720><c> that</c><01:17:41.920><c> key</c><01:17:42.080><c> locally</c>

01:17:42.590 --> 01:17:42.600 align:start position:0%
later. And so we want that key locally
 

01:17:42.600 --> 01:17:44.550 align:start position:0%
later. And so we want that key locally
so<01:17:42.680><c> that</c><01:17:42.840><c> we</c><01:17:42.960><c> can</c><01:17:43.120><c> test,</c><01:17:43.440><c> but</c><01:17:43.640><c> we</c><01:17:43.840><c> also</c><01:17:44.280><c> want</c><01:17:44.440><c> it</c>

01:17:44.550 --> 01:17:44.560 align:start position:0%
so that we can test, but we also want it
 

01:17:44.560 --> 01:17:46.230 align:start position:0%
so that we can test, but we also want it
to<01:17:44.640><c> deploy</c><01:17:45.160><c> it.</c><01:17:45.240><c> And</c><01:17:45.360><c> that</c><01:17:45.560><c> means</c><01:17:45.800><c> we</c><01:17:45.880><c> need</c><01:17:46.120><c> to</c>

01:17:46.230 --> 01:17:46.240 align:start position:0%
to deploy it. And that means we need to
 

01:17:46.240 --> 01:17:49.230 align:start position:0%
to deploy it. And that means we need to
create<01:17:47.000><c> a</c><01:17:47.080><c> couple</c><01:17:47.440><c> of</c><01:17:47.560><c> files,</c><01:17:48.320><c> one</c><01:17:48.520><c> for</c><01:17:48.800><c> local</c>

01:17:49.230 --> 01:17:49.240 align:start position:0%
create a couple of files, one for local
 

01:17:49.240 --> 01:17:50.990 align:start position:0%
create a couple of files, one for local
settings<01:17:49.760><c> and</c><01:17:49.960><c> one</c><01:17:50.160><c> for</c><01:17:50.360><c> deployment</c>

01:17:50.990 --> 01:17:51.000 align:start position:0%
settings and one for deployment
 

01:17:51.000 --> 01:17:52.790 align:start position:0%
settings and one for deployment
settings.<01:17:51.640><c> And</c><01:17:51.760><c> it's</c><01:17:51.960><c> telling</c><01:17:52.320><c> us</c><01:17:52.480><c> which</c><01:17:52.680><c> is</c>

01:17:52.790 --> 01:17:52.800 align:start position:0%
settings. And it's telling us which is
 

01:17:52.800 --> 01:17:55.470 align:start position:0%
settings. And it's telling us which is
the<01:17:52.960><c> wrong</c><01:17:53.320><c> file</c><01:17:53.800><c> for</c><01:17:54.000><c> local</c><01:17:54.400><c> secret</c><01:17:55.120><c> because</c>

01:17:55.470 --> 01:17:55.480 align:start position:0%
the wrong file for local secret because
 

01:17:55.480 --> 01:17:57.870 align:start position:0%
the wrong file for local secret because
examples<01:17:56.200><c> are</c><01:17:56.360><c> usually</c><01:17:56.800><c> committed.</c><01:17:57.560><c> So</c><01:17:57.680><c> let's</c>

01:17:57.870 --> 01:17:57.880 align:start position:0%
examples are usually committed. So let's
 

01:17:57.880 --> 01:18:00.150 align:start position:0%
examples are usually committed. So let's
say<01:17:58.040><c> we're</c><01:17:58.560><c> doing</c><01:17:58.920><c> a</c><01:17:59.000><c> Vercel</c><01:17:59.520><c> deploy.</c><01:18:00.000><c> We're</c>

01:18:00.150 --> 01:18:00.160 align:start position:0%
say we're doing a Vercel deploy. We're
 

01:18:00.160 --> 01:18:01.950 align:start position:0%
say we're doing a Vercel deploy. We're
going<01:18:00.280><c> to</c><01:18:00.360><c> switch</c><01:18:00.760><c> that.</c><01:18:01.320><c> And</c><01:18:01.440><c> there</c><01:18:01.640><c> we</c><01:18:01.760><c> have</c>

01:18:01.950 --> 01:18:01.960 align:start position:0%
going to switch that. And there we have
 

01:18:01.960 --> 01:18:04.190 align:start position:0%
going to switch that. And there we have
it,<01:18:02.040><c> store</c><01:18:02.480><c> the</c><01:18:02.640><c> real</c><01:18:02.920><c> key</c><01:18:03.160><c> locally</c><01:18:03.720><c> in</c><01:18:03.920><c> an</c>

01:18:04.190 --> 01:18:04.200 align:start position:0%
it, store the real key locally in an
 

01:18:04.200 --> 01:18:06.270 align:start position:0%
it, store the real key locally in an
untracked.<01:18:05.080><c> Right?</c><01:18:05.320><c> We</c><01:18:05.440><c> need</c><01:18:05.680><c> to</c><01:18:05.800><c> make</c><01:18:06.040><c> sure</c>

01:18:06.270 --> 01:18:06.280 align:start position:0%
untracked. Right? We need to make sure
 

01:18:06.280 --> 01:18:08.510 align:start position:0%
untracked. Right? We need to make sure
that<01:18:06.440><c> this</c><01:18:06.600><c> is</c><01:18:06.760><c> never</c><01:18:07.280><c> committed</c><01:18:07.880><c> to</c><01:18:08.000><c> Git.</c><01:18:08.360><c> It</c>

01:18:08.510 --> 01:18:08.520 align:start position:0%
that this is never committed to Git. It
 

01:18:08.520 --> 01:18:10.430 align:start position:0%
that this is never committed to Git. It
needs<01:18:08.760><c> to</c><01:18:08.880><c> be</c><01:18:09.040><c> untracked.</c><01:18:10.000><c> So</c><01:18:10.040><c> we're</c><01:18:10.200><c> going</c><01:18:10.360><c> to</c>

01:18:10.430 --> 01:18:10.440 align:start position:0%
needs to be untracked. So we're going to
 

01:18:10.440 --> 01:18:13.870 align:start position:0%
needs to be untracked. So we're going to
expand<01:18:11.160><c> this,</c><01:18:11.760><c> submit</c><01:18:12.400><c> this.</c><01:18:12.960><c> Do</c><01:18:13.120><c> not</c><01:18:13.560><c> use</c>

01:18:13.870 --> 01:18:13.880 align:start position:0%
expand this, submit this. Do not use
 

01:18:13.880 --> 01:18:16.190 align:start position:0%
expand this, submit this. Do not use
public.<01:18:14.480><c> These</c><01:18:14.720><c> are</c><01:18:14.840><c> not</c><01:18:15.160><c> public</c><01:18:15.600><c> keys.</c>

01:18:16.190 --> 01:18:16.200 align:start position:0%
public. These are not public keys.
 

01:18:16.200 --> 01:18:19.550 align:start position:0%
public. These are not public keys.
Replace<01:18:16.920><c> dot</c><01:18:17.240><c> env</c><01:18:17.520><c> example</c><01:18:18.160><c> with</c><01:18:18.680><c> create</c><01:18:19.240><c> dot</c>

01:18:19.550 --> 01:18:19.560 align:start position:0%
Replace dot env example with create dot
 

01:18:19.560 --> 01:18:21.350 align:start position:0%
Replace dot env example with create dot
env.<01:18:20.200><c> Okay,</c><01:18:20.520><c> so</c><01:18:20.640><c> it's</c><01:18:20.880><c> it's</c><01:18:21.040><c> going</c><01:18:21.160><c> to</c><01:18:21.240><c> be</c>

01:18:21.350 --> 01:18:21.360 align:start position:0%
env. Okay, so it's it's going to be
 

01:18:21.360 --> 01:18:24.110 align:start position:0%
env. Okay, so it's it's going to be
creating<01:18:21.760><c> this</c><01:18:21.960><c> dot</c><01:18:22.280><c> env.</c><01:18:22.840><c> The</c><01:18:22.960><c> secret</c><01:18:23.440><c> is</c><01:18:23.560><c> now</c>

01:18:24.110 --> 01:18:24.120 align:start position:0%
creating this dot env. The secret is now
 

01:18:24.120 --> 01:18:26.470 align:start position:0%
creating this dot env. The secret is now
ignored<01:18:24.840><c> in</c><01:18:25.000><c> dot</c><01:18:25.360><c> env.</c><01:18:25.880><c> And</c><01:18:26.040><c> then</c><01:18:26.240><c> I'm</c>

01:18:26.470 --> 01:18:26.480 align:start position:0%
ignored in dot env. And then I'm
 

01:18:26.480 --> 01:18:28.910 align:start position:0%
ignored in dot env. And then I'm
updating<01:18:27.080><c> readme</c><01:18:27.560><c> and</c><01:18:27.840><c> agents</c><01:18:28.440><c> to</c><01:18:28.560><c> make</c><01:18:28.800><c> the</c>

01:18:28.910 --> 01:18:28.920 align:start position:0%
updating readme and agents to make the
 

01:18:28.920 --> 01:18:32.270 align:start position:0%
updating readme and agents to make the
local<01:18:29.480><c> and</c><01:18:29.640><c> Vercel</c><01:18:30.160><c> setup</c><01:18:31.000><c> unambiguous.</c><01:18:32.120><c> And</c>

01:18:32.270 --> 01:18:32.280 align:start position:0%
local and Vercel setup unambiguous. And
 

01:18:32.280 --> 01:18:34.470 align:start position:0%
local and Vercel setup unambiguous. And
that<01:18:32.480><c> way</c><01:18:32.600><c> we</c><01:18:32.760><c> have</c><01:18:33.000><c> the</c><01:18:33.120><c> local</c><01:18:33.680><c> key</c><01:18:33.920><c> stored</c>

01:18:34.470 --> 01:18:34.480 align:start position:0%
that way we have the local key stored
 

01:18:34.480 --> 01:18:36.270 align:start position:0%
that way we have the local key stored
for<01:18:34.640><c> local</c><01:18:35.080><c> testing.</c><01:18:35.600><c> It's</c><01:18:35.800><c> never</c><01:18:36.040><c> going</c><01:18:36.200><c> to</c>

01:18:36.270 --> 01:18:36.280 align:start position:0%
for local testing. It's never going to
 

01:18:36.280 --> 01:18:38.790 align:start position:0%
for local testing. It's never going to
be<01:18:36.400><c> committed</c><01:18:36.880><c> into</c><01:18:37.200><c> Git</c><01:18:37.960><c> and</c><01:18:38.160><c> then</c><01:18:38.440><c> we'll</c><01:18:38.640><c> be</c>

01:18:38.790 --> 01:18:38.800 align:start position:0%
be committed into Git and then we'll be
 

01:18:38.800 --> 01:18:41.950 align:start position:0%
be committed into Git and then we'll be
able<01:18:39.160><c> to</c><01:18:39.360><c> send</c><01:18:39.840><c> that</c><01:18:40.080><c> key,</c><01:18:40.280><c> also</c><01:18:41.000><c> deploy</c><01:18:41.640><c> that</c>

01:18:41.950 --> 01:18:41.960 align:start position:0%
able to send that key, also deploy that
 

01:18:41.960 --> 01:18:44.550 align:start position:0%
able to send that key, also deploy that
key<01:18:42.600><c> on</c><01:18:42.800><c> Vercel</c><01:18:43.560><c> because</c><01:18:43.800><c> Vercel</c><01:18:44.240><c> is</c><01:18:44.360><c> going</c><01:18:44.480><c> to</c>

01:18:44.550 --> 01:18:44.560 align:start position:0%
key on Vercel because Vercel is going to
 

01:18:44.560 --> 01:18:46.310 align:start position:0%
key on Vercel because Vercel is going to
be<01:18:44.680><c> running</c><01:18:45.040><c> our</c><01:18:45.280><c> app.</c><01:18:45.520><c> It</c><01:18:45.600><c> needs</c><01:18:45.880><c> access</c><01:18:46.240><c> to</c>

01:18:46.310 --> 01:18:46.320 align:start position:0%
be running our app. It needs access to
 

01:18:46.320 --> 01:18:48.190 align:start position:0%
be running our app. It needs access to
that<01:18:46.520><c> key</c><01:18:46.680><c> as</c><01:18:46.840><c> well.</c><01:18:47.080><c> It</c><01:18:47.200><c> needs</c><01:18:47.400><c> to</c><01:18:47.520><c> be</c><01:18:47.640><c> secret.</c>

01:18:48.190 --> 01:18:48.200 align:start position:0%
that key as well. It needs to be secret.
 

01:18:48.200 --> 01:18:50.750 align:start position:0%
that key as well. It needs to be secret.
Okay,<01:18:48.480><c> implemented</c><01:18:49.200><c> the</c><01:18:49.360><c> local</c><01:18:49.880><c> Vercel</c><01:18:50.480><c> key</c>

01:18:50.750 --> 01:18:50.760 align:start position:0%
Okay, implemented the local Vercel key
 

01:18:50.760 --> 01:18:52.870 align:start position:0%
Okay, implemented the local Vercel key
setup.<01:18:51.280><c> And</c><01:18:51.440><c> so</c><01:18:51.600><c> in</c><01:18:51.720><c> this</c><01:18:52.000><c> point</c><01:18:52.360><c> we've</c><01:18:52.560><c> made</c>

01:18:52.870 --> 01:18:52.880 align:start position:0%
setup. And so in this point we've made
 

01:18:52.880 --> 01:18:55.230 align:start position:0%
setup. And so in this point we've made
the<01:18:53.160><c> the</c><01:18:53.440><c> secret</c><01:18:53.920><c> key</c><01:18:54.160><c> management</c><01:18:54.920><c> and</c><01:18:55.040><c> not</c>

01:18:55.230 --> 01:18:55.240 align:start position:0%
the the secret key management and not
 

01:18:55.240 --> 01:18:56.710 align:start position:0%
the the secret key management and not
just<01:18:55.480><c> secret</c><01:18:55.880><c> key,</c><01:18:56.040><c> any</c><01:18:56.280><c> kind</c><01:18:56.480><c> of</c><01:18:56.600><c> key</c>

01:18:56.710 --> 01:18:56.720 align:start position:0%
just secret key, any kind of key
 

01:18:56.720 --> 01:18:58.910 align:start position:0%
just secret key, any kind of key
management<01:18:57.480><c> is</c><01:18:57.600><c> part</c><01:18:57.840><c> of</c><01:18:58.000><c> our</c><01:18:58.200><c> workflow</c><01:18:58.800><c> and</c>

01:18:58.910 --> 01:18:58.920 align:start position:0%
management is part of our workflow and
 

01:18:58.920 --> 01:19:00.830 align:start position:0%
management is part of our workflow and
we<01:18:59.000><c> can</c><01:18:59.160><c> be</c><01:18:59.280><c> assured</c><01:18:59.960><c> that</c><01:19:00.200><c> we</c><01:19:00.320><c> have</c><01:19:00.520><c> the</c><01:19:00.640><c> key</c>

01:19:00.830 --> 01:19:00.840 align:start position:0%
we can be assured that we have the key
 

01:19:00.840 --> 01:19:03.150 align:start position:0%
we can be assured that we have the key
for<01:19:01.080><c> local</c><01:19:01.520><c> stuff</c><01:19:02.240><c> and</c><01:19:02.400><c> we</c><01:19:02.520><c> also</c><01:19:02.840><c> going</c><01:19:03.000><c> to</c><01:19:03.080><c> be</c>

01:19:03.150 --> 01:19:03.160 align:start position:0%
for local stuff and we also going to be
 

01:19:03.160 --> 01:19:05.150 align:start position:0%
for local stuff and we also going to be
deploying<01:19:03.760><c> the</c><01:19:03.880><c> key</c><01:19:04.080><c> correctly</c><01:19:05.000><c> for</c>

01:19:05.150 --> 01:19:05.160 align:start position:0%
deploying the key correctly for
 

01:19:05.160 --> 01:19:07.790 align:start position:0%
deploying the key correctly for
production<01:19:05.960><c> stuff,</c><01:19:06.600><c> regardless</c><01:19:07.360><c> what</c><01:19:07.560><c> kind</c>

01:19:07.790 --> 01:19:07.800 align:start position:0%
production stuff, regardless what kind
 

01:19:07.800 --> 01:19:12.310 align:start position:0%
production stuff, regardless what kind
of<01:19:07.920><c> host</c><01:19:08.320><c> you're</c><01:19:08.600><c> using.</c>

01:19:12.310 --> 01:19:12.320 align:start position:0%
 
 

01:19:12.320 --> 01:19:13.990 align:start position:0%
 
Now,<01:19:12.560><c> when</c><01:19:12.720><c> you're</c><01:19:12.880><c> developing</c><01:19:13.480><c> an</c><01:19:13.680><c> app,</c>

01:19:13.990 --> 01:19:14.000 align:start position:0%
Now, when you're developing an app,
 

01:19:14.000 --> 01:19:16.030 align:start position:0%
Now, when you're developing an app,
you're<01:19:14.200><c> going</c><01:19:14.360><c> to</c><01:19:14.440><c> be</c><01:19:14.600><c> writing</c><01:19:15.200><c> code</c><01:19:15.760><c> for</c><01:19:15.880><c> the</c>

01:19:16.030 --> 01:19:16.040 align:start position:0%
you're going to be writing code for the
 

01:19:16.040 --> 01:19:18.470 align:start position:0%
you're going to be writing code for the
core<01:19:16.440><c> stuff,</c><01:19:17.120><c> but</c><01:19:17.360><c> a</c><01:19:17.440><c> lot</c><01:19:17.800><c> of</c><01:19:17.960><c> things</c><01:19:18.320><c> that</c>

01:19:18.470 --> 01:19:18.480 align:start position:0%
core stuff, but a lot of things that
 

01:19:18.480 --> 01:19:20.670 align:start position:0%
core stuff, but a lot of things that
your<01:19:18.720><c> app</c><01:19:18.920><c> will</c><01:19:19.080><c> be</c><01:19:19.200><c> doing</c><01:19:19.680><c> will</c><01:19:19.880><c> be</c><01:19:20.040><c> done</c><01:19:20.400><c> by</c>

01:19:20.670 --> 01:19:20.680 align:start position:0%
your app will be doing will be done by
 

01:19:20.680 --> 01:19:22.390 align:start position:0%
your app will be doing will be done by
existing<01:19:21.480><c> code.</c><01:19:21.760><c> You're</c><01:19:21.880><c> not</c><01:19:22.080><c> going</c><01:19:22.200><c> to</c><01:19:22.280><c> be</c>

01:19:22.390 --> 01:19:22.400 align:start position:0%
existing code. You're not going to be
 

01:19:22.400 --> 01:19:24.510 align:start position:0%
existing code. You're not going to be
building<01:19:22.800><c> your</c><01:19:23.000><c> app</c><01:19:23.240><c> from</c><01:19:23.520><c> scratch,</c><01:19:24.200><c> right?</c>

01:19:24.510 --> 01:19:24.520 align:start position:0%
building your app from scratch, right?
 

01:19:24.520 --> 01:19:26.190 align:start position:0%
building your app from scratch, right?
You're<01:19:24.640><c> going</c><01:19:24.760><c> to</c><01:19:24.840><c> be</c><01:19:25.000><c> using</c><01:19:25.600><c> existing</c>

01:19:26.190 --> 01:19:26.200 align:start position:0%
You're going to be using existing
 

01:19:26.200 --> 01:19:28.550 align:start position:0%
You're going to be using existing
libraries,<01:19:26.960><c> existing</c><01:19:27.520><c> frameworks,</c><01:19:28.280><c> stuff</c>

01:19:28.550 --> 01:19:28.560 align:start position:0%
libraries, existing frameworks, stuff
 

01:19:28.560 --> 01:19:30.470 align:start position:0%
libraries, existing frameworks, stuff
like<01:19:28.760><c> that.</c><01:19:29.200><c> And</c><01:19:29.400><c> those</c><01:19:29.880><c> are</c><01:19:30.080><c> called</c>

01:19:30.470 --> 01:19:30.480 align:start position:0%
like that. And those are called
 

01:19:30.480 --> 01:19:32.310 align:start position:0%
like that. And those are called
dependencies<01:19:31.320><c> and</c><01:19:31.480><c> that</c><01:19:31.640><c> is</c><01:19:31.720><c> because</c><01:19:32.080><c> your</c>

01:19:32.310 --> 01:19:32.320 align:start position:0%
dependencies and that is because your
 

01:19:32.320 --> 01:19:35.070 align:start position:0%
dependencies and that is because your
app<01:19:32.920><c> depends</c><01:19:33.480><c> on</c><01:19:33.640><c> them</c><01:19:33.880><c> to</c><01:19:34.040><c> function.</c><01:19:34.560><c> Without</c>

01:19:35.070 --> 01:19:35.080 align:start position:0%
app depends on them to function. Without
 

01:19:35.080 --> 01:19:37.030 align:start position:0%
app depends on them to function. Without
those<01:19:35.360><c> things,</c><01:19:35.920><c> your</c><01:19:36.240><c> app</c><01:19:36.560><c> will</c><01:19:36.760><c> not</c>

01:19:37.030 --> 01:19:37.040 align:start position:0%
those things, your app will not
 

01:19:37.040 --> 01:19:39.830 align:start position:0%
those things, your app will not
function.<01:19:37.680><c> And</c><01:19:38.040><c> you</c><01:19:38.200><c> need</c><01:19:38.480><c> to</c><01:19:38.600><c> ensure</c><01:19:39.360><c> that</c>

01:19:39.830 --> 01:19:39.840 align:start position:0%
function. And you need to ensure that
 

01:19:39.840 --> 01:19:42.230 align:start position:0%
function. And you need to ensure that
you<01:19:39.960><c> have</c><01:19:40.160><c> a</c><01:19:40.240><c> process</c><01:19:41.080><c> for</c><01:19:41.360><c> managing</c><01:19:42.040><c> these</c>

01:19:42.230 --> 01:19:42.240 align:start position:0%
you have a process for managing these
 

01:19:42.240 --> 01:19:44.870 align:start position:0%
you have a process for managing these
dependencies.<01:19:43.160><c> And</c><01:19:43.760><c> I</c><01:19:43.840><c> have</c><01:19:44.040><c> here</c><01:19:44.320><c> a</c><01:19:44.400><c> prompt</c>

01:19:44.870 --> 01:19:44.880 align:start position:0%
dependencies. And I have here a prompt
 

01:19:44.880 --> 01:19:46.830 align:start position:0%
dependencies. And I have here a prompt
that<01:19:45.040><c> you</c><01:19:45.160><c> can</c><01:19:45.360><c> use</c><01:19:45.800><c> that</c><01:19:46.040><c> will</c><01:19:46.200><c> help</c><01:19:46.520><c> you</c>

01:19:46.830 --> 01:19:46.840 align:start position:0%
that you can use that will help you
 

01:19:46.840 --> 01:19:49.390 align:start position:0%
that you can use that will help you
inspect<01:19:47.320><c> this</c><01:19:47.520><c> project</c><01:19:48.160><c> before</c><01:19:48.600><c> adding</c><01:19:49.120><c> any</c>

01:19:49.390 --> 01:19:49.400 align:start position:0%
inspect this project before adding any
 

01:19:49.400 --> 01:19:51.470 align:start position:0%
inspect this project before adding any
dependencies.<01:19:50.120><c> Do</c><01:19:50.240><c> not</c><01:19:50.560><c> install</c><01:19:51.040><c> anything</c>

01:19:51.470 --> 01:19:51.480 align:start position:0%
dependencies. Do not install anything
 

01:19:51.480 --> 01:19:53.510 align:start position:0%
dependencies. Do not install anything
yet.<01:19:51.840><c> Tell</c><01:19:52.120><c> me</c><01:19:52.320><c> all</c><01:19:52.560><c> of</c><01:19:52.680><c> this.</c><01:19:53.000><c> And</c><01:19:53.160><c> so</c><01:19:53.280><c> let's</c>

01:19:53.510 --> 01:19:53.520 align:start position:0%
yet. Tell me all of this. And so let's
 

01:19:53.520 --> 01:19:55.390 align:start position:0%
yet. Tell me all of this. And so let's
go<01:19:53.640><c> ahead</c><01:19:53.880><c> and</c><01:19:54.040><c> run</c><01:19:54.280><c> this</c><01:19:54.520><c> prompt.</c><01:19:55.080><c> Right,</c><01:19:55.280><c> and</c>

01:19:55.390 --> 01:19:55.400 align:start position:0%
go ahead and run this prompt. Right, and
 

01:19:55.400 --> 01:19:57.030 align:start position:0%
go ahead and run this prompt. Right, and
this<01:19:55.600><c> is</c><01:19:55.720><c> what</c><01:19:55.880><c> it</c><01:19:56.000><c> came</c><01:19:56.280><c> back</c><01:19:56.680><c> with.</c>

01:19:57.030 --> 01:19:57.040 align:start position:0%
this is what it came back with.
 

01:19:57.040 --> 01:19:59.790 align:start position:0%
this is what it came back with.
Dependency<01:19:57.840><c> project</c><01:19:58.440><c> inspection.</c><01:19:59.160><c> Framework</c>

01:19:59.790 --> 01:19:59.800 align:start position:0%
Dependency project inspection. Framework
 

01:19:59.800 --> 01:20:01.670 align:start position:0%
Dependency project inspection. Framework
and<01:19:59.960><c> package</c><01:20:00.400><c> manager.</c><01:20:01.080><c> Framework</c>

01:20:01.670 --> 01:20:01.680 align:start position:0%
and package manager. Framework
 

01:20:01.680 --> 01:20:03.870 align:start position:0%
and package manager. Framework
non-detected.<01:20:02.600><c> This</c><01:20:02.720><c> appears</c><01:20:03.080><c> to</c><01:20:03.160><c> be</c><01:20:03.320><c> a</c><01:20:03.440><c> plain</c>

01:20:03.870 --> 01:20:03.880 align:start position:0%
non-detected. This appears to be a plain
 

01:20:03.880 --> 01:20:07.150 align:start position:0%
non-detected. This appears to be a plain
static<01:20:04.520><c> JavaScript</c><01:20:05.040><c> app</c><01:20:05.800><c> served</c><01:20:06.240><c> by</c><01:20:06.440><c> a</c><01:20:06.560><c> custom</c>

01:20:07.150 --> 01:20:07.160 align:start position:0%
static JavaScript app served by a custom
 

01:20:07.160 --> 01:20:09.110 align:start position:0%
static JavaScript app served by a custom
node<01:20:07.480><c> server.</c><01:20:07.880><c> Now,</c><01:20:08.080><c> of</c><01:20:08.240><c> course,</c><01:20:08.760><c> this</c><01:20:09.000><c> will</c>

01:20:09.110 --> 01:20:09.120 align:start position:0%
node server. Now, of course, this will
 

01:20:09.120 --> 01:20:11.870 align:start position:0%
node server. Now, of course, this will
definitely<01:20:09.680><c> not</c><01:20:10.120><c> be</c><01:20:10.280><c> the</c><01:20:10.440><c> case</c><01:20:11.200><c> when</c><01:20:11.400><c> it</c><01:20:11.520><c> comes</c>

01:20:11.870 --> 01:20:11.880 align:start position:0%
definitely not be the case when it comes
 

01:20:11.880 --> 01:20:13.430 align:start position:0%
definitely not be the case when it comes
to<01:20:12.000><c> your</c><01:20:12.280><c> real</c><01:20:12.640><c> apps.</c><01:20:13.080><c> You're</c><01:20:13.120><c> going</c><01:20:13.240><c> to</c><01:20:13.320><c> be</c>

01:20:13.430 --> 01:20:13.440 align:start position:0%
to your real apps. You're going to be
 

01:20:13.440 --> 01:20:15.630 align:start position:0%
to your real apps. You're going to be
using<01:20:13.720><c> some</c><01:20:13.960><c> kind</c><01:20:14.200><c> of</c><01:20:14.280><c> framework,</c><01:20:15.120><c> something</c>

01:20:15.630 --> 01:20:15.640 align:start position:0%
using some kind of framework, something
 

01:20:15.640 --> 01:20:18.710 align:start position:0%
using some kind of framework, something
that<01:20:16.200><c> will</c><01:20:16.560><c> make</c><01:20:17.040><c> your</c><01:20:17.360><c> app</c><01:20:17.840><c> behave</c><01:20:18.320><c> like</c><01:20:18.600><c> a</c>

01:20:18.710 --> 01:20:18.720 align:start position:0%
that will make your app behave like a
 

01:20:18.720 --> 01:20:20.790 align:start position:0%
that will make your app behave like a
real<01:20:19.040><c> app.</c><01:20:19.200><c> Here</c><01:20:19.400><c> we</c><01:20:19.520><c> just</c><01:20:19.720><c> have</c><01:20:19.920><c> a</c><01:20:20.040><c> very,</c><01:20:20.480><c> very</c>

01:20:20.790 --> 01:20:20.800 align:start position:0%
real app. Here we just have a very, very
 

01:20:20.800 --> 01:20:23.910 align:start position:0%
real app. Here we just have a very, very
plain<01:20:21.200><c> app.</c><01:20:21.920><c> Package</c><01:20:22.440><c> manager</c><01:20:22.920><c> non-detected.</c>

01:20:23.910 --> 01:20:23.920 align:start position:0%
plain app. Package manager non-detected.
 

01:20:23.920 --> 01:20:26.430 align:start position:0%
plain app. Package manager non-detected.
Oh,<01:20:24.200><c> none</c><01:20:24.520><c> of</c><01:20:24.680><c> this.</c><01:20:25.040><c> And</c><01:20:25.360><c> of</c><01:20:25.560><c> course,</c><01:20:26.160><c> when</c>

01:20:26.430 --> 01:20:26.440 align:start position:0%
Oh, none of this. And of course, when
 

01:20:26.440 --> 01:20:27.710 align:start position:0%
Oh, none of this. And of course, when
you're<01:20:26.640><c> going</c><01:20:26.760><c> to</c><01:20:26.840><c> be</c><01:20:26.960><c> building</c><01:20:27.360><c> your</c><01:20:27.520><c> app,</c>

01:20:27.710 --> 01:20:27.720 align:start position:0%
you're going to be building your app,
 

01:20:27.720 --> 01:20:29.070 align:start position:0%
you're going to be building your app,
you're<01:20:27.840><c> going</c><01:20:27.960><c> to</c><01:20:28.040><c> be</c><01:20:28.160><c> having</c><01:20:28.560><c> all</c><01:20:28.680><c> this</c><01:20:28.920><c> as</c>

01:20:29.070 --> 01:20:29.080 align:start position:0%
you're going to be having all this as
 

01:20:29.080 --> 01:20:31.790 align:start position:0%
you're going to be having all this as
well.<01:20:29.280><c> Available</c><01:20:29.840><c> scripts.</c><01:20:30.400><c> No</c><01:20:30.760><c> NPM</c><01:20:31.360><c> scripts</c>

01:20:31.790 --> 01:20:31.800 align:start position:0%
well. Available scripts. No NPM scripts
 

01:20:31.800 --> 01:20:33.310 align:start position:0%
well. Available scripts. No NPM scripts
exist<01:20:32.160><c> because</c><01:20:32.480><c> there's</c><01:20:32.680><c> no</c><01:20:32.840><c> package</c>

01:20:33.310 --> 01:20:33.320 align:start position:0%
exist because there's no package
 

01:20:33.320 --> 01:20:34.630 align:start position:0%
exist because there's no package
manager,<01:20:34.040><c> because</c><01:20:34.280><c> there's</c><01:20:34.440><c> no</c>

01:20:34.630 --> 01:20:34.640 align:start position:0%
manager, because there's no
 

01:20:34.640 --> 01:20:36.230 align:start position:0%
manager, because there's no
package.json.

01:20:36.230 --> 01:20:36.240 align:start position:0%
package.json.
 

01:20:36.240 --> 01:20:38.350 align:start position:0%
package.json.
Current<01:20:36.600><c> documented</c><01:20:37.280><c> run</c><01:20:37.520><c> command,</c><01:20:38.040><c> we</c><01:20:38.160><c> just</c>

01:20:38.350 --> 01:20:38.360 align:start position:0%
Current documented run command, we just
 

01:20:38.360 --> 01:20:41.030 align:start position:0%
Current documented run command, we just
have<01:20:38.600><c> this</c><01:20:38.960><c> very,</c><01:20:39.480><c> very</c><01:20:39.800><c> basic.</c><01:20:40.360><c> Definitely</c>

01:20:41.030 --> 01:20:41.040 align:start position:0%
have this very, very basic. Definitely
 

01:20:41.040 --> 01:20:42.990 align:start position:0%
have this very, very basic. Definitely
not<01:20:41.440><c> the</c><01:20:41.560><c> case</c><01:20:41.920><c> when</c><01:20:42.040><c> it</c><01:20:42.160><c> comes</c><01:20:42.400><c> to</c><01:20:42.480><c> production</c>

01:20:42.990 --> 01:20:43.000 align:start position:0%
not the case when it comes to production
 

01:20:43.000 --> 01:20:45.870 align:start position:0%
not the case when it comes to production
apps.<01:20:43.400><c> OpenAI</c><01:20:44.040><c> local</c><01:20:44.560><c> env</c><01:20:45.000><c> run</c><01:20:45.320><c> command.</c><01:20:45.760><c> So,</c>

01:20:45.870 --> 01:20:45.880 align:start position:0%
apps. OpenAI local env run command. So,
 

01:20:45.880 --> 01:20:47.870 align:start position:0%
apps. OpenAI local env run command. So,
we<01:20:46.000><c> have</c><01:20:46.280><c> this</c><01:20:46.720><c> relevant</c><01:20:47.320><c> install</c>

01:20:47.870 --> 01:20:47.880 align:start position:0%
we have this relevant install
 

01:20:47.880 --> 01:20:50.790 align:start position:0%
we have this relevant install
dependency.<01:20:48.520><c> So,</c><01:20:48.720><c> we</c><01:20:48.880><c> do</c><01:20:49.240><c> have</c><01:20:49.560><c> some</c><01:20:49.960><c> basic</c>

01:20:50.790 --> 01:20:50.800 align:start position:0%
dependency. So, we do have some basic
 

01:20:50.800 --> 01:20:53.470 align:start position:0%
dependency. So, we do have some basic
node<01:20:51.200><c> built-ins.</c><01:20:52.040><c> All</c><01:20:52.240><c> of</c><01:20:52.360><c> these</c><01:20:52.760><c> OpenAI</c>

01:20:53.470 --> 01:20:53.480 align:start position:0%
node built-ins. All of these OpenAI
 

01:20:53.480 --> 01:20:55.990 align:start position:0%
node built-ins. All of these OpenAI
calls<01:20:53.920><c> native</c><01:20:54.360><c> fetch,</c><01:20:54.960><c> okay?</c><01:20:55.400><c> So,</c><01:20:55.760><c> it's</c>

01:20:55.990 --> 01:20:56.000 align:start position:0%
calls native fetch, okay? So, it's
 

01:20:56.000 --> 01:20:59.070 align:start position:0%
calls native fetch, okay? So, it's
native.<01:20:56.600><c> It's</c><01:20:56.800><c> not</c><01:20:57.040><c> using</c><01:20:57.320><c> the</c><01:20:57.440><c> OpenAI</c><01:20:58.320><c> SDK,</c>

01:20:59.070 --> 01:20:59.080 align:start position:0%
native. It's not using the OpenAI SDK,
 

01:20:59.080 --> 01:21:00.910 align:start position:0%
native. It's not using the OpenAI SDK,
which<01:20:59.320><c> would</c><01:20:59.440><c> have</c><01:20:59.560><c> been</c><01:20:59.800><c> a</c><01:21:00.000><c> dependency.</c><01:21:00.760><c> Can</c>

01:21:00.910 --> 01:21:00.920 align:start position:0%
which would have been a dependency. Can
 

01:21:00.920 --> 01:21:03.150 align:start position:0%
which would have been a dependency. Can
the<01:21:01.080><c> task</c><01:21:01.520><c> be</c><01:21:01.640><c> completed</c><01:21:02.160><c> without</c><01:21:02.720><c> adding</c><01:21:03.040><c> a</c>

01:21:03.150 --> 01:21:03.160 align:start position:0%
the task be completed without adding a
 

01:21:03.160 --> 01:21:05.830 align:start position:0%
the task be completed without adding a
package?<01:21:03.720><c> Yes,</c><01:21:04.160><c> for</c><01:21:04.280><c> the</c><01:21:04.400><c> current</c><01:21:04.840><c> OpenAI</c><01:21:05.480><c> API</c>

01:21:05.830 --> 01:21:05.840 align:start position:0%
package? Yes, for the current OpenAI API
 

01:21:05.840 --> 01:21:07.510 align:start position:0%
package? Yes, for the current OpenAI API
stack<01:21:06.200><c> and</c><01:21:06.320><c> local</c><01:21:06.600><c> serving,</c><01:21:07.000><c> the</c><01:21:07.120><c> project</c>

01:21:07.510 --> 01:21:07.520 align:start position:0%
stack and local serving, the project
 

01:21:07.520 --> 01:21:10.870 align:start position:0%
stack and local serving, the project
already<01:21:08.240><c> calls</c><01:21:08.680><c> OpenAI</c><01:21:09.440><c> via</c><01:21:09.880><c> native</c><01:21:10.320><c> fetch.</c>

01:21:10.870 --> 01:21:10.880 align:start position:0%
already calls OpenAI via native fetch.
 

01:21:10.880 --> 01:21:13.030 align:start position:0%
already calls OpenAI via native fetch.
If<01:21:11.040><c> a</c><01:21:11.160><c> new</c><01:21:11.400><c> package</c><01:21:11.880><c> is</c><01:21:12.080><c> recommended,</c><01:21:12.880><c> no</c>

01:21:13.030 --> 01:21:13.040 align:start position:0%
If a new package is recommended, no
 

01:21:13.040 --> 01:21:14.870 align:start position:0%
If a new package is recommended, no
package<01:21:13.480><c> is</c><01:21:13.680><c> recommended</c><01:21:14.320><c> right</c><01:21:14.520><c> now.</c><01:21:14.760><c> A</c>

01:21:14.870 --> 01:21:14.880 align:start position:0%
package is recommended right now. A
 

01:21:14.880 --> 01:21:17.310 align:start position:0%
package is recommended right now. A
package<01:21:15.400><c> could</c><01:21:15.640><c> be</c><01:21:15.720><c> recommended</c><01:21:16.360><c> later</c><01:21:16.960><c> if</c><01:21:17.160><c> we</c>

01:21:17.310 --> 01:21:17.320 align:start position:0%
package could be recommended later if we
 

01:21:17.320 --> 01:21:20.390 align:start position:0%
package could be recommended later if we
use<01:21:17.560><c> Express,</c><01:21:18.360><c> Fastify,</c><01:21:19.520><c> we</c><01:21:19.680><c> start</c><01:21:20.040><c> using</c><01:21:20.280><c> the</c>

01:21:20.390 --> 01:21:20.400 align:start position:0%
use Express, Fastify, we start using the
 

01:21:20.400 --> 01:21:24.310 align:start position:0%
use Express, Fastify, we start using the
official<01:21:20.880><c> SDK,</c><01:21:22.000><c> .env</c><01:21:23.040><c> files</c><01:21:23.600><c> likely</c><01:21:24.160><c> to</c>

01:21:24.310 --> 01:21:24.320 align:start position:0%
official SDK, .env files likely to
 

01:21:24.320 --> 01:21:26.790 align:start position:0%
official SDK, .env files likely to
change<01:21:24.880><c> if</c><01:21:25.120><c> proceeding,</c><01:21:26.000><c> right?</c><01:21:26.360><c> API</c>

01:21:26.790 --> 01:21:26.800 align:start position:0%
change if proceeding, right? API
 

01:21:26.800 --> 01:21:30.430 align:start position:0%
change if proceeding, right? API
behavior,<01:21:27.560><c> OpenAI</c><01:21:28.200><c> calls,</c><01:21:28.880><c> front</c><01:21:29.280><c> end,</c><01:21:29.880><c> etc.,</c>

01:21:30.430 --> 01:21:30.440 align:start position:0%
behavior, OpenAI calls, front end, etc.,
 

01:21:30.440 --> 01:21:33.350 align:start position:0%
behavior, OpenAI calls, front end, etc.,
etc.<01:21:31.480><c> And</c><01:21:31.600><c> so,</c><01:21:31.840><c> dependencies</c><01:21:32.680><c> are</c><01:21:32.800><c> important,</c>

01:21:33.350 --> 01:21:33.360 align:start position:0%
etc. And so, dependencies are important,
 

01:21:33.360 --> 01:21:35.230 align:start position:0%
etc. And so, dependencies are important,
and<01:21:33.480><c> you</c><01:21:33.560><c> want</c><01:21:33.760><c> to</c><01:21:33.880><c> limit</c><01:21:34.360><c> your</c><01:21:34.560><c> dependencies.</c>

01:21:35.230 --> 01:21:35.240 align:start position:0%
and you want to limit your dependencies.
 

01:21:35.240 --> 01:21:37.870 align:start position:0%
and you want to limit your dependencies.
You<01:21:35.320><c> don't</c><01:21:35.520><c> want</c><01:21:35.760><c> the</c><01:21:35.880><c> system</c><01:21:36.800><c> to</c><01:21:37.280><c> just</c><01:21:37.600><c> add</c>

01:21:37.870 --> 01:21:37.880 align:start position:0%
You don't want the system to just add
 

01:21:37.880 --> 01:21:40.150 align:start position:0%
You don't want the system to just add
dependencies<01:21:38.640><c> blindly.</c><01:21:39.280><c> And</c><01:21:39.440><c> so,</c><01:21:39.680><c> this</c><01:21:40.040><c> is</c>

01:21:40.150 --> 01:21:40.160 align:start position:0%
dependencies blindly. And so, this is
 

01:21:40.160 --> 01:21:42.390 align:start position:0%
dependencies blindly. And so, this is
going<01:21:40.400><c> to</c><01:21:40.520><c> be</c><01:21:40.680><c> super</c><01:21:41.160><c> useful</c><01:21:41.920><c> as</c><01:21:42.120><c> you're</c>

01:21:42.390 --> 01:21:42.400 align:start position:0%
going to be super useful as you're
 

01:21:42.400 --> 01:21:43.870 align:start position:0%
going to be super useful as you're
building<01:21:42.920><c> your</c><01:21:43.160><c> app</c><01:21:43.360><c> so</c><01:21:43.480><c> that</c><01:21:43.640><c> you</c><01:21:43.720><c> can</c>

01:21:43.870 --> 01:21:43.880 align:start position:0%
building your app so that you can
 

01:21:43.880 --> 01:21:45.990 align:start position:0%
building your app so that you can
streamline<01:21:44.640><c> it.</c><01:21:44.760><c> Because</c><01:21:45.240><c> as</c><01:21:45.400><c> I</c><01:21:45.520><c> was</c><01:21:45.720><c> just</c>

01:21:45.990 --> 01:21:46.000 align:start position:0%
streamline it. Because as I was just
 

01:21:46.000 --> 01:21:48.790 align:start position:0%
streamline it. Because as I was just
building<01:21:46.440><c> this</c><01:21:46.680><c> simple</c><01:21:47.120><c> app,</c><01:21:47.480><c> Codex</c><01:21:48.160><c> asked</c><01:21:48.600><c> me</c>

01:21:48.790 --> 01:21:48.800 align:start position:0%
building this simple app, Codex asked me
 

01:21:48.800 --> 01:21:51.310 align:start position:0%
building this simple app, Codex asked me
whether<01:21:49.160><c> I</c><01:21:49.240><c> want</c><01:21:49.440><c> to</c><01:21:49.520><c> use</c><01:21:49.920><c> OpenAI</c><01:21:50.560><c> SDK</c><01:21:51.160><c> or</c>

01:21:51.310 --> 01:21:51.320 align:start position:0%
whether I want to use OpenAI SDK or
 

01:21:51.320 --> 01:21:53.670 align:start position:0%
whether I want to use OpenAI SDK or
native<01:21:51.800><c> fetch.</c><01:21:52.200><c> And</c><01:21:52.320><c> you</c><01:21:52.440><c> always</c><01:21:52.920><c> want</c><01:21:53.160><c> to</c><01:21:53.320><c> err</c>

01:21:53.670 --> 01:21:53.680 align:start position:0%
native fetch. And you always want to err
 

01:21:53.680 --> 01:21:55.950 align:start position:0%
native fetch. And you always want to err
on<01:21:53.840><c> the</c><01:21:53.960><c> side</c><01:21:54.520><c> of</c><01:21:54.720><c> native</c><01:21:55.160><c> stuff.</c><01:21:55.560><c> If</c><01:21:55.680><c> you</c><01:21:55.800><c> can</c>

01:21:55.950 --> 01:21:55.960 align:start position:0%
on the side of native stuff. If you can
 

01:21:55.960 --> 01:21:58.790 align:start position:0%
on the side of native stuff. If you can
avoid<01:21:56.440><c> a</c><01:21:56.520><c> dependency</c><01:21:57.360><c> or</c><01:21:57.520><c> an</c><01:21:57.640><c> SDK,</c><01:21:58.400><c> that</c><01:21:58.640><c> would</c>

01:21:58.790 --> 01:21:58.800 align:start position:0%
avoid a dependency or an SDK, that would
 

01:21:58.800 --> 01:22:00.390 align:start position:0%
avoid a dependency or an SDK, that would
be<01:21:58.920><c> the</c><01:21:59.040><c> right</c><01:21:59.360><c> move.</c><01:21:59.640><c> And</c><01:21:59.720><c> that's</c><01:21:59.960><c> exactly</c>

01:22:00.390 --> 01:22:00.400 align:start position:0%
be the right move. And that's exactly
 

01:22:00.400 --> 01:22:02.230 align:start position:0%
be the right move. And that's exactly
what<01:22:00.560><c> I</c><01:22:00.640><c> did</c><01:22:00.840><c> here.</c><01:22:01.040><c> I</c><01:22:01.080><c> just</c><01:22:01.320><c> used</c><01:22:01.520><c> native,</c>

01:22:02.230 --> 01:22:02.240 align:start position:0%
what I did here. I just used native,
 

01:22:02.240 --> 01:22:03.990 align:start position:0%
what I did here. I just used native,
right?<01:22:02.520><c> I</c><01:22:02.560><c> could</c><01:22:02.760><c> have</c><01:22:02.880><c> used</c><01:22:03.080><c> an</c><01:22:03.200><c> SDK,</c><01:22:03.760><c> but</c><01:22:03.920><c> I</c>

01:22:03.990 --> 01:22:04.000 align:start position:0%
right? I could have used an SDK, but I
 

01:22:04.000 --> 01:22:05.630 align:start position:0%
right? I could have used an SDK, but I
decided<01:22:04.640><c> I'm</c><01:22:04.720><c> just</c><01:22:04.920><c> going</c><01:22:05.040><c> to</c><01:22:05.120><c> keep</c><01:22:05.280><c> it</c><01:22:05.440><c> as</c>

01:22:05.630 --> 01:22:05.640 align:start position:0%
decided I'm just going to keep it as
 

01:22:05.640 --> 01:22:07.390 align:start position:0%
decided I'm just going to keep it as
simple<01:22:06.160><c> as</c><01:22:06.360><c> possible.</c><01:22:06.840><c> And</c><01:22:06.920><c> that's</c><01:22:07.160><c> really</c>

01:22:07.390 --> 01:22:07.400 align:start position:0%
simple as possible. And that's really
 

01:22:07.400 --> 01:22:09.790 align:start position:0%
simple as possible. And that's really
the<01:22:07.520><c> goal</c><01:22:07.800><c> here.</c><01:22:08.080><c> And</c><01:22:08.280><c> this</c><01:22:08.600><c> prompt</c><01:22:09.240><c> and</c>

01:22:09.790 --> 01:22:09.800 align:start position:0%
the goal here. And this prompt and
 

01:22:09.800 --> 01:22:11.750 align:start position:0%
the goal here. And this prompt and
making<01:22:10.280><c> this</c><01:22:10.480><c> part</c><01:22:10.720><c> of</c><01:22:10.840><c> your</c><01:22:11.080><c> workflow</c><01:22:11.600><c> is</c>

01:22:11.750 --> 01:22:11.760 align:start position:0%
making this part of your workflow is
 

01:22:11.760 --> 01:22:14.470 align:start position:0%
making this part of your workflow is
going<01:22:11.920><c> to</c><01:22:12.040><c> enable</c><01:22:12.800><c> you</c><01:22:13.360><c> to</c><01:22:13.600><c> keep</c><01:22:14.000><c> your</c><01:22:14.280><c> app</c>

01:22:14.470 --> 01:22:14.480 align:start position:0%
going to enable you to keep your app
 

01:22:14.480 --> 01:22:16.030 align:start position:0%
going to enable you to keep your app
streamlined<01:22:15.240><c> so</c><01:22:15.280><c> that</c><01:22:15.480><c> you</c><01:22:15.560><c> have</c><01:22:15.760><c> less</c>

01:22:16.030 --> 01:22:16.040 align:start position:0%
streamlined so that you have less
 

01:22:16.040 --> 01:22:18.230 align:start position:0%
streamlined so that you have less
dependencies,<01:22:16.880><c> less</c><01:22:17.240><c> chance</c><01:22:17.680><c> for</c><01:22:17.800><c> something</c>

01:22:18.230 --> 01:22:18.240 align:start position:0%
dependencies, less chance for something
 

01:22:18.240 --> 01:22:21.510 align:start position:0%
dependencies, less chance for something
to<01:22:18.360><c> go</c><01:22:18.600><c> wrong,</c><01:22:19.040><c> less</c><01:22:19.520><c> bloat,</c><01:22:20.120><c> etc.,</c><01:22:20.760><c> etc.</c><01:22:21.320><c> So,</c>

01:22:21.510 --> 01:22:21.520 align:start position:0%
to go wrong, less bloat, etc., etc. So,
 

01:22:21.520 --> 01:22:24.550 align:start position:0%
to go wrong, less bloat, etc., etc. So,
definitely<01:22:22.120><c> add</c><01:22:22.520><c> this</c><01:22:23.040><c> to</c><01:22:23.280><c> your</c><01:22:23.720><c> app</c><01:22:24.040><c> building</c>

01:22:24.550 --> 01:22:24.560 align:start position:0%
definitely add this to your app building
 

01:22:24.560 --> 01:22:26.110 align:start position:0%
definitely add this to your app building
workflow.<01:22:25.000><c> And</c><01:22:25.120><c> then</c><01:22:25.200><c> ensure</c><01:22:25.480><c> that</c><01:22:25.680><c> Codex</c>

01:22:26.110 --> 01:22:26.120 align:start position:0%
workflow. And then ensure that Codex
 

01:22:26.120 --> 01:22:28.790 align:start position:0%
workflow. And then ensure that Codex
knows<01:22:26.520><c> about</c><01:22:26.880><c> it</c><01:22:27.120><c> by</c><01:22:27.320><c> making</c><01:22:27.800><c> this</c><01:22:28.080><c> a</c><01:22:28.200><c> part</c><01:22:28.640><c> of</c>

01:22:28.790 --> 01:22:28.800 align:start position:0%
knows about it by making this a part of
 

01:22:28.800 --> 01:22:34.910 align:start position:0%
knows about it by making this a part of
your<01:22:29.080><c> agent's</c><01:22:29.560><c> MD</c><01:22:30.120><c> or</c><01:22:30.440><c> a</c><01:22:30.560><c> separate</c><01:22:31.480><c> step.</c>

01:22:34.910 --> 01:22:34.920 align:start position:0%
 
 

01:22:34.920 --> 01:22:37.350 align:start position:0%
 
Now<01:22:35.160><c> that</c><01:22:35.360><c> the</c><01:22:35.480><c> Cortex</c><01:22:35.880><c> foundation</c><01:22:36.480><c> is</c><01:22:36.680><c> clear,</c>

01:22:37.350 --> 01:22:37.360 align:start position:0%
Now that the Cortex foundation is clear,
 

01:22:37.360 --> 01:22:39.190 align:start position:0%
Now that the Cortex foundation is clear,
we<01:22:37.520><c> are</c><01:22:37.640><c> going</c><01:22:37.880><c> to</c><01:22:38.040><c> start</c><01:22:38.520><c> with</c><01:22:38.720><c> something</c>

01:22:39.190 --> 01:22:39.200 align:start position:0%
we are going to start with something
 

01:22:39.200 --> 01:22:42.310 align:start position:0%
we are going to start with something
intentionally<01:22:40.000><c> small.</c><01:22:41.120><c> The</c><01:22:41.240><c> first</c><01:22:41.680><c> step</c><01:22:42.160><c> is</c>

01:22:42.310 --> 01:22:42.320 align:start position:0%
intentionally small. The first step is
 

01:22:42.320 --> 01:22:45.470 align:start position:0%
intentionally small. The first step is
called<01:22:42.840><c> Habit</c><01:22:43.320><c> Card.</c><01:22:44.240><c> And</c><01:22:44.400><c> it</c><01:22:44.520><c> is</c><01:22:44.680><c> a</c><01:22:44.800><c> tiny</c>

01:22:45.470 --> 01:22:45.480 align:start position:0%
called Habit Card. And it is a tiny
 

01:22:45.480 --> 01:22:48.030 align:start position:0%
called Habit Card. And it is a tiny
habit<01:22:45.960><c> tracker</c><01:22:46.880><c> where</c><01:22:47.160><c> users</c><01:22:47.640><c> can</c><01:22:47.800><c> add</c>

01:22:48.030 --> 01:22:48.040 align:start position:0%
habit tracker where users can add
 

01:22:48.040 --> 01:22:50.910 align:start position:0%
habit tracker where users can add
habits,<01:22:49.160><c> check</c><01:22:49.480><c> them</c><01:22:49.680><c> off</c><01:22:49.920><c> for</c><01:22:50.040><c> the</c><01:22:50.160><c> day,</c><01:22:50.680><c> and</c>

01:22:50.910 --> 01:22:50.920 align:start position:0%
habits, check them off for the day, and
 

01:22:50.920 --> 01:22:54.150 align:start position:0%
habits, check them off for the day, and
see<01:22:51.240><c> a</c><01:22:51.400><c> simple</c><01:22:52.040><c> streak</c><01:22:52.840><c> or</c><01:22:53.080><c> count.</c><01:22:53.760><c> This</c><01:22:53.960><c> is</c><01:22:54.080><c> a</c>

01:22:54.150 --> 01:22:54.160 align:start position:0%
see a simple streak or count. This is a
 

01:22:54.160 --> 01:22:56.590 align:start position:0%
see a simple streak or count. This is a
great<01:22:54.520><c> starter</c><01:22:55.000><c> project</c><01:22:55.680><c> because</c><01:22:56.000><c> the</c><01:22:56.120><c> result</c>

01:22:56.590 --> 01:22:56.600 align:start position:0%
great starter project because the result
 

01:22:56.600 --> 01:22:59.870 align:start position:0%
great starter project because the result
is<01:22:56.800><c> visual,</c><01:22:57.800><c> easy</c><01:22:58.160><c> to</c><01:22:58.280><c> check,</c><01:22:59.120><c> and</c><01:22:59.360><c> small</c>

01:22:59.870 --> 01:22:59.880 align:start position:0%
is visual, easy to check, and small
 

01:22:59.880 --> 01:23:02.950 align:start position:0%
is visual, easy to check, and small
enough<01:23:00.320><c> that</c><01:23:00.560><c> every</c><01:23:00.880><c> step</c><01:23:01.480><c> stays</c><01:23:01.920><c> clear.</c>

01:23:02.950 --> 01:23:02.960 align:start position:0%
enough that every step stays clear.
 

01:23:02.960 --> 01:23:06.430 align:start position:0%
enough that every step stays clear.
Cortex<01:23:03.440><c> can</c><01:23:03.680><c> plan</c><01:23:04.120><c> the</c><01:23:04.280><c> app,</c><01:23:05.120><c> build</c><01:23:05.480><c> the</c><01:23:05.560><c> UI,</c>

01:23:06.430 --> 01:23:06.440 align:start position:0%
Cortex can plan the app, build the UI,
 

01:23:06.440 --> 01:23:09.070 align:start position:0%
Cortex can plan the app, build the UI,
show<01:23:06.960><c> us</c><01:23:07.160><c> the</c><01:23:07.280><c> file</c><01:23:07.720><c> changes,</c><01:23:08.640><c> open</c><01:23:08.960><c> the</c>

01:23:09.070 --> 01:23:09.080 align:start position:0%
show us the file changes, open the
 

01:23:09.080 --> 01:23:12.070 align:start position:0%
show us the file changes, open the
browser,<01:23:09.840><c> polish</c><01:23:10.320><c> the</c><01:23:10.480><c> result,</c><01:23:11.520><c> and</c><01:23:11.720><c> get</c><01:23:11.960><c> the</c>

01:23:12.070 --> 01:23:12.080 align:start position:0%
browser, polish the result, and get the
 

01:23:12.080 --> 01:23:15.550 align:start position:0%
browser, polish the result, and get the
front<01:23:12.480><c> end</c><01:23:12.720><c> ready</c><01:23:13.240><c> to</c><01:23:13.360><c> deploy</c><01:23:14.520><c> without</c><01:23:14.960><c> also</c>

01:23:15.550 --> 01:23:15.560 align:start position:0%
front end ready to deploy without also
 

01:23:15.560 --> 01:23:18.870 align:start position:0%
front end ready to deploy without also
introducing<01:23:16.480><c> back</c><01:23:16.960><c> end</c><01:23:17.480><c> complexity.</c><01:23:18.440><c> Habit</c>

01:23:18.870 --> 01:23:18.880 align:start position:0%
introducing back end complexity. Habit
 

01:23:18.880 --> 01:23:20.870 align:start position:0%
introducing back end complexity. Habit
Card<01:23:19.200><c> gives</c><01:23:19.440><c> us</c><01:23:19.600><c> the</c><01:23:19.720><c> core</c><01:23:20.200><c> app</c><01:23:20.440><c> building</c>

01:23:20.870 --> 01:23:20.880 align:start position:0%
Card gives us the core app building
 

01:23:20.880 --> 01:23:24.710 align:start position:0%
Card gives us the core app building
pieces<01:23:21.840><c> without</c><01:23:22.320><c> much</c><01:23:23.040><c> product</c><01:23:23.520><c> complexity.</c>

01:23:24.710 --> 01:23:24.720 align:start position:0%
pieces without much product complexity.
 

01:23:24.720 --> 01:23:28.630 align:start position:0%
pieces without much product complexity.
A<01:23:24.920><c> form,</c><01:23:25.600><c> a</c><01:23:25.760><c> list,</c><01:23:26.400><c> a</c><01:23:26.600><c> daily</c><01:23:27.080><c> check-in</c><01:23:27.640><c> state,</c>

01:23:28.630 --> 01:23:28.640 align:start position:0%
A form, a list, a daily check-in state,
 

01:23:28.640 --> 01:23:32.710 align:start position:0%
A form, a list, a daily check-in state,
simple<01:23:29.240><c> feedback,</c><01:23:30.480><c> and</c><01:23:30.760><c> later</c><01:23:31.440><c> local</c><01:23:32.000><c> storage</c>

01:23:32.710 --> 01:23:32.720 align:start position:0%
simple feedback, and later local storage
 

01:23:32.720 --> 01:23:34.430 align:start position:0%
simple feedback, and later local storage
persistence.<01:23:33.520><c> It</c><01:23:33.680><c> does</c><01:23:33.880><c> not</c><01:23:34.200><c> need</c>

01:23:34.430 --> 01:23:34.440 align:start position:0%
persistence. It does not need
 

01:23:34.440 --> 01:23:38.350 align:start position:0%
persistence. It does not need
authentication,<01:23:35.760><c> payments,</c><01:23:36.760><c> APIs,</c><01:23:37.920><c> or</c><01:23:38.240><c> a</c>

01:23:38.350 --> 01:23:38.360 align:start position:0%
authentication, payments, APIs, or a
 

01:23:38.360 --> 01:23:41.270 align:start position:0%
authentication, payments, APIs, or a
real<01:23:38.800><c> database</c><01:23:39.520><c> at</c><01:23:39.680><c> first.</c><01:23:40.200><c> This</c><01:23:40.520><c> first</c><01:23:40.960><c> app</c>

01:23:41.270 --> 01:23:41.280 align:start position:0%
real database at first. This first app
 

01:23:41.280 --> 01:23:42.990 align:start position:0%
real database at first. This first app
is<01:23:41.440><c> about</c><01:23:41.760><c> getting</c><01:23:42.080><c> comfortable</c><01:23:42.720><c> with</c><01:23:42.880><c> the</c>

01:23:42.990 --> 01:23:43.000 align:start position:0%
is about getting comfortable with the
 

01:23:43.000 --> 01:23:46.310 align:start position:0%
is about getting comfortable with the
full<01:23:43.400><c> Cortex</c><01:23:43.960><c> loop</c><01:23:44.840><c> on</c><01:23:45.080><c> something</c><01:23:45.840><c> we</c><01:23:46.080><c> can</c>

01:23:46.310 --> 01:23:46.320 align:start position:0%
full Cortex loop on something we can
 

01:23:46.320 --> 01:23:48.910 align:start position:0%
full Cortex loop on something we can
understand<01:23:47.280><c> immediately.</c><01:23:48.240><c> Now,</c><01:23:48.480><c> here</c><01:23:48.800><c> in</c>

01:23:48.910 --> 01:23:48.920 align:start position:0%
understand immediately. Now, here in
 

01:23:48.920 --> 01:23:50.590 align:start position:0%
understand immediately. Now, here in
Cortex,<01:23:49.480><c> the</c><01:23:49.600><c> first</c><01:23:49.920><c> thing</c><01:23:50.080><c> that</c><01:23:50.240><c> you</c><01:23:50.320><c> want</c><01:23:50.520><c> to</c>

01:23:50.590 --> 01:23:50.600 align:start position:0%
Cortex, the first thing that you want to
 

01:23:50.600 --> 01:23:53.270 align:start position:0%
Cortex, the first thing that you want to
do<01:23:50.760><c> is</c><01:23:50.920><c> you</c><01:23:51.000><c> want</c><01:23:51.200><c> to</c><01:23:51.320><c> click</c><01:23:51.680><c> here,</c><01:23:52.240><c> and</c><01:23:53.080><c> you</c>

01:23:53.270 --> 01:23:53.280 align:start position:0%
do is you want to click here, and you
 

01:23:53.280 --> 01:23:55.190 align:start position:0%
do is you want to click here, and you
can<01:23:53.480><c> select</c><01:23:53.960><c> start</c><01:23:54.240><c> from</c><01:23:54.440><c> scratch,</c><01:23:55.080><c> but</c><01:23:55.120><c> I</c>

01:23:55.190 --> 01:23:55.200 align:start position:0%
can select start from scratch, but I
 

01:23:55.200 --> 01:23:57.550 align:start position:0%
can select start from scratch, but I
like<01:23:55.440><c> to</c><01:23:55.640><c> have</c><01:23:55.880><c> it</c><01:23:56.400><c> set</c><01:23:56.840><c> to</c><01:23:56.960><c> a</c><01:23:57.040><c> specific</c>

01:23:57.550 --> 01:23:57.560 align:start position:0%
like to have it set to a specific
 

01:23:57.560 --> 01:23:59.910 align:start position:0%
like to have it set to a specific
folder.<01:23:58.600><c> So,</c><01:23:58.760><c> I'm</c><01:23:58.840><c> going</c><01:23:58.960><c> to</c><01:23:59.040><c> click</c><01:23:59.320><c> on</c><01:23:59.480><c> use</c><01:23:59.800><c> an</c>

01:23:59.910 --> 01:23:59.920 align:start position:0%
folder. So, I'm going to click on use an
 

01:23:59.920 --> 01:24:02.190 align:start position:0%
folder. So, I'm going to click on use an
existing<01:24:00.360><c> folder,</c><01:24:01.320><c> and</c><01:24:01.520><c> I</c><01:24:01.600><c> have</c><01:24:01.840><c> here</c><01:24:02.080><c> a</c>

01:24:02.190 --> 01:24:02.200 align:start position:0%
existing folder, and I have here a
 

01:24:02.200 --> 01:24:04.270 align:start position:0%
existing folder, and I have here a
folder<01:24:02.720><c> prepared</c><01:24:03.320><c> called</c><01:24:03.600><c> demos.</c><01:24:04.040><c> I'm</c><01:24:04.160><c> going</c>

01:24:04.270 --> 01:24:04.280 align:start position:0%
folder prepared called demos. I'm going
 

01:24:04.280 --> 01:24:05.910 align:start position:0%
folder prepared called demos. I'm going
to<01:24:04.400><c> open</c><01:24:04.760><c> this</c><01:24:04.960><c> here,</c>

01:24:05.910 --> 01:24:05.920 align:start position:0%
to open this here,
 

01:24:05.920 --> 01:24:08.950 align:start position:0%
to open this here,
and<01:24:06.040><c> now</c><01:24:06.280><c> we</c><01:24:06.440><c> have</c><01:24:06.640><c> a</c><01:24:06.720><c> new</c><01:24:07.080><c> project</c><01:24:08.360><c> that</c><01:24:08.720><c> has</c>

01:24:08.950 --> 01:24:08.960 align:start position:0%
and now we have a new project that has
 

01:24:08.960 --> 01:24:11.710 align:start position:0%
and now we have a new project that has
been<01:24:09.200><c> associated</c><01:24:10.160><c> with</c><01:24:10.320><c> a</c><01:24:10.400><c> specific</c><01:24:11.040><c> folder.</c>

01:24:11.710 --> 01:24:11.720 align:start position:0%
been associated with a specific folder.
 

01:24:11.720 --> 01:24:13.510 align:start position:0%
been associated with a specific folder.
And<01:24:11.880><c> here</c><01:24:12.120><c> we</c><01:24:12.240><c> can</c><01:24:12.440><c> start</c><01:24:12.880><c> a</c><01:24:13.000><c> brand</c><01:24:13.400><c> new</c>

01:24:13.510 --> 01:24:13.520 align:start position:0%
And here we can start a brand new
 

01:24:13.520 --> 01:24:15.070 align:start position:0%
And here we can start a brand new
conversation

01:24:15.070 --> 01:24:15.080 align:start position:0%
conversation
 

01:24:15.080 --> 01:24:17.190 align:start position:0%
conversation
for<01:24:15.360><c> the</c><01:24:15.520><c> app</c><01:24:15.840><c> that</c><01:24:16.000><c> we</c><01:24:16.120><c> are</c><01:24:16.240><c> building.</c><01:24:16.960><c> Now,</c>

01:24:17.190 --> 01:24:17.200 align:start position:0%
for the app that we are building. Now,
 

01:24:17.200 --> 01:24:19.190 align:start position:0%
for the app that we are building. Now,
anytime<01:24:17.720><c> I</c><01:24:17.800><c> start</c><01:24:18.200><c> building</c><01:24:18.600><c> a</c><01:24:18.720><c> brand</c><01:24:19.000><c> new</c>

01:24:19.190 --> 01:24:19.200 align:start position:0%
anytime I start building a brand new
 

01:24:19.200 --> 01:24:22.350 align:start position:0%
anytime I start building a brand new
app,<01:24:19.560><c> I</c><01:24:19.680><c> always</c><01:24:20.400><c> want</c><01:24:20.680><c> to</c><01:24:20.840><c> create</c><01:24:21.600><c> a</c><01:24:21.800><c> visual</c>

01:24:22.350 --> 01:24:22.360 align:start position:0%
app, I always want to create a visual
 

01:24:22.360 --> 01:24:25.110 align:start position:0%
app, I always want to create a visual
architecture.<01:24:23.240><c> Being</c><01:24:23.560><c> a</c><01:24:23.680><c> visual</c><01:24:24.240><c> person,</c>

01:24:25.110 --> 01:24:25.120 align:start position:0%
architecture. Being a visual person,
 

01:24:25.120 --> 01:24:27.470 align:start position:0%
architecture. Being a visual person,
this<01:24:25.520><c> gives</c><01:24:25.960><c> me</c><01:24:26.120><c> an</c><01:24:26.280><c> understanding</c><01:24:27.200><c> of</c><01:24:27.360><c> the</c>

01:24:27.470 --> 01:24:27.480 align:start position:0%
this gives me an understanding of the
 

01:24:27.480 --> 01:24:30.190 align:start position:0%
this gives me an understanding of the
scope<01:24:27.960><c> of</c><01:24:28.080><c> an</c><01:24:28.240><c> app,</c><01:24:28.680><c> how</c><01:24:28.920><c> the</c><01:24:29.120><c> app</c><01:24:29.400><c> looks,</c><01:24:30.040><c> the</c>

01:24:30.190 --> 01:24:30.200 align:start position:0%
scope of an app, how the app looks, the
 

01:24:30.200 --> 01:24:33.070 align:start position:0%
scope of an app, how the app looks, the
user<01:24:30.640><c> flow,</c><01:24:31.360><c> and</c><01:24:31.600><c> stuff</c><01:24:32.040><c> like</c><01:24:32.360><c> that.</c><01:24:32.800><c> And</c><01:24:32.960><c> we</c>

01:24:33.070 --> 01:24:33.080 align:start position:0%
user flow, and stuff like that. And we
 

01:24:33.080 --> 01:24:36.550 align:start position:0%
user flow, and stuff like that. And we
can<01:24:33.280><c> actually</c><01:24:33.720><c> use</c><01:24:33.960><c> Codex</c><01:24:35.080><c> to</c><01:24:35.280><c> create</c><01:24:36.240><c> that</c>

01:24:36.550 --> 01:24:36.560 align:start position:0%
can actually use Codex to create that
 

01:24:36.560 --> 01:24:39.150 align:start position:0%
can actually use Codex to create that
visual<01:24:37.160><c> architecture</c><01:24:37.920><c> for</c><01:24:38.320><c> us.</c><01:24:38.600><c> Now,</c><01:24:38.840><c> I</c><01:24:38.920><c> have</c>

01:24:39.150 --> 01:24:39.160 align:start position:0%
visual architecture for us. Now, I have
 

01:24:39.160 --> 01:24:42.030 align:start position:0%
visual architecture for us. Now, I have
here<01:24:39.400><c> a</c><01:24:39.440><c> prepared</c><01:24:40.080><c> prompt</c><01:24:40.760><c> that</c><01:24:41.000><c> creates</c><01:24:41.680><c> this</c>

01:24:42.030 --> 01:24:42.040 align:start position:0%
here a prepared prompt that creates this
 

01:24:42.040 --> 01:24:44.710 align:start position:0%
here a prepared prompt that creates this
visual<01:24:42.640><c> architecture,</c><01:24:43.480><c> and</c><01:24:44.320><c> we</c><01:24:44.480><c> want</c><01:24:44.680><c> to</c>

01:24:44.710 --> 01:24:44.720 align:start position:0%
visual architecture, and we want to
 

01:24:44.720 --> 01:24:48.310 align:start position:0%
visual architecture, and we want to
ensure<01:24:45.400><c> that</c><01:24:45.800><c> we</c><01:24:46.000><c> use</c><01:24:46.640><c> the</c><01:24:46.960><c> built-in</c><01:24:47.760><c> image</c>

01:24:48.310 --> 01:24:48.320 align:start position:0%
ensure that we use the built-in image
 

01:24:48.320 --> 01:24:51.190 align:start position:0%
ensure that we use the built-in image
generation<01:24:49.040><c> that</c><01:24:49.200><c> we</c><01:24:49.320><c> have</c><01:24:50.360><c> as</c><01:24:50.520><c> well</c><01:24:50.680><c> as</c><01:24:50.840><c> Chat</c>

01:24:51.190 --> 01:24:51.200 align:start position:0%
generation that we have as well as Chat
 

01:24:51.200 --> 01:24:53.870 align:start position:0%
generation that we have as well as Chat
GPT<01:24:51.720><c> to</c><01:24:51.880><c> do</c><01:24:52.120><c> it.</c><01:24:52.840><c> So,</c><01:24:52.920><c> I'm</c><01:24:53.040><c> going</c><01:24:53.160><c> to</c><01:24:53.280><c> press</c>

01:24:53.870 --> 01:24:53.880 align:start position:0%
GPT to do it. So, I'm going to press
 

01:24:53.880 --> 01:24:56.230 align:start position:0%
GPT to do it. So, I'm going to press
forward<01:24:54.520><c> slash,</c><01:24:55.400><c> and</c><01:24:55.600><c> I'm</c><01:24:55.720><c> going</c><01:24:55.840><c> to</c><01:24:55.960><c> search</c>

01:24:56.230 --> 01:24:56.240 align:start position:0%
forward slash, and I'm going to search
 

01:24:56.240 --> 01:24:58.110 align:start position:0%
forward slash, and I'm going to search
for<01:24:56.440><c> Imagen.</c><01:24:57.200><c> Okay,</c><01:24:57.480><c> and</c><01:24:57.600><c> then</c><01:24:57.720><c> we</c><01:24:57.800><c> can</c><01:24:57.960><c> say</c>

01:24:58.110 --> 01:24:58.120 align:start position:0%
for Imagen. Okay, and then we can say
 

01:24:58.120 --> 01:25:00.790 align:start position:0%
for Imagen. Okay, and then we can say
something<01:24:58.480><c> like</c><01:24:58.960><c> use</c><01:24:59.320><c> Imagen</c><01:25:00.200><c> for</c><01:25:00.640><c> the</c>

01:25:00.790 --> 01:25:00.800 align:start position:0%
something like use Imagen for the
 

01:25:00.800 --> 01:25:02.830 align:start position:0%
something like use Imagen for the
following.<01:25:01.560><c> And</c><01:25:01.840><c> I'm</c><01:25:01.920><c> going</c><01:25:02.040><c> to</c><01:25:02.120><c> go</c><01:25:02.240><c> jump</c><01:25:02.560><c> into</c>

01:25:02.830 --> 01:25:02.840 align:start position:0%
following. And I'm going to go jump into
 

01:25:02.840 --> 01:25:04.990 align:start position:0%
following. And I'm going to go jump into
plan<01:25:03.240><c> mode,</c><01:25:03.800><c> and</c><01:25:03.960><c> I'm</c><01:25:04.040><c> going</c><01:25:04.160><c> to</c><01:25:04.240><c> go</c><01:25:04.400><c> ahead</c><01:25:04.680><c> and</c>

01:25:04.990 --> 01:25:05.000 align:start position:0%
plan mode, and I'm going to go ahead and
 

01:25:05.000 --> 01:25:07.310 align:start position:0%
plan mode, and I'm going to go ahead and
and<01:25:05.160><c> execute</c><01:25:05.680><c> it.</c><01:25:05.920><c> Okay,</c><01:25:06.280><c> and</c><01:25:06.400><c> it</c><01:25:06.520><c> came</c><01:25:06.800><c> back</c>

01:25:07.310 --> 01:25:07.320 align:start position:0%
and execute it. Okay, and it came back
 

01:25:07.320 --> 01:25:10.150 align:start position:0%
and execute it. Okay, and it came back
with<01:25:07.680><c> a</c><01:25:07.840><c> habit</c><01:25:08.360><c> card</c><01:25:08.760><c> architecture</c><01:25:09.400><c> diagram,</c>

01:25:10.150 --> 01:25:10.160 align:start position:0%
with a habit card architecture diagram,
 

01:25:10.160 --> 01:25:13.030 align:start position:0%
with a habit card architecture diagram,
and<01:25:10.400><c> here</c><01:25:10.640><c> it</c><01:25:10.760><c> says</c><01:25:11.040><c> create</c><01:25:11.840><c> one</c>

01:25:13.030 --> 01:25:13.040 align:start position:0%
and here it says create one
 

01:25:13.040 --> 01:25:15.510 align:start position:0%
and here it says create one
raster<01:25:13.680><c> infographic</c><01:25:14.560><c> using</c><01:25:15.000><c> this.</c><01:25:15.320><c> So,</c>

01:25:15.510 --> 01:25:15.520 align:start position:0%
raster infographic using this. So,
 

01:25:15.520 --> 01:25:16.990 align:start position:0%
raster infographic using this. So,
everything<01:25:15.920><c> looks</c><01:25:16.200><c> good.</c><01:25:16.680><c> There</c><01:25:16.800><c> there's</c>

01:25:16.990 --> 01:25:17.000 align:start position:0%
everything looks good. There there's
 

01:25:17.000 --> 01:25:19.470 align:start position:0%
everything looks good. There there's
some<01:25:17.200><c> diagram</c><01:25:17.720><c> content,</c><01:25:18.480><c> visual</c><01:25:18.880><c> direction.</c>

01:25:19.470 --> 01:25:19.480 align:start position:0%
some diagram content, visual direction.
 

01:25:19.480 --> 01:25:22.030 align:start position:0%
some diagram content, visual direction.
That's<01:25:19.680><c> a</c><01:25:19.760><c> wide</c><01:25:20.200><c> composition.</c><01:25:20.920><c> Looks</c><01:25:21.160><c> good.</c>

01:25:22.030 --> 01:25:22.040 align:start position:0%
That's a wide composition. Looks good.
 

01:25:22.040 --> 01:25:24.270 align:start position:0%
That's a wide composition. Looks good.
We're<01:25:22.160><c> going</c><01:25:22.280><c> to</c><01:25:22.400><c> say</c><01:25:22.760><c> yes,</c><01:25:23.080><c> implement</c><01:25:23.680><c> this.</c>

01:25:24.270 --> 01:25:24.280 align:start position:0%
We're going to say yes, implement this.
 

01:25:24.280 --> 01:25:26.390 align:start position:0%
We're going to say yes, implement this.
Okay,<01:25:24.680><c> and</c><01:25:24.880><c> that</c><01:25:25.120><c> is</c><01:25:25.240><c> our</c><01:25:25.480><c> habit</c><01:25:25.920><c> card.</c><01:25:26.200><c> That</c>

01:25:26.390 --> 01:25:26.400 align:start position:0%
Okay, and that is our habit card. That
 

01:25:26.400 --> 01:25:29.510 align:start position:0%
Okay, and that is our habit card. That
is<01:25:26.560><c> our</c><01:25:26.800><c> visual</c><01:25:27.400><c> interface.</c><01:25:28.120><c> And</c><01:25:28.360><c> right</c><01:25:28.560><c> away,</c>

01:25:29.510 --> 01:25:29.520 align:start position:0%
is our visual interface. And right away,
 

01:25:29.520 --> 01:25:31.950 align:start position:0%
is our visual interface. And right away,
I<01:25:29.640><c> can</c><01:25:29.920><c> see</c><01:25:30.400><c> what</c><01:25:30.560><c> this</c><01:25:30.840><c> app</c><01:25:31.080><c> is</c><01:25:31.280><c> all</c><01:25:31.440><c> about,</c>

01:25:31.950 --> 01:25:31.960 align:start position:0%
I can see what this app is all about,
 

01:25:31.960 --> 01:25:34.630 align:start position:0%
I can see what this app is all about,
right?<01:25:32.240><c> We</c><01:25:32.360><c> have</c><01:25:32.600><c> add</c><01:25:32.920><c> habit,</c><01:25:33.800><c> we</c><01:25:33.920><c> have</c><01:25:34.120><c> habit</c>

01:25:34.630 --> 01:25:34.640 align:start position:0%
right? We have add habit, we have habit
 

01:25:34.640 --> 01:25:37.550 align:start position:0%
right? We have add habit, we have habit
list,<01:25:35.360><c> we</c><01:25:35.480><c> have</c><01:25:35.680><c> today</c><01:25:36.120><c> check-in,</c><01:25:37.280><c> and</c><01:25:37.440><c> we</c>

01:25:37.550 --> 01:25:37.560 align:start position:0%
list, we have today check-in, and we
 

01:25:37.560 --> 01:25:40.230 align:start position:0%
list, we have today check-in, and we
have<01:25:37.800><c> a</c><01:25:37.920><c> streak</c><01:25:38.680><c> count.</c><01:25:39.680><c> Then</c><01:25:39.880><c> we</c><01:25:39.960><c> have</c><01:25:40.120><c> an</c>

01:25:40.230 --> 01:25:40.240 align:start position:0%
have a streak count. Then we have an
 

01:25:40.240 --> 01:25:42.390 align:start position:0%
have a streak count. Then we have an
empty<01:25:40.560><c> state,</c><01:25:41.200><c> we</c><01:25:41.320><c> have</c><01:25:41.480><c> local</c><01:25:41.840><c> storage</c>

01:25:42.390 --> 01:25:42.400 align:start position:0%
empty state, we have local storage
 

01:25:42.400 --> 01:25:44.350 align:start position:0%
empty state, we have local storage
later,<01:25:42.880><c> and</c><01:25:43.080><c> we</c><01:25:43.200><c> have</c><01:25:43.400><c> the</c><01:25:43.520><c> Versel</c><01:25:43.920><c> deploy.</c>

01:25:44.350 --> 01:25:44.360 align:start position:0%
later, and we have the Versel deploy.
 

01:25:44.360 --> 01:25:47.830 align:start position:0%
later, and we have the Versel deploy.
And<01:25:44.480><c> so,</c><01:25:44.640><c> this</c><01:25:44.840><c> is</c><01:25:45.080><c> a</c><01:25:45.200><c> very,</c><01:25:45.760><c> very</c><01:25:46.200><c> simplified</c>

01:25:47.830 --> 01:25:47.840 align:start position:0%
And so, this is a very, very simplified
 

01:25:47.840 --> 01:25:50.870 align:start position:0%
And so, this is a very, very simplified
visual<01:25:48.480><c> architecture,</c><01:25:49.720><c> but</c><01:25:50.120><c> it</c><01:25:50.280><c> is</c><01:25:50.520><c> very,</c>

01:25:50.870 --> 01:25:50.880 align:start position:0%
visual architecture, but it is very,
 

01:25:50.880 --> 01:25:53.910 align:start position:0%
visual architecture, but it is very,
very<01:25:51.160><c> important.</c><01:25:51.960><c> I</c><01:25:52.080><c> want</c><01:25:52.280><c> to</c><01:25:52.360><c> see</c><01:25:52.600><c> right</c><01:25:53.040><c> away</c>

01:25:53.910 --> 01:25:53.920 align:start position:0%
very important. I want to see right away
 

01:25:53.920 --> 01:25:56.030 align:start position:0%
very important. I want to see right away
what<01:25:54.160><c> I'm</c><01:25:54.320><c> dealing</c><01:25:54.880><c> with,</c><01:25:55.120><c> what</c><01:25:55.280><c> I'm</c><01:25:55.520><c> working</c>

01:25:56.030 --> 01:25:56.040 align:start position:0%
what I'm dealing with, what I'm working
 

01:25:56.040 --> 01:25:58.590 align:start position:0%
what I'm dealing with, what I'm working
with,<01:25:56.240><c> how</c><01:25:56.400><c> many</c><01:25:56.720><c> pages,</c><01:25:57.960><c> you</c><01:25:58.000><c> know,</c><01:25:58.200><c> how</c>

01:25:58.590 --> 01:25:58.600 align:start position:0%
with, how many pages, you know, how
 

01:25:58.600 --> 01:26:00.990 align:start position:0%
with, how many pages, you know, how
complex<01:25:59.280><c> is</c><01:25:59.440><c> the</c><01:25:59.600><c> app,</c><01:25:59.840><c> how</c><01:26:00.040><c> simple</c><01:26:00.680><c> is</c><01:26:00.840><c> the</c>

01:26:00.990 --> 01:26:01.000 align:start position:0%
complex is the app, how simple is the
 

01:26:01.000 --> 01:26:02.790 align:start position:0%
complex is the app, how simple is the
app.<01:26:01.280><c> I</c><01:26:01.360><c> see</c><01:26:01.640><c> that</c><01:26:01.800><c> this</c><01:26:02.000><c> is</c><01:26:02.120><c> not</c><01:26:02.360><c> going</c><01:26:02.480><c> to</c><01:26:02.560><c> be,</c>

01:26:02.790 --> 01:26:02.800 align:start position:0%
app. I see that this is not going to be,
 

01:26:02.800 --> 01:26:05.430 align:start position:0%
app. I see that this is not going to be,
you<01:26:02.920><c> know,</c><01:26:03.120><c> a</c><01:26:03.200><c> very</c><01:26:03.680><c> complex</c><01:26:04.400><c> app.</c><01:26:05.200><c> It's</c><01:26:05.320><c> going</c>

01:26:05.430 --> 01:26:05.440 align:start position:0%
you know, a very complex app. It's going
 

01:26:05.440 --> 01:26:08.310 align:start position:0%
you know, a very complex app. It's going
to<01:26:05.520><c> be</c><01:26:05.720><c> a</c><01:26:05.880><c> fairly</c><01:26:06.520><c> simple</c><01:26:07.120><c> app,</c><01:26:07.760><c> but</c><01:26:08.000><c> we</c><01:26:08.120><c> do</c>

01:26:08.310 --> 01:26:08.320 align:start position:0%
to be a fairly simple app, but we do
 

01:26:08.320 --> 01:26:10.190 align:start position:0%
to be a fairly simple app, but we do
have<01:26:08.520><c> some</c><01:26:08.720><c> interesting</c><01:26:09.360><c> bits</c><01:26:09.720><c> here,</c><01:26:09.960><c> right?</c>

01:26:10.190 --> 01:26:10.200 align:start position:0%
have some interesting bits here, right?
 

01:26:10.200 --> 01:26:12.790 align:start position:0%
have some interesting bits here, right?
This<01:26:10.440><c> empty</c><01:26:10.840><c> state,</c><01:26:12.040><c> we</c><01:26:12.120><c> have</c><01:26:12.280><c> some</c><01:26:12.480><c> local</c>

01:26:12.790 --> 01:26:12.800 align:start position:0%
This empty state, we have some local
 

01:26:12.800 --> 01:26:15.150 align:start position:0%
This empty state, we have some local
storage,<01:26:13.560><c> we</c><01:26:13.680><c> have</c><01:26:13.840><c> a</c><01:26:13.920><c> Versel</c><01:26:14.440><c> deploy.</c><01:26:15.000><c> And</c>

01:26:15.150 --> 01:26:15.160 align:start position:0%
storage, we have a Versel deploy. And
 

01:26:15.160 --> 01:26:17.590 align:start position:0%
storage, we have a Versel deploy. And
so,<01:26:15.280><c> it's</c><01:26:15.440><c> a</c><01:26:15.480><c> fairly</c><01:26:15.960><c> simple</c><01:26:16.440><c> app,</c><01:26:16.800><c> but</c><01:26:17.040><c> still</c>

01:26:17.590 --> 01:26:17.600 align:start position:0%
so, it's a fairly simple app, but still
 

01:26:17.600 --> 01:26:19.990 align:start position:0%
so, it's a fairly simple app, but still
a<01:26:17.760><c> fairly</c><01:26:18.480><c> workable</c><01:26:19.320><c> app.</c><01:26:19.440><c> Now,</c><01:26:19.600><c> the</c><01:26:19.720><c> next</c>

01:26:19.990 --> 01:26:20.000 align:start position:0%
a fairly workable app. Now, the next
 

01:26:20.000 --> 01:26:21.670 align:start position:0%
a fairly workable app. Now, the next
thing<01:26:20.160><c> that</c><01:26:20.360><c> I</c><01:26:20.400><c> like</c><01:26:20.640><c> to</c><01:26:20.720><c> do</c><01:26:20.840><c> is</c><01:26:21.000><c> create</c><01:26:21.440><c> the</c>

01:26:21.670 --> 01:26:21.680 align:start position:0%
thing that I like to do is create the
 

01:26:21.680 --> 01:26:23.710 align:start position:0%
thing that I like to do is create the
entity<01:26:22.280><c> architecture.</c><01:26:23.000><c> And</c><01:26:23.120><c> this</c><01:26:23.280><c> is</c><01:26:23.440><c> where</c>

01:26:23.710 --> 01:26:23.720 align:start position:0%
entity architecture. And this is where
 

01:26:23.720 --> 01:26:26.390 align:start position:0%
entity architecture. And this is where
we're<01:26:23.920><c> going</c><01:26:24.040><c> to</c><01:26:24.120><c> be</c><01:26:24.240><c> mapping</c><01:26:25.280><c> the</c><01:26:25.440><c> small</c><01:26:26.000><c> set</c>

01:26:26.390 --> 01:26:26.400 align:start position:0%
we're going to be mapping the small set
 

01:26:26.400 --> 01:26:28.870 align:start position:0%
we're going to be mapping the small set
of<01:26:26.640><c> entities</c><01:26:27.360><c> behind</c><01:26:27.880><c> the</c><01:26:28.040><c> app.</c><01:26:28.400><c> So,</c><01:26:28.560><c> even</c>

01:26:28.870 --> 01:26:28.880 align:start position:0%
of entities behind the app. So, even
 

01:26:28.880 --> 01:26:30.630 align:start position:0%
of entities behind the app. So, even
though<01:26:29.040><c> the</c><01:26:29.200><c> first</c><01:26:29.600><c> version</c><01:26:30.000><c> is</c><01:26:30.200><c> front</c><01:26:30.440><c> end</c>

01:26:30.630 --> 01:26:30.640 align:start position:0%
though the first version is front end
 

01:26:30.640 --> 01:26:34.430 align:start position:0%
though the first version is front end
only,<01:26:31.680><c> it</c><01:26:31.800><c> is</c><01:26:32.000><c> useful</c><01:26:32.800><c> to</c><01:26:32.960><c> name</c><01:26:33.280><c> the</c><01:26:33.480><c> habit,</c>

01:26:34.430 --> 01:26:34.440 align:start position:0%
only, it is useful to name the habit,
 

01:26:34.440 --> 01:26:37.470 align:start position:0%
only, it is useful to name the habit,
the<01:26:34.560><c> daily</c><01:26:35.040><c> check-in,</c><01:26:36.040><c> and</c><01:26:36.200><c> the</c><01:26:36.320><c> streak</c><01:26:36.960><c> count</c>

01:26:37.470 --> 01:26:37.480 align:start position:0%
the daily check-in, and the streak count
 

01:26:37.480 --> 01:26:41.150 align:start position:0%
the daily check-in, and the streak count
summary<01:26:38.440><c> before</c><01:26:39.120><c> we</c><01:26:39.360><c> add</c><01:26:39.840><c> a</c><01:26:39.920><c> local</c><01:26:40.400><c> storage</c>

01:26:41.150 --> 01:26:41.160 align:start position:0%
summary before we add a local storage
 

01:26:41.160 --> 01:26:43.630 align:start position:0%
summary before we add a local storage
later.<01:26:41.760><c> And</c><01:26:41.880><c> this</c><01:26:42.120><c> right</c><01:26:42.280><c> here</c><01:26:42.560><c> is</c><01:26:42.760><c> the</c><01:26:43.000><c> entity</c>

01:26:43.630 --> 01:26:43.640 align:start position:0%
later. And this right here is the entity
 

01:26:43.640 --> 01:26:46.590 align:start position:0%
later. And this right here is the entity
diagram.<01:26:44.320><c> And</c><01:26:44.520><c> I'm</c><01:26:44.640><c> just</c><01:26:44.800><c> going</c><01:26:44.960><c> to</c><01:26:45.040><c> say</c><01:26:45.760><c> use</c>

01:26:46.590 --> 01:26:46.600 align:start position:0%
diagram. And I'm just going to say use
 

01:26:46.600 --> 01:26:49.110 align:start position:0%
diagram. And I'm just going to say use
ImageGen<01:26:47.440><c> for</c><01:26:47.840><c> below.</c><01:26:48.480><c> Going</c><01:26:48.600><c> to</c><01:26:48.680><c> go</c><01:26:48.800><c> ahead</c>

01:26:49.110 --> 01:26:49.120 align:start position:0%
ImageGen for below. Going to go ahead
 

01:26:49.120 --> 01:26:51.870 align:start position:0%
ImageGen for below. Going to go ahead
and<01:26:49.280><c> run</c><01:26:49.520><c> that.</c><01:26:49.760><c> And</c><01:26:49.880><c> I</c><01:26:49.960><c> can</c><01:26:50.280><c> run</c><01:26:50.600><c> it</c><01:26:51.200><c> directly.</c>

01:26:51.870 --> 01:26:51.880 align:start position:0%
and run that. And I can run it directly.
 

01:26:51.880 --> 01:26:53.790 align:start position:0%
and run that. And I can run it directly.
I<01:26:51.960><c> don't</c><01:26:52.160><c> really</c><01:26:52.400><c> need</c><01:26:52.760><c> to</c><01:26:52.920><c> run</c><01:26:53.120><c> it</c><01:26:53.280><c> in</c><01:26:53.440><c> plan</c>

01:26:53.790 --> 01:26:53.800 align:start position:0%
I don't really need to run it in plan
 

01:26:53.800 --> 01:26:55.870 align:start position:0%
I don't really need to run it in plan
mode<01:26:54.160><c> because</c><01:26:54.520><c> it's</c><01:26:54.920><c> just</c><01:26:55.240><c> generating</c><01:26:55.800><c> a</c>

01:26:55.870 --> 01:26:55.880 align:start position:0%
mode because it's just generating a
 

01:26:55.880 --> 01:26:59.510 align:start position:0%
mode because it's just generating a
diagram.<01:26:56.600><c> I'm</c><01:26:56.720><c> not</c><01:26:56.960><c> asking</c><01:26:57.440><c> it</c><01:26:58.160><c> a</c><01:26:58.360><c> complex,</c>

01:26:59.510 --> 01:26:59.520 align:start position:0%
diagram. I'm not asking it a complex,
 

01:26:59.520 --> 01:27:03.030 align:start position:0%
diagram. I'm not asking it a complex,
ambiguous<01:27:00.720><c> coding</c><01:27:01.360><c> question</c><01:27:02.000><c> or</c><01:27:02.360><c> giving</c><01:27:02.640><c> it</c><01:27:02.840><c> a</c>

01:27:03.030 --> 01:27:03.040 align:start position:0%
ambiguous coding question or giving it a
 

01:27:03.040 --> 01:27:05.990 align:start position:0%
ambiguous coding question or giving it a
an<01:27:03.240><c> ambiguous</c><01:27:03.960><c> coding</c><01:27:04.880><c> instruction.</c><01:27:05.800><c> And</c>

01:27:05.990 --> 01:27:06.000 align:start position:0%
an ambiguous coding instruction. And
 

01:27:06.000 --> 01:27:08.470 align:start position:0%
an ambiguous coding instruction. And
here<01:27:06.280><c> is</c><01:27:06.440><c> our</c><01:27:06.720><c> entity</c><01:27:07.240><c> architecture.</c><01:27:08.200><c> And</c>

01:27:08.470 --> 01:27:08.480 align:start position:0%
here is our entity architecture. And
 

01:27:08.480 --> 01:27:10.510 align:start position:0%
here is our entity architecture. And
unlike<01:27:08.880><c> the</c><01:27:09.000><c> visual</c><01:27:09.600><c> architecture</c><01:27:10.280><c> that</c>

01:27:10.510 --> 01:27:10.520 align:start position:0%
unlike the visual architecture that
 

01:27:10.520 --> 01:27:12.870 align:start position:0%
unlike the visual architecture that
we've<01:27:10.760><c> generated</c><01:27:11.400><c> previously,</c><01:27:12.200><c> here</c><01:27:12.560><c> we're</c>

01:27:12.870 --> 01:27:12.880 align:start position:0%
we've generated previously, here we're
 

01:27:12.880 --> 01:27:15.430 align:start position:0%
we've generated previously, here we're
actually<01:27:13.480><c> seeing</c><01:27:14.000><c> the</c><01:27:14.200><c> entities</c><01:27:15.040><c> that</c><01:27:15.240><c> will</c>

01:27:15.430 --> 01:27:15.440 align:start position:0%
actually seeing the entities that will
 

01:27:15.440 --> 01:27:18.270 align:start position:0%
actually seeing the entities that will
later<01:27:15.840><c> become</c><01:27:16.200><c> the</c><01:27:16.320><c> actual</c><01:27:16.800><c> storage</c><01:27:17.440><c> schema.</c>

01:27:18.270 --> 01:27:18.280 align:start position:0%
later become the actual storage schema.
 

01:27:18.280 --> 01:27:20.710 align:start position:0%
later become the actual storage schema.
Okay?<01:27:18.640><c> So,</c><01:27:18.840><c> we</c><01:27:18.960><c> have</c><01:27:19.200><c> the</c><01:27:19.360><c> habit,</c><01:27:20.280><c> we</c><01:27:20.400><c> have</c><01:27:20.600><c> a</c>

01:27:20.710 --> 01:27:20.720 align:start position:0%
Okay? So, we have the habit, we have a
 

01:27:20.720 --> 01:27:23.030 align:start position:0%
Okay? So, we have the habit, we have a
habit<01:27:21.200><c> check-in,</c><01:27:22.080><c> we</c><01:27:22.200><c> have</c><01:27:22.400><c> a</c><01:27:22.480><c> streak</c>

01:27:23.030 --> 01:27:23.040 align:start position:0%
habit check-in, we have a streak
 

01:27:23.040 --> 01:27:26.190 align:start position:0%
habit check-in, we have a streak
summary,<01:27:24.120><c> and</c><01:27:24.280><c> then</c><01:27:24.960><c> local</c><01:27:25.440><c> storage</c><01:27:25.920><c> as</c><01:27:26.080><c> the</c>

01:27:26.190 --> 01:27:26.200 align:start position:0%
summary, and then local storage as the
 

01:27:26.200 --> 01:27:28.150 align:start position:0%
summary, and then local storage as the
back<01:27:26.520><c> end.</c><01:27:26.680><c> So,</c><01:27:26.840><c> no</c><01:27:27.080><c> back</c><01:27:27.480><c> end,</c><01:27:27.680><c> everything</c><01:27:28.040><c> is</c>

01:27:28.150 --> 01:27:28.160 align:start position:0%
back end. So, no back end, everything is
 

01:27:28.160 --> 01:27:30.590 align:start position:0%
back end. So, no back end, everything is
stored<01:27:28.480><c> locally</c><01:27:28.920><c> with</c><01:27:29.120><c> local</c><01:27:29.440><c> storage.</c><01:27:30.520><c> And</c>

01:27:30.590 --> 01:27:30.600 align:start position:0%
stored locally with local storage. And
 

01:27:30.600 --> 01:27:33.870 align:start position:0%
stored locally with local storage. And
this<01:27:30.800><c> is</c><01:27:30.960><c> also</c><01:27:31.360><c> very,</c><01:27:31.720><c> very</c><01:27:32.080><c> useful</c><01:27:33.080><c> because</c>

01:27:33.870 --> 01:27:33.880 align:start position:0%
this is also very, very useful because
 

01:27:33.880 --> 01:27:36.870 align:start position:0%
this is also very, very useful because
unlike<01:27:34.480><c> the</c><01:27:34.640><c> visual</c><01:27:35.320><c> diagram</c><01:27:35.880><c> here,</c><01:27:36.400><c> I</c><01:27:36.600><c> want</c>

01:27:36.870 --> 01:27:36.880 align:start position:0%
unlike the visual diagram here, I want
 

01:27:36.880 --> 01:27:40.110 align:start position:0%
unlike the visual diagram here, I want
to<01:27:36.960><c> see</c><01:27:37.280><c> the</c><01:27:37.520><c> actual</c><01:27:38.360><c> schema.</c><01:27:39.280><c> I</c><01:27:39.480><c> want</c><01:27:39.680><c> to</c><01:27:39.760><c> see</c>

01:27:40.110 --> 01:27:40.120 align:start position:0%
to see the actual schema. I want to see
 

01:27:40.120 --> 01:27:43.110 align:start position:0%
to see the actual schema. I want to see
what<01:27:40.480><c> kind</c><01:27:40.880><c> of,</c><01:27:41.200><c> you</c><01:27:41.320><c> know,</c><01:27:41.600><c> elements</c><01:27:42.520><c> or</c><01:27:42.840><c> what</c>

01:27:43.110 --> 01:27:43.120 align:start position:0%
what kind of, you know, elements or what
 

01:27:43.120 --> 01:27:45.070 align:start position:0%
what kind of, you know, elements or what
kind<01:27:43.360><c> of,</c><01:27:43.520><c> you</c><01:27:43.560><c> know,</c><01:27:43.600><c> tables</c><01:27:44.360><c> we</c><01:27:44.480><c> might</c><01:27:44.800><c> need</c>

01:27:45.070 --> 01:27:45.080 align:start position:0%
kind of, you know, tables we might need
 

01:27:45.080 --> 01:27:49.230 align:start position:0%
kind of, you know, tables we might need
to<01:27:45.240><c> translate</c><01:27:46.720><c> this</c><01:27:47.080><c> app</c><01:27:47.480><c> schema</c><01:27:48.040><c> into.</c><01:27:49.120><c> And</c>

01:27:49.230 --> 01:27:49.240 align:start position:0%
to translate this app schema into. And
 

01:27:49.240 --> 01:27:51.590 align:start position:0%
to translate this app schema into. And
as<01:27:49.360><c> you</c><01:27:49.440><c> can</c><01:27:49.640><c> see,</c><01:27:49.800><c> this</c><01:27:50.040><c> is</c><01:27:50.200><c> fairly</c><01:27:50.640><c> simple.</c>

01:27:51.590 --> 01:27:51.600 align:start position:0%
as you can see, this is fairly simple.
 

01:27:51.600 --> 01:27:54.430 align:start position:0%
as you can see, this is fairly simple.
Habit,<01:27:52.200><c> habit</c><01:27:52.600><c> check-in,</c><01:27:53.480><c> streak</c><01:27:53.960><c> summary.</c>

01:27:54.430 --> 01:27:54.440 align:start position:0%
Habit, habit check-in, streak summary.
 

01:27:54.440 --> 01:27:57.750 align:start position:0%
Habit, habit check-in, streak summary.
We<01:27:54.600><c> have</c><01:27:54.760><c> these</c><01:27:55.080><c> three</c><01:27:56.120><c> main</c><01:27:56.840><c> functions</c><01:27:57.520><c> here,</c>

01:27:57.750 --> 01:27:57.760 align:start position:0%
We have these three main functions here,
 

01:27:57.760 --> 01:27:59.710 align:start position:0%
We have these three main functions here,
these<01:27:58.000><c> three</c><01:27:58.320><c> main</c><01:27:58.600><c> features</c><01:27:59.200><c> that</c><01:27:59.560><c> were</c>

01:27:59.710 --> 01:27:59.720 align:start position:0%
these three main features that were
 

01:27:59.720 --> 01:28:02.270 align:start position:0%
these three main features that were
translated<01:28:00.680><c> into</c><01:28:00.960><c> entities.</c><01:28:01.760><c> Okay?</c><01:28:02.040><c> And</c><01:28:02.160><c> then</c>

01:28:02.270 --> 01:28:02.280 align:start position:0%
translated into entities. Okay? And then
 

01:28:02.280 --> 01:28:04.750 align:start position:0%
translated into entities. Okay? And then
we<01:28:02.400><c> have</c><01:28:02.680><c> And</c><01:28:02.800><c> for</c><01:28:03.040><c> each</c><01:28:03.280><c> entity,</c><01:28:04.240><c> we</c><01:28:04.480><c> have</c>

01:28:04.750 --> 01:28:04.760 align:start position:0%
we have And for each entity, we have
 

01:28:04.760 --> 01:28:07.150 align:start position:0%
we have And for each entity, we have
things<01:28:05.040><c> like</c><01:28:05.400><c> name,</c><01:28:05.880><c> created</c><01:28:06.440><c> at</c><01:28:06.680><c> date,</c>

01:28:07.150 --> 01:28:07.160 align:start position:0%
things like name, created at date,
 

01:28:07.160 --> 01:28:09.470 align:start position:0%
things like name, created at date,
completed<01:28:07.880><c> count.</c><01:28:08.480><c> Now,</c><01:28:08.640><c> at</c><01:28:08.760><c> this</c><01:28:09.000><c> point,</c><01:28:09.360><c> we</c>

01:28:09.470 --> 01:28:09.480 align:start position:0%
completed count. Now, at this point, we
 

01:28:09.480 --> 01:28:11.710 align:start position:0%
completed count. Now, at this point, we
have<01:28:09.760><c> both</c><01:28:10.080><c> the</c><01:28:10.200><c> visual</c><01:28:10.640><c> architecture</c><01:28:11.480><c> as</c>

01:28:11.710 --> 01:28:11.720 align:start position:0%
have both the visual architecture as
 

01:28:11.720 --> 01:28:13.590 align:start position:0%
have both the visual architecture as
well<01:28:11.920><c> as</c><01:28:12.080><c> the</c><01:28:12.200><c> entity</c><01:28:12.800><c> architecture.</c><01:28:13.480><c> And</c>

01:28:13.590 --> 01:28:13.600 align:start position:0%
well as the entity architecture. And
 

01:28:13.600 --> 01:28:15.230 align:start position:0%
well as the entity architecture. And
this<01:28:13.800><c> is</c><01:28:13.920><c> something</c><01:28:14.280><c> that</c><01:28:14.440><c> I</c><01:28:14.480><c> like</c><01:28:14.720><c> to</c><01:28:14.840><c> do</c><01:28:15.040><c> for</c>

01:28:15.230 --> 01:28:15.240 align:start position:0%
this is something that I like to do for
 

01:28:15.240 --> 01:28:16.950 align:start position:0%
this is something that I like to do for
pretty<01:28:15.480><c> much</c><01:28:15.800><c> every</c><01:28:16.200><c> single</c><01:28:16.560><c> app</c><01:28:16.720><c> that</c><01:28:16.880><c> I</c>

01:28:16.950 --> 01:28:16.960 align:start position:0%
pretty much every single app that I
 

01:28:16.960 --> 01:28:20.230 align:start position:0%
pretty much every single app that I
build<01:28:17.880><c> because</c><01:28:18.640><c> I</c><01:28:18.800><c> want</c><01:28:19.040><c> to</c><01:28:19.120><c> get</c><01:28:19.320><c> an</c><01:28:19.480><c> idea</c><01:28:20.000><c> what</c>

01:28:20.230 --> 01:28:20.240 align:start position:0%
build because I want to get an idea what
 

01:28:20.240 --> 01:28:22.230 align:start position:0%
build because I want to get an idea what
I'm<01:28:20.360><c> really</c><01:28:20.640><c> dealing</c><01:28:21.240><c> with,</c><01:28:21.680><c> right?</c><01:28:22.000><c> I</c><01:28:22.040><c> want</c>

01:28:22.230 --> 01:28:22.240 align:start position:0%
I'm really dealing with, right? I want
 

01:28:22.240 --> 01:28:25.150 align:start position:0%
I'm really dealing with, right? I want
to<01:28:22.280><c> have</c><01:28:22.480><c> an</c><01:28:22.600><c> understanding</c><01:28:24.000><c> of</c><01:28:24.760><c> the</c><01:28:25.000><c> the</c>

01:28:25.150 --> 01:28:25.160 align:start position:0%
to have an understanding of the the
 

01:28:25.160 --> 01:28:27.750 align:start position:0%
to have an understanding of the the
scope<01:28:25.680><c> of</c><01:28:25.800><c> the</c><01:28:25.960><c> app.</c><01:28:26.680><c> And</c><01:28:26.840><c> right</c><01:28:27.040><c> now</c><01:28:27.360><c> I</c><01:28:27.480><c> can</c>

01:28:27.750 --> 01:28:27.760 align:start position:0%
scope of the app. And right now I can
 

01:28:27.760 --> 01:28:29.910 align:start position:0%
scope of the app. And right now I can
see<01:28:28.120><c> exactly</c><01:28:28.760><c> where</c><01:28:28.960><c> we</c><01:28:29.120><c> are.</c><01:28:29.400><c> I</c><01:28:29.480><c> can</c><01:28:29.640><c> see</c><01:28:29.800><c> that</c>

01:28:29.910 --> 01:28:29.920 align:start position:0%
see exactly where we are. I can see that
 

01:28:29.920 --> 01:28:32.070 align:start position:0%
see exactly where we are. I can see that
this<01:28:30.120><c> is</c><01:28:30.280><c> a</c><01:28:30.360><c> fairly</c><01:28:30.800><c> simple</c><01:28:31.360><c> app.</c><01:28:31.680><c> I</c><01:28:31.760><c> can</c><01:28:31.920><c> see</c>

01:28:32.070 --> 01:28:32.080 align:start position:0%
this is a fairly simple app. I can see
 

01:28:32.080 --> 01:28:34.950 align:start position:0%
this is a fairly simple app. I can see
the<01:28:32.240><c> entities.</c><01:28:32.800><c> I</c><01:28:32.960><c> I</c><01:28:33.160><c> I</c><01:28:33.280><c> see</c><01:28:34.320><c> the</c><01:28:34.520><c> app</c>

01:28:34.950 --> 01:28:34.960 align:start position:0%
the entities. I I I see the app
 

01:28:34.960 --> 01:28:37.070 align:start position:0%
the entities. I I I see the app
building.<01:28:35.520><c> I</c><01:28:35.600><c> see</c><01:28:35.840><c> the</c><01:28:36.000><c> future</c><01:28:36.480><c> of</c><01:28:36.600><c> the</c><01:28:36.760><c> app.</c><01:28:37.040><c> I</c>

01:28:37.070 --> 01:28:37.080 align:start position:0%
building. I see the future of the app. I
 

01:28:37.080 --> 01:28:39.070 align:start position:0%
building. I see the future of the app. I
see<01:28:37.240><c> the</c><01:28:37.400><c> app</c><01:28:37.640><c> coming</c><01:28:38.000><c> together.</c><01:28:38.680><c> Now,</c><01:28:38.920><c> the</c>

01:28:39.070 --> 01:28:39.080 align:start position:0%
see the app coming together. Now, the
 

01:28:39.080 --> 01:28:41.230 align:start position:0%
see the app coming together. Now, the
next<01:28:39.400><c> thing</c><01:28:39.600><c> that</c><01:28:39.760><c> we</c><01:28:39.920><c> want</c><01:28:40.080><c> to</c><01:28:40.200><c> do</c><01:28:40.440><c> is</c><01:28:40.840><c> we</c><01:28:41.000><c> want</c>

01:28:41.230 --> 01:28:41.240 align:start position:0%
next thing that we want to do is we want
 

01:28:41.240 --> 01:28:45.070 align:start position:0%
next thing that we want to do is we want
to<01:28:41.320><c> use</c><01:28:41.560><c> the</c><01:28:41.680><c> plan</c><01:28:42.160><c> mode</c><01:28:42.960><c> to</c><01:28:43.120><c> ask</c><01:28:43.480><c> Codex</c><01:28:44.560><c> what</c>

01:28:45.070 --> 01:28:45.080 align:start position:0%
to use the plan mode to ask Codex what
 

01:28:45.080 --> 01:28:48.790 align:start position:0%
to use the plan mode to ask Codex what
stack<01:28:46.000><c> makes</c><01:28:46.560><c> sense</c><01:28:47.360><c> for</c><01:28:47.480><c> this</c><01:28:47.720><c> first</c><01:28:48.200><c> app.</c>

01:28:48.790 --> 01:28:48.800 align:start position:0%
stack makes sense for this first app.
 

01:28:48.800 --> 01:28:50.950 align:start position:0%
stack makes sense for this first app.
The<01:28:48.880><c> important</c><01:28:49.360><c> part</c><01:28:49.720><c> is</c><01:28:49.840><c> that</c><01:28:50.080><c> Codex</c><01:28:50.640><c> should</c>

01:28:50.950 --> 01:28:50.960 align:start position:0%
The important part is that Codex should
 

01:28:50.960 --> 01:28:54.550 align:start position:0%
The important part is that Codex should
recommend<01:28:52.120><c> the</c><01:28:52.240><c> simplest</c><01:28:52.960><c> path</c><01:28:53.880><c> before</c><01:28:54.360><c> it</c>

01:28:54.550 --> 01:28:54.560 align:start position:0%
recommend the simplest path before it
 

01:28:54.560 --> 01:28:56.710 align:start position:0%
recommend the simplest path before it
edits<01:28:55.040><c> any</c><01:28:55.320><c> files.</c><01:28:55.920><c> And</c><01:28:56.080><c> as</c><01:28:56.240><c> you</c><01:28:56.360><c> might</c><01:28:56.560><c> have</c>

01:28:56.710 --> 01:28:56.720 align:start position:0%
edits any files. And as you might have
 

01:28:56.720 --> 01:28:58.590 align:start position:0%
edits any files. And as you might have
guessed,<01:28:57.240><c> we</c><01:28:57.480><c> are</c><01:28:57.600><c> going</c><01:28:57.720><c> to</c><01:28:57.800><c> be</c><01:28:57.920><c> doing</c><01:28:58.280><c> this</c>

01:28:58.590 --> 01:28:58.600 align:start position:0%
guessed, we are going to be doing this
 

01:28:58.600 --> 01:29:00.510 align:start position:0%
guessed, we are going to be doing this
in<01:28:58.800><c> plan</c><01:28:59.200><c> mode.</c><01:28:59.520><c> All</c><01:28:59.640><c> right?</c><01:28:59.920><c> And</c><01:29:00.080><c> here's</c><01:29:00.400><c> the</c>

01:29:00.510 --> 01:29:00.520 align:start position:0%
in plan mode. All right? And here's the
 

01:29:00.520 --> 01:29:02.070 align:start position:0%
in plan mode. All right? And here's the
prompt<01:29:00.840><c> that</c><01:29:01.000><c> we're</c><01:29:01.120><c> going</c><01:29:01.280><c> to</c><01:29:01.320><c> be</c><01:29:01.440><c> using.</c><01:29:01.920><c> Do</c>

01:29:02.070 --> 01:29:02.080 align:start position:0%
prompt that we're going to be using. Do
 

01:29:02.080 --> 01:29:04.790 align:start position:0%
prompt that we're going to be using. Do
not<01:29:02.560><c> edit</c><01:29:02.840><c> files</c><01:29:03.320><c> yet.</c><01:29:03.680><c> Inspect</c><01:29:04.360><c> the</c><01:29:04.440><c> current</c>

01:29:04.790 --> 01:29:04.800 align:start position:0%
not edit files yet. Inspect the current
 

01:29:04.800 --> 01:29:07.510 align:start position:0%
not edit files yet. Inspect the current
project<01:29:05.560><c> and</c><01:29:05.800><c> recommend</c><01:29:06.440><c> the</c><01:29:06.520><c> simplest</c><01:29:07.160><c> stack</c>

01:29:07.510 --> 01:29:07.520 align:start position:0%
project and recommend the simplest stack
 

01:29:07.520 --> 01:29:10.070 align:start position:0%
project and recommend the simplest stack
for<01:29:07.680><c> Habit</c><01:29:08.080><c> Card,</c><01:29:08.400><c> right?</c><01:29:09.240><c> And</c><01:29:09.360><c> we</c><01:29:09.520><c> ask</c><01:29:09.880><c> it</c>

01:29:10.070 --> 01:29:10.080 align:start position:0%
for Habit Card, right? And we ask it
 

01:29:10.080 --> 01:29:11.750 align:start position:0%
for Habit Card, right? And we ask it
what<01:29:10.280><c> what</c><01:29:10.440><c> it</c><01:29:10.680><c> should</c><01:29:10.880><c> come</c><01:29:11.080><c> back</c><01:29:11.400><c> with,</c><01:29:11.640><c> and</c>

01:29:11.750 --> 01:29:11.760 align:start position:0%
what what it should come back with, and
 

01:29:11.760 --> 01:29:14.390 align:start position:0%
what what it should come back with, and
we're<01:29:11.880><c> going</c><01:29:12.000><c> to</c><01:29:12.600><c> press</c><01:29:12.880><c> shift</c><01:29:13.240><c> tab</c><01:29:13.800><c> to</c><01:29:13.920><c> enable</c>

01:29:14.390 --> 01:29:14.400 align:start position:0%
we're going to press shift tab to enable
 

01:29:14.400 --> 01:29:16.150 align:start position:0%
we're going to press shift tab to enable
the<01:29:14.520><c> plan</c><01:29:14.880><c> mode,</c><01:29:15.120><c> of</c><01:29:15.280><c> course,</c><01:29:15.640><c> because</c><01:29:16.000><c> we</c>

01:29:16.150 --> 01:29:16.160 align:start position:0%
the plan mode, of course, because we
 

01:29:16.160 --> 01:29:20.070 align:start position:0%
the plan mode, of course, because we
want<01:29:16.520><c> it</c><01:29:16.760><c> to</c><01:29:17.560><c> come</c><01:29:17.880><c> back</c><01:29:18.280><c> to</c><01:29:18.520><c> us</c><01:29:18.960><c> if</c><01:29:19.200><c> it</c><01:29:19.400><c> needs</c>

01:29:20.070 --> 01:29:20.080 align:start position:0%
want it to come back to us if it needs
 

01:29:20.080 --> 01:29:23.630 align:start position:0%
want it to come back to us if it needs
to<01:29:20.400><c> and</c><01:29:21.000><c> ask</c><01:29:21.600><c> any</c><01:29:21.960><c> clarifying</c><01:29:22.760><c> questions.</c><01:29:23.400><c> We</c>

01:29:23.630 --> 01:29:23.640 align:start position:0%
to and ask any clarifying questions. We
 

01:29:23.640 --> 01:29:26.270 align:start position:0%
to and ask any clarifying questions. We
need<01:29:23.840><c> it</c><01:29:23.960><c> to</c><01:29:24.080><c> clarify</c><01:29:24.640><c> everything</c><01:29:25.200><c> before</c><01:29:26.120><c> we</c>

01:29:26.270 --> 01:29:26.280 align:start position:0%
need it to clarify everything before we
 

01:29:26.280 --> 01:29:29.110 align:start position:0%
need it to clarify everything before we
go<01:29:26.640><c> deeper</c><01:29:27.680><c> into</c><01:29:27.880><c> the</c><01:29:28.000><c> building</c><01:29:28.440><c> the</c><01:29:28.600><c> app.</c>

01:29:29.110 --> 01:29:29.120 align:start position:0%
go deeper into the building the app.
 

01:29:29.120 --> 01:29:30.670 align:start position:0%
go deeper into the building the app.
Okay,<01:29:29.400><c> I'm</c><01:29:29.520><c> going</c><01:29:29.640><c> to</c><01:29:29.720><c> go</c><01:29:29.840><c> ahead</c><01:29:30.080><c> and</c><01:29:30.200><c> execute</c>

01:29:30.670 --> 01:29:30.680 align:start position:0%
Okay, I'm going to go ahead and execute
 

01:29:30.680 --> 01:29:32.990 align:start position:0%
Okay, I'm going to go ahead and execute
this.<01:29:31.440><c> And</c><01:29:31.720><c> let's</c><01:29:31.960><c> see</c><01:29:32.160><c> what</c><01:29:32.320><c> it</c><01:29:32.400><c> comes</c><01:29:32.680><c> back</c>

01:29:32.990 --> 01:29:33.000 align:start position:0%
this. And let's see what it comes back
 

01:29:33.000 --> 01:29:35.830 align:start position:0%
this. And let's see what it comes back
with.<01:29:33.320><c> And</c><01:29:33.760><c> in</c><01:29:33.960><c> this</c><01:29:34.320><c> case,</c><01:29:34.840><c> it</c><01:29:35.000><c> did</c><01:29:35.200><c> not</c><01:29:35.600><c> come</c>

01:29:35.830 --> 01:29:35.840 align:start position:0%
with. And in this case, it did not come
 

01:29:35.840 --> 01:29:38.230 align:start position:0%
with. And in this case, it did not come
back<01:29:36.160><c> with</c><01:29:36.400><c> any</c><01:29:36.720><c> clarifying</c><01:29:37.400><c> questions.</c>

01:29:38.230 --> 01:29:38.240 align:start position:0%
back with any clarifying questions.
 

01:29:38.240 --> 01:29:41.110 align:start position:0%
back with any clarifying questions.
Okay?<01:29:38.800><c> So,</c><01:29:39.200><c> it's</c><01:29:39.480><c> writing</c><01:29:39.880><c> a</c><01:29:39.960><c> plan.</c><01:29:40.640><c> And</c><01:29:40.960><c> the</c>

01:29:41.110 --> 01:29:41.120 align:start position:0%
Okay? So, it's writing a plan. And the
 

01:29:41.120 --> 01:29:43.110 align:start position:0%
Okay? So, it's writing a plan. And the
recommended<01:29:41.800><c> front</c><01:29:42.040><c> end</c><01:29:42.240><c> stack</c><01:29:42.760><c> is</c><01:29:42.920><c> going</c><01:29:43.040><c> to</c>

01:29:43.110 --> 01:29:43.120 align:start position:0%
recommended front end stack is going to
 

01:29:43.120 --> 01:29:45.790 align:start position:0%
recommended front end stack is going to
be<01:29:43.240><c> React</c><01:29:44.160><c> TypeScript,</c><01:29:45.000><c> right?</c><01:29:45.320><c> It</c><01:29:45.480><c> wants</c><01:29:45.720><c> to</c>

01:29:45.790 --> 01:29:45.800 align:start position:0%
be React TypeScript, right? It wants to
 

01:29:45.800 --> 01:29:48.790 align:start position:0%
be React TypeScript, right? It wants to
use<01:29:46.040><c> Tailwind</c><01:29:46.600><c> CSS</c><01:29:47.760><c> for</c><01:29:48.120><c> fast</c><01:29:48.480><c> simple</c>

01:29:48.790 --> 01:29:48.800 align:start position:0%
use Tailwind CSS for fast simple
 

01:29:48.800 --> 01:29:51.630 align:start position:0%
use Tailwind CSS for fast simple
styling.<01:29:49.640><c> This</c><01:29:49.800><c> is</c><01:29:49.960><c> the</c><01:29:50.080><c> testing</c><01:29:50.520><c> library.</c><01:29:51.240><c> No</c>

01:29:51.630 --> 01:29:51.640 align:start position:0%
styling. This is the testing library. No
 

01:29:51.640 --> 01:29:54.430 align:start position:0%
styling. This is the testing library. No
React<01:29:52.120><c> Router.</c><01:29:52.680><c> It's</c><01:29:52.840><c> a</c><01:29:52.920><c> simple</c><01:29:53.960><c> single</c>

01:29:54.430 --> 01:29:54.440 align:start position:0%
React Router. It's a simple single
 

01:29:54.440 --> 01:29:57.230 align:start position:0%
React Router. It's a simple single
screen<01:29:54.840><c> app.</c><01:29:55.160><c> No</c><01:29:55.480><c> global</c><01:29:55.920><c> state</c><01:29:56.320><c> library.</c>

01:29:57.230 --> 01:29:57.240 align:start position:0%
screen app. No global state library.
 

01:29:57.240 --> 01:29:59.990 align:start position:0%
screen app. No global state library.
Okay?<01:29:58.200><c> Back</c><01:29:58.560><c> end</c><01:29:58.680><c> decision.</c><01:29:59.120><c> No</c><01:29:59.360><c> back</c><01:29:59.720><c> end</c><01:29:59.840><c> is</c>

01:29:59.990 --> 01:30:00.000 align:start position:0%
Okay? Back end decision. No back end is
 

01:30:00.000 --> 01:30:01.790 align:start position:0%
Okay? Back end decision. No back end is
needed<01:30:00.400><c> for</c><01:30:00.520><c> the</c><01:30:00.600><c> first</c><01:30:00.960><c> version,</c><01:30:01.400><c> right?</c><01:30:01.800><c> And</c>

01:30:01.790 --> 01:30:01.800 align:start position:0%
needed for the first version, right? And
 

01:30:01.800 --> 01:30:03.910 align:start position:0%
needed for the first version, right? And
that's<01:30:02.000><c> what</c><01:30:02.160><c> we</c><01:30:02.280><c> told</c><01:30:02.680><c> it.</c><01:30:02.960><c> We</c><01:30:03.080><c> said</c><01:30:03.400><c> bias</c>

01:30:03.910 --> 01:30:03.920 align:start position:0%
that's what we told it. We said bias
 

01:30:03.920 --> 01:30:06.350 align:start position:0%
that's what we told it. We said bias
toward<01:30:04.440><c> a</c><01:30:04.600><c> front</c><01:30:05.000><c> end</c><01:30:05.200><c> only</c><01:30:05.520><c> implementation</c>

01:30:06.350 --> 01:30:06.360 align:start position:0%
toward a front end only implementation
 

01:30:06.360 --> 01:30:08.230 align:start position:0%
toward a front end only implementation
first.<01:30:06.920><c> And</c><01:30:07.040><c> then</c><01:30:07.240><c> it's</c><01:30:07.400><c> also</c><01:30:07.800><c> going</c><01:30:07.920><c> to</c><01:30:08.000><c> use</c>

01:30:08.230 --> 01:30:08.240 align:start position:0%
first. And then it's also going to use
 

01:30:08.240 --> 01:30:10.830 align:start position:0%
first. And then it's also going to use
browser<01:30:08.840><c> verification.</c><01:30:09.920><c> Okay,</c><01:30:10.240><c> open</c><01:30:10.560><c> the</c><01:30:10.640><c> app</c>

01:30:10.830 --> 01:30:10.840 align:start position:0%
browser verification. Okay, open the app
 

01:30:10.840 --> 01:30:12.670 align:start position:0%
browser verification. Okay, open the app
in<01:30:10.920><c> the</c><01:30:11.040><c> browser,</c><01:30:11.560><c> verify</c><01:30:12.080><c> all</c><01:30:12.200><c> this.</c><01:30:12.400><c> Okay,</c>

01:30:12.670 --> 01:30:12.680 align:start position:0%
in the browser, verify all this. Okay,
 

01:30:12.680 --> 01:30:15.390 align:start position:0%
in the browser, verify all this. Okay,
so<01:30:12.800><c> let's</c><01:30:13.040><c> go</c><01:30:13.160><c> ahead</c><01:30:13.440><c> and</c><01:30:13.680><c> and</c><01:30:14.400><c> run</c><01:30:14.800><c> this.</c><01:30:15.320><c> All</c>

01:30:15.390 --> 01:30:15.400 align:start position:0%
so let's go ahead and and run this. All
 

01:30:15.400 --> 01:30:18.110 align:start position:0%
so let's go ahead and and run this. All
right,<01:30:15.640><c> so</c><01:30:15.760><c> it</c><01:30:16.000><c> worked</c><01:30:16.360><c> for</c><01:30:16.520><c> about</c><01:30:16.920><c> 10</c><01:30:17.240><c> minutes</c>

01:30:18.110 --> 01:30:18.120 align:start position:0%
right, so it worked for about 10 minutes
 

01:30:18.120 --> 01:30:20.990 align:start position:0%
right, so it worked for about 10 minutes
and<01:30:18.240><c> it</c><01:30:18.360><c> has</c><01:30:18.600><c> implemented</c><01:30:19.440><c> the</c><01:30:19.560><c> habit</c><01:30:20.000><c> card</c><01:30:20.760><c> as</c>

01:30:20.990 --> 01:30:21.000 align:start position:0%
and it has implemented the habit card as
 

01:30:21.000 --> 01:30:23.830 align:start position:0%
and it has implemented the habit card as
a<01:30:21.080><c> front-end</c><01:30:21.720><c> only</c><01:30:22.320><c> React</c><01:30:22.920><c> TypeScript</c><01:30:23.640><c> app.</c>

01:30:23.830 --> 01:30:23.840 align:start position:0%
a front-end only React TypeScript app.
 

01:30:23.840 --> 01:30:25.110 align:start position:0%
a front-end only React TypeScript app.
This<01:30:24.000><c> is</c><01:30:24.120><c> where</c><01:30:24.280><c> it</c><01:30:24.360><c> is</c><01:30:24.480><c> and</c><01:30:24.560><c> this</c><01:30:24.720><c> is</c><01:30:24.840><c> what</c><01:30:25.000><c> it</c>

01:30:25.110 --> 01:30:25.120 align:start position:0%
This is where it is and this is what it
 

01:30:25.120 --> 01:30:26.910 align:start position:0%
This is where it is and this is what it
did,<01:30:25.360><c> right?</c><01:30:25.560><c> It</c><01:30:25.680><c> built</c><01:30:25.920><c> the</c><01:30:26.000><c> app</c><01:30:26.320><c> shell</c><01:30:26.720><c> and</c>

01:30:26.910 --> 01:30:26.920 align:start position:0%
did, right? It built the app shell and
 

01:30:26.920 --> 01:30:27.990 align:start position:0%
did, right? It built the app shell and
UI,

01:30:27.990 --> 01:30:28.000 align:start position:0%
UI,
 

01:30:28.000 --> 01:30:31.510 align:start position:0%
UI,
habit<01:30:28.360><c> logic,</c><01:30:29.000><c> local</c><01:30:29.400><c> storage,</c><01:30:30.400><c> components</c>

01:30:31.510 --> 01:30:31.520 align:start position:0%
habit logic, local storage, components
 

01:30:31.520 --> 01:30:33.830 align:start position:0%
habit logic, local storage, components
for<01:30:31.800><c> adding</c><01:30:32.160><c> form</c><01:30:32.600><c> for</c><01:30:32.720><c> the</c><01:30:32.840><c> add</c><01:30:33.160><c> form,</c><01:30:33.520><c> list</c>

01:30:33.830 --> 01:30:33.840 align:start position:0%
for adding form for the add form, list
 

01:30:33.840 --> 01:30:36.950 align:start position:0%
for adding form for the add form, list
card,<01:30:34.200><c> and</c><01:30:34.360><c> empty</c><01:30:34.640><c> state.</c><01:30:35.560><c> Tests</c><01:30:36.240><c> for</c><01:30:36.640><c> app</c>

01:30:36.950 --> 01:30:36.960 align:start position:0%
card, and empty state. Tests for app
 

01:30:36.960 --> 01:30:39.910 align:start position:0%
card, and empty state. Tests for app
flow<01:30:37.240><c> logic</c><01:30:37.720><c> and</c><01:30:37.840><c> storage,</c><01:30:38.560><c> and</c><01:30:39.040><c> verification</c>

01:30:39.910 --> 01:30:39.920 align:start position:0%
flow logic and storage, and verification
 

01:30:39.920 --> 01:30:42.150 align:start position:0%
flow logic and storage, and verification
passed<01:30:40.440><c> nine</c><01:30:40.760><c> tests,</c><01:30:41.280><c> production</c><01:30:41.840><c> build</c>

01:30:42.150 --> 01:30:42.160 align:start position:0%
passed nine tests, production build
 

01:30:42.160 --> 01:30:44.950 align:start position:0%
passed nine tests, production build
succeeded.<01:30:42.800><c> And</c><01:30:42.920><c> it</c><01:30:43.080><c> also</c><01:30:43.600><c> gave</c><01:30:43.960><c> us</c><01:30:44.320><c> a</c><01:30:44.480><c> dev</c>

01:30:44.950 --> 01:30:44.960 align:start position:0%
succeeded. And it also gave us a dev
 

01:30:44.960 --> 01:30:47.790 align:start position:0%
succeeded. And it also gave us a dev
server<01:30:45.920><c> that</c><01:30:46.120><c> is</c><01:30:46.320><c> running</c><01:30:46.720><c> the</c><01:30:46.880><c> app.</c><01:30:47.440><c> And</c><01:30:47.640><c> so</c>

01:30:47.790 --> 01:30:47.800 align:start position:0%
server that is running the app. And so
 

01:30:47.800 --> 01:30:50.390 align:start position:0%
server that is running the app. And so
this<01:30:48.080><c> dev</c><01:30:48.360><c> server</c><01:30:48.840><c> is</c><01:30:49.120><c> running</c><01:30:49.520><c> on</c><01:30:49.680><c> my</c><01:30:49.920><c> machine</c>

01:30:50.390 --> 01:30:50.400 align:start position:0%
this dev server is running on my machine
 

01:30:50.400 --> 01:30:52.910 align:start position:0%
this dev server is running on my machine
right<01:30:50.680><c> now</c><01:30:51.000><c> and</c><01:30:51.160><c> this</c><01:30:51.360><c> allows</c><01:30:51.880><c> us</c><01:30:52.400><c> to</c><01:30:52.520><c> quickly</c>

01:30:52.910 --> 01:30:52.920 align:start position:0%
right now and this allows us to quickly
 

01:30:52.920 --> 01:30:55.470 align:start position:0%
right now and this allows us to quickly
test<01:30:53.360><c> things</c><01:30:54.120><c> without</c><01:30:54.520><c> needing</c><01:30:54.840><c> to</c><01:30:54.960><c> deploy</c>

01:30:55.470 --> 01:30:55.480 align:start position:0%
test things without needing to deploy
 

01:30:55.480 --> 01:30:57.110 align:start position:0%
test things without needing to deploy
and<01:30:55.640><c> test</c><01:30:55.960><c> there.</c><01:30:56.320><c> And</c><01:30:56.440><c> on</c><01:30:56.560><c> the</c><01:30:56.680><c> right-hand</c>

01:30:57.110 --> 01:30:57.120 align:start position:0%
and test there. And on the right-hand
 

01:30:57.120 --> 01:30:59.070 align:start position:0%
and test there. And on the right-hand
side<01:30:57.320><c> we</c><01:30:57.440><c> have</c><01:30:57.640><c> this</c><01:30:57.840><c> card</c><01:30:58.280><c> that</c><01:30:58.440><c> is</c><01:30:58.640><c> always</c>

01:30:59.070 --> 01:30:59.080 align:start position:0%
side we have this card that is always
 

01:30:59.080 --> 01:31:01.430 align:start position:0%
side we have this card that is always
available<01:30:59.680><c> and</c><01:30:59.800><c> it</c><01:30:59.960><c> shows</c><01:31:00.520><c> us</c>

01:31:01.430 --> 01:31:01.440 align:start position:0%
available and it shows us
 

01:31:01.440 --> 01:31:03.710 align:start position:0%
available and it shows us
things<01:31:01.720><c> like</c><01:31:02.080><c> artifacts,</c><01:31:03.120><c> background</c>

01:31:03.710 --> 01:31:03.720 align:start position:0%
things like artifacts, background
 

01:31:03.720 --> 01:31:05.590 align:start position:0%
things like artifacts, background
terminal,<01:31:04.320><c> and</c><01:31:04.400><c> basically</c>

01:31:05.590 --> 01:31:05.600 align:start position:0%
terminal, and basically
 

01:31:05.600 --> 01:31:08.430 align:start position:0%
terminal, and basically
things<01:31:06.360><c> that</c><01:31:06.760><c> were</c><01:31:07.000><c> created</c><01:31:07.800><c> as</c><01:31:08.000><c> part</c><01:31:08.200><c> of</c><01:31:08.240><c> this</c>

01:31:08.430 --> 01:31:08.440 align:start position:0%
things that were created as part of this
 

01:31:08.440 --> 01:31:10.270 align:start position:0%
things that were created as part of this
conversation.<01:31:09.480><c> Okay,</c><01:31:09.760><c> so</c><01:31:09.880><c> we</c><01:31:10.000><c> have</c><01:31:10.160><c> the</c>

01:31:10.270 --> 01:31:10.280 align:start position:0%
conversation. Okay, so we have the
 

01:31:10.280 --> 01:31:11.910 align:start position:0%
conversation. Okay, so we have the
images<01:31:10.680><c> that</c><01:31:10.840><c> were</c><01:31:10.960><c> generated,</c><01:31:11.520><c> we</c><01:31:11.640><c> have</c><01:31:11.800><c> the</c>

01:31:11.910 --> 01:31:11.920 align:start position:0%
images that were generated, we have the
 

01:31:11.920 --> 01:31:14.630 align:start position:0%
images that were generated, we have the
index.html<01:31:13.240><c> for</c><01:31:13.400><c> the</c><01:31:13.520><c> app.</c><01:31:14.200><c> We</c><01:31:14.360><c> have</c><01:31:14.520><c> the</c>

01:31:14.630 --> 01:31:14.640 align:start position:0%
index.html for the app. We have the
 

01:31:14.640 --> 01:31:16.510 align:start position:0%
index.html for the app. We have the
background<01:31:15.200><c> terminal</c><01:31:15.680><c> that</c><01:31:15.840><c> is</c><01:31:16.040><c> running</c>

01:31:16.510 --> 01:31:16.520 align:start position:0%
background terminal that is running
 

01:31:16.520 --> 01:31:18.870 align:start position:0%
background terminal that is running
here.<01:31:17.320><c> And</c><01:31:17.480><c> so</c><01:31:17.680><c> I</c><01:31:17.760><c> can</c><01:31:17.960><c> click</c><01:31:18.280><c> here</c><01:31:18.560><c> and</c><01:31:18.680><c> that's</c>

01:31:18.870 --> 01:31:18.880 align:start position:0%
here. And so I can click here and that's
 

01:31:18.880 --> 01:31:20.790 align:start position:0%
here. And so I can click here and that's
going<01:31:19.000><c> to</c><01:31:19.080><c> go</c><01:31:19.240><c> ahead</c><01:31:19.680><c> and</c><01:31:19.880><c> and</c><01:31:20.080><c> go</c><01:31:20.360><c> to</c><01:31:20.640><c> the</c>

01:31:20.790 --> 01:31:20.800 align:start position:0%
going to go ahead and and go to the
 

01:31:20.800 --> 01:31:23.590 align:start position:0%
going to go ahead and and go to the
server<01:31:21.280><c> that's</c><01:31:21.680><c> running</c><01:31:22.240><c> our</c><01:31:22.480><c> app.</c><01:31:22.760><c> So</c><01:31:23.360><c> let's</c>

01:31:23.590 --> 01:31:23.600 align:start position:0%
server that's running our app. So let's
 

01:31:23.600 --> 01:31:25.070 align:start position:0%
server that's running our app. So let's
do<01:31:23.760><c> that.</c><01:31:24.080><c> That's</c><01:31:24.280><c> going</c><01:31:24.400><c> to</c><01:31:24.480><c> go</c><01:31:24.640><c> ahead</c><01:31:24.880><c> and</c>

01:31:25.070 --> 01:31:25.080 align:start position:0%
do that. That's going to go ahead and
 

01:31:25.080 --> 01:31:26.590 align:start position:0%
do that. That's going to go ahead and
open.<01:31:25.480><c> It's</c><01:31:25.640><c> also</c><01:31:25.880><c> going</c><01:31:26.000><c> to</c><01:31:26.120><c> open</c><01:31:26.480><c> the</c>

01:31:26.590 --> 01:31:26.600 align:start position:0%
open. It's also going to open the
 

01:31:26.600 --> 01:31:28.990 align:start position:0%
open. It's also going to open the
browser<01:31:27.600><c> right</c><01:31:28.000><c> here</c><01:31:28.240><c> in</c><01:31:28.320><c> the</c><01:31:28.480><c> right-hand</c>

01:31:28.990 --> 01:31:29.000 align:start position:0%
browser right here in the right-hand
 

01:31:29.000 --> 01:31:31.110 align:start position:0%
browser right here in the right-hand
pane.<01:31:29.280><c> Now,</c><01:31:29.520><c> before</c><01:31:30.040><c> we</c><01:31:30.200><c> had</c><01:31:30.560><c> we</c><01:31:30.720><c> had</c><01:31:30.920><c> no</c>

01:31:31.110 --> 01:31:31.120 align:start position:0%
pane. Now, before we had we had no
 

01:31:31.120 --> 01:31:32.950 align:start position:0%
pane. Now, before we had we had no
right-hand<01:31:31.640><c> pane,</c><01:31:31.920><c> but</c><01:31:32.040><c> if</c><01:31:32.160><c> you</c><01:31:32.280><c> click</c><01:31:32.600><c> here,</c>

01:31:32.950 --> 01:31:32.960 align:start position:0%
right-hand pane, but if you click here,
 

01:31:32.960 --> 01:31:35.110 align:start position:0%
right-hand pane, but if you click here,
you<01:31:33.080><c> can</c><01:31:33.280><c> see</c><01:31:33.480><c> that</c><01:31:33.600><c> it</c><01:31:33.760><c> opens</c><01:31:34.160><c> up</c><01:31:34.360><c> here</c><01:31:34.840><c> right</c>

01:31:35.110 --> 01:31:35.120 align:start position:0%
you can see that it opens up here right
 

01:31:35.120 --> 01:31:36.590 align:start position:0%
you can see that it opens up here right
there.<01:31:35.480><c> Another</c><01:31:35.800><c> thing</c><01:31:35.960><c> that</c><01:31:36.120><c> you</c><01:31:36.200><c> can</c><01:31:36.360><c> do</c><01:31:36.480><c> is</c>

01:31:36.590 --> 01:31:36.600 align:start position:0%
there. Another thing that you can do is
 

01:31:36.600 --> 01:31:38.630 align:start position:0%
there. Another thing that you can do is
you<01:31:36.720><c> can</c><01:31:36.840><c> open</c><01:31:37.120><c> the</c><01:31:37.200><c> browser</c><01:31:37.720><c> directly.</c><01:31:38.440><c> This</c>

01:31:38.630 --> 01:31:38.640 align:start position:0%
you can open the browser directly. This
 

01:31:38.640 --> 01:31:40.990 align:start position:0%
you can open the browser directly. This
is<01:31:38.760><c> the</c><01:31:38.840><c> front</c><01:31:39.120><c> page</c><01:31:39.480><c> here</c><01:31:39.800><c> and</c><01:31:40.240><c> I</c><01:31:40.360><c> can</c><01:31:40.680><c> add</c><01:31:40.920><c> a</c>

01:31:40.990 --> 01:31:41.000 align:start position:0%
is the front page here and I can add a
 

01:31:41.000 --> 01:31:43.790 align:start position:0%
is the front page here and I can add a
habit,<01:31:41.680><c> habit</c><01:31:42.160><c> one.</c><01:31:42.960><c> I</c><01:31:43.080><c> can</c><01:31:43.240><c> click</c><01:31:43.520><c> here</c><01:31:43.680><c> and</c>

01:31:43.790 --> 01:31:43.800 align:start position:0%
habit, habit one. I can click here and
 

01:31:43.800 --> 01:31:45.790 align:start position:0%
habit, habit one. I can click here and
we<01:31:43.920><c> have</c><01:31:44.120><c> a</c><01:31:44.200><c> habit</c><01:31:44.680><c> here.</c><01:31:44.960><c> I</c><01:31:45.080><c> can</c><01:31:45.320><c> add</c><01:31:45.440><c> another</c>

01:31:45.790 --> 01:31:45.800 align:start position:0%
we have a habit here. I can add another
 

01:31:45.800 --> 01:31:46.870 align:start position:0%
we have a habit here. I can add another
habit,

01:31:46.870 --> 01:31:46.880 align:start position:0%
habit,
 

01:31:46.880 --> 01:31:49.790 align:start position:0%
habit,
habit<01:31:47.320><c> two</c><01:31:48.040><c> or</c><01:31:48.240><c> maybe</c><01:31:48.800><c> gym.</c><01:31:49.480><c> And</c><01:31:49.640><c> it's</c>

01:31:49.790 --> 01:31:49.800 align:start position:0%
habit two or maybe gym. And it's
 

01:31:49.800 --> 01:31:51.910 align:start position:0%
habit two or maybe gym. And it's
creating<01:31:50.280><c> these</c><01:31:50.600><c> these</c><01:31:50.880><c> habits</c><01:31:51.400><c> here.</c><01:31:51.680><c> So</c><01:31:51.840><c> I</c>

01:31:51.910 --> 01:31:51.920 align:start position:0%
creating these these habits here. So I
 

01:31:51.920 --> 01:31:54.350 align:start position:0%
creating these these habits here. So I
can<01:31:52.120><c> check</c><01:31:52.440><c> it</c><01:31:52.600><c> off</c><01:31:53.040><c> and</c><01:31:53.200><c> that</c><01:31:53.360><c> is</c><01:31:53.520><c> done.</c><01:31:54.040><c> Check</c>

01:31:54.350 --> 01:31:54.360 align:start position:0%
can check it off and that is done. Check
 

01:31:54.360 --> 01:31:56.870 align:start position:0%
can check it off and that is done. Check
it<01:31:54.480><c> off.</c><01:31:54.680><c> And</c><01:31:54.800><c> so</c><01:31:55.160><c> it's</c><01:31:55.440><c> a</c><01:31:55.520><c> very</c><01:31:56.000><c> very</c><01:31:56.360><c> simple</c>

01:31:56.870 --> 01:31:56.880 align:start position:0%
it off. And so it's a very very simple
 

01:31:56.880 --> 01:31:58.750 align:start position:0%
it off. And so it's a very very simple
app.<01:31:57.240><c> And</c><01:31:57.560><c> if</c><01:31:57.680><c> you</c><01:31:57.800><c> want</c><01:31:57.960><c> to</c><01:31:58.040><c> see</c><01:31:58.200><c> the</c><01:31:58.320><c> actual</c>

01:31:58.750 --> 01:31:58.760 align:start position:0%
app. And if you want to see the actual
 

01:31:58.760 --> 01:32:01.190 align:start position:0%
app. And if you want to see the actual
files<01:31:59.240><c> that</c><01:31:59.360><c> were</c><01:31:59.520><c> created</c><01:31:59.960><c> as</c><01:32:00.120><c> part</c><01:32:00.320><c> of</c><01:32:00.440><c> this,</c>

01:32:01.190 --> 01:32:01.200 align:start position:0%
files that were created as part of this,
 

01:32:01.200 --> 01:32:04.830 align:start position:0%
files that were created as part of this,
you<01:32:01.360><c> can</c><01:32:01.600><c> simply</c><01:32:02.000><c> right</c><01:32:02.480><c> click</c><01:32:02.840><c> here</c><01:32:03.880><c> and</c><01:32:04.520><c> open</c>

01:32:04.830 --> 01:32:04.840 align:start position:0%
you can simply right click here and open
 

01:32:04.840 --> 01:32:06.870 align:start position:0%
you can simply right click here and open
in<01:32:05.000><c> finder.</c><01:32:05.440><c> And</c><01:32:05.560><c> this</c><01:32:05.720><c> is</c><01:32:05.840><c> the</c><01:32:05.960><c> React</c><01:32:06.480><c> app</c>

01:32:06.870 --> 01:32:06.880 align:start position:0%
in finder. And this is the React app
 

01:32:06.880 --> 01:32:09.110 align:start position:0%
in finder. And this is the React app
that<01:32:07.120><c> was</c><01:32:07.400><c> created</c><01:32:07.960><c> for</c><01:32:08.080><c> this</c><01:32:08.360><c> here.</c><01:32:08.640><c> Once</c><01:32:09.000><c> the</c>

01:32:09.110 --> 01:32:09.120 align:start position:0%
that was created for this here. Once the
 

01:32:09.120 --> 01:32:12.030 align:start position:0%
that was created for this here. Once the
UI<01:32:09.600><c> works,</c><01:32:10.080><c> we'll</c><01:32:10.320><c> add</c><01:32:10.600><c> a</c><01:32:10.720><c> small</c><01:32:11.200><c> persistence</c>

01:32:12.030 --> 01:32:12.040 align:start position:0%
UI works, we'll add a small persistence
 

01:32:12.040 --> 01:32:14.790 align:start position:0%
UI works, we'll add a small persistence
step<01:32:12.480><c> with</c><01:32:12.720><c> local</c><01:32:13.120><c> storage.</c><01:32:13.960><c> Habits</c><01:32:14.640><c> and</c>

01:32:14.790 --> 01:32:14.800 align:start position:0%
step with local storage. Habits and
 

01:32:14.800 --> 01:32:17.270 align:start position:0%
step with local storage. Habits and
today's<01:32:15.200><c> check-ins</c><01:32:15.920><c> can</c><01:32:16.160><c> persist</c><01:32:16.880><c> after</c>

01:32:17.270 --> 01:32:17.280 align:start position:0%
today's check-ins can persist after
 

01:32:17.280 --> 01:32:20.910 align:start position:0%
today's check-ins can persist after
refresh.<01:32:18.480><c> So,</c><01:32:18.640><c> the</c><01:32:18.800><c> app</c><01:32:19.040><c> starts</c><01:32:19.440><c> to</c><01:32:19.560><c> feel</c><01:32:20.000><c> real</c>

01:32:20.910 --> 01:32:20.920 align:start position:0%
refresh. So, the app starts to feel real
 

01:32:20.920 --> 01:32:24.110 align:start position:0%
refresh. So, the app starts to feel real
without<01:32:21.280><c> introducing</c><01:32:22.200><c> a</c><01:32:22.360><c> backend</c><01:32:23.200><c> yet.</c><01:32:23.840><c> And</c>

01:32:24.110 --> 01:32:24.120 align:start position:0%
without introducing a backend yet. And
 

01:32:24.120 --> 01:32:25.310 align:start position:0%
without introducing a backend yet. And
this<01:32:24.320><c> is</c><01:32:24.440><c> the</c><01:32:24.560><c> prompt</c><01:32:24.840><c> that</c><01:32:24.960><c> we're</c><01:32:25.120><c> going</c><01:32:25.240><c> to</c>

01:32:25.310 --> 01:32:25.320 align:start position:0%
this is the prompt that we're going to
 

01:32:25.320 --> 01:32:28.270 align:start position:0%
this is the prompt that we're going to
be<01:32:25.480><c> using.</c><01:32:26.200><c> Upgrade</c><01:32:26.840><c> habit</c><01:32:27.280><c> card</c><01:32:27.640><c> so</c><01:32:27.800><c> habits</c>

01:32:28.270 --> 01:32:28.280 align:start position:0%
be using. Upgrade habit card so habits
 

01:32:28.280 --> 01:32:30.710 align:start position:0%
be using. Upgrade habit card so habits
and<01:32:28.440><c> today's</c><01:32:28.800><c> check-ins</c><01:32:29.440><c> persist</c><01:32:30.160><c> with</c><01:32:30.360><c> local</c>

01:32:30.710 --> 01:32:30.720 align:start position:0%
and today's check-ins persist with local
 

01:32:30.720 --> 01:32:32.670 align:start position:0%
and today's check-ins persist with local
storage.<01:32:31.240><c> I'm</c><01:32:31.320><c> going</c><01:32:31.440><c> to</c><01:32:31.560><c> jump</c><01:32:31.960><c> into</c><01:32:32.240><c> the</c><01:32:32.360><c> plan</c>

01:32:32.670 --> 01:32:32.680 align:start position:0%
storage. I'm going to jump into the plan
 

01:32:32.680 --> 01:32:35.030 align:start position:0%
storage. I'm going to jump into the plan
mode<01:32:33.000><c> here</c><01:32:33.440><c> just</c><01:32:33.800><c> in</c><01:32:33.920><c> case.</c>

01:32:35.030 --> 01:32:35.040 align:start position:0%
mode here just in case.
 

01:32:35.040 --> 01:32:36.790 align:start position:0%
mode here just in case.
And<01:32:35.200><c> I'm</c><01:32:35.280><c> going</c><01:32:35.400><c> to</c><01:32:35.520><c> go</c><01:32:35.640><c> ahead</c><01:32:35.920><c> and</c><01:32:36.080><c> run</c><01:32:36.240><c> this.</c>

01:32:36.790 --> 01:32:36.800 align:start position:0%
And I'm going to go ahead and run this.
 

01:32:36.800 --> 01:32:38.270 align:start position:0%
And I'm going to go ahead and run this.
Now,<01:32:36.960><c> it's</c><01:32:37.120><c> actually</c><01:32:37.480><c> telling</c><01:32:37.920><c> us</c><01:32:38.080><c> that</c>

01:32:38.270 --> 01:32:38.280 align:start position:0%
Now, it's actually telling us that
 

01:32:38.280 --> 01:32:40.710 align:start position:0%
Now, it's actually telling us that
inspection<01:32:39.080><c> shows</c><01:32:39.400><c> that</c><01:32:39.560><c> habit</c><01:32:39.880><c> card</c><01:32:40.160><c> already</c>

01:32:40.710 --> 01:32:40.720 align:start position:0%
inspection shows that habit card already
 

01:32:40.720 --> 01:32:43.110 align:start position:0%
inspection shows that habit card already
implements<01:32:41.200><c> the</c><01:32:41.320><c> requested</c><01:32:41.840><c> front-end</c><01:32:42.280><c> only</c>

01:32:43.110 --> 01:32:43.120 align:start position:0%
implements the requested front-end only
 

01:32:43.120 --> 01:32:46.230 align:start position:0%
implements the requested front-end only
local<01:32:43.560><c> storage</c><01:32:44.080><c> persistence.</c><01:32:44.960><c> Okay?</c><01:32:45.840><c> So,</c><01:32:46.000><c> no</c>

01:32:46.230 --> 01:32:46.240 align:start position:0%
local storage persistence. Okay? So, no
 

01:32:46.240 --> 01:32:48.350 align:start position:0%
local storage persistence. Okay? So, no
file<01:32:46.640><c> edits</c><01:32:47.040><c> are</c><01:32:47.200><c> needed</c><01:32:47.560><c> for</c><01:32:47.680><c> this</c><01:32:47.880><c> upgrade.</c>

01:32:48.350 --> 01:32:48.360 align:start position:0%
file edits are needed for this upgrade.
 

01:32:48.360 --> 01:32:50.990 align:start position:0%
file edits are needed for this upgrade.
So,<01:32:48.520><c> we</c><01:32:48.720><c> must</c><01:32:49.160><c> have</c><01:32:49.440><c> done</c><01:32:49.760><c> this</c><01:32:50.440><c> in</c><01:32:50.600><c> one</c><01:32:50.760><c> of</c><01:32:50.880><c> the</c>

01:32:50.990 --> 01:32:51.000 align:start position:0%
So, we must have done this in one of the
 

01:32:51.000 --> 01:32:53.590 align:start position:0%
So, we must have done this in one of the
previous<01:32:51.600><c> prompts.</c><01:32:52.320><c> But,</c><01:32:52.640><c> if</c><01:32:52.760><c> we</c><01:32:52.920><c> hadn't</c><01:32:53.360><c> done</c>

01:32:53.590 --> 01:32:53.600 align:start position:0%
previous prompts. But, if we hadn't done
 

01:32:53.600 --> 01:32:55.750 align:start position:0%
previous prompts. But, if we hadn't done
this,<01:32:54.240><c> then</c><01:32:54.560><c> we</c><01:32:54.680><c> would</c><01:32:54.880><c> run</c><01:32:55.120><c> this</c><01:32:55.360><c> prompt.</c>

01:32:55.750 --> 01:32:55.760 align:start position:0%
this, then we would run this prompt.
 

01:32:55.760 --> 01:32:57.230 align:start position:0%
this, then we would run this prompt.
But,<01:32:55.920><c> still,</c><01:32:56.120><c> let's</c><01:32:56.320><c> go</c><01:32:56.440><c> ahead</c><01:32:56.680><c> and</c><01:32:56.800><c> run</c><01:32:57.080><c> it.</c>

01:32:57.230 --> 01:32:57.240 align:start position:0%
But, still, let's go ahead and run it.
 

01:32:57.240 --> 01:32:59.070 align:start position:0%
But, still, let's go ahead and run it.
And<01:32:57.400><c> now</c><01:32:57.520><c> it</c><01:32:57.560><c> tells</c><01:32:57.840><c> us</c><01:32:58.000><c> that</c><01:32:58.240><c> persistence</c>

01:32:59.070 --> 01:32:59.080 align:start position:0%
And now it tells us that persistence
 

01:32:59.080 --> 01:33:02.150 align:start position:0%
And now it tells us that persistence
works<01:32:59.560><c> through</c><01:33:00.080><c> this</c><01:33:00.520><c> storage</c><01:33:01.160><c> using</c><01:33:01.680><c> these</c>

01:33:02.150 --> 01:33:02.160 align:start position:0%
works through this storage using these
 

01:33:02.160 --> 01:33:05.270 align:start position:0%
works through this storage using these
keys<01:33:03.360><c> and</c><01:33:03.760><c> a</c><01:33:03.800><c> lot</c><01:33:04.040><c> of</c><01:33:04.160><c> other</c><01:33:04.400><c> details</c><01:33:05.040><c> here.</c>

01:33:05.270 --> 01:33:05.280 align:start position:0%
keys and a lot of other details here.
 

01:33:05.280 --> 01:33:08.150 align:start position:0%
keys and a lot of other details here.
Okay?<01:33:05.560><c> So,</c><01:33:05.800><c> we</c><01:33:06.000><c> can</c><01:33:06.600><c> reload</c><01:33:07.280><c> this</c>

01:33:08.150 --> 01:33:08.160 align:start position:0%
Okay? So, we can reload this
 

01:33:08.160 --> 01:33:10.150 align:start position:0%
Okay? So, we can reload this
and<01:33:08.320><c> now</c><01:33:08.560><c> we</c><01:33:08.720><c> have</c><01:33:08.920><c> something</c><01:33:09.320><c> called</c><01:33:09.640><c> local</c>

01:33:10.150 --> 01:33:10.160 align:start position:0%
and now we have something called local
 

01:33:10.160 --> 01:33:12.030 align:start position:0%
and now we have something called local
storage.<01:33:10.960><c> And</c><01:33:11.080><c> what</c><01:33:11.240><c> this</c><01:33:11.400><c> means</c><01:33:11.680><c> is</c><01:33:11.800><c> that</c>

01:33:12.030 --> 01:33:12.040 align:start position:0%
storage. And what this means is that
 

01:33:12.040 --> 01:33:14.830 align:start position:0%
storage. And what this means is that
this<01:33:12.280><c> app</c><01:33:12.520><c> does</c><01:33:12.680><c> not</c><01:33:12.920><c> have</c><01:33:13.120><c> a</c><01:33:13.200><c> backend,</c><01:33:14.320><c> but</c>

01:33:14.830 --> 01:33:14.840 align:start position:0%
this app does not have a backend, but
 

01:33:14.840 --> 01:33:17.030 align:start position:0%
this app does not have a backend, but
this<01:33:15.080><c> stuff</c><01:33:15.520><c> is</c><01:33:15.680><c> going</c><01:33:15.840><c> to</c><01:33:15.920><c> be</c><01:33:16.040><c> stored</c><01:33:16.560><c> on</c><01:33:16.720><c> my</c>

01:33:17.030 --> 01:33:17.040 align:start position:0%
this stuff is going to be stored on my
 

01:33:17.040 --> 01:33:19.990 align:start position:0%
this stuff is going to be stored on my
browser.<01:33:17.840><c> Okay?</c><01:33:18.160><c> So,</c><01:33:18.920><c> if</c><01:33:19.120><c> I'm</c><01:33:19.320><c> using</c><01:33:19.680><c> this</c>

01:33:19.990 --> 01:33:20.000 align:start position:0%
browser. Okay? So, if I'm using this
 

01:33:20.000 --> 01:33:21.710 align:start position:0%
browser. Okay? So, if I'm using this
instance,<01:33:20.640><c> it's</c><01:33:20.840><c> going</c><01:33:20.960><c> to</c><01:33:21.040><c> be</c><01:33:21.160><c> stored</c><01:33:21.520><c> on</c>

01:33:21.710 --> 01:33:21.720 align:start position:0%
instance, it's going to be stored on
 

01:33:21.720 --> 01:33:23.870 align:start position:0%
instance, it's going to be stored on
this<01:33:22.040><c> browser.</c><01:33:22.600><c> If</c><01:33:22.800><c> I</c><01:33:22.880><c> run</c><01:33:23.120><c> it</c><01:33:23.280><c> in</c><01:33:23.400><c> a</c><01:33:23.480><c> different</c>

01:33:23.870 --> 01:33:23.880 align:start position:0%
this browser. If I run it in a different
 

01:33:23.880 --> 01:33:25.910 align:start position:0%
this browser. If I run it in a different
browser,<01:33:24.840><c> then</c><01:33:25.040><c> it's</c><01:33:25.200><c> not</c><01:33:25.400><c> going</c><01:33:25.520><c> to</c><01:33:25.640><c> have</c><01:33:25.800><c> the</c>

01:33:25.910 --> 01:33:25.920 align:start position:0%
browser, then it's not going to have the
 

01:33:25.920 --> 01:33:27.750 align:start position:0%
browser, then it's not going to have the
data.<01:33:26.320><c> So,</c><01:33:26.520><c> whatever</c><01:33:26.840><c> I</c><01:33:26.920><c> do</c><01:33:27.080><c> in</c><01:33:27.200><c> that</c><01:33:27.440><c> new</c>

01:33:27.750 --> 01:33:27.760 align:start position:0%
data. So, whatever I do in that new
 

01:33:27.760 --> 01:33:30.710 align:start position:0%
data. So, whatever I do in that new
browser<01:33:28.840><c> is</c><01:33:29.040><c> going</c><01:33:29.200><c> to</c><01:33:29.280><c> have</c><01:33:29.560><c> fresh</c><01:33:30.000><c> data.</c><01:33:30.560><c> And</c>

01:33:30.710 --> 01:33:30.720 align:start position:0%
browser is going to have fresh data. And
 

01:33:30.720 --> 01:33:33.910 align:start position:0%
browser is going to have fresh data. And
so,<01:33:30.920><c> this</c><01:33:31.160><c> is</c><01:33:31.400><c> a</c><01:33:31.560><c> way</c><01:33:32.600><c> to</c><01:33:32.760><c> create,</c><01:33:33.640><c> you</c><01:33:33.760><c> know,</c>

01:33:33.910 --> 01:33:33.920 align:start position:0%
so, this is a way to create, you know,
 

01:33:33.920 --> 01:33:36.670 align:start position:0%
so, this is a way to create, you know,
storage<01:33:34.840><c> just</c><01:33:35.160><c> for</c><01:33:35.320><c> testing</c><01:33:35.880><c> me.</c><01:33:36.160><c> I</c><01:33:36.240><c> mean,</c><01:33:36.480><c> you</c>

01:33:36.670 --> 01:33:36.680 align:start position:0%
storage just for testing me. I mean, you
 

01:33:36.680 --> 01:33:38.910 align:start position:0%
storage just for testing me. I mean, you
can<01:33:36.920><c> use</c><01:33:37.160><c> this</c><01:33:37.360><c> in</c><01:33:37.480><c> production</c><01:33:37.960><c> as</c><01:33:38.120><c> well</c><01:33:38.720><c> for</c>

01:33:38.910 --> 01:33:38.920 align:start position:0%
can use this in production as well for
 

01:33:38.920 --> 01:33:41.150 align:start position:0%
can use this in production as well for
certain<01:33:39.440><c> apps,</c><01:33:39.880><c> for</c><01:33:40.080><c> certain</c><01:33:40.400><c> situations.</c><01:33:41.080><c> It</c>

01:33:41.150 --> 01:33:41.160 align:start position:0%
certain apps, for certain situations. It
 

01:33:41.160 --> 01:33:43.350 align:start position:0%
certain apps, for certain situations. It
does<01:33:41.360><c> have</c><01:33:41.520><c> its</c><01:33:41.720><c> place,</c><01:33:42.400><c> but</c><01:33:42.600><c> it's</c><01:33:42.800><c> very,</c><01:33:43.080><c> very</c>

01:33:43.350 --> 01:33:43.360 align:start position:0%
does have its place, but it's very, very
 

01:33:43.360 --> 01:33:45.630 align:start position:0%
does have its place, but it's very, very
limiting<01:33:44.040><c> compared</c><01:33:44.640><c> to</c><01:33:44.760><c> something</c><01:33:45.240><c> like</c>

01:33:45.630 --> 01:33:45.640 align:start position:0%
limiting compared to something like
 

01:33:45.640 --> 01:33:48.590 align:start position:0%
limiting compared to something like
Supabase<01:33:46.480><c> or</c><01:33:46.840><c> something</c><01:33:47.280><c> of</c><01:33:47.440><c> that</c><01:33:47.680><c> sort.</c><01:33:48.440><c> And</c>

01:33:48.590 --> 01:33:48.600 align:start position:0%
Supabase or something of that sort. And
 

01:33:48.600 --> 01:33:51.150 align:start position:0%
Supabase or something of that sort. And
so,<01:33:48.880><c> we</c><01:33:49.040><c> can</c><01:33:49.240><c> delete</c><01:33:49.760><c> all</c><01:33:49.920><c> this,</c><01:33:50.640><c> we</c><01:33:50.800><c> can</c><01:33:51.000><c> do</c>

01:33:51.150 --> 01:33:51.160 align:start position:0%
so, we can delete all this, we can do
 

01:33:51.160 --> 01:33:54.070 align:start position:0%
so, we can delete all this, we can do
all<01:33:51.360><c> that,</c><01:33:51.840><c> we</c><01:33:52.000><c> can</c><01:33:52.480><c> start.</c><01:33:53.200><c> And</c><01:33:53.320><c> if</c><01:33:53.480><c> I</c><01:33:53.600><c> copy</c>

01:33:54.070 --> 01:33:54.080 align:start position:0%
all that, we can start. And if I copy
 

01:33:54.080 --> 01:33:55.990 align:start position:0%
all that, we can start. And if I copy
this,<01:33:54.360><c> run</c><01:33:54.680><c> this</c><01:33:54.960><c> app,</c><01:33:55.200><c> and</c><01:33:55.320><c> I</c><01:33:55.400><c> load</c><01:33:55.640><c> this</c><01:33:55.840><c> app,</c>

01:33:55.990 --> 01:33:56.000 align:start position:0%
this, run this app, and I load this app,
 

01:33:56.000 --> 01:33:57.830 align:start position:0%
this, run this app, and I load this app,
there's<01:33:56.280><c> nothing</c><01:33:56.800><c> there</c><01:33:57.080><c> because</c><01:33:57.360><c> I'm</c><01:33:57.520><c> using</c>

01:33:57.830 --> 01:33:57.840 align:start position:0%
there's nothing there because I'm using
 

01:33:57.840 --> 01:34:01.190 align:start position:0%
there's nothing there because I'm using
a<01:33:57.960><c> brand</c><01:33:58.560><c> new</c><01:33:58.880><c> browser</c><01:33:59.440><c> instance,</c><01:34:00.000><c> and</c><01:34:00.160><c> I</c><01:34:00.240><c> can</c>

01:34:01.190 --> 01:34:01.200 align:start position:0%
a brand new browser instance, and I can
 

01:34:01.200 --> 01:34:04.190 align:start position:0%
a brand new browser instance, and I can
create,<01:34:02.000><c> I</c><01:34:02.120><c> can</c><01:34:02.360><c> do,</c><01:34:02.680><c> I</c><01:34:02.800><c> can</c><01:34:03.000><c> check</c><01:34:03.440><c> off,</c><01:34:03.880><c> I</c><01:34:03.960><c> can</c>

01:34:04.190 --> 01:34:04.200 align:start position:0%
create, I can do, I can check off, I can
 

01:34:04.200 --> 01:34:07.150 align:start position:0%
create, I can do, I can check off, I can
do<01:34:04.400><c> this,</c><01:34:04.960><c> I</c><01:34:05.080><c> can</c><01:34:05.280><c> do</c><01:34:05.400><c> all</c><01:34:05.560><c> that,</c><01:34:06.400><c> but</c><01:34:06.680><c> if</c><01:34:06.880><c> I</c><01:34:06.960><c> go</c>

01:34:07.150 --> 01:34:07.160 align:start position:0%
do this, I can do all that, but if I go
 

01:34:07.160 --> 01:34:09.630 align:start position:0%
do this, I can do all that, but if I go
back<01:34:07.400><c> to</c><01:34:07.600><c> CodeX,</c><01:34:08.400><c> there's</c><01:34:08.680><c> nothing</c><01:34:09.120><c> here,</c>

01:34:09.630 --> 01:34:09.640 align:start position:0%
back to CodeX, there's nothing here,
 

01:34:09.640 --> 01:34:11.950 align:start position:0%
back to CodeX, there's nothing here,
right?<01:34:09.960><c> It's</c><01:34:10.160><c> not</c><01:34:10.480><c> syncing,</c><01:34:11.240><c> it's</c><01:34:11.400><c> not</c><01:34:11.640><c> using</c>

01:34:11.950 --> 01:34:11.960 align:start position:0%
right? It's not syncing, it's not using
 

01:34:11.960 --> 01:34:15.150 align:start position:0%
right? It's not syncing, it's not using
my<01:34:12.200><c> account,</c><01:34:13.160><c> and</c><01:34:13.480><c> it's</c><01:34:13.680><c> not</c><01:34:13.920><c> using</c><01:34:14.280><c> a</c><01:34:14.400><c> unified</c>

01:34:15.150 --> 01:34:15.160 align:start position:0%
my account, and it's not using a unified
 

01:34:15.160 --> 01:34:18.470 align:start position:0%
my account, and it's not using a unified
back-end,<01:34:16.440><c> so</c><01:34:16.680><c> that</c><01:34:17.560><c> no</c><01:34:17.840><c> matter</c><01:34:18.240><c> which</c>

01:34:18.470 --> 01:34:18.480 align:start position:0%
back-end, so that no matter which
 

01:34:18.480 --> 01:34:21.590 align:start position:0%
back-end, so that no matter which
browser<01:34:19.080><c> I</c><01:34:19.240><c> use,</c><01:34:20.200><c> it</c><01:34:20.440><c> will</c><01:34:20.600><c> still</c><01:34:21.000><c> store</c><01:34:21.440><c> the</c>

01:34:21.590 --> 01:34:21.600 align:start position:0%
browser I use, it will still store the
 

01:34:21.600 --> 01:34:23.550 align:start position:0%
browser I use, it will still store the
data<01:34:21.960><c> and</c><01:34:22.080><c> keep</c><01:34:22.280><c> track</c><01:34:22.640><c> of</c><01:34:22.800><c> everything.</c><01:34:23.200><c> That</c>

01:34:23.550 --> 01:34:23.560 align:start position:0%
data and keep track of everything. That
 

01:34:23.560 --> 01:34:25.950 align:start position:0%
data and keep track of everything. That
is<01:34:23.720><c> not</c><01:34:24.040><c> happening.</c><01:34:24.800><c> Once</c><01:34:25.160><c> the</c><01:34:25.280><c> app</c><01:34:25.520><c> works</c>

01:34:25.950 --> 01:34:25.960 align:start position:0%
is not happening. Once the app works
 

01:34:25.960 --> 01:34:28.670 align:start position:0%
is not happening. Once the app works
locally,<01:34:26.680><c> it's</c><01:34:27.000><c> time</c><01:34:27.400><c> to</c><01:34:27.520><c> deploy</c><01:34:28.120><c> it.</c><01:34:28.360><c> Even</c>

01:34:28.670 --> 01:34:28.680 align:start position:0%
locally, it's time to deploy it. Even
 

01:34:28.680 --> 01:34:31.070 align:start position:0%
locally, it's time to deploy it. Even
though<01:34:28.840><c> Habit</c><01:34:29.200><c> Card</c><01:34:29.480><c> is</c><01:34:29.680><c> simple,</c><01:34:30.600><c> this</c><01:34:30.800><c> is</c><01:34:30.960><c> the</c>

01:34:31.070 --> 01:34:31.080 align:start position:0%
though Habit Card is simple, this is the
 

01:34:31.080 --> 01:34:33.790 align:start position:0%
though Habit Card is simple, this is the
first<01:34:31.480><c> moment</c><01:34:32.080><c> where</c><01:34:32.320><c> CodeX</c><01:34:33.080><c> helps</c><01:34:33.560><c> move</c>

01:34:33.790 --> 01:34:33.800 align:start position:0%
first moment where CodeX helps move
 

01:34:33.800 --> 01:34:37.510 align:start position:0%
first moment where CodeX helps move
something<01:34:34.400><c> from</c><01:34:34.720><c> local</c><01:34:35.160><c> code</c><01:34:35.840><c> to</c><01:34:36.080><c> a</c><01:34:36.240><c> real-life</c>

01:34:37.510 --> 01:34:37.520 align:start position:0%
something from local code to a real-life
 

01:34:37.520 --> 01:34:39.990 align:start position:0%
something from local code to a real-life
URL.<01:34:38.240><c> And</c><01:34:38.400><c> so,</c><01:34:38.600><c> CodeX</c><01:34:39.240><c> can</c><01:34:39.440><c> do</c><01:34:39.640><c> the</c><01:34:39.760><c> whole</c>

01:34:39.990 --> 01:34:40.000 align:start position:0%
URL. And so, CodeX can do the whole
 

01:34:40.000 --> 01:34:42.270 align:start position:0%
URL. And so, CodeX can do the whole
deployment<01:34:40.640><c> process.</c><01:34:41.200><c> It</c><01:34:41.400><c> can</c><01:34:41.560><c> run</c><01:34:41.760><c> the</c><01:34:41.880><c> local</c>

01:34:42.270 --> 01:34:42.280 align:start position:0%
deployment process. It can run the local
 

01:34:42.280 --> 01:34:45.630 align:start position:0%
deployment process. It can run the local
checks,<01:34:43.080><c> prepare</c><01:34:43.480><c> the</c><01:34:43.600><c> projects,</c><01:34:44.840><c> connect</c><01:34:45.480><c> or</c>

01:34:45.630 --> 01:34:45.640 align:start position:0%
checks, prepare the projects, connect or
 

01:34:45.640 --> 01:34:48.310 align:start position:0%
checks, prepare the projects, connect or
create<01:34:46.120><c> the</c><01:34:46.240><c> Vercel</c><01:34:46.680><c> project,</c><01:34:47.720><c> deploy</c><01:34:48.200><c> the</c>

01:34:48.310 --> 01:34:48.320 align:start position:0%
create the Vercel project, deploy the
 

01:34:48.320 --> 01:34:51.110 align:start position:0%
create the Vercel project, deploy the
front-end,<01:34:49.120><c> and</c><01:34:49.280><c> then</c><01:34:49.520><c> verify</c><01:34:50.320><c> that</c><01:34:50.520><c> the</c><01:34:50.680><c> live</c>

01:34:51.110 --> 01:34:51.120 align:start position:0%
front-end, and then verify that the live
 

01:34:51.120 --> 01:34:53.750 align:start position:0%
front-end, and then verify that the live
page<01:34:51.600><c> actually</c><01:34:52.240><c> loads.</c><01:34:53.000><c> And</c><01:34:53.160><c> additionally,</c>

01:34:53.750 --> 01:34:53.760 align:start position:0%
page actually loads. And additionally,
 

01:34:53.760 --> 01:34:55.950 align:start position:0%
page actually loads. And additionally,
you<01:34:53.920><c> want</c><01:34:54.160><c> that</c><01:34:54.400><c> first</c><01:34:54.960><c> deployment</c><01:34:55.480><c> to</c><01:34:55.600><c> feel</c>

01:34:55.950 --> 01:34:55.960 align:start position:0%
you want that first deployment to feel
 

01:34:55.960 --> 01:34:58.390 align:start position:0%
you want that first deployment to feel
very<01:34:56.440><c> concrete.</c><01:34:57.160><c> We're</c><01:34:57.360><c> not</c><01:34:57.720><c> just</c><01:34:58.000><c> writing</c>

01:34:58.390 --> 01:34:58.400 align:start position:0%
very concrete. We're not just writing
 

01:34:58.400 --> 01:35:00.350 align:start position:0%
very concrete. We're not just writing
code<01:34:58.760><c> and</c><01:34:58.880><c> hoping</c><01:34:59.200><c> it</c><01:34:59.360><c> works.</c>

01:35:00.350 --> 01:35:00.360 align:start position:0%
code and hoping it works.
 

01:35:00.360 --> 01:35:02.910 align:start position:0%
code and hoping it works.
We're<01:35:00.560><c> taking</c><01:35:01.120><c> a</c><01:35:01.240><c> small</c><01:35:01.760><c> app,</c><01:35:02.120><c> shipping</c><01:35:02.640><c> it,</c>

01:35:02.910 --> 01:35:02.920 align:start position:0%
We're taking a small app, shipping it,
 

01:35:02.920 --> 01:35:05.550 align:start position:0%
We're taking a small app, shipping it,
opening<01:35:03.360><c> the</c><01:35:03.480><c> deployed</c><01:35:04.000><c> URL,</c><01:35:04.760><c> and</c><01:35:05.000><c> checking</c>

01:35:05.550 --> 01:35:05.560 align:start position:0%
opening the deployed URL, and checking
 

01:35:05.560 --> 01:35:08.750 align:start position:0%
opening the deployed URL, and checking
the<01:35:05.680><c> result</c><01:35:06.680><c> like</c><01:35:07.080><c> we</c><01:35:07.320><c> would</c><01:35:07.680><c> with</c><01:35:07.880><c> a</c><01:35:08.000><c> real</c>

01:35:08.750 --> 01:35:08.760 align:start position:0%
the result like we would with a real
 

01:35:08.760 --> 01:35:11.550 align:start position:0%
the result like we would with a real
project.<01:35:09.720><c> And</c><01:35:09.880><c> here</c><01:35:10.240><c> is</c><01:35:10.480><c> my</c><01:35:10.880><c> Vercel</c>

01:35:11.550 --> 01:35:11.560 align:start position:0%
project. And here is my Vercel
 

01:35:11.560 --> 01:35:14.070 align:start position:0%
project. And here is my Vercel
deployment<01:35:12.240><c> prompt.</c><01:35:12.640><c> Prepare</c><01:35:13.320><c> Habit</c><01:35:13.760><c> Card</c>

01:35:14.070 --> 01:35:14.080 align:start position:0%
deployment prompt. Prepare Habit Card
 

01:35:14.080 --> 01:35:17.030 align:start position:0%
deployment prompt. Prepare Habit Card
for<01:35:14.240><c> deployment</c><01:35:14.880><c> on</c><01:35:15.000><c> Vercel,</c><01:35:15.960><c> and</c><01:35:16.240><c> verify</c><01:35:16.920><c> it</c>

01:35:17.030 --> 01:35:17.040 align:start position:0%
for deployment on Vercel, and verify it
 

01:35:17.040 --> 01:35:20.390 align:start position:0%
for deployment on Vercel, and verify it
works<01:35:17.600><c> as</c><01:35:17.960><c> a</c><01:35:18.080><c> small</c><01:35:18.680><c> front-end</c><01:35:19.200><c> only</c><01:35:19.560><c> app.</c><01:35:19.920><c> So,</c>

01:35:20.390 --> 01:35:20.400 align:start position:0%
works as a small front-end only app. So,
 

01:35:20.400 --> 01:35:22.790 align:start position:0%
works as a small front-end only app. So,
at<01:35:20.560><c> this</c><01:35:20.800><c> point,</c><01:35:21.200><c> we</c><01:35:21.360><c> are</c><01:35:21.480><c> just</c><01:35:21.960><c> preparing</c><01:35:22.640><c> it</c>

01:35:22.790 --> 01:35:22.800 align:start position:0%
at this point, we are just preparing it
 

01:35:22.800 --> 01:35:25.070 align:start position:0%
at this point, we are just preparing it
for<01:35:22.960><c> deployment.</c><01:35:23.520><c> We're</c><01:35:23.680><c> not</c><01:35:24.120><c> yet</c><01:35:24.400><c> deploying</c>

01:35:25.070 --> 01:35:25.080 align:start position:0%
for deployment. We're not yet deploying
 

01:35:25.080 --> 01:35:28.390 align:start position:0%
for deployment. We're not yet deploying
it,<01:35:25.680><c> but</c><01:35:25.880><c> still,</c><01:35:26.240><c> this</c><01:35:26.440><c> is</c><01:35:26.600><c> an</c><01:35:26.720><c> important</c><01:35:27.280><c> step</c>

01:35:28.390 --> 01:35:28.400 align:start position:0%
it, but still, this is an important step
 

01:35:28.400 --> 01:35:31.590 align:start position:0%
it, but still, this is an important step
because<01:35:28.960><c> this</c><01:35:29.280><c> will</c><01:35:29.960><c> ensure</c><01:35:30.760><c> that</c><01:35:30.920><c> once</c><01:35:31.200><c> we</c><01:35:31.360><c> do</c>

01:35:31.590 --> 01:35:31.600 align:start position:0%
because this will ensure that once we do
 

01:35:31.600 --> 01:35:34.150 align:start position:0%
because this will ensure that once we do
deploy<01:35:32.120><c> it,</c><01:35:32.560><c> that</c><01:35:32.960><c> it</c><01:35:33.120><c> will</c><01:35:33.280><c> work</c><01:35:33.560><c> without</c><01:35:33.920><c> any</c>

01:35:34.150 --> 01:35:34.160 align:start position:0%
deploy it, that it will work without any
 

01:35:34.160 --> 01:35:36.270 align:start position:0%
deploy it, that it will work without any
issues.<01:35:34.800><c> I'm</c><01:35:34.920><c> going</c><01:35:35.080><c> to</c><01:35:35.160><c> go</c><01:35:35.320><c> jump</c><01:35:35.720><c> into</c><01:35:36.120><c> the</c>

01:35:36.270 --> 01:35:36.280 align:start position:0%
issues. I'm going to go jump into the
 

01:35:36.280 --> 01:35:38.990 align:start position:0%
issues. I'm going to go jump into the
plan<01:35:36.760><c> mode,</c><01:35:37.120><c> and</c><01:35:37.280><c> remember,</c><01:35:37.720><c> we</c><01:35:37.960><c> do</c><01:35:38.320><c> have</c><01:35:38.680><c> that</c>

01:35:38.990 --> 01:35:39.000 align:start position:0%
plan mode, and remember, we do have that
 

01:35:39.000 --> 01:35:41.630 align:start position:0%
plan mode, and remember, we do have that
Vercel<01:35:39.680><c> plugin</c><01:35:40.240><c> enabled,</c><01:35:41.000><c> and</c><01:35:41.160><c> so</c><01:35:41.320><c> it</c><01:35:41.440><c> should</c>

01:35:41.630 --> 01:35:41.640 align:start position:0%
Vercel plugin enabled, and so it should
 

01:35:41.640 --> 01:35:44.590 align:start position:0%
Vercel plugin enabled, and so it should
use<01:35:41.880><c> it</c><01:35:42.040><c> automatically</c><01:35:42.840><c> with</c><01:35:43.000><c> no</c><01:35:43.200><c> issues.</c>

01:35:44.590 --> 01:35:44.600 align:start position:0%
use it automatically with no issues.
 

01:35:44.600 --> 01:35:46.350 align:start position:0%
use it automatically with no issues.
I'm<01:35:44.680><c> going</c><01:35:44.840><c> to</c><01:35:44.920><c> go</c><01:35:45.040><c> ahead</c><01:35:45.240><c> and</c><01:35:45.360><c> execute</c><01:35:45.840><c> this.</c>

01:35:46.350 --> 01:35:46.360 align:start position:0%
I'm going to go ahead and execute this.
 

01:35:46.360 --> 01:35:48.230 align:start position:0%
I'm going to go ahead and execute this.
All<01:35:46.440><c> right,</c><01:35:46.680><c> so</c><01:35:46.840><c> it</c><01:35:47.000><c> went</c><01:35:47.200><c> ahead</c><01:35:47.520><c> and</c><01:35:47.640><c> created</c>

01:35:48.230 --> 01:35:48.240 align:start position:0%
All right, so it went ahead and created
 

01:35:48.240 --> 01:35:50.750 align:start position:0%
All right, so it went ahead and created
a<01:35:48.360><c> Vercel</c><01:35:49.080><c> deployment</c><01:35:49.760><c> plan.</c><01:35:50.120><c> Okay,</c><01:35:50.400><c> Habit</c>

01:35:50.750 --> 01:35:50.760 align:start position:0%
a Vercel deployment plan. Okay, Habit
 

01:35:50.760 --> 01:35:53.430 align:start position:0%
a Vercel deployment plan. Okay, Habit
Card<01:35:51.040><c> is</c><01:35:51.240><c> already</c><01:35:51.880><c> a</c><01:35:52.000><c> suitable</c><01:35:53.080><c> for</c><01:35:53.320><c> a</c>

01:35:53.430 --> 01:35:53.440 align:start position:0%
Card is already a suitable for a
 

01:35:53.440 --> 01:35:55.630 align:start position:0%
Card is already a suitable for a
front-end<01:35:54.120><c> only</c><01:35:54.440><c> for</c><01:35:54.560><c> sale</c><01:35:54.920><c> deployment,</c>

01:35:55.630 --> 01:35:55.640 align:start position:0%
front-end only for sale deployment,
 

01:35:55.640 --> 01:35:57.790 align:start position:0%
front-end only for sale deployment,
okay?<01:35:56.200><c> And</c><01:35:56.520><c> this</c><01:35:56.680><c> is</c><01:35:56.840><c> what</c><01:35:57.000><c> it's</c><01:35:57.120><c> going</c><01:35:57.280><c> to</c><01:35:57.360><c> do,</c>

01:35:57.790 --> 01:35:57.800 align:start position:0%
okay? And this is what it's going to do,
 

01:35:57.800 --> 01:35:59.550 align:start position:0%
okay? And this is what it's going to do,
and<01:35:58.000><c> here</c><01:35:58.440><c> is</c><01:35:58.720><c> the</c><01:35:58.840><c> deployment</c>

01:35:59.550 --> 01:35:59.560 align:start position:0%
and here is the deployment
 

01:35:59.560 --> 01:36:01.470 align:start position:0%
and here is the deployment
implementation.<01:36:00.480><c> Keep</c><01:36:00.680><c> the</c><01:36:00.800><c> app</c><01:36:01.040><c> front-end</c>

01:36:01.470 --> 01:36:01.480 align:start position:0%
implementation. Keep the app front-end
 

01:36:01.480 --> 01:36:03.710 align:start position:0%
implementation. Keep the app front-end
only,<01:36:01.840><c> do</c><01:36:01.960><c> not</c><01:36:02.280><c> add</c><01:36:02.480><c> Convex,</c><01:36:03.320><c> which</c><01:36:03.480><c> is</c><01:36:03.640><c> a</c>

01:36:03.710 --> 01:36:03.720 align:start position:0%
only, do not add Convex, which is a
 

01:36:03.720 --> 01:36:06.270 align:start position:0%
only, do not add Convex, which is a
back-end<01:36:04.360><c> APIs</c><01:36:05.120><c> or</c><01:36:05.400><c> database</c><01:36:06.000><c> server</c>

01:36:06.270 --> 01:36:06.280 align:start position:0%
back-end APIs or database server
 

01:36:06.280 --> 01:36:09.230 align:start position:0%
back-end APIs or database server
functions,<01:36:07.280><c> or</c><01:36:07.600><c> external</c><01:36:08.280><c> services,</c><01:36:08.920><c> none</c><01:36:09.120><c> of</c>

01:36:09.230 --> 01:36:09.240 align:start position:0%
functions, or external services, none of
 

01:36:09.240 --> 01:36:10.230 align:start position:0%
functions, or external services, none of
that.

01:36:10.230 --> 01:36:10.240 align:start position:0%
that.
 

01:36:10.240 --> 01:36:12.390 align:start position:0%
that.
And<01:36:10.680><c> local</c><01:36:11.040><c> storage</c><01:36:11.520><c> persistence</c><01:36:12.200><c> is</c>

01:36:12.390 --> 01:36:12.400 align:start position:0%
And local storage persistence is
 

01:36:12.400 --> 01:36:15.630 align:start position:0%
And local storage persistence is
expected<01:36:13.280><c> to</c><01:36:13.360><c> be</c><01:36:13.480><c> local</c><01:36:13.920><c> to</c><01:36:14.080><c> each</c><01:36:14.320><c> browser</c><01:36:15.480><c> and</c>

01:36:15.630 --> 01:36:15.640 align:start position:0%
expected to be local to each browser and
 

01:36:15.640 --> 01:36:17.870 align:start position:0%
expected to be local to each browser and
deployment<01:36:16.240><c> origin.</c><01:36:16.720><c> Data</c><01:36:17.080><c> will</c><01:36:17.280><c> not</c><01:36:17.600><c> sync</c>

01:36:17.870 --> 01:36:17.880 align:start position:0%
deployment origin. Data will not sync
 

01:36:17.880 --> 01:36:20.670 align:start position:0%
deployment origin. Data will not sync
across<01:36:18.200><c> devices</c><01:36:18.880><c> or</c><01:36:19.200><c> URLs,</c><01:36:19.960><c> okay?</c><01:36:20.320><c> Let's</c><01:36:20.560><c> go</c>

01:36:20.670 --> 01:36:20.680 align:start position:0%
across devices or URLs, okay? Let's go
 

01:36:20.680 --> 01:36:23.350 align:start position:0%
across devices or URLs, okay? Let's go
ahead<01:36:21.040><c> and</c><01:36:21.360><c> implement</c><01:36:21.880><c> this</c><01:36:22.040><c> plan.</c><01:36:22.640><c> And</c><01:36:23.080><c> 3</c>

01:36:23.350 --> 01:36:23.360 align:start position:0%
ahead and implement this plan. And 3
 

01:36:23.360 --> 01:36:25.910 align:start position:0%
ahead and implement this plan. And 3
minutes<01:36:23.760><c> later,</c><01:36:24.280><c> it</c><01:36:24.480><c> tells</c><01:36:24.800><c> us</c><01:36:24.960><c> that</c><01:36:25.320><c> deployed</c>

01:36:25.910 --> 01:36:25.920 align:start position:0%
minutes later, it tells us that deployed
 

01:36:25.920 --> 01:36:28.270 align:start position:0%
minutes later, it tells us that deployed
Habit<01:36:26.280><c> Card</c><01:36:26.600><c> to</c><01:36:26.680><c> Vercel</c><01:36:27.280><c> and</c><01:36:27.480><c> verified</c><01:36:28.120><c> it</c>

01:36:28.270 --> 01:36:28.280 align:start position:0%
Habit Card to Vercel and verified it
 

01:36:28.280 --> 01:36:31.390 align:start position:0%
Habit Card to Vercel and verified it
live,<01:36:28.720><c> okay?</c><01:36:29.000><c> So,</c><01:36:29.120><c> this</c><01:36:29.360><c> is</c><01:36:29.520><c> the</c><01:36:30.360><c> live</c><01:36:30.800><c> URL.</c><01:36:31.280><c> We</c>

01:36:31.390 --> 01:36:31.400 align:start position:0%
live, okay? So, this is the live URL. We
 

01:36:31.400 --> 01:36:33.550 align:start position:0%
live, okay? So, this is the live URL. We
can<01:36:31.520><c> click</c><01:36:31.840><c> here,</c><01:36:32.360><c> and</c><01:36:32.480><c> that's</c><01:36:32.720><c> going</c><01:36:32.840><c> to</c><01:36:32.960><c> open</c>

01:36:33.550 --> 01:36:33.560 align:start position:0%
can click here, and that's going to open
 

01:36:33.560 --> 01:36:37.630 align:start position:0%
can click here, and that's going to open
our<01:36:34.040><c> Habit</c><01:36:34.480><c> Card</c><01:36:34.840><c> app</c><01:36:35.680><c> running</c><01:36:36.680><c> on</c><01:36:36.840><c> the</c><01:36:37.000><c> web,</c>

01:36:37.630 --> 01:36:37.640 align:start position:0%
our Habit Card app running on the web,
 

01:36:37.640 --> 01:36:39.990 align:start position:0%
our Habit Card app running on the web,
right?<01:36:37.960><c> Accessible</c><01:36:38.560><c> to</c><01:36:38.720><c> everybody.</c><01:36:39.560><c> And</c><01:36:39.800><c> this</c>

01:36:39.990 --> 01:36:40.000 align:start position:0%
right? Accessible to everybody. And this
 

01:36:40.000 --> 01:36:43.070 align:start position:0%
right? Accessible to everybody. And this
again<01:36:40.520><c> uses</c><01:36:41.200><c> local</c><01:36:41.600><c> storage,</c><01:36:42.320><c> okay?</c><01:36:42.800><c> So,</c><01:36:42.960><c> we</c>

01:36:43.070 --> 01:36:43.080 align:start position:0%
again uses local storage, okay? So, we
 

01:36:43.080 --> 01:36:45.710 align:start position:0%
again uses local storage, okay? So, we
can<01:36:43.240><c> do</c><01:36:43.400><c> that</c><01:36:43.640><c> over</c><01:36:43.880><c> here,</c><01:36:44.360><c> and</c><01:36:44.600><c> of</c><01:36:44.760><c> course,</c>

01:36:45.710 --> 01:36:45.720 align:start position:0%
can do that over here, and of course,
 

01:36:45.720 --> 01:36:47.310 align:start position:0%
can do that over here, and of course,
you<01:36:45.840><c> know,</c><01:36:45.960><c> it's</c><01:36:46.160><c> not</c><01:36:46.320><c> going</c><01:36:46.440><c> to</c><01:36:46.520><c> be</c><01:36:46.640><c> available</c>

01:36:47.310 --> 01:36:47.320 align:start position:0%
you know, it's not going to be available
 

01:36:47.320 --> 01:36:49.310 align:start position:0%
you know, it's not going to be available
in<01:36:47.440><c> another</c><01:36:47.840><c> instance</c><01:36:48.560><c> because</c><01:36:48.840><c> it's</c><01:36:49.040><c> all</c>

01:36:49.310 --> 01:36:49.320 align:start position:0%
in another instance because it's all
 

01:36:49.320 --> 01:36:51.510 align:start position:0%
in another instance because it's all
stored<01:36:49.840><c> locally.</c><01:36:50.640><c> And</c><01:36:50.720><c> so,</c><01:36:50.840><c> at</c><01:36:50.960><c> this</c><01:36:51.160><c> point,</c>

01:36:51.510 --> 01:36:51.520 align:start position:0%
stored locally. And so, at this point,
 

01:36:51.520 --> 01:36:55.670 align:start position:0%
stored locally. And so, at this point,
we<01:36:51.640><c> designed,</c><01:36:52.880><c> architected,</c><01:36:53.880><c> built,</c><01:36:54.800><c> tested,</c>

01:36:55.670 --> 01:36:55.680 align:start position:0%
we designed, architected, built, tested,
 

01:36:55.680 --> 01:36:59.110 align:start position:0%
we designed, architected, built, tested,
and<01:36:55.880><c> then</c><01:36:56.120><c> deployed</c><01:36:56.960><c> a</c><01:36:57.120><c> very,</c><01:36:57.800><c> very</c><01:36:58.400><c> simple</c>

01:36:59.110 --> 01:36:59.120 align:start position:0%
and then deployed a very, very simple
 

01:36:59.120 --> 01:37:02.870 align:start position:0%
and then deployed a very, very simple
web<01:36:59.480><c> app</c><01:37:00.280><c> that</c><01:37:00.760><c> uses</c><01:37:01.240><c> local</c><01:37:01.760><c> storage</c><01:37:02.360><c> as</c><01:37:02.680><c> our</c>

01:37:02.870 --> 01:37:02.880 align:start position:0%
web app that uses local storage as our
 

01:37:02.880 --> 01:37:04.990 align:start position:0%
web app that uses local storage as our
back-end,<01:37:03.560><c> and</c><01:37:03.720><c> this</c><01:37:03.960><c> proved</c><01:37:04.320><c> the</c><01:37:04.440><c> whole</c>

01:37:04.990 --> 01:37:05.000 align:start position:0%
back-end, and this proved the whole
 

01:37:05.000 --> 01:37:07.190 align:start position:0%
back-end, and this proved the whole
cycle<01:37:05.560><c> for</c><01:37:05.800><c> us.</c><01:37:06.160><c> Now,</c><01:37:06.360><c> in</c><01:37:06.440><c> the</c><01:37:06.520><c> next</c><01:37:06.840><c> several</c>

01:37:07.190 --> 01:37:07.200 align:start position:0%
cycle for us. Now, in the next several
 

01:37:07.200 --> 01:37:09.070 align:start position:0%
cycle for us. Now, in the next several
modules,<01:37:07.840><c> we're</c><01:37:08.040><c> going</c><01:37:08.400><c> to</c><01:37:08.560><c> be</c><01:37:08.680><c> doing</c><01:37:08.960><c> the</c>

01:37:09.070 --> 01:37:09.080 align:start position:0%
modules, we're going to be doing the
 

01:37:09.080 --> 01:37:13.030 align:start position:0%
modules, we're going to be doing the
same,<01:37:09.720><c> but</c><01:37:10.000><c> with</c><01:37:10.200><c> more</c><01:37:10.640><c> complex</c><01:37:11.400><c> apps,</c><01:37:12.200><c> slowly</c>

01:37:13.030 --> 01:37:13.040 align:start position:0%
same, but with more complex apps, slowly
 

01:37:13.040 --> 01:37:15.750 align:start position:0%
same, but with more complex apps, slowly
adding<01:37:13.640><c> things</c><01:37:14.000><c> like</c><01:37:14.320><c> authentication,</c>

01:37:15.750 --> 01:37:15.760 align:start position:0%
adding things like authentication,
 

01:37:15.760 --> 01:37:18.750 align:start position:0%
adding things like authentication,
back-end,<01:37:16.640><c> and</c><01:37:16.920><c> other</c><01:37:17.240><c> important</c><01:37:17.800><c> components</c>

01:37:18.750 --> 01:37:18.760 align:start position:0%
back-end, and other important components
 

01:37:18.760 --> 01:37:25.350 align:start position:0%
back-end, and other important components
that<01:37:19.240><c> you</c><01:37:19.400><c> need</c><01:37:19.800><c> for</c><01:37:20.160><c> a</c><01:37:20.320><c> real</c><01:37:20.880><c> production</c><01:37:21.840><c> app.</c>

01:37:25.350 --> 01:37:25.360 align:start position:0%
 
 

01:37:25.360 --> 01:37:27.310 align:start position:0%
 
The<01:37:25.520><c> second</c><01:37:25.960><c> app</c><01:37:26.160><c> we'll</c><01:37:26.280><c> be</c><01:37:26.400><c> building</c><01:37:26.880><c> will</c><01:37:27.040><c> be</c>

01:37:27.310 --> 01:37:27.320 align:start position:0%
The second app we'll be building will be
 

01:37:27.320 --> 01:37:30.230 align:start position:0%
The second app we'll be building will be
a<01:37:27.480><c> mini</c><01:37:28.280><c> team</c><01:37:28.720><c> voting</c><01:37:29.200><c> app</c><01:37:29.600><c> where</c><01:37:29.920><c> people</c>

01:37:30.230 --> 01:37:30.240 align:start position:0%
a mini team voting app where people
 

01:37:30.240 --> 01:37:33.310 align:start position:0%
a mini team voting app where people
submit<01:37:30.720><c> lunch</c><01:37:31.160><c> or</c><01:37:31.320><c> snack</c><01:37:31.720><c> ideas</c><01:37:32.440><c> and</c><01:37:32.840><c> vote</c><01:37:33.200><c> on</c>

01:37:33.310 --> 01:37:33.320 align:start position:0%
submit lunch or snack ideas and vote on
 

01:37:33.320 --> 01:37:35.510 align:start position:0%
submit lunch or snack ideas and vote on
the<01:37:33.440><c> winner.</c><01:37:34.040><c> It's</c><01:37:34.280><c> a</c><01:37:34.360><c> bit</c><01:37:34.560><c> more</c><01:37:34.760><c> complex</c><01:37:35.400><c> with</c>

01:37:35.510 --> 01:37:35.520 align:start position:0%
the winner. It's a bit more complex with
 

01:37:35.520 --> 01:37:38.230 align:start position:0%
the winner. It's a bit more complex with
more<01:37:35.760><c> features,</c><01:37:36.600><c> but</c><01:37:36.920><c> still</c><01:37:37.280><c> fairly</c><01:37:37.720><c> simple</c>

01:37:38.230 --> 01:37:38.240 align:start position:0%
more features, but still fairly simple
 

01:37:38.240 --> 01:37:41.390 align:start position:0%
more features, but still fairly simple
overall.<01:37:38.960><c> Snack</c><01:37:39.480><c> Vote</c><01:37:39.920><c> has</c><01:37:40.200><c> a</c><01:37:40.320><c> submit</c><01:37:40.960><c> option</c>

01:37:41.390 --> 01:37:41.400 align:start position:0%
overall. Snack Vote has a submit option
 

01:37:41.400 --> 01:37:45.590 align:start position:0%
overall. Snack Vote has a submit option
form,<01:37:42.320><c> a</c><01:37:42.520><c> snack</c><01:37:43.080><c> option</c><01:37:43.520><c> list,</c><01:37:44.440><c> vote</c><01:37:44.920><c> buttons,</c>

01:37:45.590 --> 01:37:45.600 align:start position:0%
form, a snack option list, vote buttons,
 

01:37:45.600 --> 01:37:48.550 align:start position:0%
form, a snack option list, vote buttons,
a<01:37:45.720><c> live</c><01:37:46.120><c> leaderboard,</c><01:37:47.280><c> and</c><01:37:47.440><c> a</c><01:37:47.600><c> winner</c><01:37:47.960><c> card.</c>

01:37:48.550 --> 01:37:48.560 align:start position:0%
a live leaderboard, and a winner card.
 

01:37:48.560 --> 01:37:50.830 align:start position:0%
a live leaderboard, and a winner card.
This<01:37:48.880><c> app</c><01:37:49.120><c> will</c><01:37:49.320><c> serve</c><01:37:49.640><c> as</c><01:37:49.880><c> a</c><01:37:50.000><c> bridge</c><01:37:50.480><c> between</c>

01:37:50.830 --> 01:37:50.840 align:start position:0%
This app will serve as a bridge between
 

01:37:50.840 --> 01:37:53.230 align:start position:0%
This app will serve as a bridge between
a<01:37:50.960><c> simple</c><01:37:51.480><c> front</c><01:37:51.800><c> end</c><01:37:52.360><c> and</c><01:37:52.560><c> the</c><01:37:52.680><c> larger</c>

01:37:53.230 --> 01:37:53.240 align:start position:0%
a simple front end and the larger
 

01:37:53.240 --> 01:37:55.470 align:start position:0%
a simple front end and the larger
marketplace<01:37:54.000><c> app</c><01:37:54.240><c> we'll</c><01:37:54.440><c> build</c><01:37:54.920><c> right</c><01:37:55.200><c> after</c>

01:37:55.470 --> 01:37:55.480 align:start position:0%
marketplace app we'll build right after
 

01:37:55.480 --> 01:37:57.470 align:start position:0%
marketplace app we'll build right after
this.<01:37:56.000><c> Instead</c><01:37:56.360><c> of</c><01:37:56.480><c> jumping</c><01:37:56.840><c> straight</c><01:37:57.240><c> into</c>

01:37:57.470 --> 01:37:57.480 align:start position:0%
this. Instead of jumping straight into
 

01:37:57.480 --> 01:37:59.710 align:start position:0%
this. Instead of jumping straight into
complex<01:37:58.080><c> entities</c><01:37:58.600><c> such</c><01:37:58.800><c> as</c><01:37:58.920><c> customers,</c>

01:37:59.710 --> 01:37:59.720 align:start position:0%
complex entities such as customers,
 

01:37:59.720 --> 01:38:01.950 align:start position:0%
complex entities such as customers,
bookings,<01:38:00.520><c> and</c><01:38:00.680><c> permissions,</c>

01:38:01.950 --> 01:38:01.960 align:start position:0%
bookings, and permissions,
 

01:38:01.960 --> 01:38:04.350 align:start position:0%
bookings, and permissions,
we<01:38:02.080><c> can</c><01:38:02.280><c> first</c><01:38:02.720><c> learn</c><01:38:03.120><c> the</c><01:38:03.240><c> back</c><01:38:03.600><c> end</c><01:38:03.760><c> pattern</c>

01:38:04.350 --> 01:38:04.360 align:start position:0%
we can first learn the back end pattern
 

01:38:04.360 --> 01:38:07.910 align:start position:0%
we can first learn the back end pattern
on<01:38:04.560><c> a</c><01:38:04.680><c> much</c><01:38:05.320><c> smaller</c><01:38:06.160><c> app.</c><01:38:06.680><c> Snack</c><01:38:07.200><c> Vote</c><01:38:07.600><c> only</c>

01:38:07.910 --> 01:38:07.920 align:start position:0%
on a much smaller app. Snack Vote only
 

01:38:07.920 --> 01:38:10.990 align:start position:0%
on a much smaller app. Snack Vote only
needs<01:38:08.360><c> snack</c><01:38:08.880><c> options</c><01:38:09.400><c> and</c><01:38:09.560><c> votes.</c><01:38:10.480><c> Someone</c>

01:38:10.990 --> 01:38:11.000 align:start position:0%
needs snack options and votes. Someone
 

01:38:11.000 --> 01:38:13.310 align:start position:0%
needs snack options and votes. Someone
can<01:38:11.200><c> submit</c><01:38:11.600><c> an</c><01:38:11.720><c> option,</c><01:38:12.480><c> other</c><01:38:12.760><c> people</c><01:38:13.120><c> can</c>

01:38:13.310 --> 01:38:13.320 align:start position:0%
can submit an option, other people can
 

01:38:13.320 --> 01:38:15.990 align:start position:0%
can submit an option, other people can
vote,<01:38:14.040><c> and</c><01:38:14.240><c> the</c><01:38:14.360><c> leaderboard</c><01:38:15.080><c> updates</c><01:38:15.720><c> as</c><01:38:15.880><c> the</c>

01:38:15.990 --> 01:38:16.000 align:start position:0%
vote, and the leaderboard updates as the
 

01:38:16.000 --> 01:38:18.830 align:start position:0%
vote, and the leaderboard updates as the
vote<01:38:16.480><c> counts</c><01:38:17.040><c> change.</c><01:38:17.800><c> That</c><01:38:18.080><c> gives</c><01:38:18.320><c> us</c><01:38:18.480><c> enough</c>

01:38:18.830 --> 01:38:18.840 align:start position:0%
vote counts change. That gives us enough
 

01:38:18.840 --> 01:38:21.190 align:start position:0%
vote counts change. That gives us enough
structure<01:38:19.520><c> to</c><01:38:19.680><c> understand</c><01:38:20.320><c> live</c><01:38:20.720><c> back</c><01:38:21.040><c> end</c>

01:38:21.190 --> 01:38:21.200 align:start position:0%
structure to understand live back end
 

01:38:21.200 --> 01:38:24.070 align:start position:0%
structure to understand live back end
data<01:38:21.960><c> without</c><01:38:22.400><c> making</c><01:38:22.760><c> the</c><01:38:22.880><c> product</c><01:38:23.440><c> itself</c>

01:38:24.070 --> 01:38:24.080 align:start position:0%
data without making the product itself
 

01:38:24.080 --> 01:38:26.910 align:start position:0%
data without making the product itself
hard<01:38:24.560><c> to</c><01:38:24.680><c> follow.</c><01:38:25.360><c> As</c><01:38:25.640><c> always,</c><01:38:26.120><c> in</c><01:38:26.280><c> this</c><01:38:26.520><c> first</c>

01:38:26.910 --> 01:38:26.920 align:start position:0%
hard to follow. As always, in this first
 

01:38:26.920 --> 01:38:29.230 align:start position:0%
hard to follow. As always, in this first
step,<01:38:27.520><c> we'll</c><01:38:27.720><c> be</c><01:38:27.880><c> mapping</c><01:38:28.360><c> the</c><01:38:28.480><c> Snack</c><01:38:28.920><c> Vote</c>

01:38:29.230 --> 01:38:29.240 align:start position:0%
step, we'll be mapping the Snack Vote
 

01:38:29.240 --> 01:38:31.870 align:start position:0%
step, we'll be mapping the Snack Vote
interface<01:38:29.920><c> visually.</c><01:38:31.200><c> The</c><01:38:31.320><c> app</c><01:38:31.560><c> should</c><01:38:31.760><c> be</c>

01:38:31.870 --> 01:38:31.880 align:start position:0%
interface visually. The app should be
 

01:38:31.880 --> 01:38:34.350 align:start position:0%
interface visually. The app should be
simple<01:38:32.400><c> enough</c><01:38:32.680><c> to</c><01:38:32.800><c> understand</c><01:38:33.360><c> immediately.</c>

01:38:34.350 --> 01:38:34.360 align:start position:0%
simple enough to understand immediately.
 

01:38:34.360 --> 01:38:37.670 align:start position:0%
simple enough to understand immediately.
Create<01:38:35.000><c> or</c><01:38:35.160><c> join</c><01:38:35.640><c> a</c><01:38:35.760><c> voting</c><01:38:36.240><c> room,</c><01:38:36.960><c> submit</c><01:38:37.600><c> a</c>

01:38:37.670 --> 01:38:37.680 align:start position:0%
Create or join a voting room, submit a
 

01:38:37.680 --> 01:38:40.830 align:start position:0%
Create or join a voting room, submit a
snack<01:38:38.240><c> option,</c><01:38:38.880><c> vote</c><01:38:39.400><c> once,</c><01:38:40.280><c> watch</c><01:38:40.720><c> the</c>

01:38:40.830 --> 01:38:40.840 align:start position:0%
snack option, vote once, watch the
 

01:38:40.840 --> 01:38:42.990 align:start position:0%
snack option, vote once, watch the
leaderboard<01:38:41.440><c> update,</c><01:38:42.240><c> and</c><01:38:42.520><c> see</c><01:38:42.840><c> a</c>

01:38:42.990 --> 01:38:43.000 align:start position:0%
leaderboard update, and see a
 

01:38:43.000 --> 01:38:44.550 align:start position:0%
leaderboard update, and see a
deadline-driven

01:38:44.550 --> 01:38:44.560 align:start position:0%
deadline-driven
 

01:38:44.560 --> 01:38:47.150 align:start position:0%
deadline-driven
winner<01:38:45.120><c> state.</c><01:38:46.000><c> Now,</c><01:38:46.160><c> here</c><01:38:46.400><c> in</c><01:38:46.520><c> Codex,</c><01:38:47.000><c> we're</c>

01:38:47.150 --> 01:38:47.160 align:start position:0%
winner state. Now, here in Codex, we're
 

01:38:47.160 --> 01:38:48.870 align:start position:0%
winner state. Now, here in Codex, we're
going<01:38:47.280><c> to</c><01:38:47.360><c> come</c><01:38:47.640><c> here,</c><01:38:48.200><c> and</c><01:38:48.560><c> we're</c><01:38:48.680><c> going</c><01:38:48.800><c> to</c>

01:38:48.870 --> 01:38:48.880 align:start position:0%
going to come here, and we're going to
 

01:38:48.880 --> 01:38:51.270 align:start position:0%
going to come here, and we're going to
create<01:38:49.400><c> a</c><01:38:49.480><c> new</c><01:38:49.760><c> project</c><01:38:50.440><c> from</c><01:38:50.640><c> an</c><01:38:50.760><c> existing</c>

01:38:51.270 --> 01:38:51.280 align:start position:0%
create a new project from an existing
 

01:38:51.280 --> 01:38:52.950 align:start position:0%
create a new project from an existing
folder.<01:38:51.720><c> We're</c><01:38:51.840><c> going</c><01:38:51.960><c> to</c><01:38:52.040><c> click</c><01:38:52.320><c> over</c><01:38:52.480><c> here.</c>

01:38:52.950 --> 01:38:52.960 align:start position:0%
folder. We're going to click over here.
 

01:38:52.960 --> 01:38:54.390 align:start position:0%
folder. We're going to click over here.
Here,<01:38:53.280><c> we're</c><01:38:53.400><c> going</c><01:38:53.520><c> to</c><01:38:53.600><c> create</c><01:38:54.080><c> a</c><01:38:54.160><c> new</c>

01:38:54.390 --> 01:38:54.400 align:start position:0%
Here, we're going to create a new
 

01:38:54.400 --> 01:38:56.990 align:start position:0%
Here, we're going to create a new
folder.<01:38:55.080><c> I'm</c><01:38:55.200><c> going</c><01:38:55.320><c> to</c><01:38:55.440><c> type</c><01:38:55.800><c> Snack</c><01:38:56.320><c> Vote,</c>

01:38:56.990 --> 01:38:57.000 align:start position:0%
folder. I'm going to type Snack Vote,
 

01:38:57.000 --> 01:38:58.870 align:start position:0%
folder. I'm going to type Snack Vote,
and<01:38:57.200><c> we're</c><01:38:57.320><c> going</c><01:38:57.440><c> to</c><01:38:57.520><c> click</c><01:38:57.800><c> open.</c><01:38:58.520><c> And</c><01:38:58.680><c> now,</c>

01:38:58.870 --> 01:38:58.880 align:start position:0%
and we're going to click open. And now,
 

01:38:58.880 --> 01:39:01.790 align:start position:0%
and we're going to click open. And now,
we<01:38:59.040><c> have</c><01:38:59.280><c> a</c><01:38:59.440><c> brand</c><01:39:00.120><c> new</c><01:39:00.560><c> project</c><01:39:01.200><c> configured</c>

01:39:01.790 --> 01:39:01.800 align:start position:0%
we have a brand new project configured
 

01:39:01.800 --> 01:39:04.590 align:start position:0%
we have a brand new project configured
here<01:39:02.200><c> in</c><01:39:02.400><c> Codex.</c><01:39:03.240><c> And</c><01:39:03.480><c> here's</c><01:39:03.920><c> our</c><01:39:04.080><c> prompt</c><01:39:04.480><c> for</c>

01:39:04.590 --> 01:39:04.600 align:start position:0%
here in Codex. And here's our prompt for
 

01:39:04.600 --> 01:39:06.710 align:start position:0%
here in Codex. And here's our prompt for
the<01:39:04.760><c> visual</c><01:39:05.320><c> architecture.</c><01:39:06.280><c> We</c><01:39:06.440><c> want</c><01:39:06.640><c> to</c>

01:39:06.710 --> 01:39:06.720 align:start position:0%
the visual architecture. We want to
 

01:39:06.720 --> 01:39:09.350 align:start position:0%
the visual architecture. We want to
preface<01:39:07.400><c> that</c><01:39:07.600><c> we</c><01:39:07.720><c> want</c><01:39:07.880><c> to</c><01:39:08.000><c> use</c><01:39:08.320><c> this</c><01:39:08.640><c> image,</c>

01:39:09.350 --> 01:39:09.360 align:start position:0%
preface that we want to use this image,
 

01:39:09.360 --> 01:39:11.270 align:start position:0%
preface that we want to use this image,
and<01:39:09.560><c> we're</c><01:39:09.680><c> going</c><01:39:09.800><c> to</c><01:39:09.920><c> jump</c><01:39:10.240><c> into</c><01:39:10.560><c> plan</c><01:39:10.920><c> mode</c>

01:39:11.270 --> 01:39:11.280 align:start position:0%
and we're going to jump into plan mode
 

01:39:11.280 --> 01:39:13.390 align:start position:0%
and we're going to jump into plan mode
and<01:39:11.480><c> execute</c><01:39:11.960><c> this.</c><01:39:12.400><c> And</c><01:39:12.520><c> that</c><01:39:12.800><c> looks</c><01:39:13.080><c> good.</c>

01:39:13.390 --> 01:39:13.400 align:start position:0%
and execute this. And that looks good.
 

01:39:13.400 --> 01:39:15.150 align:start position:0%
and execute this. And that looks good.
We're<01:39:13.520><c> going</c><01:39:13.680><c> to</c><01:39:13.760><c> go</c><01:39:13.840><c> ahead</c><01:39:14.040><c> and</c><01:39:14.120><c> expand</c><01:39:14.720><c> that.</c>

01:39:15.150 --> 01:39:15.160 align:start position:0%
We're going to go ahead and expand that.
 

01:39:15.160 --> 01:39:17.190 align:start position:0%
We're going to go ahead and expand that.
Go<01:39:15.320><c> ahead</c><01:39:15.560><c> and</c><01:39:15.680><c> implement</c><01:39:16.200><c> that.</c><01:39:16.640><c> And</c><01:39:16.800><c> here's</c>

01:39:17.190 --> 01:39:17.200 align:start position:0%
Go ahead and implement that. And here's
 

01:39:17.200 --> 01:39:19.990 align:start position:0%
Go ahead and implement that. And here's
our<01:39:17.400><c> Snack</c><01:39:17.880><c> Vote</c><01:39:18.440><c> visual</c><01:39:19.040><c> architecture.</c><01:39:19.800><c> Look</c>

01:39:19.990 --> 01:39:20.000 align:start position:0%
our Snack Vote visual architecture. Look
 

01:39:20.000 --> 01:39:22.390 align:start position:0%
our Snack Vote visual architecture. Look
at<01:39:20.040><c> this</c><01:39:20.240><c> beautiful</c><01:39:20.680><c> diagram.</c><01:39:21.320><c> So,</c><01:39:21.480><c> you</c><01:39:21.640><c> can</c>

01:39:22.390 --> 01:39:22.400 align:start position:0%
at this beautiful diagram. So, you can
 

01:39:22.400 --> 01:39:25.150 align:start position:0%
at this beautiful diagram. So, you can
create<01:39:23.160><c> or</c><01:39:23.400><c> join</c><01:39:23.920><c> a</c><01:39:24.000><c> room.</c><01:39:24.520><c> In</c><01:39:24.640><c> the</c><01:39:24.760><c> current</c>

01:39:25.150 --> 01:39:25.160 align:start position:0%
create or join a room. In the current
 

01:39:25.160 --> 01:39:26.870 align:start position:0%
create or join a room. In the current
room,<01:39:25.400><c> you're</c><01:39:25.560><c> going</c><01:39:25.680><c> to</c><01:39:25.760><c> be</c><01:39:25.920><c> seeing</c><01:39:26.440><c> this,</c>

01:39:26.870 --> 01:39:26.880 align:start position:0%
room, you're going to be seeing this,
 

01:39:26.880 --> 01:39:30.110 align:start position:0%
room, you're going to be seeing this,
members<01:39:27.600><c> and</c><01:39:27.720><c> the</c><01:39:27.840><c> time</c><01:39:28.240><c> left.</c><01:39:28.760><c> You</c><01:39:29.080><c> can</c><01:39:29.960><c> You</c>

01:39:30.110 --> 01:39:30.120 align:start position:0%
members and the time left. You can You
 

01:39:30.120 --> 01:39:32.270 align:start position:0%
members and the time left. You can You
have<01:39:30.360><c> here</c><01:39:30.640><c> a</c><01:39:30.760><c> snack</c><01:39:31.320><c> list.</c><01:39:31.680><c> You</c><01:39:31.800><c> have</c><01:39:31.960><c> your</c>

01:39:32.270 --> 01:39:32.280 align:start position:0%
have here a snack list. You have your
 

01:39:32.280 --> 01:39:34.230 align:start position:0%
have here a snack list. You have your
your<01:39:32.560><c> voting</c><01:39:33.040><c> buttons.</c>

01:39:34.230 --> 01:39:34.240 align:start position:0%
your voting buttons.
 

01:39:34.240 --> 01:39:36.590 align:start position:0%
your voting buttons.
You<01:39:34.360><c> have</c><01:39:34.600><c> a</c><01:39:34.720><c> live</c><01:39:35.240><c> leaderboard,</c><01:39:36.240><c> and</c><01:39:36.520><c> you</c>

01:39:36.590 --> 01:39:36.600 align:start position:0%
You have a live leaderboard, and you
 

01:39:36.600 --> 01:39:39.590 align:start position:0%
You have a live leaderboard, and you
have<01:39:36.800><c> a</c><01:39:36.880><c> closed</c><01:39:37.760><c> winner</c><01:39:38.240><c> state.</c><01:39:38.960><c> Okay,</c><01:39:39.400><c> with</c>

01:39:39.590 --> 01:39:39.600 align:start position:0%
have a closed winner state. Okay, with
 

01:39:39.600 --> 01:39:43.710 align:start position:0%
have a closed winner state. Okay, with
some<01:39:40.120><c> voting</c><01:39:40.560><c> deadlines</c><01:39:41.960><c> here,</c><01:39:43.080><c> here</c><01:39:43.400><c> as</c>

01:39:43.710 --> 01:39:43.720 align:start position:0%
some voting deadlines here, here as
 

01:39:43.720 --> 01:39:46.190 align:start position:0%
some voting deadlines here, here as
well,<01:39:44.080><c> and</c><01:39:44.240><c> then</c><01:39:44.400><c> we</c><01:39:44.560><c> also</c><01:39:45.000><c> have</c><01:39:45.360><c> our</c><01:39:45.640><c> Vercel</c>

01:39:46.190 --> 01:39:46.200 align:start position:0%
well, and then we also have our Vercel
 

01:39:46.200 --> 01:39:48.990 align:start position:0%
well, and then we also have our Vercel
deploy.<01:39:46.960><c> And</c><01:39:47.080><c> so</c><01:39:47.280><c> this</c><01:39:47.560><c> looks</c><01:39:47.800><c> like</c><01:39:48.160><c> a</c><01:39:48.480><c> fairly</c>

01:39:48.990 --> 01:39:49.000 align:start position:0%
deploy. And so this looks like a fairly
 

01:39:49.000 --> 01:39:51.950 align:start position:0%
deploy. And so this looks like a fairly
fun<01:39:49.400><c> app</c><01:39:50.200><c> with</c><01:39:50.600><c> a</c><01:39:50.680><c> lot</c><01:39:50.920><c> of</c><01:39:51.080><c> things</c><01:39:51.440><c> going</c><01:39:51.720><c> on,</c>

01:39:51.950 --> 01:39:51.960 align:start position:0%
fun app with a lot of things going on,
 

01:39:51.960 --> 01:39:54.110 align:start position:0%
fun app with a lot of things going on,
and<01:39:52.080><c> so</c><01:39:52.240><c> I</c><01:39:52.360><c> can't</c><01:39:52.800><c> wait</c><01:39:53.200><c> to</c><01:39:53.360><c> implement</c><01:39:53.880><c> this.</c>

01:39:54.110 --> 01:39:54.120 align:start position:0%
and so I can't wait to implement this.
 

01:39:54.120 --> 01:39:55.630 align:start position:0%
and so I can't wait to implement this.
And<01:39:54.240><c> we're</c><01:39:54.400><c> also</c><01:39:54.680><c> going</c><01:39:54.800><c> to</c><01:39:54.880><c> be</c><01:39:55.040><c> adding</c><01:39:55.400><c> more</c>

01:39:55.630 --> 01:39:55.640 align:start position:0%
And we're also going to be adding more
 

01:39:55.640 --> 01:39:58.270 align:start position:0%
And we're also going to be adding more
and<01:39:55.760><c> more</c><01:39:55.960><c> features</c><01:39:56.680><c> as</c><01:39:56.960><c> we</c><01:39:57.080><c> go</c><01:39:57.240><c> along.</c><01:39:57.800><c> Next,</c>

01:39:58.270 --> 01:39:58.280 align:start position:0%
and more features as we go along. Next,
 

01:39:58.280 --> 01:40:01.190 align:start position:0%
and more features as we go along. Next,
I<01:39:58.360><c> want</c><01:39:58.520><c> to</c><01:39:58.600><c> go</c><01:39:58.720><c> ahead</c><01:39:59.160><c> and</c><01:39:59.360><c> create</c><01:39:59.920><c> an</c><01:40:00.240><c> entity</c>

01:40:01.190 --> 01:40:01.200 align:start position:0%
I want to go ahead and create an entity
 

01:40:01.200 --> 01:40:04.070 align:start position:0%
I want to go ahead and create an entity
diagram,<01:40:01.800><c> an</c><01:40:01.920><c> entity</c><01:40:02.400><c> architecture</c><01:40:03.080><c> diagram.</c>

01:40:04.070 --> 01:40:04.080 align:start position:0%
diagram, an entity architecture diagram.
 

01:40:04.080 --> 01:40:06.350 align:start position:0%
diagram, an entity architecture diagram.
So<01:40:04.360><c> here's</c><01:40:04.800><c> our</c><01:40:05.000><c> prompt.</c><01:40:05.800><c> We're</c><01:40:05.920><c> going</c><01:40:06.040><c> to</c><01:40:06.160><c> do</c>

01:40:06.350 --> 01:40:06.360 align:start position:0%
So here's our prompt. We're going to do
 

01:40:06.360 --> 01:40:08.350 align:start position:0%
So here's our prompt. We're going to do
this,<01:40:07.000><c> and</c><01:40:07.280><c> we're</c><01:40:07.440><c> going</c><01:40:07.560><c> to</c><01:40:07.760><c> go</c><01:40:07.920><c> ahead</c><01:40:08.240><c> and</c>

01:40:08.350 --> 01:40:08.360 align:start position:0%
this, and we're going to go ahead and
 

01:40:08.360 --> 01:40:10.590 align:start position:0%
this, and we're going to go ahead and
execute<01:40:08.840><c> that.</c><01:40:09.360><c> And</c><01:40:09.520><c> here's</c><01:40:09.920><c> our</c><01:40:10.120><c> entity</c>

01:40:10.590 --> 01:40:10.600 align:start position:0%
execute that. And here's our entity
 

01:40:10.600 --> 01:40:12.830 align:start position:0%
execute that. And here's our entity
diagram.<01:40:11.320><c> Okay,</c><01:40:11.720><c> so</c><01:40:11.920><c> a</c><01:40:12.000><c> room</c><01:40:12.280><c> contains</c>

01:40:12.830 --> 01:40:12.840 align:start position:0%
diagram. Okay, so a room contains
 

01:40:12.840 --> 01:40:15.950 align:start position:0%
diagram. Okay, so a room contains
multiple<01:40:13.440><c> snack</c><01:40:13.840><c> options</c><01:40:14.840><c> and</c><01:40:15.040><c> has</c><01:40:15.440><c> one</c>

01:40:15.950 --> 01:40:15.960 align:start position:0%
multiple snack options and has one
 

01:40:15.960 --> 01:40:17.630 align:start position:0%
multiple snack options and has one
voting<01:40:16.480><c> session,</c><01:40:17.080><c> right?</c><01:40:17.280><c> We</c><01:40:17.400><c> have</c><01:40:17.520><c> the</c>

01:40:17.630 --> 01:40:17.640 align:start position:0%
voting session, right? We have the
 

01:40:17.640 --> 01:40:20.670 align:start position:0%
voting session, right? We have the
voting<01:40:18.040><c> room,</c><01:40:18.760><c> many</c><01:40:19.400><c> snack</c><01:40:19.800><c> options,</c><01:40:20.320><c> and</c>

01:40:20.670 --> 01:40:20.680 align:start position:0%
voting room, many snack options, and
 

01:40:20.680 --> 01:40:22.670 align:start position:0%
voting room, many snack options, and
many<01:40:21.040><c> votes,</c><01:40:21.520><c> right?</c><01:40:21.760><c> We</c><01:40:21.880><c> have</c><01:40:22.000><c> We</c><01:40:22.120><c> have</c><01:40:22.440><c> here</c>

01:40:22.670 --> 01:40:22.680 align:start position:0%
many votes, right? We have We have here
 

01:40:22.680 --> 01:40:24.510 align:start position:0%
many votes, right? We have We have here
some<01:40:22.960><c> winner</c><01:40:23.240><c> logic,</c><01:40:23.720><c> the</c><01:40:23.800><c> winner</c><01:40:24.080><c> logic</c>

01:40:24.510 --> 01:40:24.520 align:start position:0%
some winner logic, the winner logic
 

01:40:24.520 --> 01:40:27.750 align:start position:0%
some winner logic, the winner logic
snack<01:40:24.840><c> option</c><01:40:25.720><c> with</c><01:40:25.960><c> the</c><01:40:26.080><c> highest</c><01:40:26.520><c> vote</c><01:40:26.880><c> count</c>

01:40:27.750 --> 01:40:27.760 align:start position:0%
snack option with the highest vote count
 

01:40:27.760 --> 01:40:30.270 align:start position:0%
snack option with the highest vote count
when<01:40:28.120><c> now</c><01:40:28.520><c> is</c><01:40:28.760><c> greater</c><01:40:29.200><c> than</c><01:40:29.480><c> or</c><01:40:29.760><c> equal</c><01:40:30.120><c> to</c>

01:40:30.270 --> 01:40:30.280 align:start position:0%
when now is greater than or equal to
 

01:40:30.280 --> 01:40:33.110 align:start position:0%
when now is greater than or equal to
closes<01:40:30.880><c> at,</c><01:40:31.360><c> right?</c><01:40:31.680><c> So</c><01:40:31.840><c> after</c><01:40:32.160><c> the</c><01:40:32.280><c> deadline,</c>

01:40:33.110 --> 01:40:33.120 align:start position:0%
closes at, right? So after the deadline,
 

01:40:33.120 --> 01:40:35.950 align:start position:0%
closes at, right? So after the deadline,
we<01:40:33.280><c> have</c><01:40:33.480><c> here</c><01:40:33.720><c> a</c><01:40:33.880><c> legend,</c><01:40:34.600><c> and</c><01:40:34.760><c> here</c><01:40:35.000><c> we</c><01:40:35.200><c> have</c>

01:40:35.950 --> 01:40:35.960 align:start position:0%
we have here a legend, and here we have
 

01:40:35.960 --> 01:40:39.030 align:start position:0%
we have here a legend, and here we have
a<01:40:36.600><c> sample</c><01:40:37.240><c> kind</c><01:40:37.520><c> of</c><01:40:37.640><c> workflow,</c><01:40:38.240><c> a</c><01:40:38.360><c> pipeline.</c>

01:40:39.030 --> 01:40:39.040 align:start position:0%
a sample kind of workflow, a pipeline.
 

01:40:39.040 --> 01:40:41.270 align:start position:0%
a sample kind of workflow, a pipeline.
Build<01:40:39.360><c> the</c><01:40:39.440><c> UI</c><01:40:39.760><c> first,</c><01:40:40.440><c> connect</c><01:40:41.040><c> it</c><01:40:41.160><c> to</c>

01:40:41.270 --> 01:40:41.280 align:start position:0%
Build the UI first, connect it to
 

01:40:41.280 --> 01:40:43.670 align:start position:0%
Build the UI first, connect it to
Convex.<01:40:42.040><c> Later,</c><01:40:42.440><c> Convex</c><01:40:43.000><c> is</c><01:40:43.120><c> going</c><01:40:43.240><c> to</c><01:40:43.320><c> be</c><01:40:43.440><c> our</c>

01:40:43.670 --> 01:40:43.680 align:start position:0%
Convex. Later, Convex is going to be our
 

01:40:43.680 --> 01:40:45.910 align:start position:0%
Convex. Later, Convex is going to be our
backend,<01:40:44.360><c> and</c><01:40:44.800><c> we</c><01:40:44.920><c> are</c><01:40:45.040><c> going</c><01:40:45.200><c> to</c><01:40:45.280><c> be</c>

01:40:45.910 --> 01:40:45.920 align:start position:0%
backend, and we are going to be
 

01:40:45.920 --> 01:40:48.150 align:start position:0%
backend, and we are going to be
leveraging<01:40:46.760><c> things</c><01:40:47.120><c> like</c><01:40:47.560><c> real-time</c>

01:40:48.150 --> 01:40:48.160 align:start position:0%
leveraging things like real-time
 

01:40:48.160 --> 01:40:51.870 align:start position:0%
leveraging things like real-time
updates,<01:40:48.880><c> persistence,</c><01:40:50.160><c> and</c><01:40:50.440><c> live</c><01:40:51.160><c> vote</c>

01:40:51.870 --> 01:40:51.880 align:start position:0%
updates, persistence, and live vote
 

01:40:51.880 --> 01:40:54.510 align:start position:0%
updates, persistence, and live vote
counts.<01:40:52.560><c> And</c><01:40:52.720><c> so</c><01:40:52.840><c> now</c><01:40:53.160><c> that</c><01:40:53.360><c> we've</c><01:40:53.560><c> generated</c>

01:40:54.510 --> 01:40:54.520 align:start position:0%
counts. And so now that we've generated
 

01:40:54.520 --> 01:40:58.230 align:start position:0%
counts. And so now that we've generated
a<01:40:54.960><c> visual</c><01:40:55.880><c> architecture</c><01:40:56.560><c> diagram,</c><01:40:57.720><c> as</c><01:40:58.000><c> well</c>

01:40:58.230 --> 01:40:58.240 align:start position:0%
a visual architecture diagram, as well
 

01:40:58.240 --> 01:41:00.270 align:start position:0%
a visual architecture diagram, as well
as<01:40:58.440><c> our</c><01:40:58.680><c> entity</c><01:40:59.160><c> diagram,</c><01:40:59.720><c> the</c><01:40:59.840><c> next</c><01:41:00.120><c> thing</c>

01:41:00.270 --> 01:41:00.280 align:start position:0%
as our entity diagram, the next thing
 

01:41:00.280 --> 01:41:02.710 align:start position:0%
as our entity diagram, the next thing
that<01:41:00.440><c> we</c><01:41:00.600><c> want</c><01:41:00.840><c> to</c><01:41:00.920><c> do</c><01:41:01.320><c> is</c><01:41:01.640><c> we</c><01:41:01.800><c> want</c><01:41:02.160><c> to</c><01:41:02.320><c> ask</c>

01:41:02.710 --> 01:41:02.720 align:start position:0%
that we want to do is we want to ask
 

01:41:02.720 --> 01:41:05.670 align:start position:0%
that we want to do is we want to ask
Codex<01:41:03.320><c> for</c><01:41:03.560><c> some</c><01:41:03.760><c> stack</c><01:41:04.320><c> recommendations,</c>

01:41:05.670 --> 01:41:05.680 align:start position:0%
Codex for some stack recommendations,
 

01:41:05.680 --> 01:41:07.550 align:start position:0%
Codex for some stack recommendations,
because<01:41:05.960><c> there</c><01:41:06.120><c> are</c><01:41:06.160><c> lots</c><01:41:06.720><c> of</c><01:41:06.880><c> ways</c><01:41:07.240><c> that</c><01:41:07.440><c> we</c>

01:41:07.550 --> 01:41:07.560 align:start position:0%
because there are lots of ways that we
 

01:41:07.560 --> 01:41:09.550 align:start position:0%
because there are lots of ways that we
can<01:41:07.800><c> build</c><01:41:08.120><c> out</c><01:41:08.280><c> this</c><01:41:08.560><c> app,</c><01:41:09.080><c> and</c><01:41:09.200><c> we</c><01:41:09.320><c> want</c>

01:41:09.550 --> 01:41:09.560 align:start position:0%
can build out this app, and we want
 

01:41:09.560 --> 01:41:11.790 align:start position:0%
can build out this app, and we want
Codex<01:41:10.000><c> to</c><01:41:10.120><c> tell</c><01:41:10.440><c> us</c><01:41:10.720><c> the</c><01:41:10.840><c> best</c><01:41:11.200><c> options</c><01:41:11.680><c> for</c>

01:41:11.790 --> 01:41:11.800 align:start position:0%
Codex to tell us the best options for
 

01:41:11.800 --> 01:41:13.910 align:start position:0%
Codex to tell us the best options for
this<01:41:11.960><c> specific</c><01:41:12.560><c> app.</c><01:41:13.080><c> Here's</c><01:41:13.440><c> the</c><01:41:13.560><c> prompt</c>

01:41:13.910 --> 01:41:13.920 align:start position:0%
this specific app. Here's the prompt
 

01:41:13.920 --> 01:41:14.990 align:start position:0%
this specific app. Here's the prompt
that<01:41:14.040><c> we're</c><01:41:14.160><c> going</c><01:41:14.320><c> to</c><01:41:14.400><c> be</c><01:41:14.480><c> using,</c><01:41:14.840><c> and</c><01:41:14.920><c> I'm</c>

01:41:14.990 --> 01:41:15.000 align:start position:0%
that we're going to be using, and I'm
 

01:41:15.000 --> 01:41:17.950 align:start position:0%
that we're going to be using, and I'm
going<01:41:15.120><c> to</c><01:41:15.240><c> switch</c><01:41:15.640><c> into</c><01:41:16.080><c> plan</c><01:41:16.520><c> mode</c><01:41:16.800><c> here.</c><01:41:17.240><c> And</c>

01:41:17.950 --> 01:41:17.960 align:start position:0%
going to switch into plan mode here. And
 

01:41:17.960 --> 01:41:20.430 align:start position:0%
going to switch into plan mode here. And
it's<01:41:18.240><c> telling</c><01:41:18.600><c> us</c><01:41:18.720><c> do</c><01:41:18.840><c> not</c><01:41:19.160><c> edit</c><01:41:19.480><c> files</c><01:41:19.920><c> yet,</c>

01:41:20.430 --> 01:41:20.440 align:start position:0%
it's telling us do not edit files yet,
 

01:41:20.440 --> 01:41:22.110 align:start position:0%
it's telling us do not edit files yet,
inspect<01:41:21.000><c> the</c><01:41:21.080><c> current</c><01:41:21.440><c> project,</c><01:41:21.960><c> and</c>

01:41:22.110 --> 01:41:22.120 align:start position:0%
inspect the current project, and
 

01:41:22.120 --> 01:41:25.230 align:start position:0%
inspect the current project, and
recommend<01:41:22.800><c> the</c><01:41:22.920><c> simplest</c><01:41:23.600><c> stack</c><01:41:24.520><c> for</c><01:41:24.760><c> Snack</c>

01:41:25.230 --> 01:41:25.240 align:start position:0%
recommend the simplest stack for Snack
 

01:41:25.240 --> 01:41:26.910 align:start position:0%
recommend the simplest stack for Snack
Poll.<01:41:25.480><c> And</c><01:41:25.640><c> here's</c><01:41:25.960><c> the</c><01:41:26.080><c> plan</c><01:41:26.400><c> that</c><01:41:26.520><c> it</c><01:41:26.680><c> came</c>

01:41:26.910 --> 01:41:26.920 align:start position:0%
Poll. And here's the plan that it came
 

01:41:26.920 --> 01:41:28.790 align:start position:0%
Poll. And here's the plan that it came
back<01:41:27.280><c> with.</c><01:41:27.720><c> Here</c><01:41:27.960><c> we</c><01:41:28.080><c> have</c><01:41:28.240><c> the</c><01:41:28.360><c> stack</c>

01:41:28.790 --> 01:41:28.800 align:start position:0%
back with. Here we have the stack
 

01:41:28.800 --> 01:41:30.310 align:start position:0%
back with. Here we have the stack
recommendation.<01:41:29.640><c> We're</c><01:41:29.760><c> going</c><01:41:29.880><c> to</c><01:41:29.960><c> be</c><01:41:30.040><c> using</c>

01:41:30.310 --> 01:41:30.320 align:start position:0%
recommendation. We're going to be using
 

01:41:30.320 --> 01:41:33.990 align:start position:0%
recommendation. We're going to be using
React,<01:41:31.200><c> TypeScript,</c><01:41:32.440><c> Tailwind.</c><01:41:33.480><c> And</c><01:41:33.640><c> here</c><01:41:33.880><c> it</c>

01:41:33.990 --> 01:41:34.000 align:start position:0%
React, TypeScript, Tailwind. And here it
 

01:41:34.000 --> 01:41:36.030 align:start position:0%
React, TypeScript, Tailwind. And here it
says<01:41:34.240><c> backend</c><01:41:34.720><c> later</c><01:41:35.080><c> Convex</c><01:41:35.800><c> with</c>

01:41:36.030 --> 01:41:36.040 align:start position:0%
says backend later Convex with
 

01:41:36.040 --> 01:41:38.030 align:start position:0%
says backend later Convex with
TypeScript<01:41:36.800><c> server</c><01:41:37.160><c> functions</c><01:41:37.840><c> and</c>

01:41:38.030 --> 01:41:38.040 align:start position:0%
TypeScript server functions and
 

01:41:38.040 --> 01:41:40.150 align:start position:0%
TypeScript server functions and
generated<01:41:38.560><c> client</c><01:41:39.000><c> types.</c><01:41:39.640><c> And</c><01:41:39.760><c> so,</c><01:41:39.920><c> for</c><01:41:40.040><c> the</c>

01:41:40.150 --> 01:41:40.160 align:start position:0%
generated client types. And so, for the
 

01:41:40.160 --> 01:41:42.230 align:start position:0%
generated client types. And so, for the
most<01:41:40.560><c> part,</c><01:41:41.120><c> uh</c><01:41:41.160><c> this</c><01:41:41.440><c> is</c><01:41:41.600><c> very,</c><01:41:41.920><c> very</c>

01:41:42.230 --> 01:41:42.240 align:start position:0%
most part, uh this is very, very
 

01:41:42.240 --> 01:41:45.110 align:start position:0%
most part, uh this is very, very
similar,<01:41:42.720><c> if</c><01:41:42.880><c> not</c><01:41:43.440><c> the</c><01:41:43.560><c> exact</c><01:41:44.240><c> same</c>

01:41:45.110 --> 01:41:45.120 align:start position:0%
similar, if not the exact same
 

01:41:45.120 --> 01:41:47.830 align:start position:0%
similar, if not the exact same
architecture<01:41:45.960><c> stack</c><01:41:46.920><c> that</c><01:41:47.160><c> we</c><01:41:47.320><c> use</c><01:41:47.600><c> for</c><01:41:47.720><c> the</c>

01:41:47.830 --> 01:41:47.840 align:start position:0%
architecture stack that we use for the
 

01:41:47.840 --> 01:41:49.750 align:start position:0%
architecture stack that we use for the
first<01:41:48.360><c> app,</c><01:41:48.680><c> except</c><01:41:49.240><c> we're</c><01:41:49.360><c> going</c><01:41:49.520><c> to</c><01:41:49.600><c> be</c>

01:41:49.750 --> 01:41:49.760 align:start position:0%
first app, except we're going to be
 

01:41:49.760 --> 01:41:52.830 align:start position:0%
first app, except we're going to be
adding<01:41:50.240><c> more</c><01:41:50.480><c> and</c><01:41:50.600><c> more</c><01:41:50.800><c> features,</c><01:41:51.920><c> and</c><01:41:52.160><c> also</c>

01:41:52.830 --> 01:41:52.840 align:start position:0%
adding more and more features, and also
 

01:41:52.840 --> 01:41:55.830 align:start position:0%
adding more and more features, and also
connecting<01:41:53.440><c> a</c><01:41:53.560><c> back</c><01:41:54.080><c> end</c><01:41:54.320><c> for</c><01:41:54.440><c> the</c><01:41:54.560><c> first</c><01:41:55.080><c> time</c>

01:41:55.830 --> 01:41:55.840 align:start position:0%
connecting a back end for the first time
 

01:41:55.840 --> 01:41:58.630 align:start position:0%
connecting a back end for the first time
in<01:41:56.080><c> this</c><01:41:56.320><c> tutorial.</c><01:41:57.240><c> Now,</c><01:41:57.520><c> here,</c><01:41:57.960><c> instead</c><01:41:58.480><c> of</c>

01:41:58.630 --> 01:41:58.640 align:start position:0%
in this tutorial. Now, here, instead of
 

01:41:58.640 --> 01:42:00.350 align:start position:0%
in this tutorial. Now, here, instead of
clicking<01:41:59.120><c> submit,</c><01:41:59.760><c> I'm</c><01:41:59.880><c> going</c><01:42:00.040><c> to</c><01:42:00.080><c> give</c><01:42:00.240><c> it</c>

01:42:00.350 --> 01:42:00.360 align:start position:0%
clicking submit, I'm going to give it
 

01:42:00.360 --> 01:42:02.750 align:start position:0%
clicking submit, I'm going to give it
another<01:42:00.720><c> prompt,</c><01:42:01.280><c> and</c><01:42:01.480><c> this</c><01:42:01.800><c> prompt</c><01:42:02.360><c> is</c><01:42:02.520><c> going</c>

01:42:02.750 --> 01:42:02.760 align:start position:0%
another prompt, and this prompt is going
 

01:42:02.760 --> 01:42:05.910 align:start position:0%
another prompt, and this prompt is going
to<01:42:02.920><c> start</c><01:42:03.640><c> building</c><01:42:04.680><c> the</c><01:42:04.840><c> app,</c><01:42:05.360><c> writing</c><01:42:05.800><c> the</c>

01:42:05.910 --> 01:42:05.920 align:start position:0%
to start building the app, writing the
 

01:42:05.920 --> 01:42:08.430 align:start position:0%
to start building the app, writing the
code.<01:42:06.600><c> And</c><01:42:06.720><c> here's</c><01:42:07.080><c> the</c><01:42:07.200><c> prompt,</c><01:42:07.800><c> "Implement</c>

01:42:08.430 --> 01:42:08.440 align:start position:0%
code. And here's the prompt, "Implement
 

01:42:08.440 --> 01:42:11.910 align:start position:0%
code. And here's the prompt, "Implement
the<01:42:08.560><c> first</c><01:42:09.120><c> working</c><01:42:10.360><c> Snack</c><01:42:10.800><c> Vote</c><01:42:11.080><c> UI</c><01:42:11.480><c> without</c>

01:42:11.910 --> 01:42:11.920 align:start position:0%
the first working Snack Vote UI without
 

01:42:11.920 --> 01:42:14.830 align:start position:0%
the first working Snack Vote UI without
a<01:42:12.000><c> database</c><01:42:12.800><c> or</c><01:42:13.040><c> persistence,</c><01:42:13.880><c> okay?</c><01:42:14.280><c> Inspect</c>

01:42:14.830 --> 01:42:14.840 align:start position:0%
a database or persistence, okay? Inspect
 

01:42:14.840 --> 01:42:17.150 align:start position:0%
a database or persistence, okay? Inspect
the<01:42:14.920><c> current</c><01:42:15.280><c> project</c><01:42:15.720><c> first,</c><01:42:16.480><c> then</c><01:42:16.760><c> build</c>

01:42:17.150 --> 01:42:17.160 align:start position:0%
the current project first, then build
 

01:42:17.160 --> 01:42:20.150 align:start position:0%
the current project first, then build
the<01:42:17.280><c> smallest</c><01:42:18.000><c> useful</c><01:42:18.560><c> Snack</c><01:42:18.960><c> Vote</c><01:42:19.280><c> UI."</c><01:42:19.920><c> And</c>

01:42:20.150 --> 01:42:20.160 align:start position:0%
the smallest useful Snack Vote UI." And
 

01:42:20.160 --> 01:42:23.030 align:start position:0%
the smallest useful Snack Vote UI." And
there's<01:42:20.360><c> some</c><01:42:20.600><c> verification</c><01:42:21.440><c> steps</c><01:42:21.840><c> as</c><01:42:22.000><c> well.</c>

01:42:23.030 --> 01:42:23.040 align:start position:0%
there's some verification steps as well.
 

01:42:23.040 --> 01:42:25.470 align:start position:0%
there's some verification steps as well.
And<01:42:23.160><c> we</c><01:42:23.320><c> also</c><01:42:23.800><c> explicitly</c><01:42:24.520><c> tell</c><01:42:24.880><c> it</c><01:42:25.000><c> to</c><01:42:25.120><c> not</c>

01:42:25.470 --> 01:42:25.480 align:start position:0%
And we also explicitly tell it to not
 

01:42:25.480 --> 01:42:27.910 align:start position:0%
And we also explicitly tell it to not
use<01:42:25.680><c> convex,</c><01:42:26.440><c> local</c><01:42:26.800><c> storage,</c><01:42:27.280><c> or</c><01:42:27.400><c> an</c><01:42:27.560><c> API,</c>

01:42:27.910 --> 01:42:27.920 align:start position:0%
use convex, local storage, or an API,
 

01:42:27.920 --> 01:42:31.030 align:start position:0%
use convex, local storage, or an API,
nothing<01:42:28.480><c> of</c><01:42:28.600><c> that,</c><01:42:29.160><c> just</c><01:42:29.800><c> keep</c><01:42:30.160><c> it</c><01:42:30.320><c> to</c><01:42:30.480><c> these</c>

01:42:31.030 --> 01:42:31.040 align:start position:0%
nothing of that, just keep it to these
 

01:42:31.040 --> 01:42:33.190 align:start position:0%
nothing of that, just keep it to these
specs<01:42:31.720><c> right</c><01:42:32.080><c> here.</c><01:42:32.400><c> And</c><01:42:32.520><c> we</c><01:42:32.600><c> also</c><01:42:32.840><c> have</c><01:42:33.000><c> some</c>

01:42:33.190 --> 01:42:33.200 align:start position:0%
specs right here. And we also have some
 

01:42:33.200 --> 01:42:35.430 align:start position:0%
specs right here. And we also have some
verification.<01:42:34.160><c> So,</c><01:42:34.320><c> I'm</c><01:42:34.440><c> going</c><01:42:34.600><c> to</c><01:42:34.680><c> go</c><01:42:35.040><c> ahead</c>

01:42:35.430 --> 01:42:35.440 align:start position:0%
verification. So, I'm going to go ahead
 

01:42:35.440 --> 01:42:37.390 align:start position:0%
verification. So, I'm going to go ahead
and<01:42:35.680><c> run</c><01:42:35.920><c> this</c><01:42:36.160><c> in</c><01:42:36.320><c> plan</c><01:42:36.640><c> mode,</c><01:42:36.920><c> in</c><01:42:37.040><c> case</c><01:42:37.280><c> it</c>

01:42:37.390 --> 01:42:37.400 align:start position:0%
and run this in plan mode, in case it
 

01:42:37.400 --> 01:42:39.030 align:start position:0%
and run this in plan mode, in case it
wants<01:42:37.600><c> to</c><01:42:37.720><c> ask</c><01:42:38.040><c> me</c><01:42:38.160><c> something.</c><01:42:38.800><c> So,</c><01:42:38.960><c> it</c>

01:42:39.030 --> 01:42:39.040 align:start position:0%
wants to ask me something. So, it
 

01:42:39.040 --> 01:42:40.870 align:start position:0%
wants to ask me something. So, it
doesn't<01:42:39.280><c> have</c><01:42:39.440><c> any</c><01:42:39.600><c> questions</c><01:42:40.200><c> for</c><01:42:40.440><c> us,</c><01:42:40.760><c> and</c>

01:42:40.870 --> 01:42:40.880 align:start position:0%
doesn't have any questions for us, and
 

01:42:40.880 --> 01:42:42.950 align:start position:0%
doesn't have any questions for us, and
that<01:42:41.040><c> is</c><01:42:41.160><c> because</c><01:42:41.880><c> in</c><01:42:42.120><c> this</c><01:42:42.440><c> specific</c>

01:42:42.950 --> 01:42:42.960 align:start position:0%
that is because in this specific
 

01:42:42.960 --> 01:42:46.190 align:start position:0%
that is because in this specific
conversation,<01:42:44.360><c> we</c><01:42:44.520><c> already</c><01:42:44.920><c> fleshed</c><01:42:45.600><c> out,</c>

01:42:46.190 --> 01:42:46.200 align:start position:0%
conversation, we already fleshed out,
 

01:42:46.200 --> 01:42:48.150 align:start position:0%
conversation, we already fleshed out,
you<01:42:46.320><c> know,</c><01:42:46.520><c> things</c><01:42:46.880><c> like</c><01:42:47.120><c> the</c><01:42:47.280><c> architecture,</c>

01:42:48.150 --> 01:42:48.160 align:start position:0%
you know, things like the architecture,
 

01:42:48.160 --> 01:42:50.310 align:start position:0%
you know, things like the architecture,
the<01:42:48.320><c> stack,</c><01:42:49.080><c> and</c><01:42:49.200><c> all</c><01:42:49.360><c> of</c><01:42:49.440><c> that</c><01:42:49.640><c> stuff.</c><01:42:50.160><c> And</c>

01:42:50.310 --> 01:42:50.320 align:start position:0%
the stack, and all of that stuff. And
 

01:42:50.320 --> 01:42:52.830 align:start position:0%
the stack, and all of that stuff. And
so,<01:42:50.480><c> it</c><01:42:50.600><c> kind</c><01:42:50.880><c> of</c><01:42:50.960><c> knows</c><01:42:51.880><c> what</c><01:42:52.120><c> it</c><01:42:52.240><c> needs</c><01:42:52.520><c> to</c><01:42:52.640><c> do</c>

01:42:52.830 --> 01:42:52.840 align:start position:0%
so, it kind of knows what it needs to do
 

01:42:52.840 --> 01:42:55.030 align:start position:0%
so, it kind of knows what it needs to do
to<01:42:52.960><c> build</c><01:42:53.280><c> out</c><01:42:53.480><c> this</c><01:42:53.720><c> app.</c><01:42:54.240><c> So,</c><01:42:54.720><c> we're</c><01:42:54.920><c> going</c>

01:42:55.030 --> 01:42:55.040 align:start position:0%
to build out this app. So, we're going
 

01:42:55.040 --> 01:42:57.030 align:start position:0%
to build out this app. So, we're going
to<01:42:55.120><c> say,</c><01:42:55.400><c> "Yes,</c><01:42:55.760><c> implement</c><01:42:56.360><c> this."</c><01:42:56.720><c> because</c>

01:42:57.030 --> 01:42:57.040 align:start position:0%
to say, "Yes, implement this." because
 

01:42:57.040 --> 01:42:59.310 align:start position:0%
to say, "Yes, implement this." because
this<01:42:57.280><c> is</c><01:42:57.400><c> the</c><01:42:57.520><c> step</c><01:42:57.880><c> where</c><01:42:58.120><c> we</c><01:42:58.240><c> actually</c><01:42:58.680><c> want</c>

01:42:59.310 --> 01:42:59.320 align:start position:0%
this is the step where we actually want
 

01:42:59.320 --> 01:43:01.110 align:start position:0%
this is the step where we actually want
the<01:42:59.480><c> code</c><01:42:59.840><c> written.</c><01:43:00.160><c> All</c><01:43:00.240><c> right,</c><01:43:00.480><c> so</c><01:43:00.600><c> this</c><01:43:00.880><c> has</c>

01:43:01.110 --> 01:43:01.120 align:start position:0%
the code written. All right, so this has
 

01:43:01.120 --> 01:43:03.230 align:start position:0%
the code written. All right, so this has
completed,<01:43:02.440><c> and</c><01:43:02.560><c> it</c><01:43:02.680><c> says</c><01:43:02.960><c> here,</c>

01:43:03.230 --> 01:43:03.240 align:start position:0%
completed, and it says here,
 

01:43:03.240 --> 01:43:05.950 align:start position:0%
completed, and it says here,
"Implemented<01:43:03.920><c> the</c><01:43:04.040><c> first</c><01:43:04.680><c> working</c><01:43:05.320><c> UI-only</c>

01:43:05.950 --> 01:43:05.960 align:start position:0%
"Implemented the first working UI-only
 

01:43:05.960 --> 01:43:09.190 align:start position:0%
"Implemented the first working UI-only
Snack<01:43:06.520><c> Vote</c><01:43:07.000><c> app</c><01:43:07.440><c> here.</c><01:43:08.400><c> Created</c><01:43:08.960><c> all</c><01:43:09.080><c> of</c>

01:43:09.190 --> 01:43:09.200 align:start position:0%
Snack Vote app here. Created all of
 

01:43:09.200 --> 01:43:12.270 align:start position:0%
Snack Vote app here. Created all of
this.<01:43:10.000><c> What</c><01:43:10.360><c> works?</c><01:43:11.200><c> Verification</c>

01:43:12.270 --> 01:43:12.280 align:start position:0%
this. What works? Verification
 

01:43:12.280 --> 01:43:15.070 align:start position:0%
this. What works? Verification
completed.<01:43:13.080><c> Still</c><01:43:13.440><c> needs</c><01:43:13.800><c> attention</c><01:43:14.440><c> later."</c>

01:43:15.070 --> 01:43:15.080 align:start position:0%
completed. Still needs attention later."
 

01:43:15.080 --> 01:43:16.590 align:start position:0%
completed. Still needs attention later."
Okay,<01:43:15.440><c> all</c><01:43:15.680><c> of</c><01:43:15.800><c> these</c><01:43:16.000><c> things,</c><01:43:16.320><c> and</c><01:43:16.440><c> we'll</c>

01:43:16.590 --> 01:43:16.600 align:start position:0%
Okay, all of these things, and we'll
 

01:43:16.600 --> 01:43:18.790 align:start position:0%
Okay, all of these things, and we'll
talk<01:43:16.880><c> about</c><01:43:17.200><c> that</c><01:43:17.520><c> a</c><01:43:17.560><c> little</c><01:43:17.800><c> bit</c><01:43:18.000><c> later.</c><01:43:18.560><c> And</c>

01:43:18.790 --> 01:43:18.800 align:start position:0%
talk about that a little bit later. And
 

01:43:18.800 --> 01:43:21.190 align:start position:0%
talk about that a little bit later. And
so,<01:43:18.920><c> now</c><01:43:19.240><c> we</c><01:43:19.360><c> have</c><01:43:19.600><c> a</c><01:43:19.720><c> web</c><01:43:20.200><c> preview.</c><01:43:20.880><c> So,</c><01:43:21.080><c> we</c>

01:43:21.190 --> 01:43:21.200 align:start position:0%
so, now we have a web preview. So, we
 

01:43:21.200 --> 01:43:23.110 align:start position:0%
so, now we have a web preview. So, we
can<01:43:21.320><c> click</c><01:43:21.560><c> on</c><01:43:21.760><c> open,</c><01:43:22.600><c> and</c><01:43:22.720><c> that's</c><01:43:22.920><c> going</c><01:43:23.040><c> to</c>

01:43:23.110 --> 01:43:23.120 align:start position:0%
can click on open, and that's going to
 

01:43:23.120 --> 01:43:25.750 align:start position:0%
can click on open, and that's going to
go<01:43:23.240><c> ahead</c><01:43:23.520><c> and</c><01:43:23.640><c> open</c><01:43:23.920><c> it</c><01:43:24.120><c> right</c><01:43:24.400><c> here</c><01:43:24.800><c> in</c><01:43:25.000><c> our</c>

01:43:25.750 --> 01:43:25.760 align:start position:0%
go ahead and open it right here in our
 

01:43:25.760 --> 01:43:28.350 align:start position:0%
go ahead and open it right here in our
built-in<01:43:26.360><c> browser</c><01:43:26.920><c> here.</c><01:43:27.440><c> This</c><01:43:27.720><c> is</c><01:43:27.840><c> our</c><01:43:28.120><c> app</c>

01:43:28.350 --> 01:43:28.360 align:start position:0%
built-in browser here. This is our app
 

01:43:28.360 --> 01:43:30.430 align:start position:0%
built-in browser here. This is our app
right<01:43:28.600><c> here.</c><01:43:28.920><c> And</c><01:43:29.120><c> so,</c><01:43:29.480><c> we</c><01:43:29.640><c> have</c><01:43:29.880><c> snack</c><01:43:30.320><c> and</c>

01:43:30.430 --> 01:43:30.440 align:start position:0%
right here. And so, we have snack and
 

01:43:30.440 --> 01:43:33.110 align:start position:0%
right here. And so, we have snack and
lunch<01:43:30.800><c> options.</c><01:43:31.360><c> We</c><01:43:31.480><c> can</c><01:43:32.240><c> create,</c><01:43:32.840><c> we</c><01:43:32.960><c> can</c>

01:43:33.110 --> 01:43:33.120 align:start position:0%
lunch options. We can create, we can
 

01:43:33.120 --> 01:43:35.470 align:start position:0%
lunch options. We can create, we can
submit<01:43:33.560><c> an</c><01:43:33.760><c> option,</c><01:43:34.240><c> add</c><01:43:34.520><c> sample</c><01:43:34.920><c> snacks,</c>

01:43:35.470 --> 01:43:35.480 align:start position:0%
submit an option, add sample snacks,
 

01:43:35.480 --> 01:43:37.950 align:start position:0%
submit an option, add sample snacks,
click<01:43:35.800><c> here,</c><01:43:36.320><c> and</c><01:43:36.720><c> we</c><01:43:36.840><c> have</c><01:43:37.080><c> these</c><01:43:37.400><c> snack</c>

01:43:37.950 --> 01:43:37.960 align:start position:0%
click here, and we have these snack
 

01:43:37.960 --> 01:43:41.790 align:start position:0%
click here, and we have these snack
options<01:43:38.520><c> here</c><01:43:39.400><c> with</c><01:43:39.680><c> some</c><01:43:40.520><c> votes</c><01:43:41.000><c> here.</c>

01:43:41.790 --> 01:43:41.800 align:start position:0%
options here with some votes here.
 

01:43:41.800 --> 01:43:44.630 align:start position:0%
options here with some votes here.
Leaderboard,<01:43:42.760><c> right?</c><01:43:43.320><c> So,</c><01:43:43.520><c> this</c><01:43:43.840><c> is</c><01:43:44.040><c> winning.</c>

01:43:44.630 --> 01:43:44.640 align:start position:0%
Leaderboard, right? So, this is winning.
 

01:43:44.640 --> 01:43:46.950 align:start position:0%
Leaderboard, right? So, this is winning.
Winner<01:43:45.080><c> state,</c><01:43:45.560><c> current</c><01:43:46.000><c> winner</c><01:43:46.440><c> leader,</c>

01:43:46.950 --> 01:43:46.960 align:start position:0%
Winner state, current winner leader,
 

01:43:46.960 --> 01:43:50.150 align:start position:0%
Winner state, current winner leader,
spicy<01:43:47.600><c> ramen</c><01:43:48.080><c> bowls.</c><01:43:49.040><c> And</c><01:43:49.240><c> so,</c><01:43:49.400><c> if</c><01:43:49.560><c> I</c><01:43:49.640><c> vote</c><01:43:50.000><c> on</c>

01:43:50.150 --> 01:43:50.160 align:start position:0%
spicy ramen bowls. And so, if I vote on
 

01:43:50.160 --> 01:43:53.510 align:start position:0%
spicy ramen bowls. And so, if I vote on
falafel<01:43:50.880><c> wraps,</c><01:43:51.600><c> uh</c><01:43:51.680><c> wraps,</c><01:43:52.320><c> six.</c><01:43:53.080><c> Right?</c><01:43:53.440><c> So,</c>

01:43:53.510 --> 01:43:53.520 align:start position:0%
falafel wraps, uh wraps, six. Right? So,
 

01:43:53.520 --> 01:43:56.150 align:start position:0%
falafel wraps, uh wraps, six. Right? So,
now<01:43:53.760><c> it's</c><01:43:54.040><c> six.</c><01:43:54.440><c> I</c><01:43:54.560><c> can</c><01:43:54.760><c> keep</c><01:43:54.960><c> voting.</c><01:43:56.000><c> And</c>

01:43:56.150 --> 01:43:56.160 align:start position:0%
now it's six. I can keep voting. And
 

01:43:56.160 --> 01:43:59.150 align:start position:0%
now it's six. I can keep voting. And
that's<01:43:56.360><c> a</c><01:43:56.440><c> problem</c><01:43:57.400><c> right</c><01:43:57.640><c> away,</c><01:43:58.600><c> and</c><01:43:58.800><c> it's</c><01:43:59.000><c> in</c>

01:43:59.150 --> 01:43:59.160 align:start position:0%
that's a problem right away, and it's in
 

01:43:59.160 --> 01:44:02.470 align:start position:0%
that's a problem right away, and it's in
memory.<01:44:00.200><c> And</c><01:44:00.680><c> one</c><01:44:00.920><c> person</c><01:44:01.400><c> can</c><01:44:01.640><c> vote</c><01:44:01.960><c> multiple</c>

01:44:02.470 --> 01:44:02.480 align:start position:0%
memory. And one person can vote multiple
 

01:44:02.480 --> 01:44:04.030 align:start position:0%
memory. And one person can vote multiple
times,<01:44:02.880><c> which</c><01:44:03.080><c> is</c><01:44:03.200><c> an</c><01:44:03.360><c> issue.</c><01:44:03.680><c> We're</c><01:44:03.800><c> going</c><01:44:03.920><c> to</c>

01:44:04.030 --> 01:44:04.040 align:start position:0%
times, which is an issue. We're going to
 

01:44:04.040 --> 01:44:06.190 align:start position:0%
times, which is an issue. We're going to
fix<01:44:04.280><c> that</c><01:44:04.480><c> a</c><01:44:04.520><c> little</c><01:44:04.680><c> bit</c><01:44:04.880><c> later,</c><01:44:05.440><c> but</c><01:44:05.920><c> I</c><01:44:06.000><c> can</c>

01:44:06.190 --> 01:44:06.200 align:start position:0%
fix that a little bit later, but I can
 

01:44:06.200 --> 01:44:09.430 align:start position:0%
fix that a little bit later, but I can
also<01:44:06.560><c> add</c><01:44:07.120><c> a</c><01:44:07.240><c> snack.</c><01:44:07.720><c> Let's</c><01:44:08.040><c> say</c><01:44:08.320><c> sushi.</c><01:44:09.320><c> I</c>

01:44:09.430 --> 01:44:09.440 align:start position:0%
also add a snack. Let's say sushi. I
 

01:44:09.440 --> 01:44:11.990 align:start position:0%
also add a snack. Let's say sushi. I
don't<01:44:09.600><c> know,</c><01:44:09.720><c> sushi.</c><01:44:10.640><c> Add</c><01:44:11.080><c> this,</c><01:44:11.520><c> and</c><01:44:11.680><c> we</c><01:44:11.800><c> have</c>

01:44:11.990 --> 01:44:12.000 align:start position:0%
don't know, sushi. Add this, and we have
 

01:44:12.000 --> 01:44:14.190 align:start position:0%
don't know, sushi. Add this, and we have
sushi,<01:44:12.480><c> and</c><01:44:12.600><c> I</c><01:44:12.680><c> can</c><01:44:12.840><c> also</c><01:44:13.160><c> vote</c><01:44:13.480><c> on</c><01:44:13.600><c> that.</c><01:44:14.080><c> So,</c>

01:44:14.190 --> 01:44:14.200 align:start position:0%
sushi, and I can also vote on that. So,
 

01:44:14.200 --> 01:44:16.790 align:start position:0%
sushi, and I can also vote on that. So,
it's<01:44:14.360><c> a</c><01:44:14.400><c> big</c><01:44:14.840><c> big</c><01:44:15.080><c> issue,</c><01:44:15.400><c> but</c><01:44:16.160><c> for</c><01:44:16.280><c> the</c><01:44:16.400><c> most</c>

01:44:16.790 --> 01:44:16.800 align:start position:0%
it's a big big issue, but for the most
 

01:44:16.800 --> 01:44:19.630 align:start position:0%
it's a big big issue, but for the most
part,<01:44:17.120><c> the</c><01:44:17.240><c> logic</c><01:44:17.840><c> works,</c><01:44:18.360><c> the</c><01:44:18.480><c> UI</c><01:44:18.960><c> works.</c>

01:44:19.630 --> 01:44:19.640 align:start position:0%
part, the logic works, the UI works.
 

01:44:19.640 --> 01:44:21.870 align:start position:0%
part, the logic works, the UI works.
Now,<01:44:19.920><c> once</c><01:44:20.200><c> the</c><01:44:20.320><c> snack</c><01:44:20.680><c> vote</c><01:44:20.920><c> UI</c><01:44:21.240><c> exists,</c>

01:44:21.870 --> 01:44:21.880 align:start position:0%
Now, once the snack vote UI exists,
 

01:44:21.880 --> 01:44:24.070 align:start position:0%
Now, once the snack vote UI exists,
we're<01:44:22.080><c> going</c><01:44:22.320><c> to</c><01:44:22.480><c> replace</c><01:44:23.200><c> the</c><01:44:23.320><c> mock</c><01:44:23.680><c> snack</c>

01:44:24.070 --> 01:44:24.080 align:start position:0%
we're going to replace the mock snack
 

01:44:24.080 --> 01:44:26.430 align:start position:0%
we're going to replace the mock snack
data<01:44:24.440><c> with</c><01:44:24.720><c> real</c><01:44:25.120><c> Convex</c><01:44:25.760><c> data.</c><01:44:26.160><c> And</c><01:44:26.320><c> for</c>

01:44:26.430 --> 01:44:26.440 align:start position:0%
data with real Convex data. And for
 

01:44:26.440 --> 01:44:28.070 align:start position:0%
data with real Convex data. And for
those<01:44:26.680><c> of</c><01:44:26.800><c> you</c><01:44:26.880><c> that</c><01:44:27.120><c> that</c><01:44:27.240><c> are</c><01:44:27.320><c> not</c><01:44:27.520><c> familiar,</c>

01:44:28.070 --> 01:44:28.080 align:start position:0%
those of you that that are not familiar,
 

01:44:28.080 --> 01:44:31.310 align:start position:0%
those of you that that are not familiar,
Convex<01:44:29.280><c> is</c><01:44:29.720><c> a</c><01:44:29.880><c> back</c><01:44:30.440><c> end</c><01:44:30.720><c> that</c><01:44:30.960><c> we're</c><01:44:31.120><c> going</c><01:44:31.240><c> to</c>

01:44:31.310 --> 01:44:31.320 align:start position:0%
Convex is a back end that we're going to
 

01:44:31.320 --> 01:44:33.990 align:start position:0%
Convex is a back end that we're going to
be<01:44:31.480><c> using</c><01:44:32.040><c> in</c><01:44:32.240><c> this</c><01:44:32.560><c> tutorial.</c><01:44:33.560><c> It's</c><01:44:33.800><c> an</c>

01:44:33.990 --> 01:44:34.000 align:start position:0%
be using in this tutorial. It's an
 

01:44:34.000 --> 01:44:36.430 align:start position:0%
be using in this tutorial. It's an
awesome<01:44:34.480><c> back</c><01:44:34.800><c> end,</c><01:44:35.000><c> super</c><01:44:35.400><c> fast.</c><01:44:36.120><c> And</c><01:44:36.240><c> if</c><01:44:36.320><c> you</c>

01:44:36.430 --> 01:44:36.440 align:start position:0%
awesome back end, super fast. And if you
 

01:44:36.440 --> 01:44:37.870 align:start position:0%
awesome back end, super fast. And if you
want<01:44:36.600><c> to</c><01:44:36.680><c> learn</c><01:44:36.960><c> more</c><01:44:37.160><c> information,</c><01:44:37.840><c> I</c>

01:44:37.870 --> 01:44:37.880 align:start position:0%
want to learn more information, I
 

01:44:37.880 --> 01:44:40.030 align:start position:0%
want to learn more information, I
actually<01:44:38.280><c> did</c><01:44:38.520><c> a</c><01:44:38.600><c> dedicated</c><01:44:39.400><c> video</c><01:44:39.760><c> on</c><01:44:39.920><c> it</c>

01:44:40.030 --> 01:44:40.040 align:start position:0%
actually did a dedicated video on it
 

01:44:40.040 --> 01:44:42.670 align:start position:0%
actually did a dedicated video on it
that<01:44:40.360><c> you</c><01:44:40.480><c> can</c><01:44:40.680><c> find</c><01:44:41.200><c> right</c><01:44:41.640><c> there.</c>

01:44:42.670 --> 01:44:42.680 align:start position:0%
that you can find right there.
 

01:44:42.680 --> 01:44:46.230 align:start position:0%
that you can find right there.
And<01:44:42.840><c> so,</c><01:44:43.160><c> once</c><01:44:43.600><c> we</c><01:44:43.800><c> add</c><01:44:44.160><c> Convex,</c><01:44:45.000><c> our</c><01:44:45.400><c> app</c><01:44:46.040><c> will</c>

01:44:46.230 --> 01:44:46.240 align:start position:0%
And so, once we add Convex, our app will
 

01:44:46.240 --> 01:44:49.510 align:start position:0%
And so, once we add Convex, our app will
stop<01:44:46.800><c> being</c><01:44:47.120><c> a</c><01:44:47.200><c> static</c><01:44:47.640><c> interface</c><01:44:48.720><c> and</c><01:44:49.000><c> start</c>

01:44:49.510 --> 01:44:49.520 align:start position:0%
stop being a static interface and start
 

01:44:49.520 --> 01:44:51.870 align:start position:0%
stop being a static interface and start
behaving<01:44:50.000><c> like</c><01:44:50.240><c> a</c><01:44:50.320><c> real</c><01:44:50.840><c> database</c><01:44:51.440><c> back</c>

01:44:51.870 --> 01:44:51.880 align:start position:0%
behaving like a real database back
 

01:44:51.880 --> 01:44:53.990 align:start position:0%
behaving like a real database back
product.<01:44:52.560><c> And</c><01:44:52.800><c> the</c><01:44:52.920><c> path</c><01:44:53.240><c> is</c><01:44:53.440><c> very</c><01:44:53.680><c> very</c>

01:44:53.990 --> 01:44:54.000 align:start position:0%
product. And the path is very very
 

01:44:54.000 --> 01:44:56.390 align:start position:0%
product. And the path is very very
simple.<01:44:54.560><c> Code</c><01:44:54.880><c> X</c><01:44:55.160><c> creates</c><01:44:55.560><c> the</c><01:44:55.680><c> Convex</c>

01:44:56.390 --> 01:44:56.400 align:start position:0%
simple. Code X creates the Convex
 

01:44:56.400 --> 01:44:59.910 align:start position:0%
simple. Code X creates the Convex
schema,<01:44:57.320><c> adds</c><01:44:57.760><c> a</c><01:44:57.920><c> query,</c><01:44:58.560><c> adds</c><01:44:58.880><c> mutations,</c>

01:44:59.910 --> 01:44:59.920 align:start position:0%
schema, adds a query, adds mutations,
 

01:44:59.920 --> 01:45:02.710 align:start position:0%
schema, adds a query, adds mutations,
connects<01:45:00.480><c> it</c><01:45:00.600><c> to</c><01:45:00.760><c> the</c><01:45:00.880><c> UI,</c><01:45:01.880><c> and</c><01:45:02.080><c> then</c><01:45:02.400><c> we</c>

01:45:02.710 --> 01:45:02.720 align:start position:0%
connects it to the UI, and then we
 

01:45:02.720 --> 01:45:05.670 align:start position:0%
connects it to the UI, and then we
verify<01:45:03.440><c> the</c><01:45:03.560><c> result</c><01:45:04.120><c> in</c><01:45:04.280><c> both</c><01:45:04.520><c> the</c><01:45:04.640><c> browser</c>

01:45:05.670 --> 01:45:05.680 align:start position:0%
verify the result in both the browser
 

01:45:05.680 --> 01:45:08.110 align:start position:0%
verify the result in both the browser
and<01:45:05.840><c> the</c><01:45:05.920><c> Convex</c><01:45:06.760><c> dashboard.</c><01:45:07.600><c> And</c><01:45:07.720><c> so,</c><01:45:07.920><c> when</c>

01:45:08.110 --> 01:45:08.120 align:start position:0%
and the Convex dashboard. And so, when
 

01:45:08.120 --> 01:45:10.590 align:start position:0%
and the Convex dashboard. And so, when
we<01:45:08.280><c> submit</c><01:45:08.800><c> an</c><01:45:08.920><c> option</c><01:45:09.320><c> in</c><01:45:09.440><c> the</c><01:45:09.600><c> app,</c><01:45:10.400><c> it</c>

01:45:10.590 --> 01:45:10.600 align:start position:0%
we submit an option in the app, it
 

01:45:10.600 --> 01:45:12.910 align:start position:0%
we submit an option in the app, it
should<01:45:10.800><c> be</c><01:45:10.920><c> written</c><01:45:11.320><c> back</c><01:45:11.640><c> to</c><01:45:11.800><c> Convex.</c><01:45:12.720><c> When</c>

01:45:12.910 --> 01:45:12.920 align:start position:0%
should be written back to Convex. When
 

01:45:12.920 --> 01:45:15.590 align:start position:0%
should be written back to Convex. When
we<01:45:13.040><c> look</c><01:45:13.360><c> inside</c><01:45:13.920><c> the</c><01:45:14.000><c> Convex</c><01:45:14.520><c> dashboard,</c>

01:45:15.590 --> 01:45:15.600 align:start position:0%
we look inside the Convex dashboard,
 

01:45:15.600 --> 01:45:18.070 align:start position:0%
we look inside the Convex dashboard,
that<01:45:15.960><c> snack</c><01:45:16.440><c> option</c><01:45:16.960><c> should</c><01:45:17.200><c> be</c><01:45:17.320><c> there.</c><01:45:17.880><c> And</c>

01:45:18.070 --> 01:45:18.080 align:start position:0%
that snack option should be there. And
 

01:45:18.080 --> 01:45:21.310 align:start position:0%
that snack option should be there. And
when<01:45:18.320><c> someone</c><01:45:18.880><c> votes,</c><01:45:19.880><c> the</c><01:45:20.040><c> UI</c><01:45:20.400><c> should</c><01:45:20.760><c> update</c>

01:45:21.310 --> 01:45:21.320 align:start position:0%
when someone votes, the UI should update
 

01:45:21.320 --> 01:45:24.030 align:start position:0%
when someone votes, the UI should update
live<01:45:22.240><c> so</c><01:45:22.400><c> that</c><01:45:22.560><c> we</c><01:45:22.680><c> can</c><01:45:22.880><c> see</c><01:45:23.080><c> the</c><01:45:23.240><c> front</c><01:45:23.640><c> end</c>

01:45:24.030 --> 01:45:24.040 align:start position:0%
live so that we can see the front end
 

01:45:24.040 --> 01:45:26.590 align:start position:0%
live so that we can see the front end
and<01:45:24.240><c> back</c><01:45:24.600><c> end</c><01:45:24.800><c> working</c><01:45:25.160><c> together</c><01:45:26.080><c> instead</c><01:45:26.480><c> of</c>

01:45:26.590 --> 01:45:26.600 align:start position:0%
and back end working together instead of
 

01:45:26.600 --> 01:45:30.110 align:start position:0%
and back end working together instead of
treating<01:45:27.120><c> the</c><01:45:27.320><c> back</c><01:45:27.720><c> end</c><01:45:28.040><c> like</c><01:45:28.520><c> a</c><01:45:28.640><c> black</c><01:45:29.400><c> box.</c>

01:45:30.110 --> 01:45:30.120 align:start position:0%
treating the back end like a black box.
 

01:45:30.120 --> 01:45:32.310 align:start position:0%
treating the back end like a black box.
And<01:45:30.320><c> when</c><01:45:30.440><c> you</c><01:45:30.560><c> head</c><01:45:30.760><c> over</c><01:45:31.000><c> to</c><01:45:31.160><c> convex.dev,</c>

01:45:32.310 --> 01:45:32.320 align:start position:0%
And when you head over to convex.dev,
 

01:45:32.320 --> 01:45:34.470 align:start position:0%
And when you head over to convex.dev,
you<01:45:32.440><c> can</c><01:45:32.600><c> learn</c><01:45:32.920><c> more</c><01:45:33.320><c> about</c><01:45:33.680><c> this</c><01:45:33.920><c> back</c><01:45:34.320><c> end.</c>

01:45:34.470 --> 01:45:34.480 align:start position:0%
you can learn more about this back end.
 

01:45:34.480 --> 01:45:36.470 align:start position:0%
you can learn more about this back end.
And<01:45:34.560><c> this</c><01:45:34.720><c> is</c><01:45:34.920><c> a</c><01:45:35.040><c> great,</c><01:45:35.520><c> great</c><01:45:35.920><c> back</c><01:45:36.320><c> end.</c>

01:45:36.470 --> 01:45:36.480 align:start position:0%
And this is a great, great back end.
 

01:45:36.480 --> 01:45:39.230 align:start position:0%
And this is a great, great back end.
It's<01:45:36.720><c> very,</c><01:45:37.040><c> very</c><01:45:37.320><c> fast,</c><01:45:38.240><c> and</c><01:45:38.400><c> it</c><01:45:38.560><c> works</c>

01:45:39.230 --> 01:45:39.240 align:start position:0%
It's very, very fast, and it works
 

01:45:39.240 --> 01:45:41.950 align:start position:0%
It's very, very fast, and it works
really<01:45:39.800><c> great</c><01:45:40.440><c> with</c><01:45:40.760><c> agents,</c><01:45:41.400><c> right?</c><01:45:41.720><c> So,</c><01:45:41.800><c> the</c>

01:45:41.950 --> 01:45:41.960 align:start position:0%
really great with agents, right? So, the
 

01:45:41.960 --> 01:45:43.750 align:start position:0%
really great with agents, right? So, the
back<01:45:42.240><c> end</c><01:45:42.400><c> building</c><01:45:42.840><c> blocks</c><01:45:43.240><c> for</c><01:45:43.440><c> your</c>

01:45:43.750 --> 01:45:43.760 align:start position:0%
back end building blocks for your
 

01:45:43.760 --> 01:45:45.590 align:start position:0%
back end building blocks for your
agents,<01:45:44.240><c> okay?</c><01:45:44.760><c> So,</c><01:45:44.880><c> I'm</c><01:45:44.960><c> going</c><01:45:45.120><c> to</c><01:45:45.200><c> go</c><01:45:45.320><c> ahead</c>

01:45:45.590 --> 01:45:45.600 align:start position:0%
agents, okay? So, I'm going to go ahead
 

01:45:45.600 --> 01:45:47.990 align:start position:0%
agents, okay? So, I'm going to go ahead
and<01:45:45.800><c> log</c><01:45:46.240><c> in</c><01:45:46.440><c> to</c><01:45:46.600><c> my</c><01:45:46.760><c> free</c><01:45:47.040><c> account.</c><01:45:47.520><c> I'm</c><01:45:47.680><c> using</c>

01:45:47.990 --> 01:45:48.000 align:start position:0%
and log in to my free account. I'm using
 

01:45:48.000 --> 01:45:49.750 align:start position:0%
and log in to my free account. I'm using
the<01:45:48.120><c> free</c><01:45:48.440><c> plan.</c><01:45:48.920><c> I'm</c><01:45:49.040><c> not</c><01:45:49.280><c> paying</c><01:45:49.600><c> for</c>

01:45:49.750 --> 01:45:49.760 align:start position:0%
the free plan. I'm not paying for
 

01:45:49.760 --> 01:45:51.230 align:start position:0%
the free plan. I'm not paying for
anything.<01:45:50.440><c> And</c><01:45:50.520><c> this</c><01:45:50.680><c> is</c><01:45:50.840><c> also</c><01:45:51.120><c> an</c>

01:45:51.230 --> 01:45:51.240 align:start position:0%
anything. And this is also an
 

01:45:51.240 --> 01:45:52.950 align:start position:0%
anything. And this is also an
open-source<01:45:51.800><c> back</c><01:45:52.160><c> end,</c><01:45:52.320><c> so</c><01:45:52.440><c> you</c><01:45:52.520><c> can</c><01:45:52.680><c> also</c>

01:45:52.950 --> 01:45:52.960 align:start position:0%
open-source back end, so you can also
 

01:45:52.960 --> 01:45:54.550 align:start position:0%
open-source back end, so you can also
self-host<01:45:53.640><c> it</c><01:45:53.760><c> if</c><01:45:53.880><c> you</c><01:45:54.000><c> want.</c><01:45:54.240><c> So,</c><01:45:54.360><c> I'm</c><01:45:54.440><c> going</c>

01:45:54.550 --> 01:45:54.560 align:start position:0%
self-host it if you want. So, I'm going
 

01:45:54.560 --> 01:45:56.150 align:start position:0%
self-host it if you want. So, I'm going
to<01:45:54.640><c> go</c><01:45:54.760><c> ahead</c><01:45:55.080><c> and</c><01:45:55.080><c> log</c><01:45:55.440><c> in.</c><01:45:55.720><c> All</c><01:45:55.840><c> right,</c><01:45:56.040><c> so</c>

01:45:56.150 --> 01:45:56.160 align:start position:0%
to go ahead and log in. All right, so
 

01:45:56.160 --> 01:45:57.910 align:start position:0%
to go ahead and log in. All right, so
here<01:45:56.520><c> I</c><01:45:56.600><c> am</c><01:45:56.800><c> logged</c><01:45:57.160><c> in.</c><01:45:57.280><c> And</c><01:45:57.400><c> as</c><01:45:57.520><c> you</c><01:45:57.640><c> can</c><01:45:57.760><c> see,</c>

01:45:57.910 --> 01:45:57.920 align:start position:0%
here I am logged in. And as you can see,
 

01:45:57.920 --> 01:46:00.790 align:start position:0%
here I am logged in. And as you can see,
I<01:45:58.000><c> have</c><01:45:58.200><c> here</c><01:45:58.440><c> two</c><01:45:58.680><c> projects.</c><01:45:59.600><c> Now,</c><01:46:00.000><c> our</c><01:46:00.400><c> app</c>

01:46:00.790 --> 01:46:00.800 align:start position:0%
I have here two projects. Now, our app
 

01:46:00.800 --> 01:46:02.990 align:start position:0%
I have here two projects. Now, our app
is<01:46:00.920><c> going</c><01:46:01.040><c> to</c><01:46:01.160><c> automatically</c><01:46:01.880><c> create</c><01:46:02.320><c> a</c><01:46:02.440><c> brand</c>

01:46:02.990 --> 01:46:03.000 align:start position:0%
is going to automatically create a brand
 

01:46:03.000 --> 01:46:05.470 align:start position:0%
is going to automatically create a brand
new<01:46:03.240><c> project</c><01:46:04.160><c> for</c><01:46:04.400><c> its</c><01:46:04.640><c> data,</c><01:46:05.120><c> for</c><01:46:05.280><c> its</c>

01:46:05.470 --> 01:46:05.480 align:start position:0%
new project for its data, for its
 

01:46:05.480 --> 01:46:07.590 align:start position:0%
new project for its data, for its
functions,<01:46:06.040><c> for</c><01:46:06.280><c> everything.</c><01:46:06.920><c> And</c><01:46:07.080><c> here</c><01:46:07.320><c> back</c>

01:46:07.590 --> 01:46:07.600 align:start position:0%
functions, for everything. And here back
 

01:46:07.600 --> 01:46:09.510 align:start position:0%
functions, for everything. And here back
in<01:46:07.720><c> Codex,</c><01:46:08.200><c> we're</c><01:46:08.400><c> going</c><01:46:08.560><c> to</c><01:46:08.640><c> paste</c><01:46:09.120><c> a</c><01:46:09.240><c> new</c>

01:46:09.510 --> 01:46:09.520 align:start position:0%
in Codex, we're going to paste a new
 

01:46:09.520 --> 01:46:12.030 align:start position:0%
in Codex, we're going to paste a new
prompt<01:46:10.280><c> that</c><01:46:10.520><c> looks</c><01:46:10.800><c> something</c><01:46:11.240><c> like</c><01:46:11.600><c> this.</c>

01:46:12.030 --> 01:46:12.040 align:start position:0%
prompt that looks something like this.
 

01:46:12.040 --> 01:46:14.590 align:start position:0%
prompt that looks something like this.
Upgrade<01:46:12.640><c> Snack</c><01:46:13.040><c> Votes</c><01:46:13.560><c> to</c><01:46:13.720><c> Snack</c><01:46:14.160><c> Options,</c>

01:46:14.590 --> 01:46:14.600 align:start position:0%
Upgrade Snack Votes to Snack Options,
 

01:46:14.600 --> 01:46:17.950 align:start position:0%
Upgrade Snack Votes to Snack Options,
and<01:46:14.760><c> Votes</c><01:46:15.640><c> are</c><01:46:15.800><c> stored</c><01:46:16.360><c> in</c><01:46:16.560><c> Convex</c><01:46:17.560><c> instead</c>

01:46:17.950 --> 01:46:17.960 align:start position:0%
and Votes are stored in Convex instead
 

01:46:17.960 --> 01:46:20.510 align:start position:0%
and Votes are stored in Convex instead
of<01:46:18.160><c> local</c><01:46:18.760><c> in-memory</c><01:46:19.520><c> state.</c><01:46:20.160><c> Now,</c><01:46:20.320><c> if</c><01:46:20.440><c> I</c>

01:46:20.510 --> 01:46:20.520 align:start position:0%
of local in-memory state. Now, if I
 

01:46:20.520 --> 01:46:22.630 align:start position:0%
of local in-memory state. Now, if I
press<01:46:20.800><c> command,</c><01:46:21.240><c> comma,</c><01:46:21.640><c> and</c><01:46:21.760><c> go</c><01:46:21.920><c> to</c><01:46:22.120><c> MCP</c>

01:46:22.630 --> 01:46:22.640 align:start position:0%
press command, comma, and go to MCP
 

01:46:22.640 --> 01:46:24.870 align:start position:0%
press command, comma, and go to MCP
Servers,<01:46:23.120><c> you</c><01:46:23.240><c> can</c><01:46:23.360><c> see</c><01:46:23.560><c> that</c><01:46:23.760><c> I</c><01:46:23.880><c> do</c><01:46:24.200><c> not</c><01:46:24.600><c> have</c>

01:46:24.870 --> 01:46:24.880 align:start position:0%
Servers, you can see that I do not have
 

01:46:24.880 --> 01:46:27.270 align:start position:0%
Servers, you can see that I do not have
the<01:46:25.000><c> Convex</c><01:46:25.560><c> MCP</c><01:46:26.000><c> server.</c><01:46:26.880><c> And</c><01:46:27.000><c> that</c><01:46:27.160><c> is</c>

01:46:27.270 --> 01:46:27.280 align:start position:0%
the Convex MCP server. And that is
 

01:46:27.280 --> 01:46:28.870 align:start position:0%
the Convex MCP server. And that is
because<01:46:27.600><c> we're</c><01:46:27.720><c> not</c><01:46:27.960><c> going</c><01:46:28.080><c> to</c><01:46:28.160><c> be</c><01:46:28.280><c> connecting</c>

01:46:28.870 --> 01:46:28.880 align:start position:0%
because we're not going to be connecting
 

01:46:28.880 --> 01:46:31.870 align:start position:0%
because we're not going to be connecting
to<01:46:29.000><c> Convex</c><01:46:30.040><c> via</c><01:46:30.480><c> MCP.</c><01:46:31.160><c> We're</c><01:46:31.320><c> actually</c><01:46:31.720><c> going</c>

01:46:31.870 --> 01:46:31.880 align:start position:0%
to Convex via MCP. We're actually going
 

01:46:31.880 --> 01:46:34.110 align:start position:0%
to Convex via MCP. We're actually going
to<01:46:31.960><c> be</c><01:46:32.080><c> connecting</c><01:46:32.760><c> to</c><01:46:32.960><c> it</c><01:46:33.160><c> using</c><01:46:33.560><c> a</c><01:46:33.680><c> much</c>

01:46:34.110 --> 01:46:34.120 align:start position:0%
to be connecting to it using a much
 

01:46:34.120 --> 01:46:36.230 align:start position:0%
to be connecting to it using a much
simpler<01:46:34.600><c> method,</c><01:46:35.000><c> and</c><01:46:35.080><c> that</c><01:46:35.240><c> is</c><01:46:35.360><c> the</c><01:46:35.480><c> CLI,</c>

01:46:36.230 --> 01:46:36.240 align:start position:0%
simpler method, and that is the CLI,
 

01:46:36.240 --> 01:46:39.310 align:start position:0%
simpler method, and that is the CLI,
which<01:46:36.520><c> stands</c><01:46:36.960><c> for</c><01:46:37.280><c> command</c><01:46:38.040><c> line</c><01:46:38.520><c> interface.</c>

01:46:39.310 --> 01:46:39.320 align:start position:0%
which stands for command line interface.
 

01:46:39.320 --> 01:46:41.990 align:start position:0%
which stands for command line interface.
And<01:46:39.520><c> actually,</c><01:46:39.920><c> before</c><01:46:40.440><c> I</c><01:46:40.520><c> run</c><01:46:40.840><c> this</c><01:46:41.080><c> prompt,</c>

01:46:41.990 --> 01:46:42.000 align:start position:0%
And actually, before I run this prompt,
 

01:46:42.000 --> 01:46:43.950 align:start position:0%
And actually, before I run this prompt,
we're<01:46:42.320><c> going</c><01:46:42.440><c> to</c><01:46:42.600><c> check</c><01:46:43.080><c> to</c><01:46:43.200><c> make</c><01:46:43.480><c> sure</c><01:46:43.800><c> that</c>

01:46:43.950 --> 01:46:43.960 align:start position:0%
we're going to check to make sure that
 

01:46:43.960 --> 01:46:46.670 align:start position:0%
we're going to check to make sure that
we<01:46:44.080><c> have</c><01:46:44.320><c> a</c><01:46:44.400><c> connection.</c><01:46:45.360><c> Can</c><01:46:45.640><c> you</c><01:46:45.840><c> first</c>

01:46:46.670 --> 01:46:46.680 align:start position:0%
we have a connection. Can you first
 

01:46:46.680 --> 01:46:51.190 align:start position:0%
we have a connection. Can you first
check<01:46:47.800><c> that</c><01:46:48.240><c> we</c><01:46:48.480><c> have</c><01:46:49.520><c> the</c><01:46:49.760><c> Convex</c><01:46:50.560><c> CLI</c>

01:46:51.190 --> 01:46:51.200 align:start position:0%
check that we have the Convex CLI
 

01:46:51.200 --> 01:46:54.550 align:start position:0%
check that we have the Convex CLI
installed,<01:46:52.280><c> and</c><01:46:52.600><c> if</c><01:46:52.840><c> not,</c><01:46:53.400><c> do</c><01:46:53.680><c> install</c><01:46:54.280><c> it.</c>

01:46:54.550 --> 01:46:54.560 align:start position:0%
installed, and if not, do install it.
 

01:46:54.560 --> 01:46:56.150 align:start position:0%
installed, and if not, do install it.
I'm<01:46:54.680><c> going</c><01:46:54.800><c> to</c><01:46:54.960><c> go</c><01:46:55.000><c> ahead</c><01:46:55.240><c> and</c><01:46:55.360><c> run</c><01:46:55.560><c> it.</c><01:46:55.680><c> Now,</c><01:46:56.040><c> I</c>

01:46:56.150 --> 01:46:56.160 align:start position:0%
I'm going to go ahead and run it. Now, I
 

01:46:56.160 --> 01:46:59.310 align:start position:0%
I'm going to go ahead and run it. Now, I
already<01:46:56.480><c> have</c><01:46:56.720><c> Convex</c><01:46:57.240><c> CLI</c><01:46:57.640><c> installed,</c><01:46:58.880><c> but</c>

01:46:59.310 --> 01:46:59.320 align:start position:0%
already have Convex CLI installed, but
 

01:46:59.320 --> 01:47:01.630 align:start position:0%
already have Convex CLI installed, but
you<01:46:59.480><c> can</c><01:46:59.640><c> just</c><01:46:59.880><c> tell</c><01:47:00.120><c> Codex</c><01:47:00.760><c> to</c><01:47:00.880><c> install</c><01:47:01.480><c> it.</c>

01:47:01.630 --> 01:47:01.640 align:start position:0%
you can just tell Codex to install it.
 

01:47:01.640 --> 01:47:03.590 align:start position:0%
you can just tell Codex to install it.
It's<01:47:01.840><c> that</c><01:47:02.160><c> easy.</c><01:47:02.600><c> And</c><01:47:02.720><c> so,</c><01:47:02.840><c> it's</c><01:47:03.040><c> telling</c><01:47:03.480><c> me</c>

01:47:03.590 --> 01:47:03.600 align:start position:0%
It's that easy. And so, it's telling me
 

01:47:03.600 --> 01:47:06.550 align:start position:0%
It's that easy. And so, it's telling me
that<01:47:03.920><c> NPX,</c><01:47:04.720><c> which</c><01:47:04.920><c> is</c><01:47:05.120><c> a</c><01:47:05.240><c> package</c><01:47:05.720><c> manager,</c>

01:47:06.550 --> 01:47:06.560 align:start position:0%
that NPX, which is a package manager,
 

01:47:06.560 --> 01:47:09.790 align:start position:0%
that NPX, which is a package manager,
could<01:47:06.840><c> fetch</c><01:47:07.600><c> Convex</c><01:47:08.240><c> temporarily,</c><01:47:09.520><c> but</c><01:47:09.680><c> the</c>

01:47:09.790 --> 01:47:09.800 align:start position:0%
could fetch Convex temporarily, but the
 

01:47:09.800 --> 01:47:11.870 align:start position:0%
could fetch Convex temporarily, but the
project<01:47:10.360><c> does</c><01:47:10.560><c> not</c><01:47:10.840><c> have</c><01:47:11.040><c> it</c><01:47:11.160><c> installed.</c><01:47:11.760><c> I'm</c>

01:47:11.870 --> 01:47:11.880 align:start position:0%
project does not have it installed. I'm
 

01:47:11.880 --> 01:47:14.910 align:start position:0%
project does not have it installed. I'm
installing<01:47:12.480><c> Convex</c><01:47:13.600><c> into</c><01:47:13.920><c> the</c><01:47:14.080><c> project</c><01:47:14.600><c> now</c>

01:47:14.910 --> 01:47:14.920 align:start position:0%
installing Convex into the project now
 

01:47:14.920 --> 01:47:17.590 align:start position:0%
installing Convex into the project now
as<01:47:15.160><c> a</c><01:47:15.240><c> dev</c><01:47:15.640><c> dependency,</c><01:47:16.440><c> okay?</c><01:47:16.880><c> Convex</c><01:47:17.480><c> is</c>

01:47:17.590 --> 01:47:17.600 align:start position:0%
as a dev dependency, okay? Convex is
 

01:47:17.600 --> 01:47:19.750 align:start position:0%
as a dev dependency, okay? Convex is
installed<01:47:18.040><c> locally</c><01:47:18.520><c> now,</c><01:47:18.800><c> okay?</c><01:47:19.200><c> I'll</c><01:47:19.360><c> verify</c>

01:47:19.750 --> 01:47:19.760 align:start position:0%
installed locally now, okay? I'll verify
 

01:47:19.760 --> 01:47:22.430 align:start position:0%
installed locally now, okay? I'll verify
the<01:47:19.880><c> CLI</c><01:47:20.360><c> results.</c><01:47:21.200><c> And</c><01:47:21.360><c> so,</c><01:47:21.720><c> you</c><01:47:21.960><c> don't</c><01:47:22.200><c> need</c>

01:47:22.430 --> 01:47:22.440 align:start position:0%
the CLI results. And so, you don't need
 

01:47:22.440 --> 01:47:25.470 align:start position:0%
the CLI results. And so, you don't need
to<01:47:22.640><c> read</c><01:47:23.520><c> lots</c><01:47:24.000><c> and</c><01:47:24.120><c> lots</c><01:47:24.360><c> of</c><01:47:24.480><c> documentation,</c>

01:47:25.470 --> 01:47:25.480 align:start position:0%
to read lots and lots of documentation,
 

01:47:25.480 --> 01:47:26.990 align:start position:0%
to read lots and lots of documentation,
figure<01:47:25.840><c> out</c><01:47:26.000><c> how</c><01:47:26.080><c> to</c><01:47:26.240><c> connect</c><01:47:26.680><c> to</c><01:47:26.760><c> it.</c><01:47:26.880><c> You</c>

01:47:26.990 --> 01:47:27.000 align:start position:0%
figure out how to connect to it. You
 

01:47:27.000 --> 01:47:28.990 align:start position:0%
figure out how to connect to it. You
just<01:47:27.240><c> tell</c><01:47:27.520><c> Codex</c><01:47:28.000><c> that</c><01:47:28.200><c> you</c><01:47:28.280><c> want</c><01:47:28.480><c> to</c><01:47:28.560><c> connect</c>

01:47:28.990 --> 01:47:29.000 align:start position:0%
just tell Codex that you want to connect
 

01:47:29.000 --> 01:47:31.590 align:start position:0%
just tell Codex that you want to connect
to<01:47:29.120><c> it.</c><01:47:29.560><c> It's</c><01:47:29.800><c> that</c><01:47:30.080><c> easy.</c><01:47:30.320><c> So,</c><01:47:30.520><c> Convex</c><01:47:31.040><c> CLI</c><01:47:31.480><c> is</c>

01:47:31.590 --> 01:47:31.600 align:start position:0%
to it. It's that easy. So, Convex CLI is
 

01:47:31.600 --> 01:47:34.070 align:start position:0%
to it. It's that easy. So, Convex CLI is
installed<01:47:32.120><c> locally</c><01:47:33.000><c> in</c><01:47:33.160><c> the</c><01:47:33.320><c> project</c><01:47:33.880><c> now.</c>

01:47:34.070 --> 01:47:34.080 align:start position:0%
installed locally in the project now.
 

01:47:34.080 --> 01:47:36.590 align:start position:0%
installed locally in the project now.
Okay,<01:47:34.400><c> so</c><01:47:34.600><c> now</c><01:47:34.960><c> we</c><01:47:35.080><c> can</c><01:47:35.240><c> paste</c><01:47:35.560><c> the</c><01:47:35.680><c> prompt.</c>

01:47:36.590 --> 01:47:36.600 align:start position:0%
Okay, so now we can paste the prompt.
 

01:47:36.600 --> 01:47:38.910 align:start position:0%
Okay, so now we can paste the prompt.
Upgrade<01:47:37.200><c> snack</c><01:47:37.560><c> votes</c><01:47:37.960><c> so</c><01:47:38.080><c> snack</c><01:47:38.440><c> options</c><01:47:38.800><c> and</c>

01:47:38.910 --> 01:47:38.920 align:start position:0%
Upgrade snack votes so snack options and
 

01:47:38.920 --> 01:47:41.230 align:start position:0%
Upgrade snack votes so snack options and
votes<01:47:39.240><c> are</c><01:47:39.360><c> stored</c><01:47:39.840><c> in</c><01:47:39.920><c> Convex</c><01:47:40.640><c> instead</c><01:47:41.080><c> of</c>

01:47:41.230 --> 01:47:41.240 align:start position:0%
votes are stored in Convex instead of
 

01:47:41.240 --> 01:47:43.470 align:start position:0%
votes are stored in Convex instead of
local<01:47:41.840><c> in-memory</c><01:47:42.480><c> state.</c><01:47:43.040><c> So,</c><01:47:43.160><c> I'm</c><01:47:43.240><c> going</c><01:47:43.360><c> to</c>

01:47:43.470 --> 01:47:43.480 align:start position:0%
local in-memory state. So, I'm going to
 

01:47:43.480 --> 01:47:45.710 align:start position:0%
local in-memory state. So, I'm going to
go<01:47:43.560><c> ahead</c><01:47:43.800><c> and</c><01:47:43.920><c> do</c><01:47:44.120><c> this</c><01:47:44.640><c> and</c><01:47:45.160><c> let's</c><01:47:45.360><c> go</c><01:47:45.480><c> into</c>

01:47:45.710 --> 01:47:45.720 align:start position:0%
go ahead and do this and let's go into
 

01:47:45.720 --> 01:47:47.830 align:start position:0%
go ahead and do this and let's go into
plan<01:47:46.040><c> mode.</c><01:47:46.600><c> See</c><01:47:46.800><c> if</c><01:47:46.920><c> it</c><01:47:47.040><c> wants</c><01:47:47.280><c> to</c><01:47:47.400><c> ask</c><01:47:47.720><c> me</c>

01:47:47.830 --> 01:47:47.840 align:start position:0%
plan mode. See if it wants to ask me
 

01:47:47.840 --> 01:47:50.190 align:start position:0%
plan mode. See if it wants to ask me
something<01:47:48.320><c> or</c><01:47:48.680><c> clarify</c><01:47:49.320><c> something.</c><01:47:49.960><c> And</c><01:47:50.040><c> so,</c>

01:47:50.190 --> 01:47:50.200 align:start position:0%
something or clarify something. And so,
 

01:47:50.200 --> 01:47:52.230 align:start position:0%
something or clarify something. And so,
it's<01:47:50.400><c> telling</c><01:47:50.760><c> me</c><01:47:50.960><c> one</c><01:47:51.240><c> material</c><01:47:51.800><c> set</c><01:47:52.080><c> of</c>

01:47:52.230 --> 01:47:52.240 align:start position:0%
it's telling me one material set of
 

01:47:52.240 --> 01:47:54.110 align:start position:0%
it's telling me one material set of
choices<01:47:52.680><c> to</c><01:47:52.840><c> open.</c><01:47:53.160><c> There's</c><01:47:53.320><c> no</c><01:47:53.520><c> existing</c>

01:47:54.110 --> 01:47:54.120 align:start position:0%
choices to open. There's no existing
 

01:47:54.120 --> 01:47:56.910 align:start position:0%
choices to open. There's no existing
Convex<01:47:54.680><c> folder.</c><01:47:55.760><c> So,</c><01:47:55.960><c> this</c><01:47:56.240><c> app</c><01:47:56.480><c> is</c><01:47:56.640><c> not</c>

01:47:56.910 --> 01:47:56.920 align:start position:0%
Convex folder. So, this app is not
 

01:47:56.920 --> 01:47:59.030 align:start position:0%
Convex folder. So, this app is not
linked<01:47:57.240><c> to</c><01:47:57.360><c> a</c><01:47:57.480><c> Convex</c><01:47:58.040><c> deployment</c><01:47:58.680><c> yet.</c><01:47:58.920><c> And</c>

01:47:59.030 --> 01:47:59.040 align:start position:0%
linked to a Convex deployment yet. And
 

01:47:59.040 --> 01:48:00.590 align:start position:0%
linked to a Convex deployment yet. And
that<01:47:59.160><c> is</c><01:47:59.320><c> correct.</c><01:47:59.840><c> And</c><01:47:59.960><c> that's</c><01:48:00.160><c> what</c><01:48:00.280><c> we</c><01:48:00.400><c> want</c>

01:48:00.590 --> 01:48:00.600 align:start position:0%
that is correct. And that's what we want
 

01:48:00.600 --> 01:48:03.230 align:start position:0%
that is correct. And that's what we want
to<01:48:00.640><c> do</c><01:48:00.800><c> next.</c><01:48:01.280><c> And</c><01:48:01.880><c> now</c><01:48:02.080><c> it's</c><01:48:02.280><c> asking</c><01:48:02.680><c> me</c><01:48:02.840><c> which</c>

01:48:03.230 --> 01:48:03.240 align:start position:0%
to do next. And now it's asking me which
 

01:48:03.240 --> 01:48:06.310 align:start position:0%
to do next. And now it's asking me which
Convex<01:48:03.840><c> backend</c><01:48:04.440><c> should</c><01:48:04.680><c> snack</c><01:48:04.960><c> vote</c><01:48:05.240><c> use</c><01:48:06.160><c> for</c>

01:48:06.310 --> 01:48:06.320 align:start position:0%
Convex backend should snack vote use for
 

01:48:06.320 --> 01:48:08.510 align:start position:0%
Convex backend should snack vote use for
this<01:48:06.680><c> first</c><01:48:07.080><c> backed</c><01:48:07.440><c> version.</c><01:48:08.120><c> We</c><01:48:08.280><c> want</c><01:48:08.440><c> to</c>

01:48:08.510 --> 01:48:08.520 align:start position:0%
this first backed version. We want to
 

01:48:08.520 --> 01:48:10.510 align:start position:0%
this first backed version. We want to
create<01:48:08.920><c> a</c><01:48:09.040><c> new</c><01:48:09.360><c> one,</c><01:48:09.800><c> right?</c><01:48:10.160><c> So,</c><01:48:10.280><c> we're</c><01:48:10.400><c> going</c>

01:48:10.510 --> 01:48:10.520 align:start position:0%
create a new one, right? So, we're going
 

01:48:10.520 --> 01:48:12.630 align:start position:0%
create a new one, right? So, we're going
to<01:48:10.880><c> go</c><01:48:11.080><c> with</c><01:48:11.240><c> the</c><01:48:11.360><c> recommended</c><01:48:11.960><c> option.</c><01:48:12.560><c> All</c>

01:48:12.630 --> 01:48:12.640 align:start position:0%
to go with the recommended option. All
 

01:48:12.640 --> 01:48:14.750 align:start position:0%
to go with the recommended option. All
right,<01:48:12.960><c> and</c><01:48:13.080><c> now</c><01:48:13.280><c> we</c><01:48:13.440><c> have</c><01:48:13.680><c> a</c><01:48:13.760><c> new</c><01:48:14.040><c> plan</c><01:48:14.560><c> to</c>

01:48:14.750 --> 01:48:14.760 align:start position:0%
right, and now we have a new plan to
 

01:48:14.760 --> 01:48:17.390 align:start position:0%
right, and now we have a new plan to
upgrade<01:48:15.280><c> the</c><01:48:15.400><c> existing</c><01:48:16.080><c> app</c><01:48:16.480><c> from</c><01:48:16.760><c> in-memory</c>

01:48:17.390 --> 01:48:17.400 align:start position:0%
upgrade the existing app from in-memory
 

01:48:17.400 --> 01:48:21.110 align:start position:0%
upgrade the existing app from in-memory
snack<01:48:17.800><c> options</c><01:48:18.680><c> to</c><01:48:18.840><c> live</c><01:48:19.360><c> Convex</c><01:48:20.080><c> data.</c><01:48:20.680><c> Okay?</c>

01:48:21.110 --> 01:48:21.120 align:start position:0%
snack options to live Convex data. Okay?
 

01:48:21.120 --> 01:48:23.270 align:start position:0%
snack options to live Convex data. Okay?
So,<01:48:21.240><c> it's</c><01:48:21.360><c> going</c><01:48:21.480><c> to</c><01:48:21.600><c> do</c><01:48:21.720><c> everything</c><01:48:22.440><c> and</c><01:48:23.080><c> it's</c>

01:48:23.270 --> 01:48:23.280 align:start position:0%
So, it's going to do everything and it's
 

01:48:23.280 --> 01:48:25.190 align:start position:0%
So, it's going to do everything and it's
going<01:48:23.560><c> to</c><01:48:23.720><c> essentially</c><01:48:24.400><c> configure</c><01:48:25.040><c> the</c>

01:48:25.190 --> 01:48:25.200 align:start position:0%
going to essentially configure the
 

01:48:25.200 --> 01:48:28.110 align:start position:0%
going to essentially configure the
backend<01:48:25.760><c> to</c><01:48:25.840><c> be</c><01:48:25.960><c> Convex,</c><01:48:26.600><c> set</c><01:48:26.800><c> up</c><01:48:26.920><c> the</c><01:48:27.040><c> schema,</c>

01:48:28.110 --> 01:48:28.120 align:start position:0%
backend to be Convex, set up the schema,
 

01:48:28.120 --> 01:48:29.990 align:start position:0%
backend to be Convex, set up the schema,
set<01:48:28.440><c> up</c><01:48:28.560><c> the</c><01:48:28.680><c> data,</c><01:48:29.040><c> everything.</c><01:48:29.520><c> And</c><01:48:29.680><c> once</c>

01:48:29.990 --> 01:48:30.000 align:start position:0%
set up the data, everything. And once
 

01:48:30.000 --> 01:48:32.230 align:start position:0%
set up the data, everything. And once
it's<01:48:30.240><c> done,</c><01:48:31.120><c> we</c><01:48:31.280><c> should</c><01:48:31.480><c> be</c><01:48:31.640><c> able</c><01:48:31.880><c> to</c><01:48:32.000><c> go</c><01:48:32.120><c> to</c>

01:48:32.230 --> 01:48:32.240 align:start position:0%
it's done, we should be able to go to
 

01:48:32.240 --> 01:48:34.990 align:start position:0%
it's done, we should be able to go to
Convex<01:48:32.840><c> and</c><01:48:33.080><c> see</c><01:48:33.400><c> a</c><01:48:33.520><c> brand</c><01:48:34.040><c> new</c><01:48:34.240><c> project</c><01:48:34.800><c> here</c>

01:48:34.990 --> 01:48:35.000 align:start position:0%
Convex and see a brand new project here
 

01:48:35.000 --> 01:48:37.030 align:start position:0%
Convex and see a brand new project here
automatically<01:48:35.640><c> created.</c><01:48:36.600><c> So,</c><01:48:36.720><c> I'm</c><01:48:36.800><c> going</c><01:48:36.960><c> to</c>

01:48:37.030 --> 01:48:37.040 align:start position:0%
automatically created. So, I'm going to
 

01:48:37.040 --> 01:48:38.910 align:start position:0%
automatically created. So, I'm going to
hit<01:48:37.240><c> submit</c><01:48:37.720><c> here.</c><01:48:38.120><c> All</c><01:48:38.200><c> right,</c><01:48:38.400><c> so</c><01:48:38.520><c> it</c><01:48:38.640><c> says</c>

01:48:38.910 --> 01:48:38.920 align:start position:0%
hit submit here. All right, so it says
 

01:48:38.920 --> 01:48:42.510 align:start position:0%
hit submit here. All right, so it says
it<01:48:39.120><c> has</c><01:48:39.480><c> created</c><01:48:40.040><c> a</c><01:48:40.160><c> fresh</c><01:48:40.960><c> cloud</c><01:48:41.520><c> project</c><01:48:42.320><c> and</c>

01:48:42.510 --> 01:48:42.520 align:start position:0%
it has created a fresh cloud project and
 

01:48:42.520 --> 01:48:44.150 align:start position:0%
it has created a fresh cloud project and
synced<01:48:43.040><c> the</c><01:48:43.160><c> backend</c><01:48:43.720><c> function</c>

01:48:44.150 --> 01:48:44.160 align:start position:0%
synced the backend function
 

01:48:44.160 --> 01:48:47.190 align:start position:0%
synced the backend function
successfully.<01:48:45.200><c> And</c><01:48:45.760><c> now</c><01:48:46.480><c> you</c><01:48:46.640><c> see</c><01:48:46.880><c> this</c>

01:48:47.190 --> 01:48:47.200 align:start position:0%
successfully. And now you see this
 

01:48:47.200 --> 01:48:50.510 align:start position:0%
successfully. And now you see this
cursor,<01:48:47.840><c> it's</c><01:48:48.120><c> testing</c><01:48:48.720><c> out</c><01:48:48.920><c> the</c><01:48:49.040><c> UI.</c><01:48:50.120><c> And</c><01:48:50.320><c> so,</c>

01:48:50.510 --> 01:48:50.520 align:start position:0%
cursor, it's testing out the UI. And so,
 

01:48:50.520 --> 01:48:52.670 align:start position:0%
cursor, it's testing out the UI. And so,
right<01:48:50.760><c> now</c><01:48:51.080><c> it's</c><01:48:51.320><c> not</c><01:48:51.560><c> running,</c><01:48:51.960><c> so</c><01:48:52.080><c> it</c><01:48:52.200><c> should</c>

01:48:52.670 --> 01:48:52.680 align:start position:0%
right now it's not running, so it should
 

01:48:52.680 --> 01:48:54.390 align:start position:0%
right now it's not running, so it should
start<01:48:53.080><c> it</c><01:48:53.240><c> out.</c><01:48:53.720><c> And</c><01:48:53.800><c> here</c><01:48:54.000><c> it</c><01:48:54.080><c> says</c><01:48:54.320><c> the</c>

01:48:54.390 --> 01:48:54.400 align:start position:0%
start it out. And here it says the
 

01:48:54.400 --> 01:48:56.110 align:start position:0%
start it out. And here it says the
existing<01:48:54.800><c> browser</c><01:48:55.200><c> tab</c><01:48:55.480><c> was</c><01:48:55.640><c> sitting</c><01:48:55.920><c> on</c><01:48:56.000><c> the</c>

01:48:56.110 --> 01:48:56.120 align:start position:0%
existing browser tab was sitting on the
 

01:48:56.120 --> 01:48:58.710 align:start position:0%
existing browser tab was sitting on the
browser<01:48:56.640><c> error,</c><01:48:56.920><c> so</c><01:48:57.080><c> it</c><01:48:57.200><c> has</c><01:48:57.440><c> restarted</c><01:48:58.080><c> it.</c>

01:48:58.710 --> 01:48:58.720 align:start position:0%
browser error, so it has restarted it.
 

01:48:58.720 --> 01:49:01.150 align:start position:0%
browser error, so it has restarted it.
And<01:48:58.880><c> if</c><01:48:59.000><c> we</c><01:48:59.120><c> jump</c><01:48:59.480><c> into</c><01:48:59.760><c> Convex,</c><01:49:00.480><c> you</c><01:49:00.680><c> can</c><01:49:00.920><c> see</c>

01:49:01.150 --> 01:49:01.160 align:start position:0%
And if we jump into Convex, you can see
 

01:49:01.160 --> 01:49:04.190 align:start position:0%
And if we jump into Convex, you can see
that<01:49:01.480><c> we</c><01:49:01.640><c> have</c><01:49:02.040><c> a</c><01:49:02.120><c> new</c><01:49:02.400><c> project</c><01:49:03.240><c> created.</c><01:49:03.840><c> Now,</c>

01:49:04.190 --> 01:49:04.200 align:start position:0%
that we have a new project created. Now,
 

01:49:04.200 --> 01:49:06.190 align:start position:0%
that we have a new project created. Now,
I<01:49:04.320><c> did</c><01:49:04.680><c> authenticate</c><01:49:05.360><c> this</c><01:49:05.640><c> account</c><01:49:06.040><c> with</c>

01:49:06.190 --> 01:49:06.200 align:start position:0%
I did authenticate this account with
 

01:49:06.200 --> 01:49:08.310 align:start position:0%
I did authenticate this account with
Codex,<01:49:06.880><c> so</c><01:49:07.080><c> it</c><01:49:07.200><c> knows</c><01:49:07.600><c> that</c><01:49:07.760><c> this</c><01:49:07.920><c> is</c><01:49:08.080><c> my</c>

01:49:08.310 --> 01:49:08.320 align:start position:0%
Codex, so it knows that this is my
 

01:49:08.320 --> 01:49:10.390 align:start position:0%
Codex, so it knows that this is my
account.<01:49:09.080><c> And</c><01:49:09.280><c> so,</c><01:49:09.400><c> if</c><01:49:09.480><c> we</c><01:49:09.600><c> click</c><01:49:09.920><c> over</c><01:49:10.160><c> here,</c>

01:49:10.390 --> 01:49:10.400 align:start position:0%
account. And so, if we click over here,
 

01:49:10.400 --> 01:49:12.070 align:start position:0%
account. And so, if we click over here,
we<01:49:10.520><c> should</c><01:49:10.760><c> see</c><01:49:10.960><c> some</c><01:49:11.200><c> initial</c><01:49:11.680><c> stuff</c>

01:49:12.070 --> 01:49:12.080 align:start position:0%
we should see some initial stuff
 

01:49:12.080 --> 01:49:14.270 align:start position:0%
we should see some initial stuff
happening,<01:49:12.560><c> right?</c><01:49:12.960><c> There's</c><01:49:13.240><c> some</c><01:49:13.480><c> data,</c>

01:49:14.270 --> 01:49:14.280 align:start position:0%
happening, right? There's some data,
 

01:49:14.280 --> 01:49:16.430 align:start position:0%
happening, right? There's some data,
functions,<01:49:14.960><c> and</c><01:49:15.120><c> it's</c><01:49:15.280><c> not</c><01:49:15.600><c> done</c><01:49:15.880><c> yet,</c><01:49:16.200><c> right?</c>

01:49:16.430 --> 01:49:16.440 align:start position:0%
functions, and it's not done yet, right?
 

01:49:16.440 --> 01:49:18.830 align:start position:0%
functions, and it's not done yet, right?
It's<01:49:16.720><c> still</c><01:49:17.120><c> working.</c><01:49:18.200><c> And</c><01:49:18.360><c> while</c><01:49:18.600><c> it's</c>

01:49:18.830 --> 01:49:18.840 align:start position:0%
It's still working. And while it's
 

01:49:18.840 --> 01:49:21.470 align:start position:0%
It's still working. And while it's
working,<01:49:19.320><c> we</c><01:49:19.440><c> can</c><01:49:19.680><c> see</c><01:49:20.200><c> what</c><01:49:20.440><c> has</c><01:49:20.760><c> been</c><01:49:21.000><c> done.</c>

01:49:21.470 --> 01:49:21.480 align:start position:0%
working, we can see what has been done.
 

01:49:21.480 --> 01:49:23.190 align:start position:0%
working, we can see what has been done.
And<01:49:21.600><c> it's</c><01:49:21.800><c> actually</c><01:49:22.200><c> typing</c><01:49:22.760><c> it.</c><01:49:22.920><c> Look</c><01:49:23.080><c> at</c>

01:49:23.190 --> 01:49:23.200 align:start position:0%
And it's actually typing it. Look at
 

01:49:23.200 --> 01:49:26.310 align:start position:0%
And it's actually typing it. Look at
that.<01:49:23.600><c> Key</c><01:49:23.840><c> press</c><01:49:24.240><c> input.</c><01:49:25.120><c> It's</c><01:49:25.360><c> creating</c><01:49:26.080><c> it.</c>

01:49:26.310 --> 01:49:26.320 align:start position:0%
that. Key press input. It's creating it.
 

01:49:26.320 --> 01:49:27.990 align:start position:0%
that. Key press input. It's creating it.
It's<01:49:26.600><c> testing</c><01:49:27.120><c> it</c><01:49:27.280><c> right</c><01:49:27.480><c> here.</c><01:49:27.720><c> You</c><01:49:27.840><c> can</c>

01:49:27.990 --> 01:49:28.000 align:start position:0%
It's testing it right here. You can
 

01:49:28.000 --> 01:49:29.950 align:start position:0%
It's testing it right here. You can
actually<01:49:28.360><c> see</c><01:49:28.600><c> it</c><01:49:28.720><c> happening.</c><01:49:29.440><c> This</c><01:49:29.640><c> snack</c>

01:49:29.950 --> 01:49:29.960 align:start position:0%
actually see it happening. This snack
 

01:49:29.960 --> 01:49:31.750 align:start position:0%
actually see it happening. This snack
was<01:49:30.080><c> submitted</c><01:49:30.560><c> through</c><01:49:30.720><c> the</c><01:49:30.840><c> browser</c><01:49:31.560><c> and</c>

01:49:31.750 --> 01:49:31.760 align:start position:0%
was submitted through the browser and
 

01:49:31.760 --> 01:49:35.430 align:start position:0%
was submitted through the browser and
appeared<01:49:32.560><c> from</c><01:49:32.840><c> Convex.</c><01:49:34.120><c> I'm</c><01:49:34.440><c> voting</c><01:49:34.920><c> on</c><01:49:35.120><c> it.</c>

01:49:35.430 --> 01:49:35.440 align:start position:0%
appeared from Convex. I'm voting on it.
 

01:49:35.440 --> 01:49:37.710 align:start position:0%
appeared from Convex. I'm voting on it.
There<01:49:35.640><c> is</c><01:49:35.800><c> this</c><01:49:36.040><c> testing</c><01:49:36.560><c> all</c><01:49:36.760><c> the</c><01:49:36.880><c> flows,</c>

01:49:37.710 --> 01:49:37.720 align:start position:0%
There is this testing all the flows,
 

01:49:37.720 --> 01:49:39.270 align:start position:0%
There is this testing all the flows,
which<01:49:37.920><c> is</c><01:49:38.080><c> pretty</c><01:49:38.320><c> cool.</c><01:49:38.760><c> All</c><01:49:38.880><c> right,</c><01:49:39.120><c> now</c>

01:49:39.270 --> 01:49:39.280 align:start position:0%
which is pretty cool. All right, now
 

01:49:39.280 --> 01:49:41.550 align:start position:0%
which is pretty cool. All right, now
it's<01:49:39.480><c> telling</c><01:49:39.880><c> us</c><01:49:40.040><c> implemented</c><01:49:40.760><c> the</c><01:49:40.840><c> Convex</c>

01:49:41.550 --> 01:49:41.560 align:start position:0%
it's telling us implemented the Convex
 

01:49:41.560 --> 01:49:44.910 align:start position:0%
it's telling us implemented the Convex
back<01:49:42.520><c> snack</c><01:49:43.000><c> vote</c><01:49:43.280><c> upgrade,</c><01:49:44.040><c> changed</c><01:49:44.680><c> all</c><01:49:44.800><c> of</c>

01:49:44.910 --> 01:49:44.920 align:start position:0%
back snack vote upgrade, changed all of
 

01:49:44.920 --> 01:49:48.310 align:start position:0%
back snack vote upgrade, changed all of
this,<01:49:45.360><c> what</c><01:49:45.760><c> changed,</c><01:49:46.520><c> verification,</c><01:49:47.960><c> edge</c>

01:49:48.310 --> 01:49:48.320 align:start position:0%
this, what changed, verification, edge
 

01:49:48.320 --> 01:49:51.350 align:start position:0%
this, what changed, verification, edge
cases<01:49:48.800><c> handled,</c><01:49:49.520><c> and</c><01:49:50.120><c> it</c><01:49:50.280><c> is</c><01:49:50.520><c> running.</c><01:49:51.080><c> So,</c><01:49:51.240><c> we</c>

01:49:51.350 --> 01:49:51.360 align:start position:0%
cases handled, and it is running. So, we
 

01:49:51.360 --> 01:49:53.190 align:start position:0%
cases handled, and it is running. So, we
can<01:49:51.520><c> test</c><01:49:51.840><c> it</c><01:49:51.960><c> out</c><01:49:52.160><c> ourselves.</c><01:49:52.920><c> And</c><01:49:53.040><c> so,</c>

01:49:53.190 --> 01:49:53.200 align:start position:0%
can test it out ourselves. And so,
 

01:49:53.200 --> 01:49:56.630 align:start position:0%
can test it out ourselves. And so,
here's<01:49:53.600><c> the</c><01:49:53.800><c> app.</c><01:49:54.320><c> And</c><01:49:55.000><c> now</c><01:49:55.600><c> it's</c><01:49:55.920><c> Convex</c>

01:49:56.630 --> 01:49:56.640 align:start position:0%
here's the app. And now it's Convex
 

01:49:56.640 --> 01:49:57.750 align:start position:0%
here's the app. And now it's Convex
backed.

01:49:57.750 --> 01:49:57.760 align:start position:0%
backed.
 

01:49:57.760 --> 01:50:00.190 align:start position:0%
backed.
And<01:49:57.880><c> so,</c><01:49:58.040><c> now</c><01:49:58.440><c> if</c><01:49:58.640><c> we</c><01:49:58.760><c> head</c><01:49:58.960><c> to</c><01:49:59.080><c> Convex,</c><01:49:59.920><c> we</c>

01:50:00.190 --> 01:50:00.200 align:start position:0%
And so, now if we head to Convex, we
 

01:50:00.200 --> 01:50:03.110 align:start position:0%
And so, now if we head to Convex, we
should<01:50:00.520><c> see</c><01:50:00.920><c> the</c><01:50:01.160><c> data.</c><01:50:01.560><c> So,</c><01:50:01.760><c> as</c><01:50:01.880><c> you</c><01:50:02.000><c> can</c><01:50:02.200><c> see,</c>

01:50:03.110 --> 01:50:03.120 align:start position:0%
should see the data. So, as you can see,
 

01:50:03.120 --> 01:50:05.310 align:start position:0%
should see the data. So, as you can see,
snack<01:50:03.600><c> options,</c><01:50:04.040><c> this</c><01:50:04.240><c> has</c><01:50:04.480><c> a</c><01:50:04.520><c> vote</c><01:50:04.880><c> of</c><01:50:05.040><c> one.</c>

01:50:05.310 --> 01:50:05.320 align:start position:0%
snack options, this has a vote of one.
 

01:50:05.320 --> 01:50:08.110 align:start position:0%
snack options, this has a vote of one.
This<01:50:05.520><c> is</c><01:50:05.680><c> the</c><01:50:05.800><c> snack</c><01:50:06.280><c> tools,</c><01:50:06.800><c> vote</c><01:50:07.240><c> one.</c><01:50:07.720><c> And</c>

01:50:08.110 --> 01:50:08.120 align:start position:0%
This is the snack tools, vote one. And
 

01:50:08.120 --> 01:50:10.350 align:start position:0%
This is the snack tools, vote one. And
if<01:50:08.280><c> we</c><01:50:08.400><c> increase</c><01:50:08.960><c> the</c><01:50:09.040><c> vote,</c><01:50:09.840><c> it</c><01:50:10.000><c> should</c><01:50:10.240><c> be</c>

01:50:10.350 --> 01:50:10.360 align:start position:0%
if we increase the vote, it should be
 

01:50:10.360 --> 01:50:12.430 align:start position:0%
if we increase the vote, it should be
two,<01:50:10.560><c> and</c><01:50:10.680><c> it's</c><01:50:10.880><c> automatic.</c><01:50:11.560><c> It's</c><01:50:11.840><c> absolutely</c>

01:50:12.430 --> 01:50:12.440 align:start position:0%
two, and it's automatic. It's absolutely
 

01:50:12.440 --> 01:50:13.630 align:start position:0%
two, and it's automatic. It's absolutely
automatic.

01:50:13.630 --> 01:50:13.640 align:start position:0%
automatic.
 

01:50:13.640 --> 01:50:15.910 align:start position:0%
automatic.
Three,<01:50:14.080><c> it's</c><01:50:14.400><c> three.</c><01:50:14.840><c> It</c><01:50:15.080><c> does</c><01:50:15.320><c> not</c><01:50:15.600><c> need</c><01:50:15.840><c> to</c>

01:50:15.910 --> 01:50:15.920 align:start position:0%
Three, it's three. It does not need to
 

01:50:15.920 --> 01:50:18.030 align:start position:0%
Three, it's three. It does not need to
do<01:50:16.080><c> anything.</c><01:50:16.760><c> And</c><01:50:17.160><c> we</c><01:50:17.280><c> can</c><01:50:17.440><c> create</c><01:50:17.760><c> a</c><01:50:17.800><c> new</c>

01:50:18.030 --> 01:50:18.040 align:start position:0%
do anything. And we can create a new
 

01:50:18.040 --> 01:50:21.150 align:start position:0%
do anything. And we can create a new
snack<01:50:18.400><c> option,</c><01:50:18.840><c> let's</c><01:50:19.040><c> say</c><01:50:19.200><c> sushi,</c><01:50:20.000><c> submit.</c>

01:50:21.150 --> 01:50:21.160 align:start position:0%
snack option, let's say sushi, submit.
 

01:50:21.160 --> 01:50:22.910 align:start position:0%
snack option, let's say sushi, submit.
And<01:50:21.280><c> if</c><01:50:21.400><c> we</c><01:50:21.480><c> come</c><01:50:21.720><c> over</c><01:50:21.880><c> here,</c><01:50:22.080><c> we</c><01:50:22.200><c> see</c><01:50:22.400><c> sushi,</c>

01:50:22.910 --> 01:50:22.920 align:start position:0%
And if we come over here, we see sushi,
 

01:50:22.920 --> 01:50:25.910 align:start position:0%
And if we come over here, we see sushi,
zero<01:50:23.400><c> votes.</c><01:50:24.080><c> Now</c><01:50:24.320><c> it's</c><01:50:24.560><c> winning.</c><01:50:25.560><c> And</c><01:50:25.720><c> so,</c>

01:50:25.910 --> 01:50:25.920 align:start position:0%
zero votes. Now it's winning. And so,
 

01:50:25.920 --> 01:50:28.950 align:start position:0%
zero votes. Now it's winning. And so,
this<01:50:26.160><c> is</c><01:50:26.280><c> essentially</c><01:50:26.960><c> the</c><01:50:27.120><c> same</c><01:50:27.640><c> app,</c><01:50:28.440><c> except</c>

01:50:28.950 --> 01:50:28.960 align:start position:0%
this is essentially the same app, except
 

01:50:28.960 --> 01:50:31.910 align:start position:0%
this is essentially the same app, except
it's<01:50:29.200><c> Convex</c><01:50:30.000><c> backed.</c><01:50:30.680><c> And</c><01:50:31.040><c> we</c><01:50:31.160><c> also</c><01:50:31.600><c> have</c>

01:50:31.910 --> 01:50:31.920 align:start position:0%
it's Convex backed. And we also have
 

01:50:31.920 --> 01:50:34.790 align:start position:0%
it's Convex backed. And we also have
functions.<01:50:32.880><c> And</c><01:50:33.280><c> with</c><01:50:33.520><c> Convex,</c><01:50:34.240><c> you</c><01:50:34.400><c> need</c><01:50:34.680><c> to</c>

01:50:34.790 --> 01:50:34.800 align:start position:0%
functions. And with Convex, you need to
 

01:50:34.800 --> 01:50:36.710 align:start position:0%
functions. And with Convex, you need to
create<01:50:35.320><c> functions</c>

01:50:36.710 --> 01:50:36.720 align:start position:0%
create functions
 

01:50:36.720 --> 01:50:38.710 align:start position:0%
create functions
to<01:50:36.840><c> access</c><01:50:37.320><c> your</c><01:50:37.480><c> data.</c><01:50:37.880><c> It's</c><01:50:38.080><c> not</c><01:50:38.320><c> like</c><01:50:38.560><c> with</c>

01:50:38.710 --> 01:50:38.720 align:start position:0%
to access your data. It's not like with
 

01:50:38.720 --> 01:50:41.590 align:start position:0%
to access your data. It's not like with
other<01:50:38.960><c> systems</c><01:50:39.680><c> where</c><01:50:40.400><c> it's</c><01:50:40.680><c> automatic.</c><01:50:41.360><c> Here</c>

01:50:41.590 --> 01:50:41.600 align:start position:0%
other systems where it's automatic. Here
 

01:50:41.600 --> 01:50:43.710 align:start position:0%
other systems where it's automatic. Here
you<01:50:41.680><c> need</c><01:50:41.920><c> list,</c><01:50:42.360><c> you</c><01:50:42.480><c> need</c><01:50:42.720><c> submit,</c><01:50:43.400><c> you</c><01:50:43.520><c> need</c>

01:50:43.710 --> 01:50:43.720 align:start position:0%
you need list, you need submit, you need
 

01:50:43.720 --> 01:50:45.870 align:start position:0%
you need list, you need submit, you need
a<01:50:43.760><c> vote,</c><01:50:44.200><c> you</c><01:50:44.280><c> need</c><01:50:44.560><c> functions.</c>

01:50:45.870 --> 01:50:45.880 align:start position:0%
a vote, you need functions.
 

01:50:45.880 --> 01:50:48.950 align:start position:0%
a vote, you need functions.
And<01:50:46.040><c> so,</c><01:50:46.200><c> the</c><01:50:46.360><c> snack</c><01:50:46.880><c> options</c><01:50:47.600><c> table</c><01:50:48.760><c> or</c>

01:50:48.950 --> 01:50:48.960 align:start position:0%
And so, the snack options table or
 

01:50:48.960 --> 01:50:53.110 align:start position:0%
And so, the snack options table or
document<01:50:50.000><c> has</c><01:50:50.400><c> three</c><01:50:51.400><c> functions.</c><01:50:52.280><c> No</c><01:50:52.560><c> files,</c>

01:50:53.110 --> 01:50:53.120 align:start position:0%
document has three functions. No files,
 

01:50:53.120 --> 01:50:55.590 align:start position:0%
document has three functions. No files,
no<01:50:53.320><c> schedules,</c><01:50:54.240><c> and</c><01:50:54.520><c> there's</c><01:50:54.800><c> some</c><01:50:55.080><c> logs</c>

01:50:55.590 --> 01:50:55.600 align:start position:0%
no schedules, and there's some logs
 

01:50:55.600 --> 01:50:57.270 align:start position:0%
no schedules, and there's some logs
here,<01:50:55.880><c> so</c><01:50:56.000><c> that</c><01:50:56.200><c> you</c><01:50:56.320><c> can</c><01:50:56.520><c> see</c><01:50:56.760><c> things</c><01:50:57.120><c> are</c>

01:50:57.270 --> 01:50:57.280 align:start position:0%
here, so that you can see things are
 

01:50:57.280 --> 01:50:57.910 align:start position:0%
here, so that you can see things are
happening.

01:50:57.910 --> 01:50:57.920 align:start position:0%
happening.
 

01:50:57.920 --> 01:51:00.110 align:start position:0%
happening.
&gt;&gt; Okay,<01:50:57.960><c> so</c><01:50:58.120><c> this</c><01:50:58.400><c> was</c><01:50:58.640><c> a</c><01:50:58.840><c> fairly</c><01:50:59.440><c> successful</c>

01:51:00.110 --> 01:51:00.120 align:start position:0%
&gt;&gt; Okay, so this was a fairly successful
 

01:51:00.120 --> 01:51:03.670 align:start position:0%
&gt;&gt; Okay, so this was a fairly successful
migration.<01:51:01.200><c> We</c><01:51:01.400><c> went</c><01:51:01.720><c> to</c><01:51:01.880><c> no</c><01:51:02.200><c> back</c><01:51:02.640><c> end</c><01:51:03.240><c> to</c><01:51:03.560><c> a</c>

01:51:03.670 --> 01:51:03.680 align:start position:0%
migration. We went to no back end to a
 

01:51:03.680 --> 01:51:06.470 align:start position:0%
migration. We went to no back end to a
Convex<01:51:04.360><c> back</c><01:51:04.720><c> end</c><01:51:04.880><c> very,</c><01:51:05.280><c> very</c><01:51:05.600><c> quickly.</c><01:51:06.240><c> Now</c>

01:51:06.470 --> 01:51:06.480 align:start position:0%
Convex back end very, very quickly. Now
 

01:51:06.480 --> 01:51:09.430 align:start position:0%
Convex back end very, very quickly. Now
that<01:51:06.760><c> snack</c><01:51:07.160><c> vote</c><01:51:07.440><c> has</c><01:51:07.760><c> real</c><01:51:08.080><c> Convex</c><01:51:08.720><c> data,</c><01:51:09.240><c> we</c>

01:51:09.430 --> 01:51:09.440 align:start position:0%
that snack vote has real Convex data, we
 

01:51:09.440 --> 01:51:11.630 align:start position:0%
that snack vote has real Convex data, we
can<01:51:09.600><c> make</c><01:51:09.800><c> it</c><01:51:09.960><c> feel</c><01:51:10.240><c> more</c><01:51:10.560><c> like</c><01:51:10.880><c> a</c><01:51:11.000><c> shared</c>

01:51:11.630 --> 01:51:11.640 align:start position:0%
can make it feel more like a shared
 

01:51:11.640 --> 01:51:13.790 align:start position:0%
can make it feel more like a shared
group<01:51:12.040><c> app.</c><01:51:12.560><c> Instead</c><01:51:12.960><c> of</c><01:51:13.080><c> one</c><01:51:13.320><c> global</c>

01:51:13.790 --> 01:51:13.800 align:start position:0%
group app. Instead of one global
 

01:51:13.800 --> 01:51:16.830 align:start position:0%
group app. Instead of one global
snackboard,<01:51:14.720><c> users</c><01:51:15.240><c> can</c><01:51:15.440><c> create</c><01:51:15.880><c> or</c><01:51:16.040><c> join</c><01:51:16.680><c> a</c>

01:51:16.830 --> 01:51:16.840 align:start position:0%
snackboard, users can create or join a
 

01:51:16.840 --> 01:51:20.550 align:start position:0%
snackboard, users can create or join a
simple<01:51:17.400><c> voting</c><01:51:17.840><c> room</c><01:51:18.520><c> like</c><01:51:18.960><c> Friday</c><01:51:19.480><c> lunch</c><01:51:20.320><c> or</c>

01:51:20.550 --> 01:51:20.560 align:start position:0%
simple voting room like Friday lunch or
 

01:51:20.560 --> 01:51:23.670 align:start position:0%
simple voting room like Friday lunch or
team<01:51:21.120><c> snacks.</c><01:51:21.920><c> Each</c><01:51:22.320><c> room</c><01:51:22.680><c> should</c><01:51:23.040><c> own</c><01:51:23.440><c> its</c>

01:51:23.670 --> 01:51:23.680 align:start position:0%
team snacks. Each room should own its
 

01:51:23.680 --> 01:51:27.470 align:start position:0%
team snacks. Each room should own its
own<01:51:23.920><c> snack</c><01:51:24.480><c> options,</c><01:51:25.360><c> votes,</c><01:51:26.320><c> leaderboard,</c>

01:51:27.470 --> 01:51:27.480 align:start position:0%
own snack options, votes, leaderboard,
 

01:51:27.480 --> 01:51:30.270 align:start position:0%
own snack options, votes, leaderboard,
and<01:51:27.720><c> winner</c><01:51:28.080><c> state.</c><01:51:28.960><c> This</c><01:51:29.360><c> keeps</c><01:51:29.760><c> the</c><01:51:29.920><c> app</c>

01:51:30.270 --> 01:51:30.280 align:start position:0%
and winner state. This keeps the app
 

01:51:30.280 --> 01:51:33.390 align:start position:0%
and winner state. This keeps the app
more<01:51:30.560><c> interesting</c><01:51:31.600><c> while</c><01:51:32.000><c> teaching</c><01:51:32.680><c> a</c><01:51:32.800><c> clean</c>

01:51:33.390 --> 01:51:33.400 align:start position:0%
more interesting while teaching a clean
 

01:51:33.400 --> 01:51:37.030 align:start position:0%
more interesting while teaching a clean
back-end<01:51:33.920><c> concept,</c><01:51:34.840><c> scoped</c><01:51:35.720><c> data.</c><01:51:36.360><c> We</c><01:51:36.600><c> still</c>

01:51:37.030 --> 01:51:37.040 align:start position:0%
back-end concept, scoped data. We still
 

01:51:37.040 --> 01:51:39.350 align:start position:0%
back-end concept, scoped data. We still
do<01:51:37.160><c> not</c><01:51:37.440><c> need</c><01:51:37.680><c> accounts,</c><01:51:38.480><c> permissions,</c>

01:51:39.350 --> 01:51:39.360 align:start position:0%
do not need accounts, permissions,
 

01:51:39.360 --> 01:51:42.590 align:start position:0%
do not need accounts, permissions,
invites,<01:51:40.200><c> or</c><01:51:40.640><c> admin</c><01:51:41.200><c> tools.</c><01:51:41.880><c> And</c><01:51:42.120><c> here's</c><01:51:42.480><c> the</c>

01:51:42.590 --> 01:51:42.600 align:start position:0%
invites, or admin tools. And here's the
 

01:51:42.600 --> 01:51:44.230 align:start position:0%
invites, or admin tools. And here's the
prompt<01:51:42.960><c> that</c><01:51:43.120><c> we're</c><01:51:43.240><c> going</c><01:51:43.400><c> to</c><01:51:43.440><c> be</c><01:51:43.600><c> using.</c>

01:51:44.230 --> 01:51:44.240 align:start position:0%
prompt that we're going to be using.
 

01:51:44.240 --> 01:51:47.870 align:start position:0%
prompt that we're going to be using.
Upgrade<01:51:44.920><c> snack</c><01:51:45.400><c> vote</c><01:51:46.280><c> so</c><01:51:46.680><c> voting</c><01:51:47.280><c> happens</c>

01:51:47.870 --> 01:51:47.880 align:start position:0%
Upgrade snack vote so voting happens
 

01:51:47.880 --> 01:51:50.390 align:start position:0%
Upgrade snack vote so voting happens
inside<01:51:48.720><c> simple</c><01:51:49.240><c> rooms.</c><01:51:49.920><c> And</c><01:51:50.040><c> I'm</c><01:51:50.120><c> going</c><01:51:50.280><c> to</c>

01:51:50.390 --> 01:51:50.400 align:start position:0%
inside simple rooms. And I'm going to
 

01:51:50.400 --> 01:51:53.230 align:start position:0%
inside simple rooms. And I'm going to
run<01:51:50.760><c> this</c><01:51:51.200><c> in</c><01:51:51.560><c> a</c><01:51:51.720><c> plan</c><01:51:52.160><c> mode.</c><01:51:52.720><c> All</c><01:51:52.840><c> right,</c><01:51:53.120><c> so</c>

01:51:53.230 --> 01:51:53.240 align:start position:0%
run this in a plan mode. All right, so
 

01:51:53.240 --> 01:51:55.470 align:start position:0%
run this in a plan mode. All right, so
it<01:51:53.400><c> came</c><01:51:53.680><c> back</c><01:51:54.000><c> with</c><01:51:54.160><c> a</c><01:51:54.280><c> plan</c><01:51:54.720><c> for</c><01:51:55.000><c> us.</c><01:51:55.160><c> This</c><01:51:55.360><c> is</c>

01:51:55.470 --> 01:51:55.480 align:start position:0%
it came back with a plan for us. This is
 

01:51:55.480 --> 01:51:58.350 align:start position:0%
it came back with a plan for us. This is
the<01:51:55.640><c> room-based</c><01:51:56.560><c> snack</c><01:51:57.120><c> vote</c><01:51:57.560><c> upgrade.</c>

01:51:58.350 --> 01:51:58.360 align:start position:0%
the room-based snack vote upgrade.
 

01:51:58.360 --> 01:52:00.710 align:start position:0%
the room-based snack vote upgrade.
Upgrade<01:51:58.760><c> the</c><01:51:58.840><c> current</c><01:51:59.160><c> Convex</c><01:51:59.720><c> back</c><01:52:00.120><c> app</c><01:52:00.440><c> from</c>

01:52:00.710 --> 01:52:00.720 align:start position:0%
Upgrade the current Convex back app from
 

01:52:00.720 --> 01:52:03.510 align:start position:0%
Upgrade the current Convex back app from
one<01:52:00.960><c> global</c><01:52:01.400><c> snackboard</c><01:52:02.200><c> to</c><01:52:02.360><c> simple</c><01:52:02.840><c> rooms.</c>

01:52:03.510 --> 01:52:03.520 align:start position:0%
one global snackboard to simple rooms.
 

01:52:03.520 --> 01:52:06.310 align:start position:0%
one global snackboard to simple rooms.
Can<01:52:03.680><c> I</c><01:52:03.720><c> expand</c><01:52:04.400><c> that?</c><01:52:04.920><c> Yes,</c><01:52:05.280><c> implement</c><01:52:05.920><c> that.</c>

01:52:06.310 --> 01:52:06.320 align:start position:0%
Can I expand that? Yes, implement that.
 

01:52:06.320 --> 01:52:08.790 align:start position:0%
Can I expand that? Yes, implement that.
Now,<01:52:06.440><c> as</c><01:52:06.720><c> it's</c><01:52:07.040><c> running,</c><01:52:07.960><c> I</c><01:52:08.120><c> am</c><01:52:08.280><c> seeing</c><01:52:08.640><c> an</c>

01:52:08.790 --> 01:52:08.800 align:start position:0%
Now, as it's running, I am seeing an
 

01:52:08.800 --> 01:52:10.710 align:start position:0%
Now, as it's running, I am seeing an
error<01:52:09.120><c> message</c><01:52:09.680><c> here.</c>

01:52:10.710 --> 01:52:10.720 align:start position:0%
error message here.
 

01:52:10.720 --> 01:52:14.430 align:start position:0%
error message here.
Did<01:52:10.960><c> you</c><01:52:11.120><c> forget</c><01:52:11.640><c> to</c><01:52:11.800><c> run</c><01:52:12.120><c> NPX</c><01:52:13.120><c> Convex</c><01:52:13.760><c> dev?</c>

01:52:14.430 --> 01:52:14.440 align:start position:0%
Did you forget to run NPX Convex dev?
 

01:52:14.440 --> 01:52:16.870 align:start position:0%
Did you forget to run NPX Convex dev?
Okay,<01:52:14.800><c> so</c><01:52:15.000><c> let's</c><01:52:15.320><c> see</c><01:52:15.440><c> if</c><01:52:15.600><c> it's</c><01:52:15.800><c> able</c><01:52:16.160><c> to</c><01:52:16.440><c> catch</c>

01:52:16.870 --> 01:52:16.880 align:start position:0%
Okay, so let's see if it's able to catch
 

01:52:16.880 --> 01:52:19.910 align:start position:0%
Okay, so let's see if it's able to catch
that<01:52:17.680><c> and</c><01:52:18.000><c> solve</c><01:52:18.560><c> it</c><01:52:18.920><c> before</c><01:52:19.360><c> the</c><01:52:19.520><c> next</c>

01:52:19.910 --> 01:52:19.920 align:start position:0%
that and solve it before the next
 

01:52:19.920 --> 01:52:21.750 align:start position:0%
that and solve it before the next
prompt.<01:52:20.400><c> It</c><01:52:20.600><c> is</c><01:52:20.760><c> done.</c><01:52:21.280><c> So,</c><01:52:21.400><c> it</c><01:52:21.520><c> has</c>

01:52:21.750 --> 01:52:21.760 align:start position:0%
prompt. It is done. So, it has
 

01:52:21.760 --> 01:52:24.510 align:start position:0%
prompt. It is done. So, it has
implemented<01:52:22.640><c> room-based</c><01:52:23.600><c> snack</c><01:52:24.000><c> vote.</c><01:52:24.320><c> This</c>

01:52:24.510 --> 01:52:24.520 align:start position:0%
implemented room-based snack vote. This
 

01:52:24.520 --> 01:52:27.270 align:start position:0%
implemented room-based snack vote. This
is<01:52:24.640><c> what</c><01:52:24.800><c> it</c><01:52:24.920><c> changed,</c><01:52:25.720><c> files,</c><01:52:26.680><c> things,</c>

01:52:27.270 --> 01:52:27.280 align:start position:0%
is what it changed, files, things,
 

01:52:27.280 --> 01:52:30.110 align:start position:0%
is what it changed, files, things,
verification<01:52:28.520><c> limits.</c><01:52:29.480><c> Okay,</c><01:52:29.800><c> very</c>

01:52:30.110 --> 01:52:30.120 align:start position:0%
verification limits. Okay, very
 

01:52:30.120 --> 01:52:31.990 align:start position:0%
verification limits. Okay, very
important.<01:52:30.560><c> Limits</c><01:52:30.920><c> is</c><01:52:31.040><c> actually</c><01:52:31.440><c> very,</c><01:52:31.760><c> very</c>

01:52:31.990 --> 01:52:32.000 align:start position:0%
important. Limits is actually very, very
 

01:52:32.000 --> 01:52:36.110 align:start position:0%
important. Limits is actually very, very
useful.<01:52:32.880><c> No</c><01:52:33.240><c> auth,</c><01:52:33.720><c> ownership,</c><01:52:35.120><c> invites,</c><01:52:35.880><c> or</c>

01:52:36.110 --> 01:52:36.120 align:start position:0%
useful. No auth, ownership, invites, or
 

01:52:36.120 --> 01:52:38.550 align:start position:0%
useful. No auth, ownership, invites, or
duplicate<01:52:36.800><c> vote</c><01:52:37.160><c> guard</c><01:52:37.560><c> yet.</c><01:52:37.920><c> And</c><01:52:38.040><c> we'll</c><01:52:38.240><c> fix</c>

01:52:38.550 --> 01:52:38.560 align:start position:0%
duplicate vote guard yet. And we'll fix
 

01:52:38.560 --> 01:52:40.390 align:start position:0%
duplicate vote guard yet. And we'll fix
some<01:52:38.760><c> of</c><01:52:38.880><c> these</c><01:52:39.080><c> a</c><01:52:39.160><c> little</c><01:52:39.440><c> later.</c><01:52:40.120><c> Room</c>

01:52:40.390 --> 01:52:40.400 align:start position:0%
some of these a little later. Room
 

01:52:40.400 --> 01:52:42.710 align:start position:0%
some of these a little later. Room
selection,<01:52:41.120><c> room</c><01:52:41.480><c> codes.</c><01:52:41.880><c> Okay,</c><01:52:42.120><c> so</c><01:52:42.280><c> how</c><01:52:42.480><c> does</c>

01:52:42.710 --> 01:52:42.720 align:start position:0%
selection, room codes. Okay, so how does
 

01:52:42.720 --> 01:52:44.310 align:start position:0%
selection, room codes. Okay, so how does
this<01:52:42.960><c> work?</c><01:52:43.240><c> Let's</c><01:52:43.440><c> go</c><01:52:43.560><c> ahead</c><01:52:43.720><c> and</c><01:52:43.800><c> refresh</c>

01:52:44.310 --> 01:52:44.320 align:start position:0%
this work? Let's go ahead and refresh
 

01:52:44.320 --> 01:52:46.750 align:start position:0%
this work? Let's go ahead and refresh
this.<01:52:44.720><c> All</c><01:52:44.840><c> right,</c><01:52:45.160><c> so</c><01:52:45.440><c> we</c><01:52:45.640><c> can</c><01:52:45.880><c> create</c><01:52:46.520><c> or</c>

01:52:46.750 --> 01:52:46.760 align:start position:0%
this. All right, so we can create or
 

01:52:46.760 --> 01:52:49.230 align:start position:0%
this. All right, so we can create or
join<01:52:47.360><c> a</c><01:52:47.440><c> room,</c><01:52:48.200><c> and</c><01:52:48.320><c> there</c><01:52:48.480><c> are</c><01:52:48.560><c> some</c><01:52:48.840><c> rooms</c>

01:52:49.230 --> 01:52:49.240 align:start position:0%
join a room, and there are some rooms
 

01:52:49.240 --> 01:52:51.630 align:start position:0%
join a room, and there are some rooms
over<01:52:49.480><c> here.</c><01:52:49.880><c> So,</c><01:52:50.200><c> let's</c><01:52:50.440><c> say</c><01:52:50.640><c> we</c><01:52:50.800><c> type</c><01:52:51.160><c> Friday</c>

01:52:51.630 --> 01:52:51.640 align:start position:0%
over here. So, let's say we type Friday
 

01:52:51.640 --> 01:52:54.070 align:start position:0%
over here. So, let's say we type Friday
lunch,<01:52:52.280><c> and</c><01:52:52.520><c> so</c><01:52:52.680><c> now</c><01:52:53.040><c> we've</c><01:52:53.320><c> switched</c><01:52:53.960><c> the</c>

01:52:54.070 --> 01:52:54.080 align:start position:0%
lunch, and so now we've switched the
 

01:52:54.080 --> 01:52:56.830 align:start position:0%
lunch, and so now we've switched the
room.<01:52:54.840><c> Okay,</c><01:52:55.440><c> current</c><01:52:55.840><c> room</c><01:52:56.040><c> Friday</c><01:52:56.480><c> lunch.</c>

01:52:56.830 --> 01:52:56.840 align:start position:0%
room. Okay, current room Friday lunch.
 

01:52:56.840 --> 01:52:59.590 align:start position:0%
room. Okay, current room Friday lunch.
And<01:52:57.040><c> now</c><01:52:57.440><c> we</c><01:52:57.600><c> can</c><01:52:58.320><c> do</c><01:52:58.560><c> the</c><01:52:58.720><c> same</c><01:52:59.080><c> thing.</c><01:52:59.400><c> We're</c>

01:52:59.590 --> 01:52:59.600 align:start position:0%
And now we can do the same thing. We're
 

01:52:59.600 --> 01:53:02.190 align:start position:0%
And now we can do the same thing. We're
now<01:53:00.080><c> in</c><01:53:00.280><c> in</c><01:53:00.400><c> the</c><01:53:00.520><c> scope.</c><01:53:01.520><c> It's</c><01:53:01.720><c> all</c><01:53:01.880><c> about</c>

01:53:02.190 --> 01:53:02.200 align:start position:0%
now in in the scope. It's all about
 

01:53:02.200 --> 01:53:04.550 align:start position:0%
now in in the scope. It's all about
scoping<01:53:02.800><c> now,</c><01:53:03.080><c> right?</c><01:53:03.680><c> And</c><01:53:03.880><c> so</c><01:53:04.120><c> this</c><01:53:04.360><c> is</c><01:53:04.520><c> a</c>

01:53:04.550 --> 01:53:04.560 align:start position:0%
scoping now, right? And so this is a
 

01:53:04.560 --> 01:53:07.950 align:start position:0%
scoping now, right? And so this is a
specific<01:53:05.200><c> room,</c><01:53:06.080><c> and</c><01:53:06.560><c> I</c><01:53:06.680><c> can</c><01:53:06.920><c> say,</c><01:53:07.640><c> I</c><01:53:07.760><c> don't</c>

01:53:07.950 --> 01:53:07.960 align:start position:0%
specific room, and I can say, I don't
 

01:53:07.960 --> 01:53:10.590 align:start position:0%
specific room, and I can say, I don't
know,<01:53:08.320><c> submit.</c><01:53:09.240><c> There</c><01:53:09.520><c> we</c><01:53:09.680><c> have</c><01:53:10.000><c> it</c><01:53:10.160><c> in</c><01:53:10.360><c> this</c>

01:53:10.590 --> 01:53:10.600 align:start position:0%
know, submit. There we have it in this
 

01:53:10.600 --> 01:53:12.630 align:start position:0%
know, submit. There we have it in this
room.<01:53:10.800><c> And</c><01:53:10.920><c> now</c><01:53:11.080><c> if</c><01:53:11.240><c> I</c><01:53:11.320><c> switch</c><01:53:11.680><c> a</c><01:53:11.760><c> room,</c><01:53:12.280><c> let's</c>

01:53:12.630 --> 01:53:12.640 align:start position:0%
room. And now if I switch a room, let's
 

01:53:12.640 --> 01:53:15.790 align:start position:0%
room. And now if I switch a room, let's
say<01:53:12.880><c> I</c><01:53:13.000><c> switch</c><01:53:13.520><c> to</c><01:53:14.280><c> launch</c><01:53:14.720><c> ideas.</c><01:53:15.440><c> So</c><01:53:15.560><c> now</c>

01:53:15.790 --> 01:53:15.800 align:start position:0%
say I switch to launch ideas. So now
 

01:53:15.800 --> 01:53:18.390 align:start position:0%
say I switch to launch ideas. So now
it's<01:53:15.960><c> brand</c><01:53:16.320><c> new.</c><01:53:16.520><c> There's</c><01:53:16.800><c> nothing</c><01:53:17.920><c> nothing</c>

01:53:18.390 --> 01:53:18.400 align:start position:0%
it's brand new. There's nothing nothing
 

01:53:18.400 --> 01:53:20.950 align:start position:0%
it's brand new. There's nothing nothing
there.<01:53:18.640><c> And</c><01:53:18.760><c> I</c><01:53:18.840><c> can</c><01:53:19.040><c> say</c><01:53:19.360><c> something</c><01:53:19.840><c> like</c><01:53:20.840><c> I</c>

01:53:20.950 --> 01:53:20.960 align:start position:0%
there. And I can say something like I
 

01:53:20.960 --> 01:53:23.230 align:start position:0%
there. And I can say something like I
don't<01:53:21.160><c> know,</c><01:53:21.320><c> tacos.</c><01:53:22.200><c> And</c><01:53:22.320><c> now</c><01:53:22.480><c> we</c><01:53:22.600><c> have</c><01:53:22.800><c> tacos</c>

01:53:23.230 --> 01:53:23.240 align:start position:0%
don't know, tacos. And now we have tacos
 

01:53:23.240 --> 01:53:25.950 align:start position:0%
don't know, tacos. And now we have tacos
here.<01:53:23.520><c> And</c><01:53:23.640><c> if</c><01:53:23.760><c> we</c><01:53:23.840><c> go</c><01:53:24.040><c> into</c><01:53:24.360><c> Codex,</c><01:53:25.480><c> we</c><01:53:25.720><c> should</c>

01:53:25.950 --> 01:53:25.960 align:start position:0%
here. And if we go into Codex, we should
 

01:53:25.960 --> 01:53:28.310 align:start position:0%
here. And if we go into Codex, we should
see<01:53:26.240><c> that.</c><01:53:26.520><c> So</c><01:53:26.640><c> we</c><01:53:26.760><c> have</c><01:53:26.960><c> voting</c><01:53:27.400><c> rooms</c><01:53:27.720><c> here,</c>

01:53:28.310 --> 01:53:28.320 align:start position:0%
see that. So we have voting rooms here,
 

01:53:28.320 --> 01:53:30.830 align:start position:0%
see that. So we have voting rooms here,
and<01:53:28.560><c> we</c><01:53:28.680><c> have</c><01:53:28.880><c> different</c><01:53:29.240><c> ideas</c><01:53:29.840><c> here.</c>

01:53:30.830 --> 01:53:30.840 align:start position:0%
and we have different ideas here.
 

01:53:30.840 --> 01:53:33.070 align:start position:0%
and we have different ideas here.
And<01:53:31.040><c> now</c><01:53:31.160><c> if</c><01:53:31.280><c> we</c><01:53:31.360><c> go</c><01:53:31.480><c> into</c><01:53:31.720><c> snack</c><01:53:32.160><c> options,</c><01:53:32.920><c> we</c>

01:53:33.070 --> 01:53:33.080 align:start position:0%
And now if we go into snack options, we
 

01:53:33.080 --> 01:53:35.430 align:start position:0%
And now if we go into snack options, we
can<01:53:33.280><c> see</c><01:53:33.480><c> that</c><01:53:33.840><c> they</c><01:53:34.040><c> belong</c><01:53:34.600><c> to</c><01:53:34.720><c> a</c><01:53:34.800><c> specific</c>

01:53:35.430 --> 01:53:35.440 align:start position:0%
can see that they belong to a specific
 

01:53:35.440 --> 01:53:37.150 align:start position:0%
can see that they belong to a specific
room.<01:53:35.640><c> We</c><01:53:35.760><c> have</c><01:53:35.920><c> the</c><01:53:36.040><c> room</c><01:53:36.280><c> IDs.</c><01:53:36.720><c> These</c><01:53:37.000><c> are</c>

01:53:37.150 --> 01:53:37.160 align:start position:0%
room. We have the room IDs. These are
 

01:53:37.160 --> 01:53:39.550 align:start position:0%
room. We have the room IDs. These are
the<01:53:37.320><c> same</c><01:53:38.200><c> same</c><01:53:38.680><c> room</c><01:53:38.880><c> that</c><01:53:39.000><c> we</c><01:53:39.120><c> have</c><01:53:39.280><c> a</c><01:53:39.320><c> bunch</c>

01:53:39.550 --> 01:53:39.560 align:start position:0%
the same same room that we have a bunch
 

01:53:39.560 --> 01:53:42.350 align:start position:0%
the same same room that we have a bunch
of<01:53:39.680><c> different</c><01:53:40.480><c> room</c><01:53:40.760><c> IDs</c><01:53:41.240><c> there.</c><01:53:41.800><c> Probably</c>

01:53:42.350 --> 01:53:42.360 align:start position:0%
of different room IDs there. Probably
 

01:53:42.360 --> 01:53:45.590 align:start position:0%
of different room IDs there. Probably
some<01:53:42.680><c> of</c><01:53:42.800><c> them</c><01:53:43.040><c> created</c><01:53:43.840><c> by</c><01:53:44.600><c> Codex</c><01:53:45.160><c> as</c><01:53:45.320><c> part</c><01:53:45.520><c> of</c>

01:53:45.590 --> 01:53:45.600 align:start position:0%
some of them created by Codex as part of
 

01:53:45.600 --> 01:53:48.430 align:start position:0%
some of them created by Codex as part of
testing,<01:53:46.080><c> like</c><01:53:46.320><c> lunch</c><01:53:46.680><c> ideas.</c><01:53:47.960><c> Oh,</c><01:53:48.120><c> no,</c><01:53:48.320><c> I</c>

01:53:48.430 --> 01:53:48.440 align:start position:0%
testing, like lunch ideas. Oh, no, I
 

01:53:48.440 --> 01:53:50.470 align:start position:0%
testing, like lunch ideas. Oh, no, I
created<01:53:48.880><c> lunch</c><01:53:49.160><c> ideas.</c><01:53:49.640><c> These</c><01:53:50.040><c> ones</c><01:53:50.360><c> were</c>

01:53:50.470 --> 01:53:50.480 align:start position:0%
created lunch ideas. These ones were
 

01:53:50.480 --> 01:53:53.430 align:start position:0%
created lunch ideas. These ones were
created<01:53:50.920><c> by</c><01:53:51.080><c> Codex,</c><01:53:51.680><c> these</c><01:53:52.000><c> three</c><01:53:52.240><c> rooms.</c><01:53:53.120><c> And</c>

01:53:53.430 --> 01:53:53.440 align:start position:0%
created by Codex, these three rooms. And
 

01:53:53.440 --> 01:53:56.630 align:start position:0%
created by Codex, these three rooms. And
we<01:53:53.560><c> can</c><01:53:53.760><c> remove</c><01:53:54.160><c> them.</c><01:53:54.840><c> I</c><01:53:54.960><c> can</c><01:53:55.280><c> select</c><01:53:55.920><c> these,</c>

01:53:56.630 --> 01:53:56.640 align:start position:0%
we can remove them. I can select these,
 

01:53:56.640 --> 01:53:58.710 align:start position:0%
we can remove them. I can select these,
and<01:53:56.760><c> we</c><01:53:56.880><c> can</c><01:53:57.040><c> delete</c><01:53:57.440><c> these.</c><01:53:58.000><c> And</c><01:53:58.360><c> if</c><01:53:58.480><c> we</c><01:53:58.560><c> go</c>

01:53:58.710 --> 01:53:58.720 align:start position:0%
and we can delete these. And if we go
 

01:53:58.720 --> 01:54:00.430 align:start position:0%
and we can delete these. And if we go
into<01:53:58.960><c> functions,</c><01:53:59.680><c> we</c><01:53:59.800><c> can</c><01:53:59.960><c> see</c><01:54:00.120><c> that</c><01:54:00.320><c> for</c>

01:54:00.430 --> 01:54:00.440 align:start position:0%
into functions, we can see that for
 

01:54:00.440 --> 01:54:01.950 align:start position:0%
into functions, we can see that for
snack<01:54:00.920><c> options,</c><01:54:01.400><c> it's</c><01:54:01.520><c> the</c><01:54:01.640><c> same</c>

01:54:01.950 --> 01:54:01.960 align:start position:0%
snack options, it's the same
 

01:54:01.960 --> 01:54:04.550 align:start position:0%
snack options, it's the same
pre-functions.<01:54:03.120><c> But</c><01:54:03.280><c> for</c><01:54:03.480><c> voting</c><01:54:04.120><c> room,</c><01:54:04.400><c> we</c>

01:54:04.550 --> 01:54:04.560 align:start position:0%
pre-functions. But for voting room, we
 

01:54:04.560 --> 01:54:07.070 align:start position:0%
pre-functions. But for voting room, we
have<01:54:04.800><c> get,</c><01:54:05.240><c> create,</c><01:54:05.720><c> or</c><01:54:05.800><c> join,</c><01:54:06.720><c> bunch</c><01:54:06.960><c> of</c>

01:54:07.070 --> 01:54:07.080 align:start position:0%
have get, create, or join, bunch of
 

01:54:07.080 --> 01:54:09.270 align:start position:0%
have get, create, or join, bunch of
other<01:54:07.280><c> functions</c><01:54:07.760><c> that</c><01:54:07.880><c> we</c><01:54:08.040><c> have.</c><01:54:08.480><c> And</c><01:54:08.960><c> And</c><01:54:09.120><c> so</c>

01:54:09.270 --> 01:54:09.280 align:start position:0%
other functions that we have. And And so
 

01:54:09.280 --> 01:54:10.870 align:start position:0%
other functions that we have. And And so
it<01:54:09.400><c> pretty</c><01:54:09.600><c> much</c><01:54:09.840><c> did</c><01:54:10.040><c> everything.</c><01:54:10.720><c> It</c>

01:54:10.870 --> 01:54:10.880 align:start position:0%
it pretty much did everything. It
 

01:54:10.880 --> 01:54:13.310 align:start position:0%
it pretty much did everything. It
created<01:54:11.360><c> the</c><01:54:11.480><c> functions,</c><01:54:12.600><c> it</c><01:54:12.800><c> created</c><01:54:13.240><c> the</c>

01:54:13.310 --> 01:54:13.320 align:start position:0%
created the functions, it created the
 

01:54:13.320 --> 01:54:15.670 align:start position:0%
created the functions, it created the
schema,<01:54:14.160><c> it</c><01:54:14.360><c> even,</c><01:54:14.720><c> you</c><01:54:14.840><c> know,</c><01:54:15.000><c> created</c><01:54:15.440><c> some</c>

01:54:15.670 --> 01:54:15.680 align:start position:0%
schema, it even, you know, created some
 

01:54:15.680 --> 01:54:18.830 align:start position:0%
schema, it even, you know, created some
test<01:54:16.040><c> data</c><01:54:16.960><c> while</c><01:54:17.400><c> it</c><01:54:17.600><c> was</c><01:54:17.800><c> testing.</c><01:54:18.560><c> We'll</c>

01:54:18.830 --> 01:54:18.840 align:start position:0%
test data while it was testing. We'll
 

01:54:18.840 --> 01:54:21.110 align:start position:0%
test data while it was testing. We'll
add<01:54:19.080><c> one</c><01:54:19.440><c> simple</c><01:54:20.040><c> rule</c><01:54:20.440><c> that</c><01:54:20.680><c> makes</c><01:54:21.000><c> the</c>

01:54:21.110 --> 01:54:21.120 align:start position:0%
add one simple rule that makes the
 

01:54:21.120 --> 01:54:24.590 align:start position:0%
add one simple rule that makes the
voting<01:54:21.760><c> feel</c><01:54:22.080><c> like</c><01:54:22.360><c> a</c><01:54:22.480><c> real</c><01:54:22.920><c> product.</c><01:54:24.040><c> After</c>

01:54:24.590 --> 01:54:24.600 align:start position:0%
voting feel like a real product. After
 

01:54:24.600 --> 01:54:27.750 align:start position:0%
voting feel like a real product. After
all,<01:54:24.840><c> a</c><01:54:24.920><c> person</c><01:54:25.520><c> should</c><01:54:25.800><c> not</c><01:54:26.080><c> be</c><01:54:26.200><c> able</c><01:54:26.480><c> to</c><01:54:26.640><c> spam</c>

01:54:27.750 --> 01:54:27.760 align:start position:0%
all, a person should not be able to spam
 

01:54:27.760 --> 01:54:30.670 align:start position:0%
all, a person should not be able to spam
the<01:54:27.920><c> same</c><01:54:28.440><c> room</c><01:54:29.120><c> with</c><01:54:29.320><c> repeated</c><01:54:29.800><c> votes.</c><01:54:30.520><c> And</c>

01:54:30.670 --> 01:54:30.680 align:start position:0%
the same room with repeated votes. And
 

01:54:30.680 --> 01:54:32.510 align:start position:0%
the same room with repeated votes. And
that<01:54:30.840><c> is</c><01:54:30.960><c> because</c><01:54:31.320><c> we</c><01:54:31.440><c> still</c><01:54:31.880><c> do</c><01:54:32.000><c> not</c><01:54:32.280><c> have</c>

01:54:32.510 --> 01:54:32.520 align:start position:0%
that is because we still do not have
 

01:54:32.520 --> 01:54:34.390 align:start position:0%
that is because we still do not have
real<01:54:32.760><c> authentication.</c><01:54:33.760><c> And</c><01:54:33.880><c> so</c><01:54:34.040><c> for</c><01:54:34.160><c> this</c>

01:54:34.390 --> 01:54:34.400 align:start position:0%
real authentication. And so for this
 

01:54:34.400 --> 01:54:37.830 align:start position:0%
real authentication. And so for this
tutorial,<01:54:35.320><c> a</c><01:54:35.560><c> local</c><01:54:36.160><c> or</c><01:54:36.360><c> session-based</c><01:54:37.400><c> voter</c>

01:54:37.830 --> 01:54:37.840 align:start position:0%
tutorial, a local or session-based voter
 

01:54:37.840 --> 01:54:40.190 align:start position:0%
tutorial, a local or session-based voter
identity<01:54:38.920><c> is</c><01:54:39.160><c> enough.</c><01:54:39.600><c> And</c><01:54:39.760><c> that's</c><01:54:40.040><c> what</c>

01:54:40.190 --> 01:54:40.200 align:start position:0%
identity is enough. And that's what
 

01:54:40.200 --> 01:54:42.550 align:start position:0%
identity is enough. And that's what
we're<01:54:40.360><c> going</c><01:54:40.520><c> to</c><01:54:40.600><c> be</c><01:54:40.720><c> doing</c><01:54:41.120><c> right</c><01:54:41.600><c> now.</c><01:54:42.320><c> And</c>

01:54:42.550 --> 01:54:42.560 align:start position:0%
we're going to be doing right now. And
 

01:54:42.560 --> 01:54:45.030 align:start position:0%
we're going to be doing right now. And
here's<01:54:42.920><c> my</c><01:54:43.080><c> next</c><01:54:43.480><c> prompt.</c><01:54:44.600><c> We're</c><01:54:44.800><c> going</c><01:54:44.920><c> to</c>

01:54:45.030 --> 01:54:45.040 align:start position:0%
here's my next prompt. We're going to
 

01:54:45.040 --> 01:54:48.110 align:start position:0%
here's my next prompt. We're going to
upgrade<01:54:45.600><c> snack</c><01:54:46.000><c> votes,</c><01:54:46.560><c> so</c><01:54:46.880><c> each</c><01:54:47.280><c> person</c><01:54:47.880><c> can</c>

01:54:48.110 --> 01:54:48.120 align:start position:0%
upgrade snack votes, so each person can
 

01:54:48.120 --> 01:54:51.270 align:start position:0%
upgrade snack votes, so each person can
only<01:54:48.560><c> have</c><01:54:48.840><c> one</c><01:54:49.240><c> active</c><01:54:49.720><c> vote</c><01:54:50.200><c> per</c><01:54:50.400><c> room.</c><01:54:50.880><c> Jump</c>

01:54:51.270 --> 01:54:51.280 align:start position:0%
only have one active vote per room. Jump
 

01:54:51.280 --> 01:54:54.590 align:start position:0%
only have one active vote per room. Jump
into<01:54:51.560><c> plan</c><01:54:51.920><c> mode.</c><01:54:52.760><c> Run</c><01:54:53.160><c> that.</c><01:54:53.640><c> So</c><01:54:54.040><c> here's</c><01:54:54.480><c> the</c>

01:54:54.590 --> 01:54:54.600 align:start position:0%
into plan mode. Run that. So here's the
 

01:54:54.600 --> 01:54:57.590 align:start position:0%
into plan mode. Run that. So here's the
plan.<01:54:55.120><c> One</c><01:54:55.640><c> active</c><01:54:56.200><c> vote</c><01:54:56.600><c> per</c><01:54:56.800><c> room.</c><01:54:57.240><c> Add</c><01:54:57.480><c> a</c>

01:54:57.590 --> 01:54:57.600 align:start position:0%
plan. One active vote per room. Add a
 

01:54:57.600 --> 01:55:00.270 align:start position:0%
plan. One active vote per room. Add a
lightweight<01:54:58.400><c> session-based</c><01:54:59.360><c> voting</c><01:54:59.800><c> rule.</c>

01:55:00.270 --> 01:55:00.280 align:start position:0%
lightweight session-based voting rule.
 

01:55:00.280 --> 01:55:03.350 align:start position:0%
lightweight session-based voting rule.
Each<01:55:00.600><c> browser</c><01:55:01.160><c> session</c><01:55:01.600><c> gets</c><01:55:01.960><c> a</c><01:55:02.040><c> session</c><01:55:02.520><c> ID</c>

01:55:03.350 --> 01:55:03.360 align:start position:0%
Each browser session gets a session ID
 

01:55:03.360 --> 01:55:07.590 align:start position:0%
Each browser session gets a session ID
and<01:55:03.560><c> Convex</c><01:55:04.600><c> stores</c><01:55:05.400><c> one</c><01:55:06.240><c> active</c><01:55:06.800><c> vote</c><01:55:07.240><c> per</c>

01:55:07.590 --> 01:55:07.600 align:start position:0%
and Convex stores one active vote per
 

01:55:07.600 --> 01:55:09.870 align:start position:0%
and Convex stores one active vote per
room<01:55:07.960><c> ID</c><01:55:08.280><c> and</c><01:55:08.480><c> session</c><01:55:08.880><c> ID,</c><01:55:09.160><c> right?</c><01:55:09.480><c> So,</c><01:55:09.600><c> this</c>

01:55:09.870 --> 01:55:09.880 align:start position:0%
room ID and session ID, right? So, this
 

01:55:09.880 --> 01:55:12.310 align:start position:0%
room ID and session ID, right? So, this
needs<01:55:10.240><c> to</c><01:55:10.360><c> be</c><01:55:10.520><c> unique.</c><01:55:11.160><c> So,</c><01:55:11.280><c> if</c><01:55:11.440><c> I</c><01:55:11.560><c> voted</c><01:55:12.160><c> in</c>

01:55:12.310 --> 01:55:12.320 align:start position:0%
needs to be unique. So, if I voted in
 

01:55:12.320 --> 01:55:15.790 align:start position:0%
needs to be unique. So, if I voted in
that<01:55:12.600><c> room,</c><01:55:13.520><c> my</c><01:55:13.800><c> session</c><01:55:14.320><c> ID</c><01:55:15.080><c> was</c><01:55:15.320><c> used</c><01:55:15.680><c> to</c>

01:55:15.790 --> 01:55:15.800 align:start position:0%
that room, my session ID was used to
 

01:55:15.800 --> 01:55:17.950 align:start position:0%
that room, my session ID was used to
vote.<01:55:16.320><c> And</c><01:55:16.440><c> so,</c><01:55:16.600><c> this</c><01:55:17.000><c> needs</c><01:55:17.280><c> to</c><01:55:17.360><c> be</c><01:55:17.520><c> unique.</c>

01:55:17.950 --> 01:55:17.960 align:start position:0%
vote. And so, this needs to be unique.
 

01:55:17.960 --> 01:55:20.910 align:start position:0%
vote. And so, this needs to be unique.
So,<01:55:18.600><c> for</c><01:55:18.760><c> that</c><01:55:19.120><c> room,</c><01:55:19.520><c> my</c><01:55:19.800><c> session</c><01:55:20.320><c> can</c><01:55:20.560><c> only</c>

01:55:20.910 --> 01:55:20.920 align:start position:0%
So, for that room, my session can only
 

01:55:20.920 --> 01:55:24.310 align:start position:0%
So, for that room, my session can only
happen<01:55:21.280><c> twice.</c><01:55:22.280><c> If</c><01:55:22.400><c> there's</c><01:55:22.720><c> a</c><01:55:22.840><c> chance</c><01:55:23.880><c> for</c><01:55:24.200><c> a</c>

01:55:24.310 --> 01:55:24.320 align:start position:0%
happen twice. If there's a chance for a
 

01:55:24.320 --> 01:55:26.190 align:start position:0%
happen twice. If there's a chance for a
repeat,<01:55:24.960><c> it's</c><01:55:25.160><c> not</c><01:55:25.320><c> going</c><01:55:25.440><c> to</c><01:55:25.560><c> count</c><01:55:25.960><c> it.</c>

01:55:26.190 --> 01:55:26.200 align:start position:0%
repeat, it's not going to count it.
 

01:55:26.200 --> 01:55:28.590 align:start position:0%
repeat, it's not going to count it.
Yeah,<01:55:26.360><c> I</c><01:55:26.440><c> can</c><01:55:26.640><c> vote</c><01:55:26.880><c> in</c><01:55:26.960><c> other</c><01:55:27.280><c> rooms,</c><01:55:28.160><c> but</c><01:55:28.440><c> per</c>

01:55:28.590 --> 01:55:28.600 align:start position:0%
Yeah, I can vote in other rooms, but per
 

01:55:28.600 --> 01:55:31.470 align:start position:0%
Yeah, I can vote in other rooms, but per
session<01:55:29.200><c> per</c><01:55:29.480><c> room</c><01:55:30.200><c> can</c><01:55:30.360><c> only</c><01:55:30.640><c> happen</c><01:55:31.040><c> once.</c>

01:55:31.470 --> 01:55:31.480 align:start position:0%
session per room can only happen once.
 

01:55:31.480 --> 01:55:33.470 align:start position:0%
session per room can only happen once.
We're<01:55:31.600><c> going</c><01:55:31.720><c> to</c><01:55:31.800><c> expand</c><01:55:32.440><c> this.</c><01:55:32.720><c> Looks</c><01:55:32.960><c> good.</c>

01:55:33.470 --> 01:55:33.480 align:start position:0%
We're going to expand this. Looks good.
 

01:55:33.480 --> 01:55:35.790 align:start position:0%
We're going to expand this. Looks good.
And<01:55:33.960><c> submit</c><01:55:34.640><c> this.</c><01:55:35.040><c> So,</c><01:55:35.160><c> it</c><01:55:35.280><c> is</c><01:55:35.440><c> done.</c>

01:55:35.790 --> 01:55:35.800 align:start position:0%
And submit this. So, it is done.
 

01:55:35.800 --> 01:55:39.270 align:start position:0%
And submit this. So, it is done.
Implemented<01:55:36.960><c> one</c><01:55:37.480><c> active</c><01:55:38.000><c> vote</c><01:55:38.440><c> per</c><01:55:38.640><c> room.</c>

01:55:39.270 --> 01:55:39.280 align:start position:0%
Implemented one active vote per room.
 

01:55:39.280 --> 01:55:42.150 align:start position:0%
Implemented one active vote per room.
Okay,<01:55:39.560><c> change</c><01:55:40.080><c> this.</c><01:55:40.640><c> What</c><01:55:41.000><c> changed?</c><01:55:41.760><c> And</c><01:55:41.960><c> it</c>

01:55:42.150 --> 01:55:42.160 align:start position:0%
Okay, change this. What changed? And it
 

01:55:42.160 --> 01:55:45.110 align:start position:0%
Okay, change this. What changed? And it
added<01:55:42.480><c> this</c><01:55:42.720><c> get</c><01:55:43.000><c> my</c><01:55:43.240><c> vote.</c><01:55:44.000><c> Added</c><01:55:44.440><c> votes</c><01:55:44.880><c> with</c>

01:55:45.110 --> 01:55:45.120 align:start position:0%
added this get my vote. Added votes with
 

01:55:45.120 --> 01:55:47.390 align:start position:0%
added this get my vote. Added votes with
table.<01:55:45.920><c> So,</c><01:55:46.120><c> let's</c><01:55:46.360><c> go</c><01:55:46.480><c> ahead</c><01:55:46.760><c> and</c><01:55:46.880><c> try</c><01:55:47.080><c> this</c>

01:55:47.390 --> 01:55:47.400 align:start position:0%
table. So, let's go ahead and try this
 

01:55:47.400 --> 01:55:49.670 align:start position:0%
table. So, let's go ahead and try this
out.<01:55:47.840><c> Open</c><01:55:48.200><c> this</c><01:55:48.440><c> here.</c><01:55:48.960><c> So,</c><01:55:49.040><c> let's</c><01:55:49.240><c> say</c><01:55:49.400><c> I</c><01:55:49.480><c> go</c>

01:55:49.670 --> 01:55:49.680 align:start position:0%
out. Open this here. So, let's say I go
 

01:55:49.680 --> 01:55:52.030 align:start position:0%
out. Open this here. So, let's say I go
to<01:55:49.840><c> another</c><01:55:50.200><c> room,</c><01:55:50.440><c> friend</c><01:55:50.880><c> Friday</c><01:55:51.320><c> lunch.</c><01:55:51.920><c> I</c>

01:55:52.030 --> 01:55:52.040 align:start position:0%
to another room, friend Friday lunch. I
 

01:55:52.040 --> 01:55:54.390 align:start position:0%
to another room, friend Friday lunch. I
switch<01:55:52.520><c> that</c><01:55:52.800><c> room</c><01:55:53.280><c> and</c><01:55:53.480><c> I</c><01:55:53.560><c> have</c><01:55:53.760><c> my</c><01:55:53.920><c> burrito.</c>

01:55:54.390 --> 01:55:54.400 align:start position:0%
switch that room and I have my burrito.
 

01:55:54.400 --> 01:55:56.150 align:start position:0%
switch that room and I have my burrito.
So,<01:55:54.520><c> I'm</c><01:55:54.640><c> going</c><01:55:54.760><c> to</c><01:55:54.880><c> vote</c><01:55:55.240><c> for</c><01:55:55.360><c> this.</c><01:55:55.800><c> I</c><01:55:55.880><c> just</c>

01:55:56.150 --> 01:55:56.160 align:start position:0%
So, I'm going to vote for this. I just
 

01:55:56.160 --> 01:55:58.390 align:start position:0%
So, I'm going to vote for this. I just
voted<01:55:56.560><c> and</c><01:55:56.720><c> I</c><01:55:56.800><c> can't</c><01:55:57.160><c> vote</c><01:55:57.440><c> again.</c><01:55:58.040><c> You</c><01:55:58.200><c> see</c>

01:55:58.390 --> 01:55:58.400 align:start position:0%
voted and I can't vote again. You see
 

01:55:58.400 --> 01:56:01.230 align:start position:0%
voted and I can't vote again. You see
that?<01:55:58.880><c> I</c><01:55:59.000><c> can't</c><01:55:59.320><c> vote</c><01:55:59.560><c> again</c><01:56:00.400><c> because</c><01:56:00.680><c> if</c><01:56:00.880><c> I</c><01:56:01.000><c> go</c>

01:56:01.230 --> 01:56:01.240 align:start position:0%
that? I can't vote again because if I go
 

01:56:01.240 --> 01:56:04.390 align:start position:0%
that? I can't vote again because if I go
to<01:56:01.440><c> Convex</c><01:56:02.320><c> and</c><01:56:02.640><c> I</c><01:56:02.720><c> go</c><01:56:02.880><c> into</c><01:56:03.160><c> data</c><01:56:04.000><c> and</c><01:56:04.160><c> I</c><01:56:04.240><c> go</c>

01:56:04.390 --> 01:56:04.400 align:start position:0%
to Convex and I go into data and I go
 

01:56:04.400 --> 01:56:07.950 align:start position:0%
to Convex and I go into data and I go
into<01:56:04.760><c> votes,</c><01:56:05.840><c> I</c><01:56:06.080><c> should</c><01:56:06.400><c> see</c><01:56:06.880><c> a</c><01:56:07.040><c> session</c><01:56:07.640><c> ID</c>

01:56:07.950 --> 01:56:07.960 align:start position:0%
into votes, I should see a session ID
 

01:56:07.960 --> 01:56:10.710 align:start position:0%
into votes, I should see a session ID
with<01:56:08.240><c> room</c><01:56:08.560><c> ID.</c><01:56:09.520><c> So,</c><01:56:10.000><c> let</c><01:56:10.160><c> me</c><01:56:10.280><c> go</c><01:56:10.400><c> ahead</c><01:56:10.640><c> and</c>

01:56:10.710 --> 01:56:10.720 align:start position:0%
with room ID. So, let me go ahead and
 

01:56:10.720 --> 01:56:12.390 align:start position:0%
with room ID. So, let me go ahead and
delete<01:56:11.080><c> all</c><01:56:11.240><c> of</c><01:56:11.320><c> these</c>

01:56:12.390 --> 01:56:12.400 align:start position:0%
delete all of these
 

01:56:12.400 --> 01:56:14.270 align:start position:0%
delete all of these
so<01:56:12.520><c> that</c><01:56:12.680><c> we</c><01:56:12.800><c> can</c><01:56:12.960><c> see</c><01:56:13.120><c> which</c><01:56:13.360><c> one</c><01:56:13.520><c> is</c><01:56:13.640><c> mine.</c>

01:56:14.270 --> 01:56:14.280 align:start position:0%
so that we can see which one is mine.
 

01:56:14.280 --> 01:56:15.870 align:start position:0%
so that we can see which one is mine.
And<01:56:14.440><c> so,</c><01:56:14.520><c> now</c><01:56:14.800><c> I</c><01:56:14.880><c> can</c><01:56:15.080><c> vote</c><01:56:15.320><c> again.</c><01:56:15.600><c> You</c><01:56:15.680><c> see</c>

01:56:15.870 --> 01:56:15.880 align:start position:0%
And so, now I can vote again. You see
 

01:56:15.880 --> 01:56:17.710 align:start position:0%
And so, now I can vote again. You see
it's<01:56:16.080><c> back</c><01:56:16.400><c> up.</c><01:56:16.600><c> It's</c><01:56:16.800><c> it's</c><01:56:17.160><c> it's</c><01:56:17.560><c> uh</c>

01:56:17.710 --> 01:56:17.720 align:start position:0%
it's back up. It's it's it's uh
 

01:56:17.720 --> 01:56:20.430 align:start position:0%
it's back up. It's it's it's uh
reactive.<01:56:18.920><c> I'm</c><01:56:18.960><c> going</c><01:56:19.080><c> to</c><01:56:19.160><c> hit</c><01:56:19.320><c> vote.</c>

01:56:20.430 --> 01:56:20.440 align:start position:0%
reactive. I'm going to hit vote.
 

01:56:20.440 --> 01:56:22.790 align:start position:0%
reactive. I'm going to hit vote.
And<01:56:20.600><c> now</c><01:56:21.000><c> you</c><01:56:21.120><c> see</c><01:56:21.360><c> room</c><01:56:21.720><c> ID</c>

01:56:22.790 --> 01:56:22.800 align:start position:0%
And now you see room ID
 

01:56:22.800 --> 01:56:25.830 align:start position:0%
And now you see room ID
and<01:56:23.000><c> session</c><01:56:23.520><c> ID.</c><01:56:23.840><c> These</c><01:56:24.400><c> two,</c><01:56:25.000><c> if</c><01:56:25.480><c> they</c><01:56:25.640><c> can</c>

01:56:25.830 --> 01:56:25.840 align:start position:0%
and session ID. These two, if they can
 

01:56:25.840 --> 01:56:28.550 align:start position:0%
and session ID. These two, if they can
only<01:56:26.080><c> appear</c><01:56:26.480><c> once</c><01:56:26.920><c> in</c><01:56:27.080><c> this</c><01:56:27.280><c> table.</c><01:56:28.000><c> And</c><01:56:28.200><c> so,</c>

01:56:28.550 --> 01:56:28.560 align:start position:0%
only appear once in this table. And so,
 

01:56:28.560 --> 01:56:31.070 align:start position:0%
only appear once in this table. And so,
obviously<01:56:29.200><c> now</c><01:56:29.520><c> it's</c><01:56:29.800><c> knows</c><01:56:30.160><c> that</c><01:56:30.400><c> my</c><01:56:30.600><c> session</c>

01:56:31.070 --> 01:56:31.080 align:start position:0%
obviously now it's knows that my session
 

01:56:31.080 --> 01:56:33.230 align:start position:0%
obviously now it's knows that my session
ID<01:56:31.320><c> and</c><01:56:31.440><c> I'm</c><01:56:31.600><c> trying</c><01:56:31.920><c> to</c><01:56:32.040><c> vote</c><01:56:32.360><c> for</c><01:56:32.480><c> this</c><01:56:32.800><c> one</c>

01:56:33.230 --> 01:56:33.240 align:start position:0%
ID and I'm trying to vote for this one
 

01:56:33.240 --> 01:56:34.870 align:start position:0%
ID and I'm trying to vote for this one
and<01:56:33.400><c> that's</c><01:56:33.720><c> not</c><01:56:33.880><c> going</c><01:56:34.000><c> to</c><01:56:34.120><c> work</c><01:56:34.440><c> because</c><01:56:34.760><c> I'm</c>

01:56:34.870 --> 01:56:34.880 align:start position:0%
and that's not going to work because I'm
 

01:56:34.880 --> 01:56:36.830 align:start position:0%
and that's not going to work because I'm
in<01:56:35.000><c> this</c><01:56:35.240><c> room.</c><01:56:35.840><c> I'm</c><01:56:36.040><c> in</c><01:56:36.160><c> this</c><01:56:36.400><c> room</c><01:56:36.600><c> here,</c>

01:56:36.830 --> 01:56:36.840 align:start position:0%
in this room. I'm in this room here,
 

01:56:36.840 --> 01:56:39.630 align:start position:0%
in this room. I'm in this room here,
Friday<01:56:37.200><c> lunch.</c><01:56:37.800><c> Friday</c><01:56:38.200><c> lunch</c><01:56:38.520><c> right</c><01:56:38.760><c> there.</c>

01:56:39.630 --> 01:56:39.640 align:start position:0%
Friday lunch. Friday lunch right there.
 

01:56:39.640 --> 01:56:42.710 align:start position:0%
Friday lunch. Friday lunch right there.
Now,<01:56:40.040><c> if</c><01:56:40.280><c> I</c><01:56:40.360><c> switch</c><01:56:41.000><c> rooms,</c><01:56:41.640><c> let's</c><01:56:42.040><c> so</c><01:56:42.400><c> let's</c>

01:56:42.710 --> 01:56:42.720 align:start position:0%
Now, if I switch rooms, let's so let's
 

01:56:42.720 --> 01:56:44.750 align:start position:0%
Now, if I switch rooms, let's so let's
say<01:56:43.040><c> I</c><01:56:43.120><c> go</c><01:56:43.360><c> to</c><01:56:43.520><c> another</c><01:56:43.920><c> room.</c><01:56:44.120><c> Let's</c><01:56:44.360><c> say</c><01:56:44.520><c> I</c><01:56:44.600><c> go</c>

01:56:44.750 --> 01:56:44.760 align:start position:0%
say I go to another room. Let's say I go
 

01:56:44.760 --> 01:56:47.910 align:start position:0%
say I go to another room. Let's say I go
into<01:56:45.040><c> Sunday</c><01:56:45.600><c> brunch.</c><01:56:46.280><c> Now,</c><01:56:46.920><c> I</c><01:56:47.040><c> can</c><01:56:47.280><c> vote,</c>

01:56:47.910 --> 01:56:47.920 align:start position:0%
into Sunday brunch. Now, I can vote,
 

01:56:47.920 --> 01:56:49.710 align:start position:0%
into Sunday brunch. Now, I can vote,
right?<01:56:48.280><c> I</c><01:56:48.360><c> can</c><01:56:48.560><c> vote</c><01:56:48.840><c> for</c><01:56:49.000><c> anything.</c><01:56:49.440><c> I</c><01:56:49.520><c> can</c>

01:56:49.710 --> 01:56:49.720 align:start position:0%
right? I can vote for anything. I can
 

01:56:49.720 --> 01:56:53.430 align:start position:0%
right? I can vote for anything. I can
say<01:56:50.280><c> tacos.</c><01:56:51.040><c> Submit.</c><01:56:51.800><c> I</c><01:56:51.920><c> can</c><01:56:52.120><c> vote</c><01:56:52.520><c> here.</c><01:56:53.120><c> And</c>

01:56:53.430 --> 01:56:53.440 align:start position:0%
say tacos. Submit. I can vote here. And
 

01:56:53.440 --> 01:56:55.190 align:start position:0%
say tacos. Submit. I can vote here. And
let's<01:56:53.640><c> say</c><01:56:53.760><c> I</c><01:56:53.840><c> create</c><01:56:54.120><c> another</c><01:56:54.480><c> one.</c><01:56:54.880><c> I</c><01:56:55.000><c> I</c>

01:56:55.190 --> 01:56:55.200 align:start position:0%
let's say I create another one. I I
 

01:56:55.200 --> 01:56:58.270 align:start position:0%
let's say I create another one. I I
change<01:56:55.640><c> my</c><01:56:55.840><c> vote.</c><01:56:56.320><c> Yes,</c><01:56:56.520><c> I</c><01:56:56.720><c> can</c><01:56:56.880><c> switch</c><01:56:57.320><c> votes,</c>

01:56:58.270 --> 01:56:58.280 align:start position:0%
change my vote. Yes, I can switch votes,
 

01:56:58.280 --> 01:57:00.710 align:start position:0%
change my vote. Yes, I can switch votes,
but<01:56:58.480><c> I</c><01:56:58.560><c> cannot</c><01:56:59.160><c> pad,</c><01:57:00.240><c> you</c><01:57:00.360><c> know,</c><01:57:00.520><c> with</c>

01:57:00.710 --> 01:57:00.720 align:start position:0%
but I cannot pad, you know, with
 

01:57:00.720 --> 01:57:03.830 align:start position:0%
but I cannot pad, you know, with
multiple<01:57:01.320><c> votes</c><01:57:02.160><c> an</c><01:57:02.440><c> item.</c><01:57:03.040><c> And</c><01:57:03.240><c> so,</c><01:57:03.400><c> if</c><01:57:03.600><c> I</c><01:57:03.640><c> go</c>

01:57:03.830 --> 01:57:03.840 align:start position:0%
multiple votes an item. And so, if I go
 

01:57:03.840 --> 01:57:05.470 align:start position:0%
multiple votes an item. And so, if I go
back<01:57:04.080><c> here,</c><01:57:04.280><c> now</c><01:57:04.480><c> there</c><01:57:04.640><c> are</c><01:57:04.720><c> two</c><01:57:04.960><c> options,</c>

01:57:05.470 --> 01:57:05.480 align:start position:0%
back here, now there are two options,
 

01:57:05.480 --> 01:57:07.910 align:start position:0%
back here, now there are two options,
right?<01:57:05.840><c> Two</c><01:57:06.000><c> different</c><01:57:06.440><c> rooms,</c><01:57:07.040><c> same</c><01:57:07.440><c> session</c>

01:57:07.910 --> 01:57:07.920 align:start position:0%
right? Two different rooms, same session
 

01:57:07.920 --> 01:57:11.070 align:start position:0%
right? Two different rooms, same session
ID,<01:57:08.600><c> but</c><01:57:08.760><c> I</c><01:57:08.840><c> cannot</c><01:57:09.240><c> vote</c><01:57:09.720><c> in</c><01:57:09.840><c> the</c><01:57:09.960><c> same</c><01:57:10.360><c> room</c>

01:57:11.070 --> 01:57:11.080 align:start position:0%
ID, but I cannot vote in the same room
 

01:57:11.080 --> 01:57:13.790 align:start position:0%
ID, but I cannot vote in the same room
more<01:57:11.320><c> than</c><01:57:11.560><c> once.</c><01:57:12.200><c> So,</c><01:57:12.360><c> this</c><01:57:12.720><c> works</c><01:57:13.240><c> really,</c>

01:57:13.790 --> 01:57:13.800 align:start position:0%
more than once. So, this works really,
 

01:57:13.800 --> 01:57:16.550 align:start position:0%
more than once. So, this works really,
really<01:57:14.160><c> nice.</c><01:57:14.880><c> And</c><01:57:15.080><c> finally,</c><01:57:15.720><c> we'll</c><01:57:16.040><c> add</c><01:57:16.440><c> a</c>

01:57:16.550 --> 01:57:16.560 align:start position:0%
really nice. And finally, we'll add a
 

01:57:16.560 --> 01:57:20.190 align:start position:0%
really nice. And finally, we'll add a
deadline,<01:57:17.400><c> so</c><01:57:17.720><c> each</c><01:57:18.120><c> room</c><01:57:18.480><c> has</c><01:57:18.720><c> a</c><01:57:18.840><c> moment</c><01:57:19.840><c> when</c>

01:57:20.190 --> 01:57:20.200 align:start position:0%
deadline, so each room has a moment when
 

01:57:20.200 --> 01:57:23.070 align:start position:0%
deadline, so each room has a moment when
voting<01:57:20.680><c> closes.</c><01:57:21.840><c> Before</c><01:57:22.400><c> the</c><01:57:22.520><c> deadline,</c>

01:57:23.070 --> 01:57:23.080 align:start position:0%
voting closes. Before the deadline,
 

01:57:23.080 --> 01:57:25.510 align:start position:0%
voting closes. Before the deadline,
people<01:57:23.440><c> can</c><01:57:23.640><c> submit</c><01:57:24.160><c> and</c><01:57:24.320><c> vote.</c><01:57:25.000><c> After</c><01:57:25.360><c> the</c>

01:57:25.510 --> 01:57:25.520 align:start position:0%
people can submit and vote. After the
 

01:57:25.520 --> 01:57:28.670 align:start position:0%
people can submit and vote. After the
deadline,<01:57:26.160><c> voting</c><01:57:26.680><c> locks</c><01:57:27.640><c> and</c><01:57:27.840><c> the</c><01:57:27.960><c> app</c><01:57:28.280><c> shows</c>

01:57:28.670 --> 01:57:28.680 align:start position:0%
deadline, voting locks and the app shows
 

01:57:28.680 --> 01:57:32.310 align:start position:0%
deadline, voting locks and the app shows
the<01:57:28.840><c> winner</c><01:57:29.600><c> or</c><01:57:30.000><c> a</c><01:57:30.120><c> simple</c><01:57:30.760><c> tie</c><01:57:31.200><c> state.</c><01:57:31.960><c> This</c>

01:57:32.310 --> 01:57:32.320 align:start position:0%
the winner or a simple tie state. This
 

01:57:32.320 --> 01:57:35.430 align:start position:0%
the winner or a simple tie state. This
adds<01:57:32.760><c> time-based</c><01:57:33.600><c> product</c><01:57:34.080><c> state</c><01:57:34.920><c> without</c>

01:57:35.430 --> 01:57:35.440 align:start position:0%
adds time-based product state without
 

01:57:35.440 --> 01:57:37.630 align:start position:0%
adds time-based product state without
becoming<01:57:35.960><c> a</c><01:57:36.080><c> scheduling</c><01:57:36.840><c> system.</c><01:57:37.400><c> It</c><01:57:37.520><c> is</c>

01:57:37.630 --> 01:57:37.640 align:start position:0%
becoming a scheduling system. It is
 

01:57:37.640 --> 01:57:40.030 align:start position:0%
becoming a scheduling system. It is
still<01:57:37.920><c> a</c><01:57:38.000><c> small</c><01:57:38.600><c> group</c><01:57:38.840><c> decision</c><01:57:39.400><c> app,</c><01:57:39.840><c> but</c>

01:57:40.030 --> 01:57:40.040 align:start position:0%
still a small group decision app, but
 

01:57:40.040 --> 01:57:42.230 align:start position:0%
still a small group decision app, but
now<01:57:40.280><c> it</c><01:57:40.440><c> shows</c><01:57:40.920><c> how</c><01:57:41.120><c> front-end</c><01:57:41.600><c> UI</c><01:57:42.040><c> and</c>

01:57:42.230 --> 01:57:42.240 align:start position:0%
now it shows how front-end UI and
 

01:57:42.240 --> 01:57:45.470 align:start position:0%
now it shows how front-end UI and
back-end<01:57:42.680><c> data</c><01:57:43.080><c> can</c><01:57:43.320><c> derive</c><01:57:43.920><c> open,</c><01:57:44.720><c> closed,</c>

01:57:45.470 --> 01:57:45.480 align:start position:0%
back-end data can derive open, closed,
 

01:57:45.480 --> 01:57:49.310 align:start position:0%
back-end data can derive open, closed,
winner,<01:57:45.960><c> and</c><01:57:46.240><c> tie</c><01:57:46.560><c> states</c><01:57:47.640><c> from</c><01:57:48.000><c> one</c><01:57:48.520><c> field.</c>

01:57:49.310 --> 01:57:49.320 align:start position:0%
winner, and tie states from one field.
 

01:57:49.320 --> 01:57:50.870 align:start position:0%
winner, and tie states from one field.
And<01:57:49.560><c> here's</c><01:57:49.920><c> the</c><01:57:50.040><c> prompt</c><01:57:50.400><c> that</c><01:57:50.560><c> we're</c><01:57:50.720><c> going</c>

01:57:50.870 --> 01:57:50.880 align:start position:0%
And here's the prompt that we're going
 

01:57:50.880 --> 01:57:52.990 align:start position:0%
And here's the prompt that we're going
to<01:57:50.960><c> be</c><01:57:51.080><c> using.</c><01:57:51.800><c> I'm</c><01:57:51.880><c> going</c><01:57:52.000><c> to</c><01:57:52.040><c> switch</c><01:57:52.560><c> into</c>

01:57:52.990 --> 01:57:53.000 align:start position:0%
to be using. I'm going to switch into
 

01:57:53.000 --> 01:57:55.710 align:start position:0%
to be using. I'm going to switch into
plan<01:57:53.400><c> mode,</c><01:57:54.000><c> run</c><01:57:54.320><c> this.</c><01:57:54.920><c> Oh,</c><01:57:55.000><c> it</c><01:57:55.200><c> needs</c><01:57:55.600><c> a</c>

01:57:55.710 --> 01:57:55.720 align:start position:0%
plan mode, run this. Oh, it needs a
 

01:57:55.720 --> 01:57:58.510 align:start position:0%
plan mode, run this. Oh, it needs a
product<01:57:56.280><c> decision.</c><01:57:56.840><c> Okay,</c><01:57:57.120><c> how</c><01:57:57.440><c> should</c><01:57:57.760><c> users</c>

01:57:58.510 --> 01:57:58.520 align:start position:0%
product decision. Okay, how should users
 

01:57:58.520 --> 01:58:00.990 align:start position:0%
product decision. Okay, how should users
set<01:57:59.040><c> a</c><01:57:59.160><c> room</c><01:57:59.520><c> deadline</c><01:58:00.160><c> in</c><01:58:00.360><c> this</c><01:58:00.600><c> small</c>

01:58:00.990 --> 01:58:01.000 align:start position:0%
set a room deadline in this small
 

01:58:01.000 --> 01:58:04.750 align:start position:0%
set a room deadline in this small
tutorial<01:58:01.680><c> version?</c><01:58:02.680><c> Quick</c><01:58:03.000><c> durations,</c><01:58:04.360><c> okay,</c>

01:58:04.750 --> 01:58:04.760 align:start position:0%
tutorial version? Quick durations, okay,
 

01:58:04.760 --> 01:58:06.990 align:start position:0%
tutorial version? Quick durations, okay,
add<01:58:05.040><c> simple</c><01:58:05.480><c> buttons</c><01:58:05.920><c> like</c><01:58:06.200><c> 1</c><01:58:06.440><c> minute,</c><01:58:06.760><c> 5</c>

01:58:06.990 --> 01:58:07.000 align:start position:0%
add simple buttons like 1 minute, 5
 

01:58:07.000 --> 01:58:08.990 align:start position:0%
add simple buttons like 1 minute, 5
minutes,<01:58:07.280><c> 15</c><01:58:07.600><c> minutes</c><01:58:08.160><c> when</c><01:58:08.520><c> creating</c>

01:58:08.990 --> 01:58:09.000 align:start position:0%
minutes, 15 minutes when creating
 

01:58:09.000 --> 01:58:11.710 align:start position:0%
minutes, 15 minutes when creating
opening<01:58:09.440><c> a</c><01:58:09.520><c> room,</c><01:58:10.080><c> date</c><01:58:10.480><c> time</c><01:58:10.920><c> input,</c><01:58:11.480><c> or</c>

01:58:11.710 --> 01:58:11.720 align:start position:0%
opening a room, date time input, or
 

01:58:11.720 --> 01:58:14.630 align:start position:0%
opening a room, date time input, or
fixed<01:58:12.440><c> default.</c><01:58:12.920><c> Let's</c><01:58:13.200><c> do</c><01:58:13.360><c> quick</c><01:58:13.680><c> durations.</c>

01:58:14.630 --> 01:58:14.640 align:start position:0%
fixed default. Let's do quick durations.
 

01:58:14.640 --> 01:58:16.950 align:start position:0%
fixed default. Let's do quick durations.
That<01:58:14.880><c> sounds</c><01:58:15.200><c> good.</c><01:58:15.640><c> Let's</c><01:58:15.960><c> implement</c><01:58:16.480><c> this.</c>

01:58:16.950 --> 01:58:16.960 align:start position:0%
That sounds good. Let's implement this.
 

01:58:16.960 --> 01:58:19.430 align:start position:0%
That sounds good. Let's implement this.
And<01:58:17.360><c> it</c><01:58:17.520><c> is</c><01:58:17.680><c> complete.</c><01:58:18.320><c> Implemented</c><01:58:19.040><c> simple</c>

01:58:19.430 --> 01:58:19.440 align:start position:0%
And it is complete. Implemented simple
 

01:58:19.440 --> 01:58:21.470 align:start position:0%
And it is complete. Implemented simple
voting<01:58:20.000><c> deadlines.</c><01:58:20.760><c> This</c><01:58:20.960><c> is</c><01:58:21.120><c> what</c><01:58:21.280><c> was</c>

01:58:21.470 --> 01:58:21.480 align:start position:0%
voting deadlines. This is what was
 

01:58:21.480 --> 01:58:24.710 align:start position:0%
voting deadlines. This is what was
changed.<01:58:22.480><c> Added</c><01:58:22.960><c> quick</c><01:58:23.480><c> deadline</c><01:58:24.040><c> choices,</c>

01:58:24.710 --> 01:58:24.720 align:start position:0%
changed. Added quick deadline choices,
 

01:58:24.720 --> 01:58:27.790 align:start position:0%
changed. Added quick deadline choices,
no<01:58:25.000><c> deadline,</c><01:58:25.640><c> 1</c><01:58:25.960><c> minute,</c><01:58:26.440><c> 5</c><01:58:26.800><c> minutes,</c><01:58:27.320><c> 15</c>

01:58:27.790 --> 01:58:27.800 align:start position:0%
no deadline, 1 minute, 5 minutes, 15
 

01:58:27.800 --> 01:58:30.790 align:start position:0%
no deadline, 1 minute, 5 minutes, 15
minutes.<01:58:28.440><c> All</c><01:58:28.800><c> of</c><01:58:28.960><c> this,</c><01:58:29.520><c> and</c><01:58:29.880><c> let's</c><01:58:30.120><c> go</c><01:58:30.280><c> ahead</c>

01:58:30.790 --> 01:58:30.800 align:start position:0%
minutes. All of this, and let's go ahead
 

01:58:30.800 --> 01:58:33.030 align:start position:0%
minutes. All of this, and let's go ahead
and<01:58:31.040><c> see</c><01:58:31.240><c> how</c><01:58:31.400><c> this</c><01:58:31.680><c> works.</c><01:58:32.360><c> All</c><01:58:32.440><c> right,</c><01:58:32.840><c> so</c>

01:58:33.030 --> 01:58:33.040 align:start position:0%
and see how this works. All right, so
 

01:58:33.040 --> 01:58:35.310 align:start position:0%
and see how this works. All right, so
here<01:58:33.360><c> we</c><01:58:33.560><c> are.</c><01:58:34.000><c> And</c><01:58:34.520><c> let's</c><01:58:34.760><c> go</c><01:58:34.880><c> ahead</c><01:58:35.200><c> and</c>

01:58:35.310 --> 01:58:35.320 align:start position:0%
here we are. And let's go ahead and
 

01:58:35.320 --> 01:58:38.110 align:start position:0%
here we are. And let's go ahead and
create<01:58:35.680><c> a</c><01:58:35.760><c> room,</c><01:58:36.160><c> Friday</c><01:58:36.680><c> lunch,</c><01:58:37.320><c> and</c><01:58:37.920><c> let's</c>

01:58:38.110 --> 01:58:38.120 align:start position:0%
create a room, Friday lunch, and let's
 

01:58:38.120 --> 01:58:40.950 align:start position:0%
create a room, Friday lunch, and let's
say<01:58:38.280><c> it's</c><01:58:38.520><c> 5</c><01:58:38.800><c> minutes.</c><01:58:39.440><c> Select</c><01:58:39.920><c> 5</c><01:58:40.160><c> minutes,</c>

01:58:40.950 --> 01:58:40.960 align:start position:0%
say it's 5 minutes. Select 5 minutes,
 

01:58:40.960 --> 01:58:42.950 align:start position:0%
say it's 5 minutes. Select 5 minutes,
open<01:58:41.280><c> the</c><01:58:41.400><c> room.</c><01:58:41.840><c> This</c><01:58:42.160><c> still</c><01:58:42.480><c> says</c><01:58:42.760><c> no</c>

01:58:42.950 --> 01:58:42.960 align:start position:0%
open the room. This still says no
 

01:58:42.960 --> 01:58:45.030 align:start position:0%
open the room. This still says no
deadline.<01:58:43.440><c> Let's</c><01:58:43.680><c> try</c><01:58:43.920><c> another</c><01:58:44.280><c> room.</c><01:58:44.480><c> Let's</c>

01:58:45.030 --> 01:58:45.040 align:start position:0%
deadline. Let's try another room. Let's
 

01:58:45.040 --> 01:58:47.830 align:start position:0%
deadline. Let's try another room. Let's
say<01:58:45.640><c> Sunday</c><01:58:46.240><c> brunch.</c><01:58:46.920><c> I</c><01:58:47.040><c> can</c><01:58:47.240><c> select</c><01:58:47.600><c> no</c>

01:58:47.830 --> 01:58:47.840 align:start position:0%
say Sunday brunch. I can select no
 

01:58:47.840 --> 01:58:49.990 align:start position:0%
say Sunday brunch. I can select no
deadline.<01:58:48.480><c> I</c><01:58:48.560><c> can</c><01:58:48.720><c> do</c><01:58:48.880><c> 15</c><01:58:49.400><c> minutes.</c><01:58:49.800><c> Let's</c>

01:58:49.990 --> 01:58:50.000 align:start position:0%
deadline. I can do 15 minutes. Let's
 

01:58:50.000 --> 01:58:52.510 align:start position:0%
deadline. I can do 15 minutes. Let's
Let's<01:58:50.200><c> 15</c><01:58:50.680><c> minutes.</c><01:58:51.520><c> See,</c><01:58:51.840><c> it</c><01:58:52.000><c> says</c><01:58:52.240><c> no</c>

01:58:52.510 --> 01:58:52.520 align:start position:0%
Let's 15 minutes. See, it says no
 

01:58:52.520 --> 01:58:54.630 align:start position:0%
Let's 15 minutes. See, it says no
deadline.<01:58:53.040><c> Okay,</c><01:58:53.280><c> that's</c><01:58:53.600><c> a</c><01:58:53.680><c> bug.</c><01:58:54.320><c> That's</c>

01:58:54.630 --> 01:58:54.640 align:start position:0%
deadline. Okay, that's a bug. That's
 

01:58:54.640 --> 01:58:56.830 align:start position:0%
deadline. Okay, that's a bug. That's
definitely<01:58:55.120><c> a</c><01:58:55.240><c> bug.</c><01:58:55.600><c> So,</c><01:58:55.800><c> let's</c><01:58:56.200><c> see</c><01:58:56.440><c> if</c><01:58:56.640><c> it's</c>

01:58:56.830 --> 01:58:56.840 align:start position:0%
definitely a bug. So, let's see if it's
 

01:58:56.840 --> 01:58:59.470 align:start position:0%
definitely a bug. So, let's see if it's
able<01:58:57.120><c> to</c><01:58:57.240><c> fix</c><01:58:57.520><c> it.</c><01:58:57.640><c> That's</c><01:58:57.880><c> the</c><01:58:58.000><c> first</c><01:58:58.520><c> bug</c>

01:58:59.470 --> 01:58:59.480 align:start position:0%
able to fix it. That's the first bug
 

01:58:59.480 --> 01:59:02.630 align:start position:0%
able to fix it. That's the first bug
that<01:59:00.440><c> has</c><01:59:00.640><c> happened</c><01:59:01.080><c> to</c><01:59:01.240><c> us</c><01:59:01.880><c> as</c><01:59:02.120><c> far</c><01:59:02.320><c> as</c><01:59:02.520><c> I</c>

01:59:02.630 --> 01:59:02.640 align:start position:0%
that has happened to us as far as I
 

01:59:02.640 --> 01:59:03.870 align:start position:0%
that has happened to us as far as I
remember.

01:59:03.870 --> 01:59:03.880 align:start position:0%
remember.
 

01:59:03.880 --> 01:59:07.190 align:start position:0%
remember.
And<01:59:04.080><c> so,</c><01:59:04.240><c> we're</c><01:59:04.440><c> going</c><01:59:04.560><c> to</c><01:59:04.680><c> say</c><01:59:05.440><c> created</c><01:59:06.680><c> tried</c>

01:59:07.190 --> 01:59:07.200 align:start position:0%
And so, we're going to say created tried
 

01:59:07.200 --> 01:59:10.150 align:start position:0%
And so, we're going to say created tried
creating<01:59:08.200><c> a</c><01:59:08.360><c> room</c><01:59:09.080><c> and</c><01:59:09.360><c> selecting</c><01:59:10.080><c> a</c>

01:59:10.150 --> 01:59:10.160 align:start position:0%
creating a room and selecting a
 

01:59:10.160 --> 01:59:13.750 align:start position:0%
creating a room and selecting a
deadline,<01:59:11.120><c> but</c><01:59:11.320><c> it</c><01:59:11.520><c> ended</c><01:59:11.880><c> up</c><01:59:12.080><c> creating</c>

01:59:13.750 --> 01:59:13.760 align:start position:0%
deadline, but it ended up creating
 

01:59:13.760 --> 01:59:16.110 align:start position:0%
deadline, but it ended up creating
a<01:59:14.000><c> room</c><01:59:14.440><c> with</c><01:59:14.760><c> no</c><01:59:15.040><c> deadline.</c><01:59:15.680><c> And</c><01:59:15.840><c> we</c><01:59:15.920><c> don't</c>

01:59:16.110 --> 01:59:16.120 align:start position:0%
a room with no deadline. And we don't
 

01:59:16.120 --> 01:59:18.830 align:start position:0%
a room with no deadline. And we don't
really<01:59:16.320><c> need</c><01:59:17.080><c> plan</c><01:59:17.440><c> mode</c><01:59:17.720><c> for</c><01:59:17.840><c> this.</c><01:59:18.520><c> There's</c>

01:59:18.830 --> 01:59:18.840 align:start position:0%
really need plan mode for this. There's
 

01:59:18.840 --> 01:59:21.870 align:start position:0%
really need plan mode for this. There's
no,<01:59:19.360><c> you</c><01:59:19.480><c> know,</c><01:59:20.360><c> clarifying</c><01:59:21.000><c> questions</c><01:59:21.600><c> here.</c>

01:59:21.870 --> 01:59:21.880 align:start position:0%
no, you know, clarifying questions here.
 

01:59:21.880 --> 01:59:24.550 align:start position:0%
no, you know, clarifying questions here.
It's<01:59:22.040><c> a</c><01:59:22.120><c> simple</c><01:59:22.680><c> bug.</c><01:59:23.200><c> And</c><01:59:23.760><c> we</c><01:59:24.000><c> don't</c><01:59:24.240><c> really</c>

01:59:24.550 --> 01:59:24.560 align:start position:0%
It's a simple bug. And we don't really
 

01:59:24.560 --> 01:59:26.830 align:start position:0%
It's a simple bug. And we don't really
want<01:59:24.880><c> it</c><01:59:25.000><c> to</c><01:59:25.120><c> clarify.</c><01:59:25.800><c> We</c><01:59:26.120><c> we</c><01:59:26.280><c> know</c><01:59:26.560><c> what</c><01:59:26.720><c> the</c>

01:59:26.830 --> 01:59:26.840 align:start position:0%
want it to clarify. We we know what the
 

01:59:26.840 --> 01:59:28.670 align:start position:0%
want it to clarify. We we know what the
bug<01:59:27.120><c> is.</c><01:59:27.400><c> We</c><01:59:27.480><c> just</c><01:59:27.680><c> want</c><01:59:27.840><c> it</c><01:59:27.920><c> to</c><01:59:28.040><c> fix</c><01:59:28.400><c> it.</c><01:59:28.560><c> So,</c>

01:59:28.670 --> 01:59:28.680 align:start position:0%
bug is. We just want it to fix it. So,
 

01:59:28.680 --> 01:59:31.350 align:start position:0%
bug is. We just want it to fix it. So,
there's<01:59:29.000><c> really</c><01:59:29.280><c> no</c><01:59:29.840><c> ambiguity</c><01:59:30.560><c> there.</c><01:59:31.080><c> It's</c>

01:59:31.350 --> 01:59:31.360 align:start position:0%
there's really no ambiguity there. It's
 

01:59:31.360 --> 01:59:33.430 align:start position:0%
there's really no ambiguity there. It's
like<01:59:32.080><c> It's</c><01:59:32.280><c> like</c><01:59:32.520><c> I'm</c><01:59:32.640><c> not</c><01:59:32.920><c> looking</c><01:59:33.320><c> to</c>

01:59:33.430 --> 01:59:33.440 align:start position:0%
like It's like I'm not looking to
 

01:59:33.440 --> 01:59:35.950 align:start position:0%
like It's like I'm not looking to
negotiate<01:59:34.400><c> with</c><01:59:34.600><c> Codex.</c><01:59:35.160><c> I</c><01:59:35.280><c> know</c><01:59:35.520><c> this</c><01:59:35.720><c> is</c><01:59:35.880><c> a</c>

01:59:35.950 --> 01:59:35.960 align:start position:0%
negotiate with Codex. I know this is a
 

01:59:35.960 --> 01:59:38.390 align:start position:0%
negotiate with Codex. I know this is a
bug<01:59:36.920><c> and</c><01:59:37.120><c> I</c><01:59:37.200><c> want</c><01:59:37.440><c> it</c><01:59:37.520><c> to</c><01:59:37.640><c> fix</c><01:59:38.000><c> it,</c><01:59:38.160><c> right?</c>

01:59:38.390 --> 01:59:38.400 align:start position:0%
bug and I want it to fix it, right?
 

01:59:38.400 --> 01:59:40.590 align:start position:0%
bug and I want it to fix it, right?
There's<01:59:38.680><c> no</c><01:59:39.280><c> other</c><01:59:39.560><c> ways.</c><01:59:39.920><c> There's</c><01:59:40.160><c> nothing</c>

01:59:40.590 --> 01:59:40.600 align:start position:0%
There's no other ways. There's nothing
 

01:59:40.600 --> 01:59:43.470 align:start position:0%
There's no other ways. There's nothing
else<01:59:40.920><c> happening.</c><01:59:41.720><c> Unless</c><01:59:42.320><c> I'm</c><01:59:42.560><c> wrong,</c><01:59:43.200><c> and</c><01:59:43.360><c> in</c>

01:59:43.470 --> 01:59:43.480 align:start position:0%
else happening. Unless I'm wrong, and in
 

01:59:43.480 --> 01:59:44.870 align:start position:0%
else happening. Unless I'm wrong, and in
that<01:59:43.720><c> case,</c><01:59:44.000><c> it's</c><01:59:44.120><c> going</c><01:59:44.240><c> to</c><01:59:44.320><c> tell</c><01:59:44.600><c> me</c><01:59:44.720><c> that</c>

01:59:44.870 --> 01:59:44.880 align:start position:0%
that case, it's going to tell me that
 

01:59:44.880 --> 01:59:46.790 align:start position:0%
that case, it's going to tell me that
I'm<01:59:45.040><c> wrong,</c><01:59:45.280><c> that</c><01:59:45.440><c> it</c><01:59:45.520><c> works,</c><01:59:45.920><c> but</c><01:59:46.040><c> there's</c><01:59:46.320><c> no</c>

01:59:46.790 --> 01:59:46.800 align:start position:0%
I'm wrong, that it works, but there's no
 

01:59:46.800 --> 01:59:48.670 align:start position:0%
I'm wrong, that it works, but there's no
other<01:59:47.080><c> paths</c><01:59:47.680><c> here</c><01:59:48.080><c> as</c><01:59:48.240><c> far</c><01:59:48.400><c> as</c><01:59:48.520><c> I'm</c>

01:59:48.670 --> 01:59:48.680 align:start position:0%
other paths here as far as I'm
 

01:59:48.680 --> 01:59:52.110 align:start position:0%
other paths here as far as I'm
concerned.<01:59:49.360><c> Now,</c><01:59:49.960><c> sometimes</c><01:59:50.760><c> Codex</c><01:59:51.840><c> would</c>

01:59:52.110 --> 01:59:52.120 align:start position:0%
concerned. Now, sometimes Codex would
 

01:59:52.120 --> 01:59:55.710 align:start position:0%
concerned. Now, sometimes Codex would
output<01:59:53.000><c> something</c><01:59:53.600><c> like</c><01:59:53.960><c> this</c><01:59:54.560><c> and</c><01:59:54.960><c> it</c><01:59:55.120><c> tries</c>

01:59:55.710 --> 01:59:55.720 align:start position:0%
output something like this and it tries
 

01:59:55.720 --> 01:59:59.190 align:start position:0%
output something like this and it tries
to<01:59:55.880><c> go</c><01:59:56.120><c> into</c><01:59:56.440><c> plan</c><01:59:56.840><c> mode.</c><01:59:57.800><c> And</c><01:59:58.040><c> so,</c><01:59:58.480><c> right</c><01:59:58.800><c> now</c>

01:59:59.190 --> 01:59:59.200 align:start position:0%
to go into plan mode. And so, right now
 

01:59:59.200 --> 02:00:02.750 align:start position:0%
to go into plan mode. And so, right now
it<01:59:59.480><c> thinks</c><02:00:00.360><c> it's</c><02:00:00.640><c> in</c><02:00:00.800><c> plan</c><02:00:01.200><c> mode,</c><02:00:01.960><c> but</c><02:00:02.240><c> it's</c><02:00:02.520><c> it</c>

02:00:02.750 --> 02:00:02.760 align:start position:0%
it thinks it's in plan mode, but it's it
 

02:00:02.760 --> 02:00:04.830 align:start position:0%
it thinks it's in plan mode, but it's it
actually<02:00:03.200><c> is</c><02:00:03.320><c> not</c><02:00:03.560><c> in</c><02:00:03.680><c> plan</c><02:00:03.960><c> mode.</c><02:00:04.320><c> And</c><02:00:04.520><c> so,</c><02:00:04.680><c> if</c>

02:00:04.830 --> 02:00:04.840 align:start position:0%
actually is not in plan mode. And so, if
 

02:00:04.840 --> 02:00:07.470 align:start position:0%
actually is not in plan mode. And so, if
I<02:00:04.920><c> say</c><02:00:05.200><c> something</c><02:00:05.640><c> like</c><02:00:06.000><c> do</c><02:00:06.240><c> it,</c><02:00:07.040><c> it's</c><02:00:07.320><c> going</c>

02:00:07.470 --> 02:00:07.480 align:start position:0%
I say something like do it, it's going
 

02:00:07.480 --> 02:00:10.110 align:start position:0%
I say something like do it, it's going
to<02:00:07.560><c> complain</c><02:00:08.280><c> that</c><02:00:08.560><c> that</c><02:00:08.840><c> I</c><02:00:08.960><c> did</c><02:00:09.200><c> not</c><02:00:09.720><c> uh</c><02:00:09.760><c> leave</c>

02:00:10.110 --> 02:00:10.120 align:start position:0%
to complain that that I did not uh leave
 

02:00:10.120 --> 02:00:12.590 align:start position:0%
to complain that that I did not uh leave
the<02:00:10.240><c> plan</c><02:00:10.600><c> mode</c><02:00:11.200><c> while</c><02:00:11.720><c> I'm</c><02:00:11.920><c> not</c><02:00:12.160><c> in</c><02:00:12.240><c> the</c><02:00:12.320><c> plan</c>

02:00:12.590 --> 02:00:12.600 align:start position:0%
the plan mode while I'm not in the plan
 

02:00:12.600 --> 02:00:14.390 align:start position:0%
the plan mode while I'm not in the plan
mode.<02:00:12.720><c> So,</c><02:00:12.840><c> this</c><02:00:13.040><c> is</c><02:00:13.240><c> a</c><02:00:13.360><c> bug</c>

02:00:14.390 --> 02:00:14.400 align:start position:0%
mode. So, this is a bug
 

02:00:14.400 --> 02:00:16.630 align:start position:0%
mode. So, this is a bug
that<02:00:14.600><c> I</c><02:00:14.680><c> have</c><02:00:14.880><c> been</c><02:00:15.040><c> experiencing</c><02:00:16.080><c> from</c><02:00:16.360><c> time</c>

02:00:16.630 --> 02:00:16.640 align:start position:0%
that I have been experiencing from time
 

02:00:16.640 --> 02:00:20.710 align:start position:0%
that I have been experiencing from time
to<02:00:16.800><c> time</c><02:00:17.400><c> and</c><02:00:18.240><c> it's</c><02:00:18.520><c> annoying,</c><02:00:19.480><c> but</c><02:00:20.080><c> it's</c><02:00:20.400><c> it's</c>

02:00:20.710 --> 02:00:20.720 align:start position:0%
to time and it's annoying, but it's it's
 

02:00:20.720 --> 02:00:22.830 align:start position:0%
to time and it's annoying, but it's it's
easily<02:00:21.160><c> fixable.</c><02:00:21.640><c> You</c><02:00:21.760><c> see,</c><02:00:21.960><c> it</c><02:00:22.080><c> says</c><02:00:22.360><c> I</c><02:00:22.440><c> can't</c>

02:00:22.830 --> 02:00:22.840 align:start position:0%
easily fixable. You see, it says I can't
 

02:00:22.840 --> 02:00:24.550 align:start position:0%
easily fixable. You see, it says I can't
edit<02:00:23.080><c> files</c><02:00:23.440><c> because</c><02:00:23.760><c> this</c><02:00:24.000><c> thread</c><02:00:24.320><c> is</c><02:00:24.440><c> in</c>

02:00:24.550 --> 02:00:24.560 align:start position:0%
edit files because this thread is in
 

02:00:24.560 --> 02:00:26.670 align:start position:0%
edit files because this thread is in
plan<02:00:24.840><c> mode,</c><02:00:25.000><c> but</c><02:00:25.240><c> we're</c><02:00:25.400><c> not</c><02:00:25.640><c> in</c><02:00:25.760><c> plan</c><02:00:26.040><c> mode.</c>

02:00:26.670 --> 02:00:26.680 align:start position:0%
plan mode, but we're not in plan mode.
 

02:00:26.680 --> 02:00:28.990 align:start position:0%
plan mode, but we're not in plan mode.
And<02:00:26.800><c> so,</c><02:00:26.960><c> the</c><02:00:27.120><c> solution</c><02:00:27.680><c> is</c><02:00:27.840><c> to</c><02:00:27.960><c> go</c><02:00:28.240><c> into</c><02:00:28.600><c> plan</c>

02:00:28.990 --> 02:00:29.000 align:start position:0%
And so, the solution is to go into plan
 

02:00:29.000 --> 02:00:32.150 align:start position:0%
And so, the solution is to go into plan
mode<02:00:29.600><c> and</c><02:00:30.120><c> type</c><02:00:30.440><c> something.</c><02:00:30.920><c> Okay,</c><02:00:31.280><c> fix</c><02:00:31.720><c> it.</c>

02:00:32.150 --> 02:00:32.160 align:start position:0%
mode and type something. Okay, fix it.
 

02:00:32.160 --> 02:00:33.710 align:start position:0%
mode and type something. Okay, fix it.
And<02:00:32.320><c> then</c><02:00:32.560><c> it's</c><02:00:32.680><c> going</c><02:00:32.840><c> to</c><02:00:32.920><c> say</c><02:00:33.200><c> something</c>

02:00:33.710 --> 02:00:33.720 align:start position:0%
And then it's going to say something
 

02:00:33.720 --> 02:00:35.550 align:start position:0%
And then it's going to say something
like,<02:00:34.040><c> well,</c><02:00:34.520><c> you</c><02:00:34.600><c> know,</c><02:00:34.760><c> I</c><02:00:34.880><c> can't</c><02:00:35.120><c> do</c><02:00:35.280><c> it.</c><02:00:35.400><c> I'm</c>

02:00:35.550 --> 02:00:35.560 align:start position:0%
like, well, you know, I can't do it. I'm
 

02:00:35.560 --> 02:00:37.270 align:start position:0%
like, well, you know, I can't do it. I'm
in<02:00:35.680><c> plan</c><02:00:36.040><c> mode.</c><02:00:36.280><c> And</c><02:00:36.480><c> then</c><02:00:36.720><c> you</c><02:00:36.840><c> can</c><02:00:37.000><c> leave</c>

02:00:37.270 --> 02:00:37.280 align:start position:0%
in plan mode. And then you can leave
 

02:00:37.280 --> 02:00:39.550 align:start position:0%
in plan mode. And then you can leave
plan<02:00:37.600><c> mode.</c><02:00:38.000><c> And</c><02:00:38.120><c> now</c><02:00:38.480><c> it</c><02:00:38.640><c> understands</c><02:00:39.400><c> it.</c>

02:00:39.550 --> 02:00:39.560 align:start position:0%
plan mode. And now it understands it.
 

02:00:39.560 --> 02:00:42.230 align:start position:0%
plan mode. And now it understands it.
You<02:00:39.680><c> see,</c><02:00:39.960><c> now</c><02:00:40.400><c> it's</c><02:00:40.640><c> correct.</c><02:00:41.320><c> Fixed</c><02:00:41.720><c> the</c><02:00:41.880><c> bug</c>

02:00:42.230 --> 02:00:42.240 align:start position:0%
You see, now it's correct. Fixed the bug
 

02:00:42.240 --> 02:00:43.910 align:start position:0%
You see, now it's correct. Fixed the bug
where<02:00:42.440><c> it's</c><02:00:42.600><c> selecting</c><02:00:43.160><c> a</c><02:00:43.240><c> deadline</c><02:00:43.760><c> and</c>

02:00:43.910 --> 02:00:43.920 align:start position:0%
where it's selecting a deadline and
 

02:00:43.920 --> 02:00:45.950 align:start position:0%
where it's selecting a deadline and
opening<02:00:44.280><c> an</c><02:00:44.400><c> existing</c><02:00:44.920><c> no</c><02:00:45.160><c> deadline</c><02:00:45.640><c> room</c>

02:00:45.950 --> 02:00:45.960 align:start position:0%
opening an existing no deadline room
 

02:00:45.960 --> 02:00:48.790 align:start position:0%
opening an existing no deadline room
still<02:00:46.560><c> leaves</c><02:00:47.400><c> the</c><02:00:47.560><c> room</c><02:00:47.920><c> with</c><02:00:48.080><c> no</c><02:00:48.320><c> deadline.</c>

02:00:48.790 --> 02:00:48.800 align:start position:0%
still leaves the room with no deadline.
 

02:00:48.800 --> 02:00:50.270 align:start position:0%
still leaves the room with no deadline.
So,<02:00:48.920><c> we're</c><02:00:49.080><c> going</c><02:00:49.200><c> to</c><02:00:49.280><c> submit</c><02:00:49.760><c> this.</c><02:00:50.200><c> All</c>

02:00:50.270 --> 02:00:50.280 align:start position:0%
So, we're going to submit this. All
 

02:00:50.280 --> 02:00:53.150 align:start position:0%
So, we're going to submit this. All
right.<02:00:50.680><c> So,</c><02:00:50.880><c> it</c><02:00:51.000><c> looks</c><02:00:51.240><c> like</c><02:00:51.520><c> it</c><02:00:51.720><c> fixed</c><02:00:52.280><c> it</c><02:00:52.640><c> and</c>

02:00:53.150 --> 02:00:53.160 align:start position:0%
right. So, it looks like it fixed it and
 

02:00:53.160 --> 02:00:55.350 align:start position:0%
right. So, it looks like it fixed it and
here<02:00:53.400><c> it</c><02:00:53.520><c> says</c><02:00:53.720><c> in</c><02:00:53.800><c> the</c><02:00:53.920><c> browser,</c><02:00:54.600><c> I</c><02:00:54.720><c> created</c><02:00:55.240><c> a</c>

02:00:55.350 --> 02:00:55.360 align:start position:0%
here it says in the browser, I created a
 

02:00:55.360 --> 02:00:57.950 align:start position:0%
here it says in the browser, I created a
no<02:00:55.680><c> deadline</c><02:00:56.280><c> room,</c><02:00:56.640><c> reopened</c><02:00:57.200><c> it</c><02:00:57.360><c> with</c><02:00:57.560><c> 15</c>

02:00:57.950 --> 02:00:57.960 align:start position:0%
no deadline room, reopened it with 15
 

02:00:57.960 --> 02:01:00.430 align:start position:0%
no deadline room, reopened it with 15
minutes,<02:00:58.440><c> and</c><02:00:58.600><c> it</c><02:00:58.720><c> showed</c><02:00:59.120><c> open</c><02:00:59.520><c> plus</c><02:00:59.880><c> closes</c>

02:01:00.430 --> 02:01:00.440 align:start position:0%
minutes, and it showed open plus closes
 

02:01:00.440 --> 02:01:02.630 align:start position:0%
minutes, and it showed open plus closes
in,<02:01:00.600><c> etc.</c><02:01:01.280><c> So,</c><02:01:01.600><c> let's</c><02:01:01.880><c> go</c><02:01:02.000><c> ahead</c><02:01:02.240><c> and</c><02:01:02.360><c> test</c>

02:01:02.630 --> 02:01:02.640 align:start position:0%
in, etc. So, let's go ahead and test
 

02:01:02.640 --> 02:01:05.150 align:start position:0%
in, etc. So, let's go ahead and test
this<02:01:02.840><c> out</c><02:01:03.080><c> ourselves</c><02:01:04.040><c> to</c><02:01:04.160><c> ensure</c><02:01:04.600><c> that</c><02:01:04.920><c> it</c>

02:01:05.150 --> 02:01:05.160 align:start position:0%
this out ourselves to ensure that it
 

02:01:05.160 --> 02:01:08.590 align:start position:0%
this out ourselves to ensure that it
does<02:01:05.600><c> really</c><02:01:06.040><c> work.</c><02:01:06.560><c> So,</c><02:01:07.040><c> we</c><02:01:07.200><c> have</c><02:01:07.520><c> this</c><02:01:08.200><c> and</c>

02:01:08.590 --> 02:01:08.600 align:start position:0%
does really work. So, we have this and
 

02:01:08.600 --> 02:01:11.790 align:start position:0%
does really work. So, we have this and
let's<02:01:08.840><c> do</c><02:01:09.040><c> Friday</c><02:01:09.880><c> lunch</c><02:01:10.560><c> and</c><02:01:10.760><c> we</c><02:01:10.920><c> said</c><02:01:11.400><c> 15</c>

02:01:11.790 --> 02:01:11.800 align:start position:0%
let's do Friday lunch and we said 15
 

02:01:11.800 --> 02:01:14.110 align:start position:0%
let's do Friday lunch and we said 15
minutes.<02:01:12.360><c> And</c><02:01:12.440><c> now</c><02:01:12.720><c> it</c><02:01:12.840><c> shows</c><02:01:13.200><c> it.</c><02:01:13.600><c> And</c><02:01:13.880><c> let's</c>

02:01:14.110 --> 02:01:14.120 align:start position:0%
minutes. And now it shows it. And let's
 

02:01:14.120 --> 02:01:17.470 align:start position:0%
minutes. And now it shows it. And let's
say<02:01:14.560><c> 1</c><02:01:14.840><c> minute</c><02:01:15.400><c> room</c><02:01:15.880><c> one,</c><02:01:16.360><c> 1</c><02:01:16.680><c> minute.</c><02:01:17.240><c> There</c>

02:01:17.470 --> 02:01:17.480 align:start position:0%
say 1 minute room one, 1 minute. There
 

02:01:17.480 --> 02:01:20.110 align:start position:0%
say 1 minute room one, 1 minute. There
we<02:01:17.600><c> go.</c><02:01:18.040><c> 1</c><02:01:18.280><c> minute.</c><02:01:19.280><c> And</c><02:01:19.440><c> let's</c><02:01:19.680><c> try</c><02:01:19.880><c> no</c>

02:01:20.110 --> 02:01:20.120 align:start position:0%
we go. 1 minute. And let's try no
 

02:01:20.120 --> 02:01:22.750 align:start position:0%
we go. 1 minute. And let's try no
deadline<02:01:20.720><c> room</c><02:01:21.000><c> two,</c><02:01:21.520><c> select</c><02:01:22.000><c> no</c><02:01:22.160><c> deadline,</c>

02:01:22.750 --> 02:01:22.760 align:start position:0%
deadline room two, select no deadline,
 

02:01:22.760 --> 02:01:25.830 align:start position:0%
deadline room two, select no deadline,
open<02:01:23.240><c> no</c><02:01:23.480><c> deadline.</c><02:01:24.040><c> Okay.</c><02:01:24.640><c> So,</c><02:01:25.280><c> this</c><02:01:25.560><c> looks</c>

02:01:25.830 --> 02:01:25.840 align:start position:0%
open no deadline. Okay. So, this looks
 

02:01:25.840 --> 02:01:29.390 align:start position:0%
open no deadline. Okay. So, this looks
like<02:01:26.080><c> this</c><02:01:26.480><c> was</c><02:01:26.960><c> finally</c><02:01:27.880><c> fixed.</c><02:01:28.440><c> Now,</c><02:01:28.880><c> once</c>

02:01:29.390 --> 02:01:29.400 align:start position:0%
like this was finally fixed. Now, once
 

02:01:29.400 --> 02:01:32.350 align:start position:0%
like this was finally fixed. Now, once
SnackVote<02:01:30.080><c> has</c><02:01:30.400><c> rooms,</c><02:01:31.520><c> session-based</c>

02:01:32.350 --> 02:01:32.360 align:start position:0%
SnackVote has rooms, session-based
 

02:01:32.360 --> 02:01:35.790 align:start position:0%
SnackVote has rooms, session-based
voting,<02:01:32.920><c> and</c><02:01:33.080><c> a</c><02:01:33.200><c> deadline,</c><02:01:34.400><c> we</c><02:01:34.720><c> are</c><02:01:35.000><c> ready</c><02:01:35.680><c> to</c>

02:01:35.790 --> 02:01:35.800 align:start position:0%
voting, and a deadline, we are ready to
 

02:01:35.800 --> 02:01:39.430 align:start position:0%
voting, and a deadline, we are ready to
deploy<02:01:36.480><c> the</c><02:01:36.640><c> front-end</c><02:01:37.280><c> app</c><02:01:37.760><c> with</c><02:01:37.960><c> Vercel</c><02:01:39.160><c> and</c>

02:01:39.430 --> 02:01:39.440 align:start position:0%
deploy the front-end app with Vercel and
 

02:01:39.440 --> 02:01:42.190 align:start position:0%
deploy the front-end app with Vercel and
verify<02:01:40.240><c> that</c><02:01:40.440><c> the</c><02:01:40.600><c> deployed</c><02:01:41.320><c> app</c><02:01:41.640><c> points</c><02:01:42.120><c> to</c>

02:01:42.190 --> 02:01:42.200 align:start position:0%
verify that the deployed app points to
 

02:01:42.200 --> 02:01:44.390 align:start position:0%
verify that the deployed app points to
the<02:01:42.360><c> right</c><02:01:42.840><c> back-end</c><02:01:43.240><c> environment.</c><02:01:43.960><c> And</c><02:01:44.160><c> this</c>

02:01:44.390 --> 02:01:44.400 align:start position:0%
the right back-end environment. And this
 

02:01:44.400 --> 02:01:47.430 align:start position:0%
the right back-end environment. And this
will<02:01:44.600><c> round</c><02:01:45.000><c> up</c><02:01:45.320><c> this</c><02:01:45.560><c> specific</c><02:01:46.320><c> app</c><02:01:46.720><c> build.</c>

02:01:47.430 --> 02:01:47.440 align:start position:0%
will round up this specific app build.
 

02:01:47.440 --> 02:01:50.190 align:start position:0%
will round up this specific app build.
And<02:01:47.680><c> here's</c><02:01:48.080><c> our</c><02:01:48.280><c> prompt,</c><02:01:48.800><c> prepare</c><02:01:49.320><c> SnackVote</c>

02:01:50.190 --> 02:01:50.200 align:start position:0%
And here's our prompt, prepare SnackVote
 

02:01:50.200 --> 02:01:52.550 align:start position:0%
And here's our prompt, prepare SnackVote
for<02:01:50.440><c> deployment</c><02:01:51.160><c> on</c><02:01:51.320><c> Vercel</c>

02:01:52.550 --> 02:01:52.560 align:start position:0%
for deployment on Vercel
 

02:01:52.560 --> 02:01:55.550 align:start position:0%
for deployment on Vercel
and<02:01:52.800><c> verify</c><02:01:53.520><c> it</c><02:01:53.720><c> works</c><02:01:54.320><c> with</c><02:01:54.520><c> the</c><02:01:54.640><c> Convex</c>

02:01:55.550 --> 02:01:55.560 align:start position:0%
and verify it works with the Convex
 

02:01:55.560 --> 02:01:57.630 align:start position:0%
and verify it works with the Convex
back-end,<02:01:56.200><c> okay?</c><02:01:56.600><c> I'm</c><02:01:56.760><c> just</c><02:01:56.960><c> going</c><02:01:57.080><c> to</c><02:01:57.200><c> do</c><02:01:57.400><c> it</c>

02:01:57.630 --> 02:01:57.640 align:start position:0%
back-end, okay? I'm just going to do it
 

02:01:57.640 --> 02:02:00.590 align:start position:0%
back-end, okay? I'm just going to do it
in<02:01:57.840><c> plan</c><02:01:58.200><c> mode,</c><02:01:58.760><c> run</c><02:01:59.040><c> that.</c><02:01:59.520><c> Here</c><02:01:59.960><c> it's</c><02:02:00.240><c> being</c>

02:02:00.590 --> 02:02:00.600 align:start position:0%
in plan mode, run that. Here it's being
 

02:02:00.600 --> 02:02:02.990 align:start position:0%
in plan mode, run that. Here it's being
very,<02:02:01.000><c> very</c><02:02:01.360><c> clever.</c><02:02:02.120><c> One</c><02:02:02.520><c> important</c>

02:02:02.990 --> 02:02:03.000 align:start position:0%
very, very clever. One important
 

02:02:03.000 --> 02:02:05.350 align:start position:0%
very, very clever. One important
deployment<02:02:03.560><c> decision</c><02:02:04.040><c> remains,</c>

02:02:05.350 --> 02:02:05.360 align:start position:0%
deployment decision remains,
 

02:02:05.360 --> 02:02:06.950 align:start position:0%
deployment decision remains,
whether<02:02:05.600><c> the</c><02:02:05.720><c> Vercel</c><02:02:06.240><c> app</c><02:02:06.440><c> should</c><02:02:06.680><c> use</c><02:02:06.880><c> the</c>

02:02:06.950 --> 02:02:06.960 align:start position:0%
whether the Vercel app should use the
 

02:02:06.960 --> 02:02:10.790 align:start position:0%
whether the Vercel app should use the
existing<02:02:07.720><c> Convex</c><02:02:08.480><c> dev</c><02:02:08.880><c> deployment</c><02:02:09.800><c> or</c><02:02:10.680><c> it</c>

02:02:10.790 --> 02:02:10.800 align:start position:0%
existing Convex dev deployment or it
 

02:02:10.800 --> 02:02:12.630 align:start position:0%
existing Convex dev deployment or it
should<02:02:11.000><c> promote</c><02:02:11.440><c> it</c><02:02:11.600><c> to</c><02:02:11.720><c> production,</c><02:02:12.360><c> okay?</c>

02:02:12.630 --> 02:02:12.640 align:start position:0%
should promote it to production, okay?
 

02:02:12.640 --> 02:02:14.470 align:start position:0%
should promote it to production, okay?
And<02:02:12.760><c> this</c><02:02:12.960><c> is</c><02:02:13.200><c> really,</c><02:02:13.640><c> really</c><02:02:13.920><c> cool</c><02:02:14.160><c> because</c>

02:02:14.470 --> 02:02:14.480 align:start position:0%
And this is really, really cool because
 

02:02:14.480 --> 02:02:16.190 align:start position:0%
And this is really, really cool because
this<02:02:14.720><c> is</c><02:02:14.880><c> something</c><02:02:15.240><c> that</c><02:02:15.360><c> I</c><02:02:15.440><c> wanted</c><02:02:15.720><c> to</c><02:02:15.800><c> cover</c>

02:02:16.190 --> 02:02:16.200 align:start position:0%
this is something that I wanted to cover
 

02:02:16.200 --> 02:02:17.910 align:start position:0%
this is something that I wanted to cover
once<02:02:16.560><c> this</c><02:02:16.840><c> was</c><02:02:17.040><c> done.</c>

02:02:17.910 --> 02:02:17.920 align:start position:0%
once this was done.
 

02:02:17.920 --> 02:02:20.350 align:start position:0%
once this was done.
So,<02:02:18.200><c> if</c><02:02:18.400><c> we</c><02:02:18.520><c> go</c><02:02:18.800><c> into</c><02:02:19.120><c> Convex</c><02:02:19.840><c> and</c><02:02:19.960><c> you</c><02:02:20.040><c> click</c>

02:02:20.350 --> 02:02:20.360 align:start position:0%
So, if we go into Convex and you click
 

02:02:20.360 --> 02:02:22.270 align:start position:0%
So, if we go into Convex and you click
over<02:02:20.560><c> here,</c><02:02:20.840><c> you</c><02:02:20.960><c> can</c><02:02:21.160><c> see</c><02:02:21.400><c> all</c><02:02:21.960><c> your</c>

02:02:22.270 --> 02:02:22.280 align:start position:0%
over here, you can see all your
 

02:02:22.280 --> 02:02:24.830 align:start position:0%
over here, you can see all your
deployments,<02:02:23.560><c> your</c><02:02:23.720><c> different</c><02:02:24.160><c> deployments.</c>

02:02:24.830 --> 02:02:24.840 align:start position:0%
deployments, your different deployments.
 

02:02:24.840 --> 02:02:26.350 align:start position:0%
deployments, your different deployments.
So,<02:02:25.000><c> so</c><02:02:25.160><c> we</c><02:02:25.400><c> we</c><02:02:25.560><c> are</c><02:02:25.760><c> currently</c><02:02:26.160><c> under</c>

02:02:26.350 --> 02:02:26.360 align:start position:0%
So, so we we are currently under
 

02:02:26.360 --> 02:02:27.750 align:start position:0%
So, so we we are currently under
development<02:02:26.960><c> deployment,</c><02:02:27.560><c> under</c>

02:02:27.750 --> 02:02:27.760 align:start position:0%
development deployment, under
 

02:02:27.760 --> 02:02:30.070 align:start position:0%
development deployment, under
development<02:02:28.760><c> cloud.</c>

02:02:30.070 --> 02:02:30.080 align:start position:0%
development cloud.
 

02:02:30.080 --> 02:02:31.510 align:start position:0%
development cloud.
We<02:02:30.240><c> can</c><02:02:30.400><c> also</c><02:02:30.680><c> have</c><02:02:30.880><c> a</c><02:02:30.960><c> production</c>

02:02:31.510 --> 02:02:31.520 align:start position:0%
We can also have a production
 

02:02:31.520 --> 02:02:33.510 align:start position:0%
We can also have a production
deployment,<02:02:32.120><c> preview</c><02:02:32.520><c> deployments,</c><02:02:33.240><c> other</c>

02:02:33.510 --> 02:02:33.520 align:start position:0%
deployment, preview deployments, other
 

02:02:33.520 --> 02:02:35.030 align:start position:0%
deployment, preview deployments, other
deployments,<02:02:34.160><c> stuff</c><02:02:34.400><c> like</c><02:02:34.560><c> that.</c><02:02:34.880><c> So,</c>

02:02:35.030 --> 02:02:35.040 align:start position:0%
deployments, stuff like that. So,
 

02:02:35.040 --> 02:02:38.230 align:start position:0%
deployments, stuff like that. So,
ideally,<02:02:35.640><c> once</c><02:02:36.000><c> we</c><02:02:36.120><c> deploy</c><02:02:36.680><c> it</c><02:02:36.800><c> with</c><02:02:36.960><c> Vercel,</c>

02:02:38.230 --> 02:02:38.240 align:start position:0%
ideally, once we deploy it with Vercel,
 

02:02:38.240 --> 02:02:40.630 align:start position:0%
ideally, once we deploy it with Vercel,
we<02:02:38.480><c> want</c><02:02:38.720><c> it</c><02:02:38.840><c> to</c><02:02:38.920><c> use</c><02:02:39.160><c> the</c><02:02:39.280><c> production</c><02:02:40.120><c> Convex,</c>

02:02:40.630 --> 02:02:40.640 align:start position:0%
we want it to use the production Convex,
 

02:02:40.640 --> 02:02:42.430 align:start position:0%
we want it to use the production Convex,
and<02:02:40.760><c> that's</c><02:02:41.000><c> what</c><02:02:41.160><c> we're</c><02:02:41.320><c> going</c><02:02:41.600><c> to</c><02:02:41.680><c> select,</c>

02:02:42.430 --> 02:02:42.440 align:start position:0%
and that's what we're going to select,
 

02:02:42.440 --> 02:02:45.030 align:start position:0%
and that's what we're going to select,
because<02:02:42.760><c> this</c><02:02:43.040><c> makes</c><02:02:43.400><c> sense.</c><02:02:43.800><c> Production</c>

02:02:45.030 --> 02:02:45.040 align:start position:0%
because this makes sense. Production
 

02:02:45.040 --> 02:02:48.710 align:start position:0%
because this makes sense. Production
deployment<02:02:45.920><c> uses</c><02:02:46.280><c> the</c><02:02:46.360><c> production</c><02:02:47.520><c> Convex.</c>

02:02:48.710 --> 02:02:48.720 align:start position:0%
deployment uses the production Convex.
 

02:02:48.720 --> 02:02:50.630 align:start position:0%
deployment uses the production Convex.
Development<02:02:49.520><c> deployment</c><02:02:50.160><c> uses</c><02:02:50.520><c> the</c>

02:02:50.630 --> 02:02:50.640 align:start position:0%
Development deployment uses the
 

02:02:50.640 --> 02:02:52.990 align:start position:0%
Development deployment uses the
development<02:02:51.360><c> Convex.</c><02:02:51.880><c> And</c><02:02:52.000><c> this</c><02:02:52.200><c> is</c><02:02:52.360><c> our</c><02:02:52.520><c> plan</c>

02:02:52.990 --> 02:02:53.000 align:start position:0%
development Convex. And this is our plan
 

02:02:53.000 --> 02:02:56.190 align:start position:0%
development Convex. And this is our plan
prepare<02:02:53.600><c> snack</c><02:02:54.160><c> vote</c><02:02:54.920><c> for</c><02:02:55.320><c> a</c><02:02:55.440><c> production</c>

02:02:56.190 --> 02:02:56.200 align:start position:0%
prepare snack vote for a production
 

02:02:56.200 --> 02:02:59.230 align:start position:0%
prepare snack vote for a production
result<02:02:56.680><c> deploy</c><02:02:57.200><c> connected</c><02:02:57.800><c> to</c><02:02:57.880><c> the</c><02:02:58.040><c> Convex</c>

02:02:59.230 --> 02:02:59.240 align:start position:0%
result deploy connected to the Convex
 

02:02:59.240 --> 02:03:01.230 align:start position:0%
result deploy connected to the Convex
production<02:02:59.840><c> backend.</c><02:03:00.640><c> We're</c><02:03:00.800><c> going</c><02:03:00.920><c> to</c><02:03:01.000><c> hit</c>

02:03:01.230 --> 02:03:01.240 align:start position:0%
production backend. We're going to hit
 

02:03:01.240 --> 02:03:04.830 align:start position:0%
production backend. We're going to hit
submit.<02:03:02.320><c> And</c><02:03:03.080><c> it's</c><02:03:03.320><c> going</c><02:03:03.640><c> to</c><02:03:03.800><c> create</c><02:03:04.720><c> a</c>

02:03:04.830 --> 02:03:04.840 align:start position:0%
submit. And it's going to create a
 

02:03:04.840 --> 02:03:06.270 align:start position:0%
submit. And it's going to create a
production.<02:03:05.360><c> In</c><02:03:05.440><c> fact,</c><02:03:05.720><c> they</c><02:03:05.800><c> already</c><02:03:06.040><c> did</c>

02:03:06.270 --> 02:03:06.280 align:start position:0%
production. In fact, they already did
 

02:03:06.280 --> 02:03:08.710 align:start position:0%
production. In fact, they already did
it,<02:03:06.760><c> right?</c><02:03:07.080><c> We</c><02:03:07.160><c> can</c><02:03:07.360><c> switch</c><02:03:07.720><c> to</c><02:03:07.840><c> this</c><02:03:08.360><c> and</c>

02:03:08.710 --> 02:03:08.720 align:start position:0%
it, right? We can switch to this and
 

02:03:08.720 --> 02:03:10.670 align:start position:0%
it, right? We can switch to this and
it's<02:03:08.920><c> going</c><02:03:09.040><c> to</c><02:03:09.160><c> have</c><02:03:09.680><c> a</c><02:03:09.800><c> production</c>

02:03:10.670 --> 02:03:10.680 align:start position:0%
it's going to have a production
 

02:03:10.680 --> 02:03:13.070 align:start position:0%
it's going to have a production
environment<02:03:11.360><c> here</c><02:03:11.600><c> created</c><02:03:12.080><c> for</c><02:03:12.280><c> us.</c><02:03:12.880><c> All</c>

02:03:13.070 --> 02:03:13.080 align:start position:0%
environment here created for us. All
 

02:03:13.080 --> 02:03:15.270 align:start position:0%
environment here created for us. All
right.<02:03:13.320><c> So,</c><02:03:13.440><c> it</c><02:03:13.560><c> has</c><02:03:13.760><c> deployed</c><02:03:14.360><c> snack</c><02:03:14.840><c> vote</c><02:03:15.160><c> to</c>

02:03:15.270 --> 02:03:15.280 align:start position:0%
right. So, it has deployed snack vote to
 

02:03:15.280 --> 02:03:18.510 align:start position:0%
right. So, it has deployed snack vote to
Vercel<02:03:16.000><c> and</c><02:03:16.240><c> verified</c><02:03:17.000><c> it</c><02:03:17.240><c> against</c><02:03:17.760><c> Convex</c>

02:03:18.510 --> 02:03:18.520 align:start position:0%
Vercel and verified it against Convex
 

02:03:18.520 --> 02:03:20.670 align:start position:0%
Vercel and verified it against Convex
production,<02:03:19.320><c> okay?</c><02:03:19.680><c> So,</c><02:03:19.840><c> this</c><02:03:20.040><c> is</c><02:03:20.200><c> the</c><02:03:20.320><c> live</c>

02:03:20.670 --> 02:03:20.680 align:start position:0%
production, okay? So, this is the live
 

02:03:20.680 --> 02:03:23.750 align:start position:0%
production, okay? So, this is the live
URL,<02:03:21.360><c> what</c><02:03:21.560><c> we're</c><02:03:21.760><c> seeing</c><02:03:22.120><c> here.</c><02:03:22.960><c> Deployment</c>

02:03:23.750 --> 02:03:23.760 align:start position:0%
URL, what we're seeing here. Deployment
 

02:03:23.760 --> 02:03:26.590 align:start position:0%
URL, what we're seeing here. Deployment
URL<02:03:24.120><c> and</c><02:03:24.320><c> the</c><02:03:24.400><c> Convex</c><02:03:25.120><c> backend.</c><02:03:25.960><c> Okay,</c><02:03:26.360><c> and</c><02:03:26.480><c> if</c>

02:03:26.590 --> 02:03:26.600 align:start position:0%
URL and the Convex backend. Okay, and if
 

02:03:26.600 --> 02:03:29.350 align:start position:0%
URL and the Convex backend. Okay, and if
we<02:03:26.680><c> go</c><02:03:26.800><c> into</c><02:03:27.080><c> Convex,</c><02:03:28.280><c> you</c><02:03:28.520><c> can</c><02:03:28.720><c> see</c><02:03:28.920><c> that</c><02:03:29.120><c> it's</c>

02:03:29.350 --> 02:03:29.360 align:start position:0%
we go into Convex, you can see that it's
 

02:03:29.360 --> 02:03:32.030 align:start position:0%
we go into Convex, you can see that it's
currently<02:03:29.840><c> pointing</c><02:03:30.400><c> to</c><02:03:30.520><c> the</c><02:03:30.640><c> production</c><02:03:31.520><c> URL</c>

02:03:32.030 --> 02:03:32.040 align:start position:0%
currently pointing to the production URL
 

02:03:32.040 --> 02:03:33.550 align:start position:0%
currently pointing to the production URL
here.<02:03:32.320><c> And</c><02:03:32.440><c> we</c><02:03:32.560><c> have</c><02:03:32.800><c> everything</c><02:03:33.280><c> here</c><02:03:33.440><c> in</c>

02:03:33.550 --> 02:03:33.560 align:start position:0%
here. And we have everything here in
 

02:03:33.560 --> 02:03:35.950 align:start position:0%
here. And we have everything here in
production,<02:03:34.160><c> right?</c><02:03:34.400><c> So,</c><02:03:34.520><c> we</c><02:03:34.680><c> have</c><02:03:34.920><c> the</c><02:03:35.040><c> dev</c>

02:03:35.950 --> 02:03:35.960 align:start position:0%
production, right? So, we have the dev
 

02:03:35.960 --> 02:03:38.910 align:start position:0%
production, right? So, we have the dev
instance<02:03:36.560><c> pointing</c><02:03:37.040><c> to</c><02:03:37.160><c> the</c><02:03:37.320><c> dev</c><02:03:38.160><c> deployment</c>

02:03:38.910 --> 02:03:38.920 align:start position:0%
instance pointing to the dev deployment
 

02:03:38.920 --> 02:03:41.670 align:start position:0%
instance pointing to the dev deployment
in<02:03:39.040><c> Convex.</c><02:03:40.160><c> And</c><02:03:40.440><c> the</c><02:03:40.520><c> production</c><02:03:41.120><c> instance</c>

02:03:41.670 --> 02:03:41.680 align:start position:0%
in Convex. And the production instance
 

02:03:41.680 --> 02:03:44.390 align:start position:0%
in Convex. And the production instance
in<02:03:41.880><c> Vercel</c><02:03:42.920><c> pointing</c><02:03:43.480><c> to</c><02:03:43.600><c> the</c><02:03:43.720><c> production</c>

02:03:44.390 --> 02:03:44.400 align:start position:0%
in Vercel pointing to the production
 

02:03:44.400 --> 02:03:47.110 align:start position:0%
in Vercel pointing to the production
instance<02:03:45.000><c> here</c><02:03:45.440><c> in</c><02:03:45.640><c> Convex.</c><02:03:46.360><c> So,</c><02:03:46.480><c> we</c><02:03:46.600><c> have</c><02:03:46.840><c> all</c>

02:03:47.110 --> 02:03:47.120 align:start position:0%
instance here in Convex. So, we have all
 

02:03:47.120 --> 02:03:49.470 align:start position:0%
instance here in Convex. So, we have all
the<02:03:47.240><c> same</c><02:03:47.520><c> functions.</c><02:03:48.440><c> We</c><02:03:48.560><c> have</c><02:03:48.800><c> all</c><02:03:49.000><c> the</c><02:03:49.120><c> same</c>

02:03:49.470 --> 02:03:49.480 align:start position:0%
the same functions. We have all the same
 

02:03:49.480 --> 02:03:51.590 align:start position:0%
the same functions. We have all the same
data.<02:03:49.920><c> Everything</c><02:03:50.360><c> is</c><02:03:50.520><c> there.</c><02:03:51.040><c> The</c><02:03:51.200><c> data</c>

02:03:51.590 --> 02:03:51.600 align:start position:0%
data. Everything is there. The data
 

02:03:51.600 --> 02:03:53.310 align:start position:0%
data. Everything is there. The data
might<02:03:51.880><c> be</c><02:03:52.000><c> a</c><02:03:52.040><c> little</c><02:03:52.360><c> different,</c><02:03:53.040><c> but</c><02:03:53.200><c> the</c>

02:03:53.310 --> 02:03:53.320 align:start position:0%
might be a little different, but the
 

02:03:53.320 --> 02:03:56.470 align:start position:0%
might be a little different, but the
schema<02:03:53.760><c> is</c><02:03:53.880><c> exactly</c><02:03:54.480><c> the</c><02:03:54.600><c> same</c><02:03:55.280><c> and</c><02:03:55.840><c> it</c><02:03:56.040><c> works,</c>

02:03:56.470 --> 02:03:56.480 align:start position:0%
schema is exactly the same and it works,
 

02:03:56.480 --> 02:03:58.790 align:start position:0%
schema is exactly the same and it works,
right?<02:03:56.840><c> So,</c><02:03:57.000><c> we</c><02:03:57.200><c> can</c><02:03:57.640><c> create</c><02:03:58.080><c> a</c><02:03:58.200><c> room,</c>

02:03:58.790 --> 02:03:58.800 align:start position:0%
right? So, we can create a room,
 

02:03:58.800 --> 02:04:01.590 align:start position:0%
right? So, we can create a room,
whatever<02:03:59.160><c> new</c><02:03:59.480><c> room,</c><02:04:00.040><c> 1</c><02:04:00.400><c> minute,</c><02:04:00.920><c> open</c><02:04:01.360><c> it.</c>

02:04:01.590 --> 02:04:01.600 align:start position:0%
whatever new room, 1 minute, open it.
 

02:04:01.600 --> 02:04:04.830 align:start position:0%
whatever new room, 1 minute, open it.
And<02:04:01.760><c> now</c><02:04:02.360><c> 59</c><02:04:03.000><c> seconds,</c><02:04:03.520><c> 58</c><02:04:04.040><c> seconds,</c><02:04:04.560><c> looks</c>

02:04:04.830 --> 02:04:04.840 align:start position:0%
And now 59 seconds, 58 seconds, looks
 

02:04:04.840 --> 02:04:07.230 align:start position:0%
And now 59 seconds, 58 seconds, looks
good.<02:04:05.320><c> We</c><02:04:05.480><c> can</c><02:04:05.640><c> create</c><02:04:05.920><c> another</c><02:04:06.320><c> room,</c><02:04:06.800><c> room</c>

02:04:07.230 --> 02:04:07.240 align:start position:0%
good. We can create another room, room
 

02:04:07.240 --> 02:04:09.630 align:start position:0%
good. We can create another room, room
three,<02:04:07.720><c> no</c><02:04:08.000><c> deadline.</c><02:04:08.880><c> And</c><02:04:09.080><c> that</c><02:04:09.280><c> has</c><02:04:09.480><c> no</c>

02:04:09.630 --> 02:04:09.640 align:start position:0%
three, no deadline. And that has no
 

02:04:09.640 --> 02:04:11.190 align:start position:0%
three, no deadline. And that has no
deadline.<02:04:10.080><c> So,</c><02:04:10.280><c> I'm</c><02:04:10.440><c> currently</c><02:04:10.800><c> in</c><02:04:10.920><c> this</c>

02:04:11.190 --> 02:04:11.200 align:start position:0%
deadline. So, I'm currently in this
 

02:04:11.200 --> 02:04:13.750 align:start position:0%
deadline. So, I'm currently in this
room.<02:04:11.560><c> I</c><02:04:11.640><c> can</c><02:04:11.840><c> create</c><02:04:12.600><c> a</c><02:04:12.720><c> food</c><02:04:13.080><c> option.</c><02:04:13.480><c> I</c><02:04:13.560><c> can</c>

02:04:13.750 --> 02:04:13.760 align:start position:0%
room. I can create a food option. I can
 

02:04:13.760 --> 02:04:16.590 align:start position:0%
room. I can create a food option. I can
vote.<02:04:14.160><c> I</c><02:04:14.280><c> can't</c><02:04:14.680><c> vote</c><02:04:15.000><c> anymore.</c><02:04:15.840><c> One</c><02:04:16.160><c> active</c>

02:04:16.590 --> 02:04:16.600 align:start position:0%
vote. I can't vote anymore. One active
 

02:04:16.600 --> 02:04:19.350 align:start position:0%
vote. I can't vote anymore. One active
vote<02:04:17.080><c> per</c><02:04:17.240><c> room.</c><02:04:17.960><c> This</c><02:04:18.200><c> is</c><02:04:18.320><c> the</c><02:04:18.440><c> leaderboard.</c>

02:04:19.350 --> 02:04:19.360 align:start position:0%
vote per room. This is the leaderboard.
 

02:04:19.360 --> 02:04:22.710 align:start position:0%
vote per room. This is the leaderboard.
So,<02:04:20.160><c> it</c><02:04:20.360><c> looks</c><02:04:20.880><c> really</c><02:04:21.360><c> good.</c><02:04:21.840><c> And</c><02:04:22.040><c> this</c><02:04:22.320><c> time</c>

02:04:22.710 --> 02:04:22.720 align:start position:0%
So, it looks really good. And this time
 

02:04:22.720 --> 02:04:25.990 align:start position:0%
So, it looks really good. And this time
we've<02:04:23.040><c> actually</c><02:04:23.640><c> built</c><02:04:24.200><c> a</c><02:04:24.320><c> fairly</c><02:04:24.880><c> cool</c><02:04:25.720><c> and</c><02:04:25.920><c> a</c>

02:04:25.990 --> 02:04:26.000 align:start position:0%
we've actually built a fairly cool and a
 

02:04:26.000 --> 02:04:31.110 align:start position:0%
we've actually built a fairly cool and a
fun<02:04:26.400><c> app</c><02:04:26.880><c> along</c><02:04:27.520><c> with</c><02:04:27.880><c> a</c><02:04:28.040><c> backend</c><02:04:29.400><c> that</c><02:04:29.920><c> uses</c>

02:04:31.110 --> 02:04:31.120 align:start position:0%
fun app along with a backend that uses
 

02:04:31.120 --> 02:04:33.630 align:start position:0%
fun app along with a backend that uses
several<02:04:31.800><c> different</c><02:04:32.240><c> deployments</c><02:04:33.000><c> depending</c>

02:04:33.630 --> 02:04:33.640 align:start position:0%
several different deployments depending
 

02:04:33.640 --> 02:04:36.070 align:start position:0%
several different deployments depending
on<02:04:34.040><c> where</c><02:04:34.400><c> the</c><02:04:34.560><c> app</c><02:04:34.840><c> is</c><02:04:35.080><c> is</c><02:04:35.280><c> running.</c><02:04:35.720><c> So,</c><02:04:35.880><c> for</c>

02:04:36.070 --> 02:04:36.080 align:start position:0%
on where the app is is running. So, for
 

02:04:36.080 --> 02:04:38.190 align:start position:0%
on where the app is is running. So, for
local<02:04:36.440><c> deployment,</c><02:04:37.000><c> we</c><02:04:37.120><c> have</c><02:04:37.280><c> the</c><02:04:37.400><c> local,</c><02:04:38.080><c> the</c>

02:04:38.190 --> 02:04:38.200 align:start position:0%
local deployment, we have the local, the
 

02:04:38.200 --> 02:04:40.510 align:start position:0%
local deployment, we have the local, the
dev<02:04:38.520><c> convex</c><02:04:39.000><c> deployment,</c><02:04:40.160><c> and</c><02:04:40.320><c> for</c><02:04:40.440><c> the</c>

02:04:40.510 --> 02:04:40.520 align:start position:0%
dev convex deployment, and for the
 

02:04:40.520 --> 02:04:42.310 align:start position:0%
dev convex deployment, and for the
production<02:04:41.080><c> Vercel</c><02:04:41.520><c> deployment,</c><02:04:42.160><c> we're</c>

02:04:42.310 --> 02:04:42.320 align:start position:0%
production Vercel deployment, we're
 

02:04:42.320 --> 02:04:44.510 align:start position:0%
production Vercel deployment, we're
using<02:04:42.680><c> the</c><02:04:42.800><c> production</c><02:04:43.360><c> convex</c><02:04:43.880><c> deployment,</c>

02:04:44.510 --> 02:04:44.520 align:start position:0%
using the production convex deployment,
 

02:04:44.520 --> 02:04:47.270 align:start position:0%
using the production convex deployment,
okay?<02:04:45.040><c> So,</c><02:04:45.200><c> this</c><02:04:45.560><c> was</c><02:04:46.000><c> a</c><02:04:46.320><c> slightly</c><02:04:46.960><c> more</c>

02:04:47.270 --> 02:04:47.280 align:start position:0%
okay? So, this was a slightly more
 

02:04:47.280 --> 02:04:48.870 align:start position:0%
okay? So, this was a slightly more
complex<02:04:48.000><c> app.</c>

02:04:48.870 --> 02:04:48.880 align:start position:0%
complex app.
 

02:04:48.880 --> 02:04:50.750 align:start position:0%
complex app.
But,<02:04:49.120><c> there's</c><02:04:49.360><c> still</c><02:04:49.720><c> one</c><02:04:50.000><c> more</c><02:04:50.280><c> app</c><02:04:50.520><c> that</c><02:04:50.680><c> I</c>

02:04:50.750 --> 02:04:50.760 align:start position:0%
But, there's still one more app that I
 

02:04:50.760 --> 02:04:52.430 align:start position:0%
But, there's still one more app that I
want<02:04:50.960><c> to</c><02:04:51.040><c> build,</c><02:04:51.360><c> and</c><02:04:51.520><c> this</c><02:04:51.840><c> app</c><02:04:52.080><c> is</c><02:04:52.200><c> going</c><02:04:52.360><c> to</c>

02:04:52.430 --> 02:04:52.440 align:start position:0%
want to build, and this app is going to
 

02:04:52.440 --> 02:04:54.670 align:start position:0%
want to build, and this app is going to
be<02:04:52.560><c> the</c><02:04:52.720><c> most</c><02:04:53.200><c> complex</c><02:04:53.880><c> of</c><02:04:54.040><c> them</c><02:04:54.280><c> all.</c><02:04:54.520><c> It's</c>

02:04:54.670 --> 02:04:54.680 align:start position:0%
be the most complex of them all. It's
 

02:04:54.680 --> 02:04:56.190 align:start position:0%
be the most complex of them all. It's
going<02:04:54.800><c> to</c><02:04:54.880><c> bring</c><02:04:55.120><c> a</c><02:04:55.200><c> lot</c><02:04:55.560><c> of</c><02:04:55.680><c> these</c><02:04:55.920><c> things</c>

02:04:56.190 --> 02:04:56.200 align:start position:0%
going to bring a lot of these things
 

02:04:56.200 --> 02:04:58.630 align:start position:0%
going to bring a lot of these things
that<02:04:56.360><c> we've</c><02:04:56.520><c> been</c><02:04:56.720><c> talking</c><02:04:57.120><c> about</c><02:04:57.920><c> so</c><02:04:58.320><c> far</c>

02:04:58.630 --> 02:04:58.640 align:start position:0%
that we've been talking about so far
 

02:04:58.640 --> 02:05:01.030 align:start position:0%
that we've been talking about so far
together,<02:04:59.800><c> and</c><02:05:00.040><c> also</c><02:05:00.560><c> we're</c><02:05:00.720><c> going</c><02:05:00.880><c> to</c><02:05:00.920><c> be</c>

02:05:01.030 --> 02:05:01.040 align:start position:0%
together, and also we're going to be
 

02:05:01.040 --> 02:05:03.670 align:start position:0%
together, and also we're going to be
introducing<02:05:01.800><c> some</c><02:05:02.160><c> new</c><02:05:02.440><c> functionality,</c><02:05:03.400><c> new</c>

02:05:03.670 --> 02:05:03.680 align:start position:0%
introducing some new functionality, new
 

02:05:03.680 --> 02:05:06.310 align:start position:0%
introducing some new functionality, new
features,<02:05:04.720><c> and</c><02:05:04.920><c> a</c><02:05:04.960><c> lot</c><02:05:05.280><c> of</c><02:05:05.440><c> really</c><02:05:05.800><c> cool</c>

02:05:06.310 --> 02:05:06.320 align:start position:0%
features, and a lot of really cool
 

02:05:06.320 --> 02:05:09.830 align:start position:0%
features, and a lot of really cool
things.

02:05:09.830 --> 02:05:09.840 align:start position:0%
 
 

02:05:09.840 --> 02:05:11.990 align:start position:0%
 
Now,<02:05:10.000><c> for</c><02:05:10.160><c> this</c><02:05:10.400><c> last</c><02:05:10.960><c> app</c><02:05:11.320><c> in</c><02:05:11.440><c> the</c><02:05:11.560><c> course,</c>

02:05:11.990 --> 02:05:12.000 align:start position:0%
Now, for this last app in the course,
 

02:05:12.000 --> 02:05:14.190 align:start position:0%
Now, for this last app in the course,
we're<02:05:12.200><c> going</c><02:05:12.320><c> to</c><02:05:12.400><c> be</c><02:05:12.520><c> building</c><02:05:13.000><c> FlexHelp.</c><02:05:14.080><c> And</c>

02:05:14.190 --> 02:05:14.200 align:start position:0%
we're going to be building FlexHelp. And
 

02:05:14.200 --> 02:05:16.070 align:start position:0%
we're going to be building FlexHelp. And
this<02:05:14.360><c> is</c><02:05:14.520><c> where</c><02:05:14.760><c> we</c><02:05:14.880><c> take</c><02:05:15.160><c> the</c><02:05:15.280><c> workflow</c><02:05:15.880><c> from</c>

02:05:16.070 --> 02:05:16.080 align:start position:0%
this is where we take the workflow from
 

02:05:16.080 --> 02:05:18.550 align:start position:0%
this is where we take the workflow from
the<02:05:16.200><c> first</c><02:05:16.680><c> two</c><02:05:16.840><c> smaller</c><02:05:17.360><c> apps</c><02:05:17.840><c> and</c><02:05:17.960><c> apply</c><02:05:18.400><c> it</c>

02:05:18.550 --> 02:05:18.560 align:start position:0%
the first two smaller apps and apply it
 

02:05:18.560 --> 02:05:21.270 align:start position:0%
the first two smaller apps and apply it
to<02:05:18.760><c> a</c><02:05:18.840><c> more</c><02:05:19.200><c> realistic</c><02:05:19.760><c> product,</c><02:05:20.440><c> a</c><02:05:20.560><c> two-sided</c>

02:05:21.270 --> 02:05:21.280 align:start position:0%
to a more realistic product, a two-sided
 

02:05:21.280 --> 02:05:24.030 align:start position:0%
to a more realistic product, a two-sided
marketplace<02:05:22.160><c> where</c><02:05:22.400><c> helpers</c><02:05:23.080><c> offer</c><02:05:23.520><c> fixers</c>

02:05:24.030 --> 02:05:24.040 align:start position:0%
marketplace where helpers offer fixers
 

02:05:24.040 --> 02:05:26.790 align:start position:0%
marketplace where helpers offer fixers
services<02:05:24.880><c> and</c><02:05:25.080><c> customers</c><02:05:25.960><c> book</c><02:05:26.240><c> them.</c><02:05:26.680><c> The</c>

02:05:26.790 --> 02:05:26.800 align:start position:0%
services and customers book them. The
 

02:05:26.800 --> 02:05:28.630 align:start position:0%
services and customers book them. The
important<02:05:27.240><c> thing</c><02:05:27.440><c> is</c><02:05:27.600><c> that</c><02:05:27.840><c> we</c><02:05:27.960><c> will</c><02:05:28.160><c> still</c>

02:05:28.630 --> 02:05:28.640 align:start position:0%
important thing is that we will still
 

02:05:28.640 --> 02:05:30.950 align:start position:0%
important thing is that we will still
build<02:05:29.000><c> it</c><02:05:29.120><c> in</c><02:05:29.240><c> controlled</c><02:05:29.840><c> steps.</c><02:05:30.560><c> We're</c><02:05:30.720><c> not</c>

02:05:30.950 --> 02:05:30.960 align:start position:0%
build it in controlled steps. We're not
 

02:05:30.960 --> 02:05:32.750 align:start position:0%
build it in controlled steps. We're not
going<02:05:31.160><c> to</c><02:05:31.280><c> ask</c><02:05:31.600><c> Codex</c><02:05:32.040><c> to</c><02:05:32.160><c> build</c><02:05:32.440><c> the</c><02:05:32.520><c> whole</c>

02:05:32.750 --> 02:05:32.760 align:start position:0%
going to ask Codex to build the whole
 

02:05:32.760 --> 02:05:34.750 align:start position:0%
going to ask Codex to build the whole
marketplace<02:05:33.480><c> at</c><02:05:33.640><c> once.</c><02:05:34.120><c> We</c><02:05:34.280><c> are</c><02:05:34.360><c> going</c><02:05:34.600><c> to</c>

02:05:34.750 --> 02:05:34.760 align:start position:0%
marketplace at once. We are going to
 

02:05:34.760 --> 02:05:37.070 align:start position:0%
marketplace at once. We are going to
architect<02:05:35.360><c> the</c><02:05:35.480><c> design,</c><02:05:36.080><c> and</c><02:05:36.280><c> build</c><02:05:36.440><c> the</c><02:05:36.560><c> UI,</c>

02:05:37.070 --> 02:05:37.080 align:start position:0%
architect the design, and build the UI,
 

02:05:37.080 --> 02:05:39.870 align:start position:0%
architect the design, and build the UI,
then<02:05:37.320><c> add</c><02:05:37.720><c> feature</c><02:05:38.440><c> by</c><02:05:38.760><c> feature.</c><02:05:39.520><c> And</c><02:05:39.600><c> last</c>

02:05:39.870 --> 02:05:39.880 align:start position:0%
then add feature by feature. And last
 

02:05:39.880 --> 02:05:40.790 align:start position:0%
then add feature by feature. And last
but<02:05:40.000><c> not</c><02:05:40.160><c> least,</c><02:05:40.400><c> we're</c><02:05:40.520><c> going</c><02:05:40.640><c> to</c><02:05:40.720><c> be</c>

02:05:40.790 --> 02:05:40.800 align:start position:0%
but not least, we're going to be
 

02:05:40.800 --> 02:05:43.270 align:start position:0%
but not least, we're going to be
deploying<02:05:41.400><c> the</c><02:05:41.520><c> app,</c><02:05:41.840><c> making</c><02:05:42.200><c> it</c><02:05:42.360><c> available</c>

02:05:43.270 --> 02:05:43.280 align:start position:0%
deploying the app, making it available
 

02:05:43.280 --> 02:05:46.230 align:start position:0%
deploying the app, making it available
to<02:05:43.520><c> anyone.</c><02:05:44.240><c> As</c><02:05:44.480><c> always,</c><02:05:45.040><c> our</c><02:05:45.280><c> first</c><02:05:45.760><c> step</c>

02:05:46.230 --> 02:05:46.240 align:start position:0%
to anyone. As always, our first step
 

02:05:46.240 --> 02:05:47.990 align:start position:0%
to anyone. As always, our first step
will<02:05:46.480><c> be</c><02:05:46.640><c> creating</c><02:05:47.360><c> the</c><02:05:47.480><c> visual</c>

02:05:47.990 --> 02:05:48.000 align:start position:0%
will be creating the visual
 

02:05:48.000 --> 02:05:50.270 align:start position:0%
will be creating the visual
architecture.<02:05:48.880><c> This</c><02:05:49.120><c> gives</c><02:05:49.440><c> us</c><02:05:49.600><c> the</c><02:05:49.760><c> shape</c><02:05:50.160><c> of</c>

02:05:50.270 --> 02:05:50.280 align:start position:0%
architecture. This gives us the shape of
 

02:05:50.280 --> 02:05:52.430 align:start position:0%
architecture. This gives us the shape of
the<02:05:50.400><c> product,</c><02:05:50.960><c> the</c><02:05:51.040><c> customer</c><02:05:51.640><c> flow,</c><02:05:52.320><c> the</c>

02:05:52.430 --> 02:05:52.440 align:start position:0%
the product, the customer flow, the
 

02:05:52.440 --> 02:05:55.070 align:start position:0%
the product, the customer flow, the
helper<02:05:52.880><c> flow,</c><02:05:53.480><c> the</c><02:05:53.600><c> main</c><02:05:53.960><c> screens,</c><02:05:54.800><c> and</c><02:05:54.960><c> the</c>

02:05:55.070 --> 02:05:55.080 align:start position:0%
helper flow, the main screens, and the
 

02:05:55.080 --> 02:05:58.230 align:start position:0%
helper flow, the main screens, and the
path<02:05:55.680><c> from</c><02:05:55.960><c> browsing</c><02:05:56.560><c> a</c><02:05:56.640><c> service</c><02:05:57.440><c> to</c><02:05:57.640><c> booking</c>

02:05:58.230 --> 02:05:58.240 align:start position:0%
path from browsing a service to booking
 

02:05:58.240 --> 02:06:00.110 align:start position:0%
path from browsing a service to booking
help.<02:05:58.720><c> Now,</c><02:05:58.960><c> here</c><02:05:59.240><c> in</c><02:05:59.360><c> Codex,</c><02:05:59.800><c> we're</c><02:05:59.920><c> going</c><02:06:00.040><c> to</c>

02:06:00.110 --> 02:06:00.120 align:start position:0%
help. Now, here in Codex, we're going to
 

02:06:00.120 --> 02:06:01.950 align:start position:0%
help. Now, here in Codex, we're going to
click<02:06:00.440><c> here,</c><02:06:00.720><c> and</c><02:06:00.800><c> we're</c><02:06:00.920><c> going</c><02:06:01.040><c> to</c><02:06:01.120><c> create</c><02:06:01.800><c> a</c>

02:06:01.950 --> 02:06:01.960 align:start position:0%
click here, and we're going to create a
 

02:06:01.960 --> 02:06:04.030 align:start position:0%
click here, and we're going to create a
brand<02:06:02.320><c> new</c><02:06:02.520><c> project.</c><02:06:03.120><c> Now,</c><02:06:03.320><c> I</c><02:06:03.360><c> like</c><02:06:03.600><c> to</c><02:06:03.720><c> start</c>

02:06:04.030 --> 02:06:04.040 align:start position:0%
brand new project. Now, I like to start
 

02:06:04.040 --> 02:06:05.870 align:start position:0%
brand new project. Now, I like to start
it<02:06:04.240><c> from</c><02:06:04.480><c> an</c><02:06:04.560><c> existing</c><02:06:05.000><c> folder,</c><02:06:05.640><c> and</c><02:06:05.800><c> I'm</c>

02:06:05.870 --> 02:06:05.880 align:start position:0%
it from an existing folder, and I'm
 

02:06:05.880 --> 02:06:08.590 align:start position:0%
it from an existing folder, and I'm
going<02:06:06.000><c> to</c><02:06:06.080><c> create</c><02:06:06.480><c> a</c><02:06:06.520><c> new</c><02:06:06.760><c> folder.</c><02:06:07.400><c> FlexHelp.</c>

02:06:08.590 --> 02:06:08.600 align:start position:0%
going to create a new folder. FlexHelp.
 

02:06:08.600 --> 02:06:10.110 align:start position:0%
going to create a new folder. FlexHelp.
I'm<02:06:08.680><c> going</c><02:06:08.800><c> to</c><02:06:08.880><c> hit</c><02:06:09.080><c> create,</c><02:06:09.800><c> and</c><02:06:09.880><c> I'm</c><02:06:09.960><c> going</c>

02:06:10.110 --> 02:06:10.120 align:start position:0%
I'm going to hit create, and I'm going
 

02:06:10.120 --> 02:06:12.750 align:start position:0%
I'm going to hit create, and I'm going
to<02:06:10.280><c> click</c><02:06:10.640><c> open.</c><02:06:11.200><c> And</c><02:06:11.320><c> that</c><02:06:11.560><c> creates</c><02:06:12.080><c> a</c><02:06:12.280><c> brand</c>

02:06:12.750 --> 02:06:12.760 align:start position:0%
to click open. And that creates a brand
 

02:06:12.760 --> 02:06:14.750 align:start position:0%
to click open. And that creates a brand
new<02:06:12.960><c> project.</c><02:06:13.520><c> Now,</c><02:06:14.000><c> the</c><02:06:14.120><c> first</c><02:06:14.440><c> thing</c><02:06:14.600><c> that</c>

02:06:14.750 --> 02:06:14.760 align:start position:0%
new project. Now, the first thing that
 

02:06:14.760 --> 02:06:16.510 align:start position:0%
new project. Now, the first thing that
we're<02:06:14.920><c> going</c><02:06:15.040><c> to</c><02:06:15.120><c> be</c><02:06:15.240><c> doing</c><02:06:15.800><c> is</c><02:06:16.240><c> we're</c><02:06:16.400><c> going</c>

02:06:16.510 --> 02:06:16.520 align:start position:0%
we're going to be doing is we're going
 

02:06:16.520 --> 02:06:18.790 align:start position:0%
we're going to be doing is we're going
to<02:06:16.600><c> be</c><02:06:16.720><c> building</c><02:06:17.320><c> a</c><02:06:17.480><c> visual</c><02:06:18.040><c> architecture,</c>

02:06:18.790 --> 02:06:18.800 align:start position:0%
to be building a visual architecture,
 

02:06:18.800 --> 02:06:20.510 align:start position:0%
to be building a visual architecture,
the<02:06:18.960><c> same</c><02:06:19.360><c> thing</c><02:06:19.600><c> that</c><02:06:19.840><c> we</c><02:06:19.960><c> did</c><02:06:20.280><c> for</c><02:06:20.400><c> the</c>

02:06:20.510 --> 02:06:20.520 align:start position:0%
the same thing that we did for the
 

02:06:20.520 --> 02:06:22.830 align:start position:0%
the same thing that we did for the
previous<02:06:21.040><c> two</c><02:06:21.200><c> apps.</c><02:06:21.880><c> And</c><02:06:22.000><c> this</c><02:06:22.160><c> is</c><02:06:22.280><c> important</c>

02:06:22.830 --> 02:06:22.840 align:start position:0%
previous two apps. And this is important
 

02:06:22.840 --> 02:06:24.550 align:start position:0%
previous two apps. And this is important
because<02:06:23.160><c> this</c><02:06:23.440><c> gives</c><02:06:23.720><c> us</c><02:06:23.840><c> the</c><02:06:24.000><c> shape</c><02:06:24.360><c> of</c><02:06:24.440><c> the</c>

02:06:24.550 --> 02:06:24.560 align:start position:0%
because this gives us the shape of the
 

02:06:24.560 --> 02:06:26.990 align:start position:0%
because this gives us the shape of the
product,<02:06:25.280><c> the</c><02:06:25.360><c> customer</c><02:06:25.880><c> flow,</c><02:06:26.440><c> the</c><02:06:26.560><c> helper</c>

02:06:26.990 --> 02:06:27.000 align:start position:0%
product, the customer flow, the helper
 

02:06:27.000 --> 02:06:29.670 align:start position:0%
product, the customer flow, the helper
flow,<02:06:27.400><c> the</c><02:06:27.560><c> main</c><02:06:28.000><c> screens,</c><02:06:28.760><c> and</c><02:06:28.920><c> the</c><02:06:29.040><c> path</c>

02:06:29.670 --> 02:06:29.680 align:start position:0%
flow, the main screens, and the path
 

02:06:29.680 --> 02:06:32.710 align:start position:0%
flow, the main screens, and the path
from<02:06:29.960><c> browsing</c><02:06:30.560><c> a</c><02:06:30.680><c> service</c><02:06:31.440><c> to</c><02:06:31.600><c> booking</c><02:06:32.120><c> help.</c>

02:06:32.710 --> 02:06:32.720 align:start position:0%
from browsing a service to booking help.
 

02:06:32.720 --> 02:06:34.110 align:start position:0%
from browsing a service to booking help.
And<02:06:32.880><c> here's</c><02:06:33.200><c> the</c><02:06:33.320><c> prompt</c><02:06:33.680><c> that</c><02:06:33.800><c> I'm</c><02:06:33.880><c> going</c><02:06:34.040><c> to</c>

02:06:34.110 --> 02:06:34.120 align:start position:0%
And here's the prompt that I'm going to
 

02:06:34.120 --> 02:06:37.030 align:start position:0%
And here's the prompt that I'm going to
be<02:06:34.240><c> using</c><02:06:34.960><c> and</c><02:06:35.400><c> I</c><02:06:35.480><c> want</c><02:06:35.680><c> to</c><02:06:35.760><c> specify</c><02:06:36.560><c> that</c><02:06:36.920><c> we</c>

02:06:37.030 --> 02:06:37.040 align:start position:0%
be using and I want to specify that we
 

02:06:37.040 --> 02:06:39.230 align:start position:0%
be using and I want to specify that we
want<02:06:37.240><c> to</c><02:06:37.320><c> use</c><02:06:37.920><c> ImageGen.</c><02:06:38.880><c> We're</c><02:06:39.000><c> going</c><02:06:39.120><c> to</c>

02:06:39.230 --> 02:06:39.240 align:start position:0%
want to use ImageGen. We're going to
 

02:06:39.240 --> 02:06:41.150 align:start position:0%
want to use ImageGen. We're going to
jump<02:06:39.560><c> into</c><02:06:39.800><c> plan</c><02:06:40.200><c> mode</c><02:06:40.560><c> and</c><02:06:40.800><c> we're</c><02:06:40.920><c> going</c><02:06:41.040><c> to</c>

02:06:41.150 --> 02:06:41.160 align:start position:0%
jump into plan mode and we're going to
 

02:06:41.160 --> 02:06:43.510 align:start position:0%
jump into plan mode and we're going to
run<02:06:41.400><c> this.</c><02:06:41.800><c> And</c><02:06:41.960><c> here</c><02:06:42.200><c> we</c><02:06:42.360><c> have</c><02:06:42.520><c> the</c><02:06:42.680><c> Flex</c><02:06:43.160><c> Help</c>

02:06:43.510 --> 02:06:43.520 align:start position:0%
run this. And here we have the Flex Help
 

02:06:43.520 --> 02:06:46.030 align:start position:0%
run this. And here we have the Flex Help
Visual<02:06:44.080><c> Architecture.</c><02:06:45.120><c> And</c><02:06:45.240><c> here's</c><02:06:45.560><c> a</c><02:06:45.680><c> better</c>

02:06:46.030 --> 02:06:46.040 align:start position:0%
Visual Architecture. And here's a better
 

02:06:46.040 --> 02:06:48.390 align:start position:0%
Visual Architecture. And here's a better
view.<02:06:46.560><c> And</c><02:06:46.720><c> so</c><02:06:46.920><c> here</c><02:06:47.160><c> we</c><02:06:47.280><c> have</c><02:06:47.440><c> the</c><02:06:47.560><c> customer,</c>

02:06:48.390 --> 02:06:48.400 align:start position:0%
view. And so here we have the customer,
 

02:06:48.400 --> 02:06:50.550 align:start position:0%
view. And so here we have the customer,
we<02:06:48.520><c> have</c><02:06:48.680><c> the</c><02:06:48.800><c> shared</c><02:06:49.280><c> marketplace</c><02:06:49.880><c> screens,</c>

02:06:50.550 --> 02:06:50.560 align:start position:0%
we have the shared marketplace screens,
 

02:06:50.560 --> 02:06:52.350 align:start position:0%
we have the shared marketplace screens,
and<02:06:50.720><c> we</c><02:06:50.840><c> have</c><02:06:51.040><c> the</c><02:06:51.160><c> helper,</c><02:06:51.680><c> which</c><02:06:51.920><c> are</c><02:06:52.080><c> the</c>

02:06:52.350 --> 02:06:52.360 align:start position:0%
and we have the helper, which are the
 

02:06:52.360 --> 02:06:55.190 align:start position:0%
and we have the helper, which are the
two<02:06:52.680><c> sides</c><02:06:53.360><c> of</c><02:06:53.480><c> this</c><02:06:53.760><c> marketplace.</c><02:06:54.800><c> We</c><02:06:54.880><c> also</c>

02:06:55.190 --> 02:06:55.200 align:start position:0%
two sides of this marketplace. We also
 

02:06:55.200 --> 02:06:57.630 align:start position:0%
two sides of this marketplace. We also
have<02:06:55.400><c> the</c><02:06:55.480><c> Convex</c><02:06:56.200><c> and</c><02:06:56.400><c> the</c><02:06:56.480><c> Versel</c><02:06:57.120><c> here.</c><02:06:57.520><c> On</c>

02:06:57.630 --> 02:06:57.640 align:start position:0%
have the Convex and the Versel here. On
 

02:06:57.640 --> 02:06:59.910 align:start position:0%
have the Convex and the Versel here. On
the<02:06:57.760><c> customer</c><02:06:58.320><c> side,</c><02:06:58.720><c> we</c><02:06:58.840><c> have</c><02:06:59.440><c> browse</c>

02:06:59.910 --> 02:06:59.920 align:start position:0%
the customer side, we have browse
 

02:06:59.920 --> 02:07:02.270 align:start position:0%
the customer side, we have browse
services,<02:07:00.720><c> get</c><02:07:00.880><c> the</c><02:07:01.000><c> service</c><02:07:01.440><c> detail,</c><02:07:02.120><c> and</c>

02:07:02.270 --> 02:07:02.280 align:start position:0%
services, get the service detail, and
 

02:07:02.280 --> 02:07:04.550 align:start position:0%
services, get the service detail, and
then<02:07:02.480><c> send</c><02:07:02.920><c> a</c><02:07:03.040><c> booking</c><02:07:03.440><c> request.</c><02:07:04.000><c> The</c><02:07:04.120><c> helper</c>

02:07:04.550 --> 02:07:04.560 align:start position:0%
then send a booking request. The helper
 

02:07:04.560 --> 02:07:06.670 align:start position:0%
then send a booking request. The helper
side,<02:07:04.960><c> we</c><02:07:05.080><c> have</c><02:07:05.240><c> the</c><02:07:05.320><c> helper</c><02:07:05.680><c> dashboard</c><02:07:06.520><c> and</c>

02:07:06.670 --> 02:07:06.680 align:start position:0%
side, we have the helper dashboard and
 

02:07:06.680 --> 02:07:08.870 align:start position:0%
side, we have the helper dashboard and
the<02:07:06.800><c> status</c><02:07:07.360><c> updates.</c><02:07:08.120><c> And</c><02:07:08.280><c> on</c><02:07:08.400><c> the</c><02:07:08.520><c> shared</c>

02:07:08.870 --> 02:07:08.880 align:start position:0%
the status updates. And on the shared
 

02:07:08.880 --> 02:07:11.110 align:start position:0%
the status updates. And on the shared
marketplace<02:07:09.520><c> screens,</c><02:07:10.000><c> we</c><02:07:10.120><c> have</c><02:07:10.440><c> explore</c><02:07:11.000><c> the</c>

02:07:11.110 --> 02:07:11.120 align:start position:0%
marketplace screens, we have explore the
 

02:07:11.120 --> 02:07:14.070 align:start position:0%
marketplace screens, we have explore the
marketplace,<02:07:12.040><c> my</c><02:07:12.360><c> bookings,</c><02:07:13.040><c> and</c><02:07:13.520><c> booking</c>

02:07:14.070 --> 02:07:14.080 align:start position:0%
marketplace, my bookings, and booking
 

02:07:14.080 --> 02:07:16.470 align:start position:0%
marketplace, my bookings, and booking
details.<02:07:14.640><c> So</c><02:07:14.800><c> right</c><02:07:15.040><c> off</c><02:07:15.160><c> the</c><02:07:15.280><c> bat,</c><02:07:15.680><c> this</c><02:07:16.040><c> app</c>

02:07:16.470 --> 02:07:16.480 align:start position:0%
details. So right off the bat, this app
 

02:07:16.480 --> 02:07:18.910 align:start position:0%
details. So right off the bat, this app
is<02:07:16.800><c> a</c><02:07:16.880><c> bit</c><02:07:17.080><c> more</c><02:07:17.280><c> complex</c><02:07:18.000><c> than</c><02:07:18.280><c> the</c><02:07:18.400><c> previous</c>

02:07:18.910 --> 02:07:18.920 align:start position:0%
is a bit more complex than the previous
 

02:07:18.920 --> 02:07:20.190 align:start position:0%
is a bit more complex than the previous
apps<02:07:19.160><c> that</c><02:07:19.280><c> we</c><02:07:19.400><c> were</c><02:07:19.560><c> building.</c><02:07:19.880><c> And</c><02:07:19.960><c> that's</c>

02:07:20.190 --> 02:07:20.200 align:start position:0%
apps that we were building. And that's
 

02:07:20.200 --> 02:07:23.270 align:start position:0%
apps that we were building. And that's
really<02:07:20.480><c> the</c><02:07:20.640><c> goal,</c><02:07:21.160><c> to</c><02:07:21.360><c> finish</c><02:07:21.880><c> off</c><02:07:22.520><c> with</c><02:07:22.880><c> a</c>

02:07:23.270 --> 02:07:23.280 align:start position:0%
really the goal, to finish off with a
 

02:07:23.280 --> 02:07:26.430 align:start position:0%
really the goal, to finish off with a
more<02:07:23.720><c> complex,</c><02:07:24.440><c> but</c><02:07:24.640><c> also</c><02:07:25.120><c> a</c><02:07:25.240><c> more</c><02:07:25.640><c> realistic,</c>

02:07:26.430 --> 02:07:26.440 align:start position:0%
more complex, but also a more realistic,
 

02:07:26.440 --> 02:07:28.470 align:start position:0%
more complex, but also a more realistic,
more<02:07:26.800><c> production-ready</c><02:07:27.880><c> app.</c><02:07:28.000><c> Next,</c><02:07:28.320><c> we'll</c>

02:07:28.470 --> 02:07:28.480 align:start position:0%
more production-ready app. Next, we'll
 

02:07:28.480 --> 02:07:30.630 align:start position:0%
more production-ready app. Next, we'll
map<02:07:28.800><c> the</c><02:07:28.920><c> core</c><02:07:29.280><c> entities.</c><02:07:29.960><c> And</c><02:07:30.080><c> this</c><02:07:30.240><c> is</c><02:07:30.400><c> where</c>

02:07:30.630 --> 02:07:30.640 align:start position:0%
map the core entities. And this is where
 

02:07:30.640 --> 02:07:33.430 align:start position:0%
map the core entities. And this is where
the<02:07:30.760><c> product</c><02:07:31.320><c> becomes</c><02:07:31.880><c> more</c><02:07:32.720><c> tangible</c>

02:07:33.430 --> 02:07:33.440 align:start position:0%
the product becomes more tangible
 

02:07:33.440 --> 02:07:35.390 align:start position:0%
the product becomes more tangible
because<02:07:33.760><c> we</c><02:07:33.880><c> can</c><02:07:34.040><c> actually</c><02:07:34.480><c> see</c><02:07:34.920><c> the</c><02:07:35.080><c> real</c>

02:07:35.390 --> 02:07:35.400 align:start position:0%
because we can actually see the real
 

02:07:35.400 --> 02:07:38.630 align:start position:0%
because we can actually see the real
objects<02:07:35.960><c> in</c><02:07:36.080><c> the</c><02:07:36.200><c> app</c><02:07:36.880><c> before</c><02:07:37.320><c> Codex</c><02:07:38.000><c> starts</c>

02:07:38.630 --> 02:07:38.640 align:start position:0%
objects in the app before Codex starts
 

02:07:38.640 --> 02:07:41.550 align:start position:0%
objects in the app before Codex starts
writing<02:07:39.120><c> the</c><02:07:39.240><c> schema</c><02:07:39.920><c> for</c><02:07:40.360><c> code.</c><02:07:41.080><c> And</c><02:07:41.240><c> here's</c>

02:07:41.550 --> 02:07:41.560 align:start position:0%
writing the schema for code. And here's
 

02:07:41.560 --> 02:07:44.190 align:start position:0%
writing the schema for code. And here's
our<02:07:41.760><c> prompt.</c><02:07:42.480><c> We</c><02:07:42.560><c> want</c><02:07:42.720><c> to</c><02:07:42.800><c> preface</c><02:07:43.480><c> this</c><02:07:43.920><c> with</c>

02:07:44.190 --> 02:07:44.200 align:start position:0%
our prompt. We want to preface this with
 

02:07:44.200 --> 02:07:46.510 align:start position:0%
our prompt. We want to preface this with
this<02:07:44.440><c> ImageGen.</c><02:07:45.240><c> All</c><02:07:45.320><c> right,</c><02:07:45.560><c> and</c><02:07:45.680><c> here's</c><02:07:46.040><c> our</c>

02:07:46.510 --> 02:07:46.520 align:start position:0%
this ImageGen. All right, and here's our
 

02:07:46.520 --> 02:07:48.470 align:start position:0%
this ImageGen. All right, and here's our
entity<02:07:47.120><c> architecture.</c><02:07:47.800><c> Okay,</c><02:07:48.040><c> so</c><02:07:48.200><c> we</c><02:07:48.320><c> have</c>

02:07:48.470 --> 02:07:48.480 align:start position:0%
entity architecture. Okay, so we have
 

02:07:48.480 --> 02:07:51.190 align:start position:0%
entity architecture. Okay, so we have
the<02:07:48.640><c> user,</c><02:07:49.360><c> that</c><02:07:49.560><c> could</c><02:07:49.720><c> be</c><02:07:49.840><c> a</c><02:07:50.000><c> customer</c><02:07:50.760><c> or</c><02:07:51.120><c> a</c>

02:07:51.190 --> 02:07:51.200 align:start position:0%
the user, that could be a customer or a
 

02:07:51.200 --> 02:07:53.110 align:start position:0%
the user, that could be a customer or a
helper<02:07:51.600><c> profile.</c><02:07:52.240><c> We</c><02:07:52.360><c> have</c><02:07:52.520><c> the</c><02:07:52.640><c> booking</c>

02:07:53.110 --> 02:07:53.120 align:start position:0%
helper profile. We have the booking
 

02:07:53.120 --> 02:07:56.190 align:start position:0%
helper profile. We have the booking
here,<02:07:53.480><c> booking</c><02:07:53.840><c> status,</c><02:07:54.640><c> service,</c><02:07:55.280><c> category,</c>

02:07:56.190 --> 02:07:56.200 align:start position:0%
here, booking status, service, category,
 

02:07:56.200 --> 02:07:58.510 align:start position:0%
here, booking status, service, category,
review,<02:07:56.880><c> and</c><02:07:57.040><c> all</c><02:07:57.200><c> of</c><02:07:57.280><c> that</c><02:07:57.560><c> backed</c><02:07:58.120><c> with</c>

02:07:58.510 --> 02:07:58.520 align:start position:0%
review, and all of that backed with
 

02:07:58.520 --> 02:08:01.950 align:start position:0%
review, and all of that backed with
Convex<02:07:59.400><c> data.</c><02:08:00.080><c> So</c><02:08:00.200><c> at</c><02:08:00.360><c> this</c><02:08:00.640><c> point,</c><02:08:01.000><c> we</c><02:08:01.200><c> have</c><02:08:01.760><c> a</c>

02:08:01.950 --> 02:08:01.960 align:start position:0%
Convex data. So at this point, we have a
 

02:08:01.960 --> 02:08:04.990 align:start position:0%
Convex data. So at this point, we have a
better<02:08:02.480><c> idea</c><02:08:03.280><c> of</c><02:08:03.480><c> how</c><02:08:03.760><c> the</c><02:08:03.920><c> final</c><02:08:04.560><c> app</c><02:08:04.880><c> is</c>

02:08:04.990 --> 02:08:05.000 align:start position:0%
better idea of how the final app is
 

02:08:05.000 --> 02:08:07.030 align:start position:0%
better idea of how the final app is
going<02:08:05.160><c> to</c><02:08:05.240><c> look.</c><02:08:05.520><c> I</c><02:08:05.640><c> see</c><02:08:05.840><c> that</c><02:08:06.040><c> we</c><02:08:06.160><c> need</c><02:08:06.480><c> a</c><02:08:06.560><c> user</c>

02:08:07.030 --> 02:08:07.040 align:start position:0%
going to look. I see that we need a user
 

02:08:07.040 --> 02:08:09.150 align:start position:0%
going to look. I see that we need a user
entity<02:08:07.480><c> and</c><02:08:07.600><c> that</c><02:08:07.760><c> could</c><02:08:07.880><c> be</c><02:08:08.040><c> a</c><02:08:08.120><c> customer</c><02:08:08.880><c> or</c><02:08:09.120><c> a</c>

02:08:09.150 --> 02:08:09.160 align:start position:0%
entity and that could be a customer or a
 

02:08:09.160 --> 02:08:11.630 align:start position:0%
entity and that could be a customer or a
helper<02:08:09.600><c> profile.</c><02:08:10.160><c> And</c><02:08:10.280><c> I</c><02:08:10.360><c> see</c><02:08:10.560><c> that</c><02:08:10.880><c> booking</c>

02:08:11.630 --> 02:08:11.640 align:start position:0%
helper profile. And I see that booking
 

02:08:11.640 --> 02:08:13.470 align:start position:0%
helper profile. And I see that booking
is<02:08:11.800><c> super</c><02:08:12.120><c> important</c><02:08:12.680><c> because</c><02:08:12.960><c> everybody</c>

02:08:13.470 --> 02:08:13.480 align:start position:0%
is super important because everybody
 

02:08:13.480 --> 02:08:15.350 align:start position:0%
is super important because everybody
needs<02:08:13.760><c> to</c><02:08:13.880><c> have</c><02:08:14.040><c> access</c><02:08:14.400><c> to</c><02:08:14.560><c> booking,</c><02:08:15.000><c> both</c>

02:08:15.350 --> 02:08:15.360 align:start position:0%
needs to have access to booking, both
 

02:08:15.360 --> 02:08:17.830 align:start position:0%
needs to have access to booking, both
customers<02:08:16.120><c> and</c><02:08:16.280><c> helpers.</c><02:08:16.920><c> Booking</c><02:08:17.240><c> status,</c>

02:08:17.830 --> 02:08:17.840 align:start position:0%
customers and helpers. Booking status,
 

02:08:17.840 --> 02:08:20.430 align:start position:0%
customers and helpers. Booking status,
service,<02:08:18.360><c> category,</c><02:08:19.160><c> and</c><02:08:19.320><c> so</c><02:08:19.760><c> right</c><02:08:20.040><c> away</c><02:08:20.360><c> I</c>

02:08:20.430 --> 02:08:20.440 align:start position:0%
service, category, and so right away I
 

02:08:20.440 --> 02:08:24.070 align:start position:0%
service, category, and so right away I
see<02:08:20.800><c> that</c><02:08:21.640><c> this</c><02:08:21.880><c> is</c><02:08:22.200><c> a</c><02:08:22.320><c> fairly</c><02:08:23.240><c> sophisticated</c>

02:08:24.070 --> 02:08:24.080 align:start position:0%
see that this is a fairly sophisticated
 

02:08:24.080 --> 02:08:26.750 align:start position:0%
see that this is a fairly sophisticated
app,<02:08:24.360><c> but</c><02:08:24.520><c> I</c><02:08:24.600><c> can</c><02:08:24.800><c> see</c><02:08:25.000><c> that</c><02:08:25.160><c> it's</c><02:08:25.360><c> not</c><02:08:25.760><c> a</c><02:08:25.880><c> super</c>

02:08:26.750 --> 02:08:26.760 align:start position:0%
app, but I can see that it's not a super
 

02:08:26.760 --> 02:08:29.910 align:start position:0%
app, but I can see that it's not a super
complex<02:08:27.560><c> or</c><02:08:27.800><c> like</c><02:08:28.040><c> a</c><02:08:28.120><c> super</c><02:08:28.560><c> complicated</c><02:08:29.360><c> app</c>

02:08:29.910 --> 02:08:29.920 align:start position:0%
complex or like a super complicated app
 

02:08:29.920 --> 02:08:32.150 align:start position:0%
complex or like a super complicated app
that<02:08:30.560><c> you</c><02:08:30.640><c> know</c><02:08:30.800><c> has</c><02:08:31.080><c> a</c><02:08:31.240><c> ton</c><02:08:31.640><c> of</c><02:08:31.800><c> different</c>

02:08:32.150 --> 02:08:32.160 align:start position:0%
that you know has a ton of different
 

02:08:32.160 --> 02:08:34.550 align:start position:0%
that you know has a ton of different
entities,<02:08:32.800><c> has</c><02:08:33.080><c> lots</c><02:08:33.440><c> of</c><02:08:33.560><c> things</c><02:08:33.840><c> happening.</c>

02:08:34.550 --> 02:08:34.560 align:start position:0%
entities, has lots of things happening.
 

02:08:34.560 --> 02:08:37.150 align:start position:0%
entities, has lots of things happening.
But<02:08:34.800><c> still,</c><02:08:35.320><c> as</c><02:08:35.680><c> we</c><02:08:35.920><c> are</c><02:08:36.280><c> developing</c><02:08:36.880><c> this</c>

02:08:37.150 --> 02:08:37.160 align:start position:0%
But still, as we are developing this
 

02:08:37.160 --> 02:08:39.950 align:start position:0%
But still, as we are developing this
app,<02:08:37.400><c> we</c><02:08:37.600><c> might</c><02:08:38.000><c> be</c><02:08:38.240><c> adding</c><02:08:38.800><c> various</c><02:08:39.400><c> entities</c>

02:08:39.950 --> 02:08:39.960 align:start position:0%
app, we might be adding various entities
 

02:08:39.960 --> 02:08:42.430 align:start position:0%
app, we might be adding various entities
and<02:08:40.080><c> so</c><02:08:40.240><c> that</c><02:08:40.600><c> will</c><02:08:40.920><c> increase</c><02:08:41.400><c> the</c><02:08:41.520><c> complexity</c>

02:08:42.430 --> 02:08:42.440 align:start position:0%
and so that will increase the complexity
 

02:08:42.440 --> 02:08:45.030 align:start position:0%
and so that will increase the complexity
as<02:08:42.640><c> the</c><02:08:42.760><c> development</c><02:08:43.680><c> can</c><02:08:43.840><c> continues.</c><02:08:44.800><c> Now,</c>

02:08:45.030 --> 02:08:45.040 align:start position:0%
as the development can continues. Now,
 

02:08:45.040 --> 02:08:47.230 align:start position:0%
as the development can continues. Now,
the<02:08:45.160><c> next</c><02:08:45.560><c> step</c><02:08:45.960><c> is</c><02:08:46.320><c> before</c><02:08:46.760><c> we</c><02:08:46.880><c> start</c>

02:08:47.230 --> 02:08:47.240 align:start position:0%
the next step is before we start
 

02:08:47.240 --> 02:08:49.670 align:start position:0%
the next step is before we start
actually<02:08:47.680><c> building</c><02:08:48.120><c> the</c><02:08:48.280><c> app</c><02:08:48.720><c> is</c><02:08:49.240><c> we</c><02:08:49.400><c> want</c><02:08:49.640><c> to</c>

02:08:49.670 --> 02:08:49.680 align:start position:0%
actually building the app is we want to
 

02:08:49.680 --> 02:08:52.590 align:start position:0%
actually building the app is we want to
ask<02:08:50.000><c> Codex</c><02:08:50.520><c> to</c><02:08:50.760><c> recommend</c><02:08:51.560><c> the</c><02:08:51.840><c> simplest</c>

02:08:52.590 --> 02:08:52.600 align:start position:0%
ask Codex to recommend the simplest
 

02:08:52.600 --> 02:08:56.030 align:start position:0%
ask Codex to recommend the simplest
stack<02:08:53.280><c> for</c><02:08:53.600><c> FlexHelp</c><02:08:54.560><c> based</c><02:08:55.360><c> on</c><02:08:55.440><c> what</c><02:08:55.680><c> we</c><02:08:55.800><c> need</c>

02:08:56.030 --> 02:08:56.040 align:start position:0%
stack for FlexHelp based on what we need
 

02:08:56.040 --> 02:08:59.350 align:start position:0%
stack for FlexHelp based on what we need
to<02:08:56.160><c> build</c><02:08:56.760><c> based</c><02:08:57.520><c> on</c><02:08:57.800><c> what</c><02:08:58.240><c> we've</c><02:08:58.600><c> told</c><02:08:59.000><c> it</c><02:08:59.120><c> so</c>

02:08:59.350 --> 02:08:59.360 align:start position:0%
to build based on what we've told it so
 

02:08:59.360 --> 02:09:02.230 align:start position:0%
to build based on what we've told it so
far.<02:09:00.000><c> This</c><02:09:00.320><c> keeps</c><02:09:00.680><c> the</c><02:09:00.800><c> technology</c><02:09:01.560><c> choices</c>

02:09:02.230 --> 02:09:02.240 align:start position:0%
far. This keeps the technology choices
 

02:09:02.240 --> 02:09:04.670 align:start position:0%
far. This keeps the technology choices
tied<02:09:02.560><c> to</c><02:09:02.680><c> the</c><02:09:02.800><c> product</c><02:09:03.480><c> instead</c><02:09:03.960><c> of</c><02:09:04.080><c> starting</c>

02:09:04.670 --> 02:09:04.680 align:start position:0%
tied to the product instead of starting
 

02:09:04.680 --> 02:09:06.830 align:start position:0%
tied to the product instead of starting
with<02:09:04.920><c> tools</c><02:09:05.560><c> first.</c><02:09:06.080><c> And</c><02:09:06.200><c> this</c><02:09:06.320><c> is</c><02:09:06.480><c> super</c>

02:09:06.830 --> 02:09:06.840 align:start position:0%
with tools first. And this is super
 

02:09:06.840 --> 02:09:09.790 align:start position:0%
with tools first. And this is super
important<02:09:07.680><c> because</c><02:09:08.560><c> we</c><02:09:08.720><c> want</c><02:09:08.920><c> to</c><02:09:09.040><c> start</c><02:09:09.640><c> with</c>

02:09:09.790 --> 02:09:09.800 align:start position:0%
important because we want to start with
 

02:09:09.800 --> 02:09:13.070 align:start position:0%
important because we want to start with
the<02:09:09.920><c> blueprint</c><02:09:10.720><c> before</c><02:09:11.920><c> any</c><02:09:12.240><c> code</c><02:09:12.600><c> has</c><02:09:12.880><c> been</c>

02:09:13.070 --> 02:09:13.080 align:start position:0%
the blueprint before any code has been
 

02:09:13.080 --> 02:09:14.870 align:start position:0%
the blueprint before any code has been
written.<02:09:13.560><c> And</c><02:09:13.720><c> here's</c><02:09:14.040><c> the</c><02:09:14.160><c> prompt</c><02:09:14.600><c> to</c><02:09:14.720><c> do</c>

02:09:14.870 --> 02:09:14.880 align:start position:0%
written. And here's the prompt to do
 

02:09:14.880 --> 02:09:17.590 align:start position:0%
written. And here's the prompt to do
that.<02:09:15.440><c> Do</c><02:09:15.560><c> not</c><02:09:15.920><c> edit</c><02:09:16.200><c> any</c><02:09:16.400><c> files</c><02:09:16.960><c> and</c><02:09:17.160><c> spec</c>

02:09:17.590 --> 02:09:17.600 align:start position:0%
that. Do not edit any files and spec
 

02:09:17.600 --> 02:09:19.190 align:start position:0%
that. Do not edit any files and spec
everything.<02:09:18.280><c> And</c><02:09:18.400><c> I'm</c><02:09:18.520><c> going</c><02:09:18.640><c> to</c><02:09:18.720><c> be</c><02:09:18.840><c> running</c>

02:09:19.190 --> 02:09:19.200 align:start position:0%
everything. And I'm going to be running
 

02:09:19.200 --> 02:09:21.630 align:start position:0%
everything. And I'm going to be running
this<02:09:19.440><c> in</c><02:09:19.680><c> plan</c><02:09:20.120><c> mode</c><02:09:20.400><c> so</c><02:09:20.480><c> that</c><02:09:20.680><c> I</c><02:09:20.760><c> can</c><02:09:20.960><c> decide</c>

02:09:21.630 --> 02:09:21.640 align:start position:0%
this in plan mode so that I can decide
 

02:09:21.640 --> 02:09:23.510 align:start position:0%
this in plan mode so that I can decide
whether<02:09:21.920><c> I</c><02:09:22.000><c> want</c><02:09:22.200><c> to</c><02:09:22.320><c> accept</c><02:09:23.040><c> its</c>

02:09:23.510 --> 02:09:23.520 align:start position:0%
whether I want to accept its
 

02:09:23.520 --> 02:09:25.550 align:start position:0%
whether I want to accept its
recommendations<02:09:24.520><c> or</c><02:09:24.680><c> just</c><02:09:25.080><c> leave</c><02:09:25.200><c> it</c><02:09:25.360><c> in</c><02:09:25.440><c> the</c>

02:09:25.550 --> 02:09:25.560 align:start position:0%
recommendations or just leave it in the
 

02:09:25.560 --> 02:09:27.510 align:start position:0%
recommendations or just leave it in the
conversation.<02:09:26.600><c> Going</c><02:09:26.720><c> to</c><02:09:26.800><c> run</c><02:09:27.000><c> this</c><02:09:27.200><c> here.</c>

02:09:27.510 --> 02:09:27.520 align:start position:0%
conversation. Going to run this here.
 

02:09:27.520 --> 02:09:29.470 align:start position:0%
conversation. Going to run this here.
This<02:09:27.720><c> is</c><02:09:27.920><c> what</c><02:09:28.080><c> it's</c><02:09:28.240><c> suggesting.</c><02:09:29.360><c> The</c>

02:09:29.470 --> 02:09:29.480 align:start position:0%
This is what it's suggesting. The
 

02:09:29.480 --> 02:09:31.350 align:start position:0%
This is what it's suggesting. The
workspace<02:09:30.040><c> is</c><02:09:30.160><c> currently</c><02:09:30.560><c> empty.</c><02:09:31.200><c> The</c>

02:09:31.350 --> 02:09:31.360 align:start position:0%
workspace is currently empty. The
 

02:09:31.360 --> 02:09:34.270 align:start position:0%
workspace is currently empty. The
simplest<02:09:32.000><c> course-friendly</c><02:09:32.880><c> stack</c><02:09:33.480><c> is</c><02:09:33.720><c> React,</c>

02:09:34.270 --> 02:09:34.280 align:start position:0%
simplest course-friendly stack is React,
 

02:09:34.280 --> 02:09:37.150 align:start position:0%
simplest course-friendly stack is React,
TypeScript,<02:09:35.160><c> Convex</c><02:09:35.760><c> for</c><02:09:36.000><c> backend</c><02:09:36.760><c> data,</c>

02:09:37.150 --> 02:09:37.160 align:start position:0%
TypeScript, Convex for backend data,
 

02:09:37.160 --> 02:09:40.710 align:start position:0%
TypeScript, Convex for backend data,
off,<02:09:37.800><c> Tailwind</c><02:09:38.680><c> for</c><02:09:39.240><c> UI,</c><02:09:39.800><c> and</c><02:09:40.040><c> Vercel</c><02:09:40.520><c> for</c>

02:09:40.710 --> 02:09:40.720 align:start position:0%
off, Tailwind for UI, and Vercel for
 

02:09:40.720 --> 02:09:43.030 align:start position:0%
off, Tailwind for UI, and Vercel for
hosting.<02:09:41.200><c> Okay,</c><02:09:41.440><c> and</c><02:09:41.520><c> this</c><02:09:41.720><c> is</c><02:09:41.880><c> exactly</c><02:09:42.720><c> what</c>

02:09:43.030 --> 02:09:43.040 align:start position:0%
hosting. Okay, and this is exactly what
 

02:09:43.040 --> 02:09:45.190 align:start position:0%
hosting. Okay, and this is exactly what
we've<02:09:43.200><c> been</c><02:09:43.400><c> doing</c><02:09:43.720><c> so</c><02:09:44.040><c> far.</c><02:09:44.560><c> And</c><02:09:44.760><c> and</c><02:09:44.920><c> here</c>

02:09:45.190 --> 02:09:45.200 align:start position:0%
we've been doing so far. And and here
 

02:09:45.200 --> 02:09:47.310 align:start position:0%
we've been doing so far. And and here
it's<02:09:45.440><c> listing</c><02:09:45.840><c> some</c><02:09:46.040><c> primary</c><02:09:46.560><c> routes.</c>

02:09:47.310 --> 02:09:47.320 align:start position:0%
it's listing some primary routes.
 

02:09:47.320 --> 02:09:49.990 align:start position:0%
it's listing some primary routes.
Services,<02:09:48.080><c> bookings,</c><02:09:48.880><c> customer</c><02:09:49.480><c> bookings,</c>

02:09:49.990 --> 02:09:50.000 align:start position:0%
Services, bookings, customer bookings,
 

02:09:50.000 --> 02:09:52.350 align:start position:0%
Services, bookings, customer bookings,
helper,<02:09:50.520><c> helper</c><02:09:50.920><c> services.</c><02:09:51.880><c> Here</c><02:09:52.040><c> we</c><02:09:52.200><c> have</c>

02:09:52.350 --> 02:09:52.360 align:start position:0%
helper, helper services. Here we have
 

02:09:52.360 --> 02:09:54.950 align:start position:0%
helper, helper services. Here we have
the<02:09:52.480><c> data</c><02:09:52.800><c> flow,</c><02:09:53.080><c> the</c><02:09:53.280><c> auth</c><02:09:53.640><c> recommendations,</c>

02:09:54.950 --> 02:09:54.960 align:start position:0%
the data flow, the auth recommendations,
 

02:09:54.960 --> 02:09:57.630 align:start position:0%
the data flow, the auth recommendations,
UI<02:09:55.360><c> and</c><02:09:55.520><c> component</c><02:09:56.200><c> approach,</c><02:09:57.080><c> Vercel</c>

02:09:57.630 --> 02:09:57.640 align:start position:0%
UI and component approach, Vercel
 

02:09:57.640 --> 02:10:00.830 align:start position:0%
UI and component approach, Vercel
deployment<02:09:58.560><c> path,</c><02:09:59.440><c> staged</c><02:09:59.960><c> build</c><02:10:00.440><c> plan,</c>

02:10:00.830 --> 02:10:00.840 align:start position:0%
deployment path, staged build plan,
 

02:10:00.840 --> 02:10:02.830 align:start position:0%
deployment path, staged build plan,
everything.<02:10:01.480><c> Okay?</c><02:10:01.800><c> So,</c><02:10:02.000><c> I'm</c><02:10:02.120><c> going</c><02:10:02.240><c> to</c><02:10:02.400><c> exit</c>

02:10:02.830 --> 02:10:02.840 align:start position:0%
everything. Okay? So, I'm going to exit
 

02:10:02.840 --> 02:10:05.910 align:start position:0%
everything. Okay? So, I'm going to exit
out<02:10:03.240><c> because</c><02:10:03.560><c> this</c><02:10:03.760><c> was</c><02:10:04.000><c> only</c><02:10:04.680><c> a</c><02:10:04.840><c> read-only</c>

02:10:05.910 --> 02:10:05.920 align:start position:0%
out because this was only a read-only
 

02:10:05.920 --> 02:10:07.710 align:start position:0%
out because this was only a read-only
plan<02:10:06.280><c> mode.</c><02:10:06.640><c> Okay?</c><02:10:06.880><c> I</c><02:10:06.960><c> don't</c><02:10:07.120><c> want</c><02:10:07.240><c> it</c><02:10:07.360><c> to</c><02:10:07.520><c> do</c>

02:10:07.710 --> 02:10:07.720 align:start position:0%
plan mode. Okay? I don't want it to do
 

02:10:07.720 --> 02:10:09.990 align:start position:0%
plan mode. Okay? I don't want it to do
anything<02:10:08.160><c> just</c><02:10:08.520><c> yet</c><02:10:09.200><c> because</c><02:10:09.520><c> that's</c><02:10:09.840><c> what</c>

02:10:09.990 --> 02:10:10.000 align:start position:0%
anything just yet because that's what
 

02:10:10.000 --> 02:10:11.270 align:start position:0%
anything just yet because that's what
we're<02:10:10.120><c> going</c><02:10:10.280><c> to</c><02:10:10.360><c> be</c><02:10:10.440><c> doing</c><02:10:10.760><c> in</c><02:10:10.880><c> the</c><02:10:10.960><c> next</c>

02:10:11.270 --> 02:10:11.280 align:start position:0%
we're going to be doing in the next
 

02:10:11.280 --> 02:10:13.350 align:start position:0%
we're going to be doing in the next
step.<02:10:11.600><c> Now,</c><02:10:11.760><c> from</c><02:10:12.000><c> the</c><02:10:12.120><c> visual</c><02:10:12.640><c> architecture,</c>

02:10:13.350 --> 02:10:13.360 align:start position:0%
step. Now, from the visual architecture,
 

02:10:13.360 --> 02:10:15.030 align:start position:0%
step. Now, from the visual architecture,
the<02:10:13.520><c> entity</c><02:10:13.960><c> map,</c><02:10:14.360><c> and</c><02:10:14.520><c> the</c><02:10:14.600><c> stack</c>

02:10:15.030 --> 02:10:15.040 align:start position:0%
the entity map, and the stack
 

02:10:15.040 --> 02:10:17.230 align:start position:0%
the entity map, and the stack
recommendation,<02:10:15.840><c> we</c><02:10:16.080><c> have</c><02:10:16.320><c> a</c><02:10:16.480><c> pretty</c><02:10:16.960><c> good</c>

02:10:17.230 --> 02:10:17.240 align:start position:0%
recommendation, we have a pretty good
 

02:10:17.240 --> 02:10:20.390 align:start position:0%
recommendation, we have a pretty good
idea<02:10:17.800><c> of</c><02:10:18.080><c> how</c><02:10:18.400><c> the</c><02:10:18.560><c> FlexHelp</c><02:10:19.600><c> app</c><02:10:20.000><c> is</c>

02:10:20.390 --> 02:10:20.400 align:start position:0%
idea of how the FlexHelp app is
 

02:10:20.400 --> 02:10:22.390 align:start position:0%
idea of how the FlexHelp app is
evolving.<02:10:21.280><c> The</c><02:10:21.360><c> next</c><02:10:21.680><c> thing</c><02:10:21.840><c> that</c><02:10:22.000><c> we</c><02:10:22.120><c> want</c><02:10:22.320><c> to</c>

02:10:22.390 --> 02:10:22.400 align:start position:0%
evolving. The next thing that we want to
 

02:10:22.400 --> 02:10:24.510 align:start position:0%
evolving. The next thing that we want to
do<02:10:22.560><c> is</c><02:10:22.680><c> we</c><02:10:22.800><c> want</c><02:10:22.960><c> to</c><02:10:23.040><c> get</c><02:10:23.280><c> Codex</c><02:10:23.920><c> to</c><02:10:24.040><c> take</c><02:10:24.400><c> a</c>

02:10:24.510 --> 02:10:24.520 align:start position:0%
do is we want to get Codex to take a
 

02:10:24.520 --> 02:10:27.670 align:start position:0%
do is we want to get Codex to take a
first<02:10:25.120><c> pass</c><02:10:25.720><c> at</c><02:10:25.880><c> turning</c><02:10:26.280><c> that</c><02:10:26.560><c> plan</c><02:10:27.160><c> into</c><02:10:27.520><c> a</c>

02:10:27.670 --> 02:10:27.680 align:start position:0%
first pass at turning that plan into a
 

02:10:27.680 --> 02:10:30.310 align:start position:0%
first pass at turning that plan into a
static<02:10:28.400><c> product</c><02:10:28.920><c> UI.</c><02:10:29.600><c> Now,</c><02:10:29.760><c> this</c><02:10:30.000><c> first</c>

02:10:30.310 --> 02:10:30.320 align:start position:0%
static product UI. Now, this first
 

02:10:30.320 --> 02:10:32.550 align:start position:0%
static product UI. Now, this first
version<02:10:30.640><c> does</c><02:10:30.800><c> not</c><02:10:31.120><c> need</c><02:10:31.400><c> any</c><02:10:31.680><c> back-end</c><02:10:32.160><c> data.</c>

02:10:32.550 --> 02:10:32.560 align:start position:0%
version does not need any back-end data.
 

02:10:32.560 --> 02:10:34.990 align:start position:0%
version does not need any back-end data.
The<02:10:32.680><c> goal</c><02:10:33.040><c> is</c><02:10:33.240><c> to</c><02:10:33.360><c> see</c><02:10:33.560><c> how</c><02:10:33.760><c> far</c><02:10:34.120><c> Codex</c><02:10:34.600><c> can</c><02:10:34.760><c> get</c>

02:10:34.990 --> 02:10:35.000 align:start position:0%
The goal is to see how far Codex can get
 

02:10:35.000 --> 02:10:38.550 align:start position:0%
The goal is to see how far Codex can get
from<02:10:35.160><c> the</c><02:10:35.320><c> architecture</c><02:10:36.120><c> alone</c><02:10:36.920><c> to</c><02:10:37.520><c> viable</c><02:10:38.200><c> UI</c>

02:10:38.550 --> 02:10:38.560 align:start position:0%
from the architecture alone to viable UI
 

02:10:38.560 --> 02:10:40.550 align:start position:0%
from the architecture alone to viable UI
mock-ups.<02:10:39.600><c> And</c><02:10:39.760><c> this</c><02:10:39.920><c> is</c><02:10:40.040><c> the</c><02:10:40.160><c> prompt</c><02:10:40.440><c> that</c>

02:10:40.550 --> 02:10:40.560 align:start position:0%
mock-ups. And this is the prompt that
 

02:10:40.560 --> 02:10:42.230 align:start position:0%
mock-ups. And this is the prompt that
I'm<02:10:40.640><c> going</c><02:10:40.760><c> to</c><02:10:40.840><c> be</c><02:10:40.960><c> using.</c><02:10:41.400><c> Build</c><02:10:41.720><c> the</c><02:10:41.800><c> first</c>

02:10:42.230 --> 02:10:42.240 align:start position:0%
I'm going to be using. Build the first
 

02:10:42.240 --> 02:10:44.670 align:start position:0%
I'm going to be using. Build the first
static<02:10:43.000><c> FlexHelp</c><02:10:43.680><c> UI</c><02:10:43.880><c> design</c><02:10:44.400><c> from</c><02:10:44.600><c> the</c>

02:10:44.670 --> 02:10:44.680 align:start position:0%
static FlexHelp UI design from the
 

02:10:44.680 --> 02:10:46.870 align:start position:0%
static FlexHelp UI design from the
existing<02:10:45.160><c> architecture</c><02:10:46.040><c> and</c><02:10:46.320><c> stack</c>

02:10:46.870 --> 02:10:46.880 align:start position:0%
existing architecture and stack
 

02:10:46.880 --> 02:10:48.630 align:start position:0%
existing architecture and stack
direction.<02:10:47.720><c> We're</c><02:10:47.880><c> going</c><02:10:48.000><c> to</c><02:10:48.080><c> stay</c><02:10:48.400><c> in</c><02:10:48.520><c> the</c>

02:10:48.630 --> 02:10:48.640 align:start position:0%
direction. We're going to stay in the
 

02:10:48.640 --> 02:10:50.670 align:start position:0%
direction. We're going to stay in the
plan<02:10:49.000><c> mode.</c><02:10:49.520><c> Going</c><02:10:49.680><c> to</c><02:10:49.760><c> go</c><02:10:49.880><c> ahead</c><02:10:50.080><c> and</c><02:10:50.200><c> execute</c>

02:10:50.670 --> 02:10:50.680 align:start position:0%
plan mode. Going to go ahead and execute
 

02:10:50.680 --> 02:10:53.110 align:start position:0%
plan mode. Going to go ahead and execute
that.<02:10:51.160><c> And</c><02:10:51.520><c> let's</c><02:10:51.800><c> see</c><02:10:52.000><c> how</c><02:10:52.200><c> well</c><02:10:52.400><c> it</c><02:10:52.520><c> does.</c>

02:10:53.110 --> 02:10:53.120 align:start position:0%
that. And let's see how well it does.
 

02:10:53.120 --> 02:10:54.870 align:start position:0%
that. And let's see how well it does.
And<02:10:53.280><c> here's</c><02:10:53.680><c> the</c><02:10:53.800><c> plan</c><02:10:54.120><c> that</c><02:10:54.280><c> it</c><02:10:54.400><c> came</c><02:10:54.680><c> up</c>

02:10:54.870 --> 02:10:54.880 align:start position:0%
And here's the plan that it came up
 

02:10:54.880 --> 02:10:57.070 align:start position:0%
And here's the plan that it came up
with.<02:10:55.200><c> Okay,</c><02:10:55.560><c> the</c><02:10:55.720><c> goal</c><02:10:56.000><c> is</c><02:10:56.200><c> a</c><02:10:56.320><c> polished</c>

02:10:57.070 --> 02:10:57.080 align:start position:0%
with. Okay, the goal is a polished
 

02:10:57.080 --> 02:10:59.390 align:start position:0%
with. Okay, the goal is a polished
visual<02:10:57.480><c> prototype</c><02:10:58.400><c> that</c><02:10:58.640><c> matches</c><02:10:59.280><c> the</c>

02:10:59.390 --> 02:10:59.400 align:start position:0%
visual prototype that matches the
 

02:10:59.400 --> 02:11:01.630 align:start position:0%
visual prototype that matches the
FlexHelp<02:11:00.200><c> architecture.</c><02:11:00.920><c> Okay,</c><02:11:01.200><c> and</c><02:11:01.320><c> here</c><02:11:01.520><c> it</c>

02:11:01.630 --> 02:11:01.640 align:start position:0%
FlexHelp architecture. Okay, and here it
 

02:11:01.640 --> 02:11:03.190 align:start position:0%
FlexHelp architecture. Okay, and here it
lists<02:11:01.920><c> some</c><02:11:02.400><c> details</c><02:11:02.840><c> about</c><02:11:03.120><c> the</c>

02:11:03.190 --> 02:11:03.200 align:start position:0%
lists some details about the
 

02:11:03.200 --> 02:11:06.550 align:start position:0%
lists some details about the
architecture.<02:11:04.080><c> And</c><02:11:04.600><c> let's</c><02:11:04.880><c> go</c><02:11:05.000><c> ahead</c><02:11:05.600><c> and</c><02:11:06.240><c> run</c>

02:11:06.550 --> 02:11:06.560 align:start position:0%
architecture. And let's go ahead and run
 

02:11:06.560 --> 02:11:09.270 align:start position:0%
architecture. And let's go ahead and run
this<02:11:06.840><c> prompt.</c><02:11:07.400><c> So,</c><02:11:07.600><c> it</c><02:11:07.800><c> finished</c><02:11:08.440><c> working.</c>

02:11:09.270 --> 02:11:09.280 align:start position:0%
this prompt. So, it finished working.
 

02:11:09.280 --> 02:11:11.710 align:start position:0%
this prompt. So, it finished working.
And<02:11:09.920><c> let's</c><02:11:10.200><c> go</c><02:11:10.360><c> ahead</c><02:11:10.640><c> and</c><02:11:10.800><c> see</c><02:11:11.040><c> what</c><02:11:11.240><c> we</c><02:11:11.400><c> have</c>

02:11:11.710 --> 02:11:11.720 align:start position:0%
And let's go ahead and see what we have
 

02:11:11.720 --> 02:11:14.470 align:start position:0%
And let's go ahead and see what we have
here.<02:11:12.120><c> Okay,</c><02:11:12.560><c> so</c><02:11:12.760><c> this</c><02:11:13.040><c> is</c><02:11:13.240><c> our</c><02:11:13.520><c> app.</c><02:11:13.920><c> And</c><02:11:14.280><c> this</c>

02:11:14.470 --> 02:11:14.480 align:start position:0%
here. Okay, so this is our app. And this
 

02:11:14.480 --> 02:11:16.550 align:start position:0%
here. Okay, so this is our app. And this
is<02:11:14.640><c> kind</c><02:11:14.880><c> of</c><02:11:14.960><c> how</c><02:11:15.080><c> it</c><02:11:15.240><c> looks</c><02:11:15.520><c> like.</c><02:11:15.880><c> Okay,</c><02:11:16.240><c> book</c>

02:11:16.550 --> 02:11:16.560 align:start position:0%
is kind of how it looks like. Okay, book
 

02:11:16.560 --> 02:11:19.350 align:start position:0%
is kind of how it looks like. Okay, book
practical<02:11:17.200><c> help.</c><02:11:17.680><c> And</c><02:11:18.280><c> we</c><02:11:18.400><c> have</c><02:11:18.640><c> some</c><02:11:18.920><c> active</c>

02:11:19.350 --> 02:11:19.360 align:start position:0%
practical help. And we have some active
 

02:11:19.360 --> 02:11:22.110 align:start position:0%
practical help. And we have some active
requests.<02:11:20.280><c> We</c><02:11:20.440><c> have</c><02:11:20.760><c> booking</c><02:11:21.200><c> entry,</c><02:11:21.680><c> helper</c>

02:11:22.110 --> 02:11:22.120 align:start position:0%
requests. We have booking entry, helper
 

02:11:22.120 --> 02:11:25.030 align:start position:0%
requests. We have booking entry, helper
dashboard.<02:11:23.160><c> We</c><02:11:23.320><c> have</c><02:11:23.640><c> this.</c><02:11:24.320><c> Look</c><02:11:24.520><c> at</c><02:11:24.640><c> this.</c>

02:11:25.030 --> 02:11:25.040 align:start position:0%
dashboard. We have this. Look at this.
 

02:11:25.040 --> 02:11:28.510 align:start position:0%
dashboard. We have this. Look at this.
It<02:11:25.240><c> even</c><02:11:25.520><c> works.</c><02:11:26.200><c> Service</c><02:11:26.760><c> detail,</c><02:11:27.760><c> a</c><02:11:27.880><c> small</c>

02:11:28.510 --> 02:11:28.520 align:start position:0%
It even works. Service detail, a small
 

02:11:28.520 --> 02:11:31.590 align:start position:0%
It even works. Service detail, a small
plumbing<02:11:29.040><c> repair,</c><02:11:29.800><c> helper</c><02:11:30.200><c> dashboard</c><02:11:30.960><c> shell.</c>

02:11:31.590 --> 02:11:31.600 align:start position:0%
plumbing repair, helper dashboard shell.
 

02:11:31.600 --> 02:11:34.270 align:start position:0%
plumbing repair, helper dashboard shell.
And<02:11:31.800><c> so,</c><02:11:32.040><c> this</c><02:11:32.480><c> UI</c><02:11:33.040><c> doesn't</c><02:11:33.480><c> look</c><02:11:33.680><c> too</c><02:11:33.880><c> bad.</c>

02:11:34.270 --> 02:11:34.280 align:start position:0%
And so, this UI doesn't look too bad.
 

02:11:34.280 --> 02:11:36.350 align:start position:0%
And so, this UI doesn't look too bad.
But<02:11:34.520><c> there's</c><02:11:35.240><c> something</c><02:11:35.760><c> that</c><02:11:35.920><c> you</c><02:11:36.040><c> need</c><02:11:36.240><c> to</c>

02:11:36.350 --> 02:11:36.360 align:start position:0%
But there's something that you need to
 

02:11:36.360 --> 02:11:39.470 align:start position:0%
But there's something that you need to
know<02:11:36.600><c> when</c><02:11:36.760><c> you</c><02:11:36.880><c> design</c><02:11:37.840><c> UI</c><02:11:38.280><c> with</c><02:11:38.520><c> Codex.</c><02:11:39.240><c> They</c>

02:11:39.470 --> 02:11:39.480 align:start position:0%
know when you design UI with Codex. They
 

02:11:39.480 --> 02:11:42.230 align:start position:0%
know when you design UI with Codex. They
all<02:11:39.800><c> look</c><02:11:40.320><c> pretty</c><02:11:40.560><c> much</c><02:11:41.080><c> the</c><02:11:41.240><c> same</c><02:11:41.920><c> or</c><02:11:42.080><c> at</c>

02:11:42.230 --> 02:11:42.240 align:start position:0%
all look pretty much the same or at
 

02:11:42.240 --> 02:11:44.590 align:start position:0%
all look pretty much the same or at
least<02:11:42.640><c> very,</c><02:11:43.080><c> very</c><02:11:43.440><c> similar.</c><02:11:44.120><c> And</c><02:11:44.280><c> that</c><02:11:44.440><c> is</c>

02:11:44.590 --> 02:11:44.600 align:start position:0%
least very, very similar. And that is
 

02:11:44.600 --> 02:11:48.230 align:start position:0%
least very, very similar. And that is
because<02:11:45.000><c> Codex</c><02:11:45.880><c> is</c><02:11:46.080><c> not</c><02:11:46.560><c> really</c><02:11:47.240><c> an</c><02:11:47.520><c> expert</c>

02:11:48.230 --> 02:11:48.240 align:start position:0%
because Codex is not really an expert
 

02:11:48.240 --> 02:11:50.390 align:start position:0%
because Codex is not really an expert
when<02:11:48.400><c> it</c><02:11:48.520><c> comes</c><02:11:48.840><c> to</c><02:11:48.960><c> designing</c><02:11:49.640><c> pages.</c><02:11:50.200><c> It's</c>

02:11:50.390 --> 02:11:50.400 align:start position:0%
when it comes to designing pages. It's
 

02:11:50.400 --> 02:11:53.150 align:start position:0%
when it comes to designing pages. It's
great<02:11:50.960><c> for</c><02:11:51.120><c> coding,</c><02:11:51.880><c> for</c><02:11:52.040><c> solving</c><02:11:52.680><c> all</c><02:11:52.880><c> kinds</c>

02:11:53.150 --> 02:11:53.160 align:start position:0%
great for coding, for solving all kinds
 

02:11:53.160 --> 02:11:56.030 align:start position:0%
great for coding, for solving all kinds
of<02:11:53.280><c> problems.</c><02:11:54.040><c> But</c><02:11:54.200><c> for</c><02:11:54.480><c> actually</c><02:11:55.120><c> designing</c>

02:11:56.030 --> 02:11:56.040 align:start position:0%
of problems. But for actually designing
 

02:11:56.040 --> 02:11:58.950 align:start position:0%
of problems. But for actually designing
stuff,<02:11:56.320><c> it's</c><02:11:56.520><c> not</c><02:11:57.280><c> the</c><02:11:57.440><c> most</c><02:11:58.040><c> ideal</c><02:11:58.560><c> tool.</c>

02:11:58.950 --> 02:11:58.960 align:start position:0%
stuff, it's not the most ideal tool.
 

02:11:58.960 --> 02:12:00.790 align:start position:0%
stuff, it's not the most ideal tool.
There<02:11:59.240><c> are</c><02:11:59.320><c> a</c><02:11:59.400><c> lot</c><02:11:59.800><c> of</c><02:11:59.920><c> other</c><02:12:00.120><c> tools</c><02:12:00.520><c> that</c><02:12:00.680><c> do</c>

02:12:00.790 --> 02:12:00.800 align:start position:0%
There are a lot of other tools that do
 

02:12:00.800 --> 02:12:03.190 align:start position:0%
There are a lot of other tools that do
it<02:12:00.960><c> a</c><02:12:01.040><c> lot</c><02:12:01.360><c> better.</c><02:12:01.920><c> And</c><02:12:02.080><c> so,</c><02:12:02.680><c> during</c><02:12:03.000><c> this</c>

02:12:03.190 --> 02:12:03.200 align:start position:0%
it a lot better. And so, during this
 

02:12:03.200 --> 02:12:05.470 align:start position:0%
it a lot better. And so, during this
specific<02:12:03.800><c> app</c><02:12:04.040><c> build,</c><02:12:04.600><c> I</c><02:12:04.760><c> want</c><02:12:04.960><c> to</c><02:12:05.040><c> bring</c><02:12:05.360><c> in</c>

02:12:05.470 --> 02:12:05.480 align:start position:0%
specific app build, I want to bring in
 

02:12:05.480 --> 02:12:08.150 align:start position:0%
specific app build, I want to bring in
another<02:12:05.920><c> tool</c><02:12:06.520><c> and</c><02:12:06.760><c> show</c><02:12:07.200><c> you</c><02:12:07.520><c> how</c><02:12:07.760><c> we</c><02:12:07.920><c> can</c>

02:12:08.150 --> 02:12:08.160 align:start position:0%
another tool and show you how we can
 

02:12:08.160 --> 02:12:10.750 align:start position:0%
another tool and show you how we can
have<02:12:08.560><c> a</c><02:12:08.720><c> more</c><02:12:09.040><c> specialized</c><02:12:09.840><c> tool</c><02:12:10.320><c> actually</c>

02:12:10.750 --> 02:12:10.760 align:start position:0%
have a more specialized tool actually
 

02:12:10.760 --> 02:12:13.430 align:start position:0%
have a more specialized tool actually
design<02:12:11.240><c> the</c><02:12:11.360><c> UI</c><02:12:11.760><c> and</c><02:12:11.920><c> then</c><02:12:12.120><c> bring</c><02:12:12.440><c> that</c><02:12:12.960><c> UI</c>

02:12:13.430 --> 02:12:13.440 align:start position:0%
design the UI and then bring that UI
 

02:12:13.440 --> 02:12:16.350 align:start position:0%
design the UI and then bring that UI
back<02:12:14.080><c> into</c><02:12:14.360><c> Codex</c><02:12:14.840><c> and</c><02:12:15.000><c> get</c><02:12:15.320><c> Codex</c><02:12:15.840><c> to</c><02:12:15.960><c> kind</c><02:12:16.200><c> of</c>

02:12:16.350 --> 02:12:16.360 align:start position:0%
back into Codex and get Codex to kind of
 

02:12:16.360 --> 02:12:18.790 align:start position:0%
back into Codex and get Codex to kind of
implement<02:12:17.000><c> it.</c><02:12:17.280><c> okay?</c><02:12:17.800><c> Now,</c><02:12:18.160><c> when</c><02:12:18.320><c> it</c><02:12:18.440><c> comes</c>

02:12:18.790 --> 02:12:18.800 align:start position:0%
implement it. okay? Now, when it comes
 

02:12:18.800 --> 02:12:21.070 align:start position:0%
implement it. okay? Now, when it comes
to<02:12:19.000><c> UI</c><02:12:19.440><c> designs,</c><02:12:20.120><c> there's</c><02:12:20.360><c> lots</c><02:12:20.680><c> of</c><02:12:20.840><c> cool</c>

02:12:21.070 --> 02:12:21.080 align:start position:0%
to UI designs, there's lots of cool
 

02:12:21.080 --> 02:12:23.710 align:start position:0%
to UI designs, there's lots of cool
tools.<02:12:21.560><c> There's</c><02:12:22.080><c> Google</c><02:12:22.440><c> Stitch,</c><02:12:23.360><c> there's</c>

02:12:23.710 --> 02:12:23.720 align:start position:0%
tools. There's Google Stitch, there's
 

02:12:23.720 --> 02:12:25.950 align:start position:0%
tools. There's Google Stitch, there's
Figma,<02:12:24.520><c> and</c><02:12:24.640><c> there's</c><02:12:24.920><c> also</c><02:12:25.320><c> a</c><02:12:25.400><c> tool</c><02:12:25.720><c> that</c><02:12:25.880><c> I</c>

02:12:25.950 --> 02:12:25.960 align:start position:0%
Figma, and there's also a tool that I
 

02:12:25.960 --> 02:12:28.150 align:start position:0%
Figma, and there's also a tool that I
really<02:12:26.280><c> like</c><02:12:26.600><c> to</c><02:12:26.760><c> use,</c><02:12:27.240><c> and</c><02:12:27.400><c> it</c><02:12:27.520><c> is</c><02:12:27.640><c> called</c>

02:12:28.150 --> 02:12:28.160 align:start position:0%
really like to use, and it is called
 

02:12:28.160 --> 02:12:30.870 align:start position:0%
really like to use, and it is called
FlutterFlow<02:12:28.840><c> Designer.</c><02:12:29.600><c> It's</c><02:12:29.800><c> a</c><02:12:29.920><c> very</c><02:12:30.520><c> very</c>

02:12:30.870 --> 02:12:30.880 align:start position:0%
FlutterFlow Designer. It's a very very
 

02:12:30.880 --> 02:12:33.470 align:start position:0%
FlutterFlow Designer. It's a very very
lightweight<02:12:31.720><c> tool,</c><02:12:32.280><c> and</c><02:12:32.400><c> it</c><02:12:32.520><c> works</c><02:12:32.960><c> really</c>

02:12:33.470 --> 02:12:33.480 align:start position:0%
lightweight tool, and it works really
 

02:12:33.480 --> 02:12:35.630 align:start position:0%
lightweight tool, and it works really
great<02:12:34.040><c> with</c><02:12:34.240><c> Codex.</c><02:12:34.920><c> And</c><02:12:35.080><c> so,</c><02:12:35.200><c> if</c><02:12:35.360><c> you</c><02:12:35.480><c> head</c>

02:12:35.630 --> 02:12:35.640 align:start position:0%
great with Codex. And so, if you head
 

02:12:35.640 --> 02:12:38.150 align:start position:0%
great with Codex. And so, if you head
over<02:12:35.880><c> to</c><02:12:36.000><c> designer.flutterflow.io,</c>

02:12:38.150 --> 02:12:38.160 align:start position:0%
over to designer.flutterflow.io,
 

02:12:38.160 --> 02:12:40.510 align:start position:0%
over to designer.flutterflow.io,
you're<02:12:38.480><c> going</c><02:12:38.640><c> to</c><02:12:38.720><c> be</c><02:12:38.840><c> on</c><02:12:39.040><c> this</c><02:12:39.400><c> page</c><02:12:39.920><c> here.</c>

02:12:40.510 --> 02:12:40.520 align:start position:0%
you're going to be on this page here.
 

02:12:40.520 --> 02:12:42.950 align:start position:0%
you're going to be on this page here.
And<02:12:40.920><c> you</c><02:12:41.200><c> can</c><02:12:41.480><c> use</c><02:12:41.800><c> the</c><02:12:41.960><c> web</c><02:12:42.320><c> app</c><02:12:42.520><c> version</c>

02:12:42.950 --> 02:12:42.960 align:start position:0%
And you can use the web app version
 

02:12:42.960 --> 02:12:45.070 align:start position:0%
And you can use the web app version
here,<02:12:43.440><c> but</c><02:12:43.640><c> what</c><02:12:43.800><c> I</c><02:12:43.880><c> really</c><02:12:44.200><c> like</c><02:12:44.520><c> to</c><02:12:44.640><c> do</c><02:12:44.840><c> is</c><02:12:45.080><c> I</c>

02:12:45.070 --> 02:12:45.080 align:start position:0%
here, but what I really like to do is I
 

02:12:45.080 --> 02:12:47.350 align:start position:0%
here, but what I really like to do is I
like<02:12:45.360><c> to</c><02:12:45.480><c> use</c><02:12:45.680><c> their</c><02:12:45.920><c> desktop</c><02:12:46.560><c> app,</c><02:12:46.840><c> okay?</c>

02:12:47.350 --> 02:12:47.360 align:start position:0%
like to use their desktop app, okay?
 

02:12:47.360 --> 02:12:49.390 align:start position:0%
like to use their desktop app, okay?
Here's<02:12:47.720><c> the</c><02:12:47.840><c> desktop</c><02:12:48.520><c> app,</c><02:12:48.800><c> and</c><02:12:48.920><c> what's</c><02:12:49.120><c> nice</c>

02:12:49.390 --> 02:12:49.400 align:start position:0%
Here's the desktop app, and what's nice
 

02:12:49.400 --> 02:12:51.710 align:start position:0%
Here's the desktop app, and what's nice
about<02:12:49.720><c> the</c><02:12:49.840><c> desktop</c><02:12:50.440><c> app</c><02:12:50.720><c> is</c><02:12:50.920><c> that</c><02:12:51.280><c> you</c><02:12:51.480><c> have</c>

02:12:51.710 --> 02:12:51.720 align:start position:0%
about the desktop app is that you have
 

02:12:51.720 --> 02:12:53.950 align:start position:0%
about the desktop app is that you have
this<02:12:52.040><c> app</c><02:12:52.320><c> integrations.</c><02:12:53.320><c> So,</c><02:12:53.400><c> if</c><02:12:53.520><c> you</c><02:12:53.640><c> click</c>

02:12:53.950 --> 02:12:53.960 align:start position:0%
this app integrations. So, if you click
 

02:12:53.960 --> 02:12:57.870 align:start position:0%
this app integrations. So, if you click
over<02:12:54.240><c> here,</c><02:12:54.680><c> you</c><02:12:55.200><c> can</c><02:12:56.000><c> connect</c><02:12:56.960><c> designer</c><02:12:57.760><c> to</c>

02:12:57.870 --> 02:12:57.880 align:start position:0%
over here, you can connect designer to
 

02:12:57.880 --> 02:13:00.990 align:start position:0%
over here, you can connect designer to
external<02:12:58.560><c> agents</c><02:12:59.240><c> and</c><02:12:59.480><c> IDEs.</c><02:13:00.200><c> So,</c><02:13:00.560><c> Claude</c>

02:13:00.990 --> 02:13:01.000 align:start position:0%
external agents and IDEs. So, Claude
 

02:13:01.000 --> 02:13:03.910 align:start position:0%
external agents and IDEs. So, Claude
Code,<02:13:01.480><c> Gemini</c><02:13:01.960><c> CLI,</c><02:13:02.440><c> and</c><02:13:02.600><c> Codex.</c><02:13:03.320><c> And</c><02:13:03.440><c> so,</c><02:13:03.760><c> I</c>

02:13:03.910 --> 02:13:03.920 align:start position:0%
Code, Gemini CLI, and Codex. And so, I
 

02:13:03.920 --> 02:13:05.750 align:start position:0%
Code, Gemini CLI, and Codex. And so, I
have<02:13:04.200><c> this</c><02:13:04.440><c> set</c><02:13:04.760><c> up.</c><02:13:04.920><c> So,</c><02:13:05.080><c> all</c><02:13:05.280><c> you</c><02:13:05.360><c> need</c><02:13:05.520><c> to</c><02:13:05.640><c> do</c>

02:13:05.750 --> 02:13:05.760 align:start position:0%
have this set up. So, all you need to do
 

02:13:05.760 --> 02:13:08.350 align:start position:0%
have this set up. So, all you need to do
is<02:13:05.920><c> click</c><02:13:06.320><c> here.</c><02:13:06.840><c> Now</c><02:13:07.120><c> it's</c><02:13:07.320><c> installed.</c><02:13:08.160><c> And</c>

02:13:08.350 --> 02:13:08.360 align:start position:0%
is click here. Now it's installed. And
 

02:13:08.360 --> 02:13:11.750 align:start position:0%
is click here. Now it's installed. And
now,<02:13:09.000><c> this</c><02:13:09.520><c> app</c><02:13:09.880><c> here</c><02:13:10.320><c> is</c><02:13:10.560><c> going</c><02:13:10.680><c> to</c><02:13:10.800><c> serve</c><02:13:11.600><c> as</c>

02:13:11.750 --> 02:13:11.760 align:start position:0%
now, this app here is going to serve as
 

02:13:11.760 --> 02:13:15.550 align:start position:0%
now, this app here is going to serve as
an<02:13:11.960><c> MCP</c><02:13:12.640><c> server,</c><02:13:13.360><c> okay?</c><02:13:13.720><c> Because</c><02:13:14.200><c> if</c><02:13:14.480><c> I</c><02:13:14.600><c> go</c><02:13:15.280><c> to</c>

02:13:15.550 --> 02:13:15.560 align:start position:0%
an MCP server, okay? Because if I go to
 

02:13:15.560 --> 02:13:18.590 align:start position:0%
an MCP server, okay? Because if I go to
Codex<02:13:16.200><c> here,</c><02:13:16.720><c> and</c><02:13:16.840><c> I</c><02:13:16.880><c> press</c><02:13:17.240><c> command</c><02:13:17.840><c> comma,</c>

02:13:18.590 --> 02:13:18.600 align:start position:0%
Codex here, and I press command comma,
 

02:13:18.600 --> 02:13:21.390 align:start position:0%
Codex here, and I press command comma,
and<02:13:18.720><c> I</c><02:13:18.800><c> go</c><02:13:18.920><c> into</c><02:13:19.160><c> MCP</c><02:13:19.640><c> servers,</c><02:13:20.320><c> I</c><02:13:20.520><c> also</c><02:13:21.200><c> have</c>

02:13:21.390 --> 02:13:21.400 align:start position:0%
and I go into MCP servers, I also have
 

02:13:21.400 --> 02:13:23.270 align:start position:0%
and I go into MCP servers, I also have
this<02:13:21.600><c> FlutterFlow</c><02:13:22.080><c> Designer</c><02:13:22.720><c> configured</c>

02:13:23.270 --> 02:13:23.280 align:start position:0%
this FlutterFlow Designer configured
 

02:13:23.280 --> 02:13:25.150 align:start position:0%
this FlutterFlow Designer configured
here.<02:13:23.680><c> And</c><02:13:23.800><c> if</c><02:13:23.920><c> you</c><02:13:24.040><c> want</c><02:13:24.280><c> to</c><02:13:24.360><c> set</c><02:13:24.680><c> this</c><02:13:24.960><c> up,</c>

02:13:25.150 --> 02:13:25.160 align:start position:0%
here. And if you want to set this up,
 

02:13:25.160 --> 02:13:27.190 align:start position:0%
here. And if you want to set this up,
you<02:13:25.240><c> can</c><02:13:25.400><c> simply</c><02:13:25.760><c> ask</c><02:13:26.080><c> Codex</c><02:13:26.560><c> to</c><02:13:26.680><c> do</c><02:13:26.920><c> it.</c><02:13:27.040><c> It's</c>

02:13:27.190 --> 02:13:27.200 align:start position:0%
you can simply ask Codex to do it. It's
 

02:13:27.200 --> 02:13:28.670 align:start position:0%
you can simply ask Codex to do it. It's
going<02:13:27.320><c> to</c><02:13:27.480><c> research,</c><02:13:28.040><c> it's</c><02:13:28.120><c> going</c><02:13:28.240><c> to</c><02:13:28.360><c> figure</c>

02:13:28.670 --> 02:13:28.680 align:start position:0%
going to research, it's going to figure
 

02:13:28.680 --> 02:13:31.390 align:start position:0%
going to research, it's going to figure
out,<02:13:29.400><c> and</c><02:13:29.560><c> it's</c><02:13:29.680><c> going</c><02:13:29.800><c> to</c><02:13:29.880><c> eventually</c><02:13:30.880><c> set</c><02:13:31.240><c> it</c>

02:13:31.390 --> 02:13:31.400 align:start position:0%
out, and it's going to eventually set it
 

02:13:31.400 --> 02:13:33.270 align:start position:0%
out, and it's going to eventually set it
up<02:13:31.560><c> for</c><02:13:31.760><c> you</c><02:13:31.920><c> so</c><02:13:32.080><c> that</c><02:13:32.400><c> you</c><02:13:32.520><c> can</c><02:13:32.720><c> have</c><02:13:33.040><c> this</c>

02:13:33.270 --> 02:13:33.280 align:start position:0%
up for you so that you can have this
 

02:13:33.280 --> 02:13:35.910 align:start position:0%
up for you so that you can have this
FlutterFlow<02:13:33.720><c> Designer</c><02:13:34.440><c> as</c><02:13:34.760><c> one</c><02:13:34.960><c> of</c><02:13:35.080><c> your</c><02:13:35.320><c> MCP</c>

02:13:35.910 --> 02:13:35.920 align:start position:0%
FlutterFlow Designer as one of your MCP
 

02:13:35.920 --> 02:13:38.030 align:start position:0%
FlutterFlow Designer as one of your MCP
servers<02:13:36.440><c> here,</c><02:13:36.760><c> okay?</c><02:13:37.000><c> So,</c><02:13:37.200><c> now</c><02:13:37.440><c> that</c><02:13:37.680><c> we</c><02:13:37.800><c> have</c>

02:13:38.030 --> 02:13:38.040 align:start position:0%
servers here, okay? So, now that we have
 

02:13:38.040 --> 02:13:40.550 align:start position:0%
servers here, okay? So, now that we have
this<02:13:38.280><c> set</c><02:13:38.560><c> up,</c><02:13:38.760><c> what</c><02:13:38.920><c> we</c><02:13:39.080><c> want</c><02:13:39.320><c> to</c><02:13:39.440><c> do</c><02:13:39.800><c> is</c><02:13:40.360><c> we</c>

02:13:40.550 --> 02:13:40.560 align:start position:0%
this set up, what we want to do is we
 

02:13:40.560 --> 02:13:43.350 align:start position:0%
this set up, what we want to do is we
want<02:13:40.800><c> to</c><02:13:40.840><c> go</c><02:13:41.160><c> into</c><02:13:41.880><c> this</c><02:13:42.120><c> designer,</c><02:13:43.040><c> and</c><02:13:43.240><c> we</c>

02:13:43.350 --> 02:13:43.360 align:start position:0%
want to go into this designer, and we
 

02:13:43.360 --> 02:13:45.390 align:start position:0%
want to go into this designer, and we
want<02:13:43.520><c> to</c><02:13:43.600><c> click</c><02:13:43.800><c> a</c><02:13:43.880><c> new</c><02:13:44.120><c> design,</c><02:13:44.720><c> and</c><02:13:44.920><c> here</c><02:13:45.240><c> you</c>

02:13:45.390 --> 02:13:45.400 align:start position:0%
want to click a new design, and here you
 

02:13:45.400 --> 02:13:47.830 align:start position:0%
want to click a new design, and here you
can<02:13:45.640><c> enter</c><02:13:46.000><c> a</c><02:13:46.080><c> prompt</c><02:13:46.680><c> ask</c><02:13:46.960><c> it</c><02:13:47.040><c> to</c><02:13:47.160><c> design</c><02:13:47.600><c> any</c>

02:13:47.830 --> 02:13:47.840 align:start position:0%
can enter a prompt ask it to design any
 

02:13:47.840 --> 02:13:50.150 align:start position:0%
can enter a prompt ask it to design any
kind<02:13:48.080><c> of</c><02:13:48.280><c> app</c><02:13:48.560><c> UI</c><02:13:48.960><c> for</c><02:13:49.160><c> you,</c><02:13:49.320><c> whether</c><02:13:49.640><c> it</c><02:13:49.800><c> is</c><02:13:50.080><c> a</c>

02:13:50.150 --> 02:13:50.160 align:start position:0%
kind of app UI for you, whether it is a
 

02:13:50.160 --> 02:13:52.910 align:start position:0%
kind of app UI for you, whether it is a
mobile<02:13:50.760><c> app</c><02:13:51.520><c> or</c><02:13:51.720><c> desktop</c><02:13:52.280><c> app.</c><02:13:52.480><c> They</c><02:13:52.600><c> also</c>

02:13:52.910 --> 02:13:52.920 align:start position:0%
mobile app or desktop app. They also
 

02:13:52.920 --> 02:13:54.950 align:start position:0%
mobile app or desktop app. They also
have,<02:13:53.240><c> you</c><02:13:53.320><c> know,</c><02:13:53.440><c> explore</c><02:13:53.920><c> styles</c><02:13:54.520><c> feature,</c>

02:13:54.950 --> 02:13:54.960 align:start position:0%
have, you know, explore styles feature,
 

02:13:54.960 --> 02:13:57.070 align:start position:0%
have, you know, explore styles feature,
or<02:13:55.160><c> you</c><02:13:55.280><c> can</c><02:13:55.440><c> have</c><02:13:55.640><c> an</c><02:13:55.840><c> instant</c><02:13:56.320><c> generation.</c>

02:13:57.070 --> 02:13:57.080 align:start position:0%
or you can have an instant generation.
 

02:13:57.080 --> 02:13:58.670 align:start position:0%
or you can have an instant generation.
Now,<02:13:57.320><c> what</c><02:13:57.520><c> you</c><02:13:57.640><c> don't</c><02:13:57.880><c> want</c><02:13:58.040><c> to</c><02:13:58.120><c> do</c><02:13:58.320><c> is</c><02:13:58.440><c> you</c><02:13:58.560><c> do</c>

02:13:58.670 --> 02:13:58.680 align:start position:0%
Now, what you don't want to do is you do
 

02:13:58.680 --> 02:14:00.790 align:start position:0%
Now, what you don't want to do is you do
not<02:13:59.000><c> want</c><02:13:59.160><c> to</c><02:13:59.280><c> type</c><02:13:59.600><c> this</c><02:13:59.840><c> prompt</c><02:14:00.200><c> directly.</c>

02:14:00.790 --> 02:14:00.800 align:start position:0%
not want to type this prompt directly.
 

02:14:00.800 --> 02:14:03.150 align:start position:0%
not want to type this prompt directly.
You<02:14:00.880><c> want</c><02:14:01.080><c> to</c><02:14:01.160><c> ask</c><02:14:01.480><c> Codex</c><02:14:02.120><c> to</c><02:14:02.320><c> generate</c><02:14:03.040><c> a</c>

02:14:03.150 --> 02:14:03.160 align:start position:0%
You want to ask Codex to generate a
 

02:14:03.160 --> 02:14:06.030 align:start position:0%
You want to ask Codex to generate a
prompt<02:14:03.640><c> for</c><02:14:03.880><c> you</c><02:14:04.280><c> since</c><02:14:04.520><c> it</c><02:14:04.680><c> knows</c><02:14:05.400><c> a</c><02:14:05.480><c> lot</c><02:14:05.800><c> more</c>

02:14:06.030 --> 02:14:06.040 align:start position:0%
prompt for you since it knows a lot more
 

02:14:06.040 --> 02:14:08.630 align:start position:0%
prompt for you since it knows a lot more
about<02:14:06.320><c> the</c><02:14:06.480><c> app</c><02:14:06.920><c> that</c><02:14:07.200><c> you</c><02:14:07.360><c> can</c><02:14:07.600><c> input</c><02:14:08.120><c> here.</c>

02:14:08.630 --> 02:14:08.640 align:start position:0%
about the app that you can input here.
 

02:14:08.640 --> 02:14:11.110 align:start position:0%
about the app that you can input here.
And<02:14:08.720><c> this</c><02:14:08.920><c> is</c><02:14:09.040><c> the</c><02:14:09.160><c> same</c><02:14:09.520><c> workflow</c><02:14:10.280><c> regardless</c>

02:14:11.110 --> 02:14:11.120 align:start position:0%
And this is the same workflow regardless
 

02:14:11.120 --> 02:14:13.110 align:start position:0%
And this is the same workflow regardless
of<02:14:11.240><c> whether</c><02:14:11.560><c> you're</c><02:14:11.800><c> using</c><02:14:12.200><c> this</c><02:14:12.560><c> tool,</c>

02:14:13.110 --> 02:14:13.120 align:start position:0%
of whether you're using this tool,
 

02:14:13.120 --> 02:14:15.390 align:start position:0%
of whether you're using this tool,
Google<02:14:13.480><c> Stage,</c><02:14:14.200><c> or</c><02:14:14.320><c> pretty</c><02:14:14.560><c> much</c><02:14:14.840><c> any</c><02:14:15.080><c> other</c>

02:14:15.390 --> 02:14:15.400 align:start position:0%
Google Stage, or pretty much any other
 

02:14:15.400 --> 02:14:17.790 align:start position:0%
Google Stage, or pretty much any other
tool<02:14:15.800><c> out</c><02:14:16.080><c> there.</c><02:14:16.640><c> And</c><02:14:16.840><c> so,</c><02:14:17.320><c> we're</c><02:14:17.560><c> going</c><02:14:17.720><c> to</c>

02:14:17.790 --> 02:14:17.800 align:start position:0%
tool out there. And so, we're going to
 

02:14:17.800 --> 02:14:19.310 align:start position:0%
tool out there. And so, we're going to
go<02:14:18.000><c> ahead</c><02:14:18.400><c> and</c><02:14:18.520><c> we're</c><02:14:18.640><c> going</c><02:14:18.800><c> to</c><02:14:18.880><c> grab</c><02:14:19.240><c> a</c>

02:14:19.310 --> 02:14:19.320 align:start position:0%
go ahead and we're going to grab a
 

02:14:19.320 --> 02:14:21.550 align:start position:0%
go ahead and we're going to grab a
prompt<02:14:20.080><c> to</c><02:14:20.200><c> do</c><02:14:20.400><c> just</c><02:14:20.760><c> that.</c><02:14:21.040><c> And</c><02:14:21.120><c> here's</c><02:14:21.480><c> a</c>

02:14:21.550 --> 02:14:21.560 align:start position:0%
prompt to do just that. And here's a
 

02:14:21.560 --> 02:14:22.990 align:start position:0%
prompt to do just that. And here's a
prompt<02:14:21.920><c> that</c><02:14:22.040><c> we</c><02:14:22.160><c> can</c><02:14:22.360><c> use.</c><02:14:22.560><c> Create</c><02:14:22.920><c> a</c>

02:14:22.990 --> 02:14:23.000 align:start position:0%
prompt that we can use. Create a
 

02:14:23.000 --> 02:14:25.070 align:start position:0%
prompt that we can use. Create a
polished<02:14:23.600><c> FlutterFlow</c><02:14:23.960><c> designer</c><02:14:24.440><c> concept</c>

02:14:25.070 --> 02:14:25.080 align:start position:0%
polished FlutterFlow designer concept
 

02:14:25.080 --> 02:14:27.310 align:start position:0%
polished FlutterFlow designer concept
for<02:14:25.240><c> FlexHelp.</c><02:14:25.960><c> FlexHelp</c><02:14:26.560><c> is</c><02:14:26.720><c> a</c><02:14:26.800><c> two-sided</c>

02:14:27.310 --> 02:14:27.320 align:start position:0%
for FlexHelp. FlexHelp is a two-sided
 

02:14:27.320 --> 02:14:29.910 align:start position:0%
for FlexHelp. FlexHelp is a two-sided
marketplace,<02:14:28.200><c> and</c><02:14:28.680><c> we</c><02:14:28.880><c> are</c><02:14:29.040><c> telling</c><02:14:29.560><c> it</c><02:14:29.760><c> what</c>

02:14:29.910 --> 02:14:29.920 align:start position:0%
marketplace, and we are telling it what
 

02:14:29.920 --> 02:14:31.830 align:start position:0%
marketplace, and we are telling it what
kind<02:14:30.120><c> of</c><02:14:30.240><c> screens</c><02:14:30.720><c> to</c><02:14:30.840><c> design.</c><02:14:31.440><c> We</c><02:14:31.560><c> give</c><02:14:31.720><c> it</c>

02:14:31.830 --> 02:14:31.840 align:start position:0%
kind of screens to design. We give it
 

02:14:31.840 --> 02:14:33.830 align:start position:0%
kind of screens to design. We give it
some<02:14:32.000><c> design</c><02:14:32.480><c> requirements.</c><02:14:33.360><c> We</c><02:14:33.480><c> give</c><02:14:33.720><c> give</c>

02:14:33.830 --> 02:14:33.840 align:start position:0%
some design requirements. We give give
 

02:14:33.840 --> 02:14:36.630 align:start position:0%
some design requirements. We give give
it<02:14:33.920><c> some</c><02:14:34.480><c> guardrails,</c><02:14:35.560><c> stuff</c><02:14:35.840><c> like</c><02:14:36.120><c> that.</c><02:14:36.520><c> And</c>

02:14:36.630 --> 02:14:36.640 align:start position:0%
it some guardrails, stuff like that. And
 

02:14:36.640 --> 02:14:38.150 align:start position:0%
it some guardrails, stuff like that. And
so,<02:14:36.800><c> we're</c><02:14:36.920><c> going</c><02:14:37.080><c> to</c><02:14:37.160><c> input</c><02:14:37.520><c> this</c><02:14:37.720><c> prompt,</c>

02:14:38.150 --> 02:14:38.160 align:start position:0%
so, we're going to input this prompt,
 

02:14:38.160 --> 02:14:40.030 align:start position:0%
so, we're going to input this prompt,
and<02:14:38.320><c> here</c><02:14:38.640><c> we're</c><02:14:38.800><c> going</c><02:14:38.960><c> to</c><02:14:39.080><c> stay</c><02:14:39.680><c> on</c><02:14:39.840><c> the</c>

02:14:40.030 --> 02:14:40.040 align:start position:0%
and here we're going to stay on the
 

02:14:40.040 --> 02:14:41.950 align:start position:0%
and here we're going to stay on the
explore<02:14:40.880><c> styles,</c><02:14:41.080><c> and</c><02:14:41.160><c> that</c><02:14:41.320><c> way</c><02:14:41.520><c> we</c><02:14:41.640><c> can</c><02:14:41.760><c> have</c>

02:14:41.950 --> 02:14:41.960 align:start position:0%
explore styles, and that way we can have
 

02:14:41.960 --> 02:14:43.830 align:start position:0%
explore styles, and that way we can have
different<02:14:42.360><c> styles</c><02:14:42.920><c> show</c><02:14:43.240><c> up,</c><02:14:43.480><c> and</c><02:14:43.600><c> we</c><02:14:43.680><c> can</c>

02:14:43.830 --> 02:14:43.840 align:start position:0%
different styles show up, and we can
 

02:14:43.840 --> 02:14:46.390 align:start position:0%
different styles show up, and we can
decide<02:14:44.560><c> which</c><02:14:44.880><c> one</c><02:14:45.120><c> we</c><02:14:45.240><c> like</c><02:14:45.600><c> better.</c><02:14:46.200><c> So,</c><02:14:46.320><c> I'm</c>

02:14:46.390 --> 02:14:46.400 align:start position:0%
decide which one we like better. So, I'm
 

02:14:46.400 --> 02:14:48.670 align:start position:0%
decide which one we like better. So, I'm
going<02:14:46.560><c> to</c><02:14:46.640><c> go</c><02:14:46.760><c> ahead</c><02:14:47.000><c> and</c><02:14:47.160><c> run</c><02:14:47.400><c> this,</c><02:14:47.920><c> and</c><02:14:48.160><c> here</c>

02:14:48.670 --> 02:14:48.680 align:start position:0%
going to go ahead and run this, and here
 

02:14:48.680 --> 02:14:50.430 align:start position:0%
going to go ahead and run this, and here
are<02:14:49.000><c> the</c><02:14:49.160><c> designs.</c><02:14:49.800><c> So,</c><02:14:49.920><c> as</c><02:14:50.040><c> you</c><02:14:50.120><c> can</c><02:14:50.280><c> see,</c>

02:14:50.430 --> 02:14:50.440 align:start position:0%
are the designs. So, as you can see,
 

02:14:50.440 --> 02:14:52.470 align:start position:0%
are the designs. So, as you can see,
they're<02:14:50.640><c> all</c><02:14:50.840><c> very</c><02:14:51.240><c> different.</c><02:14:52.000><c> We</c><02:14:52.120><c> have</c>

02:14:52.470 --> 02:14:52.480 align:start position:0%
they're all very different. We have
 

02:14:52.480 --> 02:14:55.350 align:start position:0%
they're all very different. We have
this,<02:14:53.080><c> we</c><02:14:53.200><c> have</c><02:14:53.560><c> this,</c><02:14:54.080><c> we</c><02:14:54.280><c> have</c><02:14:54.600><c> this,</c><02:14:55.240><c> we</c>

02:14:55.350 --> 02:14:55.360 align:start position:0%
this, we have this, we have this, we
 

02:14:55.360 --> 02:14:58.230 align:start position:0%
this, we have this, we have this, we
have<02:14:55.680><c> these</c><02:14:56.080><c> ones,</c><02:14:56.520><c> so</c><02:14:56.920><c> and</c><02:14:57.200><c> you</c><02:14:57.360><c> got</c><02:14:57.600><c> to</c><02:14:57.720><c> admit</c>

02:14:58.230 --> 02:14:58.240 align:start position:0%
have these ones, so and you got to admit
 

02:14:58.240 --> 02:15:00.910 align:start position:0%
have these ones, so and you got to admit
that<02:14:58.440><c> in</c><02:14:58.560><c> my</c><02:14:58.840><c> view,</c><02:14:59.200><c> these</c><02:14:59.600><c> look</c><02:14:59.840><c> a</c><02:14:59.920><c> lot</c><02:15:00.280><c> better</c>

02:15:00.910 --> 02:15:00.920 align:start position:0%
that in my view, these look a lot better
 

02:15:00.920 --> 02:15:03.150 align:start position:0%
that in my view, these look a lot better
than<02:15:01.440><c> what</c><02:15:01.720><c> Codex</c><02:15:02.280><c> did,</c><02:15:02.520><c> right?</c><02:15:02.760><c> So,</c><02:15:02.840><c> this</c><02:15:03.040><c> is</c>

02:15:03.150 --> 02:15:03.160 align:start position:0%
than what Codex did, right? So, this is
 

02:15:03.160 --> 02:15:05.510 align:start position:0%
than what Codex did, right? So, this is
what<02:15:03.360><c> Codex</c><02:15:03.840><c> did.</c><02:15:04.280><c> In</c><02:15:04.440><c> my</c><02:15:04.760><c> view,</c><02:15:05.120><c> these</c>

02:15:05.510 --> 02:15:05.520 align:start position:0%
what Codex did. In my view, these
 

02:15:05.520 --> 02:15:08.990 align:start position:0%
what Codex did. In my view, these
designs<02:15:06.320><c> are</c><02:15:06.720><c> a</c><02:15:06.840><c> lot</c><02:15:07.520><c> more</c><02:15:08.040><c> interesting</c><02:15:08.720><c> than</c>

02:15:08.990 --> 02:15:09.000 align:start position:0%
designs are a lot more interesting than
 

02:15:09.000 --> 02:15:11.070 align:start position:0%
designs are a lot more interesting than
Codex's<02:15:09.600><c> design.</c><02:15:10.240><c> Okay?</c><02:15:10.560><c> So,</c><02:15:10.760><c> I</c><02:15:10.800><c> don't</c><02:15:10.960><c> know</c>

02:15:11.070 --> 02:15:11.080 align:start position:0%
Codex's design. Okay? So, I don't know
 

02:15:11.080 --> 02:15:13.070 align:start position:0%
Codex's design. Okay? So, I don't know
which<02:15:11.280><c> one</c><02:15:11.520><c> you</c><02:15:11.720><c> guys</c><02:15:12.040><c> like.</c><02:15:12.560><c> This</c><02:15:12.800><c> is</c><02:15:12.960><c> a</c>

02:15:13.070 --> 02:15:13.080 align:start position:0%
which one you guys like. This is a
 

02:15:13.080 --> 02:15:15.870 align:start position:0%
which one you guys like. This is a
classical<02:15:13.800><c> one.</c><02:15:14.280><c> This</c><02:15:14.520><c> is</c><02:15:14.640><c> nice.</c><02:15:15.320><c> Let's</c><02:15:15.600><c> take</c>

02:15:15.870 --> 02:15:15.880 align:start position:0%
classical one. This is nice. Let's take
 

02:15:15.880 --> 02:15:17.390 align:start position:0%
classical one. This is nice. Let's take
a<02:15:15.960><c> look.</c><02:15:16.240><c> Let's</c><02:15:16.400><c> go</c><02:15:16.520><c> ahead</c><02:15:16.760><c> and</c><02:15:16.960><c> use</c><02:15:17.200><c> this</c>

02:15:17.390 --> 02:15:17.400 align:start position:0%
a look. Let's go ahead and use this
 

02:15:17.400 --> 02:15:19.110 align:start position:0%
a look. Let's go ahead and use this
classical<02:15:18.040><c> one.</c><02:15:18.200><c> So,</c><02:15:18.320><c> I'm</c><02:15:18.400><c> going</c><02:15:18.520><c> to</c><02:15:18.600><c> say</c><02:15:18.840><c> use</c>

02:15:19.110 --> 02:15:19.120 align:start position:0%
classical one. So, I'm going to say use
 

02:15:19.120 --> 02:15:20.950 align:start position:0%
classical one. So, I'm going to say use
this<02:15:19.360><c> style,</c><02:15:20.000><c> and</c><02:15:20.120><c> it's</c><02:15:20.240><c> going</c><02:15:20.360><c> to</c><02:15:20.480><c> use</c><02:15:20.800><c> this</c>

02:15:20.950 --> 02:15:20.960 align:start position:0%
this style, and it's going to use this
 

02:15:20.960 --> 02:15:22.390 align:start position:0%
this style, and it's going to use this
style,<02:15:21.200><c> and</c><02:15:21.320><c> then</c><02:15:21.400><c> it's</c><02:15:21.520><c> going</c><02:15:21.640><c> to</c><02:15:21.760><c> generate</c>

02:15:22.390 --> 02:15:22.400 align:start position:0%
style, and then it's going to generate
 

02:15:22.400 --> 02:15:24.630 align:start position:0%
style, and then it's going to generate
all<02:15:22.560><c> the</c><02:15:22.680><c> pages</c><02:15:23.200><c> that</c><02:15:23.400><c> we</c><02:15:23.520><c> need.</c><02:15:23.880><c> So,</c><02:15:24.160><c> here</c><02:15:24.480><c> we</c>

02:15:24.630 --> 02:15:24.640 align:start position:0%
all the pages that we need. So, here we
 

02:15:24.640 --> 02:15:26.590 align:start position:0%
all the pages that we need. So, here we
have<02:15:24.840><c> seven</c><02:15:25.240><c> pages</c><02:15:25.680><c> that</c><02:15:25.840><c> we</c><02:15:25.960><c> need.</c><02:15:26.240><c> So,</c><02:15:26.320><c> now</c>

02:15:26.590 --> 02:15:26.600 align:start position:0%
have seven pages that we need. So, now
 

02:15:26.600 --> 02:15:28.390 align:start position:0%
have seven pages that we need. So, now
we<02:15:26.720><c> have</c><02:15:26.960><c> all</c><02:15:27.160><c> the</c><02:15:27.280><c> pages.</c><02:15:27.800><c> Here</c><02:15:28.040><c> we</c><02:15:28.160><c> have</c>

02:15:28.390 --> 02:15:28.400 align:start position:0%
we have all the pages. Here we have
 

02:15:28.400 --> 02:15:31.270 align:start position:0%
we have all the pages. Here we have
customer<02:15:28.920><c> home,</c><02:15:29.480><c> we</c><02:15:29.600><c> have</c><02:15:29.800><c> service</c><02:15:30.320><c> details,</c>

02:15:31.270 --> 02:15:31.280 align:start position:0%
customer home, we have service details,
 

02:15:31.280 --> 02:15:34.350 align:start position:0%
customer home, we have service details,
really<02:15:31.600><c> nice</c><02:15:32.000><c> page,</c><02:15:32.640><c> booking</c><02:15:33.040><c> request</c><02:15:33.680><c> form,</c>

02:15:34.350 --> 02:15:34.360 align:start position:0%
really nice page, booking request form,
 

02:15:34.360 --> 02:15:36.630 align:start position:0%
really nice page, booking request form,
customer<02:15:34.920><c> booking</c><02:15:35.360><c> status,</c><02:15:36.080><c> we</c><02:15:36.160><c> even</c><02:15:36.400><c> have</c><02:15:36.560><c> a</c>

02:15:36.630 --> 02:15:36.640 align:start position:0%
customer booking status, we even have a
 

02:15:36.640 --> 02:15:39.590 align:start position:0%
customer booking status, we even have a
map,<02:15:37.240><c> helper</c><02:15:37.680><c> dashboard,</c><02:15:38.560><c> helper</c><02:15:38.960><c> request</c>

02:15:39.590 --> 02:15:39.600 align:start position:0%
map, helper dashboard, helper request
 

02:15:39.600 --> 02:15:42.150 align:start position:0%
map, helper dashboard, helper request
management,<02:15:40.440><c> and</c><02:15:40.560><c> a</c><02:15:40.640><c> user</c><02:15:41.040><c> profile.</c><02:15:41.640><c> The</c><02:15:41.760><c> next</c>

02:15:42.150 --> 02:15:42.160 align:start position:0%
management, and a user profile. The next
 

02:15:42.160 --> 02:15:44.310 align:start position:0%
management, and a user profile. The next
thing<02:15:42.400><c> that</c><02:15:42.600><c> we</c><02:15:42.720><c> want</c><02:15:42.960><c> to</c><02:15:43.040><c> do</c><02:15:43.360><c> is</c><02:15:43.800><c> we</c><02:15:43.960><c> want</c><02:15:44.200><c> to</c>

02:15:44.310 --> 02:15:44.320 align:start position:0%
thing that we want to do is we want to
 

02:15:44.320 --> 02:15:47.590 align:start position:0%
thing that we want to do is we want to
tell<02:15:44.720><c> Codex</c><02:15:45.520><c> to</c><02:15:45.720><c> fetch</c><02:15:46.240><c> these</c><02:15:46.520><c> designs</c><02:15:47.360><c> and</c>

02:15:47.590 --> 02:15:47.600 align:start position:0%
tell Codex to fetch these designs and
 

02:15:47.600 --> 02:15:50.470 align:start position:0%
tell Codex to fetch these designs and
implement<02:15:48.320><c> them,</c><02:15:48.560><c> bake</c><02:15:49.000><c> them</c><02:15:49.440><c> into</c><02:15:49.840><c> our</c><02:15:50.200><c> app.</c>

02:15:50.470 --> 02:15:50.480 align:start position:0%
implement them, bake them into our app.
 

02:15:50.480 --> 02:15:52.150 align:start position:0%
implement them, bake them into our app.
And<02:15:50.600><c> so,</c><02:15:50.800><c> let's</c><02:15:51.080><c> take</c><02:15:51.360><c> a</c><02:15:51.440><c> look.</c><02:15:51.680><c> So,</c><02:15:51.800><c> this</c><02:15:52.040><c> is</c>

02:15:52.150 --> 02:15:52.160 align:start position:0%
And so, let's take a look. So, this is
 

02:15:52.160 --> 02:15:54.350 align:start position:0%
And so, let's take a look. So, this is
called<02:15:52.480><c> FlexHelp</c><02:15:53.240><c> Marketplace,</c><02:15:53.920><c> the</c><02:15:54.000><c> name</c><02:15:54.240><c> of</c>

02:15:54.350 --> 02:15:54.360 align:start position:0%
called FlexHelp Marketplace, the name of
 

02:15:54.360 --> 02:15:56.390 align:start position:0%
called FlexHelp Marketplace, the name of
the<02:15:54.440><c> project</c><02:15:55.000><c> here.</c><02:15:55.440><c> And</c><02:15:55.600><c> so,</c><02:15:55.760><c> now</c><02:15:56.080><c> what</c><02:15:56.240><c> we're</c>

02:15:56.390 --> 02:15:56.400 align:start position:0%
the project here. And so, now what we're
 

02:15:56.400 --> 02:15:57.830 align:start position:0%
the project here. And so, now what we're
going<02:15:56.520><c> to</c><02:15:56.600><c> do</c><02:15:56.720><c> is</c><02:15:56.880><c> we're</c><02:15:57.000><c> going</c><02:15:57.160><c> to</c><02:15:57.240><c> go</c><02:15:57.400><c> back</c><02:15:57.720><c> to</c>

02:15:57.830 --> 02:15:57.840 align:start position:0%
going to do is we're going to go back to
 

02:15:57.840 --> 02:15:59.950 align:start position:0%
going to do is we're going to go back to
Codex.<02:15:58.600><c> We're</c><02:15:58.720><c> going</c><02:15:58.840><c> to</c><02:15:58.960><c> close</c><02:15:59.360><c> out</c><02:15:59.560><c> this</c>

02:15:59.950 --> 02:15:59.960 align:start position:0%
Codex. We're going to close out this
 

02:15:59.960 --> 02:16:02.230 align:start position:0%
Codex. We're going to close out this
section<02:16:00.480><c> here,</c><02:16:01.000><c> and</c><02:16:01.360><c> we're</c><02:16:01.520><c> going</c><02:16:01.640><c> to</c><02:16:01.840><c> give</c><02:16:02.120><c> it</c>

02:16:02.230 --> 02:16:02.240 align:start position:0%
section here, and we're going to give it
 

02:16:02.240 --> 02:16:04.150 align:start position:0%
section here, and we're going to give it
a<02:16:02.320><c> prompt</c><02:16:03.080><c> that's</c><02:16:03.280><c> going</c><02:16:03.440><c> to</c><02:16:03.560><c> ask</c><02:16:03.880><c> it</c><02:16:04.040><c> to</c>

02:16:04.150 --> 02:16:04.160 align:start position:0%
a prompt that's going to ask it to
 

02:16:04.160 --> 02:16:06.750 align:start position:0%
a prompt that's going to ask it to
connect<02:16:04.520><c> to</c><02:16:04.640><c> FlutterFlow</c><02:16:05.120><c> designer,</c><02:16:05.960><c> look</c><02:16:06.520><c> at</c>

02:16:06.750 --> 02:16:06.760 align:start position:0%
connect to FlutterFlow designer, look at
 

02:16:06.760 --> 02:16:09.230 align:start position:0%
connect to FlutterFlow designer, look at
that<02:16:07.120><c> specific</c><02:16:07.720><c> project</c><02:16:08.400><c> and</c><02:16:08.560><c> grab</c><02:16:08.960><c> those</c>

02:16:09.230 --> 02:16:09.240 align:start position:0%
that specific project and grab those
 

02:16:09.240 --> 02:16:12.750 align:start position:0%
that specific project and grab those
designs<02:16:10.280><c> and</c><02:16:10.520><c> then</c><02:16:10.720><c> bake</c><02:16:11.120><c> them</c><02:16:11.480><c> into</c><02:16:11.920><c> our</c><02:16:12.320><c> app</c>

02:16:12.750 --> 02:16:12.760 align:start position:0%
designs and then bake them into our app
 

02:16:12.760 --> 02:16:15.110 align:start position:0%
designs and then bake them into our app
right<02:16:13.120><c> here.</c><02:16:13.680><c> And</c><02:16:13.800><c> I</c><02:16:13.880><c> have</c><02:16:14.080><c> a</c><02:16:14.200><c> prompt</c><02:16:14.720><c> here</c><02:16:14.960><c> to</c>

02:16:15.110 --> 02:16:15.120 align:start position:0%
right here. And I have a prompt here to
 

02:16:15.120 --> 02:16:16.990 align:start position:0%
right here. And I have a prompt here to
do<02:16:15.320><c> just</c><02:16:15.640><c> that.</c><02:16:16.000><c> So,</c><02:16:16.160><c> here's</c><02:16:16.440><c> the</c><02:16:16.560><c> prompt.</c>

02:16:16.990 --> 02:16:17.000 align:start position:0%
do just that. So, here's the prompt.
 

02:16:17.000 --> 02:16:19.670 align:start position:0%
do just that. So, here's the prompt.
Update<02:16:17.520><c> the</c><02:16:17.640><c> Flex</c><02:16:18.080><c> sub</c><02:16:18.320><c> static</c><02:16:18.760><c> UI</c><02:16:19.080><c> to</c><02:16:19.240><c> match</c>

02:16:19.670 --> 02:16:19.680 align:start position:0%
Update the Flex sub static UI to match
 

02:16:19.680 --> 02:16:21.350 align:start position:0%
Update the Flex sub static UI to match
the<02:16:19.800><c> approved</c><02:16:20.200><c> FlutterFlow</c><02:16:20.640><c> Designer</c>

02:16:21.350 --> 02:16:21.360 align:start position:0%
the approved FlutterFlow Designer
 

02:16:21.360 --> 02:16:23.430 align:start position:0%
the approved FlutterFlow Designer
reference.<02:16:22.080><c> So,</c><02:16:22.280><c> this</c><02:16:22.480><c> is</c><02:16:22.640><c> the</c><02:16:22.720><c> main</c><02:16:23.040><c> prompt,</c>

02:16:23.430 --> 02:16:23.440 align:start position:0%
reference. So, this is the main prompt,
 

02:16:23.440 --> 02:16:26.110 align:start position:0%
reference. So, this is the main prompt,
but<02:16:23.600><c> we</c><02:16:23.800><c> also</c><02:16:24.440><c> need</c><02:16:24.720><c> to</c><02:16:24.840><c> ensure</c><02:16:25.400><c> that</c><02:16:25.600><c> we</c><02:16:25.760><c> tell</c>

02:16:26.110 --> 02:16:26.120 align:start position:0%
but we also need to ensure that we tell
 

02:16:26.120 --> 02:16:27.750 align:start position:0%
but we also need to ensure that we tell
it<02:16:26.280><c> that</c><02:16:26.400><c> we</c><02:16:26.560><c> want</c><02:16:26.800><c> to</c><02:16:26.920><c> use</c><02:16:27.160><c> the</c><02:16:27.280><c> FlutterFlow</c>

02:16:27.750 --> 02:16:27.760 align:start position:0%
it that we want to use the FlutterFlow
 

02:16:27.760 --> 02:16:31.350 align:start position:0%
it that we want to use the FlutterFlow
Designer<02:16:28.320><c> MCP.</c><02:16:29.120><c> Use</c><02:16:29.600><c> FlutterFlow</c><02:16:30.440><c> Designer</c>

02:16:31.350 --> 02:16:31.360 align:start position:0%
Designer MCP. Use FlutterFlow Designer
 

02:16:31.360 --> 02:16:34.990 align:start position:0%
Designer MCP. Use FlutterFlow Designer
MCP<02:16:32.519><c> and</c><02:16:32.679><c> then</c><02:16:32.920><c> project</c><02:16:33.840><c> is</c><02:16:34.599><c> because</c><02:16:34.880><c> there</c>

02:16:34.990 --> 02:16:35.000 align:start position:0%
MCP and then project is because there
 

02:16:35.000 --> 02:16:37.150 align:start position:0%
MCP and then project is because there
are<02:16:35.519><c> multiple</c><02:16:36.120><c> projects.</c><02:16:36.639><c> We</c><02:16:36.719><c> want</c><02:16:36.840><c> to</c><02:16:36.880><c> copy</c>

02:16:37.150 --> 02:16:37.160 align:start position:0%
are multiple projects. We want to copy
 

02:16:37.160 --> 02:16:39.350 align:start position:0%
are multiple projects. We want to copy
this<02:16:37.440><c> project</c><02:16:37.880><c> here.</c><02:16:38.320><c> This.</c><02:16:38.840><c> And</c><02:16:39.120><c> we're</c><02:16:39.240><c> going</c>

02:16:39.350 --> 02:16:39.360 align:start position:0%
this project here. This. And we're going
 

02:16:39.360 --> 02:16:41.629 align:start position:0%
this project here. This. And we're going
to<02:16:39.480><c> go</c><02:16:39.719><c> into</c><02:16:40.080><c> plan</c><02:16:40.519><c> mode</c><02:16:40.880><c> just</c><02:16:41.080><c> to</c><02:16:41.160><c> make</c><02:16:41.360><c> sure</c>

02:16:41.629 --> 02:16:41.639 align:start position:0%
to go into plan mode just to make sure
 

02:16:41.639 --> 02:16:43.030 align:start position:0%
to go into plan mode just to make sure
that<02:16:41.840><c> everything</c><02:16:42.240><c> is</c><02:16:42.400><c> good.</c><02:16:42.719><c> And</c><02:16:42.800><c> I'm</c><02:16:42.920><c> going</c>

02:16:43.030 --> 02:16:43.040 align:start position:0%
that everything is good. And I'm going
 

02:16:43.040 --> 02:16:44.709 align:start position:0%
that everything is good. And I'm going
to<02:16:43.160><c> run</c><02:16:43.400><c> that.</c><02:16:43.639><c> And</c><02:16:43.800><c> here</c><02:16:43.960><c> it</c><02:16:44.080><c> says,</c><02:16:44.320><c> "Next,</c>

02:16:44.709 --> 02:16:44.719 align:start position:0%
to run that. And here it says, "Next,
 

02:16:44.719 --> 02:16:47.910 align:start position:0%
to run that. And here it says, "Next,
I'm<02:16:44.880><c> opening</c><02:16:45.320><c> a</c><02:16:45.400><c> Designer</c><02:16:46.280><c> MCP</c><02:16:46.960><c> session."</c><02:16:47.719><c> And</c>

02:16:47.910 --> 02:16:47.920 align:start position:0%
I'm opening a Designer MCP session." And
 

02:16:47.920 --> 02:16:49.870 align:start position:0%
I'm opening a Designer MCP session." And
once<02:16:48.200><c> it</c><02:16:48.360><c> does</c><02:16:48.679><c> that,</c><02:16:48.920><c> you</c><02:16:49.040><c> can</c><02:16:49.280><c> see</c><02:16:49.599><c> you</c><02:16:49.719><c> can</c>

02:16:49.870 --> 02:16:49.880 align:start position:0%
once it does that, you can see you can
 

02:16:49.880 --> 02:16:52.150 align:start position:0%
once it does that, you can see you can
actually<02:16:50.360><c> see</c><02:16:50.559><c> the</c><02:16:50.760><c> agent</c><02:16:51.320><c> working.</c><02:16:51.719><c> This</c><02:16:51.920><c> is</c>

02:16:52.150 --> 02:16:52.160 align:start position:0%
actually see the agent working. This is
 

02:16:52.160 --> 02:16:55.110 align:start position:0%
actually see the agent working. This is
our<02:16:52.559><c> agent,</c><02:16:53.320><c> our</c><02:16:53.639><c> client</c><02:16:54.240><c> cuz</c><02:16:54.480><c> Codex</c><02:16:54.960><c> is</c>

02:16:55.110 --> 02:16:55.120 align:start position:0%
our agent, our client cuz Codex is
 

02:16:55.120 --> 02:16:57.790 align:start position:0%
our agent, our client cuz Codex is
acting<02:16:55.559><c> as</c><02:16:55.760><c> an</c><02:16:55.880><c> MCP</c><02:16:56.360><c> client</c><02:16:57.080><c> connecting</c><02:16:57.679><c> to</c>

02:16:57.790 --> 02:16:57.800 align:start position:0%
acting as an MCP client connecting to
 

02:16:57.800 --> 02:16:59.549 align:start position:0%
acting as an MCP client connecting to
this<02:16:58.000><c> MCP</c><02:16:58.519><c> server.</c><02:16:58.880><c> And</c><02:16:59.000><c> as</c><02:16:59.080><c> you</c><02:16:59.160><c> can</c><02:16:59.320><c> see,</c>

02:16:59.549 --> 02:16:59.559 align:start position:0%
this MCP server. And as you can see,
 

02:16:59.559 --> 02:17:01.790 align:start position:0%
this MCP server. And as you can see,
it's<02:16:59.800><c> it's</c><02:17:00.120><c> analyzing</c><02:17:00.800><c> this</c><02:17:01.040><c> page.</c><02:17:01.639><c> And</c><02:17:01.719><c> you</c>

02:17:01.790 --> 02:17:01.800 align:start position:0%
it's it's analyzing this page. And you
 

02:17:01.800 --> 02:17:04.830 align:start position:0%
it's it's analyzing this page. And you
can<02:17:02.000><c> see</c><02:17:02.200><c> this</c><02:17:02.440><c> little</c><02:17:02.840><c> Codex</c><02:17:03.719><c> icon</c><02:17:04.160><c> here.</c><02:17:04.679><c> And</c>

02:17:04.830 --> 02:17:04.840 align:start position:0%
can see this little Codex icon here. And
 

02:17:04.840 --> 02:17:06.589 align:start position:0%
can see this little Codex icon here. And
you<02:17:05.000><c> can</c><02:17:05.120><c> see</c><02:17:05.280><c> it</c><02:17:05.360><c> says</c><02:17:05.599><c> here,</c><02:17:05.840><c> "One</c><02:17:06.120><c> active</c>

02:17:06.589 --> 02:17:06.599 align:start position:0%
you can see it says here, "One active
 

02:17:06.599 --> 02:17:09.310 align:start position:0%
you can see it says here, "One active
agent."<02:17:07.080><c> It's</c><02:17:07.440><c> studying</c><02:17:08.160><c> the</c><02:17:08.280><c> designs</c><02:17:09.160><c> and</c>

02:17:09.310 --> 02:17:09.320 align:start position:0%
agent." It's studying the designs and
 

02:17:09.320 --> 02:17:11.669 align:start position:0%
agent." It's studying the designs and
then<02:17:09.480><c> it's</c><02:17:09.599><c> going</c><02:17:09.760><c> to</c><02:17:09.880><c> pull</c><02:17:10.519><c> the</c><02:17:10.679><c> designs</c><02:17:11.320><c> back</c>

02:17:11.669 --> 02:17:11.679 align:start position:0%
then it's going to pull the designs back
 

02:17:11.679 --> 02:17:16.150 align:start position:0%
then it's going to pull the designs back
here<02:17:12.120><c> and</c><02:17:12.480><c> build</c><02:17:13.320><c> an</c><02:17:13.599><c> actual</c><02:17:14.639><c> UI</c><02:17:15.400><c> using</c><02:17:15.920><c> those</c>

02:17:16.150 --> 02:17:16.160 align:start position:0%
here and build an actual UI using those
 

02:17:16.160 --> 02:17:18.350 align:start position:0%
here and build an actual UI using those
designs.<02:17:16.719><c> And</c><02:17:16.800><c> the</c><02:17:16.920><c> goal</c><02:17:17.160><c> here</c><02:17:17.440><c> is</c><02:17:17.679><c> to</c><02:17:17.800><c> ensure</c>

02:17:18.350 --> 02:17:18.360 align:start position:0%
designs. And the goal here is to ensure
 

02:17:18.360 --> 02:17:20.669 align:start position:0%
designs. And the goal here is to ensure
that<02:17:18.519><c> it</c><02:17:18.679><c> builds</c><02:17:19.200><c> a</c><02:17:19.360><c> pixel-perfect</c><02:17:20.480><c> or</c><02:17:20.559><c> at</c>

02:17:20.669 --> 02:17:20.679 align:start position:0%
that it builds a pixel-perfect or at
 

02:17:20.679 --> 02:17:23.030 align:start position:0%
that it builds a pixel-perfect or at
least<02:17:20.880><c> as</c><02:17:21.040><c> close</c><02:17:21.400><c> as</c><02:17:21.559><c> possible</c><02:17:22.200><c> to</c><02:17:22.639><c> what</c><02:17:22.880><c> we</c>

02:17:23.030 --> 02:17:23.040 align:start position:0%
least as close as possible to what we
 

02:17:23.040 --> 02:17:25.390 align:start position:0%
least as close as possible to what we
see<02:17:23.320><c> here.</c><02:17:23.920><c> Okay?</c><02:17:24.480><c> So,</c><02:17:24.679><c> let's</c><02:17:24.920><c> see</c><02:17:25.040><c> what</c><02:17:25.200><c> it's</c>

02:17:25.390 --> 02:17:25.400 align:start position:0%
see here. Okay? So, let's see what it's
 

02:17:25.400 --> 02:17:27.830 align:start position:0%
see here. Okay? So, let's see what it's
doing.<02:17:25.920><c> So,</c><02:17:26.040><c> now</c><02:17:26.360><c> it</c><02:17:26.519><c> came</c><02:17:26.760><c> back</c><02:17:27.040><c> with</c><02:17:27.200><c> a</c><02:17:27.320><c> plan.</c>

02:17:27.830 --> 02:17:27.840 align:start position:0%
doing. So, now it came back with a plan.
 

02:17:27.840 --> 02:17:30.629 align:start position:0%
doing. So, now it came back with a plan.
Update<02:17:28.240><c> the</c><02:17:28.360><c> existing</c><02:17:29.080><c> React</c><02:17:29.559><c> static</c><02:17:30.040><c> UI</c><02:17:30.480><c> to</c>

02:17:30.629 --> 02:17:30.639 align:start position:0%
Update the existing React static UI to
 

02:17:30.639 --> 02:17:32.870 align:start position:0%
Update the existing React static UI to
visually<02:17:31.160><c> follow</c><02:17:31.639><c> the</c><02:17:31.800><c> approved</c><02:17:32.360><c> FlutterFlow</c>

02:17:32.870 --> 02:17:32.880 align:start position:0%
visually follow the approved FlutterFlow
 

02:17:32.880 --> 02:17:35.910 align:start position:0%
visually follow the approved FlutterFlow
Designer<02:17:33.519><c> reference.</c><02:17:34.200><c> So,</c><02:17:34.280><c> here</c><02:17:34.760><c> it's</c><02:17:35.120><c> it</c><02:17:35.320><c> has</c>

02:17:35.910 --> 02:17:35.920 align:start position:0%
Designer reference. So, here it's it has
 

02:17:35.920 --> 02:17:39.110 align:start position:0%
Designer reference. So, here it's it has
five<02:17:36.360><c> pages,</c><02:17:37.000><c> but</c><02:17:37.320><c> over</c><02:17:37.599><c> here</c><02:17:38.400><c> we</c><02:17:38.599><c> actually</c>

02:17:39.110 --> 02:17:39.120 align:start position:0%
five pages, but over here we actually
 

02:17:39.120 --> 02:17:41.910 align:start position:0%
five pages, but over here we actually
have<02:17:39.320><c> more.</c><02:17:39.880><c> We</c><02:17:40.160><c> have</c><02:17:40.920><c> seven</c><02:17:41.320><c> pages.</c><02:17:41.760><c> So,</c><02:17:41.880><c> I</c>

02:17:41.910 --> 02:17:41.920 align:start position:0%
have more. We have seven pages. So, I
 

02:17:41.920 --> 02:17:44.950 align:start position:0%
have more. We have seven pages. So, I
don't<02:17:42.080><c> know</c><02:17:42.160><c> if</c><02:17:42.360><c> I</c><02:17:42.559><c> if</c><02:17:42.800><c> it</c><02:17:43.000><c> missed</c><02:17:43.480><c> it</c><02:17:43.920><c> or</c><02:17:44.440><c> that</c>

02:17:44.950 --> 02:17:44.960 align:start position:0%
don't know if I if it missed it or that
 

02:17:44.960 --> 02:17:46.709 align:start position:0%
don't know if I if it missed it or that
I<02:17:45.040><c> did</c><02:17:45.280><c> not</c><02:17:45.559><c> it</c><02:17:45.679><c> was</c><02:17:45.880><c> it</c><02:17:46.000><c> wasn't</c><02:17:46.320><c> part</c><02:17:46.519><c> of</c><02:17:46.599><c> the</c>

02:17:46.709 --> 02:17:46.719 align:start position:0%
I did not it was it wasn't part of the
 

02:17:46.719 --> 02:17:49.150 align:start position:0%
I did not it was it wasn't part of the
prompt<02:17:47.360><c> or</c><02:17:47.679><c> some</c><02:17:47.960><c> mix-up.</c><02:17:48.559><c> So,</c><02:17:48.679><c> we</c><02:17:48.840><c> want</c><02:17:49.080><c> to</c>

02:17:49.150 --> 02:17:49.160 align:start position:0%
prompt or some mix-up. So, we want to
 

02:17:49.160 --> 02:17:51.589 align:start position:0%
prompt or some mix-up. So, we want to
make<02:17:49.400><c> sure</c><02:17:49.840><c> that</c><02:17:50.000><c> it</c><02:17:50.120><c> captures</c><02:17:50.880><c> all</c><02:17:51.120><c> the</c><02:17:51.240><c> seven</c>

02:17:51.589 --> 02:17:51.599 align:start position:0%
make sure that it captures all the seven
 

02:17:51.599 --> 02:17:55.110 align:start position:0%
make sure that it captures all the seven
pages.<02:17:52.280><c> Ensure</c><02:17:53.480><c> that</c><02:17:53.599><c> it</c><02:17:53.760><c> captures</c><02:17:54.760><c> all</c><02:17:55.000><c> the</c>

02:17:55.110 --> 02:17:55.120 align:start position:0%
pages. Ensure that it captures all the
 

02:17:55.120 --> 02:17:58.030 align:start position:0%
pages. Ensure that it captures all the
seven<02:17:55.639><c> pages</c><02:17:56.240><c> from</c><02:17:56.760><c> FlutterFlow</c><02:17:57.400><c> Designer</c>

02:17:58.030 --> 02:17:58.040 align:start position:0%
seven pages from FlutterFlow Designer
 

02:17:58.040 --> 02:18:00.669 align:start position:0%
seven pages from FlutterFlow Designer
project.<02:17:58.760><c> Okay?</c><02:17:59.240><c> And</c><02:17:59.480><c> still</c><02:18:00.000><c> in</c><02:18:00.160><c> the</c><02:18:00.280><c> plan</c>

02:18:00.669 --> 02:18:00.679 align:start position:0%
project. Okay? And still in the plan
 

02:18:00.679 --> 02:18:03.030 align:start position:0%
project. Okay? And still in the plan
mode<02:18:01.000><c> just</c><02:18:01.200><c> to</c><02:18:01.320><c> make</c><02:18:01.559><c> sure</c><02:18:01.840><c> we</c><02:18:01.960><c> get</c><02:18:02.200><c> this</c><02:18:02.480><c> right</c>

02:18:03.030 --> 02:18:03.040 align:start position:0%
mode just to make sure we get this right
 

02:18:03.040 --> 02:18:05.190 align:start position:0%
mode just to make sure we get this right
because<02:18:03.400><c> our</c><02:18:03.719><c> app</c><02:18:04.120><c> ideally</c><02:18:04.800><c> should</c><02:18:05.000><c> should</c>

02:18:05.190 --> 02:18:05.200 align:start position:0%
because our app ideally should should
 

02:18:05.200 --> 02:18:07.750 align:start position:0%
because our app ideally should should
have<02:18:05.480><c> all</c><02:18:05.719><c> of</c><02:18:05.840><c> these</c><02:18:06.080><c> pages.</c><02:18:06.719><c> User</c><02:18:07.040><c> profile,</c>

02:18:07.750 --> 02:18:07.760 align:start position:0%
have all of these pages. User profile,
 

02:18:07.760 --> 02:18:10.030 align:start position:0%
have all of these pages. User profile,
helper,<02:18:08.400><c> request</c><02:18:08.960><c> management,</c><02:18:09.679><c> helper</c>

02:18:10.030 --> 02:18:10.040 align:start position:0%
helper, request management, helper
 

02:18:10.040 --> 02:18:12.790 align:start position:0%
helper, request management, helper
dashboard,<02:18:10.880><c> etc.</c><02:18:11.519><c> etc.</c><02:18:12.000><c> All</c><02:18:12.240><c> of</c><02:18:12.360><c> these</c><02:18:12.559><c> make</c>

02:18:12.790 --> 02:18:12.800 align:start position:0%
dashboard, etc. etc. All of these make
 

02:18:12.800 --> 02:18:14.830 align:start position:0%
dashboard, etc. etc. All of these make
sense.<02:18:13.400><c> Okay,</c><02:18:13.760><c> so</c><02:18:13.960><c> it</c><02:18:14.080><c> went</c><02:18:14.280><c> ahead</c><02:18:14.519><c> and</c><02:18:14.639><c> it</c>

02:18:14.830 --> 02:18:14.840 align:start position:0%
sense. Okay, so it went ahead and it
 

02:18:14.840 --> 02:18:17.030 align:start position:0%
sense. Okay, so it went ahead and it
updated<02:18:15.440><c> it</c><02:18:15.719><c> and</c><02:18:15.800><c> it's</c><02:18:15.960><c> going</c><02:18:16.080><c> to</c><02:18:16.200><c> add</c><02:18:16.559><c> static</c>

02:18:17.030 --> 02:18:17.040 align:start position:0%
updated it and it's going to add static
 

02:18:17.040 --> 02:18:19.589 align:start position:0%
updated it and it's going to add static
page<02:18:17.360><c> components</c><02:18:18.000><c> for</c><02:18:18.200><c> all</c><02:18:18.519><c> seven</c><02:18:18.920><c> pages.</c>

02:18:19.589 --> 02:18:19.599 align:start position:0%
page components for all seven pages.
 

02:18:19.599 --> 02:18:21.509 align:start position:0%
page components for all seven pages.
Okay,<02:18:19.840><c> submit</c><02:18:20.360><c> this.</c><02:18:20.840><c> All</c><02:18:20.880><c> right,</c><02:18:21.120><c> so</c><02:18:21.200><c> it</c><02:18:21.320><c> has</c>

02:18:21.509 --> 02:18:21.519 align:start position:0%
Okay, submit this. All right, so it has
 

02:18:21.519 --> 02:18:24.430 align:start position:0%
Okay, submit this. All right, so it has
implemented<02:18:22.280><c> the</c><02:18:22.360><c> seven</c><02:18:22.920><c> page</c><02:18:23.639><c> designer</c>

02:18:24.430 --> 02:18:24.440 align:start position:0%
implemented the seven page designer
 

02:18:24.440 --> 02:18:26.910 align:start position:0%
implemented the seven page designer
reference<02:18:25.080><c> update.</c><02:18:25.599><c> Let's</c><02:18:25.840><c> go</c><02:18:25.960><c> ahead</c><02:18:26.280><c> and</c><02:18:26.480><c> see</c>

02:18:26.910 --> 02:18:26.920 align:start position:0%
reference update. Let's go ahead and see
 

02:18:26.920 --> 02:18:28.830 align:start position:0%
reference update. Let's go ahead and see
how<02:18:27.120><c> it</c><02:18:27.280><c> looks.</c><02:18:27.800><c> All</c><02:18:27.880><c> right,</c><02:18:28.040><c> so</c><02:18:28.160><c> this</c><02:18:28.480><c> looks</c><02:18:28.760><c> a</c>

02:18:28.830 --> 02:18:28.840 align:start position:0%
how it looks. All right, so this looks a
 

02:18:28.840 --> 02:18:30.910 align:start position:0%
how it looks. All right, so this looks a
lot<02:18:29.200><c> better</c><02:18:29.480><c> in</c><02:18:29.599><c> my</c><02:18:30.000><c> opinion.</c><02:18:30.519><c> All</c><02:18:30.559><c> right,</c><02:18:30.800><c> we</c>

02:18:30.910 --> 02:18:30.920 align:start position:0%
lot better in my opinion. All right, we
 

02:18:30.920 --> 02:18:33.910 align:start position:0%
lot better in my opinion. All right, we
have<02:18:31.120><c> settings.</c><02:18:32.040><c> We</c><02:18:32.160><c> do</c><02:18:32.440><c> have</c><02:18:32.719><c> the</c><02:18:32.880><c> CH</c>

02:18:33.910 --> 02:18:33.920 align:start position:0%
have settings. We do have the CH
 

02:18:33.920 --> 02:18:36.390 align:start position:0%
have settings. We do have the CH
customer<02:18:34.599><c> home.</c><02:18:35.280><c> Do</c><02:18:35.400><c> we</c><02:18:35.519><c> even</c><02:18:35.800><c> see</c><02:18:36.040><c> that?</c><02:18:36.360><c> I</c>

02:18:36.390 --> 02:18:36.400 align:start position:0%
customer home. Do we even see that? I
 

02:18:36.400 --> 02:18:38.310 align:start position:0%
customer home. Do we even see that? I
don't<02:18:36.599><c> even</c><02:18:36.840><c> see</c><02:18:37.120><c> that</c><02:18:37.400><c> here.</c><02:18:37.840><c> But</c><02:18:38.040><c> this</c>

02:18:38.310 --> 02:18:38.320 align:start position:0%
don't even see that here. But this
 

02:18:38.320 --> 02:18:41.709 align:start position:0%
don't even see that here. But this
customer<02:18:39.000><c> home</c><02:18:39.480><c> service</c><02:18:40.040><c> details,</c><02:18:41.200><c> click</c><02:18:41.480><c> on</c>

02:18:41.709 --> 02:18:41.719 align:start position:0%
customer home service details, click on
 

02:18:41.719 --> 02:18:44.110 align:start position:0%
customer home service details, click on
book.<02:18:42.040><c> So</c><02:18:42.160><c> this</c><02:18:42.679><c> menu</c><02:18:43.240><c> we</c><02:18:43.400><c> need</c><02:18:43.679><c> to</c><02:18:43.800><c> kind</c><02:18:44.040><c> of</c>

02:18:44.110 --> 02:18:44.120 align:start position:0%
book. So this menu we need to kind of
 

02:18:44.120 --> 02:18:46.070 align:start position:0%
book. So this menu we need to kind of
remove<02:18:44.519><c> this.</c><02:18:44.719><c> So</c><02:18:44.840><c> let</c><02:18:45.000><c> me</c><02:18:45.120><c> go</c><02:18:45.240><c> ahead</c><02:18:45.519><c> and</c><02:18:45.719><c> sell</c>

02:18:46.070 --> 02:18:46.080 align:start position:0%
remove this. So let me go ahead and sell
 

02:18:46.080 --> 02:18:48.790 align:start position:0%
remove this. So let me go ahead and sell
it.<02:18:46.400><c> What</c><02:18:46.559><c> are</c><02:18:46.639><c> those</c><02:18:47.080><c> abbreviations?</c><02:18:48.480><c> Let's</c>

02:18:48.790 --> 02:18:48.800 align:start position:0%
it. What are those abbreviations? Let's
 

02:18:48.800 --> 02:18:51.070 align:start position:0%
it. What are those abbreviations? Let's
see.<02:18:49.360><c> Do</c><02:18:49.440><c> they</c><02:18:49.599><c> need</c><02:18:49.960><c> to</c><02:18:50.080><c> be</c><02:18:50.240><c> there?</c><02:18:50.760><c> Let's</c><02:18:50.920><c> see</c>

02:18:51.070 --> 02:18:51.080 align:start position:0%
see. Do they need to be there? Let's see
 

02:18:51.080 --> 02:18:54.190 align:start position:0%
see. Do they need to be there? Let's see
what<02:18:51.240><c> it</c><02:18:51.400><c> says.</c><02:18:52.000><c> But</c><02:18:52.160><c> it</c><02:18:52.280><c> looks</c><02:18:52.559><c> a</c><02:18:52.639><c> lot</c><02:18:52.960><c> cleaner</c>

02:18:54.190 --> 02:18:54.200 align:start position:0%
what it says. But it looks a lot cleaner
 

02:18:54.200 --> 02:18:56.990 align:start position:0%
what it says. But it looks a lot cleaner
than<02:18:54.440><c> than</c><02:18:54.599><c> the</c><02:18:54.679><c> original</c><02:18:55.760><c> UI,</c><02:18:56.519><c> at</c><02:18:56.679><c> least</c><02:18:56.920><c> to</c>

02:18:56.990 --> 02:18:57.000 align:start position:0%
than than the original UI, at least to
 

02:18:57.000 --> 02:18:59.750 align:start position:0%
than than the original UI, at least to
my<02:18:57.360><c> eyes.</c><02:18:57.920><c> And</c><02:18:58.080><c> now</c><02:18:58.360><c> we're</c><02:18:58.599><c> doing</c><02:18:59.080><c> a</c><02:18:59.200><c> little</c>

02:18:59.750 --> 02:18:59.760 align:start position:0%
my eyes. And now we're doing a little
 

02:18:59.760 --> 02:19:02.990 align:start position:0%
my eyes. And now we're doing a little
bit<02:19:00.000><c> of</c><02:19:00.480><c> tweaking,</c><02:19:01.240><c> clean-up</c><02:19:01.760><c> plan.</c><02:19:02.360><c> Okay,</c>

02:19:02.990 --> 02:19:03.000 align:start position:0%
bit of tweaking, clean-up plan. Okay,
 

02:19:03.000 --> 02:19:05.910 align:start position:0%
bit of tweaking, clean-up plan. Okay,
they<02:19:03.160><c> were</c><02:19:03.360><c> placeholder</c><02:19:04.280><c> text</c><02:19:04.760><c> icons</c><02:19:05.400><c> used</c><02:19:05.800><c> to</c>

02:19:05.910 --> 02:19:05.920 align:start position:0%
they were placeholder text icons used to
 

02:19:05.920 --> 02:19:09.110 align:start position:0%
they were placeholder text icons used to
mimic<02:19:06.320><c> the</c><02:19:06.719><c> nav</c><02:19:07.160><c> icon</c><02:19:07.880><c> column.</c><02:19:08.480><c> So</c><02:19:08.639><c> we</c><02:19:08.760><c> need</c><02:19:09.000><c> to</c>

02:19:09.110 --> 02:19:09.120 align:start position:0%
mimic the nav icon column. So we need to
 

02:19:09.120 --> 02:19:10.790 align:start position:0%
mimic the nav icon column. So we need to
remove<02:19:09.599><c> that</c><02:19:09.960><c> and</c><02:19:10.080><c> we</c><02:19:10.200><c> should</c><02:19:10.440><c> probably</c>

02:19:10.790 --> 02:19:10.800 align:start position:0%
remove that and we should probably
 

02:19:10.800 --> 02:19:13.310 align:start position:0%
remove that and we should probably
remove<02:19:11.240><c> any</c><02:19:11.480><c> other</c><02:19:12.000><c> placeholder</c><02:19:12.760><c> icons.</c><02:19:13.120><c> But</c>

02:19:13.310 --> 02:19:13.320 align:start position:0%
remove any other placeholder icons. But
 

02:19:13.320 --> 02:19:15.509 align:start position:0%
remove any other placeholder icons. But
right<02:19:13.519><c> now</c><02:19:13.679><c> it</c><02:19:13.840><c> looks</c><02:19:14.120><c> fairly</c><02:19:14.519><c> clean.</c><02:19:15.000><c> Static</c>

02:19:15.509 --> 02:19:15.519 align:start position:0%
right now it looks fairly clean. Static
 

02:19:15.519 --> 02:19:18.150 align:start position:0%
right now it looks fairly clean. Static
preview,<02:19:16.040><c> what</c><02:19:16.200><c> is</c><02:19:16.360><c> that?</c><02:19:16.880><c> This</c><02:19:17.240><c> this</c><02:19:17.719><c> also</c>

02:19:18.150 --> 02:19:18.160 align:start position:0%
preview, what is that? This this also
 

02:19:18.160 --> 02:19:19.790 align:start position:0%
preview, what is that? This this also
needs<02:19:18.440><c> to</c><02:19:18.519><c> be</c><02:19:18.639><c> removed.</c><02:19:19.320><c> So</c><02:19:19.400><c> we're</c><02:19:19.559><c> going</c><02:19:19.719><c> to</c>

02:19:19.790 --> 02:19:19.800 align:start position:0%
needs to be removed. So we're going to
 

02:19:19.800 --> 02:19:22.589 align:start position:0%
needs to be removed. So we're going to
actually<02:19:20.240><c> tell</c><02:19:20.639><c> it</c><02:19:21.200><c> check</c><02:19:21.639><c> for</c><02:19:22.000><c> any</c>

02:19:22.589 --> 02:19:22.599 align:start position:0%
actually tell it check for any
 

02:19:22.599 --> 02:19:25.230 align:start position:0%
actually tell it check for any
placeholders<02:19:23.719><c> and</c><02:19:23.880><c> see</c><02:19:24.040><c> if</c><02:19:24.200><c> you</c><02:19:24.280><c> can</c><02:19:24.559><c> match</c>

02:19:25.230 --> 02:19:25.240 align:start position:0%
placeholders and see if you can match
 

02:19:25.240 --> 02:19:27.669 align:start position:0%
placeholders and see if you can match
what<02:19:25.360><c> it</c><02:19:25.519><c> should</c><02:19:25.880><c> be</c><02:19:26.280><c> on</c><02:19:26.400><c> the</c><02:19:26.480><c> design.</c><02:19:27.400><c> Pull</c>

02:19:27.669 --> 02:19:27.679 align:start position:0%
what it should be on the design. Pull
 

02:19:27.679 --> 02:19:30.629 align:start position:0%
what it should be on the design. Pull
pull<02:19:27.920><c> the</c><02:19:28.040><c> design</c><02:19:28.559><c> elements</c><02:19:29.160><c> and</c><02:19:29.400><c> re-replace</c>

02:19:30.629 --> 02:19:30.639 align:start position:0%
pull the design elements and re-replace
 

02:19:30.639 --> 02:19:32.629 align:start position:0%
pull the design elements and re-replace
these<02:19:31.040><c> placeholders</c><02:19:31.840><c> with</c><02:19:32.000><c> with</c><02:19:32.120><c> the</c><02:19:32.200><c> actual</c>

02:19:32.629 --> 02:19:32.639 align:start position:0%
these placeholders with with the actual
 

02:19:32.639 --> 02:19:34.629 align:start position:0%
these placeholders with with the actual
design.<02:19:33.360><c> All</c><02:19:33.440><c> right,</c><02:19:33.679><c> so</c><02:19:33.800><c> it</c><02:19:33.880><c> has</c><02:19:34.120><c> fixed</c><02:19:34.519><c> it.</c>

02:19:34.629 --> 02:19:34.639 align:start position:0%
design. All right, so it has fixed it.
 

02:19:34.639 --> 02:19:36.750 align:start position:0%
design. All right, so it has fixed it.
Now<02:19:34.880><c> it</c><02:19:35.000><c> looks</c><02:19:35.240><c> a</c><02:19:35.320><c> lot</c><02:19:35.599><c> better.</c><02:19:35.840><c> We</c><02:19:36.000><c> still</c><02:19:36.400><c> see</c>

02:19:36.750 --> 02:19:36.760 align:start position:0%
Now it looks a lot better. We still see
 

02:19:36.760 --> 02:19:38.950 align:start position:0%
Now it looks a lot better. We still see
some<02:19:37.080><c> other</c><02:19:37.400><c> static</c><02:19:37.880><c> preview.</c><02:19:38.240><c> That's</c><02:19:38.559><c> okay.</c>

02:19:38.950 --> 02:19:38.960 align:start position:0%
some other static preview. That's okay.
 

02:19:38.960 --> 02:19:41.830 align:start position:0%
some other static preview. That's okay.
Let's<02:19:39.240><c> see</c><02:19:39.480><c> if</c><02:19:39.679><c> they</c><02:19:39.840><c> go</c><02:19:40.120><c> away</c><02:19:40.639><c> once</c><02:19:41.400><c> we</c><02:19:41.519><c> have</c>

02:19:41.830 --> 02:19:41.840 align:start position:0%
Let's see if they go away once we have
 

02:19:41.840 --> 02:19:44.430 align:start position:0%
Let's see if they go away once we have
real<02:19:42.120><c> data</c><02:19:42.559><c> being</c><02:19:42.800><c> fed.</c><02:19:43.240><c> So</c><02:19:43.440><c> once</c><02:19:43.760><c> we're</c><02:19:44.000><c> happy</c>

02:19:44.430 --> 02:19:44.440 align:start position:0%
real data being fed. So once we're happy
 

02:19:44.440 --> 02:19:47.549 align:start position:0%
real data being fed. So once we're happy
with<02:19:44.599><c> the</c><02:19:44.760><c> UI,</c><02:19:45.480><c> we</c><02:19:45.719><c> can</c><02:19:46.080><c> start</c><02:19:46.760><c> designing</c><02:19:47.440><c> the</c>

02:19:47.549 --> 02:19:47.559 align:start position:0%
with the UI, we can start designing the
 

02:19:47.559 --> 02:19:50.070 align:start position:0%
with the UI, we can start designing the
backend.<02:19:48.200><c> Data</c><02:19:48.480><c> model</c><02:19:48.920><c> should</c><02:19:49.400><c> match</c><02:19:49.960><c> the</c>

02:19:50.070 --> 02:19:50.080 align:start position:0%
backend. Data model should match the
 

02:19:50.080 --> 02:19:52.510 align:start position:0%
backend. Data model should match the
screens<02:19:50.560><c> that</c><02:19:50.720><c> we</c><02:19:50.880><c> actually</c><02:19:51.400><c> have</c><02:19:51.640><c> here.</c><02:19:52.360><c> And</c>

02:19:52.510 --> 02:19:52.520 align:start position:0%
screens that we actually have here. And
 

02:19:52.520 --> 02:19:55.270 align:start position:0%
screens that we actually have here. And
so<02:19:52.640><c> for</c><02:19:52.880><c> FlexHelp,</c><02:19:53.840><c> the</c><02:19:53.960><c> first</c><02:19:54.360><c> schema</c><02:19:55.080><c> to</c>

02:19:55.270 --> 02:19:55.280 align:start position:0%
so for FlexHelp, the first schema to
 

02:19:55.280 --> 02:19:57.310 align:start position:0%
so for FlexHelp, the first schema to
support<02:19:55.800><c> service</c><02:19:56.280><c> browsing,</c><02:19:56.920><c> helper</c>

02:19:57.310 --> 02:19:57.320 align:start position:0%
support service browsing, helper
 

02:19:57.320 --> 02:20:00.070 align:start position:0%
support service browsing, helper
profiles,<02:19:58.080><c> booking</c><02:19:58.400><c> creation,</c><02:19:59.160><c> and</c><02:19:59.480><c> helper</c>

02:20:00.070 --> 02:20:00.080 align:start position:0%
profiles, booking creation, and helper
 

02:20:00.080 --> 02:20:03.230 align:start position:0%
profiles, booking creation, and helper
status<02:20:00.760><c> updates.</c><02:20:01.480><c> Anything</c><02:20:01.960><c> beyond</c><02:20:02.400><c> that</c><02:20:03.000><c> can</c>

02:20:03.230 --> 02:20:03.240 align:start position:0%
status updates. Anything beyond that can
 

02:20:03.240 --> 02:20:05.430 align:start position:0%
status updates. Anything beyond that can
wait.<02:20:03.720><c> And</c><02:20:04.080><c> here's</c><02:20:04.440><c> a</c><02:20:04.520><c> prompt</c><02:20:04.920><c> that</c><02:20:05.080><c> we</c><02:20:05.200><c> can</c>

02:20:05.430 --> 02:20:05.440 align:start position:0%
wait. And here's a prompt that we can
 

02:20:05.440 --> 02:20:09.190 align:start position:0%
wait. And here's a prompt that we can
use<02:20:06.160><c> to</c><02:20:06.360><c> connect</c><02:20:07.040><c> our</c><02:20:07.400><c> app</c><02:20:07.880><c> to</c><02:20:08.080><c> Convex,</c><02:20:08.880><c> okay?</c>

02:20:09.190 --> 02:20:09.200 align:start position:0%
use to connect our app to Convex, okay?
 

02:20:09.200 --> 02:20:11.270 align:start position:0%
use to connect our app to Convex, okay?
We're<02:20:09.360><c> going</c><02:20:09.480><c> to</c><02:20:09.560><c> be</c><02:20:09.640><c> using</c><02:20:09.920><c> Convex</c><02:20:10.800><c> for</c><02:20:11.000><c> this</c>

02:20:11.270 --> 02:20:11.280 align:start position:0%
We're going to be using Convex for this
 

02:20:11.280 --> 02:20:13.910 align:start position:0%
We're going to be using Convex for this
app<02:20:11.640><c> as</c><02:20:11.880><c> well.</c><02:20:12.320><c> So,</c><02:20:12.600><c> we</c><02:20:12.760><c> have</c><02:20:12.960><c> here</c><02:20:13.200><c> connect</c>

02:20:13.910 --> 02:20:13.920 align:start position:0%
app as well. So, we have here connect
 

02:20:13.920 --> 02:20:16.870 align:start position:0%
app as well. So, we have here connect
let's<02:20:14.200><c> help</c><02:20:14.480><c> UI</c><02:20:14.880><c> to</c><02:20:15.080><c> live</c><02:20:15.440><c> Convex</c><02:20:16.000><c> service</c><02:20:16.680><c> and</c>

02:20:16.870 --> 02:20:16.880 align:start position:0%
let's help UI to live Convex service and
 

02:20:16.880 --> 02:20:19.390 align:start position:0%
let's help UI to live Convex service and
helper<02:20:17.360><c> data.</c><02:20:17.960><c> Let's</c><02:20:18.200><c> go</c><02:20:18.360><c> ahead</c><02:20:18.840><c> and</c><02:20:19.040><c> keep</c><02:20:19.280><c> it</c>

02:20:19.390 --> 02:20:19.400 align:start position:0%
helper data. Let's go ahead and keep it
 

02:20:19.400 --> 02:20:21.190 align:start position:0%
helper data. Let's go ahead and keep it
in<02:20:19.520><c> plan</c><02:20:19.880><c> mode.</c><02:20:20.320><c> All</c><02:20:20.360><c> right,</c><02:20:20.520><c> so</c><02:20:20.640><c> this</c><02:20:20.880><c> is</c><02:20:21.000><c> our</c>

02:20:21.190 --> 02:20:21.200 align:start position:0%
in plan mode. All right, so this is our
 

02:20:21.200 --> 02:20:24.110 align:start position:0%
in plan mode. All right, so this is our
plan.<02:20:21.600><c> This</c><02:20:21.800><c> is</c><02:20:21.920><c> the</c><02:20:22.040><c> Convex</c><02:20:22.760><c> read</c><02:20:23.080><c> path</c><02:20:23.560><c> plan.</c>

02:20:24.110 --> 02:20:24.120 align:start position:0%
plan. This is the Convex read path plan.
 

02:20:24.120 --> 02:20:26.070 align:start position:0%
plan. This is the Convex read path plan.
Connect<02:20:24.520><c> the</c><02:20:24.600><c> customer</c><02:20:25.080><c> facing</c><02:20:25.520><c> marketplace</c>

02:20:26.070 --> 02:20:26.080 align:start position:0%
Connect the customer facing marketplace
 

02:20:26.080 --> 02:20:29.990 align:start position:0%
Connect the customer facing marketplace
UI<02:20:26.680><c> to</c><02:20:26.840><c> Convex</c><02:20:27.800><c> for</c><02:20:27.920><c> the</c><02:20:28.040><c> first</c><02:20:28.600><c> database</c><02:20:29.360><c> back</c>

02:20:29.990 --> 02:20:30.000 align:start position:0%
UI to Convex for the first database back
 

02:20:30.000 --> 02:20:32.510 align:start position:0%
UI to Convex for the first database back
read<02:20:30.440><c> path.</c><02:20:31.040><c> The</c><02:20:31.200><c> repo</c><02:20:31.680><c> currently</c><02:20:32.040><c> has</c><02:20:32.240><c> no</c>

02:20:32.510 --> 02:20:32.520 align:start position:0%
read path. The repo currently has no
 

02:20:32.520 --> 02:20:35.190 align:start position:0%
read path. The repo currently has no
Convex<02:20:33.120><c> setup.</c><02:20:33.520><c> So,</c><02:20:33.680><c> add</c><02:20:34.000><c> Convex</c><02:20:34.800><c> from</c><02:20:35.000><c> from</c>

02:20:35.190 --> 02:20:35.200 align:start position:0%
Convex setup. So, add Convex from from
 

02:20:35.200 --> 02:20:38.390 align:start position:0%
Convex setup. So, add Convex from from
scratch,<02:20:35.960><c> etc.,</c><02:20:36.520><c> etc.</c><02:20:37.120><c> And</c><02:20:37.280><c> we</c><02:20:37.440><c> have</c><02:20:37.720><c> Convex</c>

02:20:38.390 --> 02:20:38.400 align:start position:0%
scratch, etc., etc. And we have Convex
 

02:20:38.400 --> 02:20:39.950 align:start position:0%
scratch, etc., etc. And we have Convex
here<02:20:38.720><c> running.</c><02:20:39.160><c> We</c><02:20:39.280><c> have</c><02:20:39.480><c> these</c><02:20:39.720><c> three</c>

02:20:39.950 --> 02:20:39.960 align:start position:0%
here running. We have these three
 

02:20:39.960 --> 02:20:42.630 align:start position:0%
here running. We have these three
projects.<02:20:41.000><c> One</c><02:20:41.240><c> that</c><02:20:41.400><c> was</c><02:20:41.600><c> created</c><02:20:42.280><c> for</c><02:20:42.440><c> the</c>

02:20:42.630 --> 02:20:42.640 align:start position:0%
projects. One that was created for the
 

02:20:42.640 --> 02:20:44.430 align:start position:0%
projects. One that was created for the
other<02:20:43.000><c> app</c><02:20:43.240><c> that</c><02:20:43.400><c> we</c><02:20:43.560><c> did,</c><02:20:43.880><c> and</c><02:20:44.040><c> so</c><02:20:44.240><c> we're</c>

02:20:44.430 --> 02:20:44.440 align:start position:0%
other app that we did, and so we're
 

02:20:44.440 --> 02:20:46.190 align:start position:0%
other app that we did, and so we're
going<02:20:44.560><c> to</c><02:20:44.640><c> be</c><02:20:44.760><c> creating</c><02:20:45.160><c> another</c><02:20:45.520><c> project</c><02:20:46.080><c> for</c>

02:20:46.190 --> 02:20:46.200 align:start position:0%
going to be creating another project for
 

02:20:46.200 --> 02:20:47.870 align:start position:0%
going to be creating another project for
this<02:20:46.480><c> app</c><02:20:46.720><c> as</c><02:20:46.920><c> well.</c><02:20:47.200><c> All</c><02:20:47.240><c> right,</c><02:20:47.400><c> so</c><02:20:47.560><c> it</c><02:20:47.640><c> has</c>

02:20:47.870 --> 02:20:47.880 align:start position:0%
this app as well. All right, so it has
 

02:20:47.880 --> 02:20:51.110 align:start position:0%
this app as well. All right, so it has
implemented<02:20:48.720><c> the</c><02:20:48.840><c> first</c><02:20:49.480><c> Convex</c><02:20:50.240><c> back</c><02:20:50.760><c> read</c>

02:20:51.110 --> 02:20:51.120 align:start position:0%
implemented the first Convex back read
 

02:20:51.120 --> 02:20:53.150 align:start position:0%
implemented the first Convex back read
path<02:20:51.560><c> for</c><02:20:51.680><c> the</c><02:20:51.800><c> customer</c><02:20:52.400><c> marketplace.</c><02:20:53.080><c> And</c>

02:20:53.150 --> 02:20:53.160 align:start position:0%
path for the customer marketplace. And
 

02:20:53.160 --> 02:20:55.030 align:start position:0%
path for the customer marketplace. And
these<02:20:53.320><c> are</c><02:20:53.400><c> the</c><02:20:53.520><c> files</c><02:20:53.840><c> that</c><02:20:54.000><c> has</c><02:20:54.200><c> changed.</c>

02:20:55.030 --> 02:20:55.040 align:start position:0%
these are the files that has changed.
 

02:20:55.040 --> 02:20:57.070 align:start position:0%
these are the files that has changed.
This<02:20:55.200><c> is</c><02:20:55.360><c> what's</c><02:20:55.640><c> connected.</c><02:20:56.280><c> And</c><02:20:56.400><c> if</c><02:20:56.520><c> we</c><02:20:56.640><c> jump</c>

02:20:57.070 --> 02:20:57.080 align:start position:0%
This is what's connected. And if we jump
 

02:20:57.080 --> 02:20:59.590 align:start position:0%
This is what's connected. And if we jump
into<02:20:57.400><c> our</c><02:20:57.600><c> Convex</c><02:20:58.480><c> dashboard,</c><02:20:59.040><c> we</c><02:20:59.160><c> can</c><02:20:59.320><c> see</c><02:20:59.480><c> we</c>

02:20:59.590 --> 02:20:59.600 align:start position:0%
into our Convex dashboard, we can see we
 

02:20:59.600 --> 02:21:01.550 align:start position:0%
into our Convex dashboard, we can see we
have<02:20:59.840><c> a</c><02:20:59.920><c> brand</c><02:21:00.520><c> new</c><02:21:00.760><c> project</c><02:21:01.240><c> here</c><02:21:01.400><c> that</c>

02:21:01.550 --> 02:21:01.560 align:start position:0%
have a brand new project here that
 

02:21:01.560 --> 02:21:03.310 align:start position:0%
have a brand new project here that
wasn't<02:21:01.880><c> there</c><02:21:02.080><c> before.</c><02:21:02.640><c> And</c><02:21:02.720><c> if</c><02:21:02.840><c> we</c><02:21:02.960><c> jump</c>

02:21:03.310 --> 02:21:03.320 align:start position:0%
wasn't there before. And if we jump
 

02:21:03.320 --> 02:21:05.990 align:start position:0%
wasn't there before. And if we jump
here,<02:21:03.480><c> we</c><02:21:03.680><c> should</c><02:21:03.960><c> see</c><02:21:04.280><c> that</c><02:21:04.520><c> we</c><02:21:04.680><c> have</c><02:21:05.160><c> a</c>

02:21:05.990 --> 02:21:06.000 align:start position:0%
here, we should see that we have a
 

02:21:06.000 --> 02:21:09.150 align:start position:0%
here, we should see that we have a
deployment<02:21:06.840><c> here</c><02:21:07.320><c> on</c><02:21:07.640><c> my</c><02:21:08.120><c> own</c><02:21:08.400><c> machine.</c><02:21:08.960><c> This</c>

02:21:09.150 --> 02:21:09.160 align:start position:0%
deployment here on my own machine. This
 

02:21:09.160 --> 02:21:12.790 align:start position:0%
deployment here on my own machine. This
is<02:21:09.320><c> a</c><02:21:09.440><c> local</c><02:21:09.960><c> deployment</c><02:21:10.720><c> that</c><02:21:11.360><c> Convex</c><02:21:12.240><c> is</c>

02:21:12.790 --> 02:21:12.800 align:start position:0%
is a local deployment that Convex is
 

02:21:12.800 --> 02:21:14.470 align:start position:0%
is a local deployment that Convex is
running<02:21:13.200><c> on,</c><02:21:13.520><c> right?</c><02:21:13.800><c> This</c><02:21:13.960><c> is</c><02:21:14.080><c> not</c><02:21:14.360><c> on</c>

02:21:14.470 --> 02:21:14.480 align:start position:0%
running on, right? This is not on
 

02:21:14.480 --> 02:21:16.910 align:start position:0%
running on, right? This is not on
Convex,<02:21:15.040><c> it's</c><02:21:15.280><c> on</c><02:21:15.400><c> my</c><02:21:15.680><c> own</c><02:21:15.960><c> machine.</c><02:21:16.720><c> And</c><02:21:16.800><c> we</c>

02:21:16.910 --> 02:21:16.920 align:start position:0%
Convex, it's on my own machine. And we
 

02:21:16.920 --> 02:21:19.110 align:start position:0%
Convex, it's on my own machine. And we
also<02:21:17.240><c> have</c><02:21:17.440><c> a</c><02:21:17.560><c> production,</c><02:21:18.240><c> right?</c><02:21:18.520><c> So,</c><02:21:18.680><c> with</c>

02:21:19.110 --> 02:21:19.120 align:start position:0%
also have a production, right? So, with
 

02:21:19.120 --> 02:21:21.630 align:start position:0%
also have a production, right? So, with
this<02:21:19.360><c> deployment</c><02:21:20.000><c> here,</c><02:21:20.520><c> you</c><02:21:20.600><c> go</c><02:21:20.760><c> into</c><02:21:21.000><c> data,</c>

02:21:21.630 --> 02:21:21.640 align:start position:0%
this deployment here, you go into data,
 

02:21:21.640 --> 02:21:23.710 align:start position:0%
this deployment here, you go into data,
we<02:21:21.760><c> can</c><02:21:21.920><c> see</c><02:21:22.120><c> that</c><02:21:22.320><c> we</c><02:21:22.440><c> have</c><02:21:22.640><c> categories,</c><02:21:23.600><c> we</c>

02:21:23.710 --> 02:21:23.720 align:start position:0%
we can see that we have categories, we
 

02:21:23.720 --> 02:21:25.990 align:start position:0%
we can see that we have categories, we
have<02:21:23.960><c> helper</c><02:21:24.400><c> profiles.</c><02:21:25.360><c> We</c><02:21:25.520><c> also</c><02:21:25.800><c> have</c>

02:21:25.990 --> 02:21:26.000 align:start position:0%
have helper profiles. We also have
 

02:21:26.000 --> 02:21:28.190 align:start position:0%
have helper profiles. We also have
services.<02:21:26.960><c> And</c><02:21:27.080><c> then</c><02:21:27.280><c> we</c><02:21:27.400><c> have</c><02:21:27.760><c> a</c><02:21:27.840><c> bunch</c><02:21:28.080><c> of</c>

02:21:28.190 --> 02:21:28.200 align:start position:0%
services. And then we have a bunch of
 

02:21:28.200 --> 02:21:30.470 align:start position:0%
services. And then we have a bunch of
functions,<02:21:28.840><c> right?</c><02:21:29.120><c> Marketplace</c><02:21:29.800><c> list,</c><02:21:30.360><c> and</c>

02:21:30.470 --> 02:21:30.480 align:start position:0%
functions, right? Marketplace list, and
 

02:21:30.480 --> 02:21:33.030 align:start position:0%
functions, right? Marketplace list, and
then<02:21:30.680><c> we</c><02:21:30.800><c> have</c><02:21:31.000><c> seed,</c><02:21:31.720><c> creating</c><02:21:32.160><c> seed</c><02:21:32.520><c> data.</c>

02:21:33.030 --> 02:21:33.040 align:start position:0%
then we have seed, creating seed data.
 

02:21:33.040 --> 02:21:35.230 align:start position:0%
then we have seed, creating seed data.
Now,<02:21:33.200><c> if</c><02:21:33.320><c> you</c><02:21:33.440><c> go</c><02:21:33.560><c> into</c><02:21:33.800><c> production,</c><02:21:34.760><c> we</c><02:21:35.000><c> may</c>

02:21:35.230 --> 02:21:35.240 align:start position:0%
Now, if you go into production, we may
 

02:21:35.240 --> 02:21:37.150 align:start position:0%
Now, if you go into production, we may
not<02:21:35.600><c> see</c><02:21:35.800><c> anything</c><02:21:36.280><c> there,</c><02:21:36.680><c> right?</c><02:21:36.920><c> There's</c>

02:21:37.150 --> 02:21:37.160 align:start position:0%
not see anything there, right? There's
 

02:21:37.160 --> 02:21:38.670 align:start position:0%
not see anything there, right? There's
nothing<02:21:37.560><c> there</c><02:21:37.800><c> because</c><02:21:38.120><c> we</c><02:21:38.280><c> haven't</c>

02:21:38.670 --> 02:21:38.680 align:start position:0%
nothing there because we haven't
 

02:21:38.680 --> 02:21:40.710 align:start position:0%
nothing there because we haven't
deployed<02:21:39.280><c> this</c><02:21:39.520><c> app</c><02:21:39.800><c> to</c><02:21:39.920><c> production.</c><02:21:40.480><c> There's</c>

02:21:40.710 --> 02:21:40.720 align:start position:0%
deployed this app to production. There's
 

02:21:40.720 --> 02:21:43.510 align:start position:0%
deployed this app to production. There's
no<02:21:40.920><c> need</c><02:21:41.360><c> for</c><02:21:41.720><c> a</c><02:21:41.880><c> production</c><02:21:42.760><c> deployment.</c>

02:21:43.510 --> 02:21:43.520 align:start position:0%
no need for a production deployment.
 

02:21:43.520 --> 02:21:45.230 align:start position:0%
no need for a production deployment.
Now,<02:21:43.680><c> if</c><02:21:43.800><c> we</c><02:21:43.880><c> jump</c><02:21:44.120><c> back</c><02:21:44.360><c> to</c><02:21:44.480><c> Codex</c><02:21:44.960><c> and</c><02:21:45.120><c> we</c>

02:21:45.230 --> 02:21:45.240 align:start position:0%
Now, if we jump back to Codex and we
 

02:21:45.240 --> 02:21:47.470 align:start position:0%
Now, if we jump back to Codex and we
refresh<02:21:45.720><c> the</c><02:21:45.880><c> app,</c><02:21:46.200><c> this</c><02:21:46.400><c> is</c><02:21:46.560><c> now</c><02:21:46.800><c> data</c><02:21:47.360><c> that</c>

02:21:47.470 --> 02:21:47.480 align:start position:0%
refresh the app, this is now data that
 

02:21:47.480 --> 02:21:50.990 align:start position:0%
refresh the app, this is now data that
it's<02:21:47.720><c> pulling</c><02:21:48.400><c> from</c><02:21:48.760><c> my</c><02:21:49.360><c> local</c><02:21:50.080><c> Convex</c>

02:21:50.990 --> 02:21:51.000 align:start position:0%
it's pulling from my local Convex
 

02:21:51.000 --> 02:21:52.790 align:start position:0%
it's pulling from my local Convex
deployment,<02:21:51.720><c> okay?</c><02:21:52.040><c> So,</c><02:21:52.200><c> we</c><02:21:52.320><c> have</c><02:21:52.560><c> here</c>

02:21:52.790 --> 02:21:52.800 align:start position:0%
deployment, okay? So, we have here
 

02:21:52.800 --> 02:21:54.870 align:start position:0%
deployment, okay? So, we have here
Marcus.<02:21:53.440><c> If</c><02:21:53.520><c> you</c><02:21:53.640><c> go</c><02:21:53.840><c> back</c><02:21:54.120><c> here,</c><02:21:54.560><c> we</c><02:21:54.680><c> should</c>

02:21:54.870 --> 02:21:54.880 align:start position:0%
Marcus. If you go back here, we should
 

02:21:54.880 --> 02:21:56.950 align:start position:0%
Marcus. If you go back here, we should
see<02:21:55.000><c> Marcus,</c><02:21:55.600><c> right?</c><02:21:55.800><c> Helper</c><02:21:56.160><c> profiles,</c>

02:21:56.950 --> 02:21:56.960 align:start position:0%
see Marcus, right? Helper profiles,
 

02:21:56.960 --> 02:21:59.310 align:start position:0%
see Marcus, right? Helper profiles,
there's<02:21:57.240><c> Marcus.</c><02:21:57.760><c> And</c><02:21:57.880><c> if</c><02:21:58.040><c> I</c><02:21:58.080><c> change</c><02:21:58.600><c> Marcus,</c>

02:21:59.310 --> 02:21:59.320 align:start position:0%
there's Marcus. And if I change Marcus,
 

02:21:59.320 --> 02:22:01.510 align:start position:0%
there's Marcus. And if I change Marcus,
if<02:21:59.480><c> I</c><02:21:59.600><c> edit</c><02:21:59.960><c> name</c><02:22:00.360><c> and</c><02:22:00.480><c> I</c><02:22:00.560><c> change,</c><02:22:01.040><c> let's</c><02:22:01.280><c> say,</c>

02:22:01.510 --> 02:22:01.520 align:start position:0%
if I edit name and I change, let's say,
 

02:22:01.520 --> 02:22:03.990 align:start position:0%
if I edit name and I change, let's say,
Marcus,<02:22:02.400><c> right?</c><02:22:02.680><c> And</c><02:22:02.840><c> I</c><02:22:02.920><c> go</c><02:22:03.120><c> back</c><02:22:03.440><c> here,</c><02:22:03.760><c> now</c>

02:22:03.990 --> 02:22:04.000 align:start position:0%
Marcus, right? And I go back here, now
 

02:22:04.000 --> 02:22:05.910 align:start position:0%
Marcus, right? And I go back here, now
it's<02:22:04.160><c> automatically</c><02:22:04.840><c> Marcus</c><02:22:05.400><c> E</c><02:22:05.560><c> here.</c>

02:22:05.910 --> 02:22:05.920 align:start position:0%
it's automatically Marcus E here.
 

02:22:05.920 --> 02:22:08.110 align:start position:0%
it's automatically Marcus E here.
Automatically<02:22:06.680><c> updates.</c><02:22:07.160><c> If</c><02:22:07.280><c> I</c><02:22:07.360><c> change</c><02:22:07.760><c> that</c>

02:22:08.110 --> 02:22:08.120 align:start position:0%
Automatically updates. If I change that
 

02:22:08.120 --> 02:22:10.430 align:start position:0%
Automatically updates. If I change that
to<02:22:08.520><c> James,</c><02:22:09.040><c> guess</c><02:22:09.360><c> what?</c><02:22:09.600><c> Now</c><02:22:09.760><c> it</c><02:22:09.840><c> says</c><02:22:10.080><c> James</c>

02:22:10.430 --> 02:22:10.440 align:start position:0%
to James, guess what? Now it says James
 

02:22:10.440 --> 02:22:12.470 align:start position:0%
to James, guess what? Now it says James
S.<02:22:10.720><c> So,</c><02:22:10.840><c> as</c><02:22:10.960><c> you</c><02:22:11.080><c> can</c><02:22:11.280><c> see,</c><02:22:11.800><c> this</c><02:22:12.080><c> is</c><02:22:12.200><c> now</c>

02:22:12.470 --> 02:22:12.480 align:start position:0%
S. So, as you can see, this is now
 

02:22:12.480 --> 02:22:15.430 align:start position:0%
S. So, as you can see, this is now
linked<02:22:12.880><c> to</c><02:22:13.000><c> our</c><02:22:13.240><c> local</c><02:22:13.800><c> Convex</c><02:22:14.560><c> instance</c><02:22:15.240><c> on</c>

02:22:15.430 --> 02:22:15.440 align:start position:0%
linked to our local Convex instance on
 

02:22:15.440 --> 02:22:17.230 align:start position:0%
linked to our local Convex instance on
my<02:22:15.680><c> machine.</c><02:22:16.200><c> Both</c><02:22:16.480><c> of</c><02:22:16.600><c> these</c><02:22:16.800><c> are</c><02:22:16.920><c> on</c><02:22:17.040><c> my</c>

02:22:17.230 --> 02:22:17.240 align:start position:0%
my machine. Both of these are on my
 

02:22:17.240 --> 02:22:18.710 align:start position:0%
my machine. Both of these are on my
machine.<02:22:17.640><c> Now,</c><02:22:17.760><c> the</c><02:22:17.880><c> next</c><02:22:18.160><c> thing</c><02:22:18.320><c> that</c><02:22:18.480><c> I</c><02:22:18.520><c> want</c>

02:22:18.710 --> 02:22:18.720 align:start position:0%
machine. Now, the next thing that I want
 

02:22:18.720 --> 02:22:20.910 align:start position:0%
machine. Now, the next thing that I want
to<02:22:18.800><c> do</c><02:22:18.960><c> is</c><02:22:19.120><c> I</c><02:22:19.200><c> want</c><02:22:19.400><c> to</c><02:22:19.520><c> build</c><02:22:19.960><c> out</c><02:22:20.160><c> the</c><02:22:20.440><c> booking</c>

02:22:20.910 --> 02:22:20.920 align:start position:0%
to do is I want to build out the booking
 

02:22:20.920 --> 02:22:23.350 align:start position:0%
to do is I want to build out the booking
flow,<02:22:21.400><c> because</c><02:22:21.760><c> that's</c><02:22:22.080><c> the</c><02:22:22.240><c> key</c><02:22:22.880><c> in</c><02:22:23.000><c> this</c>

02:22:23.350 --> 02:22:23.360 align:start position:0%
flow, because that's the key in this
 

02:22:23.360 --> 02:22:26.230 align:start position:0%
flow, because that's the key in this
app,<02:22:23.720><c> right?</c><02:22:23.960><c> The</c><02:22:24.080><c> ability</c><02:22:24.920><c> to</c><02:22:25.120><c> book</c><02:22:25.960><c> these</c>

02:22:26.230 --> 02:22:26.240 align:start position:0%
app, right? The ability to book these
 

02:22:26.240 --> 02:22:28.350 align:start position:0%
app, right? The ability to book these
services.<02:22:27.120><c> And</c><02:22:27.240><c> I</c><02:22:27.320><c> have</c><02:22:27.520><c> a</c><02:22:27.600><c> prompt</c><02:22:28.000><c> here</c><02:22:28.160><c> as</c>

02:22:28.350 --> 02:22:28.360 align:start position:0%
services. And I have a prompt here as
 

02:22:28.360 --> 02:22:30.030 align:start position:0%
services. And I have a prompt here as
well.<02:22:28.840><c> We're</c><02:22:28.960><c> going</c><02:22:29.080><c> to</c><02:22:29.160><c> be</c><02:22:29.280><c> using</c><02:22:29.720><c> this</c>

02:22:30.030 --> 02:22:30.040 align:start position:0%
well. We're going to be using this
 

02:22:30.040 --> 02:22:31.790 align:start position:0%
well. We're going to be using this
prompt<02:22:30.520><c> right</c><02:22:30.760><c> here.</c><02:22:31.120><c> Okay,</c><02:22:31.400><c> add</c><02:22:31.720><c> the</c>

02:22:31.790 --> 02:22:31.800 align:start position:0%
prompt right here. Okay, add the
 

02:22:31.800 --> 02:22:34.190 align:start position:0%
prompt right here. Okay, add the
customer<02:22:32.360><c> booking</c><02:22:32.760><c> flow</c><02:22:33.080><c> to</c><02:22:33.280><c> FlexHelp.</c>

02:22:34.190 --> 02:22:34.200 align:start position:0%
customer booking flow to FlexHelp.
 

02:22:34.200 --> 02:22:36.630 align:start position:0%
customer booking flow to FlexHelp.
Inspect<02:22:34.960><c> all</c><02:22:35.080><c> of</c><02:22:35.240><c> this,</c><02:22:35.920><c> and</c><02:22:36.280><c> I'm</c><02:22:36.400><c> going</c><02:22:36.520><c> to</c>

02:22:36.630 --> 02:22:36.640 align:start position:0%
Inspect all of this, and I'm going to
 

02:22:36.640 --> 02:22:38.910 align:start position:0%
Inspect all of this, and I'm going to
set<02:22:37.000><c> this</c><02:22:37.240><c> to</c><02:22:37.400><c> plan</c><02:22:37.800><c> mode.</c><02:22:38.400><c> And</c><02:22:38.600><c> let's</c><02:22:38.800><c> go</c>

02:22:38.910 --> 02:22:38.920 align:start position:0%
set this to plan mode. And let's go
 

02:22:38.920 --> 02:22:40.790 align:start position:0%
set this to plan mode. And let's go
ahead<02:22:39.160><c> and</c><02:22:39.320><c> run</c><02:22:39.520><c> that.</c><02:22:39.800><c> That's</c><02:22:40.120><c> our</c><02:22:40.320><c> plan.</c>

02:22:40.790 --> 02:22:40.800 align:start position:0%
ahead and run that. That's our plan.
 

02:22:40.800 --> 02:22:42.230 align:start position:0%
ahead and run that. That's our plan.
We're<02:22:40.960><c> going</c><02:22:41.080><c> to</c><02:22:41.160><c> be</c><02:22:41.280><c> adding</c><02:22:41.720><c> the</c><02:22:41.840><c> first</c>

02:22:42.230 --> 02:22:42.240 align:start position:0%
We're going to be adding the first
 

02:22:42.240 --> 02:22:44.670 align:start position:0%
We're going to be adding the first
customer-side<02:22:43.200><c> booking</c><02:22:43.520><c> creation</c><02:22:44.080><c> path</c><02:22:44.520><c> on</c>

02:22:44.670 --> 02:22:44.680 align:start position:0%
customer-side booking creation path on
 

02:22:44.680 --> 02:22:47.910 align:start position:0%
customer-side booking creation path on
top<02:22:45.160><c> of</c><02:22:45.280><c> the</c><02:22:45.400><c> existing</c><02:22:46.000><c> Convex</c><02:22:47.000><c> back</c><02:22:47.360><c> service</c>

02:22:47.910 --> 02:22:47.920 align:start position:0%
top of the existing Convex back service
 

02:22:47.920 --> 02:22:49.590 align:start position:0%
top of the existing Convex back service
listing.<02:22:48.440><c> And</c><02:22:48.520><c> there's</c><02:22:48.720><c> some</c><02:22:48.880><c> information</c>

02:22:49.590 --> 02:22:49.600 align:start position:0%
listing. And there's some information
 

02:22:49.600 --> 02:22:51.030 align:start position:0%
listing. And there's some information
there.<02:22:50.080><c> We're</c><02:22:50.160><c> going</c><02:22:50.320><c> to</c><02:22:50.400><c> implement</c><02:22:50.880><c> this</c>

02:22:51.030 --> 02:22:51.040 align:start position:0%
there. We're going to implement this
 

02:22:51.040 --> 02:22:53.230 align:start position:0%
there. We're going to implement this
plan.<02:22:51.640><c> All</c><02:22:51.720><c> right,</c><02:22:52.000><c> so</c><02:22:52.120><c> it</c><02:22:52.240><c> has</c><02:22:52.480><c> implemented</c>

02:22:53.230 --> 02:22:53.240 align:start position:0%
plan. All right, so it has implemented
 

02:22:53.240 --> 02:22:56.030 align:start position:0%
plan. All right, so it has implemented
the<02:22:53.320><c> customer</c><02:22:54.000><c> booking</c><02:22:54.440><c> creation</c><02:22:55.120><c> path.</c><02:22:55.880><c> And</c>

02:22:56.030 --> 02:22:56.040 align:start position:0%
the customer booking creation path. And
 

02:22:56.040 --> 02:22:58.750 align:start position:0%
the customer booking creation path. And
it<02:22:56.200><c> also</c><02:22:56.680><c> tested</c><02:22:57.240><c> it</c><02:22:57.440><c> out.</c><02:22:58.000><c> As</c><02:22:58.120><c> you</c><02:22:58.240><c> can</c><02:22:58.440><c> see,</c>

02:22:58.750 --> 02:22:58.760 align:start position:0%
it also tested it out. As you can see,
 

02:22:58.760 --> 02:23:01.510 align:start position:0%
it also tested it out. As you can see,
there's<02:22:59.080><c> also</c><02:22:59.480><c> a</c><02:22:59.640><c> booking</c><02:23:00.120><c> here</c><02:23:00.640><c> as</c><02:23:00.840><c> well.</c><02:23:01.320><c> So,</c>

02:23:01.510 --> 02:23:01.520 align:start position:0%
there's also a booking here as well. So,
 

02:23:01.520 --> 02:23:03.350 align:start position:0%
there's also a booking here as well. So,
let's<02:23:01.760><c> go</c><02:23:01.880><c> ahead</c><02:23:02.160><c> and</c><02:23:02.320><c> see</c><02:23:02.480><c> if</c><02:23:02.600><c> this</c><02:23:02.840><c> works.</c>

02:23:03.350 --> 02:23:03.360 align:start position:0%
let's go ahead and see if this works.
 

02:23:03.360 --> 02:23:05.150 align:start position:0%
let's go ahead and see if this works.
All<02:23:03.400><c> right,</c><02:23:03.560><c> so</c><02:23:03.680><c> let's</c><02:23:03.920><c> say</c><02:23:04.240><c> I</c><02:23:04.360><c> want</c><02:23:04.600><c> to</c><02:23:04.680><c> book</c>

02:23:05.150 --> 02:23:05.160 align:start position:0%
All right, so let's say I want to book
 

02:23:05.160 --> 02:23:07.550 align:start position:0%
All right, so let's say I want to book
James.<02:23:05.920><c> Click</c><02:23:06.240><c> over</c><02:23:06.440><c> here.</c><02:23:07.000><c> So,</c><02:23:07.080><c> I</c><02:23:07.200><c> can't</c>

02:23:07.550 --> 02:23:07.560 align:start position:0%
James. Click over here. So, I can't
 

02:23:07.560 --> 02:23:10.030 align:start position:0%
James. Click over here. So, I can't
quite<02:23:08.080><c> pick</c><02:23:08.440><c> anything</c><02:23:08.960><c> here,</c><02:23:09.480><c> but</c><02:23:09.640><c> I</c><02:23:09.720><c> can</c><02:23:09.880><c> do</c>

02:23:10.030 --> 02:23:10.040 align:start position:0%
quite pick anything here, but I can do
 

02:23:10.040 --> 02:23:12.630 align:start position:0%
quite pick anything here, but I can do
request<02:23:10.560><c> to</c><02:23:10.640><c> book.</c><02:23:11.200><c> Send</c><02:23:11.480><c> booking</c><02:23:11.880><c> request.</c>

02:23:12.630 --> 02:23:12.640 align:start position:0%
request to book. Send booking request.
 

02:23:12.640 --> 02:23:14.710 align:start position:0%
request to book. Send booking request.
And<02:23:12.840><c> I</c><02:23:12.880><c> need</c><02:23:13.160><c> an</c><02:23:13.320><c> address.</c><02:23:14.040><c> Okay,</c><02:23:14.280><c> so</c><02:23:14.480><c> let's</c>

02:23:14.710 --> 02:23:14.720 align:start position:0%
And I need an address. Okay, so let's
 

02:23:14.720 --> 02:23:16.590 align:start position:0%
And I need an address. Okay, so let's
say<02:23:15.040><c> do,</c><02:23:15.600><c> I</c><02:23:15.720><c> don't</c><02:23:15.880><c> know.</c><02:23:16.280><c> We</c><02:23:16.360><c> need</c>

02:23:16.590 --> 02:23:16.600 align:start position:0%
say do, I don't know. We need
 

02:23:16.600 --> 02:23:18.550 align:start position:0%
say do, I don't know. We need
auto-complete<02:23:17.280><c> here</c><02:23:17.440><c> as</c><02:23:17.600><c> well.</c><02:23:18.120><c> Fill</c><02:23:18.360><c> in</c>

02:23:18.550 --> 02:23:18.560 align:start position:0%
auto-complete here as well. Fill in
 

02:23:18.560 --> 02:23:21.870 align:start position:0%
auto-complete here as well. Fill in
every<02:23:19.000><c> field.</c><02:23:19.720><c> Okay.</c><02:23:20.040><c> Okay,</c><02:23:20.160><c> so</c><02:23:20.360><c> task,</c><02:23:21.000><c> task.</c>

02:23:21.870 --> 02:23:21.880 align:start position:0%
every field. Okay. Okay, so task, task.
 

02:23:21.880 --> 02:23:24.390 align:start position:0%
every field. Okay. Okay, so task, task.
Okay,<02:23:22.080><c> this</c><02:23:22.440><c> I</c><02:23:22.560><c> cannot</c><02:23:23.040><c> fill</c><02:23:23.640><c> every</c><02:23:24.000><c> field.</c>

02:23:24.390 --> 02:23:24.400 align:start position:0%
Okay, this I cannot fill every field.
 

02:23:24.400 --> 02:23:28.110 align:start position:0%
Okay, this I cannot fill every field.
Okay,<02:23:24.960><c> customer,</c><02:23:25.920><c> schedule,</c><02:23:26.920><c> say</c><02:23:27.080><c> 10:00</c><02:23:27.440><c> a.m.</c>

02:23:28.110 --> 02:23:28.120 align:start position:0%
Okay, customer, schedule, say 10:00 a.m.
 

02:23:28.120 --> 02:23:30.150 align:start position:0%
Okay, customer, schedule, say 10:00 a.m.
And<02:23:28.240><c> this</c><02:23:28.480><c> obviously</c><02:23:29.040><c> needs</c><02:23:29.360><c> to</c><02:23:29.520><c> be,</c><02:23:30.080><c> you</c>

02:23:30.150 --> 02:23:30.160 align:start position:0%
And this obviously needs to be, you
 

02:23:30.160 --> 02:23:32.590 align:start position:0%
And this obviously needs to be, you
know,<02:23:30.280><c> like</c><02:23:30.640><c> a</c><02:23:30.720><c> calendar</c><02:23:31.680><c> picker,</c><02:23:32.120><c> that</c><02:23:32.360><c> kind</c>

02:23:32.590 --> 02:23:32.600 align:start position:0%
know, like a calendar picker, that kind
 

02:23:32.600 --> 02:23:34.350 align:start position:0%
know, like a calendar picker, that kind
of<02:23:32.680><c> thing.</c><02:23:32.960><c> Okay,</c><02:23:33.480><c> and</c><02:23:33.640><c> now</c><02:23:33.880><c> we</c><02:23:34.040><c> have</c><02:23:34.280><c> the</c>

02:23:34.350 --> 02:23:34.360 align:start position:0%
of thing. Okay, and now we have the
 

02:23:34.360 --> 02:23:35.910 align:start position:0%
of thing. Okay, and now we have the
booking<02:23:34.720><c> request.</c><02:23:35.040><c> And</c><02:23:35.120><c> I</c><02:23:35.160><c> can</c><02:23:35.320><c> click</c><02:23:35.560><c> on</c><02:23:35.680><c> view</c>

02:23:35.910 --> 02:23:35.920 align:start position:0%
booking request. And I can click on view
 

02:23:35.920 --> 02:23:38.510 align:start position:0%
booking request. And I can click on view
bookings,<02:23:36.600><c> and</c><02:23:36.800><c> I</c><02:23:36.880><c> see</c><02:23:37.200><c> my</c><02:23:37.480><c> bookings.</c><02:23:38.160><c> Okay,</c>

02:23:38.510 --> 02:23:38.520 align:start position:0%
bookings, and I see my bookings. Okay,
 

02:23:38.520 --> 02:23:41.710 align:start position:0%
bookings, and I see my bookings. Okay,
so<02:23:38.720><c> this</c><02:23:39.080><c> was</c><02:23:39.360><c> done</c><02:23:39.760><c> by</c><02:23:40.080><c> the</c><02:23:40.720><c> Codex</c><02:23:41.240><c> while</c><02:23:41.560><c> it</c>

02:23:41.710 --> 02:23:41.720 align:start position:0%
so this was done by the Codex while it
 

02:23:41.720 --> 02:23:44.150 align:start position:0%
so this was done by the Codex while it
was<02:23:41.920><c> testing.</c><02:23:42.560><c> So,</c><02:23:42.760><c> now</c><02:23:43.200><c> if</c><02:23:43.320><c> we</c><02:23:43.440><c> jump</c><02:23:43.800><c> into</c>

02:23:44.150 --> 02:23:44.160 align:start position:0%
was testing. So, now if we jump into
 

02:23:44.160 --> 02:23:46.910 align:start position:0%
was testing. So, now if we jump into
Codex,<02:23:44.920><c> we</c><02:23:45.080><c> should</c><02:23:45.400><c> see</c><02:23:45.880><c> on</c><02:23:46.080><c> my</c><02:23:46.360><c> local</c>

02:23:46.910 --> 02:23:46.920 align:start position:0%
Codex, we should see on my local
 

02:23:46.920 --> 02:23:49.230 align:start position:0%
Codex, we should see on my local
instance<02:23:47.480><c> here,</c><02:23:47.760><c> we</c><02:23:47.920><c> should</c><02:23:48.160><c> see</c><02:23:48.440><c> bookings.</c>

02:23:49.230 --> 02:23:49.240 align:start position:0%
instance here, we should see bookings.
 

02:23:49.240 --> 02:23:51.390 align:start position:0%
instance here, we should see bookings.
And<02:23:49.360><c> we</c><02:23:49.480><c> see</c><02:23:49.680><c> two</c><02:23:49.920><c> bookings,</c><02:23:50.720><c> okay?</c><02:23:51.160><c> Right</c>

02:23:51.390 --> 02:23:51.400 align:start position:0%
And we see two bookings, okay? Right
 

02:23:51.400 --> 02:23:53.310 align:start position:0%
And we see two bookings, okay? Right
here.<02:23:51.600><c> So,</c><02:23:51.760><c> the</c><02:23:51.920><c> booking</c><02:23:52.280><c> flow</c><02:23:52.800><c> seems</c><02:23:53.160><c> to</c>

02:23:53.310 --> 02:23:53.320 align:start position:0%
here. So, the booking flow seems to
 

02:23:53.320 --> 02:23:55.310 align:start position:0%
here. So, the booking flow seems to
work.<02:23:53.960><c> There</c><02:23:54.080><c> are</c><02:23:54.120><c> some</c><02:23:54.440><c> rough</c><02:23:54.720><c> edges</c><02:23:55.120><c> here</c>

02:23:55.310 --> 02:23:55.320 align:start position:0%
work. There are some rough edges here
 

02:23:55.320 --> 02:23:57.030 align:start position:0%
work. There are some rough edges here
and<02:23:55.440><c> there</c><02:23:55.600><c> that</c><02:23:55.800><c> we</c><02:23:55.880><c> need</c><02:23:56.120><c> to</c><02:23:56.240><c> fix,</c><02:23:56.760><c> but</c><02:23:56.920><c> for</c>

02:23:57.030 --> 02:23:57.040 align:start position:0%
and there that we need to fix, but for
 

02:23:57.040 --> 02:23:59.470 align:start position:0%
and there that we need to fix, but for
the<02:23:57.160><c> most</c><02:23:57.600><c> part,</c><02:23:58.200><c> it</c><02:23:58.280><c> is</c><02:23:58.440><c> coming</c><02:23:58.880><c> together.</c>

02:23:59.470 --> 02:23:59.480 align:start position:0%
the most part, it is coming together.
 

02:23:59.480 --> 02:24:01.710 align:start position:0%
the most part, it is coming together.
Now,<02:23:59.640><c> once</c><02:23:59.880><c> customers</c><02:24:00.440><c> can</c><02:24:00.640><c> create</c><02:24:01.040><c> bookings,</c>

02:24:01.710 --> 02:24:01.720 align:start position:0%
Now, once customers can create bookings,
 

02:24:01.720 --> 02:24:04.230 align:start position:0%
Now, once customers can create bookings,
helpers<02:24:02.320><c> need</c><02:24:02.520><c> a</c><02:24:02.640><c> place</c><02:24:03.120><c> to</c><02:24:03.280><c> see</c><02:24:03.600><c> and</c><02:24:03.760><c> manage</c>

02:24:04.230 --> 02:24:04.240 align:start position:0%
helpers need a place to see and manage
 

02:24:04.240 --> 02:24:06.510 align:start position:0%
helpers need a place to see and manage
them.<02:24:04.960><c> The</c><02:24:05.080><c> helper</c><02:24:05.400><c> dashboard</c><02:24:06.000><c> should</c><02:24:06.240><c> show</c>

02:24:06.510 --> 02:24:06.520 align:start position:0%
them. The helper dashboard should show
 

02:24:06.520 --> 02:24:09.230 align:start position:0%
them. The helper dashboard should show
incoming<02:24:07.040><c> requests</c><02:24:07.760><c> and</c><02:24:07.960><c> make</c><02:24:08.280><c> it</c><02:24:08.480><c> obvious</c>

02:24:09.230 --> 02:24:09.240 align:start position:0%
incoming requests and make it obvious
 

02:24:09.240 --> 02:24:11.830 align:start position:0%
incoming requests and make it obvious
what<02:24:09.560><c> action</c><02:24:10.040><c> the</c><02:24:10.160><c> helper</c><02:24:10.560><c> can</c><02:24:10.800><c> take</c><02:24:11.240><c> next.</c><02:24:11.720><c> At</c>

02:24:11.830 --> 02:24:11.840 align:start position:0%
what action the helper can take next. At
 

02:24:11.840 --> 02:24:13.630 align:start position:0%
what action the helper can take next. At
the<02:24:11.960><c> simplest</c><02:24:12.520><c> level,</c><02:24:12.880><c> the</c><02:24:12.960><c> helper</c><02:24:13.320><c> should</c><02:24:13.520><c> be</c>

02:24:13.630 --> 02:24:13.640 align:start position:0%
the simplest level, the helper should be
 

02:24:13.640 --> 02:24:16.510 align:start position:0%
the simplest level, the helper should be
able<02:24:13.880><c> to</c><02:24:14.040><c> accept</c><02:24:14.720><c> or</c><02:24:14.880><c> decline</c><02:24:15.680><c> a</c><02:24:15.760><c> request.</c>

02:24:16.510 --> 02:24:16.520 align:start position:0%
able to accept or decline a request.
 

02:24:16.520 --> 02:24:18.470 align:start position:0%
able to accept or decline a request.
After<02:24:16.800><c> accepting,</c><02:24:17.640><c> the</c><02:24:17.760><c> helper</c><02:24:18.160><c> should</c><02:24:18.360><c> be</c>

02:24:18.470 --> 02:24:18.480 align:start position:0%
After accepting, the helper should be
 

02:24:18.480 --> 02:24:21.110 align:start position:0%
After accepting, the helper should be
able<02:24:18.760><c> to</c><02:24:18.920><c> move</c><02:24:19.320><c> the</c><02:24:19.440><c> job</c><02:24:19.840><c> into</c><02:24:20.120><c> progress</c><02:24:20.960><c> and</c>

02:24:21.110 --> 02:24:21.120 align:start position:0%
able to move the job into progress and
 

02:24:21.120 --> 02:24:23.830 align:start position:0%
able to move the job into progress and
then<02:24:21.360><c> mark</c><02:24:21.680><c> it</c><02:24:22.080><c> completed.</c><02:24:23.000><c> Those</c><02:24:23.320><c> status</c>

02:24:23.830 --> 02:24:23.840 align:start position:0%
then mark it completed. Those status
 

02:24:23.840 --> 02:24:26.670 align:start position:0%
then mark it completed. Those status
changes<02:24:24.440><c> are</c><02:24:24.680><c> what</c><02:24:25.040><c> turn</c><02:24:25.360><c> the</c><02:24:25.560><c> app</c><02:24:26.040><c> into</c><02:24:26.520><c> a</c>

02:24:26.670 --> 02:24:26.680 align:start position:0%
changes are what turn the app into a
 

02:24:26.680 --> 02:24:28.950 align:start position:0%
changes are what turn the app into a
workflow.<02:24:27.480><c> This</c><02:24:27.680><c> is</c><02:24:27.840><c> also</c><02:24:28.160><c> a</c><02:24:28.240><c> good</c><02:24:28.480><c> place</c><02:24:28.800><c> to</c>

02:24:28.950 --> 02:24:28.960 align:start position:0%
workflow. This is also a good place to
 

02:24:28.960 --> 02:24:31.510 align:start position:0%
workflow. This is also a good place to
show<02:24:29.360><c> the</c><02:24:29.520><c> power</c><02:24:30.040><c> of</c><02:24:30.280><c> live</c><02:24:30.640><c> data.</c><02:24:31.240><c> When</c><02:24:31.440><c> a</c>

02:24:31.510 --> 02:24:31.520 align:start position:0%
show the power of live data. When a
 

02:24:31.520 --> 02:24:34.630 align:start position:0%
show the power of live data. When a
status<02:24:32.160><c> changes,</c><02:24:32.960><c> the</c><02:24:33.080><c> UI</c><02:24:33.520><c> should</c><02:24:33.880><c> update</c><02:24:34.440><c> and</c>

02:24:34.630 --> 02:24:34.640 align:start position:0%
status changes, the UI should update and
 

02:24:34.640 --> 02:24:37.150 align:start position:0%
status changes, the UI should update and
the<02:24:34.680><c> Convex</c><02:24:35.320><c> row</c><02:24:35.600><c> should</c><02:24:35.880><c> change.</c><02:24:36.560><c> That</c><02:24:36.840><c> gives</c>

02:24:37.150 --> 02:24:37.160 align:start position:0%
the Convex row should change. That gives
 

02:24:37.160 --> 02:24:39.950 align:start position:0%
the Convex row should change. That gives
us<02:24:37.440><c> a</c><02:24:37.640><c> real</c><02:24:38.120><c> end-to-end</c><02:24:38.880><c> marketplace</c><02:24:39.520><c> loop.</c>

02:24:39.950 --> 02:24:39.960 align:start position:0%
us a real end-to-end marketplace loop.
 

02:24:39.960 --> 02:24:42.510 align:start position:0%
us a real end-to-end marketplace loop.
Customer<02:24:40.480><c> request,</c><02:24:41.200><c> helper</c><02:24:41.600><c> action,</c><02:24:42.280><c> back</c>

02:24:42.510 --> 02:24:42.520 align:start position:0%
Customer request, helper action, back
 

02:24:42.520 --> 02:24:45.070 align:start position:0%
Customer request, helper action, back
end<02:24:42.680><c> state,</c><02:24:43.280><c> and</c><02:24:43.480><c> UI</c><02:24:43.800><c> update.</c><02:24:44.400><c> And</c><02:24:44.760><c> this</c><02:24:44.960><c> is</c>

02:24:45.070 --> 02:24:45.080 align:start position:0%
end state, and UI update. And this is
 

02:24:45.080 --> 02:24:46.790 align:start position:0%
end state, and UI update. And this is
the<02:24:45.200><c> prompt</c><02:24:45.520><c> that</c><02:24:45.680><c> we're</c><02:24:45.840><c> going</c><02:24:46.000><c> to</c><02:24:46.040><c> be</c><02:24:46.200><c> using.</c>

02:24:46.790 --> 02:24:46.800 align:start position:0%
the prompt that we're going to be using.
 

02:24:46.800 --> 02:24:49.030 align:start position:0%
the prompt that we're going to be using.
Add<02:24:47.120><c> the</c><02:24:47.240><c> helper</c><02:24:47.600><c> dashboard</c><02:24:48.280><c> workflow</c><02:24:48.760><c> for</c>

02:24:49.030 --> 02:24:49.040 align:start position:0%
Add the helper dashboard workflow for
 

02:24:49.040 --> 02:24:51.350 align:start position:0%
Add the helper dashboard workflow for
viewing<02:24:49.600><c> booking</c><02:24:49.960><c> requests</c><02:24:50.520><c> and</c><02:24:50.720><c> updating</c>

02:24:51.350 --> 02:24:51.360 align:start position:0%
viewing booking requests and updating
 

02:24:51.360 --> 02:24:53.030 align:start position:0%
viewing booking requests and updating
booking<02:24:51.760><c> status.</c><02:24:52.480><c> Okay,</c><02:24:52.720><c> I'm</c><02:24:52.840><c> going</c><02:24:52.960><c> to</c>

02:24:53.030 --> 02:24:53.040 align:start position:0%
booking status. Okay, I'm going to
 

02:24:53.040 --> 02:24:55.750 align:start position:0%
booking status. Okay, I'm going to
switch<02:24:53.480><c> into</c><02:24:54.160><c> plan</c><02:24:54.520><c> mode</c><02:24:55.080><c> and</c><02:24:55.400><c> we're</c><02:24:55.560><c> going</c><02:24:55.680><c> to</c>

02:24:55.750 --> 02:24:55.760 align:start position:0%
switch into plan mode and we're going to
 

02:24:55.760 --> 02:24:58.230 align:start position:0%
switch into plan mode and we're going to
go<02:24:55.920><c> ahead</c><02:24:56.280><c> and</c><02:24:56.480><c> send</c><02:24:56.800><c> this.</c><02:24:57.240><c> So,</c><02:24:57.400><c> it's</c><02:24:57.640><c> asking</c>

02:24:58.230 --> 02:24:58.240 align:start position:0%
go ahead and send this. So, it's asking
 

02:24:58.240 --> 02:25:00.590 align:start position:0%
go ahead and send this. So, it's asking
me<02:24:58.520><c> that</c><02:24:59.000><c> how</c><02:24:59.240><c> should</c><02:24:59.520><c> the</c><02:24:59.600><c> helper</c><02:25:00.000><c> workflow</c>

02:25:00.590 --> 02:25:00.600 align:start position:0%
me that how should the helper workflow
 

02:25:00.600 --> 02:25:02.710 align:start position:0%
me that how should the helper workflow
handle<02:25:01.080><c> the</c><02:25:01.160><c> existing</c><02:25:01.720><c> requested</c><02:25:02.400><c> booking</c>

02:25:02.710 --> 02:25:02.720 align:start position:0%
handle the existing requested booking
 

02:25:02.720 --> 02:25:04.790 align:start position:0%
handle the existing requested booking
status?<02:25:03.360><c> Keep</c><02:25:03.640><c> requested,</c><02:25:04.480><c> this</c><02:25:04.680><c> is</c>

02:25:04.790 --> 02:25:04.800 align:start position:0%
status? Keep requested, this is
 

02:25:04.800 --> 02:25:06.870 align:start position:0%
status? Keep requested, this is
recommended.<02:25:05.640><c> Preserve</c><02:25:06.000><c> existing</c><02:25:06.480><c> created</c>

02:25:06.870 --> 02:25:06.880 align:start position:0%
recommended. Preserve existing created
 

02:25:06.880 --> 02:25:09.390 align:start position:0%
recommended. Preserve existing created
bookings,<02:25:07.320><c> show</c><02:25:07.640><c> it</c><02:25:07.840><c> as</c><02:25:08.200><c> pending</c><02:25:08.560><c> in</c><02:25:08.680><c> the</c><02:25:08.760><c> UI,</c>

02:25:09.390 --> 02:25:09.400 align:start position:0%
bookings, show it as pending in the UI,
 

02:25:09.400 --> 02:25:11.470 align:start position:0%
bookings, show it as pending in the UI,
or<02:25:09.640><c> rename</c><02:25:10.040><c> to</c><02:25:10.200><c> pending.</c><02:25:10.600><c> Change</c><02:25:11.000><c> the</c><02:25:11.120><c> stored</c>

02:25:11.470 --> 02:25:11.480 align:start position:0%
or rename to pending. Change the stored
 

02:25:11.480 --> 02:25:13.390 align:start position:0%
or rename to pending. Change the stored
initial<02:25:11.840><c> status</c><02:25:12.240><c> to</c><02:25:12.400><c> pending</c><02:25:12.880><c> and</c><02:25:13.000><c> require</c><02:25:13.360><c> a</c>

02:25:13.390 --> 02:25:13.400 align:start position:0%
initial status to pending and require a
 

02:25:13.400 --> 02:25:14.990 align:start position:0%
initial status to pending and require a
small<02:25:13.720><c> data.</c><02:25:14.120><c> So,</c><02:25:14.400><c> we</c><02:25:14.520><c> don't</c><02:25:14.680><c> want</c><02:25:14.880><c> any</c>

02:25:14.990 --> 02:25:15.000 align:start position:0%
small data. So, we don't want any
 

02:25:15.000 --> 02:25:17.550 align:start position:0%
small data. So, we don't want any
migration.<02:25:15.800><c> We</c><02:25:15.920><c> just</c><02:25:16.240><c> want</c><02:25:16.560><c> to</c><02:25:17.000><c> go</c><02:25:17.240><c> with</c><02:25:17.400><c> the</c>

02:25:17.550 --> 02:25:17.560 align:start position:0%
migration. We just want to go with the
 

02:25:17.560 --> 02:25:19.750 align:start position:0%
migration. We just want to go with the
easiest<02:25:18.120><c> option.</c><02:25:18.720><c> And</c><02:25:18.880><c> then,</c><02:25:19.080><c> how</c><02:25:19.320><c> should</c><02:25:19.680><c> the</c>

02:25:19.750 --> 02:25:19.760 align:start position:0%
easiest option. And then, how should the
 

02:25:19.760 --> 02:25:22.590 align:start position:0%
easiest option. And then, how should the
helper<02:25:20.400><c> request</c><02:25:21.040><c> visibility</c><02:25:21.720><c> work</c><02:25:22.160><c> before</c>

02:25:22.590 --> 02:25:22.600 align:start position:0%
helper request visibility work before
 

02:25:22.600 --> 02:25:25.470 align:start position:0%
helper request visibility work before
auth<02:25:22.880><c> is</c><02:25:23.200><c> added?</c><02:25:23.760><c> Helper</c><02:25:24.200><c> selected.</c><02:25:25.040><c> This</c><02:25:25.240><c> is</c>

02:25:25.470 --> 02:25:25.480 align:start position:0%
auth is added? Helper selected. This is
 

02:25:25.480 --> 02:25:27.470 align:start position:0%
auth is added? Helper selected. This is
add<02:25:25.840><c> a</c><02:25:25.960><c> simple</c><02:25:26.320><c> static</c><02:25:26.680><c> helper</c><02:25:27.000><c> switcher</c>

02:25:27.470 --> 02:25:27.480 align:start position:0%
add a simple static helper switcher
 

02:25:27.480 --> 02:25:29.910 align:start position:0%
add a simple static helper switcher
filter,<02:25:27.960><c> so</c><02:25:28.160><c> each</c><02:25:28.520><c> helper</c><02:25:29.000><c> sees</c><02:25:29.320><c> bookings</c><02:25:29.800><c> for</c>

02:25:29.910 --> 02:25:29.920 align:start position:0%
filter, so each helper sees bookings for
 

02:25:29.920 --> 02:25:32.310 align:start position:0%
filter, so each helper sees bookings for
their<02:25:30.240><c> Convex</c><02:25:30.840><c> helper</c><02:25:31.200><c> profile</c><02:25:31.760><c> only.</c>

02:25:32.310 --> 02:25:32.320 align:start position:0%
their Convex helper profile only.
 

02:25:32.320 --> 02:25:33.910 align:start position:0%
their Convex helper profile only.
Simplest<02:25:32.760><c> UI</c><02:25:32.960><c> and</c><02:25:33.080><c> back</c><02:25:33.360><c> end,</c><02:25:33.480><c> but</c><02:25:33.680><c> less</c>

02:25:33.910 --> 02:25:33.920 align:start position:0%
Simplest UI and back end, but less
 

02:25:33.920 --> 02:25:36.790 align:start position:0%
Simplest UI and back end, but less
realistic.<02:25:34.600><c> So,</c><02:25:34.760><c> we</c><02:25:34.960><c> want</c><02:25:35.800><c> helper</c><02:25:36.160><c> selected.</c>

02:25:36.790 --> 02:25:36.800 align:start position:0%
realistic. So, we want helper selected.
 

02:25:36.800 --> 02:25:38.350 align:start position:0%
realistic. So, we want helper selected.
Okay,<02:25:37.080><c> we're</c><02:25:37.240><c> going</c><02:25:37.360><c> to</c><02:25:37.480><c> select</c><02:25:37.920><c> that.</c><02:25:38.320><c> All</c>

02:25:38.350 --> 02:25:38.360 align:start position:0%
Okay, we're going to select that. All
 

02:25:38.360 --> 02:25:40.830 align:start position:0%
Okay, we're going to select that. All
right,<02:25:38.520><c> there's</c><02:25:38.840><c> the</c><02:25:38.960><c> plan.</c><02:25:39.680><c> Add</c><02:25:40.000><c> the</c><02:25:40.120><c> first</c>

02:25:40.830 --> 02:25:40.840 align:start position:0%
right, there's the plan. Add the first
 

02:25:40.840 --> 02:25:42.630 align:start position:0%
right, there's the plan. Add the first
helper-facing<02:25:41.880><c> workflow</c><02:25:42.240><c> on</c><02:25:42.320><c> top</c><02:25:42.560><c> of</c>

02:25:42.630 --> 02:25:42.640 align:start position:0%
helper-facing workflow on top of
 

02:25:42.640 --> 02:25:44.750 align:start position:0%
helper-facing workflow on top of
existing<02:25:43.120><c> convex</c><02:25:43.680><c> booking</c><02:25:44.040><c> creation</c><02:25:44.480><c> pack.</c>

02:25:44.750 --> 02:25:44.760 align:start position:0%
existing convex booking creation pack.
 

02:25:44.760 --> 02:25:46.550 align:start position:0%
existing convex booking creation pack.
We're<02:25:44.880><c> going</c><02:25:45.000><c> to</c><02:25:45.080><c> submit</c><02:25:45.520><c> this.</c><02:25:46.040><c> Here</c><02:25:46.240><c> is</c><02:25:46.400><c> our</c>

02:25:46.550 --> 02:25:46.560 align:start position:0%
We're going to submit this. Here is our
 

02:25:46.560 --> 02:25:48.190 align:start position:0%
We're going to submit this. Here is our
progress.<02:25:47.440><c> All</c><02:25:47.520><c> right,</c><02:25:47.760><c> so</c><02:25:47.880><c> he</c><02:25:47.960><c> just</c>

02:25:48.190 --> 02:25:48.200 align:start position:0%
progress. All right, so he just
 

02:25:48.200 --> 02:25:50.950 align:start position:0%
progress. All right, so he just
implemented<02:25:48.960><c> the</c><02:25:49.080><c> helper</c><02:25:49.720><c> booking</c><02:25:50.240><c> status</c>

02:25:50.950 --> 02:25:50.960 align:start position:0%
implemented the helper booking status
 

02:25:50.960 --> 02:25:52.350 align:start position:0%
implemented the helper booking status
workflow.<02:25:51.480><c> And</c><02:25:51.560><c> these</c><02:25:51.680><c> are</c><02:25:51.800><c> the</c><02:25:51.880><c> files</c><02:25:52.200><c> that</c>

02:25:52.350 --> 02:25:52.360 align:start position:0%
workflow. And these are the files that
 

02:25:52.360 --> 02:25:54.070 align:start position:0%
workflow. And these are the files that
changed.<02:25:53.080><c> This</c><02:25:53.240><c> is</c><02:25:53.360><c> what</c><02:25:53.520><c> it</c><02:25:53.600><c> did.</c><02:25:53.800><c> So</c><02:25:53.920><c> it</c>

02:25:54.070 --> 02:25:54.080 align:start position:0%
changed. This is what it did. So it
 

02:25:54.080 --> 02:25:56.670 align:start position:0%
changed. This is what it did. So it
updated<02:25:54.560><c> it</c><02:25:54.680><c> through</c><02:25:55.000><c> pending,</c><02:25:55.720><c> accepted,</c><02:25:56.520><c> in</c>

02:25:56.670 --> 02:25:56.680 align:start position:0%
updated it through pending, accepted, in
 

02:25:56.680 --> 02:25:59.470 align:start position:0%
updated it through pending, accepted, in
progress,<02:25:57.160><c> completed.</c><02:25:57.800><c> It</c><02:25:57.960><c> viewed</c><02:25:58.480><c> it</c><02:25:59.120><c> under</c>

02:25:59.470 --> 02:25:59.480 align:start position:0%
progress, completed. It viewed it under
 

02:25:59.480 --> 02:26:02.150 align:start position:0%
progress, completed. It viewed it under
helper<02:25:59.960><c> James</c><02:26:00.480><c> created</c><02:26:00.920><c> booking</c><02:26:01.600><c> this.</c><02:26:01.920><c> So</c><02:26:02.040><c> it</c>

02:26:02.150 --> 02:26:02.160 align:start position:0%
helper James created booking this. So it
 

02:26:02.160 --> 02:26:03.710 align:start position:0%
helper James created booking this. So it
did<02:26:02.360><c> all</c><02:26:02.480><c> that.</c><02:26:02.720><c> It</c><02:26:02.800><c> did</c><02:26:02.960><c> some</c><02:26:03.160><c> tests.</c><02:26:03.520><c> Let's</c>

02:26:03.710 --> 02:26:03.720 align:start position:0%
did all that. It did some tests. Let's
 

02:26:03.720 --> 02:26:05.590 align:start position:0%
did all that. It did some tests. Let's
go<02:26:03.840><c> ahead</c><02:26:04.000><c> and</c><02:26:04.120><c> open</c><02:26:04.440><c> it.</c><02:26:04.720><c> And</c><02:26:05.040><c> let's</c><02:26:05.320><c> see</c><02:26:05.440><c> what</c>

02:26:05.590 --> 02:26:05.600 align:start position:0%
go ahead and open it. And let's see what
 

02:26:05.600 --> 02:26:08.390 align:start position:0%
go ahead and open it. And let's see what
we<02:26:05.720><c> can</c><02:26:05.920><c> do.</c><02:26:06.200><c> So</c><02:26:06.800><c> this</c><02:26:07.040><c> is</c><02:26:07.160><c> the</c><02:26:07.480><c> helper</c><02:26:07.960><c> booking</c>

02:26:08.390 --> 02:26:08.400 align:start position:0%
we can do. So this is the helper booking
 

02:26:08.400 --> 02:26:11.030 align:start position:0%
we can do. So this is the helper booking
status.<02:26:09.200><c> I'm</c><02:26:09.320><c> going</c><02:26:09.560><c> to</c><02:26:09.680><c> helper</c><02:26:10.080><c> dashboard</c>

02:26:11.030 --> 02:26:11.040 align:start position:0%
status. I'm going to helper dashboard
 

02:26:11.040 --> 02:26:13.230 align:start position:0%
status. I'm going to helper dashboard
have<02:26:11.320><c> my</c><02:26:11.640><c> incoming</c><02:26:12.160><c> requests,</c><02:26:12.760><c> right?</c><02:26:13.040><c> So</c><02:26:13.160><c> I</c>

02:26:13.230 --> 02:26:13.240 align:start position:0%
have my incoming requests, right? So I
 

02:26:13.240 --> 02:26:15.710 align:start position:0%
have my incoming requests, right? So I
can<02:26:13.440><c> accept</c><02:26:14.000><c> it,</c><02:26:14.200><c> I</c><02:26:14.240><c> can</c><02:26:14.480><c> start</c><02:26:15.000><c> it,</c><02:26:15.320><c> and</c><02:26:15.440><c> I</c><02:26:15.520><c> can</c>

02:26:15.710 --> 02:26:15.720 align:start position:0%
can accept it, I can start it, and I can
 

02:26:15.720 --> 02:26:18.510 align:start position:0%
can accept it, I can start it, and I can
complete<02:26:16.200><c> it.</c><02:26:16.600><c> Okay?</c><02:26:17.000><c> So</c><02:26:17.280><c> that's</c><02:26:17.760><c> the</c><02:26:17.880><c> piece</c>

02:26:18.510 --> 02:26:18.520 align:start position:0%
complete it. Okay? So that's the piece
 

02:26:18.520 --> 02:26:20.550 align:start position:0%
complete it. Okay? So that's the piece
that<02:26:18.720><c> is</c><02:26:18.880><c> working.</c><02:26:19.200><c> I</c><02:26:19.240><c> can</c><02:26:19.400><c> also</c><02:26:19.720><c> cancel</c><02:26:20.280><c> it.</c>

02:26:20.550 --> 02:26:20.560 align:start position:0%
that is working. I can also cancel it.
 

02:26:20.560 --> 02:26:22.950 align:start position:0%
that is working. I can also cancel it.
And<02:26:20.640><c> that</c><02:26:20.880><c> is</c><02:26:21.040><c> canceled.</c><02:26:21.760><c> And</c><02:26:22.200><c> that's</c><02:26:22.480><c> it.</c><02:26:22.840><c> I</c>

02:26:22.950 --> 02:26:22.960 align:start position:0%
And that is canceled. And that's it. I
 

02:26:22.960 --> 02:26:24.630 align:start position:0%
And that is canceled. And that's it. I
can't<02:26:23.280><c> come</c><02:26:23.480><c> back</c><02:26:23.800><c> to</c><02:26:23.960><c> it.</c><02:26:24.080><c> I</c><02:26:24.160><c> can't</c><02:26:24.480><c> do</c>

02:26:24.630 --> 02:26:24.640 align:start position:0%
can't come back to it. I can't do
 

02:26:24.640 --> 02:26:26.710 align:start position:0%
can't come back to it. I can't do
anything.<02:26:25.280><c> Here</c><02:26:25.520><c> we</c><02:26:25.640><c> have</c><02:26:25.880><c> recent</c><02:26:26.200><c> activity,</c>

02:26:26.710 --> 02:26:26.720 align:start position:0%
anything. Here we have recent activity,
 

02:26:26.720 --> 02:26:28.550 align:start position:0%
anything. Here we have recent activity,
right?<02:26:27.000><c> Completed,</c><02:26:27.480><c> completed,</c><02:26:27.880><c> canceled.</c>

02:26:28.550 --> 02:26:28.560 align:start position:0%
right? Completed, completed, canceled.
 

02:26:28.560 --> 02:26:31.710 align:start position:0%
right? Completed, completed, canceled.
And<02:26:29.000><c> this</c><02:26:29.200><c> is</c><02:26:29.320><c> the</c><02:26:29.400><c> one</c><02:26:29.560><c> that</c><02:26:29.720><c> did</c><02:26:29.960><c> 148</c><02:26:30.640><c> 116.</c>

02:26:31.710 --> 02:26:31.720 align:start position:0%
And this is the one that did 148 116.
 

02:26:31.720 --> 02:26:33.950 align:start position:0%
And this is the one that did 148 116.
This<02:26:31.880><c> is</c><02:26:32.000><c> the</c><02:26:32.120><c> one</c><02:26:32.360><c> that</c><02:26:32.640><c> it</c><02:26:32.880><c> has</c><02:26:33.160><c> completed.</c>

02:26:33.950 --> 02:26:33.960 align:start position:0%
This is the one that it has completed.
 

02:26:33.960 --> 02:26:36.070 align:start position:0%
This is the one that it has completed.
This<02:26:34.200><c> seems</c><02:26:34.600><c> to</c><02:26:34.760><c> work,</c><02:26:35.280><c> right?</c><02:26:35.520><c> And</c><02:26:35.640><c> we</c><02:26:35.760><c> have</c>

02:26:36.070 --> 02:26:36.080 align:start position:0%
This seems to work, right? And we have
 

02:26:36.080 --> 02:26:38.510 align:start position:0%
This seems to work, right? And we have
canceled,<02:26:36.880><c> we</c><02:26:37.000><c> have</c><02:26:37.360><c> completed.</c><02:26:38.160><c> Even</c><02:26:38.440><c> a</c>

02:26:38.510 --> 02:26:38.520 align:start position:0%
canceled, we have completed. Even a
 

02:26:38.520 --> 02:26:40.390 align:start position:0%
canceled, we have completed. Even a
simple<02:26:39.160><c> marketplace</c><02:26:40.040><c> has</c><02:26:40.080><c> different</c>

02:26:40.390 --> 02:26:40.400 align:start position:0%
simple marketplace has different
 

02:26:40.400 --> 02:26:42.350 align:start position:0%
simple marketplace has different
responsibilities.<02:26:41.440><c> Customers</c><02:26:42.000><c> create</c>

02:26:42.350 --> 02:26:42.360 align:start position:0%
responsibilities. Customers create
 

02:26:42.360 --> 02:26:44.230 align:start position:0%
responsibilities. Customers create
booking<02:26:42.720><c> requests</c><02:26:43.480><c> and</c><02:26:43.640><c> view</c><02:26:43.840><c> their</c><02:26:44.040><c> own</c>

02:26:44.230 --> 02:26:44.240 align:start position:0%
booking requests and view their own
 

02:26:44.240 --> 02:26:46.630 align:start position:0%
booking requests and view their own
bookings.<02:26:44.960><c> Helpers</c><02:26:45.440><c> manage</c><02:26:45.880><c> requests</c><02:26:46.480><c> that</c>

02:26:46.630 --> 02:26:46.640 align:start position:0%
bookings. Helpers manage requests that
 

02:26:46.640 --> 02:26:48.990 align:start position:0%
bookings. Helpers manage requests that
belong<02:26:47.040><c> to</c><02:26:47.200><c> them</c><02:26:47.480><c> or</c><02:26:47.720><c> are</c><02:26:47.880><c> available</c><02:26:48.480><c> to</c><02:26:48.600><c> them.</c>

02:26:48.990 --> 02:26:49.000 align:start position:0%
belong to them or are available to them.
 

02:26:49.000 --> 02:26:51.430 align:start position:0%
belong to them or are available to them.
Admin<02:26:49.760><c> or</c><02:26:49.920><c> system</c><02:26:50.360><c> logic</c><02:26:50.840><c> may</c><02:26:51.040><c> handle</c>

02:26:51.430 --> 02:26:51.440 align:start position:0%
Admin or system logic may handle
 

02:26:51.440 --> 02:26:54.150 align:start position:0%
Admin or system logic may handle
category<02:26:52.160><c> alteration</c><02:26:52.960><c> or</c><02:26:53.120><c> platform</c><02:26:53.840><c> level</c>

02:26:54.150 --> 02:26:54.160 align:start position:0%
category alteration or platform level
 

02:26:54.160 --> 02:26:56.230 align:start position:0%
category alteration or platform level
controls<02:26:54.760><c> later.</c><02:26:55.240><c> The</c><02:26:55.360><c> key</c><02:26:55.520><c> point</c><02:26:55.880><c> is</c><02:26:56.000><c> that</c>

02:26:56.230 --> 02:26:56.240 align:start position:0%
controls later. The key point is that
 

02:26:56.240 --> 02:26:58.310 align:start position:0%
controls later. The key point is that
these<02:26:56.520><c> rules</c><02:26:56.840><c> should</c><02:26:57.040><c> not</c><02:26:57.440><c> only</c><02:26:57.720><c> live</c><02:26:58.040><c> in</c><02:26:58.200><c> the</c>

02:26:58.310 --> 02:26:58.320 align:start position:0%
these rules should not only live in the
 

02:26:58.320 --> 02:27:01.230 align:start position:0%
these rules should not only live in the
UI.<02:26:58.800><c> Back-end</c><02:26:59.360><c> functions</c><02:27:00.120><c> need</c><02:27:00.360><c> to</c><02:27:00.520><c> enforce</c>

02:27:01.230 --> 02:27:01.240 align:start position:0%
UI. Back-end functions need to enforce
 

02:27:01.240 --> 02:27:03.630 align:start position:0%
UI. Back-end functions need to enforce
ownership<02:27:01.880><c> and</c><02:27:02.040><c> permissions</c><02:27:02.800><c> because</c><02:27:03.080><c> the</c><02:27:03.200><c> UI</c>

02:27:03.630 --> 02:27:03.640 align:start position:0%
ownership and permissions because the UI
 

02:27:03.640 --> 02:27:06.350 align:start position:0%
ownership and permissions because the UI
can<02:27:03.880><c> always</c><02:27:04.520><c> be</c><02:27:04.920><c> bypassed.</c><02:27:05.800><c> This</c><02:27:06.000><c> is</c><02:27:06.120><c> where</c>

02:27:06.350 --> 02:27:06.360 align:start position:0%
can always be bypassed. This is where
 

02:27:06.360 --> 02:27:08.950 align:start position:0%
can always be bypassed. This is where
Codex<02:27:07.040><c> needs</c><02:27:07.360><c> to</c><02:27:07.480><c> think</c><02:27:07.800><c> carefully</c><02:27:08.640><c> instead</c>

02:27:08.950 --> 02:27:08.960 align:start position:0%
Codex needs to think carefully instead
 

02:27:08.960 --> 02:27:11.950 align:start position:0%
Codex needs to think carefully instead
of<02:27:09.120><c> just</c><02:27:09.600><c> adding</c><02:27:10.040><c> buttons.</c><02:27:10.800><c> And</c><02:27:10.960><c> so</c><02:27:11.520><c> now</c><02:27:11.800><c> what</c>

02:27:11.950 --> 02:27:11.960 align:start position:0%
of just adding buttons. And so now what
 

02:27:11.960 --> 02:27:13.790 align:start position:0%
of just adding buttons. And so now what
we<02:27:12.080><c> want</c><02:27:12.200><c> to</c><02:27:12.280><c> do</c><02:27:12.400><c> is</c><02:27:12.520><c> we</c><02:27:12.640><c> want</c><02:27:12.840><c> to</c><02:27:13.000><c> add</c><02:27:13.600><c> the</c>

02:27:13.790 --> 02:27:13.800 align:start position:0%
we want to do is we want to add the
 

02:27:13.800 --> 02:27:16.750 align:start position:0%
we want to do is we want to add the
roles<02:27:14.480><c> off</c><02:27:15.040><c> and</c><02:27:15.200><c> the</c><02:27:15.280><c> access</c><02:27:15.800><c> boundary</c><02:27:16.320><c> layer.</c>

02:27:16.750 --> 02:27:16.760 align:start position:0%
roles off and the access boundary layer.
 

02:27:16.760 --> 02:27:18.910 align:start position:0%
roles off and the access boundary layer.
And<02:27:17.080><c> here's</c><02:27:17.400><c> the</c><02:27:17.520><c> prompt</c><02:27:17.880><c> to</c><02:27:18.000><c> do</c><02:27:18.160><c> that.</c><02:27:18.680><c> Add</c>

02:27:18.910 --> 02:27:18.920 align:start position:0%
And here's the prompt to do that. Add
 

02:27:18.920 --> 02:27:21.830 align:start position:0%
And here's the prompt to do that. Add
the<02:27:19.080><c> first</c><02:27:19.560><c> practical</c><02:27:20.240><c> roles</c><02:27:20.880><c> off</c><02:27:21.320><c> and</c><02:27:21.480><c> access</c>

02:27:21.830 --> 02:27:21.840 align:start position:0%
the first practical roles off and access
 

02:27:21.840 --> 02:27:24.110 align:start position:0%
the first practical roles off and access
boundary<02:27:22.320><c> layer</c><02:27:22.680><c> around</c><02:27:23.120><c> the</c><02:27:23.200><c> existing</c><02:27:23.720><c> flex</c>

02:27:24.110 --> 02:27:24.120 align:start position:0%
boundary layer around the existing flex
 

02:27:24.120 --> 02:27:26.230 align:start position:0%
boundary layer around the existing flex
help<02:27:24.480><c> workflows,</c><02:27:25.240><c> okay?</c><02:27:25.720><c> So</c><02:27:25.840><c> we're</c><02:27:26.000><c> going</c><02:27:26.160><c> to</c>

02:27:26.230 --> 02:27:26.240 align:start position:0%
help workflows, okay? So we're going to
 

02:27:26.240 --> 02:27:28.070 align:start position:0%
help workflows, okay? So we're going to
go<02:27:26.760><c> definitely</c><02:27:27.160><c> in</c><02:27:27.240><c> the</c><02:27:27.360><c> plan</c><02:27:27.680><c> mode.</c><02:27:27.960><c> We're</c>

02:27:28.070 --> 02:27:28.080 align:start position:0%
go definitely in the plan mode. We're
 

02:27:28.080 --> 02:27:30.270 align:start position:0%
go definitely in the plan mode. We're
going<02:27:28.200><c> to</c><02:27:28.280><c> run</c><02:27:28.520><c> this</c><02:27:29.040><c> and</c><02:27:29.240><c> see</c><02:27:29.400><c> what</c><02:27:29.520><c> it</c><02:27:29.640><c> says.</c>

02:27:30.270 --> 02:27:30.280 align:start position:0%
going to run this and see what it says.
 

02:27:30.280 --> 02:27:32.270 align:start position:0%
going to run this and see what it says.
And<02:27:30.480><c> so</c><02:27:30.680><c> it</c><02:27:30.800><c> has</c><02:27:31.000><c> a</c><02:27:31.040><c> question</c><02:27:31.600><c> for</c><02:27:31.840><c> us.</c><02:27:31.920><c> Which</c>

02:27:32.270 --> 02:27:32.280 align:start position:0%
And so it has a question for us. Which
 

02:27:32.280 --> 02:27:34.790 align:start position:0%
And so it has a question for us. Which
identity<02:27:32.880><c> approach</c><02:27:33.400><c> should</c><02:27:33.600><c> this</c><02:27:33.920><c> plan</c>

02:27:34.790 --> 02:27:34.800 align:start position:0%
identity approach should this plan
 

02:27:34.800 --> 02:27:37.070 align:start position:0%
identity approach should this plan
should<02:27:35.120><c> this</c><02:27:35.400><c> step</c><02:27:35.880><c> plan</c><02:27:36.240><c> for?</c><02:27:36.720><c> Demo</c>

02:27:37.070 --> 02:27:37.080 align:start position:0%
should this step plan for? Demo
 

02:27:37.080 --> 02:27:40.830 align:start position:0%
should this step plan for? Demo
sessions.<02:27:37.960><c> Add</c><02:27:38.240><c> Convex</c><02:27:38.800><c> back</c><02:27:39.160><c> demo</c><02:27:39.520><c> users</c><02:27:40.160><c> and</c>

02:27:40.830 --> 02:27:40.840 align:start position:0%
sessions. Add Convex back demo users and
 

02:27:40.840 --> 02:27:44.550 align:start position:0%
sessions. Add Convex back demo users and
for<02:27:41.080><c> Convex</c><02:27:41.920><c> or</c><02:27:42.280><c> add</c><02:27:42.680><c> real</c><02:27:43.080><c> Convex</c><02:27:43.800><c> or</c><02:27:44.120><c> sign</c>

02:27:44.550 --> 02:27:44.560 align:start position:0%
for Convex or add real Convex or sign
 

02:27:44.560 --> 02:27:46.550 align:start position:0%
for Convex or add real Convex or sign
and<02:27:44.800><c> sign</c><02:27:45.160><c> up</c><02:27:45.320><c> more</c><02:27:45.520><c> production</c><02:27:45.960><c> shape</c><02:27:46.280><c> but</c>

02:27:46.550 --> 02:27:46.560 align:start position:0%
and sign up more production shape but
 

02:27:46.560 --> 02:27:49.510 align:start position:0%
and sign up more production shape but
larger<02:27:47.200><c> and</c><02:27:47.360><c> currently</c><02:27:47.880><c> beta</c><02:27:48.320><c> or</c><02:27:48.480><c> this</c><02:27:48.760><c> clerk</c>

02:27:49.510 --> 02:27:49.520 align:start position:0%
larger and currently beta or this clerk
 

02:27:49.520 --> 02:27:51.390 align:start position:0%
larger and currently beta or this clerk
use<02:27:49.720><c> third-party</c><02:27:50.360><c> or</c><02:27:50.520><c> provider.</c><02:27:50.960><c> Let's</c><02:27:51.200><c> go</c>

02:27:51.390 --> 02:27:51.400 align:start position:0%
use third-party or provider. Let's go
 

02:27:51.400 --> 02:27:53.750 align:start position:0%
use third-party or provider. Let's go
with<02:27:51.600><c> Convex</c><02:27:52.280><c> or</c><02:27:52.720><c> how</c><02:27:52.920><c> should</c><02:27:53.200><c> customer</c>

02:27:53.750 --> 02:27:53.760 align:start position:0%
with Convex or how should customer
 

02:27:53.760 --> 02:27:56.110 align:start position:0%
with Convex or how should customer
helper<02:27:54.160><c> roles</c><02:27:54.680><c> be</c><02:27:54.880><c> represented</c><02:27:55.720><c> for</c><02:27:55.960><c> or</c>

02:27:56.110 --> 02:27:56.120 align:start position:0%
helper roles be represented for or
 

02:27:56.120 --> 02:27:59.230 align:start position:0%
helper roles be represented for or
version<02:27:56.600><c> one?</c><02:27:57.280><c> Role</c><02:27:57.760><c> plus</c><02:27:58.240><c> profile.</c><02:27:58.960><c> So</c><02:27:59.080><c> what</c>

02:27:59.230 --> 02:27:59.240 align:start position:0%
version one? Role plus profile. So what
 

02:27:59.240 --> 02:28:01.710 align:start position:0%
version one? Role plus profile. So what
is<02:27:59.360><c> this?</c><02:28:00.040><c> Each</c><02:28:00.320><c> demo</c><02:28:00.600><c> user</c><02:28:00.920><c> has</c><02:28:01.160><c> customer</c>

02:28:01.710 --> 02:28:01.720 align:start position:0%
is this? Each demo user has customer
 

02:28:01.720 --> 02:28:03.990 align:start position:0%
is this? Each demo user has customer
helper<02:28:02.160><c> both</c><02:28:02.800><c> and</c><02:28:02.960><c> helpers</c><02:28:03.440><c> linked</c><02:28:03.720><c> to</c><02:28:03.800><c> one</c>

02:28:03.990 --> 02:28:04.000 align:start position:0%
helper both and helpers linked to one
 

02:28:04.000 --> 02:28:06.510 align:start position:0%
helper both and helpers linked to one
helper<02:28:04.320><c> profile</c><02:28:05.080><c> for</c><02:28:05.320><c> request.</c><02:28:05.960><c> Separate</c>

02:28:06.510 --> 02:28:06.520 align:start position:0%
helper profile for request. Separate
 

02:28:06.520 --> 02:28:08.990 align:start position:0%
helper profile for request. Separate
accounts.<02:28:07.160><c> Customer</c><02:28:07.760><c> and</c><02:28:07.840><c> helper</c><02:28:08.240><c> are</c><02:28:08.520><c> always</c>

02:28:08.990 --> 02:28:09.000 align:start position:0%
accounts. Customer and helper are always
 

02:28:09.000 --> 02:28:11.670 align:start position:0%
accounts. Customer and helper are always
separate<02:28:09.440><c> demo</c><02:28:09.720><c> users.</c><02:28:10.400><c> Simpler</c><02:28:10.960><c> boundaries</c>

02:28:11.670 --> 02:28:11.680 align:start position:0%
separate demo users. Simpler boundaries
 

02:28:11.680 --> 02:28:14.430 align:start position:0%
separate demo users. Simpler boundaries
but<02:28:11.920><c> less</c><02:28:12.280><c> flexible.</c><02:28:13.120><c> And</c><02:28:13.440><c> sometimes</c><02:28:14.240><c> when</c>

02:28:14.430 --> 02:28:14.440 align:start position:0%
but less flexible. And sometimes when
 

02:28:14.440 --> 02:28:17.230 align:start position:0%
but less flexible. And sometimes when
I'm<02:28:14.600><c> not</c><02:28:14.880><c> sure</c><02:28:15.640><c> but</c><02:28:15.840><c> I</c><02:28:16.120><c> want</c><02:28:16.480><c> the</c><02:28:16.560><c> system</c><02:28:17.120><c> to</c>

02:28:17.230 --> 02:28:17.240 align:start position:0%
I'm not sure but I want the system to
 

02:28:17.240 --> 02:28:19.470 align:start position:0%
I'm not sure but I want the system to
come<02:28:17.480><c> up</c><02:28:17.640><c> with</c><02:28:17.840><c> a</c><02:28:17.920><c> really</c><02:28:18.360><c> solid</c><02:28:18.800><c> answer.</c><02:28:19.200><c> This</c>

02:28:19.470 --> 02:28:19.480 align:start position:0%
come up with a really solid answer. This
 

02:28:19.480 --> 02:28:21.790 align:start position:0%
come up with a really solid answer. This
is<02:28:19.600><c> what</c><02:28:19.760><c> I</c><02:28:19.840><c> usually</c><02:28:20.280><c> type.</c><02:28:20.680><c> For</c><02:28:20.840><c> the</c><02:28:21.040><c> second</c>

02:28:21.790 --> 02:28:21.800 align:start position:0%
is what I usually type. For the second
 

02:28:21.800 --> 02:28:24.910 align:start position:0%
is what I usually type. For the second
question,<02:28:22.520><c> what's</c><02:28:22.920><c> the</c><02:28:23.120><c> most</c><02:28:24.040><c> durable</c>

02:28:24.910 --> 02:28:24.920 align:start position:0%
question, what's the most durable
 

02:28:24.920 --> 02:28:27.910 align:start position:0%
question, what's the most durable
long-term<02:28:26.040><c> option?</c><02:28:26.680><c> Okay,</c><02:28:27.080><c> that's</c><02:28:27.560><c> the</c><02:28:27.680><c> key</c>

02:28:27.910 --> 02:28:27.920 align:start position:0%
long-term option? Okay, that's the key
 

02:28:27.920 --> 02:28:29.750 align:start position:0%
long-term option? Okay, that's the key
here,<02:28:28.200><c> durable.</c><02:28:29.080><c> Now</c><02:28:29.160><c> let's</c><02:28:29.400><c> see</c><02:28:29.520><c> what</c><02:28:29.640><c> it</c>

02:28:29.750 --> 02:28:29.760 align:start position:0%
here, durable. Now let's see what it
 

02:28:29.760 --> 02:28:32.230 align:start position:0%
here, durable. Now let's see what it
says.<02:28:30.280><c> The</c><02:28:30.400><c> most</c><02:28:30.800><c> durable</c><02:28:31.280><c> long-term</c><02:28:31.840><c> option</c>

02:28:32.230 --> 02:28:32.240 align:start position:0%
says. The most durable long-term option
 

02:28:32.240 --> 02:28:35.030 align:start position:0%
says. The most durable long-term option
is<02:28:32.520><c> role</c><02:28:33.160><c> plus</c><02:28:33.600><c> profile.</c><02:28:34.160><c> Perfect.</c><02:28:34.920><c> That's</c>

02:28:35.030 --> 02:28:35.040 align:start position:0%
is role plus profile. Perfect. That's
 

02:28:35.040 --> 02:28:37.230 align:start position:0%
is role plus profile. Perfect. That's
it.<02:28:35.440><c> And</c><02:28:35.640><c> for</c><02:28:35.760><c> the</c><02:28:35.880><c> first</c><02:28:36.240><c> question,</c><02:28:36.880><c> choose</c>

02:28:37.230 --> 02:28:37.240 align:start position:0%
it. And for the first question, choose
 

02:28:37.240 --> 02:28:39.310 align:start position:0%
it. And for the first question, choose
demo<02:28:37.640><c> sessions</c><02:28:38.240><c> for</c><02:28:38.360><c> the</c><02:28:38.760><c> for</c><02:28:38.880><c> this</c><02:28:39.040><c> core</c>

02:28:39.310 --> 02:28:39.320 align:start position:0%
demo sessions for the for this core
 

02:28:39.320 --> 02:28:41.150 align:start position:0%
demo sessions for the for this core
step.<02:28:39.680><c> Okay,</c><02:28:39.920><c> so</c><02:28:40.080><c> let's</c><02:28:40.320><c> go</c><02:28:40.440><c> ahead</c><02:28:40.720><c> with</c><02:28:40.880><c> demo</c>

02:28:41.150 --> 02:28:41.160 align:start position:0%
step. Okay, so let's go ahead with demo
 

02:28:41.160 --> 02:28:45.150 align:start position:0%
step. Okay, so let's go ahead with demo
sessions,<02:28:41.760><c> okay?</c><02:28:42.280><c> So</c><02:28:42.840><c> do</c><02:28:43.320><c> demo</c><02:28:43.640><c> sessions</c><02:28:44.400><c> and</c>

02:28:45.150 --> 02:28:45.160 align:start position:0%
sessions, okay? So do demo sessions and
 

02:28:45.160 --> 02:28:47.630 align:start position:0%
sessions, okay? So do demo sessions and
role<02:28:45.680><c> plus</c><02:28:46.120><c> profile.</c><02:28:46.880><c> Let's</c><02:28:47.080><c> just</c><02:28:47.280><c> go</c><02:28:47.480><c> with</c>

02:28:47.630 --> 02:28:47.640 align:start position:0%
role plus profile. Let's just go with
 

02:28:47.640 --> 02:28:49.870 align:start position:0%
role plus profile. Let's just go with
the<02:28:47.720><c> recommendations.</c><02:28:48.960><c> Expand</c><02:28:49.520><c> it.</c><02:28:49.760><c> All</c>

02:28:49.870 --> 02:28:49.880 align:start position:0%
the recommendations. Expand it. All
 

02:28:49.880 --> 02:28:52.510 align:start position:0%
the recommendations. Expand it. All
right,<02:28:50.080><c> so</c><02:28:50.240><c> now</c><02:28:50.560><c> you</c><02:28:50.760><c> can</c><02:28:51.000><c> see</c><02:28:51.320><c> that</c><02:28:51.560><c> Codex</c><02:28:52.240><c> is</c>

02:28:52.510 --> 02:28:52.520 align:start position:0%
right, so now you can see that Codex is
 

02:28:52.520 --> 02:28:55.070 align:start position:0%
right, so now you can see that Codex is
testing<02:28:53.120><c> everything,</c><02:28:53.720><c> right?</c><02:28:54.040><c> It's</c><02:28:54.320><c> testing</c>

02:28:55.070 --> 02:28:55.080 align:start position:0%
testing everything, right? It's testing
 

02:28:55.080 --> 02:28:57.590 align:start position:0%
testing everything, right? It's testing
on<02:28:55.240><c> the</c><02:28:55.400><c> UI</c><02:28:56.000><c> in</c><02:28:56.200><c> the</c><02:28:56.320><c> browser</c><02:28:57.120><c> and</c><02:28:57.320><c> you</c><02:28:57.440><c> see</c>

02:28:57.590 --> 02:28:57.600 align:start position:0%
on the UI in the browser and you see
 

02:28:57.600 --> 02:28:59.910 align:start position:0%
on the UI in the browser and you see
this<02:28:57.840><c> cursor</c><02:28:58.400><c> right</c><02:28:58.640><c> here.</c><02:28:59.000><c> The</c><02:28:59.120><c> browser</c><02:28:59.640><c> flow</c>

02:28:59.910 --> 02:28:59.920 align:start position:0%
this cursor right here. The browser flow
 

02:28:59.920 --> 02:29:02.390 align:start position:0%
this cursor right here. The browser flow
now<02:29:00.120><c> confirms</c><02:29:00.880><c> a</c><02:29:01.040><c> customer</c><02:29:01.720><c> created</c><02:29:02.200><c> book</c>

02:29:02.390 --> 02:29:02.400 align:start position:0%
now confirms a customer created book
 

02:29:02.400 --> 02:29:04.150 align:start position:0%
now confirms a customer created book
booking<02:29:02.760><c> appears</c><02:29:03.200><c> for</c><02:29:03.320><c> the</c><02:29:03.440><c> linked</c><02:29:03.760><c> helper</c>

02:29:04.150 --> 02:29:04.160 align:start position:0%
booking appears for the linked helper
 

02:29:04.160 --> 02:29:06.670 align:start position:0%
booking appears for the linked helper
and<02:29:04.320><c> can</c><02:29:04.560><c> be</c><02:29:04.680><c> moved</c><02:29:05.240><c> into</c><02:29:05.600><c> in</c><02:29:05.800><c> progress.</c><02:29:06.560><c> All</c>

02:29:06.670 --> 02:29:06.680 align:start position:0%
and can be moved into in progress. All
 

02:29:06.680 --> 02:29:08.470 align:start position:0%
and can be moved into in progress. All
right,<02:29:06.920><c> so</c><02:29:07.040><c> it</c><02:29:07.160><c> has</c><02:29:07.360><c> finished</c><02:29:07.960><c> and</c><02:29:08.160><c> it</c><02:29:08.240><c> has</c>

02:29:08.470 --> 02:29:08.480 align:start position:0%
right, so it has finished and it has
 

02:29:08.480 --> 02:29:10.710 align:start position:0%
right, so it has finished and it has
implemented<02:29:09.160><c> the</c><02:29:09.240><c> demo</c><02:29:09.600><c> roles</c><02:29:09.960><c> and</c><02:29:10.200><c> access</c>

02:29:10.710 --> 02:29:10.720 align:start position:0%
implemented the demo roles and access
 

02:29:10.720 --> 02:29:13.150 align:start position:0%
implemented the demo roles and access
boundary<02:29:11.360><c> layer</c><02:29:11.840><c> over</c><02:29:12.000><c> here,</c><02:29:12.440><c> okay?</c><02:29:12.960><c> So</c>

02:29:13.150 --> 02:29:13.160 align:start position:0%
boundary layer over here, okay? So
 

02:29:13.160 --> 02:29:15.830 align:start position:0%
boundary layer over here, okay? So
marketplace<02:29:14.200><c> browsing</c><02:29:14.800><c> stays</c><02:29:15.200><c> public.</c>

02:29:15.830 --> 02:29:15.840 align:start position:0%
marketplace browsing stays public.
 

02:29:15.840 --> 02:29:18.670 align:start position:0%
marketplace browsing stays public.
Booking<02:29:16.200><c> creation</c><02:29:16.760><c> requires</c><02:29:17.560><c> a</c><02:29:17.760><c> customer</c><02:29:18.440><c> or</c>

02:29:18.670 --> 02:29:18.680 align:start position:0%
Booking creation requires a customer or
 

02:29:18.680 --> 02:29:21.950 align:start position:0%
Booking creation requires a customer or
both<02:29:19.560><c> demo</c><02:29:19.880><c> user.</c><02:29:20.520><c> Customer</c><02:29:21.080><c> booking</c><02:29:21.440><c> status</c>

02:29:21.950 --> 02:29:21.960 align:start position:0%
both demo user. Customer booking status
 

02:29:21.960 --> 02:29:23.790 align:start position:0%
both demo user. Customer booking status
only<02:29:22.240><c> shows</c><02:29:22.600><c> bookings</c><02:29:23.120><c> owned</c><02:29:23.440><c> by</c><02:29:23.640><c> the</c>

02:29:23.790 --> 02:29:23.800 align:start position:0%
only shows bookings owned by the
 

02:29:23.800 --> 02:29:26.070 align:start position:0%
only shows bookings owned by the
signed-in<02:29:24.520><c> customer.</c><02:29:25.280><c> Helper</c><02:29:25.640><c> request</c>

02:29:26.070 --> 02:29:26.080 align:start position:0%
signed-in customer. Helper request
 

02:29:26.080 --> 02:29:28.990 align:start position:0%
signed-in customer. Helper request
status<02:29:26.520><c> updates</c><02:29:26.880><c> require</c><02:29:27.320><c> a</c><02:29:27.440><c> helper</c><02:29:27.960><c> or</c><02:29:28.240><c> both</c>

02:29:28.990 --> 02:29:29.000 align:start position:0%
status updates require a helper or both
 

02:29:29.000 --> 02:29:32.230 align:start position:0%
status updates require a helper or both
demo<02:29:29.320><c> user</c><02:29:29.880><c> with</c><02:29:30.080><c> a</c><02:29:30.200><c> linked</c><02:29:30.720><c> helper</c><02:29:31.120><c> ID</c><02:29:31.880><c> helper</c>

02:29:32.230 --> 02:29:32.240 align:start position:0%
demo user with a linked helper ID helper
 

02:29:32.240 --> 02:29:34.710 align:start position:0%
demo user with a linked helper ID helper
profile<02:29:32.840><c> ID.</c><02:29:33.320><c> And</c><02:29:33.520><c> so,</c><02:29:34.200><c> remaining</c>

02:29:34.710 --> 02:29:34.720 align:start position:0%
profile ID. And so, remaining
 

02:29:34.720 --> 02:29:36.990 align:start position:0%
profile ID. And so, remaining
limitation,<02:29:35.400><c> this</c><02:29:35.600><c> is</c><02:29:35.720><c> still</c><02:29:35.920><c> tutorial</c><02:29:36.560><c> demo</c>

02:29:36.990 --> 02:29:37.000 align:start position:0%
limitation, this is still tutorial demo
 

02:29:37.000 --> 02:29:38.590 align:start position:0%
limitation, this is still tutorial demo
auth,<02:29:37.200><c> not</c><02:29:37.400><c> production</c><02:29:37.880><c> authentication.</c>

02:29:38.590 --> 02:29:38.600 align:start position:0%
auth, not production authentication.
 

02:29:38.600 --> 02:29:41.150 align:start position:0%
auth, not production authentication.
Real<02:29:38.840><c> Convex</c><02:29:39.400><c> auth</c><02:29:39.800><c> or</c><02:29:40.040><c> Clerk</c><02:29:40.560><c> can</c><02:29:40.760><c> replace</c>

02:29:41.150 --> 02:29:41.160 align:start position:0%
Real Convex auth or Clerk can replace
 

02:29:41.160 --> 02:29:43.470 align:start position:0%
Real Convex auth or Clerk can replace
demo<02:29:41.480><c> session</c><02:29:42.000><c> issuance</c><02:29:42.640><c> later</c><02:29:43.200><c> while</c>

02:29:43.470 --> 02:29:43.480 align:start position:0%
demo session issuance later while
 

02:29:43.480 --> 02:29:45.910 align:start position:0%
demo session issuance later while
keeping<02:29:43.920><c> the</c><02:29:44.040><c> same</c><02:29:44.440><c> role</c><02:29:44.760><c> profile</c><02:29:45.440><c> access</c>

02:29:45.910 --> 02:29:45.920 align:start position:0%
keeping the same role profile access
 

02:29:45.920 --> 02:29:48.910 align:start position:0%
keeping the same role profile access
model.<02:29:46.480><c> And</c><02:29:46.640><c> so,</c><02:29:47.160><c> this</c><02:29:47.480><c> should</c><02:29:47.760><c> give</c><02:29:48.040><c> us</c><02:29:48.400><c> some</c>

02:29:48.910 --> 02:29:48.920 align:start position:0%
model. And so, this should give us some
 

02:29:48.920 --> 02:29:51.190 align:start position:0%
model. And so, this should give us some
uh<02:29:49.040><c> role</c><02:29:49.680><c> separation,</c><02:29:50.600><c> right?</c><02:29:50.760><c> Some</c><02:29:50.920><c> kind</c><02:29:51.120><c> of</c>

02:29:51.190 --> 02:29:51.200 align:start position:0%
uh role separation, right? Some kind of
 

02:29:51.200 --> 02:29:52.910 align:start position:0%
uh role separation, right? Some kind of
authentication<02:29:51.880><c> on</c><02:29:52.000><c> the</c><02:29:52.080><c> backend.</c><02:29:52.560><c> And</c><02:29:52.680><c> here,</c>

02:29:52.910 --> 02:29:52.920 align:start position:0%
authentication on the backend. And here,
 

02:29:52.920 --> 02:29:55.510 align:start position:0%
authentication on the backend. And here,
if<02:29:53.120><c> we</c><02:29:53.240><c> jump</c><02:29:53.680><c> into</c><02:29:53.960><c> Convex,</c><02:29:54.640><c> you</c><02:29:54.800><c> can</c><02:29:55.040><c> see</c><02:29:55.360><c> we</c>

02:29:55.510 --> 02:29:55.520 align:start position:0%
if we jump into Convex, you can see we
 

02:29:55.520 --> 02:29:57.830 align:start position:0%
if we jump into Convex, you can see we
now<02:29:55.760><c> have</c><02:29:56.080><c> users</c><02:29:56.720><c> over</c><02:29:56.920><c> here,</c><02:29:57.400><c> right?</c><02:29:57.680><c> These</c>

02:29:57.830 --> 02:29:57.840 align:start position:0%
now have users over here, right? These
 

02:29:57.840 --> 02:29:59.950 align:start position:0%
now have users over here, right? These
are<02:29:57.920><c> the</c><02:29:58.080><c> users,</c><02:29:58.600><c> and</c><02:29:58.760><c> there's</c><02:29:59.040><c> a</c><02:29:59.120><c> role.</c><02:29:59.880><c> So,</c>

02:29:59.950 --> 02:29:59.960 align:start position:0%
are the users, and there's a role. So,
 

02:29:59.960 --> 02:30:02.110 align:start position:0%
are the users, and there's a role. So,
you<02:30:00.120><c> can</c><02:30:00.320><c> be</c><02:30:00.480><c> either</c><02:30:00.880><c> both,</c><02:30:01.440><c> or</c><02:30:01.600><c> you</c><02:30:01.720><c> can</c><02:30:01.880><c> be</c><02:30:02.040><c> a</c>

02:30:02.110 --> 02:30:02.120 align:start position:0%
you can be either both, or you can be a
 

02:30:02.120 --> 02:30:04.270 align:start position:0%
you can be either both, or you can be a
helper,<02:30:02.600><c> or</c><02:30:02.840><c> you</c><02:30:02.960><c> can</c><02:30:03.120><c> be</c><02:30:03.240><c> a</c><02:30:03.360><c> customer.</c><02:30:04.080><c> And</c>

02:30:04.270 --> 02:30:04.280 align:start position:0%
helper, or you can be a customer. And
 

02:30:04.280 --> 02:30:06.030 align:start position:0%
helper, or you can be a customer. And
depending<02:30:04.800><c> on</c><02:30:04.920><c> which</c><02:30:05.200><c> role</c><02:30:05.440><c> you're</c><02:30:05.800><c> you're</c>

02:30:06.030 --> 02:30:06.040 align:start position:0%
depending on which role you're you're
 

02:30:06.040 --> 02:30:09.310 align:start position:0%
depending on which role you're you're
in,<02:30:06.520><c> you</c><02:30:06.720><c> can</c><02:30:07.000><c> do</c><02:30:07.160><c> various</c><02:30:08.120><c> operations.</c><02:30:09.080><c> Here</c>

02:30:09.310 --> 02:30:09.320 align:start position:0%
in, you can do various operations. Here
 

02:30:09.320 --> 02:30:11.310 align:start position:0%
in, you can do various operations. Here
we<02:30:09.480><c> have</c><02:30:09.720><c> sessions,</c><02:30:10.480><c> we</c><02:30:10.640><c> have</c><02:30:10.840><c> various</c>

02:30:11.310 --> 02:30:11.320 align:start position:0%
we have sessions, we have various
 

02:30:11.320 --> 02:30:14.470 align:start position:0%
we have sessions, we have various
services,<02:30:12.360><c> we</c><02:30:12.520><c> also</c><02:30:12.840><c> have</c><02:30:13.040><c> functions</c><02:30:13.920><c> that</c>

02:30:14.470 --> 02:30:14.480 align:start position:0%
services, we also have functions that
 

02:30:14.480 --> 02:30:16.910 align:start position:0%
services, we also have functions that
also<02:30:15.000><c> handle</c><02:30:15.600><c> these</c><02:30:15.880><c> roles.</c><02:30:16.440><c> So,</c><02:30:16.560><c> you</c><02:30:16.680><c> can</c>

02:30:16.910 --> 02:30:16.920 align:start position:0%
also handle these roles. So, you can
 

02:30:16.920 --> 02:30:19.270 align:start position:0%
also handle these roles. So, you can
list<02:30:17.200><c> demo</c><02:30:17.520><c> users,</c><02:30:18.240><c> you</c><02:30:18.360><c> can</c><02:30:18.560><c> start</c><02:30:18.960><c> demo</c>

02:30:19.270 --> 02:30:19.280 align:start position:0%
list demo users, you can start demo
 

02:30:19.280 --> 02:30:22.310 align:start position:0%
list demo users, you can start demo
session,<02:30:20.000><c> viewer</c><02:30:20.760><c> list</c><02:30:21.040><c> for</c><02:30:21.240><c> helper,</c><02:30:22.000><c> list</c>

02:30:22.310 --> 02:30:22.320 align:start position:0%
session, viewer list for helper, list
 

02:30:22.320 --> 02:30:24.910 align:start position:0%
session, viewer list for helper, list
for<02:30:22.520><c> customer,</c><02:30:23.480><c> etc.,</c><02:30:24.040><c> etc.</c><02:30:24.440><c> And</c><02:30:24.560><c> these</c>

02:30:24.910 --> 02:30:24.920 align:start position:0%
for customer, etc., etc. And these
 

02:30:24.920 --> 02:30:28.070 align:start position:0%
for customer, etc., etc. And these
functions,<02:30:25.840><c> they</c><02:30:26.160><c> are</c><02:30:26.640><c> meant</c><02:30:27.240><c> to</c><02:30:27.360><c> work</c><02:30:27.880><c> with</c>

02:30:28.070 --> 02:30:28.080 align:start position:0%
functions, they are meant to work with
 

02:30:28.080 --> 02:30:29.590 align:start position:0%
functions, they are meant to work with
specific<02:30:28.680><c> roles,</c><02:30:29.040><c> right?</c><02:30:29.280><c> So,</c><02:30:29.400><c> that</c>

02:30:29.590 --> 02:30:29.600 align:start position:0%
specific roles, right? So, that
 

02:30:29.600 --> 02:30:31.950 align:start position:0%
specific roles, right? So, that
authentic-<02:30:30.160><c> -ation</c><02:30:30.400><c> is</c><02:30:30.560><c> is</c><02:30:30.760><c> baked</c><02:30:31.280><c> in</c><02:30:31.680><c> into</c>

02:30:31.950 --> 02:30:31.960 align:start position:0%
authentic- -ation is is baked in into
 

02:30:31.960 --> 02:30:33.790 align:start position:0%
authentic- -ation is is baked in into
these<02:30:32.240><c> functions.</c><02:30:32.960><c> Now,</c><02:30:33.160><c> when</c><02:30:33.360><c> something</c>

02:30:33.790 --> 02:30:33.800 align:start position:0%
these functions. Now, when something
 

02:30:33.800 --> 02:30:36.630 align:start position:0%
these functions. Now, when something
breaks,<02:30:34.400><c> the</c><02:30:34.560><c> wrong</c><02:30:35.000><c> move</c><02:30:35.320><c> is</c><02:30:35.760><c> to</c><02:30:35.920><c> immediately</c>

02:30:36.630 --> 02:30:36.640 align:start position:0%
breaks, the wrong move is to immediately
 

02:30:36.640 --> 02:30:39.510 align:start position:0%
breaks, the wrong move is to immediately
ask<02:30:36.920><c> Codex</c><02:30:37.480><c> to</c><02:30:37.600><c> rewrite</c><02:30:38.320><c> a</c><02:30:38.440><c> whole</c><02:30:38.760><c> section.</c>

02:30:39.510 --> 02:30:39.520 align:start position:0%
ask Codex to rewrite a whole section.
 

02:30:39.520 --> 02:30:41.670 align:start position:0%
ask Codex to rewrite a whole section.
The<02:30:39.680><c> better</c><02:30:40.000><c> move</c><02:30:40.400><c> is</c><02:30:40.560><c> to</c><02:30:40.680><c> give</c><02:30:40.840><c> it</c><02:30:40.960><c> the</c><02:30:41.080><c> error,</c>

02:30:41.670 --> 02:30:41.680 align:start position:0%
The better move is to give it the error,
 

02:30:41.680 --> 02:30:44.310 align:start position:0%
The better move is to give it the error,
ask<02:30:42.000><c> it</c><02:30:42.120><c> to</c><02:30:42.280><c> inspect</c><02:30:43.040><c> the</c><02:30:43.120><c> relevant</c><02:30:43.600><c> files,</c>

02:30:44.310 --> 02:30:44.320 align:start position:0%
ask it to inspect the relevant files,
 

02:30:44.320 --> 02:30:47.150 align:start position:0%
ask it to inspect the relevant files,
and<02:30:44.560><c> make</c><02:30:44.840><c> it</c><02:30:45.000><c> explain</c><02:30:45.720><c> the</c><02:30:45.880><c> likely</c><02:30:46.400><c> cause</c>

02:30:47.150 --> 02:30:47.160 align:start position:0%
and make it explain the likely cause
 

02:30:47.160 --> 02:30:49.550 align:start position:0%
and make it explain the likely cause
before<02:30:47.520><c> changing</c><02:30:48.040><c> anything.</c><02:30:48.640><c> That</c><02:30:48.960><c> debugging</c>

02:30:49.550 --> 02:30:49.560 align:start position:0%
before changing anything. That debugging
 

02:30:49.560 --> 02:30:51.750 align:start position:0%
before changing anything. That debugging
loop<02:30:49.920><c> is</c><02:30:50.120><c> the</c><02:30:50.240><c> same</c><02:30:50.760><c> whether</c><02:30:51.000><c> the</c><02:30:51.120><c> problem</c><02:30:51.560><c> is</c>

02:30:51.750 --> 02:30:51.760 align:start position:0%
loop is the same whether the problem is
 

02:30:51.760 --> 02:30:54.310 align:start position:0%
loop is the same whether the problem is
a<02:30:51.840><c> browser</c><02:30:52.440><c> error,</c><02:30:52.920><c> a</c><02:30:53.040><c> build</c><02:30:53.480><c> failure,</c><02:30:54.200><c> a</c>

02:30:54.310 --> 02:30:54.320 align:start position:0%
a browser error, a build failure, a
 

02:30:54.320 --> 02:30:57.510 align:start position:0%
a browser error, a build failure, a
Convex<02:30:54.920><c> function</c><02:30:55.400><c> error,</c><02:30:55.840><c> or</c><02:30:56.200><c> a</c><02:30:56.400><c> UI</c><02:30:56.920><c> state</c>

02:30:57.510 --> 02:30:57.520 align:start position:0%
Convex function error, or a UI state
 

02:30:57.520 --> 02:31:00.070 align:start position:0%
Convex function error, or a UI state
that<02:30:57.680><c> does</c><02:30:57.920><c> not</c><02:30:58.320><c> make</c><02:30:58.600><c> sense.</c><02:30:59.280><c> Observe</c><02:30:59.960><c> the</c>

02:31:00.070 --> 02:31:00.080 align:start position:0%
that does not make sense. Observe the
 

02:31:00.080 --> 02:31:03.110 align:start position:0%
that does not make sense. Observe the
issue,<02:31:00.720><c> diagnose</c><02:31:01.520><c> it,</c><02:31:01.720><c> patch</c><02:31:02.120><c> it</c><02:31:02.280><c> narrowly,</c>

02:31:03.110 --> 02:31:03.120 align:start position:0%
issue, diagnose it, patch it narrowly,
 

02:31:03.120 --> 02:31:05.550 align:start position:0%
issue, diagnose it, patch it narrowly,
and<02:31:03.320><c> verify</c><02:31:03.960><c> the</c><02:31:04.120><c> fix.</c><02:31:04.800><c> And</c><02:31:04.920><c> so,</c><02:31:05.120><c> let's</c><02:31:05.400><c> give</c>

02:31:05.550 --> 02:31:05.560 align:start position:0%
and verify the fix. And so, let's give
 

02:31:05.560 --> 02:31:08.990 align:start position:0%
and verify the fix. And so, let's give
it<02:31:05.680><c> a</c><02:31:05.800><c> prompt</c><02:31:06.560><c> that</c><02:31:07.160><c> will</c><02:31:07.840><c> deal</c><02:31:08.200><c> with</c><02:31:08.360><c> this</c>

02:31:08.990 --> 02:31:09.000 align:start position:0%
it a prompt that will deal with this
 

02:31:09.000 --> 02:31:11.230 align:start position:0%
it a prompt that will deal with this
sort<02:31:09.280><c> of</c><02:31:09.440><c> issue</c><02:31:10.000><c> regarding</c><02:31:10.520><c> debugging,</c>

02:31:11.230 --> 02:31:11.240 align:start position:0%
sort of issue regarding debugging,
 

02:31:11.240 --> 02:31:13.950 align:start position:0%
sort of issue regarding debugging,
polish,<02:31:11.960><c> verification,</c><02:31:12.960><c> stuff</c><02:31:13.320><c> like</c><02:31:13.560><c> that.</c>

02:31:13.950 --> 02:31:13.960 align:start position:0%
polish, verification, stuff like that.
 

02:31:13.960 --> 02:31:15.510 align:start position:0%
polish, verification, stuff like that.
We're<02:31:14.080><c> going</c><02:31:14.200><c> to</c><02:31:14.280><c> be</c><02:31:14.400><c> using</c><02:31:14.720><c> this</c><02:31:14.960><c> prompt</c><02:31:15.360><c> over</c>

02:31:15.510 --> 02:31:15.520 align:start position:0%
We're going to be using this prompt over
 

02:31:15.520 --> 02:31:18.150 align:start position:0%
We're going to be using this prompt over
here.<02:31:16.000><c> Debug,</c><02:31:16.720><c> polish,</c><02:31:17.280><c> and</c><02:31:17.480><c> verify</c><02:31:18.000><c> the</c>

02:31:18.150 --> 02:31:18.160 align:start position:0%
here. Debug, polish, and verify the
 

02:31:18.160 --> 02:31:20.430 align:start position:0%
here. Debug, polish, and verify the
existing<02:31:18.800><c> flex</c><02:31:19.240><c> help</c><02:31:19.520><c> product</c><02:31:20.000><c> workflow.</c>

02:31:20.430 --> 02:31:20.440 align:start position:0%
existing flex help product workflow.
 

02:31:20.440 --> 02:31:22.230 align:start position:0%
existing flex help product workflow.
Inspect<02:31:20.960><c> the</c><02:31:21.040><c> current</c><02:31:21.440><c> app</c><02:31:21.640><c> first,</c><02:31:22.040><c> then</c>

02:31:22.230 --> 02:31:22.240 align:start position:0%
Inspect the current app first, then
 

02:31:22.240 --> 02:31:25.110 align:start position:0%
Inspect the current app first, then
identify<02:31:23.000><c> this</c><02:31:23.240><c> is</c><02:31:23.400><c> smallest</c><02:31:24.080><c> set</c><02:31:24.320><c> of</c><02:31:24.440><c> fixes</c>

02:31:25.110 --> 02:31:25.120 align:start position:0%
identify this is smallest set of fixes
 

02:31:25.120 --> 02:31:27.830 align:start position:0%
identify this is smallest set of fixes
and<02:31:25.320><c> polish</c><02:31:25.800><c> improvements</c><02:31:26.560><c> needed</c><02:31:27.200><c> to</c><02:31:27.400><c> make</c>

02:31:27.830 --> 02:31:27.840 align:start position:0%
and polish improvements needed to make
 

02:31:27.840 --> 02:31:30.310 align:start position:0%
and polish improvements needed to make
the<02:31:27.960><c> current</c><02:31:28.440><c> workflow</c><02:31:29.120><c> feel</c><02:31:29.560><c> credible.</c>

02:31:30.310 --> 02:31:30.320 align:start position:0%
the current workflow feel credible.
 

02:31:30.320 --> 02:31:32.830 align:start position:0%
the current workflow feel credible.
Let's<02:31:30.840><c> jump</c><02:31:31.160><c> into</c><02:31:31.520><c> plan</c><02:31:31.880><c> mode.</c><02:31:32.320><c> Right</c><02:31:32.520><c> away,</c>

02:31:32.830 --> 02:31:32.840 align:start position:0%
Let's jump into plan mode. Right away,
 

02:31:32.840 --> 02:31:35.910 align:start position:0%
Let's jump into plan mode. Right away,
it<02:31:33.000><c> tells</c><02:31:33.320><c> us</c><02:31:33.480><c> that</c><02:31:33.880><c> I</c><02:31:34.080><c> see</c><02:31:34.480><c> a</c><02:31:34.600><c> few</c><02:31:35.160><c> concrete</c>

02:31:35.910 --> 02:31:35.920 align:start position:0%
it tells us that I see a few concrete
 

02:31:35.920 --> 02:31:38.510 align:start position:0%
it tells us that I see a few concrete
polish<02:31:36.520><c> fix</c><02:31:36.920><c> candidates</c><02:31:37.600><c> already</c><02:31:38.200><c> and</c><02:31:38.360><c> it</c>

02:31:38.510 --> 02:31:38.520 align:start position:0%
polish fix candidates already and it
 

02:31:38.520 --> 02:31:41.150 align:start position:0%
polish fix candidates already and it
lists<02:31:38.920><c> some</c><02:31:39.240><c> here,</c><02:31:39.680><c> okay?</c><02:31:40.200><c> And</c><02:31:40.400><c> so,</c><02:31:40.600><c> the</c><02:31:40.760><c> build</c>

02:31:41.150 --> 02:31:41.160 align:start position:0%
lists some here, okay? And so, the build
 

02:31:41.160 --> 02:31:43.390 align:start position:0%
lists some here, okay? And so, the build
passes<02:31:41.680><c> and</c><02:31:41.840><c> both</c><02:31:42.120><c> local</c><02:31:42.480><c> servers</c><02:31:43.160><c> are</c>

02:31:43.390 --> 02:31:43.400 align:start position:0%
passes and both local servers are
 

02:31:43.400 --> 02:31:45.430 align:start position:0%
passes and both local servers are
responding.<02:31:44.280><c> So,</c><02:31:44.400><c> it's</c><02:31:44.560><c> using</c><02:31:44.880><c> an</c><02:31:45.080><c> in-app</c>

02:31:45.430 --> 02:31:45.440 align:start position:0%
responding. So, it's using an in-app
 

02:31:45.440 --> 02:31:48.150 align:start position:0%
responding. So, it's using an in-app
browser<02:31:46.000><c> now</c><02:31:46.200><c> for</c><02:31:46.520><c> a</c><02:31:46.640><c> quick</c><02:31:47.000><c> workflow</c><02:31:47.560><c> probe.</c>

02:31:48.150 --> 02:31:48.160 align:start position:0%
browser now for a quick workflow probe.
 

02:31:48.160 --> 02:31:50.990 align:start position:0%
browser now for a quick workflow probe.
So,<02:31:48.240><c> the</c><02:31:48.400><c> plan</c><02:31:48.760><c> targets</c><02:31:49.320><c> actual</c><02:31:49.960><c> UI</c><02:31:50.360><c> issues</c>

02:31:50.990 --> 02:31:51.000 align:start position:0%
So, the plan targets actual UI issues
 

02:31:51.000 --> 02:31:53.670 align:start position:0%
So, the plan targets actual UI issues
rather<02:31:51.640><c> than</c><02:31:52.120><c> guesses,</c><02:31:52.920><c> okay?</c><02:31:53.240><c> So,</c><02:31:53.400><c> let's</c>

02:31:53.670 --> 02:31:53.680 align:start position:0%
rather than guesses, okay? So, let's
 

02:31:53.680 --> 02:31:55.790 align:start position:0%
rather than guesses, okay? So, let's
wait<02:31:53.920><c> to</c><02:31:54.040><c> see</c><02:31:54.240><c> what</c><02:31:54.360><c> it</c><02:31:54.480><c> finds.</c><02:31:55.080><c> And</c><02:31:55.400><c> this</c><02:31:55.640><c> is</c>

02:31:55.790 --> 02:31:55.800 align:start position:0%
wait to see what it finds. And this is
 

02:31:55.800 --> 02:31:58.150 align:start position:0%
wait to see what it finds. And this is
the<02:31:55.920><c> plan</c><02:31:56.200><c> that</c><02:31:56.320><c> it</c><02:31:56.440><c> came</c><02:31:56.720><c> up</c><02:31:56.920><c> with.</c><02:31:57.720><c> Tighten</c>

02:31:58.150 --> 02:31:58.160 align:start position:0%
the plan that it came up with. Tighten
 

02:31:58.160 --> 02:32:01.110 align:start position:0%
the plan that it came up with. Tighten
the<02:31:58.240><c> existing</c><02:31:58.800><c> customer</c><02:31:59.680><c> helper</c><02:32:00.240><c> Convex</c><02:32:00.920><c> and</c>

02:32:01.110 --> 02:32:01.120 align:start position:0%
the existing customer helper Convex and
 

02:32:01.120 --> 02:32:03.470 align:start position:0%
the existing customer helper Convex and
demo<02:32:01.560><c> app</c><02:32:01.880><c> workflows</c><02:32:02.520><c> without</c><02:32:02.880><c> adding</c><02:32:03.240><c> new</c>

02:32:03.470 --> 02:32:03.480 align:start position:0%
demo app workflows without adding new
 

02:32:03.480 --> 02:32:05.510 align:start position:0%
demo app workflows without adding new
product<02:32:03.920><c> scope,</c><02:32:04.400><c> okay?</c><02:32:04.840><c> So,</c><02:32:04.960><c> it</c><02:32:05.120><c> lists</c><02:32:05.440><c> a</c>

02:32:05.510 --> 02:32:05.520 align:start position:0%
product scope, okay? So, it lists a
 

02:32:05.520 --> 02:32:08.430 align:start position:0%
product scope, okay? So, it lists a
bunch<02:32:05.800><c> of</c><02:32:05.920><c> things</c><02:32:06.560><c> and</c><02:32:07.320><c> we</c><02:32:07.440><c> want</c><02:32:07.680><c> to</c><02:32:08.040><c> quickly</c>

02:32:08.430 --> 02:32:08.440 align:start position:0%
bunch of things and we want to quickly
 

02:32:08.440 --> 02:32:10.990 align:start position:0%
bunch of things and we want to quickly
scan<02:32:08.960><c> assumptions.</c><02:32:09.840><c> No</c><02:32:10.120><c> new</c><02:32:10.320><c> marketplace</c>

02:32:10.990 --> 02:32:11.000 align:start position:0%
scan assumptions. No new marketplace
 

02:32:11.000 --> 02:32:13.070 align:start position:0%
scan assumptions. No new marketplace
features<02:32:11.520><c> will</c><02:32:11.680><c> be</c><02:32:11.840><c> added,</c><02:32:12.320><c> no</c><02:32:12.520><c> payments,</c>

02:32:13.070 --> 02:32:13.080 align:start position:0%
features will be added, no payments,
 

02:32:13.080 --> 02:32:16.310 align:start position:0%
features will be added, no payments,
nothing,<02:32:13.760><c> okay?</c><02:32:14.200><c> That</c><02:32:14.520><c> stays</c><02:32:15.320><c> and</c><02:32:16.040><c> here's</c>

02:32:16.310 --> 02:32:16.320 align:start position:0%
nothing, okay? That stays and here's
 

02:32:16.320 --> 02:32:18.550 align:start position:0%
nothing, okay? That stays and here's
some<02:32:16.520><c> key</c><02:32:16.800><c> changes.</c><02:32:17.640><c> You</c><02:32:17.720><c> can</c><02:32:17.840><c> kind</c><02:32:18.120><c> of</c><02:32:18.200><c> scan</c>

02:32:18.550 --> 02:32:18.560 align:start position:0%
some key changes. You can kind of scan
 

02:32:18.560 --> 02:32:20.230 align:start position:0%
some key changes. You can kind of scan
through<02:32:18.800><c> that.</c><02:32:19.200><c> Let's</c><02:32:19.400><c> go</c><02:32:19.520><c> ahead</c><02:32:19.720><c> and</c><02:32:19.800><c> submit</c>

02:32:20.230 --> 02:32:20.240 align:start position:0%
through that. Let's go ahead and submit
 

02:32:20.240 --> 02:32:22.270 align:start position:0%
through that. Let's go ahead and submit
this.<02:32:20.640><c> Right,</c><02:32:20.880><c> so</c><02:32:21.040><c> it</c><02:32:21.200><c> is</c><02:32:21.400><c> done</c><02:32:21.800><c> and</c><02:32:22.000><c> it</c><02:32:22.040><c> has</c>

02:32:22.270 --> 02:32:22.280 align:start position:0%
this. Right, so it is done and it has
 

02:32:22.280 --> 02:32:25.430 align:start position:0%
this. Right, so it is done and it has
implemented<02:32:23.040><c> the</c><02:32:23.160><c> debug</c><02:32:23.960><c> polish</c><02:32:24.640><c> task.</c><02:32:25.280><c> And</c>

02:32:25.430 --> 02:32:25.440 align:start position:0%
implemented the debug polish task. And
 

02:32:25.440 --> 02:32:27.310 align:start position:0%
implemented the debug polish task. And
it<02:32:25.600><c> actually</c><02:32:26.040><c> fixed</c><02:32:26.360><c> a</c><02:32:26.440><c> lot</c><02:32:26.720><c> of</c><02:32:26.840><c> interesting</c>

02:32:27.310 --> 02:32:27.320 align:start position:0%
it actually fixed a lot of interesting
 

02:32:27.320 --> 02:32:29.950 align:start position:0%
it actually fixed a lot of interesting
things.<02:32:27.800><c> It</c><02:32:27.960><c> fixed</c><02:32:28.240><c> some</c><02:32:28.440><c> placeholders,</c><02:32:29.800><c> it</c>

02:32:29.950 --> 02:32:29.960 align:start position:0%
things. It fixed some placeholders, it
 

02:32:29.960 --> 02:32:32.270 align:start position:0%
things. It fixed some placeholders, it
did<02:32:30.200><c> some</c><02:32:30.480><c> testing,</c><02:32:31.520><c> it</c><02:32:31.760><c> switched</c><02:32:32.200><c> to</c>

02:32:32.270 --> 02:32:32.280 align:start position:0%
did some testing, it switched to
 

02:32:32.280 --> 02:32:34.830 align:start position:0%
did some testing, it switched to
different<02:32:32.680><c> accounts,</c><02:32:33.800><c> actually</c><02:32:34.320><c> cleaned</c><02:32:34.680><c> up</c>

02:32:34.830 --> 02:32:34.840 align:start position:0%
different accounts, actually cleaned up
 

02:32:34.840 --> 02:32:36.630 align:start position:0%
different accounts, actually cleaned up
a<02:32:34.880><c> lot</c><02:32:35.120><c> of</c><02:32:35.240><c> cool</c><02:32:35.440><c> stuff.</c><02:32:36.000><c> So,</c><02:32:36.120><c> if</c><02:32:36.200><c> we</c><02:32:36.280><c> take</c><02:32:36.600><c> a</c>

02:32:36.630 --> 02:32:36.640 align:start position:0%
a lot of cool stuff. So, if we take a
 

02:32:36.640 --> 02:32:39.030 align:start position:0%
a lot of cool stuff. So, if we take a
look<02:32:36.880><c> here,</c><02:32:37.400><c> we</c><02:32:37.520><c> can</c><02:32:37.720><c> see</c><02:32:37.920><c> that</c><02:32:38.120><c> we</c><02:32:38.240><c> can</c><02:32:38.480><c> book,</c>

02:32:39.030 --> 02:32:39.040 align:start position:0%
look here, we can see that we can book,
 

02:32:39.040 --> 02:32:41.230 align:start position:0%
look here, we can see that we can book,
we<02:32:39.120><c> can</c><02:32:39.320><c> request</c><02:32:39.880><c> a</c><02:32:39.960><c> book,</c><02:32:40.440><c> we</c><02:32:40.520><c> can</c><02:32:40.720><c> describe</c>

02:32:41.230 --> 02:32:41.240 align:start position:0%
we can request a book, we can describe
 

02:32:41.240 --> 02:32:44.110 align:start position:0%
we can request a book, we can describe
the<02:32:41.400><c> task,</c><02:32:42.240><c> we</c><02:32:42.320><c> can</c><02:32:42.520><c> fill</c><02:32:42.800><c> all</c><02:32:43.000><c> of</c><02:32:43.120><c> this</c><02:32:43.440><c> out,</c>

02:32:44.110 --> 02:32:44.120 align:start position:0%
the task, we can fill all of this out,
 

02:32:44.120 --> 02:32:47.430 align:start position:0%
the task, we can fill all of this out,
send,<02:32:44.800><c> add</c><02:32:45.040><c> the</c><02:32:45.160><c> preferred</c><02:32:45.680><c> date,</c><02:32:46.320><c> and</c><02:32:47.080><c> now</c>

02:32:47.430 --> 02:32:47.440 align:start position:0%
send, add the preferred date, and now
 

02:32:47.440 --> 02:32:49.430 align:start position:0%
send, add the preferred date, and now
it's<02:32:47.680><c> showing</c><02:32:48.080><c> in</c><02:32:48.240><c> that</c><02:32:48.440><c> I'm</c><02:32:48.600><c> signed</c><02:32:49.080><c> in</c><02:32:49.200><c> as</c>

02:32:49.430 --> 02:32:49.440 align:start position:0%
it's showing in that I'm signed in as
 

02:32:49.440 --> 02:32:51.310 align:start position:0%
it's showing in that I'm signed in as
the<02:32:49.560><c> customer,</c><02:32:50.320><c> right?</c><02:32:50.600><c> And</c><02:32:50.720><c> I</c><02:32:50.800><c> can</c><02:32:50.960><c> switch</c><02:32:51.280><c> a</c>

02:32:51.310 --> 02:32:51.320 align:start position:0%
the customer, right? And I can switch a
 

02:32:51.320 --> 02:32:53.510 align:start position:0%
the customer, right? And I can switch a
demo<02:32:51.640><c> user.</c><02:32:52.240><c> Now,</c><02:32:52.520><c> I'm</c><02:32:52.680><c> signed</c><02:32:53.120><c> in</c><02:32:53.240><c> as</c><02:32:53.400><c> the</c>

02:32:53.510 --> 02:32:53.520 align:start position:0%
demo user. Now, I'm signed in as the
 

02:32:53.520 --> 02:32:55.870 align:start position:0%
demo user. Now, I'm signed in as the
helper<02:32:54.120><c> and</c><02:32:54.240><c> now</c><02:32:54.480><c> I'm</c><02:32:54.640><c> signed</c><02:32:55.040><c> in</c><02:32:55.160><c> as</c><02:32:55.360><c> both.</c>

02:32:55.870 --> 02:32:55.880 align:start position:0%
helper and now I'm signed in as both.
 

02:32:55.880 --> 02:32:57.910 align:start position:0%
helper and now I'm signed in as both.
Customer<02:32:56.400><c> access,</c><02:32:56.760><c> choose</c><02:32:57.040><c> a</c><02:32:57.120><c> customer</c><02:32:57.600><c> demo</c>

02:32:57.910 --> 02:32:57.920 align:start position:0%
Customer access, choose a customer demo
 

02:32:57.920 --> 02:33:00.510 align:start position:0%
Customer access, choose a customer demo
user<02:32:58.320><c> to</c><02:32:58.440><c> create</c><02:32:58.880><c> a</c><02:32:59.000><c> booking</c><02:32:59.400><c> request.</c><02:33:00.160><c> So,</c>

02:33:00.510 --> 02:33:00.520 align:start position:0%
user to create a booking request. So,
 

02:33:00.520 --> 02:33:03.870 align:start position:0%
user to create a booking request. So,
it's<02:33:00.800><c> coming</c><02:33:01.240><c> along</c><02:33:01.880><c> really,</c><02:33:02.400><c> really</c><02:33:03.040><c> nicely.</c>

02:33:03.870 --> 02:33:03.880 align:start position:0%
it's coming along really, really nicely.
 

02:33:03.880 --> 02:33:06.670 align:start position:0%
it's coming along really, really nicely.
And<02:33:04.040><c> the</c><02:33:04.120><c> final</c><02:33:04.640><c> build</c><02:33:05.040><c> step</c><02:33:05.480><c> is</c><02:33:05.680><c> deployment.</c>

02:33:06.670 --> 02:33:06.680 align:start position:0%
And the final build step is deployment.
 

02:33:06.680 --> 02:33:09.190 align:start position:0%
And the final build step is deployment.
The<02:33:06.840><c> app</c><02:33:07.160><c> is</c><02:33:07.320><c> not</c><02:33:07.640><c> done</c><02:33:08.120><c> until</c><02:33:08.560><c> the</c><02:33:08.680><c> front</c><02:33:09.040><c> end</c>

02:33:09.190 --> 02:33:09.200 align:start position:0%
The app is not done until the front end
 

02:33:09.200 --> 02:33:11.110 align:start position:0%
The app is not done until the front end
is<02:33:09.400><c> live,</c><02:33:09.960><c> connected</c><02:33:10.440><c> to</c><02:33:10.520><c> the</c><02:33:10.640><c> intended</c>

02:33:11.110 --> 02:33:11.120 align:start position:0%
is live, connected to the intended
 

02:33:11.120 --> 02:33:13.790 align:start position:0%
is live, connected to the intended
Convex<02:33:11.680><c> back</c><02:33:12.080><c> end,</c><02:33:12.440><c> and</c><02:33:12.640><c> smoke</c><02:33:13.240><c> tested</c>

02:33:13.790 --> 02:33:13.800 align:start position:0%
Convex back end, and smoke tested
 

02:33:13.800 --> 02:33:16.390 align:start position:0%
Convex back end, and smoke tested
through<02:33:14.000><c> the</c><02:33:14.200><c> real</c><02:33:14.800><c> product</c><02:33:15.440><c> workflow.</c><02:33:16.200><c> So,</c>

02:33:16.390 --> 02:33:16.400 align:start position:0%
through the real product workflow. So,
 

02:33:16.400 --> 02:33:18.350 align:start position:0%
through the real product workflow. So,
let's<02:33:16.600><c> go</c><02:33:16.720><c> ahead</c><02:33:17.000><c> and</c><02:33:17.120><c> grab</c><02:33:17.480><c> this</c><02:33:17.720><c> prompt</c><02:33:18.160><c> and</c>

02:33:18.350 --> 02:33:18.360 align:start position:0%
let's go ahead and grab this prompt and
 

02:33:18.360 --> 02:33:20.510 align:start position:0%
let's go ahead and grab this prompt and
let's<02:33:18.560><c> go</c><02:33:18.680><c> ahead</c><02:33:18.840><c> and</c><02:33:18.960><c> paste</c><02:33:19.320><c> it.</c><02:33:19.600><c> So,</c><02:33:19.960><c> deploy</c>

02:33:20.510 --> 02:33:20.520 align:start position:0%
let's go ahead and paste it. So, deploy
 

02:33:20.520 --> 02:33:23.550 align:start position:0%
let's go ahead and paste it. So, deploy
the<02:33:20.680><c> existing</c><02:33:21.200><c> Flex</c><02:33:21.600><c> app</c><02:33:22.520><c> with</c><02:33:22.720><c> Vercel</c><02:33:23.360><c> and</c>

02:33:23.550 --> 02:33:23.560 align:start position:0%
the existing Flex app with Vercel and
 

02:33:23.560 --> 02:33:26.870 align:start position:0%
the existing Flex app with Vercel and
smoke<02:33:24.040><c> test</c><02:33:24.520><c> the</c><02:33:24.680><c> connected</c><02:33:25.480><c> Convex</c><02:33:26.320><c> backend,</c>

02:33:26.870 --> 02:33:26.880 align:start position:0%
smoke test the connected Convex backend,
 

02:33:26.880 --> 02:33:28.870 align:start position:0%
smoke test the connected Convex backend,
okay?<02:33:27.200><c> We're</c><02:33:27.360><c> going</c><02:33:27.480><c> to</c><02:33:27.600><c> jump</c><02:33:27.920><c> into</c><02:33:28.200><c> plan</c><02:33:28.560><c> mode</c>

02:33:28.870 --> 02:33:28.880 align:start position:0%
okay? We're going to jump into plan mode
 

02:33:28.880 --> 02:33:30.950 align:start position:0%
okay? We're going to jump into plan mode
so<02:33:29.000><c> that</c><02:33:29.200><c> it</c><02:33:29.280><c> can</c><02:33:29.440><c> prepare</c><02:33:30.000><c> everything,</c><02:33:30.600><c> plan</c>

02:33:30.950 --> 02:33:30.960 align:start position:0%
so that it can prepare everything, plan
 

02:33:30.960 --> 02:33:32.590 align:start position:0%
so that it can prepare everything, plan
everything<02:33:31.400><c> out.</c><02:33:31.680><c> One</c><02:33:31.880><c> thing</c><02:33:32.080><c> that</c><02:33:32.240><c> I</c><02:33:32.280><c> want</c><02:33:32.480><c> to</c>

02:33:32.590 --> 02:33:32.600 align:start position:0%
everything out. One thing that I want to
 

02:33:32.600 --> 02:33:34.390 align:start position:0%
everything out. One thing that I want to
tell<02:33:33.000><c> it</c><02:33:33.120><c> that</c><02:33:33.280><c> I</c><02:33:33.360><c> didn't</c><02:33:33.760><c> tell</c><02:33:34.080><c> it,</c><02:33:34.200><c> and</c><02:33:34.320><c> I'm</c>

02:33:34.390 --> 02:33:34.400 align:start position:0%
tell it that I didn't tell it, and I'm
 

02:33:34.400 --> 02:33:36.070 align:start position:0%
tell it that I didn't tell it, and I'm
going<02:33:34.560><c> to</c><02:33:34.640><c> do</c><02:33:34.760><c> that</c><02:33:34.920><c> right</c><02:33:35.200><c> now,</c><02:33:35.520><c> is</c><02:33:35.720><c> I</c><02:33:35.800><c> want</c><02:33:36.000><c> to</c>

02:33:36.070 --> 02:33:36.080 align:start position:0%
going to do that right now, is I want to
 

02:33:36.080 --> 02:33:38.230 align:start position:0%
going to do that right now, is I want to
make<02:33:36.240><c> sure</c><02:33:36.440><c> it</c><02:33:36.600><c> uses</c><02:33:36.960><c> the</c><02:33:37.080><c> Vercel</c><02:33:37.520><c> package.</c>

02:33:38.230 --> 02:33:38.240 align:start position:0%
make sure it uses the Vercel package.
 

02:33:38.240 --> 02:33:41.510 align:start position:0%
make sure it uses the Vercel package.
Use<02:33:38.640><c> the</c><02:33:38.800><c> Vercel</c><02:33:39.720><c> Vercel</c><02:33:40.520><c> plugin.</c><02:33:41.280><c> And</c><02:33:41.400><c> I'm</c>

02:33:41.510 --> 02:33:41.520 align:start position:0%
Use the Vercel Vercel plugin. And I'm
 

02:33:41.520 --> 02:33:44.070 align:start position:0%
Use the Vercel Vercel plugin. And I'm
going<02:33:41.640><c> to</c><02:33:41.720><c> press</c><02:33:42.040><c> command</c><02:33:42.880><c> enter</c><02:33:43.560><c> so</c><02:33:43.680><c> that</c><02:33:43.920><c> it</c>

02:33:44.070 --> 02:33:44.080 align:start position:0%
going to press command enter so that it
 

02:33:44.080 --> 02:33:46.750 align:start position:0%
going to press command enter so that it
steers<02:33:44.600><c> the</c><02:33:44.680><c> conversation</c><02:33:45.640><c> because</c><02:33:46.040><c> we</c><02:33:46.200><c> want</c>

02:33:46.750 --> 02:33:46.760 align:start position:0%
steers the conversation because we want
 

02:33:46.760 --> 02:33:49.510 align:start position:0%
steers the conversation because we want
the<02:33:46.920><c> model</c><02:33:47.640><c> to</c><02:33:47.800><c> ensure</c><02:33:48.480><c> that</c><02:33:48.800><c> it</c><02:33:49.000><c> catches</c>

02:33:49.510 --> 02:33:49.520 align:start position:0%
the model to ensure that it catches
 

02:33:49.520 --> 02:33:50.950 align:start position:0%
the model to ensure that it catches
that,<02:33:49.840><c> right?</c><02:33:50.240><c> That</c><02:33:50.400><c> we</c><02:33:50.520><c> want</c><02:33:50.720><c> to</c><02:33:50.760><c> use</c><02:33:50.880><c> the</c>

02:33:50.950 --> 02:33:50.960 align:start position:0%
that, right? That we want to use the
 

02:33:50.960 --> 02:33:53.790 align:start position:0%
that, right? That we want to use the
Vercel<02:33:51.480><c> plugin.</c><02:33:52.160><c> Which</c><02:33:52.520><c> Convex</c><02:33:53.080><c> environment</c>

02:33:53.790 --> 02:33:53.800 align:start position:0%
Vercel plugin. Which Convex environment
 

02:33:53.800 --> 02:33:55.750 align:start position:0%
Vercel plugin. Which Convex environment
should<02:33:53.960><c> the</c><02:33:54.040><c> deployed</c><02:33:54.600><c> Vercel</c><02:33:55.080><c> app</c><02:33:55.400><c> use</c><02:33:55.640><c> for</c>

02:33:55.750 --> 02:33:55.760 align:start position:0%
should the deployed Vercel app use for
 

02:33:55.760 --> 02:33:56.950 align:start position:0%
should the deployed Vercel app use for
the<02:33:55.880><c> smoke</c><02:33:56.280><c> test?</c><02:33:56.520><c> We</c><02:33:56.600><c> want</c><02:33:56.760><c> to</c><02:33:56.840><c> use</c>

02:33:56.950 --> 02:33:56.960 align:start position:0%
the smoke test? We want to use
 

02:33:56.960 --> 02:33:59.310 align:start position:0%
the smoke test? We want to use
production.<02:33:57.800><c> And</c><02:33:58.040><c> where</c><02:33:58.640><c> should</c><02:33:58.880><c> the</c><02:33:59.000><c> front</c>

02:33:59.310 --> 02:33:59.320 align:start position:0%
production. And where should the front
 

02:33:59.320 --> 02:34:01.710 align:start position:0%
production. And where should the front
end<02:33:59.440><c> be</c><02:33:59.560><c> deployed?</c><02:34:00.120><c> New</c><02:34:00.440><c> personal</c><02:34:00.960><c> project.</c>

02:34:01.710 --> 02:34:01.720 align:start position:0%
end be deployed? New personal project.
 

02:34:01.720 --> 02:34:04.190 align:start position:0%
end be deployed? New personal project.
Exactly.<02:34:02.440><c> This</c><02:34:02.640><c> is</c><02:34:02.800><c> a</c><02:34:02.880><c> brand</c><02:34:03.200><c> new</c><02:34:03.360><c> project.</c><02:34:04.080><c> We</c>

02:34:04.190 --> 02:34:04.200 align:start position:0%
Exactly. This is a brand new project. We
 

02:34:04.200 --> 02:34:05.910 align:start position:0%
Exactly. This is a brand new project. We
already<02:34:04.440><c> have</c><02:34:04.680><c> a</c><02:34:04.720><c> bunch</c><02:34:05.000><c> of</c><02:34:05.080><c> projects,</c><02:34:05.680><c> right?</c>

02:34:05.910 --> 02:34:05.920 align:start position:0%
already have a bunch of projects, right?
 

02:34:05.920 --> 02:34:07.870 align:start position:0%
already have a bunch of projects, right?
So,<02:34:06.000><c> if</c><02:34:06.120><c> we</c><02:34:06.200><c> go</c><02:34:06.360><c> over</c><02:34:06.600><c> here,</c><02:34:07.200><c> we</c><02:34:07.400><c> have</c><02:34:07.640><c> this</c>

02:34:07.870 --> 02:34:07.880 align:start position:0%
So, if we go over here, we have this
 

02:34:07.880 --> 02:34:09.550 align:start position:0%
So, if we go over here, we have this
project.<02:34:08.600><c> Actually,</c><02:34:08.920><c> we</c><02:34:09.040><c> should</c><02:34:09.200><c> have</c><02:34:09.320><c> used</c>

02:34:09.550 --> 02:34:09.560 align:start position:0%
project. Actually, we should have used
 

02:34:09.560 --> 02:34:10.990 align:start position:0%
project. Actually, we should have used
the<02:34:09.640><c> existing</c><02:34:10.080><c> project.</c><02:34:10.520><c> We</c><02:34:10.560><c> already</c><02:34:10.800><c> have</c>

02:34:10.990 --> 02:34:11.000 align:start position:0%
the existing project. We already have
 

02:34:11.000 --> 02:34:12.310 align:start position:0%
the existing project. We already have
this<02:34:11.160><c> project,</c><02:34:11.600><c> but</c><02:34:11.720><c> I</c><02:34:11.800><c> think</c><02:34:12.000><c> it's</c><02:34:12.120><c> going</c><02:34:12.240><c> to</c>

02:34:12.310 --> 02:34:12.320 align:start position:0%
this project, but I think it's going to
 

02:34:12.320 --> 02:34:14.350 align:start position:0%
this project, but I think it's going to
create<02:34:12.640><c> a</c><02:34:12.680><c> new</c><02:34:12.880><c> project.</c><02:34:13.640><c> Let's</c><02:34:13.840><c> see</c><02:34:13.960><c> if</c><02:34:14.160><c> we</c>

02:34:14.350 --> 02:34:14.360 align:start position:0%
create a new project. Let's see if we
 

02:34:14.360 --> 02:34:17.310 align:start position:0%
create a new project. Let's see if we
can<02:34:15.000><c> tell</c><02:34:15.360><c> it.</c><02:34:15.840><c> I'm</c><02:34:15.960><c> going</c><02:34:16.080><c> to</c><02:34:16.200><c> copy</c><02:34:16.600><c> that.</c><02:34:17.200><c> See</c>

02:34:17.310 --> 02:34:17.320 align:start position:0%
can tell it. I'm going to copy that. See
 

02:34:17.320 --> 02:34:18.990 align:start position:0%
can tell it. I'm going to copy that. See
if<02:34:17.440><c> we</c><02:34:17.520><c> can</c><02:34:17.680><c> use</c><02:34:17.880><c> the</c><02:34:17.960><c> existing</c><02:34:18.400><c> project.</c><02:34:18.880><c> No</c>

02:34:18.990 --> 02:34:19.000 align:start position:0%
if we can use the existing project. No
 

02:34:19.000 --> 02:34:21.190 align:start position:0%
if we can use the existing project. No
need<02:34:19.240><c> to</c><02:34:19.360><c> create</c><02:34:19.680><c> a</c><02:34:19.760><c> new</c><02:34:20.040><c> project.</c><02:34:20.680><c> And</c><02:34:20.920><c> let</c><02:34:21.040><c> me</c>

02:34:21.190 --> 02:34:21.200 align:start position:0%
need to create a new project. And let me
 

02:34:21.200 --> 02:34:23.070 align:start position:0%
need to create a new project. And let me
check.<02:34:21.640><c> So,</c><02:34:21.800><c> this</c><02:34:22.040><c> is</c><02:34:22.160><c> actually</c><02:34:22.520><c> plan</c><02:34:22.840><c> mode,</c>

02:34:23.070 --> 02:34:23.080 align:start position:0%
check. So, this is actually plan mode,
 

02:34:23.080 --> 02:34:26.070 align:start position:0%
check. So, this is actually plan mode,
so<02:34:23.200><c> we're</c><02:34:23.360><c> okay.</c><02:34:23.920><c> Okay,</c><02:34:24.360><c> implement</c><02:34:25.000><c> this.</c><02:34:25.520><c> And</c>

02:34:26.070 --> 02:34:26.080 align:start position:0%
so we're okay. Okay, implement this. And
 

02:34:26.080 --> 02:34:27.990 align:start position:0%
so we're okay. Okay, implement this. And
here<02:34:26.520><c> it's</c><02:34:26.640><c> going</c><02:34:26.800><c> to</c><02:34:26.880><c> create</c><02:34:27.200><c> a</c><02:34:27.320><c> production.</c>

02:34:27.990 --> 02:34:28.000 align:start position:0%
here it's going to create a production.
 

02:34:28.000 --> 02:34:29.950 align:start position:0%
here it's going to create a production.
So,<02:34:28.120><c> if</c><02:34:28.240><c> we</c><02:34:28.320><c> go</c><02:34:28.480><c> over</c><02:34:28.760><c> here,</c><02:34:29.360><c> remember</c><02:34:29.760><c> we're</c>

02:34:29.950 --> 02:34:29.960 align:start position:0%
So, if we go over here, remember we're
 

02:34:29.960 --> 02:34:32.230 align:start position:0%
So, if we go over here, remember we're
using<02:34:30.440><c> this.</c><02:34:30.880><c> We</c><02:34:31.000><c> also</c><02:34:31.320><c> have</c><02:34:31.520><c> a</c><02:34:31.640><c> production</c>

02:34:32.230 --> 02:34:32.240 align:start position:0%
using this. We also have a production
 

02:34:32.240 --> 02:34:34.030 align:start position:0%
using this. We also have a production
deployment<02:34:32.840><c> set</c><02:34:33.160><c> up.</c><02:34:33.520><c> So,</c><02:34:33.600><c> it's</c><02:34:33.720><c> going</c><02:34:33.840><c> to</c><02:34:33.920><c> be</c>

02:34:34.030 --> 02:34:34.040 align:start position:0%
deployment set up. So, it's going to be
 

02:34:34.040 --> 02:34:35.750 align:start position:0%
deployment set up. So, it's going to be
using<02:34:34.320><c> the</c><02:34:34.440><c> production</c><02:34:34.960><c> deployment.</c><02:34:35.520><c> So,</c><02:34:35.640><c> we</c>

02:34:35.750 --> 02:34:35.760 align:start position:0%
using the production deployment. So, we
 

02:34:35.760 --> 02:34:37.990 align:start position:0%
using the production deployment. So, we
should<02:34:35.920><c> see</c><02:34:36.120><c> data</c><02:34:36.640><c> and</c><02:34:36.800><c> tables</c><02:34:37.320><c> and</c><02:34:37.480><c> functions</c>

02:34:37.990 --> 02:34:38.000 align:start position:0%
should see data and tables and functions
 

02:34:38.000 --> 02:34:39.870 align:start position:0%
should see data and tables and functions
and<02:34:38.120><c> all</c><02:34:38.240><c> that</c><02:34:38.440><c> good</c><02:34:38.640><c> stuff</c><02:34:39.160><c> as</c><02:34:39.360><c> part</c><02:34:39.600><c> of</c><02:34:39.720><c> this</c>

02:34:39.870 --> 02:34:39.880 align:start position:0%
and all that good stuff as part of this
 

02:34:39.880 --> 02:34:41.950 align:start position:0%
and all that good stuff as part of this
deployment.<02:34:40.520><c> Production</c><02:34:41.080><c> Convex</c><02:34:41.640><c> is</c><02:34:41.760><c> now</c>

02:34:41.950 --> 02:34:41.960 align:start position:0%
deployment. Production Convex is now
 

02:34:41.960 --> 02:34:44.310 align:start position:0%
deployment. Production Convex is now
seeded<02:34:42.480><c> and</c><02:34:42.640><c> responding</c><02:34:43.320><c> with</c><02:34:43.600><c> services</c><02:34:44.200><c> and</c>

02:34:44.310 --> 02:34:44.320 align:start position:0%
seeded and responding with services and
 

02:34:44.320 --> 02:34:46.630 align:start position:0%
seeded and responding with services and
demo<02:34:44.600><c> users.</c><02:34:45.280><c> So,</c><02:34:45.400><c> if</c><02:34:45.480><c> you</c><02:34:45.600><c> go</c><02:34:45.760><c> over</c><02:34:46.000><c> here,</c><02:34:46.480><c> we</c>

02:34:46.630 --> 02:34:46.640 align:start position:0%
demo users. So, if you go over here, we
 

02:34:46.640 --> 02:34:48.030 align:start position:0%
demo users. So, if you go over here, we
have<02:34:46.800><c> everything</c><02:34:47.200><c> now.</c><02:34:47.400><c> Look</c><02:34:47.560><c> at</c><02:34:47.640><c> this.</c>

02:34:48.030 --> 02:34:48.040 align:start position:0%
have everything now. Look at this.
 

02:34:48.040 --> 02:34:50.790 align:start position:0%
have everything now. Look at this.
Sessions,<02:34:48.880><c> services.</c><02:34:50.000><c> We</c><02:34:50.120><c> have</c><02:34:50.320><c> the</c><02:34:50.440><c> data.</c>

02:34:50.790 --> 02:34:50.800 align:start position:0%
Sessions, services. We have the data.
 

02:34:50.800 --> 02:34:52.550 align:start position:0%
Sessions, services. We have the data.
All<02:34:50.840><c> right,</c><02:34:51.000><c> so</c><02:34:51.120><c> looks</c><02:34:51.360><c> like</c><02:34:51.520><c> it</c><02:34:51.640><c> has</c><02:34:51.960><c> deployed</c>

02:34:52.550 --> 02:34:52.560 align:start position:0%
All right, so looks like it has deployed
 

02:34:52.560 --> 02:34:54.670 align:start position:0%
All right, so looks like it has deployed
it,<02:34:52.920><c> and</c><02:34:53.040><c> now</c><02:34:53.240><c> it's</c><02:34:53.440><c> doing</c><02:34:53.720><c> a</c><02:34:53.760><c> couple</c><02:34:54.120><c> of</c><02:34:54.240><c> smoke</c>

02:34:54.670 --> 02:34:54.680 align:start position:0%
it, and now it's doing a couple of smoke
 

02:34:54.680 --> 02:34:57.230 align:start position:0%
it, and now it's doing a couple of smoke
tests<02:34:55.360><c> to</c><02:34:55.480><c> make</c><02:34:55.720><c> sure</c><02:34:55.920><c> that</c><02:34:56.160><c> everything</c><02:34:56.760><c> works</c>

02:34:57.230 --> 02:34:57.240 align:start position:0%
tests to make sure that everything works
 

02:34:57.240 --> 02:34:59.270 align:start position:0%
tests to make sure that everything works
in<02:34:57.440><c> production</c><02:34:58.320><c> because</c><02:34:58.680><c> now</c><02:34:58.960><c> it's</c><02:34:59.160><c> in</c>

02:34:59.270 --> 02:34:59.280 align:start position:0%
in production because now it's in
 

02:34:59.280 --> 02:35:01.750 align:start position:0%
in production because now it's in
production<02:34:59.840><c> and</c><02:34:59.960><c> it's</c><02:35:00.120><c> also</c><02:35:00.880><c> using</c><02:35:01.480><c> the</c>

02:35:01.750 --> 02:35:01.760 align:start position:0%
production and it's also using the
 

02:35:01.760 --> 02:35:04.750 align:start position:0%
production and it's also using the
production<02:35:02.680><c> Convex</c><02:35:03.560><c> deployment,</c><02:35:04.400><c> right?</c><02:35:04.640><c> So,</c>

02:35:04.750 --> 02:35:04.760 align:start position:0%
production Convex deployment, right? So,
 

02:35:04.760 --> 02:35:07.190 align:start position:0%
production Convex deployment, right? So,
we<02:35:04.840><c> need</c><02:35:05.040><c> to</c><02:35:05.200><c> test</c><02:35:05.560><c> things</c><02:35:05.840><c> again</c><02:35:06.440><c> because,</c>

02:35:07.190 --> 02:35:07.200 align:start position:0%
we need to test things again because,
 

02:35:07.200 --> 02:35:09.150 align:start position:0%
we need to test things again because,
you<02:35:07.320><c> know,</c><02:35:07.440><c> it's</c><02:35:07.680><c> using</c><02:35:08.240><c> new</c><02:35:08.480><c> environments</c>

02:35:09.150 --> 02:35:09.160 align:start position:0%
you know, it's using new environments
 

02:35:09.160 --> 02:35:11.510 align:start position:0%
you know, it's using new environments
now.<02:35:09.600><c> All</c><02:35:09.680><c> right,</c><02:35:09.960><c> and</c><02:35:10.080><c> it</c><02:35:10.240><c> is</c><02:35:10.400><c> done.</c><02:35:10.920><c> Deployed</c>

02:35:11.510 --> 02:35:11.520 align:start position:0%
now. All right, and it is done. Deployed
 

02:35:11.520 --> 02:35:14.150 align:start position:0%
now. All right, and it is done. Deployed
FlexHelp.<02:35:12.480><c> This</c><02:35:12.680><c> is</c><02:35:12.840><c> the</c><02:35:12.960><c> URL.</c><02:35:13.680><c> This</c><02:35:13.920><c> is</c><02:35:14.040><c> the</c>

02:35:14.150 --> 02:35:14.160 align:start position:0%
FlexHelp. This is the URL. This is the
 

02:35:14.160 --> 02:35:16.990 align:start position:0%
FlexHelp. This is the URL. This is the
Vercel<02:35:14.560><c> project</c><02:35:15.200><c> deployment</c><02:35:15.800><c> ID.</c><02:35:16.320><c> Everything</c>

02:35:16.990 --> 02:35:17.000 align:start position:0%
Vercel project deployment ID. Everything
 

02:35:17.000 --> 02:35:19.870 align:start position:0%
Vercel project deployment ID. Everything
is<02:35:17.480><c> live</c><02:35:18.000><c> now,</c><02:35:18.360><c> okay?</c><02:35:18.640><c> And</c><02:35:18.800><c> you</c><02:35:18.880><c> can</c><02:35:19.080><c> access</c><02:35:19.520><c> it</c>

02:35:19.870 --> 02:35:19.880 align:start position:0%
is live now, okay? And you can access it
 

02:35:19.880 --> 02:35:22.390 align:start position:0%
is live now, okay? And you can access it
as<02:35:20.040><c> well</c><02:35:20.440><c> at</c><02:35:20.600><c> this</c><02:35:20.960><c> URL,</c><02:35:21.600><c> okay?</c><02:35:21.920><c> So,</c><02:35:22.080><c> we</c><02:35:22.200><c> have</c>

02:35:22.390 --> 02:35:22.400 align:start position:0%
as well at this URL, okay? So, we have
 

02:35:22.400 --> 02:35:25.110 align:start position:0%
as well at this URL, okay? So, we have
customer<02:35:22.920><c> home,</c><02:35:23.440><c> and</c><02:35:23.640><c> I'm</c><02:35:23.880><c> signed</c><02:35:24.400><c> in</c><02:35:24.640><c> as</c><02:35:24.920><c> one</c>

02:35:25.110 --> 02:35:25.120 align:start position:0%
customer home, and I'm signed in as one
 

02:35:25.120 --> 02:35:28.230 align:start position:0%
customer home, and I'm signed in as one
of<02:35:25.200><c> these</c><02:35:25.400><c> demo</c><02:35:25.720><c> users,</c><02:35:26.440><c> customer</c><02:35:27.280><c> or</c><02:35:27.560><c> helper,</c>

02:35:28.230 --> 02:35:28.240 align:start position:0%
of these demo users, customer or helper,
 

02:35:28.240 --> 02:35:30.350 align:start position:0%
of these demo users, customer or helper,
right?<02:35:28.520><c> I</c><02:35:28.600><c> can</c><02:35:28.760><c> go</c><02:35:28.880><c> into</c><02:35:29.080><c> helper</c><02:35:29.440><c> dashboard,</c>

02:35:30.350 --> 02:35:30.360 align:start position:0%
right? I can go into helper dashboard,
 

02:35:30.360 --> 02:35:32.470 align:start position:0%
right? I can go into helper dashboard,
and<02:35:30.680><c> let's</c><02:35:30.880><c> say</c><02:35:31.040><c> I</c><02:35:31.120><c> go</c><02:35:31.360><c> I</c><02:35:31.640><c> sign</c><02:35:32.040><c> in</c><02:35:32.200><c> as</c><02:35:32.400><c> a</c>

02:35:32.470 --> 02:35:32.480 align:start position:0%
and let's say I go I sign in as a
 

02:35:32.480 --> 02:35:34.950 align:start position:0%
and let's say I go I sign in as a
customer,<02:35:33.320><c> and</c><02:35:33.600><c> I</c><02:35:33.680><c> go</c><02:35:33.840><c> into</c><02:35:34.120><c> customer</c><02:35:34.680><c> home,</c>

02:35:34.950 --> 02:35:34.960 align:start position:0%
customer, and I go into customer home,
 

02:35:34.960 --> 02:35:36.950 align:start position:0%
customer, and I go into customer home,
but<02:35:35.120><c> I</c><02:35:35.200><c> can't</c><02:35:35.560><c> click</c><02:35:35.920><c> here,</c><02:35:36.440><c> right?</c><02:35:36.680><c> This</c><02:35:36.840><c> is</c>

02:35:36.950 --> 02:35:36.960 align:start position:0%
but I can't click here, right? This is
 

02:35:36.960 --> 02:35:38.510 align:start position:0%
but I can't click here, right? This is
helper<02:35:37.360><c> access,</c><02:35:37.800><c> right?</c><02:35:38.080><c> Remember</c><02:35:38.360><c> the</c>

02:35:38.510 --> 02:35:38.520 align:start position:0%
helper access, right? Remember the
 

02:35:38.520 --> 02:35:40.750 align:start position:0%
helper access, right? Remember the
roles,<02:35:39.200><c> right?</c><02:35:39.640><c> It's</c><02:35:39.880><c> it's</c><02:35:40.080><c> being</c><02:35:40.320><c> handled</c>

02:35:40.750 --> 02:35:40.760 align:start position:0%
roles, right? It's it's being handled
 

02:35:40.760 --> 02:35:43.310 align:start position:0%
roles, right? It's it's being handled
here.<02:35:41.200><c> And</c><02:35:41.400><c> so,</c><02:35:41.560><c> now</c><02:35:41.840><c> as</c><02:35:42.000><c> a</c><02:35:42.080><c> customer,</c><02:35:42.880><c> I</c><02:35:43.080><c> want</c>

02:35:43.310 --> 02:35:43.320 align:start position:0%
here. And so, now as a customer, I want
 

02:35:43.320 --> 02:35:45.710 align:start position:0%
here. And so, now as a customer, I want
to<02:35:43.400><c> book</c><02:35:43.960><c> professional</c><02:35:44.680><c> seasonal</c><02:35:45.080><c> garden</c>

02:35:45.710 --> 02:35:45.720 align:start position:0%
to book professional seasonal garden
 

02:35:45.720 --> 02:35:47.790 align:start position:0%
to book professional seasonal garden
cleanup.<02:35:46.120><c> I'm</c><02:35:46.240><c> going</c><02:35:46.360><c> to</c><02:35:46.440><c> book</c><02:35:46.680><c> this,</c><02:35:47.240><c> request</c>

02:35:47.790 --> 02:35:47.800 align:start position:0%
cleanup. I'm going to book this, request
 

02:35:47.800 --> 02:35:50.110 align:start position:0%
cleanup. I'm going to book this, request
to<02:35:47.920><c> book,</c><02:35:48.480><c> I'm</c><02:35:48.600><c> going</c><02:35:48.720><c> to</c><02:35:49.160><c> fill</c><02:35:49.480><c> all</c><02:35:49.680><c> of</c><02:35:49.800><c> this</c>

02:35:50.110 --> 02:35:50.120 align:start position:0%
to book, I'm going to fill all of this
 

02:35:50.120 --> 02:35:52.990 align:start position:0%
to book, I'm going to fill all of this
out,<02:35:50.560><c> 10:00</c><02:35:50.840><c> a.m.,</c><02:35:51.480><c> 2</c><02:35:51.720><c> hours,</c><02:35:52.200><c> it's</c><02:35:52.520><c> fixed</c>

02:35:52.990 --> 02:35:53.000 align:start position:0%
out, 10:00 a.m., 2 hours, it's fixed
 

02:35:53.000 --> 02:35:55.870 align:start position:0%
out, 10:00 a.m., 2 hours, it's fixed
address,<02:35:53.840><c> send</c><02:35:54.160><c> booking.</c><02:35:54.760><c> Okay,</c><02:35:55.200><c> so</c><02:35:55.400><c> with</c>

02:35:55.870 --> 02:35:55.880 align:start position:0%
address, send booking. Okay, so with
 

02:35:55.880 --> 02:35:57.830 align:start position:0%
address, send booking. Okay, so with
booking<02:35:56.240><c> request</c><02:35:56.720><c> submitted,</c><02:35:57.240><c> your</c><02:35:57.360><c> request</c>

02:35:57.830 --> 02:35:57.840 align:start position:0%
booking request submitted, your request
 

02:35:57.840 --> 02:36:00.430 align:start position:0%
booking request submitted, your request
was<02:35:58.040><c> saved,</c><02:35:58.600><c> view</c><02:35:58.720><c> my</c><02:35:58.960><c> bookings.</c><02:35:59.680><c> So,</c><02:36:00.080><c> we</c><02:36:00.240><c> have</c>

02:36:00.430 --> 02:36:00.440 align:start position:0%
was saved, view my bookings. So, we have
 

02:36:00.440 --> 02:36:02.310 align:start position:0%
was saved, view my bookings. So, we have
all<02:36:00.640><c> of</c><02:36:00.720><c> these</c><02:36:00.960><c> pending,</c><02:36:01.600><c> and</c><02:36:01.760><c> so</c><02:36:01.960><c> now</c><02:36:02.200><c> I'm</c>

02:36:02.310 --> 02:36:02.320 align:start position:0%
all of these pending, and so now I'm
 

02:36:02.320 --> 02:36:05.230 align:start position:0%
all of these pending, and so now I'm
going<02:36:02.480><c> to</c><02:36:02.560><c> log</c><02:36:02.880><c> in</c><02:36:03.080><c> as</c><02:36:03.400><c> Marcus,</c><02:36:04.280><c> and</c><02:36:04.480><c> Marcus</c><02:36:05.120><c> is</c>

02:36:05.230 --> 02:36:05.240 align:start position:0%
going to log in as Marcus, and Marcus is
 

02:36:05.240 --> 02:36:06.950 align:start position:0%
going to log in as Marcus, and Marcus is
going<02:36:05.400><c> to</c><02:36:05.480><c> go</c><02:36:05.560><c> into</c><02:36:05.760><c> helper</c><02:36:06.120><c> dashboard,</c><02:36:06.800><c> and</c>

02:36:06.950 --> 02:36:06.960 align:start position:0%
going to go into helper dashboard, and
 

02:36:06.960 --> 02:36:08.750 align:start position:0%
going to go into helper dashboard, and
now<02:36:07.200><c> he</c><02:36:07.400><c> sees</c><02:36:07.680><c> the</c><02:36:07.800><c> booking.</c><02:36:08.400><c> And</c><02:36:08.520><c> I'm</c><02:36:08.640><c> going</c>

02:36:08.750 --> 02:36:08.760 align:start position:0%
now he sees the booking. And I'm going
 

02:36:08.760 --> 02:36:10.910 align:start position:0%
now he sees the booking. And I'm going
to<02:36:08.880><c> say</c><02:36:09.040><c> accept</c><02:36:09.680><c> or</c><02:36:09.960><c> complete,</c><02:36:10.680><c> it's</c>

02:36:10.910 --> 02:36:10.920 align:start position:0%
to say accept or complete, it's
 

02:36:10.920 --> 02:36:13.150 align:start position:0%
to say accept or complete, it's
completed.<02:36:11.560><c> Now,</c><02:36:11.760><c> if</c><02:36:11.880><c> I</c><02:36:11.960><c> come</c><02:36:12.240><c> back</c><02:36:12.480><c> as</c><02:36:12.680><c> Anders</c>

02:36:13.150 --> 02:36:13.160 align:start position:0%
completed. Now, if I come back as Anders
 

02:36:13.160 --> 02:36:16.470 align:start position:0%
completed. Now, if I come back as Anders
again,<02:36:13.680><c> and</c><02:36:13.840><c> I</c><02:36:13.920><c> go</c><02:36:14.200><c> into</c><02:36:15.200><c> customer's</c><02:36:15.840><c> home,</c>

02:36:16.470 --> 02:36:16.480 align:start position:0%
again, and I go into customer's home,
 

02:36:16.480 --> 02:36:19.470 align:start position:0%
again, and I go into customer's home,
booking<02:36:16.880><c> request</c><02:36:17.480><c> for</c><02:36:17.800><c> maybe</c><02:36:18.440><c> summary,</c><02:36:19.160><c> right</c>

02:36:19.470 --> 02:36:19.480 align:start position:0%
booking request for maybe summary, right
 

02:36:19.480 --> 02:36:21.950 align:start position:0%
booking request for maybe summary, right
here,<02:36:19.920><c> customer</c><02:36:20.440><c> booking</c><02:36:20.840><c> status.</c><02:36:21.600><c> Okay,</c>

02:36:21.950 --> 02:36:21.960 align:start position:0%
here, customer booking status. Okay,
 

02:36:21.960 --> 02:36:23.870 align:start position:0%
here, customer booking status. Okay,
there<02:36:22.200><c> we</c><02:36:22.320><c> go,</c><02:36:22.520><c> completed.</c><02:36:23.160><c> And</c><02:36:23.320><c> here</c><02:36:23.520><c> we</c><02:36:23.680><c> see</c>

02:36:23.870 --> 02:36:23.880 align:start position:0%
there we go, completed. And here we see
 

02:36:23.880 --> 02:36:25.670 align:start position:0%
there we go, completed. And here we see
completed.<02:36:24.720><c> This</c><02:36:24.920><c> one</c><02:36:25.080><c> is</c><02:36:25.200><c> completed.</c>

02:36:25.670 --> 02:36:25.680 align:start position:0%
completed. This one is completed.
 

02:36:25.680 --> 02:36:27.830 align:start position:0%
completed. This one is completed.
Actually,<02:36:26.040><c> this</c><02:36:26.360><c> one,</c><02:36:26.800><c> for</c><02:36:26.960><c> Marcus,</c><02:36:27.520><c> it</c><02:36:27.640><c> has</c>

02:36:27.830 --> 02:36:27.840 align:start position:0%
Actually, this one, for Marcus, it has
 

02:36:27.840 --> 02:36:29.390 align:start position:0%
Actually, this one, for Marcus, it has
been<02:36:28.000><c> completed.</c><02:36:28.760><c> And</c><02:36:28.880><c> then</c><02:36:29.000><c> there's</c><02:36:29.200><c> some</c>

02:36:29.390 --> 02:36:29.400 align:start position:0%
been completed. And then there's some
 

02:36:29.400 --> 02:36:30.990 align:start position:0%
been completed. And then there's some
more<02:36:29.600><c> requests</c><02:36:30.080><c> here.</c><02:36:30.240><c> So,</c><02:36:30.400><c> the</c><02:36:30.520><c> flow</c><02:36:30.840><c> is</c>

02:36:30.990 --> 02:36:31.000 align:start position:0%
more requests here. So, the flow is
 

02:36:31.000 --> 02:36:33.310 align:start position:0%
more requests here. So, the flow is
working.<02:36:31.600><c> The</c><02:36:31.720><c> flow</c><02:36:32.120><c> is</c><02:36:32.320><c> working</c><02:36:32.760><c> perfectly.</c>

02:36:33.310 --> 02:36:33.320 align:start position:0%
working. The flow is working perfectly.
 

02:36:33.320 --> 02:36:35.190 align:start position:0%
working. The flow is working perfectly.
Of<02:36:33.440><c> course,</c><02:36:34.000><c> there</c><02:36:34.320><c> are</c><02:36:34.440><c> so</c><02:36:34.760><c> many</c><02:36:35.000><c> other</c>

02:36:35.190 --> 02:36:35.200 align:start position:0%
Of course, there are so many other
 

02:36:35.200 --> 02:36:37.630 align:start position:0%
Of course, there are so many other
things<02:36:35.480><c> that</c><02:36:35.640><c> we</c><02:36:35.760><c> can</c><02:36:36.000><c> do,</c><02:36:36.600><c> we</c><02:36:36.720><c> can</c><02:36:36.920><c> use</c><02:36:37.240><c> real</c>

02:36:37.630 --> 02:36:37.640 align:start position:0%
things that we can do, we can use real
 

02:36:37.640 --> 02:36:40.790 align:start position:0%
things that we can do, we can use real
auth,<02:36:38.360><c> we</c><02:36:38.520><c> can</c><02:36:39.080><c> change</c><02:36:39.560><c> the</c><02:36:39.680><c> page,</c><02:36:40.480><c> we</c><02:36:40.600><c> can</c>

02:36:40.790 --> 02:36:40.800 align:start position:0%
auth, we can change the page, we can
 

02:36:40.800 --> 02:36:43.390 align:start position:0%
auth, we can change the page, we can
update<02:36:41.360><c> things,</c><02:36:41.760><c> but</c><02:36:41.960><c> right</c><02:36:42.200><c> now,</c><02:36:42.760><c> the</c><02:36:42.920><c> core</c>

02:36:43.390 --> 02:36:43.400 align:start position:0%
update things, but right now, the core
 

02:36:43.400 --> 02:36:46.550 align:start position:0%
update things, but right now, the core
of<02:36:43.520><c> the</c><02:36:43.680><c> app</c><02:36:44.320><c> works</c><02:36:44.640><c> perfectly.</c><02:36:45.320><c> And</c><02:36:45.840><c> just</c><02:36:46.360><c> as</c>

02:36:46.550 --> 02:36:46.560 align:start position:0%
of the app works perfectly. And just as
 

02:36:46.560 --> 02:36:49.070 align:start position:0%
of the app works perfectly. And just as
a<02:36:46.640><c> little</c><02:36:47.040><c> bonus,</c><02:36:47.800><c> when</c><02:36:48.040><c> you</c><02:36:48.400><c> reach</c><02:36:48.840><c> this</c>

02:36:49.070 --> 02:36:49.080 align:start position:0%
a little bonus, when you reach this
 

02:36:49.080 --> 02:36:51.230 align:start position:0%
a little bonus, when you reach this
stage,<02:36:49.840><c> there's</c><02:36:50.200><c> more</c><02:36:50.480><c> things</c><02:36:50.800><c> that</c><02:36:50.960><c> you</c><02:36:51.080><c> can</c>

02:36:51.230 --> 02:36:51.240 align:start position:0%
stage, there's more things that you can
 

02:36:51.240 --> 02:36:53.710 align:start position:0%
stage, there's more things that you can
do,<02:36:51.680><c> but</c><02:36:51.960><c> one</c><02:36:52.240><c> thing</c><02:36:52.600><c> that,</c><02:36:53.200><c> you</c><02:36:53.280><c> know,</c><02:36:53.480><c> right</c>

02:36:53.710 --> 02:36:53.720 align:start position:0%
do, but one thing that, you know, right
 

02:36:53.720 --> 02:36:55.550 align:start position:0%
do, but one thing that, you know, right
away<02:36:54.000><c> that</c><02:36:54.160><c> you</c><02:36:54.280><c> can</c><02:36:54.440><c> ask</c><02:36:54.720><c> Codex</c><02:36:55.080><c> to</c><02:36:55.200><c> do</c><02:36:55.400><c> would</c>

02:36:55.550 --> 02:36:55.560 align:start position:0%
away that you can ask Codex to do would
 

02:36:55.560 --> 02:36:59.110 align:start position:0%
away that you can ask Codex to do would
be<02:36:55.680><c> something</c><02:36:56.120><c> like</c><02:36:56.440><c> suggest</c><02:36:57.480><c> top</c><02:36:58.000><c> five</c><02:36:58.720><c> high</c>

02:36:59.110 --> 02:36:59.120 align:start position:0%
be something like suggest top five high
 

02:36:59.120 --> 02:37:01.950 align:start position:0%
be something like suggest top five high
impact,<02:37:00.080><c> low</c><02:37:00.400><c> effort</c><02:37:01.160><c> features,</c>

02:37:01.950 --> 02:37:01.960 align:start position:0%
impact, low effort features,
 

02:37:01.960 --> 02:37:03.910 align:start position:0%
impact, low effort features,
functionalities.<02:37:03.120><c> And</c><02:37:03.240><c> I'm</c><02:37:03.320><c> going</c><02:37:03.480><c> to</c><02:37:03.560><c> switch</c>

02:37:03.910 --> 02:37:03.920 align:start position:0%
functionalities. And I'm going to switch
 

02:37:03.920 --> 02:37:06.630 align:start position:0%
functionalities. And I'm going to switch
into<02:37:04.480><c> plan</c><02:37:04.840><c> mode,</c><02:37:05.360><c> and</c><02:37:05.880><c> we</c><02:37:06.000><c> want</c><02:37:06.200><c> to</c><02:37:06.280><c> see</c><02:37:06.480><c> if</c>

02:37:06.630 --> 02:37:06.640 align:start position:0%
into plan mode, and we want to see if
 

02:37:06.640 --> 02:37:09.070 align:start position:0%
into plan mode, and we want to see if
there<02:37:06.760><c> is</c><02:37:06.880><c> some</c><02:37:07.160><c> high</c><02:37:07.520><c> amp</c><02:37:07.960><c> impact</c><02:37:08.680><c> features</c>

02:37:09.070 --> 02:37:09.080 align:start position:0%
there is some high amp impact features
 

02:37:09.080 --> 02:37:11.710 align:start position:0%
there is some high amp impact features
that<02:37:09.240><c> we</c><02:37:09.360><c> can</c><02:37:09.640><c> add</c><02:37:10.240><c> that</c><02:37:10.920><c> do</c><02:37:11.040><c> not</c><02:37:11.280><c> require</c><02:37:11.680><c> a</c>

02:37:11.710 --> 02:37:11.720 align:start position:0%
that we can add that do not require a
 

02:37:11.720 --> 02:37:13.950 align:start position:0%
that we can add that do not require a
lot<02:37:11.920><c> of</c><02:37:12.160><c> effort.</c><02:37:12.760><c> And</c><02:37:12.880><c> here</c><02:37:13.080><c> they</c><02:37:13.240><c> are,</c><02:37:13.440><c> top</c>

02:37:13.950 --> 02:37:13.960 align:start position:0%
lot of effort. And here they are, top
 

02:37:13.960 --> 02:37:16.430 align:start position:0%
lot of effort. And here they are, top
five<02:37:14.440><c> high</c><02:37:14.720><c> impact,</c><02:37:15.360><c> low</c><02:37:15.640><c> effort</c><02:37:16.120><c> next</c>

02:37:16.430 --> 02:37:16.440 align:start position:0%
five high impact, low effort next
 

02:37:16.440 --> 02:37:18.790 align:start position:0%
five high impact, low effort next
features<02:37:16.960><c> I</c><02:37:17.200><c> prioritize.</c><02:37:18.160><c> Functional</c>

02:37:18.790 --> 02:37:18.800 align:start position:0%
features I prioritize. Functional
 

02:37:18.800 --> 02:37:21.150 align:start position:0%
features I prioritize. Functional
marketplace<02:37:19.480><c> search,</c><02:37:19.960><c> booking</c><02:37:20.360><c> detail</c><02:37:20.920><c> view,</c>

02:37:21.150 --> 02:37:21.160 align:start position:0%
marketplace search, booking detail view,
 

02:37:21.160 --> 02:37:23.590 align:start position:0%
marketplace search, booking detail view,
customer<02:37:21.680><c> cancel</c><02:37:22.240><c> pending</c><02:37:22.600><c> requests,</c><02:37:23.120><c> etc.,</c>

02:37:23.590 --> 02:37:23.600 align:start position:0%
customer cancel pending requests, etc.,
 

02:37:23.600 --> 02:37:26.550 align:start position:0%
customer cancel pending requests, etc.,
etc.<02:37:24.200><c> And</c><02:37:24.480><c> if</c><02:37:24.640><c> you</c><02:37:24.800><c> don't</c><02:37:25.200><c> want</c><02:37:25.560><c> to</c><02:37:25.880><c> implement</c>

02:37:26.550 --> 02:37:26.560 align:start position:0%
etc. And if you don't want to implement
 

02:37:26.560 --> 02:37:28.750 align:start position:0%
etc. And if you don't want to implement
these<02:37:26.840><c> right</c><02:37:27.120><c> now,</c><02:37:27.480><c> what</c><02:37:27.640><c> I</c><02:37:27.720><c> like</c><02:37:28.040><c> to</c><02:37:28.160><c> do</c><02:37:28.400><c> is</c>

02:37:28.750 --> 02:37:28.760 align:start position:0%
these right now, what I like to do is
 

02:37:28.760 --> 02:37:32.670 align:start position:0%
these right now, what I like to do is
save<02:37:29.360><c> this</c><02:37:29.720><c> list</c><02:37:30.240><c> as</c><02:37:30.640><c> dots.todo.md</c>

02:37:32.670 --> 02:37:32.680 align:start position:0%
save this list as dots.todo.md
 

02:37:32.680 --> 02:37:36.390 align:start position:0%
save this list as dots.todo.md
as<02:37:32.920><c> a</c><02:37:33.000><c> markdown</c><02:37:33.560><c> file</c><02:37:34.080><c> and</c><02:37:34.320><c> prioritize</c><02:37:35.640><c> each</c>

02:37:36.390 --> 02:37:36.400 align:start position:0%
as a markdown file and prioritize each
 

02:37:36.400 --> 02:37:40.110 align:start position:0%
as a markdown file and prioritize each
item<02:37:36.920><c> on</c><02:37:37.120><c> a</c><02:37:37.200><c> scale</c><02:37:38.040><c> of</c><02:37:38.760><c> one</c><02:37:39.000><c> to</c><02:37:39.200><c> five,</c><02:37:39.760><c> one</c>

02:37:40.110 --> 02:37:40.120 align:start position:0%
item on a scale of one to five, one
 

02:37:40.120 --> 02:37:42.590 align:start position:0%
item on a scale of one to five, one
being<02:37:40.800><c> urgent.</c><02:37:41.200><c> And</c><02:37:41.360><c> so</c><02:37:41.520><c> that</c><02:37:41.800><c> way</c><02:37:42.120><c> I</c><02:37:42.240><c> have</c><02:37:42.480><c> a</c>

02:37:42.590 --> 02:37:42.600 align:start position:0%
being urgent. And so that way I have a
 

02:37:42.600 --> 02:37:45.910 align:start position:0%
being urgent. And so that way I have a
constantly<02:37:43.680><c> evolving</c><02:37:44.400><c> list</c><02:37:44.760><c> of</c><02:37:44.920><c> things</c><02:37:45.560><c> that</c>

02:37:45.910 --> 02:37:45.920 align:start position:0%
constantly evolving list of things that
 

02:37:45.920 --> 02:37:48.190 align:start position:0%
constantly evolving list of things that
I<02:37:46.040><c> can</c><02:37:46.320><c> build</c><02:37:46.680><c> in</c><02:37:46.760><c> the</c><02:37:46.880><c> future.</c><02:37:47.440><c> So</c><02:37:47.640><c> I</c><02:37:47.720><c> do</c><02:37:47.840><c> not</c>

02:37:48.190 --> 02:37:48.200 align:start position:0%
I can build in the future. So I do not
 

02:37:48.200 --> 02:37:50.190 align:start position:0%
I can build in the future. So I do not
need<02:37:48.440><c> to</c><02:37:48.560><c> ask</c><02:37:48.880><c> Codex</c><02:37:49.360><c> all</c><02:37:49.640><c> the</c><02:37:49.800><c> time</c>

02:37:50.190 --> 02:37:50.200 align:start position:0%
need to ask Codex all the time
 

02:37:50.200 --> 02:37:51.870 align:start position:0%
need to ask Codex all the time
constantly,<02:37:50.880><c> you</c><02:37:50.960><c> know,</c><02:37:51.320><c> you</c><02:37:51.400><c> know,</c><02:37:51.560><c> to</c><02:37:51.720><c> to</c>

02:37:51.870 --> 02:37:51.880 align:start position:0%
constantly, you know, you know, to to
 

02:37:51.880 --> 02:37:53.910 align:start position:0%
constantly, you know, you know, to to
suggest<02:37:52.520><c> new</c><02:37:52.720><c> features.</c><02:37:53.440><c> And</c><02:37:53.560><c> I'm</c><02:37:53.680><c> going</c><02:37:53.800><c> to</c>

02:37:53.910 --> 02:37:53.920 align:start position:0%
suggest new features. And I'm going to
 

02:37:53.920 --> 02:37:55.950 align:start position:0%
suggest new features. And I'm going to
say<02:37:54.120><c> submit</c><02:37:54.640><c> and</c><02:37:54.760><c> that's</c><02:37:54.960><c> going</c><02:37:55.080><c> to</c><02:37:55.160><c> go</c><02:37:55.360><c> create</c>

02:37:55.950 --> 02:37:55.960 align:start position:0%
say submit and that's going to go create
 

02:37:55.960 --> 02:37:58.790 align:start position:0%
say submit and that's going to go create
this<02:37:56.480><c> dots</c><02:37:56.960><c> directory</c><02:37:57.520><c> as</c><02:37:57.680><c> well</c><02:37:58.400><c> and</c><02:37:58.560><c> this</c>

02:37:58.790 --> 02:37:58.800 align:start position:0%
this dots directory as well and this
 

02:37:58.800 --> 02:38:01.710 align:start position:0%
this dots directory as well and this
todo.md,<02:38:00.040><c> which</c><02:38:00.280><c> is</c><02:38:00.920><c> the</c><02:38:01.040><c> file</c><02:38:01.480><c> that</c><02:38:01.640><c> I</c>

02:38:01.710 --> 02:38:01.720 align:start position:0%
todo.md, which is the file that I
 

02:38:01.720 --> 02:38:04.470 align:start position:0%
todo.md, which is the file that I
usually<02:38:02.200><c> keep</c><02:38:02.560><c> to</c><02:38:02.680><c> store</c><02:38:03.280><c> new</c><02:38:03.600><c> features.</c><02:38:04.360><c> And</c>

02:38:04.470 --> 02:38:04.480 align:start position:0%
usually keep to store new features. And
 

02:38:04.480 --> 02:38:06.110 align:start position:0%
usually keep to store new features. And
now<02:38:04.640><c> we</c><02:38:04.760><c> can</c><02:38:04.960><c> open</c><02:38:05.240><c> this</c><02:38:05.480><c> file</c><02:38:05.800><c> and</c><02:38:05.920><c> say,</c>

02:38:06.110 --> 02:38:06.120 align:start position:0%
now we can open this file and say,
 

02:38:06.120 --> 02:38:08.030 align:start position:0%
now we can open this file and say,
"Codex,<02:38:06.520><c> so</c><02:38:06.600><c> this</c><02:38:06.760><c> is</c><02:38:06.880><c> priority</c><02:38:07.360><c> one,</c><02:38:07.760><c> two,</c>

02:38:08.030 --> 02:38:08.040 align:start position:0%
"Codex, so this is priority one, two,
 

02:38:08.040 --> 02:38:10.710 align:start position:0%
"Codex, so this is priority one, two,
three,<02:38:08.280><c> four,</c><02:38:08.520><c> five."</c><02:38:08.840><c> So</c><02:38:08.920><c> now</c><02:38:09.400><c> we</c><02:38:09.640><c> have</c><02:38:10.080><c> a</c><02:38:10.440><c> an</c>

02:38:10.710 --> 02:38:10.720 align:start position:0%
three, four, five." So now we have a an
 

02:38:10.720 --> 02:38:12.950 align:start position:0%
three, four, five." So now we have a an
app<02:38:11.200><c> that</c><02:38:11.400><c> is</c><02:38:11.600><c> live,</c><02:38:12.280><c> that</c><02:38:12.400><c> is</c><02:38:12.640><c> on</c><02:38:12.840><c> the</c>

02:38:12.950 --> 02:38:12.960 align:start position:0%
app that is live, that is on the
 

02:38:12.960 --> 02:38:15.310 align:start position:0%
app that is live, that is on the
internet,<02:38:13.520><c> that</c><02:38:13.760><c> we</c><02:38:13.920><c> have</c><02:38:14.200><c> built,</c><02:38:14.840><c> that</c>

02:38:15.310 --> 02:38:15.320 align:start position:0%
internet, that we have built, that
 

02:38:15.320 --> 02:38:18.510 align:start position:0%
internet, that we have built, that
works.<02:38:16.040><c> This</c><02:38:16.640><c> workflow,</c><02:38:17.280><c> this</c><02:38:17.560><c> main</c><02:38:17.920><c> workflow</c>

02:38:18.510 --> 02:38:18.520 align:start position:0%
works. This workflow, this main workflow
 

02:38:18.520 --> 02:38:20.830 align:start position:0%
works. This workflow, this main workflow
works<02:38:19.120><c> as</c><02:38:19.320><c> expected,</c><02:38:20.000><c> but</c><02:38:20.120><c> of</c><02:38:20.240><c> course,</c>

02:38:20.830 --> 02:38:20.840 align:start position:0%
works as expected, but of course,
 

02:38:20.840 --> 02:38:23.070 align:start position:0%
works as expected, but of course,
there's<02:38:21.480><c> so</c><02:38:21.720><c> many</c><02:38:21.960><c> things</c><02:38:22.320><c> that</c><02:38:22.520><c> you</c><02:38:22.640><c> can</c><02:38:22.840><c> do</c>

02:38:23.070 --> 02:38:23.080 align:start position:0%
there's so many things that you can do
 

02:38:23.080 --> 02:38:25.270 align:start position:0%
there's so many things that you can do
to<02:38:23.200><c> improve</c><02:38:23.680><c> this</c><02:38:24.000><c> app.</c><02:38:24.480><c> And</c><02:38:24.720><c> in</c><02:38:24.840><c> some</c><02:38:25.040><c> of</c><02:38:25.160><c> the</c>

02:38:25.270 --> 02:38:25.280 align:start position:0%
to improve this app. And in some of the
 

02:38:25.280 --> 02:38:27.310 align:start position:0%
to improve this app. And in some of the
later<02:38:25.600><c> videos,</c><02:38:26.200><c> I'm</c><02:38:26.360><c> going</c><02:38:26.480><c> to</c><02:38:26.600><c> be</c><02:38:26.800><c> showing</c>

02:38:27.310 --> 02:38:27.320 align:start position:0%
later videos, I'm going to be showing
 

02:38:27.320 --> 02:38:30.510 align:start position:0%
later videos, I'm going to be showing
you<02:38:27.440><c> some</c><02:38:27.800><c> more</c><02:38:28.200><c> advanced</c><02:38:29.040><c> Codex</c><02:38:29.680><c> techniques</c>

02:38:30.510 --> 02:38:30.520 align:start position:0%
you some more advanced Codex techniques
 

02:38:30.520 --> 02:38:34.110 align:start position:0%
you some more advanced Codex techniques
that<02:38:31.160><c> you</c><02:38:31.360><c> can</c><02:38:31.640><c> use</c><02:38:32.320><c> to</c><02:38:32.560><c> make</c><02:38:33.040><c> your</c><02:38:33.360><c> apps</c><02:38:33.800><c> even</c>

02:38:34.110 --> 02:38:34.120 align:start position:0%
that you can use to make your apps even
 

02:38:34.120 --> 02:38:35.950 align:start position:0%
that you can use to make your apps even
better<02:38:34.520><c> and</c><02:38:34.680><c> more</c><02:38:34.920><c> robust</c><02:38:35.440><c> because</c><02:38:35.720><c> I've</c><02:38:35.840><c> been</c>

02:38:35.950 --> 02:38:35.960 align:start position:0%
better and more robust because I've been
 

02:38:35.960 --> 02:38:38.430 align:start position:0%
better and more robust because I've been
using<02:38:36.240><c> Codex</c><02:38:36.640><c> for</c><02:38:36.960><c> a</c><02:38:37.040><c> while</c><02:38:37.400><c> now</c><02:38:37.920><c> and</c><02:38:38.120><c> I</c><02:38:38.200><c> have</c>

02:38:38.430 --> 02:38:38.440 align:start position:0%
using Codex for a while now and I have
 

02:38:38.440 --> 02:38:41.030 align:start position:0%
using Codex for a while now and I have
some<02:38:38.600><c> advanced</c><02:38:39.200><c> tips</c><02:38:39.480><c> and</c><02:38:39.600><c> tricks</c><02:38:40.080><c> that</c><02:38:40.600><c> I'd</c>

02:38:41.030 --> 02:38:41.040 align:start position:0%
some advanced tips and tricks that I'd
 

02:38:41.040 --> 02:38:42.470 align:start position:0%
some advanced tips and tricks that I'd
like<02:38:41.200><c> to</c><02:38:41.320><c> share</c><02:38:41.640><c> you</c><02:38:41.720><c> in</c><02:38:41.800><c> some</c><02:38:41.960><c> of</c><02:38:42.080><c> the</c><02:38:42.160><c> future</c>

02:38:42.470 --> 02:38:42.480 align:start position:0%
like to share you in some of the future
 

02:38:42.480 --> 02:38:44.670 align:start position:0%
like to share you in some of the future
videos.<02:38:43.080><c> And</c><02:38:43.200><c> so</c><02:38:43.360><c> I</c><02:38:43.440><c> really</c><02:38:43.760><c> hope</c><02:38:44.240><c> that</c><02:38:44.520><c> you</c>

02:38:44.670 --> 02:38:44.680 align:start position:0%
videos. And so I really hope that you
 

02:38:44.680 --> 02:38:48.550 align:start position:0%
videos. And so I really hope that you
enjoyed<02:38:45.440><c> this</c><02:38:45.800><c> mega</c><02:38:46.600><c> Codex</c><02:38:47.440><c> tutorial.</c><02:38:48.360><c> Now,</c>

02:38:48.550 --> 02:38:48.560 align:start position:0%
enjoyed this mega Codex tutorial. Now,
 

02:38:48.560 --> 02:38:50.390 align:start position:0%
enjoyed this mega Codex tutorial. Now,
if<02:38:48.760><c> you</c><02:38:48.880><c> want</c><02:38:49.040><c> to</c><02:38:49.160><c> go</c><02:38:49.280><c> ahead</c><02:38:49.640><c> and</c><02:38:49.800><c> build</c><02:38:50.120><c> this</c>

02:38:50.390 --> 02:38:50.400 align:start position:0%
if you want to go ahead and build this
 

02:38:50.400 --> 02:38:53.350 align:start position:0%
if you want to go ahead and build this
app<02:38:50.920><c> or</c><02:38:51.200><c> modify</c><02:38:51.760><c> this</c><02:38:52.080><c> app</c><02:38:52.400><c> or</c><02:38:52.600><c> whatnot,</c><02:38:53.240><c> I'm</c>

02:38:53.350 --> 02:38:53.360 align:start position:0%
app or modify this app or whatnot, I'm
 

02:38:53.360 --> 02:38:55.510 align:start position:0%
app or modify this app or whatnot, I'm
going<02:38:53.520><c> to</c><02:38:53.600><c> be</c><02:38:53.720><c> leaving</c><02:38:54.200><c> all</c><02:38:54.600><c> my</c><02:38:54.840><c> prompts,</c>

02:38:55.510 --> 02:38:55.520 align:start position:0%
going to be leaving all my prompts,
 

02:38:55.520 --> 02:38:57.830 align:start position:0%
going to be leaving all my prompts,
every<02:38:55.840><c> single</c><02:38:56.160><c> prompt</c><02:38:56.520><c> that</c><02:38:56.680><c> I</c><02:38:56.760><c> used</c><02:38:57.400><c> to</c><02:38:57.560><c> build</c>

02:38:57.830 --> 02:38:57.840 align:start position:0%
every single prompt that I used to build
 

02:38:57.840 --> 02:39:00.790 align:start position:0%
every single prompt that I used to build
this<02:38:58.120><c> app</c><02:38:58.640><c> inside</c><02:38:59.240><c> of</c><02:38:59.400><c> our</c><02:38:59.560><c> amazing</c><02:39:00.200><c> Patreon</c>

02:39:00.790 --> 02:39:00.800 align:start position:0%
this app inside of our amazing Patreon
 

02:39:00.800 --> 02:39:03.030 align:start position:0%
this app inside of our amazing Patreon
community<02:39:01.600><c> and</c><02:39:02.000><c> you</c><02:39:02.160><c> can</c><02:39:02.360><c> check</c><02:39:02.600><c> it</c><02:39:02.720><c> out</c><02:39:02.920><c> and</c>

02:39:03.030 --> 02:39:03.040 align:start position:0%
community and you can check it out and
 

02:39:03.040 --> 02:39:04.950 align:start position:0%
community and you can check it out and
hopefully<02:39:03.440><c> join.</c><02:39:03.960><c> There</c><02:39:04.120><c> are</c><02:39:04.160><c> lots</c><02:39:04.560><c> of</c><02:39:04.680><c> great</c>

02:39:04.950 --> 02:39:04.960 align:start position:0%
hopefully join. There are lots of great
 

02:39:04.960 --> 02:39:07.430 align:start position:0%
hopefully join. There are lots of great
people<02:39:05.360><c> there</c><02:39:05.560><c> and</c><02:39:05.680><c> of</c><02:39:05.800><c> course,</c><02:39:06.240><c> support</c><02:39:07.040><c> this</c>

02:39:07.430 --> 02:39:07.440 align:start position:0%
people there and of course, support this
 

02:39:07.440 --> 02:39:10.110 align:start position:0%
people there and of course, support this
channel,<02:39:08.120><c> and</c><02:39:08.320><c> support</c><02:39:08.840><c> my</c><02:39:09.080><c> work.</c><02:39:09.520><c> And</c><02:39:09.640><c> so,</c>

02:39:10.110 --> 02:39:10.120 align:start position:0%
channel, and support my work. And so,
 

02:39:10.120 --> 02:39:12.430 align:start position:0%
channel, and support my work. And so,
like<02:39:10.520><c> this</c><02:39:10.800><c> video,</c><02:39:11.280><c> leave</c><02:39:11.560><c> a</c><02:39:11.600><c> comment,</c><02:39:12.320><c> and</c>

02:39:12.430 --> 02:39:12.440 align:start position:0%
like this video, leave a comment, and
 

02:39:12.440 --> 02:39:17.160 align:start position:0%
like this video, leave a comment, and
check<02:39:12.760><c> out</c><02:39:12.920><c> our</c><02:39:13.120><c> amazing</c><02:39:13.760><c> Patreon</c><02:39:14.480><c> community.</c>

