WEBVTT

00:00:00.001 --> 00:00:06.520
We all know that tools like ChatGPT have really empowered developers to tackle bigger problems.

00:00:06.520 --> 00:00:09.680
Are you using Tailwind CSS and need a login page?

00:00:09.680 --> 00:00:18.780
Try asking Chat, what is the HTML for a login page with the login, username, password, and a button in its own section in the center of a page?

00:00:18.780 --> 00:00:22.400
It will literally give you the first pass version of it.

00:00:22.400 --> 00:00:24.380
But how far can we push this?

00:00:24.380 --> 00:00:28.320
Fred Tubirant may have taken it farther than most.

00:00:28.320 --> 00:00:35.480
He built a functioning SaaS product with paying customers by using only ChatGPT and Python.

00:00:35.480 --> 00:00:38.280
It's fascinating to hear his story and see what he's built.

00:00:38.280 --> 00:00:44.460
This is Talk Python To Me, episode 459, recorded February 19th, 2024.

00:00:44.460 --> 00:00:46.560
Are you ready for your host?

00:00:46.560 --> 00:00:47.400
Here he is.

00:00:47.400 --> 00:00:50.880
You're listening to Michael Kennedy on Talk Python To Me.

00:00:50.880 --> 00:00:54.520
Live from Portland, Oregon, and this segment was made with Python.

00:00:57.840 --> 00:01:01.180
Welcome to Talk Python To Me, a weekly podcast on Python.

00:01:01.180 --> 00:01:02.920
This is your host, Michael Kennedy.

00:01:02.920 --> 00:01:10.400
Follow me on Mastodon, where I'm @mkennedy, and follow the podcast using @talkpython, both on Bostodon.org.

00:01:10.400 --> 00:01:15.500
Keep up with the show and listen to over seven years of past episodes at talkpython.fm.

00:01:15.500 --> 00:01:19.460
We've started streaming most of our episodes live on YouTube.

00:01:19.680 --> 00:01:27.080
Subscribe to our YouTube channel over at talkpython.fm/youtube to get notified about upcoming shows and be part of that episode.

00:01:27.080 --> 00:01:33.220
This episode is sponsored by Mailtrap, an email delivery platform that developers love.

00:01:33.220 --> 00:01:36.460
Try for free at Mailtrap.io.

00:01:36.460 --> 00:01:40.440
And it's brought to you by us over at Talk Python Training.

00:01:40.440 --> 00:01:43.920
Did you know that we have over 250 hours of Python courses?

00:01:43.920 --> 00:01:44.840
Yeah, that's right.

00:01:45.160 --> 00:01:48.280
Check them out at talkpython.fm/courses.

00:01:48.280 --> 00:01:52.020
Fred, welcome to Talk Python To Me.

00:01:52.020 --> 00:01:53.060
So great to be here.

00:01:53.060 --> 00:01:54.940
Thank you so much for the invitation.

00:01:54.940 --> 00:01:56.140
Nice to be here.

00:01:56.200 --> 00:01:57.900
It's lovely to have you.

00:01:57.900 --> 00:02:07.440
We're going to have a lot of fun talking about this app that you've built using highly powered by AI and in different ways.

00:02:07.440 --> 00:02:11.620
It's both powered by AI, but also largely built with AI.

00:02:11.620 --> 00:02:16.920
And I think it's going to give people an interesting look into what is possible these days.

00:02:16.920 --> 00:02:17.680
What is possible?

00:02:17.680 --> 00:02:21.620
And the journey of a middle-aged coder or so, maybe.

00:02:21.740 --> 00:02:24.220
That's really an interesting thing to discuss.

00:02:24.220 --> 00:02:28.720
And maybe we could just start a little bit with the introduction about yourself and then talk a bit about that.

00:02:28.720 --> 00:02:42.420
So before we dive into talking about how you use ChatGPT to largely build this app that is a SaaS product service on the internet people subscribe to, which is the dream of many people.

00:02:42.420 --> 00:02:43.140
It's awesome.

00:02:43.140 --> 00:02:48.340
With AI, just tell people a bit about yourself and then I want to talk about this journey.

00:02:48.560 --> 00:02:53.840
It's a long story because I'm turning 50 in June 2024.

00:02:53.840 --> 00:02:57.500
So if you listen to this before June 2024, I will be 49.

00:02:57.500 --> 00:02:59.000
After, I will be 50.

00:02:59.000 --> 00:03:01.980
So, yes, that will be...

00:03:01.980 --> 00:03:03.040
You're a spring chicken.

00:03:03.040 --> 00:03:04.780
I'm older than you, Fred.

00:03:04.780 --> 00:03:06.460
Oh, you're older than me.

00:03:06.460 --> 00:03:07.300
Okay, cool.

00:03:07.300 --> 00:03:10.440
I found someone older than me to talk to.

00:03:10.440 --> 00:03:11.520
Oh, that's fine.

00:03:11.600 --> 00:03:13.620
You can still write code into your 50s.

00:03:13.620 --> 00:03:14.180
Let me tell you.

00:03:14.180 --> 00:03:15.160
The keyboard still works.

00:03:15.160 --> 00:03:15.680
It's amazing.

00:03:15.680 --> 00:03:17.340
And I started when I was 48.

00:03:17.340 --> 00:03:19.540
But maybe we'll get back to this later.

00:03:19.540 --> 00:03:26.920
So originally, my professional journey started as an interpreter, Russian, English to French.

00:03:26.920 --> 00:03:30.400
So I graduated as an interpreter, so in languages.

00:03:30.400 --> 00:03:34.280
And then I started being involved in music.

00:03:34.480 --> 00:03:37.760
I was head of sponsorship for a big music festival in Belgium.

00:03:37.760 --> 00:03:41.480
I had rock venues, live music venues for a few years.

00:03:41.480 --> 00:03:48.900
And then I started being involved in tech as head of product, head of paid acquisition for a few startups.

00:03:48.900 --> 00:03:50.320
I had my own startups.

00:03:50.320 --> 00:03:55.160
I exited one startup in the fintech space in the early 2000s.

00:03:55.160 --> 00:03:57.500
I had a circus for two years.

00:03:57.500 --> 00:03:58.500
That's quite...

00:03:58.500 --> 00:03:58.720
A circus?

00:03:58.720 --> 00:04:00.460
That's quite an interesting story.

00:04:00.460 --> 00:04:04.800
Yes, family circus with four big tents, eight tons of equipment.

00:04:04.800 --> 00:04:07.000
So that was quite a story.

00:04:07.000 --> 00:04:11.260
Was this like Cirque du Soleil or was it with animals or what kind of...

00:04:11.260 --> 00:04:16.340
It was more like, I would say, like Cirque du Soleil, but at a smaller, smaller scale, of course.

00:04:16.340 --> 00:04:16.880
Okay.

00:04:16.880 --> 00:04:22.740
But four tents and circus artists and actors and musicians.

00:04:22.740 --> 00:04:25.760
And that was an original show, an original story.

00:04:25.760 --> 00:04:28.320
I also produced rock bands.

00:04:28.320 --> 00:04:34.120
Maybe I can give a shout out to one of the bands that I love, that I contributed to, the Boxer Rebellion.

00:04:34.120 --> 00:04:36.160
Maybe you heard about them, the Boxer Rebellion.

00:04:36.160 --> 00:04:36.400
Yeah.

00:04:36.400 --> 00:04:43.860
It's a British band based here in London, but with a singer from Nashville, Tennessee, Nathan Nicholson.

00:04:43.860 --> 00:04:48.400
So I was involved in music, in tech, I mean, in all of those things.

00:04:48.500 --> 00:04:56.040
And I think the project that we're going to talk about is kind of a good mix between music, tech and all my passions.

00:04:56.040 --> 00:04:58.020
I was also a radio DJ for you.

00:04:58.020 --> 00:04:58.600
So that's why.

00:04:58.600 --> 00:05:00.100
That's the audio side, right?

00:05:00.100 --> 00:05:03.020
That kind of brings you something together in the music, I suppose, as well.

00:05:03.020 --> 00:05:03.440
Exactly.

00:05:03.440 --> 00:05:03.920
Amazing.

00:05:03.920 --> 00:05:09.480
You know, listening to the story, first of all, what a diverse set of experiences.

00:05:09.480 --> 00:05:10.800
That must have been really fun.

00:05:10.800 --> 00:05:11.640
It's not a career.

00:05:11.640 --> 00:05:12.700
That's the problem.

00:05:12.700 --> 00:05:13.680
Unemployable.

00:05:13.680 --> 00:05:15.840
Yeah, that's.

00:05:15.840 --> 00:05:25.460
But in terms of thinking about products and coding, I know when I experience different areas, I always feel like, oh, this could be way better and that could be way better.

00:05:25.460 --> 00:05:26.540
And why is that so hard?

00:05:26.540 --> 00:05:28.980
Surely we could create some software to fix these things.

00:05:28.980 --> 00:05:35.440
You must have had a lot of ideas about programs you would like to see and stuff you'd like to work on.

00:05:35.440 --> 00:05:39.880
And multiple times, the solution for me was to hire people to do it.

00:05:39.880 --> 00:05:47.840
I had my own startups in the past and I always had a team of, let's say, two to five developers working for me when we were doing that.

00:05:47.840 --> 00:05:56.720
So I kind of understood all the structure, the architecture of the apps, but I'd never really coded myself.

00:05:56.720 --> 00:05:59.280
So I was always relying on other people.

00:05:59.280 --> 00:06:04.560
The difference today is that I spent most of my days coding, which is quite different.

00:06:04.760 --> 00:06:08.120
Yeah. And you said you started coding when you were 48.

00:06:08.120 --> 00:06:08.720
Yes.

00:06:08.720 --> 00:06:11.620
Roughly almost two years ago.

00:06:11.620 --> 00:06:12.020
Yes.

00:06:12.020 --> 00:06:12.740
That's awesome.

00:06:12.740 --> 00:06:23.020
You know, I do hear from a lot of people or see comments like, oh, I think I'm too old to learn this or, oh, you can never, you have to have done this when you were a kid or maybe gotten a degree in college.

00:06:23.020 --> 00:06:24.200
Otherwise you're doomed.

00:06:24.200 --> 00:06:28.240
You know, you surely have an alternative viewpoint on that, given your success.

00:06:28.240 --> 00:06:34.800
I thought it would be like that also for me because I would say I'm quite a perfectionist.

00:06:34.800 --> 00:06:39.320
So if I learn something, I want to achieve something with what I learn.

00:06:39.880 --> 00:06:53.240
And the problem, the issue with code for me for a long time had been that I could go through the basic tutorials, the first lessons, you know, watching some videos or reading some tutorials.

00:06:53.520 --> 00:07:05.880
It was difficult for me to really achieve something meaningful, something that I could really share that could become a product because you always end up doing the same little exercises and little tutorials.

00:07:05.880 --> 00:07:07.840
And that doesn't end up anywhere.

00:07:07.960 --> 00:07:12.200
You learned how to do a loop, but then that doesn't really help you get any closer to an app, right?

00:07:12.200 --> 00:07:22.180
How to do a little to-do list or a little calculator or, you know, something very simple, nothing that would be worth sharing as a product and especially as a paid product.

00:07:22.180 --> 00:07:32.780
So I always thought, OK, if I want to build a SaaS, the only solution for me is to rely on a freelancer or on an agency or on a team of people.

00:07:32.780 --> 00:07:36.180
I was doing it until I discovered it.

00:07:36.220 --> 00:07:37.160
That's a big risk.

00:07:37.160 --> 00:07:45.020
And it's also not that easy to hire a team to build your product when you're still trying to figure out what a product is and all these things, right?

00:07:45.020 --> 00:07:50.380
Even if you hire non-expensive developers, it has still a cost.

00:07:50.380 --> 00:08:03.400
And if you want to, you know, just if you don't want to take too much risk and if you want to test your product to see if you have product market fits, I mean, you don't want to spend $5,000, $10,000, $15,000 on a product.

00:08:03.400 --> 00:08:04.480
It's difficult.

00:08:04.480 --> 00:08:10.460
And the alternative that people are most of the time advocating these days is no code.

00:08:10.460 --> 00:08:16.420
So it's building stuff with, let's say, Bubble, which is pretty popular.

00:08:16.420 --> 00:08:17.460
You've got Retool.

00:08:17.460 --> 00:08:19.660
They've been a sponsor of the show before.

00:08:19.660 --> 00:08:21.180
Retool, obviously.

00:08:21.180 --> 00:08:24.420
That's pretty nice, but mostly for internal apps.

00:08:24.420 --> 00:08:30.080
And also, you can just connect stuff through Zapier, through Make, formerly Integromat.

00:08:30.520 --> 00:08:35.320
You can achieve something, but you don't have the control on the UI.

00:08:35.320 --> 00:08:39.380
You don't really have the control exactly on what's happening behind the scenes.

00:08:39.380 --> 00:08:44.180
And you don't have the flexibility that you have if you really code yourself.

00:08:44.180 --> 00:08:47.380
So if you can really get your hands dirty and code on your own.

00:08:47.380 --> 00:08:50.280
So I use also to be a strong advocate of no code.

00:08:50.420 --> 00:08:56.160
So I'm still using, firstly, Zapier, and then later on, Make.

00:08:56.160 --> 00:09:05.840
But once I discovered Python in August, September 2022, then everything changed for me.

00:09:05.900 --> 00:09:09.200
Because then I could really start doing my own stuff.

00:09:09.200 --> 00:09:19.220
And I started with the back-end stuff, with the back-end scripts, let's say, to create competitive intelligence scripts, things like that.

00:09:19.220 --> 00:09:21.440
And I slowly moved into front-end.

00:09:21.440 --> 00:09:27.060
But first, for a few months, it was mostly local scripts on my computer.

00:09:27.060 --> 00:09:27.920
That's really interesting.

00:09:27.920 --> 00:09:31.260
The low-code, no-code stuff is super powerful.

00:09:31.260 --> 00:09:35.000
I think it does make it possible for people to build apps.

00:09:35.400 --> 00:09:41.000
I have a friend who built a platform a little bit on top of something that's kind of a low-code thing.

00:09:41.000 --> 00:09:43.320
And what they're doing is really impressive.

00:09:43.320 --> 00:09:46.600
And they've got lots of customers, and it's going really well.

00:09:46.600 --> 00:09:47.720
It's a vibrant business.

00:09:47.720 --> 00:09:51.320
It's always you're beholden to whatever that platform does.

00:09:51.320 --> 00:09:53.700
If the platform has downtime, you have downtime.

00:09:53.700 --> 00:09:59.660
If they're changing their feature set in a way that doesn't quite line up with what you're trying to do,

00:09:59.660 --> 00:10:04.420
well, that's too bad because they've changed their direction or whatever.

00:10:04.420 --> 00:10:09.500
And it's really powerful, but it's also a little bit of a risk, right, to be built on top of that.

00:10:09.720 --> 00:10:10.560
A risk, yes.

00:10:10.560 --> 00:10:15.960
But for me, it was even more, I would say, the arbitrage was even more about flexibility.

00:10:16.500 --> 00:10:29.820
So when you code something on your own with Python, JavaScript, as I'm doing now, it's faster in many cases than trying to figure out how to connect, let's say, Airtable with something else.

00:10:29.940 --> 00:10:39.140
And then you've got to think about how the data is structured in Airtable, how the data is to be structured on the other side, and then how to connect them together.

00:10:39.140 --> 00:10:47.020
Sometimes it's easier if you just have a SQLite database or MySQL database.

00:10:47.020 --> 00:10:55.360
And then if you do your own stuff on your own without trying to connect existing SaaS together.

00:10:55.360 --> 00:11:02.380
It was more about flexibility for me, the main reason why I switched almost completely from no code to coding.

00:11:02.380 --> 00:11:03.200
That's really interesting.

00:11:03.400 --> 00:11:06.560
I guess one more that would be worth considering is price.

00:11:06.560 --> 00:11:10.080
Some of these low-code, no-code platforms are really powerful.

00:11:10.080 --> 00:11:16.660
But when you start to look at price for a decent number of users using your app, a lot of them are built for internal use cases.

00:11:16.660 --> 00:11:21.760
They're not really built for having a bunch of multi-tenant style users and so on.

00:11:21.760 --> 00:11:24.300
But also, they can just get real expensive real quick.

00:11:24.300 --> 00:11:32.940
Yes, because they are based usually on the amount of transactions or scenarios or zaps that can run.

00:11:32.940 --> 00:11:38.940
So if you want to transfer one piece of data from one software to another one, it's one transaction.

00:11:38.940 --> 00:11:46.680
If you have, let's say, 10,000 transactions per month for a certain price, then you can run out of transactions pretty quickly.

00:11:46.680 --> 00:11:59.880
And very quickly, you end up paying $25, $30, $40 for a pretty low amount of transactions, API calls basically, between the different SaaS.

00:11:59.880 --> 00:12:08.440
And if you glue them together, one tool connects to another, which connects to another, then you've got to pay for kind of the traffic and the activity in all three.

00:12:08.440 --> 00:12:10.400
It's not just like, well, I'm talking to my database.

00:12:10.400 --> 00:12:14.660
I'm now talking to some other service that's got something going on.

00:12:14.660 --> 00:12:21.740
And the fact is also that there are a few tools that enable you to create a UI user interface for your product.

00:12:21.740 --> 00:12:26.520
But you're limited to the building blocks usually that they offer, even if you can tweak them with some code.

00:12:26.520 --> 00:12:28.460
And it's a bit the same.

00:12:28.460 --> 00:12:33.260
I would say it's really also the same issue that I've experienced on WordPress, let's say.

00:12:33.260 --> 00:12:38.540
The problem is that if you use something like Bubble and you want to build something with it,

00:12:38.540 --> 00:12:48.900
you bring to your app all the mothership, the core of the big app, of Bubble as a whole, when you want to build something on top of a platform like that.

00:12:48.900 --> 00:12:56.680
It's a lot of things that you don't really need for your specific apps, but that have to be there because the whole engine has to run.

00:12:56.680 --> 00:13:00.660
That's usually what you also experience with WordPress, for instance.

00:13:00.660 --> 00:13:07.860
When you have a site on WordPress, maybe sometimes or even most of the time, you don't need that big engine.

00:13:07.860 --> 00:13:12.880
You could work with a static website with a few HTML, CSS, JavaScript pages.

00:13:12.880 --> 00:13:14.520
That would be much lighter.

00:13:14.520 --> 00:13:19.140
There would be less code to activate to have your website up and running.

00:13:19.140 --> 00:13:29.100
So in terms of performance, if you can code your own stuff, I think it's also a good reason to choose coding versus no code if you can do it.

00:13:29.100 --> 00:13:29.640
Totally agree.

00:13:29.860 --> 00:13:33.060
Price, performance, control, all those things.

00:13:33.060 --> 00:13:37.520
That said, you do have to understand more about the world.

00:13:37.520 --> 00:13:43.100
Like one thing we were coordinating around is just like understanding web app architecture.

00:13:43.100 --> 00:13:49.980
I don't know how you feel about it, but I feel like a lot of the guidance that is out there is too intense.

00:13:49.980 --> 00:13:51.700
There's too many moving parts.

00:13:51.700 --> 00:13:58.700
Everyone thinks you need to have some kind of background worker service like Celery, and you need a caching layer,

00:13:59.060 --> 00:14:00.900
and you need this and you need that.

00:14:00.900 --> 00:14:05.080
And it just starts to be like, whoa, this is like running Netflix.

00:14:05.080 --> 00:14:06.260
You know what I mean?

00:14:06.260 --> 00:14:11.440
Whereas a lot of times what you need is a back end, a front end and some kind of data store.

00:14:11.440 --> 00:14:12.240
And that's it.

00:14:12.240 --> 00:14:17.800
And that data store, you mentioned it before, the data store can be in the early days could be SQLite,

00:14:17.940 --> 00:14:22.740
which doesn't require another server or another thing to maintain and connect and secure.

00:14:22.740 --> 00:14:25.680
And it can just be a file that you back up.

00:14:25.680 --> 00:14:26.120
Exactly.

00:14:26.120 --> 00:14:27.920
While you're proving out the idea, right?

00:14:28.000 --> 00:14:32.560
So maybe you're coming from a place where you weren't a DevOps expert.

00:14:32.560 --> 00:14:35.040
You know, like how did this transition go for you?

00:14:35.040 --> 00:14:43.740
When I started developing an app, for some reason, I came across Flask as a solution for Python.

00:14:43.740 --> 00:14:47.420
So I started developing the app on Flask.

00:14:47.420 --> 00:14:53.920
And what I like about Flask is that if you compare it, let's say you use Flask,

00:14:54.020 --> 00:14:58.360
and then for the pages, you use HTML, CSS and Vanilla JavaScript.

00:14:58.360 --> 00:15:04.580
What I like is that you can deploy an app which comes from a single folder and you've got everything there,

00:15:04.580 --> 00:15:12.120
your main Flask file and then all the, let's say the sub files in Python with all the business logic

00:15:12.120 --> 00:15:15.180
that you can isolate in one file or another.

00:15:15.180 --> 00:15:16.840
It's one project.

00:15:16.840 --> 00:15:18.820
And then you deploy the project to GitHub.

00:15:18.820 --> 00:15:21.800
And then let's say you connect GitHub to Railway.

00:15:21.920 --> 00:15:24.560
I'm using Railway for my deployment.

00:15:24.560 --> 00:15:26.440
So you connect GitHub to Railway.

00:15:26.440 --> 00:15:33.540
And then once you update your code in PyCharm or in Visual Studio,

00:15:33.540 --> 00:15:36.700
then you have the automatic deployment to Railway.

00:15:36.700 --> 00:15:37.740
But it's one project.

00:15:37.740 --> 00:15:42.240
If you want to decouple completely the backend from the front end,

00:15:42.240 --> 00:15:45.660
let's say you work with something like Next.js, for instance,

00:15:45.660 --> 00:15:48.320
and then you want to have a backend in something else,

00:15:48.780 --> 00:15:52.220
then you've got to have multiple instances and connect them together.

00:15:52.220 --> 00:15:54.260
It becomes more complicated.

00:15:54.260 --> 00:15:56.960
But if you want to create something simple,

00:15:56.960 --> 00:16:01.240
you can keep it simple with one single Flask web app.

00:16:01.240 --> 00:16:03.340
And that's what I've been doing so far.

00:16:03.600 --> 00:16:06.840
Most of the iJingle maker that I built,

00:16:06.840 --> 00:16:09.540
that I've been building since September 23,

00:16:09.540 --> 00:16:11.140
is a Flask web app.

00:16:11.140 --> 00:16:13.820
So it's one project, one big project.

00:16:13.820 --> 00:16:14.820
It's one project.

00:16:14.820 --> 00:16:18.280
It's interesting that you mentioned, Cilary, a few moments ago,

00:16:18.280 --> 00:16:20.800
because I'm about to ship a new app,

00:16:20.800 --> 00:16:24.300
which is coming in the next two weeks or three weeks, I think.

00:16:24.620 --> 00:16:29.440
And that's the first time after almost 18 months of development

00:16:29.440 --> 00:16:32.800
that I've considered using something like that

00:16:32.800 --> 00:16:37.320
because I needed it for performance reasons to process something.

00:16:37.320 --> 00:16:39.160
Something you want to start off in the background

00:16:39.160 --> 00:16:42.040
and get back and just let it be done later, right?

00:16:42.040 --> 00:16:42.520
Yeah.

00:16:42.520 --> 00:16:43.920
And it was not that easy.

00:16:44.280 --> 00:16:47.940
We had a discussion with someone who is amazing

00:16:47.940 --> 00:16:51.180
on the Discord of Railway two or three days ago

00:16:51.180 --> 00:16:55.600
because if you're deploying things on Railway,

00:16:55.600 --> 00:16:57.080
you would usually use,

00:16:57.080 --> 00:17:01.040
that's what they advise you to do as on Heroku,

00:17:01.040 --> 00:17:01.880
a proc file.

00:17:01.880 --> 00:17:04.980
And the proc file, you've got the start commands

00:17:04.980 --> 00:17:07.320
that will start your project.

00:17:07.320 --> 00:17:10.960
But on Heroku, which is a competitor of Railway,

00:17:10.960 --> 00:17:16.760
you can start both the web app and the worker in the same file.

00:17:16.760 --> 00:17:18.820
But you can't do that on Railway.

00:17:18.820 --> 00:17:21.180
You've got theoretically to have two different projects,

00:17:21.180 --> 00:17:22.960
which kind of defeats the purpose.

00:17:22.960 --> 00:17:24.840
You kind of deploy them both, right?

00:17:24.840 --> 00:17:27.220
But then you get to more coordination.

00:17:27.220 --> 00:17:27.800
Yeah.

00:17:27.800 --> 00:17:30.840
But fortunately, and there is a discussion on the Discord

00:17:30.840 --> 00:17:32.840
between me and one of their guys there,

00:17:32.840 --> 00:17:36.980
they had a way to create a custom JSON for me,

00:17:37.580 --> 00:17:41.120
which managed to start both the web app and the worker

00:17:41.120 --> 00:17:43.500
in the same deployment.

00:17:43.500 --> 00:17:46.860
But I had to fight, to be honest with you,

00:17:46.860 --> 00:17:49.380
for like four or five hours to find a solution.

00:17:49.380 --> 00:17:51.280
Because sometimes the problem,

00:17:51.280 --> 00:17:53.480
and that's the issue that I've seen a lot,

00:17:53.480 --> 00:17:55.480
is that traditional developers,

00:17:55.480 --> 00:17:57.040
like professional developers,

00:17:57.040 --> 00:17:59.340
not people like me, not random guys like me,

00:17:59.340 --> 00:18:02.040
usually they assume that the people

00:18:02.040 --> 00:18:04.260
that they're supposed to explain things to

00:18:04.260 --> 00:18:07.360
know much more than what they do.

00:18:07.360 --> 00:18:10.680
And so they just write a few instructions,

00:18:10.680 --> 00:18:13.700
you know, like cryptic instructions

00:18:13.700 --> 00:18:15.900
that nobody really understands.

00:18:15.900 --> 00:18:17.940
And they would assume that everyone

00:18:17.940 --> 00:18:20.500
reading those instructions would understand

00:18:20.500 --> 00:18:22.120
what they have to do to,

00:18:22.120 --> 00:18:24.680
let's say, use this worker service, for instance.

00:18:24.680 --> 00:18:26.180
But that's not the case.

00:18:26.180 --> 00:18:27.000
I totally agree.

00:18:28.640 --> 00:18:30.520
This portion of Talk Python To Me

00:18:30.520 --> 00:18:31.960
is brought to you by Mailtrap,

00:18:31.960 --> 00:18:35.480
an email delivery platform that developers love.

00:18:35.480 --> 00:18:39.340
An email sending solution with industry-best analytics,

00:18:39.340 --> 00:18:41.820
SMTP and email APIs,

00:18:41.820 --> 00:18:44.580
SDKs for major programming languages,

00:18:44.580 --> 00:18:47.300
and 24-7 human support.

00:18:47.300 --> 00:18:50.280
Try for free at mailtrap.io.

00:18:51.640 --> 00:18:53.620
You know, it's kind of the curse of knowledge.

00:18:53.620 --> 00:18:56.140
Like once you know all of these things,

00:18:56.140 --> 00:18:57.400
it's really hard to remember.

00:18:57.400 --> 00:18:58.300
Oh, yeah.

00:18:58.300 --> 00:18:59.260
So then you just,

00:18:59.260 --> 00:19:00.420
oh, just run that in Docker

00:19:00.420 --> 00:19:03.120
and then link it and set up a network over there.

00:19:03.120 --> 00:19:04.040
You're like, wait a minute.

00:19:04.040 --> 00:19:04.480
Yeah.

00:19:04.480 --> 00:19:05.560
I don't know how to do that.

00:19:05.560 --> 00:19:07.420
I'm just trying to run my Python app.

00:19:07.420 --> 00:19:09.480
Like you're bringing a whole new thing in

00:19:09.480 --> 00:19:11.440
that you think makes it sound easy

00:19:11.440 --> 00:19:12.860
and it makes it sound real hard to me.

00:19:12.860 --> 00:19:14.480
I totally agree this is a problem.

00:19:14.480 --> 00:19:15.800
So many moving pieces.

00:19:15.800 --> 00:19:18.400
When you start coding,

00:19:18.400 --> 00:19:19.780
I mean, obviously you know that

00:19:19.780 --> 00:19:21.260
because you've been in this game

00:19:21.260 --> 00:19:23.300
for much longer than me.

00:19:23.300 --> 00:19:24.920
But once you start coding,

00:19:24.920 --> 00:19:26.440
there are so many little things

00:19:26.440 --> 00:19:28.740
that you have to know to make this thing work.

00:19:28.740 --> 00:19:32.640
So it starts with how to just configure GitHub

00:19:32.640 --> 00:19:34.820
and connect it to your...

00:19:34.820 --> 00:19:35.640
How do you use Git?

00:19:35.640 --> 00:19:36.960
If you have a Git conflict,

00:19:36.960 --> 00:19:37.900
you might be like,

00:19:37.900 --> 00:19:38.660
well, this is done.

00:19:38.660 --> 00:19:39.840
I can't do anything else anymore.

00:19:39.840 --> 00:19:40.720
It's broken.

00:19:40.720 --> 00:19:41.120
Yeah.

00:19:41.120 --> 00:19:42.620
I mean, it's really overwhelming

00:19:42.620 --> 00:19:43.860
when you're new, right?

00:19:43.860 --> 00:19:44.520
There's a lot.

00:19:44.520 --> 00:19:47.640
And that's where AI today helps you

00:19:47.640 --> 00:19:49.520
because in most cases,

00:19:49.520 --> 00:19:52.100
if you know how to talk with the AI,

00:19:52.100 --> 00:19:54.060
you will get answers

00:19:54.060 --> 00:19:56.140
that are much easier to understand

00:19:56.140 --> 00:19:57.120
that what you would have

00:19:57.120 --> 00:19:58.440
on Stack Overflow, for instance.

00:19:58.440 --> 00:19:59.000
I agree.

00:19:59.000 --> 00:20:00.960
It's very interesting how helpful it is.

00:20:00.960 --> 00:20:01.860
I think it's a good time

00:20:01.860 --> 00:20:02.680
to about jump into that.

00:20:02.680 --> 00:20:03.380
But before we do,

00:20:03.380 --> 00:20:04.780
tell people about Railway a bit.

00:20:04.780 --> 00:20:05.860
How does this work?

00:20:05.860 --> 00:20:07.400
I haven't used Railway before.

00:20:07.400 --> 00:20:08.540
It's a platform

00:20:08.540 --> 00:20:11.420
where you can deploy your apps, basically.

00:20:11.420 --> 00:20:16.500
It connects to your GitHub account.

00:20:17.300 --> 00:20:18.040
It's not only, I mean,

00:20:18.040 --> 00:20:19.160
you have on Railway

00:20:19.160 --> 00:20:20.240
not only a possibility

00:20:20.240 --> 00:20:22.720
to deploy your Flask app

00:20:22.720 --> 00:20:25.460
or other types of apps also,

00:20:25.460 --> 00:20:27.020
but they also offer

00:20:27.020 --> 00:20:29.160
all the database aspects.

00:20:29.160 --> 00:20:33.640
So you can spin a Redis database.

00:20:33.640 --> 00:20:35.760
You can have a MySQL database.

00:20:35.760 --> 00:20:37.420
I think they also have Mongo.

00:20:37.420 --> 00:20:40.000
I mean, they have most of the formats

00:20:40.000 --> 00:20:40.800
that you can expect.

00:20:40.800 --> 00:20:42.540
And the great thing is that

00:20:42.540 --> 00:20:45.100
everything is on the same platform.

00:20:45.300 --> 00:20:47.340
Let's say that I've got another project

00:20:47.340 --> 00:20:49.180
I'm involved with a developer,

00:20:49.180 --> 00:20:50.600
with a real developer,

00:20:50.600 --> 00:20:51.360
hi to Alex,

00:20:51.360 --> 00:20:52.780
if he listens to this podcast,

00:20:52.780 --> 00:20:54.540
a professional developer.

00:20:54.540 --> 00:20:56.380
For that project,

00:20:56.380 --> 00:20:57.000
for instance,

00:20:57.000 --> 00:20:58.980
we have an app on Heroku.

00:20:58.980 --> 00:21:01.140
We have a database

00:21:01.140 --> 00:21:02.740
on MongoDB Atlas.

00:21:02.740 --> 00:21:06.880
And we have the files

00:21:06.880 --> 00:21:09.340
uploaded to S3,

00:21:09.340 --> 00:21:10.420
to Amazon S3,

00:21:10.420 --> 00:21:11.580
for the file storage.

00:21:12.240 --> 00:21:13.020
On Railway,

00:21:13.020 --> 00:21:13.520
you can,

00:21:13.520 --> 00:21:14.600
at least it's what I do,

00:21:14.600 --> 00:21:15.200
you can have,

00:21:15.200 --> 00:21:16.420
at the same time,

00:21:16.420 --> 00:21:17.720
the deployment of the app,

00:21:17.720 --> 00:21:19.340
which replaces Heroku.

00:21:19.340 --> 00:21:21.280
And you can have the database

00:21:21.280 --> 00:21:22.460
also together.

00:21:22.460 --> 00:21:23.840
And the cool thing is that

00:21:23.840 --> 00:21:24.360
they are,

00:21:24.360 --> 00:21:25.100
I would say,

00:21:25.100 --> 00:21:25.720
even physically

00:21:25.720 --> 00:21:27.200
at the same location.

00:21:27.200 --> 00:21:29.180
So in terms of performance,

00:21:29.180 --> 00:21:31.060
it's pretty easy to handle.

00:21:31.060 --> 00:21:32.880
And it's very user-friendly.

00:21:32.880 --> 00:21:33.420
I mean,

00:21:33.420 --> 00:21:35.360
very, very easy to use.

00:21:35.480 --> 00:21:36.760
From what I saw,

00:21:36.760 --> 00:21:38.540
even easier to understand

00:21:38.540 --> 00:21:39.680
than Heroku.

00:21:39.680 --> 00:21:41.380
And I tried also

00:21:41.380 --> 00:21:43.120
some things like Vercel,

00:21:43.120 --> 00:21:46.220
or I use for some project also,

00:21:46.220 --> 00:21:48.120
but that's more for static website,

00:21:48.120 --> 00:21:48.620
Netlify.

00:21:48.620 --> 00:21:50.640
But for this time...

00:21:50.640 --> 00:21:51.940
Netlify is fantastic for static.

00:21:51.940 --> 00:21:52.780
For static,

00:21:52.780 --> 00:21:54.040
Netlify is just amazing.

00:21:54.040 --> 00:21:55.040
And just the one

00:21:55.040 --> 00:21:56.560
where you can just drag and drop

00:21:56.560 --> 00:21:57.060
a project,

00:21:57.060 --> 00:21:57.560
for instance,

00:21:57.560 --> 00:21:58.560
for a static website.

00:21:58.560 --> 00:21:59.100
So easy.

00:21:59.500 --> 00:22:00.420
But for a more

00:22:00.420 --> 00:22:01.520
multi-tenant,

00:22:01.520 --> 00:22:02.100
dynamic,

00:22:02.100 --> 00:22:02.860
you know,

00:22:02.860 --> 00:22:03.380
web app,

00:22:03.380 --> 00:22:04.940
like the iJingle Maker,

00:22:04.940 --> 00:22:06.740
Railway was really cool.

00:22:06.740 --> 00:22:08.240
And as you can see

00:22:08.240 --> 00:22:08.920
from the presentation,

00:22:08.920 --> 00:22:10.220
it's very user-friendly.

00:22:10.220 --> 00:22:11.840
It definitely is.

00:22:11.840 --> 00:22:13.220
And the pricing is actually

00:22:13.220 --> 00:22:14.420
really decent.

00:22:14.420 --> 00:22:15.660
They have a free trial

00:22:15.660 --> 00:22:17.380
and then $5 a month.

00:22:17.380 --> 00:22:17.660
Yeah.

00:22:17.660 --> 00:22:18.360
But that gets you

00:22:18.360 --> 00:22:19.220
8 gigs of RAM

00:22:19.220 --> 00:22:21.240
and 8 CPUs per service.

00:22:21.240 --> 00:22:22.480
That is really good.

00:22:22.480 --> 00:22:23.460
I started it

00:22:23.460 --> 00:22:24.940
on the OB plan.

00:22:24.940 --> 00:22:27.140
And I think that today,

00:22:27.140 --> 00:22:28.340
just to give you an idea,

00:22:28.800 --> 00:22:32.660
with roughly 500 users

00:22:32.660 --> 00:22:34.740
coming to the app per day

00:22:34.740 --> 00:22:36.280
and, you know,

00:22:36.280 --> 00:22:37.600
a lot of them using the product,

00:22:37.600 --> 00:22:39.620
I pay for that

00:22:39.620 --> 00:22:41.760
roughly $15 a month.

00:22:41.760 --> 00:22:42.240
Incredible.

00:22:42.240 --> 00:22:45.560
For both the app deployment

00:22:45.560 --> 00:22:46.720
and the database,

00:22:46.720 --> 00:22:47.860
which is in MySQL

00:22:47.860 --> 00:22:49.600
for RIDI Jingle Maker.

00:22:49.600 --> 00:22:50.740
That's pretty impressive.

00:22:50.740 --> 00:22:52.240
Good one to know about.

00:22:52.240 --> 00:22:52.720
This is cool.

00:22:52.720 --> 00:22:53.540
Yes, nice one.

00:22:53.540 --> 00:22:55.160
They have good Python support.

00:22:55.160 --> 00:22:55.940
Yes, yes.

00:22:55.940 --> 00:22:56.420
Very good.

00:22:56.420 --> 00:22:56.860
And they have,

00:22:56.860 --> 00:22:57.700
as I said,

00:22:57.960 --> 00:22:59.900
like most people do today,

00:22:59.900 --> 00:23:01.740
a Discord server

00:23:01.740 --> 00:23:03.720
monitored also by volunteers.

00:23:03.720 --> 00:23:05.080
And there was a guy

00:23:05.080 --> 00:23:05.700
the other day,

00:23:05.700 --> 00:23:06.680
I didn't even know

00:23:06.680 --> 00:23:07.400
he was not part

00:23:07.400 --> 00:23:08.220
of the official team

00:23:08.220 --> 00:23:08.700
of Railway

00:23:08.700 --> 00:23:09.720
and it really helped me.

00:23:09.720 --> 00:23:10.900
He wrote some code

00:23:10.900 --> 00:23:12.060
for me to make this thing

00:23:12.060 --> 00:23:13.320
work with Celery.

00:23:13.320 --> 00:23:15.200
So it was really,

00:23:15.200 --> 00:23:16.060
really amazing.

00:23:16.060 --> 00:23:17.300
And it was on a Sunday

00:23:17.300 --> 00:23:18.800
in the evening.

00:23:18.800 --> 00:23:20.020
So really nice.

00:23:20.160 --> 00:23:20.760
Yeah, that's amazing.

00:23:20.760 --> 00:23:21.760
One thing I just want

00:23:21.760 --> 00:23:22.320
to give a shout out

00:23:22.320 --> 00:23:23.420
to that I came across recently

00:23:23.420 --> 00:23:24.100
that's interesting

00:23:24.100 --> 00:23:25.160
is Coolify.

00:23:25.160 --> 00:23:26.180
Coolify.

00:23:26.180 --> 00:23:26.740
Which is,

00:23:26.740 --> 00:23:28.820
it's self-hosted

00:23:28.820 --> 00:23:29.940
Heroku Netlify

00:23:29.940 --> 00:23:31.420
Vercel alternative

00:23:31.420 --> 00:23:33.280
and you just git pushed to it.

00:23:33.280 --> 00:23:34.360
I don't know

00:23:34.360 --> 00:23:35.500
if it's better than this though

00:23:35.500 --> 00:23:37.540
because you've got to have

00:23:37.540 --> 00:23:38.500
a decent server

00:23:38.500 --> 00:23:39.120
to run it on

00:23:39.120 --> 00:23:39.580
and you've got to run

00:23:39.580 --> 00:23:40.380
the Docker stuff

00:23:40.380 --> 00:23:41.220
and whatnot

00:23:41.220 --> 00:23:42.600
to sort of do it.

00:23:42.600 --> 00:23:43.140
But yeah,

00:23:43.140 --> 00:23:43.500
anyway,

00:23:43.500 --> 00:23:44.960
speaking of interesting deployments.

00:23:45.020 --> 00:23:45.180
Yeah,

00:23:45.180 --> 00:23:46.180
you're going to manage also

00:23:46.180 --> 00:23:47.380
because the other day,

00:23:47.380 --> 00:23:49.120
I think it was 10 days ago,

00:23:49.120 --> 00:23:51.120
there was a DDoS attack,

00:23:51.120 --> 00:23:51.640
I think,

00:23:51.640 --> 00:23:52.560
against Railway

00:23:52.560 --> 00:23:54.660
for the European part

00:23:54.660 --> 00:23:56.460
of their network.

00:23:56.460 --> 00:23:57.980
But they were very quick

00:23:57.980 --> 00:23:59.240
jumping on it

00:23:59.240 --> 00:24:01.220
and managing all of that

00:24:01.220 --> 00:24:03.000
and doing all the mitigation

00:24:03.000 --> 00:24:03.780
against it.

00:24:03.780 --> 00:24:05.620
If you run your own service,

00:24:05.620 --> 00:24:07.100
then you've got to take care

00:24:07.100 --> 00:24:07.900
of all of that

00:24:07.900 --> 00:24:08.620
on your own,

00:24:08.620 --> 00:24:09.400
all the security

00:24:09.400 --> 00:24:10.180
and all of that.

00:24:10.180 --> 00:24:10.920
There's benefits,

00:24:10.920 --> 00:24:12.640
but there's also drawbacks there.

00:24:12.640 --> 00:24:13.440
All right,

00:24:13.440 --> 00:24:14.840
let's talk about

00:24:14.840 --> 00:24:16.000
I think the right way

00:24:16.000 --> 00:24:17.060
to start talking about

00:24:17.060 --> 00:24:17.680
this,

00:24:17.680 --> 00:24:19.180
how you're using AI

00:24:19.180 --> 00:24:20.000
and the journey

00:24:20.000 --> 00:24:20.620
you went through.

00:24:20.620 --> 00:24:20.880
I mean,

00:24:20.880 --> 00:24:21.500
we've talked a lot

00:24:21.500 --> 00:24:23.000
about foundations already,

00:24:23.000 --> 00:24:24.500
but let's talk about your app.

00:24:24.500 --> 00:24:25.700
You mentioned a couple of times

00:24:25.700 --> 00:24:26.960
AI Jingle Maker.

00:24:26.960 --> 00:24:28.600
Tell people what it does.

00:24:28.600 --> 00:24:29.580
It's a web app

00:24:29.580 --> 00:24:30.660
that you can find

00:24:30.660 --> 00:24:32.000
on AI Jingle Maker dot com.

00:24:32.000 --> 00:24:34.360
And if you enter the app,

00:24:34.360 --> 00:24:36.080
you can create

00:24:36.080 --> 00:24:37.800
your own sweepers,

00:24:37.800 --> 00:24:38.900
radio jingles,

00:24:38.900 --> 00:24:40.200
podcast intros,

00:24:40.200 --> 00:24:41.220
audio promos,

00:24:41.220 --> 00:24:42.560
as if you were

00:24:42.560 --> 00:24:44.160
playing with Lego bricks,

00:24:44.160 --> 00:24:44.760
I would say.

00:24:45.020 --> 00:24:46.480
It's not the usual

00:24:46.480 --> 00:24:48.520
to experience.

00:24:48.520 --> 00:24:48.940
Like,

00:24:48.940 --> 00:24:50.080
if you'll be using things

00:24:50.080 --> 00:24:51.120
like GarageBand

00:24:51.120 --> 00:24:52.480
or FL Studio

00:24:52.480 --> 00:24:54.720
or Pro Tools

00:24:54.720 --> 00:24:56.900
to edit your audio,

00:24:56.900 --> 00:24:58.280
you can imagine

00:24:58.280 --> 00:24:59.160
those waves

00:24:59.160 --> 00:24:59.580
that you've got

00:24:59.580 --> 00:25:00.540
to move around

00:25:00.540 --> 00:25:01.820
to create

00:25:01.820 --> 00:25:03.200
your jingles

00:25:03.200 --> 00:25:03.940
or your sweepers.

00:25:03.940 --> 00:25:04.520
If you're using,

00:25:04.520 --> 00:25:05.300
for instance,

00:25:05.300 --> 00:25:06.200
the open source

00:25:06.200 --> 00:25:07.920
Audacity software

00:25:07.920 --> 00:25:08.960
also on your computer,

00:25:08.960 --> 00:25:09.760
you can do that.

00:25:09.760 --> 00:25:10.620
But still,

00:25:10.620 --> 00:25:11.580
you've got to know

00:25:11.580 --> 00:25:12.180
how to move

00:25:12.180 --> 00:25:13.800
these things around

00:25:13.800 --> 00:25:15.260
and how to play

00:25:15.260 --> 00:25:16.060
with the volume,

00:25:16.060 --> 00:25:16.820
the fade in,

00:25:16.820 --> 00:25:17.680
the fade out,

00:25:17.680 --> 00:25:18.780
the reverb,

00:25:18.780 --> 00:25:19.700
the chorus,

00:25:19.700 --> 00:25:20.360
the flanger,

00:25:20.360 --> 00:25:20.640
I mean,

00:25:20.640 --> 00:25:21.360
all the effects.

00:25:21.360 --> 00:25:23.320
And I mean,

00:25:23.320 --> 00:25:23.980
it's not that easy

00:25:23.980 --> 00:25:24.800
for many people.

00:25:24.800 --> 00:25:25.880
And so I thought

00:25:25.880 --> 00:25:27.620
that I could build

00:25:27.620 --> 00:25:28.440
something that

00:25:28.440 --> 00:25:29.980
made it as easy

00:25:29.980 --> 00:25:30.560
as pressing

00:25:30.560 --> 00:25:31.340
on a few buttons.

00:25:31.500 --> 00:25:32.400
that's the idea

00:25:32.400 --> 00:25:34.280
of the product.

00:25:34.280 --> 00:25:35.680
So the way

00:25:35.680 --> 00:25:36.580
you use it

00:25:36.580 --> 00:25:37.680
when you enter

00:25:37.680 --> 00:25:38.240
the product,

00:25:38.240 --> 00:25:39.200
you've got

00:25:39.200 --> 00:25:41.420
four different parts.

00:25:41.420 --> 00:25:41.700
You've got

00:25:41.700 --> 00:25:42.200
the intro,

00:25:42.200 --> 00:25:43.300
the background,

00:25:43.300 --> 00:25:44.340
the outro,

00:25:44.340 --> 00:25:45.820
and the voiceover,

00:25:45.820 --> 00:25:46.920
which is on top

00:25:46.920 --> 00:25:47.640
of the background.

00:25:47.640 --> 00:25:48.700
And the voiceover,

00:25:48.700 --> 00:25:49.140
you've got,

00:25:49.140 --> 00:25:50.080
now you've got

00:25:50.080 --> 00:25:51.020
three different options.

00:25:51.020 --> 00:25:52.120
You've got

00:25:52.120 --> 00:25:52.780
the possibility

00:25:52.780 --> 00:25:53.400
to record

00:25:53.400 --> 00:25:54.120
your own voice.

00:25:54.120 --> 00:25:55.580
So I rebuilt

00:25:55.580 --> 00:25:56.880
a voice recorder,

00:25:56.880 --> 00:25:58.720
an online voice recorder,

00:25:58.720 --> 00:25:59.280
where you can

00:25:59.280 --> 00:26:00.280
quickly record

00:26:00.280 --> 00:26:00.860
your voice,

00:26:00.860 --> 00:26:01.980
add a few effects,

00:26:01.980 --> 00:26:02.720
and then,

00:26:02.720 --> 00:26:03.020
boom,

00:26:03.020 --> 00:26:03.680
use that

00:26:03.680 --> 00:26:04.620
as your voiceover.

00:26:04.620 --> 00:26:05.540
You can also

00:26:05.540 --> 00:26:06.600
upload an existing

00:26:06.600 --> 00:26:08.080
recording that you

00:26:08.080 --> 00:26:08.780
have on your computer.

00:26:08.780 --> 00:26:09.480
So if you've got

00:26:09.480 --> 00:26:10.280
something that you

00:26:10.280 --> 00:26:11.200
recorded with your,

00:26:11.200 --> 00:26:12.380
with FL Studio

00:26:12.380 --> 00:26:13.160
or something else,

00:26:13.160 --> 00:26:13.940
you can upload it

00:26:13.940 --> 00:26:14.660
and use it

00:26:14.660 --> 00:26:15.760
as a voiceover.

00:26:15.760 --> 00:26:17.200
Or you can use AI.

00:26:17.200 --> 00:26:18.440
So I'm connected

00:26:18.440 --> 00:26:19.880
to a bunch

00:26:19.880 --> 00:26:21.660
of text-to-speech APIs.

00:26:21.660 --> 00:26:22.940
So I didn't develop

00:26:22.940 --> 00:26:24.040
the models myself.

00:26:24.040 --> 00:26:24.860
I'm not someone

00:26:24.860 --> 00:26:25.940
smart enough

00:26:25.940 --> 00:26:26.460
to develop

00:26:26.460 --> 00:26:27.580
a foundational model,

00:26:27.580 --> 00:26:28.640
but I'm connected

00:26:28.640 --> 00:26:29.500
to the APIs.

00:26:30.000 --> 00:26:30.860
and you can

00:26:30.860 --> 00:26:32.360
pick one of the voices.

00:26:32.360 --> 00:26:35.000
You can write your text,

00:26:35.000 --> 00:26:36.100
generate the voiceover,

00:26:36.100 --> 00:26:36.760
and once you have

00:26:36.760 --> 00:26:37.400
the voiceover,

00:26:37.400 --> 00:26:38.800
you just select it.

00:26:38.800 --> 00:26:40.000
And when you have

00:26:40.000 --> 00:26:40.640
the voiceover,

00:26:40.640 --> 00:26:41.520
you choose a background

00:26:41.520 --> 00:26:42.100
behind it.

00:26:42.100 --> 00:26:43.760
So let's say groovy music,

00:26:43.760 --> 00:26:45.320
house music,

00:26:45.320 --> 00:26:46.240
rock music,

00:26:46.240 --> 00:26:47.280
romantic music,

00:26:47.280 --> 00:26:47.540
whatever.

00:26:47.540 --> 00:26:48.080
You've got

00:26:48.080 --> 00:26:49.940
some pre-made

00:26:49.940 --> 00:26:51.740
sounds in the app.

00:26:51.740 --> 00:26:53.080
You choose an intro,

00:26:53.080 --> 00:26:53.840
an outro,

00:26:53.840 --> 00:26:55.000
and then you press

00:26:55.000 --> 00:26:55.840
on generate jingle.

00:26:56.120 --> 00:26:57.100
and in five seconds,

00:26:57.100 --> 00:26:57.780
you've got the jingle.

00:26:57.780 --> 00:26:58.800
That's basically,

00:26:58.800 --> 00:27:00.280
that's basically the idea.

00:27:00.280 --> 00:27:01.260
I'll put in the jingle

00:27:01.260 --> 00:27:02.180
so people will know

00:27:02.180 --> 00:27:03.560
exactly what this sounds.

00:27:03.560 --> 00:27:04.340
Yeah,

00:27:04.340 --> 00:27:05.440
I'll put it in right now.

00:27:05.440 --> 00:27:07.740
Party time!

00:27:07.740 --> 00:27:09.300
This is Martin Superstar,

00:27:09.300 --> 00:27:11.140
your number one favorite DJ

00:27:11.140 --> 00:27:12.180
in New York City.

00:27:14.340 --> 00:27:15.260
It's really cool

00:27:15.260 --> 00:27:16.840
and it's something

00:27:16.840 --> 00:27:17.780
that I've seen people

00:27:17.780 --> 00:27:19.700
hire voiceover actors

00:27:19.700 --> 00:27:20.740
on,

00:27:20.740 --> 00:27:21.940
like Fiverr

00:27:21.940 --> 00:27:22.780
and stuff like that.

00:27:22.780 --> 00:27:23.200
They'll maybe

00:27:23.200 --> 00:27:24.460
pay 30 bucks

00:27:24.460 --> 00:27:25.260
to have somebody

00:27:25.260 --> 00:27:26.560
do a couple of trials

00:27:26.560 --> 00:27:27.380
and throw some music

00:27:27.380 --> 00:27:28.140
on top of

00:27:28.140 --> 00:27:29.380
or something like that,

00:27:29.380 --> 00:27:29.580
right?

00:27:29.580 --> 00:27:30.900
And I'm a voiceover artist

00:27:30.900 --> 00:27:31.480
on Fiverr.

00:27:31.480 --> 00:27:32.600
I'm doing that also.

00:27:32.600 --> 00:27:34.460
So I know exactly

00:27:34.460 --> 00:27:35.100
what it is.

00:27:35.100 --> 00:27:35.980
Let me see if I can

00:27:35.980 --> 00:27:37.080
automate my job away.

00:27:37.080 --> 00:27:38.100
It was not really

00:27:38.100 --> 00:27:39.480
the idea of automating

00:27:39.480 --> 00:27:40.520
completely a job away.

00:27:40.520 --> 00:27:41.780
It was more like

00:27:41.780 --> 00:27:42.080
the,

00:27:42.080 --> 00:27:43.360
how can you create

00:27:43.360 --> 00:27:44.740
something that's self-service

00:27:44.740 --> 00:27:46.400
and that can meet

00:27:46.400 --> 00:27:47.640
the needs of people,

00:27:47.640 --> 00:27:48.240
as you said,

00:27:48.240 --> 00:27:49.080
who don't want to spend

00:27:49.080 --> 00:27:50.400
50, 50 bucks

00:27:50.400 --> 00:27:51.300
or 100 bucks

00:27:51.300 --> 00:27:52.280
for something,

00:27:52.280 --> 00:27:53.640
but who want to have

00:27:53.640 --> 00:27:54.900
an easy way

00:27:54.900 --> 00:27:55.640
to create

00:27:55.640 --> 00:27:57.200
basic sweepers,

00:27:57.200 --> 00:27:57.720
jingles

00:27:57.720 --> 00:27:58.760
or some other things.

00:27:58.760 --> 00:28:01.320
And the first target

00:28:01.320 --> 00:28:02.640
was mostly

00:28:02.640 --> 00:28:04.520
indie radio stations

00:28:04.520 --> 00:28:06.320
or small podcasts.

00:28:06.320 --> 00:28:08.020
But then I saw

00:28:08.020 --> 00:28:09.420
many brands

00:28:09.420 --> 00:28:10.100
coming,

00:28:10.100 --> 00:28:10.540
like,

00:28:10.540 --> 00:28:11.200
I wouldn't say,

00:28:11.200 --> 00:28:11.440
like,

00:28:11.440 --> 00:28:12.520
not the big brands,

00:28:12.640 --> 00:28:13.500
but small brands

00:28:13.500 --> 00:28:13.860
coming,

00:28:13.860 --> 00:28:15.440
like apparel brands

00:28:15.440 --> 00:28:17.060
or coffee shops

00:28:17.060 --> 00:28:18.180
or I had,

00:28:18.180 --> 00:28:19.520
the other day,

00:28:19.520 --> 00:28:20.900
a bar in Ibiza

00:28:20.900 --> 00:28:22.360
signing up

00:28:22.360 --> 00:28:24.100
and paying for credits

00:28:24.100 --> 00:28:24.860
to generate

00:28:24.860 --> 00:28:25.880
a promo

00:28:25.880 --> 00:28:26.720
for the bar

00:28:26.720 --> 00:28:27.480
in Ibiza.

00:28:27.480 --> 00:28:28.320
So,

00:28:28.320 --> 00:28:28.860
yeah,

00:28:28.860 --> 00:28:29.680
it's not only

00:28:29.680 --> 00:28:30.780
radio stations

00:28:30.780 --> 00:28:31.880
and podcasts,

00:28:31.880 --> 00:28:32.800
it's also anyone

00:28:32.800 --> 00:28:34.240
who wants to create

00:28:34.240 --> 00:28:35.780
a promo

00:28:35.780 --> 00:28:36.540
for their business.

00:28:36.540 --> 00:28:37.740
So that's also

00:28:37.740 --> 00:28:39.600
one of the services.

00:28:39.880 --> 00:28:40.920
when I started,

00:28:40.920 --> 00:28:41.540
it was only

00:28:41.540 --> 00:28:43.180
short sweepers,

00:28:43.180 --> 00:28:43.680
jingles,

00:28:43.680 --> 00:28:44.680
radio station,

00:28:44.680 --> 00:28:45.000
ideas,

00:28:45.000 --> 00:28:45.640
stuff like that.

00:28:45.640 --> 00:28:46.620
But then I added

00:28:46.620 --> 00:28:47.620
something which is

00:28:47.620 --> 00:28:49.060
called the promo maker,

00:28:49.060 --> 00:28:49.700
which you have

00:28:49.700 --> 00:28:51.120
in the jingle maker,

00:28:51.120 --> 00:28:52.260
where you can create

00:28:52.260 --> 00:28:53.260
something which is

00:28:53.260 --> 00:28:54.760
up to 30 seconds long.

00:28:54.760 --> 00:28:55.980
So more like a radio ad.

00:28:55.980 --> 00:28:56.620
That's another.

00:28:56.620 --> 00:28:57.500
And there,

00:28:57.500 --> 00:28:59.020
you can also use AI.

00:28:59.020 --> 00:29:00.340
It's connected to OpenAI,

00:29:00.340 --> 00:29:01.160
to be honest,

00:29:01.160 --> 00:29:02.660
but you can also use AI

00:29:02.660 --> 00:29:03.740
to generate the text

00:29:03.740 --> 00:29:04.660
of your promo.

00:29:04.820 --> 00:29:05.660
So just put the name

00:29:05.660 --> 00:29:06.260
of your business,

00:29:06.260 --> 00:29:07.900
what you're selling,

00:29:07.900 --> 00:29:08.560
your service,

00:29:08.560 --> 00:29:09.060
your product.

00:29:09.060 --> 00:29:10.260
Then it will suggest

00:29:10.260 --> 00:29:10.940
the text.

00:29:10.940 --> 00:29:12.140
Then you choose

00:29:12.140 --> 00:29:13.220
the voice,

00:29:13.220 --> 00:29:15.000
generate the AI voice,

00:29:15.000 --> 00:29:16.180
and then you add the sounds

00:29:16.180 --> 00:29:16.900
and then it's finished.

00:29:16.900 --> 00:29:18.720
So let's say in 20 seconds,

00:29:18.720 --> 00:29:19.740
you've got a node you add.

00:29:19.740 --> 00:29:21.460
So that's the promise

00:29:21.460 --> 00:29:22.500
for the promo maker.

00:29:22.500 --> 00:29:23.380
It's a cool app

00:29:23.380 --> 00:29:24.520
and it's really impressive

00:29:24.520 --> 00:29:25.280
to look at this

00:29:25.280 --> 00:29:26.000
and think that

00:29:26.000 --> 00:29:27.060
you built this

00:29:27.060 --> 00:29:29.060
with less than a year

00:29:29.060 --> 00:29:29.740
of Python

00:29:29.740 --> 00:29:31.040
or really any coding

00:29:31.040 --> 00:29:31.880
experience, right?

00:29:31.880 --> 00:29:33.320
Roughly that amount?

00:29:33.420 --> 00:29:34.120
To put things

00:29:34.120 --> 00:29:35.240
really in perspective

00:29:35.240 --> 00:29:36.940
so that people know

00:29:36.940 --> 00:29:38.220
what they can expect

00:29:38.220 --> 00:29:39.560
if they start

00:29:39.560 --> 00:29:41.040
their coding journey.

00:29:41.040 --> 00:29:42.360
So I started

00:29:42.360 --> 00:29:44.000
coding in Python

00:29:44.000 --> 00:29:45.040
in September,

00:29:45.040 --> 00:29:46.040
September,

00:29:46.040 --> 00:29:46.500
October,

00:29:46.500 --> 00:29:47.860
2022.

00:29:47.860 --> 00:29:49.540
For a few months,

00:29:49.540 --> 00:29:50.020
as I said,

00:29:50.020 --> 00:29:51.160
I was mostly coding

00:29:51.160 --> 00:29:53.500
scripts on my computer

00:29:53.500 --> 00:29:54.280
that helped me

00:29:54.280 --> 00:29:55.260
in my daily business

00:29:55.260 --> 00:29:56.420
because I didn't tell you

00:29:56.420 --> 00:29:57.020
in the beginning,

00:29:57.020 --> 00:29:58.580
but most of my activity

00:29:58.580 --> 00:29:59.540
is online marketing.

00:29:59.540 --> 00:30:01.460
It's working for startups

00:30:01.460 --> 00:30:02.720
and bigger companies also.

00:30:02.920 --> 00:30:04.520
I need scripts

00:30:04.520 --> 00:30:07.020
for competitive intelligence,

00:30:07.020 --> 00:30:07.760
for SEO,

00:30:07.760 --> 00:30:09.680
or for even content production,

00:30:09.680 --> 00:30:10.480
this type of thing.

00:30:10.480 --> 00:30:12.180
So I created a lot

00:30:12.180 --> 00:30:13.640
of scripts locally

00:30:13.640 --> 00:30:14.360
on my computer

00:30:14.360 --> 00:30:16.160
before considering

00:30:16.160 --> 00:30:17.880
the front-end part.

00:30:17.880 --> 00:30:18.860
Then that's when

00:30:18.860 --> 00:30:20.240
I discovered Flask.

00:30:20.240 --> 00:30:21.320
That was just before

00:30:21.320 --> 00:30:22.960
the summer of 2023.

00:30:22.960 --> 00:30:25.520
And yes,

00:30:25.520 --> 00:30:26.540
the first version

00:30:26.540 --> 00:30:27.360
of the iJingle maker

00:30:27.360 --> 00:30:28.080
that I launched,

00:30:28.180 --> 00:30:28.660
it was just

00:30:28.660 --> 00:30:30.120
on the home page.

00:30:30.120 --> 00:30:30.920
You couldn't

00:30:30.920 --> 00:30:31.420
basically

00:30:31.420 --> 00:30:33.000
tweak anything.

00:30:33.000 --> 00:30:33.500
There were

00:30:33.500 --> 00:30:34.920
just four different

00:30:34.920 --> 00:30:35.660
jingles

00:30:35.660 --> 00:30:36.860
and just put the name

00:30:36.860 --> 00:30:37.840
of your radio station.

00:30:37.840 --> 00:30:38.940
You press on generate

00:30:38.940 --> 00:30:39.600
and it generated

00:30:39.600 --> 00:30:40.360
one thing,

00:30:40.360 --> 00:30:41.280
the same for everyone.

00:30:41.280 --> 00:30:42.200
And I started

00:30:42.200 --> 00:30:43.320
getting some traction

00:30:43.320 --> 00:30:45.480
between May 2023

00:30:45.480 --> 00:30:46.820
and August.

00:30:46.820 --> 00:30:47.520
And then I said,

00:30:47.520 --> 00:30:48.060
okay,

00:30:48.060 --> 00:30:49.140
I'm going to really

00:30:49.140 --> 00:30:50.400
dive into this project

00:30:50.400 --> 00:30:51.720
and develop something

00:30:51.720 --> 00:30:52.620
more sophisticated.

00:30:53.340 --> 00:30:55.540
I started working

00:30:55.540 --> 00:30:56.200
on that

00:30:56.200 --> 00:30:57.840
on a Monday

00:30:57.840 --> 00:30:58.960
in September

00:30:58.960 --> 00:30:59.660
and it was released

00:30:59.660 --> 00:31:00.240
on the Friday,

00:31:00.240 --> 00:31:01.180
the V2.

00:31:01.180 --> 00:31:02.020
And I got to tell you,

00:31:02.020 --> 00:31:03.000
your website now

00:31:03.000 --> 00:31:05.320
looks really nice.

00:31:05.320 --> 00:31:06.180
You've done a lot

00:31:06.180 --> 00:31:07.680
of good design work

00:31:07.680 --> 00:31:08.400
on it as well

00:31:08.400 --> 00:31:09.260
in the last couple

00:31:09.260 --> 00:31:09.620
of months.

00:31:09.620 --> 00:31:09.920
Yeah,

00:31:09.920 --> 00:31:10.560
it has evolved

00:31:10.560 --> 00:31:11.920
because maybe you saw

00:31:11.920 --> 00:31:13.060
it for the first time

00:31:13.060 --> 00:31:14.320
when we decided

00:31:14.320 --> 00:31:15.200
to do this podcast

00:31:15.200 --> 00:31:16.920
and it was a white page.

00:31:16.920 --> 00:31:18.360
The logo was the same,

00:31:18.360 --> 00:31:19.420
but it was different.

00:31:19.420 --> 00:31:20.580
Originally,

00:31:20.580 --> 00:31:22.560
it was only in material design.

00:31:22.820 --> 00:31:24.340
I was using material design

00:31:24.340 --> 00:31:26.120
via the CDN

00:31:26.120 --> 00:31:27.660
from Google.

00:31:27.660 --> 00:31:29.200
But then I wanted

00:31:29.200 --> 00:31:30.620
to use Tailwind.

00:31:30.620 --> 00:31:31.520
The new version

00:31:31.520 --> 00:31:32.160
that you see

00:31:32.160 --> 00:31:33.740
is using Tailwind

00:31:33.740 --> 00:31:35.420
so people might recognize

00:31:35.420 --> 00:31:37.980
the Tailwind vibe.

00:31:37.980 --> 00:31:39.540
And I worked quite a lot

00:31:39.540 --> 00:31:40.560
on this thing that,

00:31:40.560 --> 00:31:40.940
okay,

00:31:40.940 --> 00:31:42.040
we said it's audio

00:31:42.040 --> 00:31:43.380
so people don't see it.

00:31:43.380 --> 00:31:44.480
But if you go on the website,

00:31:44.480 --> 00:31:45.300
you will see it.

00:31:45.300 --> 00:31:47.660
There is this rotating list

00:31:47.660 --> 00:31:49.160
of things

00:31:49.160 --> 00:31:50.080
that you can create

00:31:50.080 --> 00:31:51.920
with the product.

00:31:52.420 --> 00:31:53.020
it was inspired

00:31:53.020 --> 00:31:53.780
by some code

00:31:53.780 --> 00:31:54.380
that I found

00:31:54.380 --> 00:31:55.720
but I had to retweak it

00:31:55.720 --> 00:31:56.340
for, you know,

00:31:56.340 --> 00:31:57.100
make it responsive

00:31:57.100 --> 00:31:57.820
and all of that.

00:31:57.820 --> 00:31:59.240
And you know,

00:31:59.240 --> 00:32:00.800
also a big shout out

00:32:00.800 --> 00:32:01.500
to my son

00:32:01.500 --> 00:32:02.320
who is 18

00:32:02.320 --> 00:32:03.380
who is learning Python

00:32:03.380 --> 00:32:04.040
a lot.

00:32:04.040 --> 00:32:04.980
He coded

00:32:04.980 --> 00:32:06.640
a few things recently.

00:32:06.640 --> 00:32:07.200
He's coding

00:32:07.200 --> 00:32:08.940
something to play darts

00:32:08.940 --> 00:32:09.800
at the moment,

00:32:09.800 --> 00:32:10.600
like to calculate

00:32:10.600 --> 00:32:11.580
the scores in darts.

00:32:11.580 --> 00:32:13.180
And two months ago,

00:32:13.180 --> 00:32:14.520
he said to me

00:32:14.520 --> 00:32:15.700
that your side

00:32:15.700 --> 00:32:16.400
is nice

00:32:16.400 --> 00:32:17.580
but it looks ugly.

00:32:18.380 --> 00:32:19.460
so could you make

00:32:19.460 --> 00:32:20.500
something that looks

00:32:20.500 --> 00:32:20.980
better?

00:32:20.980 --> 00:32:22.100
I said,

00:32:22.100 --> 00:32:22.660
yeah,

00:32:22.660 --> 00:32:23.080
yeah,

00:32:23.080 --> 00:32:23.520
but you know,

00:32:23.520 --> 00:32:25.320
I kind of like it.

00:32:25.320 --> 00:32:25.800
I said,

00:32:25.800 --> 00:32:25.980
no,

00:32:25.980 --> 00:32:26.140
no,

00:32:26.140 --> 00:32:26.640
no,

00:32:26.640 --> 00:32:26.800
no,

00:32:26.800 --> 00:32:27.140
no,

00:32:27.140 --> 00:32:27.160
no,

00:32:27.160 --> 00:32:27.320
no,

00:32:27.320 --> 00:32:27.540
that.

00:32:27.540 --> 00:32:28.840
It's not the way

00:32:28.840 --> 00:32:29.460
it should be.

00:32:29.460 --> 00:32:30.940
So do something better.

00:32:30.940 --> 00:32:31.780
I know you can do it.

00:32:31.900 --> 00:32:33.820
So that's why also

00:32:33.820 --> 00:32:34.600
we've got something

00:32:34.600 --> 00:32:35.940
which looks better today

00:32:35.940 --> 00:32:37.600
thanks to my son,

00:32:37.600 --> 00:32:38.160
Maxim.

00:32:38.160 --> 00:32:39.360
It's a huge improvement

00:32:39.360 --> 00:32:40.580
from where it started.

00:32:40.580 --> 00:32:41.680
So nice work on that.

00:32:41.680 --> 00:32:41.920
Yeah.

00:32:41.920 --> 00:32:42.140
All right,

00:32:42.140 --> 00:32:42.840
let's talk about

00:32:42.840 --> 00:32:44.260
some of the techniques

00:32:44.260 --> 00:32:45.700
that you used here to,

00:32:45.700 --> 00:32:46.740
first of all,

00:32:46.740 --> 00:32:48.240
what LLM did you use

00:32:48.240 --> 00:32:49.520
to go on this journey?

00:32:49.520 --> 00:32:50.440
When I started,

00:32:50.440 --> 00:32:51.780
I wasn't even aware

00:32:51.780 --> 00:32:52.680
of GitHub Copilot.

00:32:52.680 --> 00:32:53.740
So I started only

00:32:53.740 --> 00:32:55.600
with ChatGPT.

00:32:55.600 --> 00:32:57.880
I was an early

00:32:57.880 --> 00:32:58.920
premium user

00:32:58.920 --> 00:32:59.640
of ChatGPT.

00:32:59.740 --> 00:33:00.420
so I started paying

00:33:00.420 --> 00:33:01.160
the 20 bucks

00:33:01.160 --> 00:33:01.560
very,

00:33:01.560 --> 00:33:02.240
very early

00:33:02.240 --> 00:33:03.720
for GPT Plus.

00:33:03.720 --> 00:33:05.020
So I started using

00:33:05.020 --> 00:33:05.960
ChatGPT.

00:33:05.960 --> 00:33:07.000
So basically switching

00:33:07.000 --> 00:33:07.760
between

00:33:07.760 --> 00:33:09.920
the ChatGPT UI

00:33:09.920 --> 00:33:11.780
and the IDE.

00:33:11.780 --> 00:33:13.760
I started using

00:33:13.760 --> 00:33:14.440
PyCharm.

00:33:14.440 --> 00:33:15.360
So that's the first one

00:33:15.360 --> 00:33:15.920
I used.

00:33:15.920 --> 00:33:17.240
So I was creating

00:33:17.240 --> 00:33:17.840
some code

00:33:17.840 --> 00:33:19.520
in ChatGPT

00:33:19.520 --> 00:33:20.460
and then jumping

00:33:20.460 --> 00:33:22.240
to PyCharm,

00:33:22.240 --> 00:33:23.300
test the code,

00:33:23.300 --> 00:33:24.560
and then if there was a bug,

00:33:24.560 --> 00:33:25.780
coming back to ChatGPT.

00:33:25.780 --> 00:33:27.100
So this back and forth journey.

00:33:27.100 --> 00:33:27.720
You asked it

00:33:27.720 --> 00:33:28.160
at the beginning,

00:33:28.160 --> 00:33:29.640
how do I make a flask

00:33:29.640 --> 00:33:31.140
app or what did you ask

00:33:31.140 --> 00:33:31.880
it in the beginning?

00:33:31.880 --> 00:33:33.180
Like, how do I make

00:33:33.180 --> 00:33:33.840
a flask app?

00:33:33.840 --> 00:33:34.960
How do I make a flask app

00:33:34.960 --> 00:33:36.360
that does audio?

00:33:36.360 --> 00:33:38.000
Like, what did you?

00:33:38.000 --> 00:33:39.120
I knew that I wanted

00:33:39.120 --> 00:33:40.380
to use flask.

00:33:40.380 --> 00:33:41.520
So the first thing

00:33:41.520 --> 00:33:42.600
that you would ask

00:33:42.600 --> 00:33:44.580
is to ask ChatGPT

00:33:44.580 --> 00:33:45.580
for a boilerplate

00:33:45.580 --> 00:33:46.580
of a flask web app.

00:33:46.580 --> 00:33:47.540
And it will give you

00:33:47.540 --> 00:33:48.400
pretty quickly

00:33:48.400 --> 00:33:51.220
the basic building blocks.

00:33:51.220 --> 00:33:51.820
I don't know

00:33:51.820 --> 00:33:52.780
if it would give you

00:33:52.780 --> 00:33:53.680
straight away

00:33:53.680 --> 00:33:54.640
the architecture

00:33:54.640 --> 00:33:55.660
with a template

00:33:55.660 --> 00:33:57.360
inside of the

00:33:57.360 --> 00:33:58.300
templates folder,

00:33:58.480 --> 00:33:59.200
but, you know,

00:33:59.200 --> 00:34:00.720
it gives you

00:34:00.720 --> 00:34:01.040
here.

00:34:01.040 --> 00:34:01.820
Hello world.

00:34:01.820 --> 00:34:02.160
Yeah,

00:34:02.160 --> 00:34:03.360
hello world on the page.

00:34:03.360 --> 00:34:03.900
But then,

00:34:03.900 --> 00:34:04.760
if you know

00:34:04.760 --> 00:34:06.360
that you need

00:34:06.360 --> 00:34:06.760
HTML,

00:34:06.760 --> 00:34:08.180
then you will ask

00:34:08.180 --> 00:34:08.960
ChatGPT

00:34:08.960 --> 00:34:09.980
to tweak it

00:34:09.980 --> 00:34:11.500
to render

00:34:11.500 --> 00:34:13.220
index.html

00:34:13.220 --> 00:34:14.820
from the templates folder.

00:34:14.820 --> 00:34:16.000
And there you see,

00:34:16.000 --> 00:34:17.220
there it starts

00:34:17.220 --> 00:34:18.320
and it gives you

00:34:18.320 --> 00:34:19.160
some boilerplate

00:34:19.160 --> 00:34:19.980
for the HTML

00:34:19.980 --> 00:34:21.040
that you put

00:34:21.040 --> 00:34:22.100
in the templates folder.

00:34:22.380 --> 00:34:23.380
and then you learn

00:34:23.380 --> 00:34:25.120
that you need

00:34:25.120 --> 00:34:26.740
ideally to have

00:34:26.740 --> 00:34:27.600
some JavaScript

00:34:27.600 --> 00:34:29.840
in a JavaScript file

00:34:29.840 --> 00:34:30.680
and that you need

00:34:30.680 --> 00:34:31.260
some CSS

00:34:31.260 --> 00:34:32.400
in a CSS file

00:34:32.400 --> 00:34:34.040
and that those two files

00:34:34.040 --> 00:34:35.060
will be in the

00:34:35.060 --> 00:34:36.000
static folder

00:34:36.000 --> 00:34:37.700
of a flask web app.

00:34:37.700 --> 00:34:38.940
So now I've got,

00:34:38.940 --> 00:34:39.340
let's say,

00:34:39.340 --> 00:34:39.880
my routine,

00:34:39.880 --> 00:34:41.080
I've got all of that

00:34:41.080 --> 00:34:41.740
ready

00:34:41.740 --> 00:34:43.040
and if I start

00:34:43.040 --> 00:34:43.760
a new app,

00:34:43.760 --> 00:34:45.360
I don't even need

00:34:45.360 --> 00:34:47.240
obviously ChatGPT.

00:34:47.340 --> 00:34:47.880
I just create

00:34:47.880 --> 00:34:48.500
my structure.

00:34:48.500 --> 00:34:50.040
I put index.html,

00:34:50.040 --> 00:34:51.160
script.js,

00:34:51.160 --> 00:34:53.040
styles.css.

00:34:53.040 --> 00:34:54.260
But then,

00:34:54.260 --> 00:34:56.060
what you can also ask

00:34:56.060 --> 00:34:57.880
ChatGPT to do,

00:34:57.880 --> 00:34:58.460
for instance,

00:34:58.460 --> 00:34:59.580
is if you've got

00:34:59.580 --> 00:35:00.800
your HTML page,

00:35:00.800 --> 00:35:01.700
you can say,

00:35:01.700 --> 00:35:03.980
restyle this HTML page

00:35:03.980 --> 00:35:05.000
with Tailwind CSS

00:35:05.000 --> 00:35:06.160
using the CDN,

00:35:06.160 --> 00:35:06.680
for instance,

00:35:06.680 --> 00:35:07.840
and it will give you

00:35:07.840 --> 00:35:08.960
a full restyling.

00:35:08.960 --> 00:35:10.660
And then you can ask it,

00:35:10.660 --> 00:35:10.940
okay,

00:35:10.940 --> 00:35:12.480
I want on this page

00:35:12.480 --> 00:35:13.540
four buttons

00:35:13.540 --> 00:35:15.260
and those four buttons

00:35:15.260 --> 00:35:16.740
should do XYZ

00:35:16.740 --> 00:35:18.020
and then you start

00:35:18.020 --> 00:35:18.860
moving into

00:35:18.860 --> 00:35:20.000
the JavaScript

00:35:20.000 --> 00:35:21.940
part of it

00:35:21.940 --> 00:35:23.440
for the interactions

00:35:23.440 --> 00:35:24.440
on the page.

00:35:24.440 --> 00:35:26.280
The interesting thing

00:35:26.280 --> 00:35:26.700
maybe,

00:35:26.700 --> 00:35:28.120
which would explain

00:35:28.120 --> 00:35:29.120
also why

00:35:29.120 --> 00:35:30.500
I haven't really

00:35:30.500 --> 00:35:31.460
started using

00:35:31.460 --> 00:35:32.040
Next.js

00:35:32.040 --> 00:35:33.380
or Vue.js

00:35:33.380 --> 00:35:34.320
or things like that,

00:35:34.320 --> 00:35:35.740
is that by default,

00:35:35.740 --> 00:35:36.740
for some reason,

00:35:36.740 --> 00:35:37.760
you've got to ask

00:35:37.760 --> 00:35:38.900
OpenAI why,

00:35:38.900 --> 00:35:40.080
maybe because of

00:35:40.080 --> 00:35:41.240
some legacy

00:35:41.240 --> 00:35:42.220
importance of

00:35:42.220 --> 00:35:43.120
Vaniya JavaScript,

00:35:43.120 --> 00:35:44.800
but if you ask

00:35:44.800 --> 00:35:45.840
ChatGPT

00:35:45.840 --> 00:35:47.020
to start

00:35:47.020 --> 00:35:47.840
creating some

00:35:47.840 --> 00:35:48.540
interactions

00:35:48.540 --> 00:35:50.120
on an HTML page,

00:35:50.120 --> 00:35:50.960
it won't just

00:35:50.960 --> 00:35:51.360
tell you,

00:35:51.360 --> 00:35:51.600
okay,

00:35:51.600 --> 00:35:52.160
you know,

00:35:52.160 --> 00:35:53.300
these days people

00:35:53.300 --> 00:35:54.100
use React

00:35:54.100 --> 00:35:54.980
or Next.js

00:35:54.980 --> 00:35:56.060
or something like that,

00:35:56.060 --> 00:35:57.120
so maybe you could

00:35:57.120 --> 00:35:57.980
or you should

00:35:57.980 --> 00:35:58.700
consider that.

00:35:58.700 --> 00:36:00.120
It will go deep

00:36:00.120 --> 00:36:01.180
into Vaniya JavaScript.

00:36:01.180 --> 00:36:02.960
And after

00:36:02.960 --> 00:36:04.220
developing

00:36:04.220 --> 00:36:05.260
the Jingle Maker

00:36:05.260 --> 00:36:06.120
for a few months,

00:36:06.120 --> 00:36:06.980
I showed it to

00:36:06.980 --> 00:36:07.880
my friend Alex,

00:36:07.880 --> 00:36:09.740
who is this developer

00:36:09.740 --> 00:36:10.520
I was talking about

00:36:10.520 --> 00:36:10.920
earlier,

00:36:10.920 --> 00:36:12.080
who has graduated,

00:36:12.080 --> 00:36:12.700
I would say,

00:36:12.780 --> 00:36:13.760
from Vaniya JavaScript

00:36:13.760 --> 00:36:14.620
to React,

00:36:14.620 --> 00:36:15.360
and he looked

00:36:15.360 --> 00:36:16.200
at my code and said,

00:36:16.200 --> 00:36:16.740
man,

00:36:16.740 --> 00:36:18.020
that's crazy.

00:36:18.020 --> 00:36:19.180
It's all

00:36:19.180 --> 00:36:20.200
Vaniya JavaScript.

00:36:20.200 --> 00:36:21.220
There's not a single

00:36:21.220 --> 00:36:22.040
line of React.

00:36:22.040 --> 00:36:23.300
So everything

00:36:23.300 --> 00:36:24.300
in your app

00:36:24.300 --> 00:36:25.700
is lines and lines

00:36:25.700 --> 00:36:26.660
and lines of JavaScript.

00:36:26.660 --> 00:36:27.360
That's a benefit

00:36:27.360 --> 00:36:28.680
and a drawback.

00:36:28.680 --> 00:36:30.120
He said that

00:36:30.120 --> 00:36:30.880
he would not

00:36:30.880 --> 00:36:31.720
even be able

00:36:31.720 --> 00:36:32.600
to write it

00:36:32.600 --> 00:36:33.460
this way

00:36:33.460 --> 00:36:34.280
from scratch

00:36:34.280 --> 00:36:34.880
today.

00:36:34.880 --> 00:36:35.320
Yeah, yeah.

00:36:35.320 --> 00:36:36.260
That's not something

00:36:36.260 --> 00:36:36.780
that he would

00:36:36.780 --> 00:36:38.020
really consider doing

00:36:38.020 --> 00:36:38.980
because it's

00:36:38.980 --> 00:36:39.940
more verbose.

00:36:39.940 --> 00:36:40.900
There's more stuff

00:36:40.900 --> 00:36:41.560
to write

00:36:41.560 --> 00:36:42.320
to achieve

00:36:42.320 --> 00:36:42.820
what you want

00:36:42.820 --> 00:36:43.300
to achieve.

00:36:43.300 --> 00:36:44.600
But the thing

00:36:44.600 --> 00:36:45.000
is that

00:36:45.000 --> 00:36:46.240
with ChatGPT

00:36:46.240 --> 00:36:47.260
or today

00:36:47.260 --> 00:36:47.860
with a

00:36:47.860 --> 00:36:48.980
GitHub Copilot

00:36:48.980 --> 00:36:50.060
embedded in

00:36:50.060 --> 00:36:50.780
the IDE,

00:36:50.780 --> 00:36:52.360
even if it's longer,

00:36:52.360 --> 00:36:53.220
that's not a problem

00:36:53.220 --> 00:36:54.000
because you don't

00:36:54.000 --> 00:36:54.960
write a single

00:36:54.960 --> 00:36:55.620
line of code.

00:36:55.620 --> 00:36:56.820
I think it's important

00:36:56.820 --> 00:36:57.740
to point that out

00:36:57.740 --> 00:36:58.220
is that

00:36:58.220 --> 00:36:59.100
in the

00:36:59.100 --> 00:36:59.920
Jingle Maker,

00:36:59.920 --> 00:37:01.000
there is not

00:37:01.000 --> 00:37:02.100
one single

00:37:02.100 --> 00:37:02.820
line of code

00:37:02.820 --> 00:37:03.440
that I wrote.

00:37:03.440 --> 00:37:04.120
Not one.

00:37:04.120 --> 00:37:05.000
That's insane.

00:37:05.000 --> 00:37:05.680
There's not one.

00:37:05.680 --> 00:37:06.440
Not a single

00:37:06.440 --> 00:37:07.000
line of code

00:37:07.000 --> 00:37:08.140
that I typed

00:37:08.140 --> 00:37:09.340
from the first

00:37:09.340 --> 00:37:10.580
curly bracket

00:37:10.580 --> 00:37:11.280
to the last

00:37:11.280 --> 00:37:11.920
curly bracket.

00:37:11.920 --> 00:37:12.560
Nothing.

00:37:12.560 --> 00:37:13.880
Everything is

00:37:13.880 --> 00:37:14.600
written like that.

00:37:14.600 --> 00:37:15.920
Yesterday, for instance,

00:37:15.920 --> 00:37:16.580
I was working on

00:37:16.580 --> 00:37:17.320
something completely

00:37:17.320 --> 00:37:18.360
different now

00:37:18.360 --> 00:37:19.500
for a friend

00:37:19.500 --> 00:37:20.440
who is also a client

00:37:20.440 --> 00:37:21.260
who is working

00:37:21.260 --> 00:37:22.880
on a Gmail add-on.

00:37:22.880 --> 00:37:23.960
So I don't know

00:37:23.960 --> 00:37:24.660
if you're familiar

00:37:24.660 --> 00:37:25.100
with that,

00:37:25.100 --> 00:37:26.280
but you're using

00:37:26.280 --> 00:37:26.980
Apps Script

00:37:26.980 --> 00:37:28.640
from Google

00:37:28.640 --> 00:37:29.240
and then

00:37:29.240 --> 00:37:30.900
create a manifest

00:37:30.900 --> 00:37:31.700
and blah, blah.

00:37:31.700 --> 00:37:33.400
And I didn't know

00:37:33.400 --> 00:37:34.260
anything

00:37:34.260 --> 00:37:35.920
about Gmail add-ons

00:37:35.920 --> 00:37:36.920
until yesterday

00:37:36.920 --> 00:37:37.520
in the morning.

00:37:37.520 --> 00:37:38.800
And after

00:37:38.800 --> 00:37:40.200
now five hours

00:37:40.200 --> 00:37:40.740
of work,

00:37:40.740 --> 00:37:41.880
we've got a fully

00:37:41.880 --> 00:37:43.180
working product

00:37:43.180 --> 00:37:44.020
in Gmail.

00:37:44.020 --> 00:37:44.760
That's amazing.

00:37:44.760 --> 00:37:45.380
That's crazy.

00:37:45.380 --> 00:37:46.120
2024.

00:37:46.120 --> 00:37:47.340
And it's only

00:37:47.340 --> 00:37:47.920
the beginning.

00:37:47.920 --> 00:37:49.140
I really see

00:37:49.140 --> 00:37:49.980
that evolving

00:37:49.980 --> 00:37:51.880
super fast.

00:37:51.880 --> 00:37:52.860
I think that

00:37:52.860 --> 00:37:54.240
now the most

00:37:54.240 --> 00:37:55.040
important thing

00:37:55.040 --> 00:37:55.980
is to be able

00:37:55.980 --> 00:37:56.980
to talk to the machine,

00:37:56.980 --> 00:37:58.380
to explain

00:37:58.380 --> 00:37:59.140
the structure,

00:37:59.140 --> 00:37:59.960
the architecture

00:37:59.960 --> 00:38:01.420
of what you expect

00:38:01.420 --> 00:38:02.500
and to be clear

00:38:02.500 --> 00:38:03.140
in your head

00:38:03.140 --> 00:38:03.840
about

00:38:03.840 --> 00:38:05.420
the code

00:38:05.420 --> 00:38:06.840
has to be

00:38:06.840 --> 00:38:07.360
developed

00:38:07.360 --> 00:38:08.180
for the pages

00:38:08.180 --> 00:38:08.860
to interact,

00:38:08.860 --> 00:38:10.340
for the elements

00:38:10.340 --> 00:38:11.280
to interact together.

00:38:11.280 --> 00:38:12.580
And if it's clear

00:38:12.580 --> 00:38:13.220
in your head

00:38:13.220 --> 00:38:13.760
and if you can

00:38:13.760 --> 00:38:15.160
explain it clearly

00:38:15.160 --> 00:38:16.080
to the LLM,

00:38:16.080 --> 00:38:17.320
it's just magic.

00:38:17.520 --> 00:38:18.180
It is like magic.

00:38:18.180 --> 00:38:18.440
Yeah.

00:38:18.500 --> 00:38:19.560
It's pretty wild.

00:38:19.560 --> 00:38:22.080
If you're a regular

00:38:22.080 --> 00:38:23.120
listener of the podcast,

00:38:23.120 --> 00:38:24.140
you surely heard

00:38:24.140 --> 00:38:25.260
about Talk Python's

00:38:25.260 --> 00:38:26.040
online courses.

00:38:26.040 --> 00:38:27.100
But have you had

00:38:27.100 --> 00:38:28.120
a chance to try them out?

00:38:28.120 --> 00:38:29.640
No matter the level

00:38:29.640 --> 00:38:30.300
you're looking for,

00:38:30.300 --> 00:38:31.360
we have a course for you.

00:38:31.360 --> 00:38:33.300
Our Python for Absolute Beginners

00:38:33.300 --> 00:38:34.460
is like an introduction

00:38:34.460 --> 00:38:35.040
to Python

00:38:35.040 --> 00:38:36.000
plus that first year

00:38:36.000 --> 00:38:36.840
computer science course

00:38:36.840 --> 00:38:37.740
that you never took.

00:38:37.740 --> 00:38:38.900
Our data-driven

00:38:38.900 --> 00:38:39.720
web app courses

00:38:39.720 --> 00:38:40.980
build a full

00:38:40.980 --> 00:38:42.740
PyPI.org clone

00:38:42.740 --> 00:38:43.820
along with you

00:38:43.820 --> 00:38:44.580
right on the screen.

00:38:44.580 --> 00:38:45.720
And we even have

00:38:45.720 --> 00:38:46.280
a few courses

00:38:46.280 --> 00:38:47.520
to dip your toe in with.

00:38:48.180 --> 00:38:49.000
See what we have to offer

00:38:49.000 --> 00:38:50.840
at training.talkpython.fm

00:38:50.840 --> 00:38:51.940
or just click the link

00:38:51.940 --> 00:38:52.880
in your podcast player.

00:38:52.880 --> 00:38:55.660
So you can see

00:38:55.660 --> 00:38:56.160
on the side here

00:38:56.160 --> 00:38:57.040
I have these really weird

00:38:57.040 --> 00:38:58.500
recent chats I had

00:38:58.500 --> 00:38:59.620
like a skilled

00:38:59.620 --> 00:39:00.760
baker Q&A

00:39:00.760 --> 00:39:02.480
and survive a plane crash

00:39:02.480 --> 00:39:03.180
in the wilderness.

00:39:03.180 --> 00:39:04.460
And so these things

00:39:04.460 --> 00:39:05.160
are actually related.

00:39:05.160 --> 00:39:06.340
And what I was trying to do

00:39:06.340 --> 00:39:07.760
was I was trying to

00:39:07.760 --> 00:39:08.960
understand how

00:39:08.960 --> 00:39:11.100
much prompt engineering

00:39:11.100 --> 00:39:12.200
and sort of setting

00:39:12.200 --> 00:39:12.940
the stage

00:39:12.940 --> 00:39:13.860
for the questions

00:39:13.860 --> 00:39:14.560
matters.

00:39:14.560 --> 00:39:16.040
So like this one,

00:39:16.040 --> 00:39:16.600
I said,

00:39:16.600 --> 00:39:18.080
you are a very skilled

00:39:18.080 --> 00:39:18.480
baker.

00:39:18.480 --> 00:39:19.280
You have run

00:39:19.280 --> 00:39:20.340
a successful restaurant

00:39:20.340 --> 00:39:20.860
in the city

00:39:20.860 --> 00:39:21.600
for five years.

00:39:21.600 --> 00:39:22.380
Now I will ask you

00:39:22.380 --> 00:39:23.020
questions

00:39:23.020 --> 00:39:24.480
as opposed to

00:39:24.480 --> 00:39:25.340
this one.

00:39:25.340 --> 00:39:26.640
You are a very skilled

00:39:26.640 --> 00:39:27.340
outdoorsman

00:39:27.340 --> 00:39:28.220
and you've been

00:39:28.220 --> 00:39:29.460
on multiple reality shows.

00:39:29.460 --> 00:39:30.360
Now I'll ask you

00:39:30.360 --> 00:39:30.840
some questions.

00:39:30.840 --> 00:39:31.400
And they were both

00:39:31.400 --> 00:39:32.240
the same question.

00:39:32.240 --> 00:39:33.640
If I'm in a plane crash

00:39:33.640 --> 00:39:34.760
and I need to survive,

00:39:34.760 --> 00:39:36.060
I wanted to see

00:39:36.060 --> 00:39:36.860
how much

00:39:36.860 --> 00:39:37.700
like the baker

00:39:37.700 --> 00:39:38.840
would focus on

00:39:38.840 --> 00:39:39.520
food

00:39:39.520 --> 00:39:40.340
and stuff

00:39:40.340 --> 00:39:41.580
versus the survivalist

00:39:41.580 --> 00:39:42.180
on others.

00:39:42.300 --> 00:39:42.820
and I feel

00:39:42.820 --> 00:39:43.660
like that's

00:39:43.660 --> 00:39:44.320
a real clear

00:39:44.320 --> 00:39:45.240
way to understand

00:39:45.240 --> 00:39:46.340
this kind

00:39:46.340 --> 00:39:46.700
of stuff

00:39:46.700 --> 00:39:47.600
in just

00:39:47.600 --> 00:39:48.340
a real general

00:39:48.340 --> 00:39:48.680
way.

00:39:48.680 --> 00:39:49.540
But I think

00:39:49.540 --> 00:39:50.300
there must be

00:39:50.300 --> 00:39:51.160
a code

00:39:51.160 --> 00:39:52.180
aspect of that

00:39:52.180 --> 00:39:52.660
as well.

00:39:52.660 --> 00:39:53.620
Like rather

00:39:53.620 --> 00:39:54.180
than just

00:39:54.180 --> 00:39:54.700
tell me how

00:39:54.700 --> 00:39:55.080
to do this

00:39:55.080 --> 00:39:55.500
in Python,

00:39:55.500 --> 00:39:56.300
like you

00:39:56.300 --> 00:39:57.280
have written

00:39:57.280 --> 00:39:58.360
this app

00:39:58.360 --> 00:39:58.780
in Python

00:39:58.780 --> 00:39:59.180
or you're

00:39:59.180 --> 00:39:59.580
an expert

00:39:59.580 --> 00:40:00.120
on Fast

00:40:00.120 --> 00:40:00.460
API,

00:40:00.460 --> 00:40:00.960
now I want

00:40:00.960 --> 00:40:01.300
to talk

00:40:01.300 --> 00:40:01.600
to you,

00:40:01.600 --> 00:40:02.240
you may

00:40:02.240 --> 00:40:02.720
get different

00:40:02.720 --> 00:40:03.260
results,

00:40:03.260 --> 00:40:04.180
maybe better,

00:40:04.180 --> 00:40:04.780
maybe worse,

00:40:04.780 --> 00:40:05.200
I don't know.

00:40:05.200 --> 00:40:06.060
But did you

00:40:06.060 --> 00:40:06.500
try any

00:40:06.500 --> 00:40:06.960
of this

00:40:06.960 --> 00:40:07.360
techniques

00:40:07.360 --> 00:40:07.740
or was it

00:40:07.740 --> 00:40:08.180
just straight

00:40:08.180 --> 00:40:08.800
down the middle?

00:40:08.800 --> 00:40:09.560
Tell me how

00:40:09.560 --> 00:40:09.980
to do this

00:40:09.980 --> 00:40:10.620
with Tailwind.

00:40:10.620 --> 00:40:11.360
To be fair

00:40:11.360 --> 00:40:11.820
with you,

00:40:11.820 --> 00:40:12.580
because I was

00:40:12.580 --> 00:40:13.380
a total

00:40:13.380 --> 00:40:14.160
newbie

00:40:14.160 --> 00:40:14.760
in the beginning,

00:40:14.760 --> 00:40:16.040
I was making

00:40:16.040 --> 00:40:17.040
sure to ask

00:40:17.040 --> 00:40:17.580
the AI

00:40:17.580 --> 00:40:18.060
to explain

00:40:18.060 --> 00:40:18.500
to me

00:40:18.500 --> 00:40:19.420
almost as

00:40:19.420 --> 00:40:20.600
if I were

00:40:20.600 --> 00:40:21.620
a five-year-old.

00:40:21.620 --> 00:40:22.260
You know?

00:40:22.260 --> 00:40:22.600
Yeah.

00:40:22.600 --> 00:40:24.040
Because I could

00:40:24.040 --> 00:40:24.740
have told

00:40:24.740 --> 00:40:25.340
the AI,

00:40:25.340 --> 00:40:25.920
you're an

00:40:25.920 --> 00:40:26.480
expert

00:40:26.480 --> 00:40:28.140
Python

00:40:28.140 --> 00:40:28.780
developer

00:40:28.780 --> 00:40:29.720
and then

00:40:29.720 --> 00:40:31.000
just give

00:40:31.000 --> 00:40:31.280
me the

00:40:31.280 --> 00:40:31.500
code.

00:40:31.500 --> 00:40:32.120
But then

00:40:32.120 --> 00:40:32.400
I don't

00:40:32.400 --> 00:40:32.860
have all

00:40:32.860 --> 00:40:32.980
the

00:40:32.980 --> 00:40:33.520
explanations

00:40:33.520 --> 00:40:34.200
because

00:40:34.200 --> 00:40:34.580
then

00:40:34.580 --> 00:40:35.080
it

00:40:35.080 --> 00:40:35.520
behaves

00:40:35.520 --> 00:40:35.940
like

00:40:35.940 --> 00:40:36.100
an

00:40:36.100 --> 00:40:36.480
expert

00:40:36.480 --> 00:40:36.940
Python

00:40:36.940 --> 00:40:37.480
developer

00:40:37.480 --> 00:40:38.320
and

00:40:38.320 --> 00:40:38.500
there

00:40:38.500 --> 00:40:38.720
are

00:40:38.720 --> 00:40:39.020
many

00:40:39.020 --> 00:40:39.520
shortcuts

00:40:39.520 --> 00:40:40.220
that

00:40:40.220 --> 00:40:40.560
it

00:40:40.560 --> 00:40:40.720
will

00:40:40.720 --> 00:40:41.160
take

00:40:41.160 --> 00:40:41.560
and

00:40:41.560 --> 00:40:41.820
not

00:40:41.820 --> 00:40:42.100
really

00:40:42.100 --> 00:40:42.320
give

00:40:42.320 --> 00:40:42.420
you

00:40:42.420 --> 00:40:42.580
all

00:40:42.580 --> 00:40:42.700
the

00:40:42.700 --> 00:40:43.200
details

00:40:43.200 --> 00:40:43.980
documenting

00:40:43.980 --> 00:40:44.260
all

00:40:44.260 --> 00:40:44.400
the

00:40:44.400 --> 00:40:44.600
code.

00:40:44.600 --> 00:40:44.780
So

00:40:44.780 --> 00:40:45.500
I'm

00:40:45.500 --> 00:40:45.820
still

00:40:45.820 --> 00:40:47.820
more like

00:40:47.820 --> 00:40:48.000
in

00:40:48.000 --> 00:40:49.160
explain

00:40:49.160 --> 00:40:49.540
to me

00:40:49.540 --> 00:40:50.260
in layman's

00:40:50.260 --> 00:40:50.560
terms

00:40:50.560 --> 00:40:51.840
how to

00:40:51.840 --> 00:40:52.000
do

00:40:52.000 --> 00:40:52.140
this

00:40:52.140 --> 00:40:52.360
because

00:40:52.360 --> 00:40:52.640
then

00:40:52.640 --> 00:40:53.040
also

00:40:53.040 --> 00:40:53.620
I

00:40:53.620 --> 00:40:54.320
understand

00:40:54.320 --> 00:40:54.620
the

00:40:54.620 --> 00:40:54.840
code

00:40:54.840 --> 00:40:55.180
so

00:40:55.180 --> 00:40:55.940
it's

00:40:55.940 --> 00:40:56.240
easier

00:40:56.240 --> 00:40:56.620
for me

00:40:56.620 --> 00:40:56.840
to

00:40:56.840 --> 00:40:57.200
debug

00:40:57.200 --> 00:40:57.340
it

00:40:57.340 --> 00:40:57.720
I

00:40:57.720 --> 00:40:58.000
usually

00:40:58.000 --> 00:40:58.300
take

00:40:58.300 --> 00:40:58.460
the

00:40:58.460 --> 00:40:58.840
analogy

00:40:58.840 --> 00:40:59.200
that

00:40:59.200 --> 00:40:59.700
when

00:40:59.700 --> 00:40:59.840
you

00:40:59.840 --> 00:41:00.220
said

00:41:00.220 --> 00:41:00.620
that

00:41:00.620 --> 00:41:01.720
sometimes

00:41:01.720 --> 00:41:02.060
you

00:41:02.060 --> 00:41:02.380
think

00:41:02.380 --> 00:41:02.500
it

00:41:02.500 --> 00:41:02.660
might

00:41:02.660 --> 00:41:02.800
be

00:41:02.800 --> 00:41:03.200
too late

00:41:03.200 --> 00:41:03.540
to learn

00:41:03.540 --> 00:41:03.880
to code

00:41:03.880 --> 00:41:04.400
or to learn

00:41:04.400 --> 00:41:04.940
to do

00:41:04.940 --> 00:41:05.440
something

00:41:05.440 --> 00:41:06.360
let's say

00:41:06.360 --> 00:41:06.620
that you

00:41:06.620 --> 00:41:07.120
want to learn

00:41:07.120 --> 00:41:07.460
to play

00:41:07.460 --> 00:41:07.780
music

00:41:07.780 --> 00:41:08.120
to play

00:41:08.120 --> 00:41:08.620
the piano

00:41:08.620 --> 00:41:09.500
at a certain

00:41:09.500 --> 00:41:09.820
age

00:41:09.820 --> 00:41:10.260
it becomes

00:41:10.260 --> 00:41:10.540
very

00:41:10.540 --> 00:41:11.220
difficult

00:41:11.220 --> 00:41:11.560
because

00:41:11.560 --> 00:41:11.780
you don't

00:41:11.780 --> 00:41:11.940
have

00:41:11.940 --> 00:41:12.240
the

00:41:12.240 --> 00:41:12.960
reflex

00:41:12.960 --> 00:41:13.200
the

00:41:13.200 --> 00:41:13.680
muscles

00:41:13.680 --> 00:41:14.240
agility

00:41:14.240 --> 00:41:14.580
that

00:41:14.580 --> 00:41:14.880
you

00:41:14.880 --> 00:41:15.420
can

00:41:15.420 --> 00:41:15.640
have

00:41:15.640 --> 00:41:15.780
when

00:41:15.780 --> 00:41:15.880
you

00:41:15.880 --> 00:41:15.980
are

00:41:15.980 --> 00:41:16.120
a

00:41:16.120 --> 00:41:16.300
young

00:41:16.300 --> 00:41:16.600
kid

00:41:16.600 --> 00:41:16.840
to

00:41:16.840 --> 00:41:17.240
learn

00:41:17.240 --> 00:41:17.400
how

00:41:17.400 --> 00:41:17.540
to

00:41:17.540 --> 00:41:17.700
play

00:41:17.700 --> 00:41:17.860
the

00:41:17.860 --> 00:41:18.160
piano

00:41:18.160 --> 00:41:18.640
but

00:41:18.640 --> 00:41:18.960
still

00:41:18.960 --> 00:41:19.440
you

00:41:19.440 --> 00:41:19.620
could

00:41:19.620 --> 00:41:20.300
understand

00:41:20.300 --> 00:41:21.080
what's

00:41:21.080 --> 00:41:21.380
on the

00:41:21.380 --> 00:41:21.760
score

00:41:21.760 --> 00:41:22.240
written

00:41:22.240 --> 00:41:22.620
on the

00:41:22.620 --> 00:41:23.020
page

00:41:23.020 --> 00:41:23.440
from

00:41:23.440 --> 00:41:23.600
the

00:41:23.600 --> 00:41:23.860
music

00:41:23.860 --> 00:41:24.180
so

00:41:24.180 --> 00:41:24.840
encoding

00:41:24.840 --> 00:41:25.220
for me

00:41:25.220 --> 00:41:25.880
it's

00:41:25.880 --> 00:41:26.100
kind

00:41:26.100 --> 00:41:26.240
of

00:41:26.240 --> 00:41:26.420
the

00:41:26.420 --> 00:41:26.780
same

00:41:26.780 --> 00:41:27.280
I

00:41:27.280 --> 00:41:27.540
would

00:41:27.540 --> 00:41:28.000
to be

00:41:28.000 --> 00:41:28.320
honest

00:41:28.320 --> 00:41:28.500
with

00:41:28.500 --> 00:41:28.620
you

00:41:28.620 --> 00:41:28.820
I

00:41:28.820 --> 00:41:29.020
would

00:41:29.020 --> 00:41:29.220
not

00:41:29.220 --> 00:41:29.440
be

00:41:29.440 --> 00:41:29.700
able

00:41:29.700 --> 00:41:29.980
to

00:41:29.980 --> 00:41:30.320
write

00:41:30.320 --> 00:41:30.720
most

00:41:30.720 --> 00:41:30.880
of

00:41:30.880 --> 00:41:31.040
the

00:41:31.040 --> 00:41:31.320
code

00:41:31.320 --> 00:41:31.560
that

00:41:31.560 --> 00:41:31.960
is

00:41:31.960 --> 00:41:32.080
in

00:41:32.080 --> 00:41:32.280
my

00:41:32.280 --> 00:41:32.600
app

00:41:32.600 --> 00:41:33.240
myself

00:41:33.240 --> 00:41:33.980
but

00:41:33.980 --> 00:41:34.120
I

00:41:34.120 --> 00:41:34.340
can

00:41:34.340 --> 00:41:34.620
read

00:41:34.620 --> 00:41:34.800
the

00:41:34.800 --> 00:41:35.100
score

00:41:35.100 --> 00:41:35.500
and

00:41:35.500 --> 00:41:35.640
I

00:41:35.640 --> 00:41:35.960
can

00:41:35.960 --> 00:41:36.580
see

00:41:36.580 --> 00:41:36.820
the

00:41:36.820 --> 00:41:37.300
connections

00:41:37.300 --> 00:41:37.780
between

00:41:37.780 --> 00:41:38.040
the

00:41:38.040 --> 00:41:38.420
different

00:41:38.420 --> 00:41:39.160
building

00:41:39.160 --> 00:41:39.640
blocks

00:41:39.640 --> 00:41:40.140
in

00:41:40.140 --> 00:41:40.320
the

00:41:40.320 --> 00:41:40.620
code

00:41:40.620 --> 00:41:40.980
so

00:41:40.980 --> 00:41:41.720
I

00:41:41.720 --> 00:41:41.940
can

00:41:41.940 --> 00:41:42.320
understand

00:41:42.320 --> 00:41:42.620
if

00:41:42.620 --> 00:41:42.840
there

00:41:42.840 --> 00:41:42.980
is

00:41:42.980 --> 00:41:43.120
a

00:41:43.120 --> 00:41:43.460
problem

00:41:43.460 --> 00:41:44.220
a

00:41:44.220 --> 00:41:44.620
syntax

00:41:44.620 --> 00:41:45.200
issue

00:41:45.200 --> 00:41:45.740
because

00:41:45.740 --> 00:41:46.260
there's

00:41:46.260 --> 00:41:46.480
some

00:41:46.480 --> 00:41:47.120
closing

00:41:47.120 --> 00:41:47.640
brackets

00:41:47.640 --> 00:41:49.720
I can't

00:41:49.720 --> 00:41:49.940
see

00:41:49.940 --> 00:41:50.220
it

00:41:50.220 --> 00:41:50.620
I

00:41:50.620 --> 00:41:50.880
wouldn't

00:41:50.880 --> 00:41:51.340
be able

00:41:51.340 --> 00:41:51.700
to

00:41:51.700 --> 00:41:52.420
write

00:41:52.420 --> 00:41:53.020
the

00:41:53.020 --> 00:41:53.360
code

00:41:53.360 --> 00:41:53.920
properly

00:41:53.920 --> 00:41:54.280
in the

00:41:54.280 --> 00:41:54.500
first

00:41:54.500 --> 00:41:54.880
place

00:41:54.880 --> 00:41:55.480
myself

00:41:55.480 --> 00:41:56.120
you

00:41:56.120 --> 00:41:56.300
could

00:41:56.300 --> 00:41:56.560
argue

00:41:56.560 --> 00:41:56.800
it's

00:41:56.800 --> 00:41:56.920
a

00:41:56.920 --> 00:41:57.300
problem

00:41:57.300 --> 00:41:57.800
but

00:41:57.800 --> 00:41:57.940
I

00:41:57.940 --> 00:41:58.240
say

00:41:58.240 --> 00:41:58.720
for

00:41:58.720 --> 00:41:58.980
me

00:41:58.980 --> 00:41:59.820
the

00:41:59.820 --> 00:42:00.520
output

00:42:00.520 --> 00:42:01.060
is

00:42:01.060 --> 00:42:01.320
what

00:42:01.320 --> 00:42:01.740
matters

00:42:01.740 --> 00:42:02.140
it's

00:42:02.140 --> 00:42:02.440
the

00:42:02.440 --> 00:42:02.920
final

00:42:02.920 --> 00:42:03.380
product

00:42:03.380 --> 00:42:03.840
which

00:42:03.840 --> 00:42:03.980
is

00:42:03.980 --> 00:42:04.140
what

00:42:04.140 --> 00:42:04.480
matters

00:42:04.480 --> 00:42:05.280
so

00:42:05.280 --> 00:42:05.700
as

00:42:05.700 --> 00:42:05.840
long

00:42:05.840 --> 00:42:05.960
as

00:42:05.960 --> 00:42:06.080
I

00:42:06.080 --> 00:42:06.640
understand

00:42:06.640 --> 00:42:06.940
what's

00:42:06.940 --> 00:42:07.040
on

00:42:07.040 --> 00:42:07.140
the

00:42:07.140 --> 00:42:07.440
screen

00:42:07.440 --> 00:42:07.740
for

00:42:07.740 --> 00:42:07.880
me

00:42:07.880 --> 00:42:08.060
it's

00:42:08.060 --> 00:42:08.280
okay

00:42:08.280 --> 00:42:08.500
yeah

00:42:08.500 --> 00:42:08.660
well

00:42:08.660 --> 00:42:08.880
let's

00:42:08.880 --> 00:42:09.040
loop

00:42:09.040 --> 00:42:09.160
it

00:42:09.160 --> 00:42:09.340
back

00:42:09.340 --> 00:42:09.500
to

00:42:09.500 --> 00:42:09.720
the

00:42:09.720 --> 00:42:10.500
original

00:42:10.500 --> 00:42:11.220
way

00:42:11.220 --> 00:42:11.380
we

00:42:11.380 --> 00:42:11.660
started

00:42:11.660 --> 00:42:12.000
this

00:42:12.000 --> 00:42:12.600
one

00:42:12.600 --> 00:42:12.780
way

00:42:12.780 --> 00:42:12.900
you

00:42:12.900 --> 00:42:13.000
could

00:42:13.000 --> 00:42:13.120
do

00:42:13.120 --> 00:42:13.300
this

00:42:13.300 --> 00:42:13.440
is

00:42:13.440 --> 00:42:13.540
you

00:42:13.540 --> 00:42:13.680
could

00:42:13.680 --> 00:42:14.000
hire

00:42:14.000 --> 00:42:14.400
people

00:42:14.400 --> 00:42:14.900
to

00:42:14.900 --> 00:42:15.160
build

00:42:15.160 --> 00:42:15.320
this

00:42:15.320 --> 00:42:15.520
for

00:42:15.520 --> 00:42:15.720
you

00:42:15.720 --> 00:42:16.100
and

00:42:16.100 --> 00:42:16.340
you

00:42:16.340 --> 00:42:16.560
give

00:42:16.560 --> 00:42:16.640
you

00:42:16.640 --> 00:42:16.780
the

00:42:16.780 --> 00:42:17.020
code

00:42:17.020 --> 00:42:17.200
and

00:42:17.200 --> 00:42:17.360
you're

00:42:17.360 --> 00:42:17.440
in

00:42:17.440 --> 00:42:17.560
the

00:42:17.560 --> 00:42:17.740
same

00:42:17.740 --> 00:42:18.040
position

00:42:18.040 --> 00:42:18.240
like

00:42:18.240 --> 00:42:18.480
here's

00:42:18.480 --> 00:42:18.600
a

00:42:18.600 --> 00:42:18.860
huge

00:42:18.860 --> 00:42:19.240
pile

00:42:19.240 --> 00:42:19.440
of

00:42:19.440 --> 00:42:19.700
code

00:42:19.700 --> 00:42:19.860
and

00:42:19.860 --> 00:42:19.960
you

00:42:19.960 --> 00:42:20.260
probably

00:42:20.260 --> 00:42:20.760
understand

00:42:20.760 --> 00:42:20.940
it

00:42:20.940 --> 00:42:21.420
I'm

00:42:21.420 --> 00:42:21.660
sure

00:42:21.660 --> 00:42:21.840
you

00:42:21.840 --> 00:42:22.280
understand

00:42:22.280 --> 00:42:22.520
it

00:42:22.520 --> 00:42:22.780
less

00:42:22.780 --> 00:42:23.120
well

00:42:23.120 --> 00:42:23.580
than

00:42:23.580 --> 00:42:23.760
if

00:42:23.760 --> 00:42:23.880
you

00:42:23.880 --> 00:42:24.080
went

00:42:24.080 --> 00:42:24.380
through

00:42:24.380 --> 00:42:24.840
step

00:42:24.840 --> 00:42:25.040
by

00:42:25.040 --> 00:42:25.360
step

00:42:25.360 --> 00:42:26.960
100%

00:42:26.960 --> 00:42:27.240
sure

00:42:27.240 --> 00:42:27.460
I

00:42:27.460 --> 00:42:27.680
was

00:42:27.680 --> 00:42:27.840
in

00:42:27.840 --> 00:42:28.020
that

00:42:28.020 --> 00:42:28.480
position

00:42:28.480 --> 00:42:29.040
a

00:42:29.040 --> 00:42:29.200
few

00:42:29.200 --> 00:42:29.620
times

00:42:29.620 --> 00:42:29.900
where

00:42:29.900 --> 00:42:30.440
I

00:42:30.440 --> 00:42:30.600
was

00:42:30.600 --> 00:42:30.960
involved

00:42:30.960 --> 00:42:31.140
in

00:42:31.140 --> 00:42:31.400
some

00:42:31.400 --> 00:42:32.120
projects

00:42:32.120 --> 00:42:32.500
and

00:42:32.500 --> 00:42:33.120
I

00:42:33.120 --> 00:42:33.320
was

00:42:33.320 --> 00:42:33.480
not

00:42:33.480 --> 00:42:33.800
involved

00:42:33.800 --> 00:42:34.000
in

00:42:34.000 --> 00:42:34.300
the

00:42:34.300 --> 00:42:34.760
actual

00:42:34.760 --> 00:42:35.200
coding

00:42:35.200 --> 00:42:35.380
of

00:42:35.380 --> 00:42:35.500
the

00:42:35.500 --> 00:42:35.880
project

00:42:35.880 --> 00:42:36.300
and

00:42:36.300 --> 00:42:36.460
then

00:42:36.460 --> 00:42:36.940
I

00:42:36.940 --> 00:42:37.920
inherited

00:42:37.920 --> 00:42:38.300
the

00:42:38.300 --> 00:42:38.900
project

00:42:38.900 --> 00:42:39.540
I

00:42:39.540 --> 00:42:40.340
had

00:42:40.340 --> 00:42:40.560
the

00:42:40.560 --> 00:42:40.800
code

00:42:40.800 --> 00:42:41.080
base

00:42:41.080 --> 00:42:41.200
but

00:42:41.200 --> 00:42:41.320
I

00:42:41.320 --> 00:42:41.480
could

00:42:41.480 --> 00:42:42.600
put

00:42:42.600 --> 00:42:42.720
it

00:42:42.720 --> 00:42:42.820
on

00:42:42.820 --> 00:42:42.960
a

00:42:42.960 --> 00:42:43.240
shelf

00:42:43.240 --> 00:42:43.620
because

00:42:43.620 --> 00:42:44.080
I

00:42:44.080 --> 00:42:44.200
would

00:42:44.200 --> 00:42:45.180
not

00:42:45.180 --> 00:42:45.360
be

00:42:45.360 --> 00:42:45.500
able

00:42:45.500 --> 00:42:45.660
to

00:42:45.660 --> 00:42:45.820
do

00:42:45.820 --> 00:42:46.120
anything

00:42:46.120 --> 00:42:46.360
with

00:42:46.360 --> 00:42:46.540
that

00:42:46.540 --> 00:42:47.060
whereas

00:42:47.060 --> 00:42:47.420
now

00:42:47.420 --> 00:42:48.000
I

00:42:48.000 --> 00:42:48.480
understand

00:42:48.480 --> 00:42:49.140
every

00:42:49.140 --> 00:42:49.660
single

00:42:49.660 --> 00:42:50.120
section

00:42:50.120 --> 00:42:50.340
of

00:42:50.340 --> 00:42:50.900
what's

00:42:50.900 --> 00:42:51.180
written

00:42:51.180 --> 00:42:51.440
in

00:42:51.440 --> 00:42:51.800
the

00:42:51.800 --> 00:42:52.020
app

00:42:52.020 --> 00:42:52.280
so

00:42:52.280 --> 00:42:52.600
at

00:42:52.600 --> 00:42:52.740
the

00:42:52.740 --> 00:42:52.960
moment

00:42:52.960 --> 00:42:53.220
I'm

00:42:53.220 --> 00:42:53.860
repurposing

00:42:53.860 --> 00:42:54.140
some

00:42:54.140 --> 00:42:54.300
of

00:42:54.300 --> 00:42:54.660
the

00:42:54.660 --> 00:42:55.220
payment

00:42:55.220 --> 00:42:55.780
logic

00:42:55.780 --> 00:42:56.260
because

00:42:56.260 --> 00:42:56.420
I

00:42:56.420 --> 00:42:56.560
will

00:42:56.560 --> 00:42:56.880
switch

00:42:56.880 --> 00:42:57.040
from

00:42:57.040 --> 00:42:57.360
stripe

00:42:57.360 --> 00:42:57.540
to

00:42:57.540 --> 00:42:57.840
paddle

00:42:57.840 --> 00:42:58.420
in

00:42:58.420 --> 00:42:58.580
the

00:42:58.580 --> 00:42:58.960
iJingle

00:42:58.960 --> 00:42:59.300
maker

00:42:59.300 --> 00:43:00.240
and

00:43:00.240 --> 00:43:01.100
yeah

00:43:01.100 --> 00:43:01.280
so

00:43:01.280 --> 00:43:01.460
I've

00:43:01.460 --> 00:43:01.620
got

00:43:01.620 --> 00:43:01.840
to

00:43:01.840 --> 00:43:02.300
rebuild

00:43:02.300 --> 00:43:02.520
the

00:43:02.520 --> 00:43:02.800
payment

00:43:02.800 --> 00:43:03.300
models

00:43:03.300 --> 00:43:03.500
I've

00:43:03.500 --> 00:43:03.640
got

00:43:03.640 --> 00:43:03.800
to

00:43:03.800 --> 00:43:04.180
rebuild

00:43:04.180 --> 00:43:04.380
the

00:43:04.380 --> 00:43:04.740
flask

00:43:04.740 --> 00:43:05.080
route

00:43:05.080 --> 00:43:05.380
for

00:43:05.380 --> 00:43:05.860
the

00:43:05.860 --> 00:43:06.660
API

00:43:06.660 --> 00:43:07.300
endpoints

00:43:07.300 --> 00:43:07.520
for

00:43:07.520 --> 00:43:07.780
the

00:43:07.780 --> 00:43:08.160
payment

00:43:08.160 --> 00:43:08.920
confirmations

00:43:08.920 --> 00:43:09.080
and

00:43:09.080 --> 00:43:09.220
all

00:43:09.220 --> 00:43:09.360
of

00:43:09.360 --> 00:43:09.560
that

00:43:09.560 --> 00:43:09.880
so

00:43:09.880 --> 00:43:10.240
I

00:43:10.240 --> 00:43:10.520
know

00:43:10.520 --> 00:43:10.740
where

00:43:10.740 --> 00:43:10.920
they

00:43:10.920 --> 00:43:11.200
are

00:43:11.200 --> 00:43:11.740
and

00:43:11.740 --> 00:43:11.860
I

00:43:11.860 --> 00:43:12.000
know

00:43:12.000 --> 00:43:13.900
how

00:43:13.900 --> 00:43:14.560
to

00:43:14.560 --> 00:43:15.020
tweak

00:43:15.020 --> 00:43:15.280
them

00:43:15.280 --> 00:43:15.460
and

00:43:15.460 --> 00:43:15.700
I

00:43:15.700 --> 00:43:15.900
can

00:43:15.900 --> 00:43:16.480
highlight

00:43:16.480 --> 00:43:17.020
exactly

00:43:17.020 --> 00:43:17.240
what

00:43:17.240 --> 00:43:17.400
I

00:43:17.400 --> 00:43:17.700
want

00:43:17.700 --> 00:43:17.980
and

00:43:17.980 --> 00:43:18.480
now

00:43:18.480 --> 00:43:18.720
I'm

00:43:18.720 --> 00:43:19.080
using

00:43:19.080 --> 00:43:19.680
I

00:43:19.680 --> 00:43:19.820
would

00:43:19.820 --> 00:43:20.140
say

00:43:20.140 --> 00:43:21.060
75%

00:43:21.060 --> 00:43:21.240
of

00:43:21.240 --> 00:43:21.360
the

00:43:21.360 --> 00:43:21.520
time

00:43:21.520 --> 00:43:21.680
I'm

00:43:21.680 --> 00:43:21.900
using

00:43:21.900 --> 00:43:22.220
github

00:43:22.220 --> 00:43:22.720
copilot

00:43:22.720 --> 00:43:23.120
straight

00:43:23.120 --> 00:43:23.300
in

00:43:23.300 --> 00:43:23.420
the

00:43:23.420 --> 00:43:23.780
IDE

00:43:23.780 --> 00:43:24.500
directly

00:43:24.500 --> 00:43:25.040
because

00:43:25.040 --> 00:43:25.260
it's

00:43:25.260 --> 00:43:25.420
in

00:43:25.420 --> 00:43:25.860
context

00:43:25.860 --> 00:43:26.120
then

00:43:26.120 --> 00:43:26.540
you

00:43:26.540 --> 00:43:27.120
highlight

00:43:27.120 --> 00:43:27.340
the

00:43:27.340 --> 00:43:27.740
code

00:43:27.740 --> 00:43:28.040
and

00:43:28.040 --> 00:43:28.480
you

00:43:28.480 --> 00:43:28.920
and

00:43:28.920 --> 00:43:29.240
then

00:43:29.240 --> 00:43:29.600
if

00:43:29.600 --> 00:43:29.900
the

00:43:29.900 --> 00:43:30.300
suggestion

00:43:30.300 --> 00:43:30.540
is

00:43:30.540 --> 00:43:30.800
nice

00:43:30.800 --> 00:43:30.960
you

00:43:30.960 --> 00:43:31.200
just

00:43:31.200 --> 00:43:32.000
insert

00:43:32.000 --> 00:43:32.260
it

00:43:32.260 --> 00:43:32.880
to

00:43:32.880 --> 00:43:33.240
replace

00:43:33.240 --> 00:43:33.460
the

00:43:33.460 --> 00:43:33.680
code

00:43:33.680 --> 00:43:34.540
so

00:43:34.540 --> 00:43:34.800
yeah

00:43:34.800 --> 00:43:35.080
once

00:43:35.080 --> 00:43:35.300
you've

00:43:35.300 --> 00:43:35.500
got

00:43:35.500 --> 00:43:35.940
something

00:43:35.940 --> 00:43:36.540
that

00:43:36.540 --> 00:43:36.680
you

00:43:36.680 --> 00:43:37.280
understand

00:43:37.280 --> 00:43:37.540
it

00:43:37.540 --> 00:43:38.020
goes

00:43:38.020 --> 00:43:38.460
faster

00:43:38.460 --> 00:43:39.300
and

00:43:39.300 --> 00:43:39.720
faster

00:43:39.720 --> 00:43:40.060
yeah

00:43:40.060 --> 00:43:40.200
and

00:43:40.200 --> 00:43:40.300
you're

00:43:40.300 --> 00:43:40.480
still

00:43:40.480 --> 00:43:40.800
early

00:43:40.800 --> 00:43:40.960
in

00:43:40.960 --> 00:43:41.100
this

00:43:41.100 --> 00:43:41.480
project

00:43:41.480 --> 00:43:41.760
right

00:43:41.760 --> 00:43:41.980
this

00:43:41.980 --> 00:43:42.200
is

00:43:42.200 --> 00:43:42.400
yeah

00:43:42.400 --> 00:43:42.700
super

00:43:42.700 --> 00:43:43.060
early

00:43:43.060 --> 00:43:43.380
five

00:43:43.380 --> 00:43:43.680
six

00:43:43.680 --> 00:43:44.320
months

00:43:44.320 --> 00:43:44.460
or

00:43:44.460 --> 00:43:44.740
something

00:43:44.740 --> 00:43:45.020
like

00:43:45.020 --> 00:43:45.140
a

00:43:45.140 --> 00:43:45.380
baby

00:43:45.380 --> 00:43:45.820
yes

00:43:45.820 --> 00:43:46.020
I

00:43:46.020 --> 00:43:46.480
imagine

00:43:46.480 --> 00:43:46.740
as

00:43:46.740 --> 00:43:46.860
you

00:43:46.860 --> 00:43:46.980
do

00:43:46.980 --> 00:43:47.160
more

00:43:47.160 --> 00:43:47.260
of

00:43:47.260 --> 00:43:47.440
this

00:43:47.440 --> 00:43:47.880
you

00:43:47.880 --> 00:43:48.100
might

00:43:48.100 --> 00:43:48.380
not

00:43:48.380 --> 00:43:48.820
choose

00:43:48.820 --> 00:43:48.980
to

00:43:48.980 --> 00:43:49.140
write

00:43:49.140 --> 00:43:49.340
a lot

00:43:49.340 --> 00:43:49.440
of

00:43:49.440 --> 00:43:49.600
code

00:43:49.600 --> 00:43:49.760
but

00:43:49.760 --> 00:43:49.860
I

00:43:49.860 --> 00:43:50.040
bet

00:43:50.040 --> 00:43:50.560
you'll

00:43:50.560 --> 00:43:50.780
start

00:43:50.780 --> 00:43:51.000
to be

00:43:51.000 --> 00:43:51.120
able

00:43:51.120 --> 00:43:51.300
to

00:43:51.300 --> 00:43:51.620
write

00:43:51.620 --> 00:43:52.240
code

00:43:52.240 --> 00:43:52.520
kind

00:43:52.520 --> 00:43:52.620
of

00:43:52.620 --> 00:43:52.780
like

00:43:52.780 --> 00:43:53.160
language

00:43:53.160 --> 00:43:53.600
immersion

00:43:53.600 --> 00:43:54.220
you know

00:43:54.220 --> 00:43:54.440
if you

00:43:54.440 --> 00:43:55.020
move

00:43:55.020 --> 00:43:55.240
to

00:43:55.240 --> 00:43:55.620
Brazil

00:43:55.620 --> 00:43:55.880
you

00:43:55.880 --> 00:43:56.000
would

00:43:56.000 --> 00:43:56.200
start

00:43:56.200 --> 00:43:56.360
to

00:43:56.360 --> 00:43:56.520
learn

00:43:56.520 --> 00:43:57.080
Portuguese

00:43:57.080 --> 00:43:58.080
yes

00:43:58.080 --> 00:43:58.720
eventually

00:43:58.720 --> 00:43:59.080
just

00:43:59.080 --> 00:43:59.260
because

00:43:59.260 --> 00:43:59.460
you're

00:43:59.460 --> 00:43:59.760
in

00:43:59.760 --> 00:44:00.000
that

00:44:00.000 --> 00:44:00.460
environment

00:44:00.460 --> 00:44:00.720
so

00:44:00.720 --> 00:44:00.940
much

00:44:00.940 --> 00:44:01.080
you

00:44:01.080 --> 00:44:01.240
know

00:44:01.240 --> 00:44:01.400
but

00:44:01.400 --> 00:44:01.800
sometimes

00:44:01.800 --> 00:44:02.220
really

00:44:02.220 --> 00:44:02.420
you

00:44:02.420 --> 00:44:02.640
know

00:44:02.640 --> 00:44:03.120
with

00:44:03.120 --> 00:44:03.300
the

00:44:03.300 --> 00:44:03.820
suggestions

00:44:03.820 --> 00:44:05.180
it's

00:44:05.180 --> 00:44:06.680
you

00:44:06.680 --> 00:44:06.940
wouldn't

00:44:06.940 --> 00:44:07.100
see

00:44:07.100 --> 00:44:07.500
why

00:44:07.500 --> 00:44:07.780
you

00:44:07.780 --> 00:44:08.080
would

00:44:08.080 --> 00:44:08.680
write

00:44:08.680 --> 00:44:09.660
the

00:44:09.660 --> 00:44:09.940
code

00:44:09.940 --> 00:44:10.100
for

00:44:10.100 --> 00:44:10.480
instance

00:44:10.480 --> 00:44:10.880
I

00:44:10.880 --> 00:44:11.180
had

00:44:11.180 --> 00:44:12.340
earlier

00:44:12.340 --> 00:44:12.660
today

00:44:12.660 --> 00:44:12.800
I

00:44:12.800 --> 00:44:12.980
was

00:44:12.980 --> 00:44:13.440
creating

00:44:13.440 --> 00:44:13.640
a

00:44:13.640 --> 00:44:14.060
scraper

00:44:14.060 --> 00:44:14.260
to

00:44:14.260 --> 00:44:14.740
check

00:44:14.740 --> 00:44:15.120
the

00:44:15.120 --> 00:44:15.580
technology

00:44:15.580 --> 00:44:15.960
used

00:44:15.960 --> 00:44:16.120
by

00:44:16.120 --> 00:44:16.440
different

00:44:16.440 --> 00:44:17.020
websites

00:44:17.020 --> 00:44:17.260
by

00:44:17.260 --> 00:44:17.580
looking

00:44:17.580 --> 00:44:17.740
in

00:44:17.740 --> 00:44:17.860
the

00:44:17.860 --> 00:44:18.160
source

00:44:18.160 --> 00:44:18.480
code

00:44:18.480 --> 00:44:18.860
for

00:44:18.860 --> 00:44:19.160
let's

00:44:19.160 --> 00:44:19.380
say

00:44:19.380 --> 00:44:20.160
WP

00:44:20.160 --> 00:44:20.400
for

00:44:20.400 --> 00:44:20.920
WordPress

00:44:20.920 --> 00:44:22.220
Odoo

00:44:22.220 --> 00:44:22.820
for Odoo

00:44:22.820 --> 00:44:23.600
Squarespace

00:44:23.600 --> 00:44:23.940
Weebly

00:44:23.940 --> 00:44:24.180
you know

00:44:24.180 --> 00:44:24.780
this kind

00:44:24.780 --> 00:44:25.080
of thing

00:44:25.080 --> 00:44:25.760
we just

00:44:25.760 --> 00:44:26.020
wrote

00:44:26.020 --> 00:44:26.400
together

00:44:26.400 --> 00:44:26.580
with

00:44:26.580 --> 00:44:26.760
the

00:44:26.760 --> 00:44:27.640
first

00:44:27.640 --> 00:44:28.820
part

00:44:28.820 --> 00:44:29.100
and

00:44:29.100 --> 00:44:29.280
then

00:44:29.280 --> 00:44:29.440
we

00:44:29.440 --> 00:44:29.580
had

00:44:29.580 --> 00:44:29.740
to

00:44:29.740 --> 00:44:30.160
replicate

00:44:30.160 --> 00:44:30.820
the

00:44:30.820 --> 00:44:31.140
code

00:44:31.140 --> 00:44:31.360
in

00:44:31.360 --> 00:44:31.900
beautiful

00:44:31.900 --> 00:44:32.360
soup

00:44:32.360 --> 00:44:33.160
for

00:44:33.160 --> 00:44:33.680
the

00:44:33.680 --> 00:44:34.140
scraper

00:44:34.140 --> 00:44:34.700
for

00:44:34.700 --> 00:44:35.040
each

00:44:35.040 --> 00:44:35.200
of

00:44:35.200 --> 00:44:35.420
them

00:44:35.420 --> 00:44:36.060
there's

00:44:36.060 --> 00:44:36.660
absolutely

00:44:36.660 --> 00:44:37.040
no

00:44:37.040 --> 00:44:37.440
reason

00:44:37.440 --> 00:44:37.680
why

00:44:37.680 --> 00:44:37.840
I

00:44:37.840 --> 00:44:38.020
would

00:44:38.020 --> 00:44:38.480
write

00:44:38.480 --> 00:44:38.880
each

00:44:38.880 --> 00:44:39.420
iteration

00:44:39.420 --> 00:44:40.140
and

00:44:40.140 --> 00:44:41.020
once

00:44:41.020 --> 00:44:41.200
you

00:44:41.200 --> 00:44:41.600
write

00:44:41.600 --> 00:44:42.140
two

00:44:42.140 --> 00:44:42.360
of

00:44:42.360 --> 00:44:42.620
them

00:44:42.620 --> 00:44:43.160
then

00:44:43.160 --> 00:44:43.480
you

00:44:43.480 --> 00:44:44.040
with

00:44:44.040 --> 00:44:44.580
copilot

00:44:44.580 --> 00:44:44.840
you

00:44:44.840 --> 00:44:45.040
just

00:44:45.040 --> 00:44:45.420
go

00:44:45.420 --> 00:44:45.940
with

00:44:45.940 --> 00:44:46.120
your

00:44:46.120 --> 00:44:46.580
tab

00:44:46.580 --> 00:44:47.000
to

00:44:47.000 --> 00:44:47.180
the

00:44:47.180 --> 00:44:47.520
next

00:44:47.520 --> 00:44:48.700
section

00:44:48.700 --> 00:44:49.160
and

00:44:49.160 --> 00:44:49.320
you

00:44:49.320 --> 00:44:49.900
understand

00:44:49.900 --> 00:44:50.420
what

00:44:50.420 --> 00:44:50.580
you

00:44:50.580 --> 00:44:51.060
expect

00:44:51.060 --> 00:44:51.400
because

00:44:51.400 --> 00:44:51.700
you

00:44:51.700 --> 00:44:51.800
have

00:44:51.800 --> 00:44:52.500
three

00:44:52.500 --> 00:44:52.720
or

00:44:52.720 --> 00:44:52.940
four

00:44:52.940 --> 00:44:53.760
technologies

00:44:53.760 --> 00:44:54.000
that

00:44:54.000 --> 00:44:54.100
you

00:44:54.100 --> 00:44:54.280
want

00:44:54.280 --> 00:44:54.420
to

00:44:54.420 --> 00:44:54.760
track

00:44:54.760 --> 00:44:55.160
in

00:44:55.160 --> 00:44:55.320
your

00:44:55.320 --> 00:44:55.620
code

00:44:55.620 --> 00:44:55.820
that

00:44:55.820 --> 00:44:55.940
you

00:44:55.940 --> 00:44:56.260
declared

00:44:56.260 --> 00:44:56.620
before

00:44:56.620 --> 00:44:57.080
they

00:44:57.080 --> 00:44:57.240
will

00:44:57.240 --> 00:44:57.440
have

00:44:57.440 --> 00:44:57.620
to

00:44:57.620 --> 00:44:58.020
write

00:44:58.020 --> 00:44:58.440
a

00:44:58.440 --> 00:44:58.680
block

00:44:58.680 --> 00:44:58.840
of

00:44:58.840 --> 00:44:59.120
six

00:44:59.120 --> 00:44:59.480
lines

00:44:59.480 --> 00:45:00.000
boom

00:45:00.000 --> 00:45:00.260
that's

00:45:00.260 --> 00:45:00.380
the

00:45:00.380 --> 00:45:00.600
block

00:45:00.600 --> 00:45:00.740
of

00:45:00.740 --> 00:45:00.960
six

00:45:00.960 --> 00:45:01.280
lines

00:45:01.280 --> 00:45:01.940
there's

00:45:01.940 --> 00:45:02.220
no

00:45:02.220 --> 00:45:02.660
reason

00:45:02.660 --> 00:45:02.900
in

00:45:02.900 --> 00:45:03.080
the

00:45:03.080 --> 00:45:03.360
world

00:45:03.360 --> 00:45:03.740
why

00:45:03.740 --> 00:45:03.980
I

00:45:03.980 --> 00:45:04.180
would

00:45:04.180 --> 00:45:04.520
write

00:45:04.520 --> 00:45:04.780
those

00:45:04.780 --> 00:45:05.020
six

00:45:05.020 --> 00:45:05.320
lines

00:45:05.320 --> 00:45:05.620
you

00:45:05.620 --> 00:45:05.960
know

00:45:05.960 --> 00:45:06.400
amazing

00:45:06.400 --> 00:45:06.900
that's

00:45:06.900 --> 00:45:07.200
crazy

00:45:07.200 --> 00:45:08.120
one more

00:45:08.120 --> 00:45:08.400
prompt

00:45:08.400 --> 00:45:08.940
engineering

00:45:08.940 --> 00:45:09.400
thing

00:45:09.400 --> 00:45:10.260
you talked

00:45:10.260 --> 00:45:10.480
about

00:45:10.480 --> 00:45:10.700
and I

00:45:10.700 --> 00:45:10.860
think

00:45:10.860 --> 00:45:11.100
it is

00:45:11.100 --> 00:45:11.220
a

00:45:11.220 --> 00:45:11.540
problem

00:45:11.540 --> 00:45:11.880
so

00:45:11.880 --> 00:45:12.540
I

00:45:12.540 --> 00:45:13.440
asked

00:45:13.440 --> 00:45:13.900
basically

00:45:13.900 --> 00:45:14.280
what's

00:45:14.280 --> 00:45:14.420
the

00:45:14.420 --> 00:45:15.100
boilerplate

00:45:15.100 --> 00:45:15.260
and

00:45:15.260 --> 00:45:15.380
it

00:45:15.380 --> 00:45:15.620
said

00:45:15.620 --> 00:45:15.900
boom

00:45:15.900 --> 00:45:16.320
here's

00:45:16.320 --> 00:45:16.460
the

00:45:16.460 --> 00:45:17.000
boilerplate

00:45:17.000 --> 00:45:17.240
for

00:45:17.240 --> 00:45:17.700
flask

00:45:17.700 --> 00:45:17.900
and

00:45:17.900 --> 00:45:18.120
chat

00:45:18.120 --> 00:45:18.580
GPT

00:45:18.580 --> 00:45:18.820
then

00:45:18.820 --> 00:45:18.980
I

00:45:18.980 --> 00:45:19.140
said

00:45:19.140 --> 00:45:19.280
well

00:45:19.280 --> 00:45:19.420
how

00:45:19.420 --> 00:45:19.540
do

00:45:19.540 --> 00:45:19.620
I

00:45:19.620 --> 00:45:19.820
use

00:45:19.820 --> 00:45:19.980
a

00:45:19.980 --> 00:45:20.280
template

00:45:20.280 --> 00:45:20.420
and

00:45:20.420 --> 00:45:20.500
it

00:45:20.500 --> 00:45:20.640
said

00:45:20.640 --> 00:45:21.040
boom

00:45:21.040 --> 00:45:21.360
here's

00:45:21.360 --> 00:45:21.480
the

00:45:21.480 --> 00:45:21.640
two

00:45:21.640 --> 00:45:21.880
pieces

00:45:21.880 --> 00:45:22.080
of

00:45:22.080 --> 00:45:22.320
code

00:45:22.320 --> 00:45:22.700
you

00:45:22.700 --> 00:45:22.900
said

00:45:22.900 --> 00:45:23.260
sometimes

00:45:23.260 --> 00:45:23.640
this

00:45:23.640 --> 00:45:23.800
can

00:45:23.800 --> 00:45:24.160
be

00:45:24.160 --> 00:45:24.540
really

00:45:24.540 --> 00:45:25.080
challenging

00:45:25.080 --> 00:45:25.700
you

00:45:25.700 --> 00:45:26.020
said

00:45:26.020 --> 00:45:26.500
one

00:45:26.500 --> 00:45:26.600
of

00:45:26.600 --> 00:45:26.720
the

00:45:26.720 --> 00:45:27.000
techniques

00:45:27.000 --> 00:45:27.260
used

00:45:27.260 --> 00:45:27.480
was

00:45:27.480 --> 00:45:27.680
to

00:45:27.680 --> 00:45:28.180
explain

00:45:28.180 --> 00:45:28.320
to

00:45:28.320 --> 00:45:28.420
me

00:45:28.420 --> 00:45:28.560
like

00:45:28.560 --> 00:45:28.660
a

00:45:28.660 --> 00:45:28.840
five

00:45:28.840 --> 00:45:29.100
year old

00:45:29.100 --> 00:45:29.600
another

00:45:29.600 --> 00:45:29.820
thing

00:45:29.820 --> 00:45:29.960
that

00:45:29.960 --> 00:45:30.320
works

00:45:30.320 --> 00:45:30.680
really

00:45:30.680 --> 00:45:30.940
well

00:45:30.940 --> 00:45:31.160
is

00:45:31.160 --> 00:45:31.380
I

00:45:31.380 --> 00:45:31.560
just

00:45:31.560 --> 00:45:31.760
said

00:45:31.760 --> 00:45:31.980
tell

00:45:31.980 --> 00:45:32.140
me

00:45:32.140 --> 00:45:32.320
this

00:45:32.320 --> 00:45:32.620
again

00:45:32.620 --> 00:45:33.220
let's

00:45:33.220 --> 00:45:33.600
think

00:45:33.600 --> 00:45:33.960
step

00:45:33.960 --> 00:45:34.180
by

00:45:34.180 --> 00:45:34.600
step

00:45:34.600 --> 00:45:35.000
and

00:45:35.000 --> 00:45:35.120
it

00:45:35.120 --> 00:45:35.300
gave

00:45:35.300 --> 00:45:35.440
me

00:45:35.440 --> 00:45:35.660
a

00:45:35.660 --> 00:45:36.040
10

00:45:36.040 --> 00:45:36.540
step

00:45:36.540 --> 00:45:37.320
process

00:45:37.320 --> 00:45:38.080
start

00:45:38.080 --> 00:45:38.360
one

00:45:38.360 --> 00:45:38.700
install

00:45:38.700 --> 00:45:39.180
flask

00:45:39.180 --> 00:45:39.620
create

00:45:39.620 --> 00:45:39.740
a

00:45:39.740 --> 00:45:40.020
project

00:45:40.020 --> 00:45:40.440
directory

00:45:40.440 --> 00:45:40.960
create

00:45:40.960 --> 00:45:41.100
the

00:45:41.100 --> 00:45:41.400
project

00:45:41.400 --> 00:45:41.940
script

00:45:41.940 --> 00:45:42.760
import

00:45:42.760 --> 00:45:43.260
flask

00:45:43.260 --> 00:45:43.440
and

00:45:43.440 --> 00:45:43.580
it

00:45:43.580 --> 00:45:43.840
was

00:45:43.840 --> 00:45:44.320
really

00:45:44.320 --> 00:45:44.780
much

00:45:44.780 --> 00:45:45.140
more

00:45:45.140 --> 00:45:45.420
like

00:45:45.420 --> 00:45:45.780
this

00:45:45.780 --> 00:45:45.980
is

00:45:45.980 --> 00:45:46.160
what

00:45:46.160 --> 00:45:46.420
each

00:45:46.420 --> 00:45:46.740
step

00:45:46.740 --> 00:45:46.940
you

00:45:46.940 --> 00:45:47.100
need

00:45:47.100 --> 00:45:47.220
to

00:45:47.220 --> 00:45:47.460
do

00:45:47.460 --> 00:45:49.600
when

00:45:49.600 --> 00:45:49.700
you

00:45:49.700 --> 00:45:50.280
start

00:45:50.280 --> 00:45:50.620
learning

00:45:50.620 --> 00:45:50.900
it's

00:45:50.900 --> 00:45:51.140
nice

00:45:51.140 --> 00:45:51.320
to

00:45:51.320 --> 00:45:51.480
do

00:45:51.480 --> 00:45:51.620
it

00:45:51.620 --> 00:45:52.240
step

00:45:52.240 --> 00:45:52.440
by

00:45:52.440 --> 00:45:52.720
step

00:45:52.720 --> 00:45:53.040
because

00:45:53.040 --> 00:45:53.800
some

00:45:53.800 --> 00:45:54.120
people

00:45:54.120 --> 00:45:54.560
don't

00:45:54.560 --> 00:45:55.280
understand

00:45:55.280 --> 00:45:55.560
and

00:45:55.560 --> 00:45:56.300
that's

00:45:56.300 --> 00:45:56.580
quite

00:45:56.580 --> 00:45:57.080
normal

00:45:57.080 --> 00:46:04.520
simple

00:46:04.520 --> 00:46:04.860
things

00:46:04.860 --> 00:46:05.040
like

00:46:05.040 --> 00:46:05.260
that

00:46:05.260 --> 00:46:05.660
so

00:46:05.660 --> 00:46:06.100
in

00:46:06.100 --> 00:46:06.200
the

00:46:06.200 --> 00:46:06.500
beginning

00:46:06.500 --> 00:46:06.760
it's

00:46:06.760 --> 00:46:06.980
nice

00:46:06.980 --> 00:46:07.140
to

00:46:07.140 --> 00:46:07.340
go

00:46:07.340 --> 00:46:07.620
step

00:46:07.620 --> 00:46:07.800
by

00:46:07.800 --> 00:46:08.100
step

00:46:08.100 --> 00:46:08.540
it's

00:46:08.540 --> 00:46:08.680
really

00:46:08.680 --> 00:46:09.020
powerful

00:46:09.020 --> 00:46:09.620
and

00:46:09.620 --> 00:46:09.880
it's

00:46:09.880 --> 00:46:10.240
something

00:46:10.240 --> 00:46:11.040
people

00:46:11.040 --> 00:46:11.180
can

00:46:11.180 --> 00:46:11.360
check

00:46:11.360 --> 00:46:11.620
out

00:46:11.620 --> 00:46:12.060
there's

00:46:12.060 --> 00:46:12.160
a

00:46:12.160 --> 00:46:12.460
cool

00:46:12.460 --> 00:46:13.280
video

00:46:13.280 --> 00:46:16.780
prompt

00:46:16.780 --> 00:46:17.220
engineering

00:46:17.220 --> 00:46:17.660
101

00:46:17.660 --> 00:46:17.920
by

00:46:17.920 --> 00:46:18.240
Patrick

00:46:18.240 --> 00:46:18.560
Lovier

00:46:18.560 --> 00:46:21.800
has

00:46:21.800 --> 00:46:21.940
a

00:46:21.940 --> 00:46:22.180
bunch

00:46:22.180 --> 00:46:22.460
of

00:46:22.460 --> 00:46:22.820
advice

00:46:22.820 --> 00:46:23.040
from

00:46:23.040 --> 00:46:23.440
places

00:46:23.440 --> 00:46:23.660
like

00:46:23.660 --> 00:46:24.100
Anthropic

00:46:24.100 --> 00:46:24.320
and

00:46:24.320 --> 00:46:24.640
others

00:46:24.640 --> 00:46:25.260
here

00:46:25.260 --> 00:46:25.540
is

00:46:25.540 --> 00:46:25.720
how

00:46:25.720 --> 00:46:25.900
you

00:46:25.900 --> 00:46:26.160
go

00:46:26.160 --> 00:46:26.420
and

00:46:26.420 --> 00:46:26.920
some

00:46:26.920 --> 00:46:27.240
things

00:46:27.240 --> 00:46:27.420
you

00:46:27.420 --> 00:46:27.580
can

00:46:27.580 --> 00:46:27.960
try

00:46:27.960 --> 00:46:28.380
it's

00:46:28.380 --> 00:46:28.660
also

00:46:28.660 --> 00:46:29.260
evolving

00:46:29.260 --> 00:46:29.940
thanks

00:46:29.940 --> 00:46:30.220
also

00:46:30.220 --> 00:46:30.460
to

00:46:30.460 --> 00:46:30.780
the

00:46:30.780 --> 00:46:31.320
longer

00:46:31.320 --> 00:46:32.340
context

00:46:32.340 --> 00:46:32.800
windows

00:46:32.800 --> 00:46:33.100
that

00:46:33.100 --> 00:46:33.340
we

00:46:33.340 --> 00:46:33.980
have

00:46:33.980 --> 00:46:34.400
today

00:46:34.400 --> 00:46:34.660
in

00:46:34.660 --> 00:46:34.760
the

00:46:34.760 --> 00:46:35.100
LLM

00:46:35.100 --> 00:46:35.300
because

00:46:35.300 --> 00:46:35.580
when

00:46:35.580 --> 00:46:35.740
I

00:46:35.740 --> 00:46:36.080
started

00:46:36.080 --> 00:46:36.420
doing

00:46:36.420 --> 00:46:36.800
that

00:46:36.800 --> 00:46:37.860
in

00:46:37.860 --> 00:46:39.900
2022

00:46:39.900 --> 00:46:40.640
the

00:46:40.640 --> 00:46:41.020
context

00:46:41.020 --> 00:46:41.420
window

00:46:41.420 --> 00:46:41.700
was

00:46:41.700 --> 00:46:42.260
maximum

00:46:42.260 --> 00:46:43.280
4000

00:46:43.280 --> 00:46:43.920
tokens

00:46:43.920 --> 00:46:44.200
or

00:46:44.200 --> 00:46:44.420
something

00:46:44.420 --> 00:46:44.660
like

00:46:44.660 --> 00:46:45.060
that

00:46:45.060 --> 00:46:45.240
so

00:46:45.240 --> 00:46:45.560
you

00:46:45.560 --> 00:46:45.780
had

00:46:45.780 --> 00:46:46.020
to

00:46:46.020 --> 00:46:46.360
really

00:46:46.360 --> 00:46:46.740
go

00:46:46.740 --> 00:46:47.400
by

00:46:47.400 --> 00:46:47.740
short

00:46:47.740 --> 00:46:48.120
section

00:46:48.120 --> 00:46:48.360
it

00:46:48.360 --> 00:46:48.600
was

00:46:48.600 --> 00:46:48.920
very

00:46:48.920 --> 00:46:49.340
difficult

00:46:49.340 --> 00:46:49.640
to

00:46:49.640 --> 00:46:50.040
debug

00:46:50.040 --> 00:46:50.600
long

00:46:50.600 --> 00:46:51.160
long

00:46:51.160 --> 00:46:51.520
pieces

00:46:51.520 --> 00:46:51.740
of

00:46:51.740 --> 00:46:51.900
code

00:46:51.900 --> 00:46:52.100
long

00:46:52.100 --> 00:46:52.440
sections

00:46:52.440 --> 00:46:52.660
of

00:46:52.660 --> 00:46:52.840
code

00:46:52.840 --> 00:46:53.460
now

00:46:53.460 --> 00:46:53.940
the

00:46:53.940 --> 00:46:55.000
token

00:46:55.000 --> 00:46:55.440
window

00:46:55.440 --> 00:46:55.800
is

00:46:55.800 --> 00:46:57.360
128,000

00:46:57.360 --> 00:46:57.820
on

00:46:57.820 --> 00:46:58.120
open

00:46:58.120 --> 00:46:58.420
AI

00:46:58.420 --> 00:46:58.660
and

00:46:58.660 --> 00:46:58.880
even

00:46:58.880 --> 00:46:59.240
longer

00:46:59.240 --> 00:46:59.480
on

00:46:59.480 --> 00:46:59.800
cloud

00:46:59.800 --> 00:47:00.120
or

00:47:00.120 --> 00:47:00.440
other

00:47:00.440 --> 00:47:00.920
LLMs

00:47:00.920 --> 00:47:01.700
today

00:47:01.700 --> 00:47:01.980
it's

00:47:01.980 --> 00:47:02.380
possible

00:47:02.380 --> 00:47:02.920
to

00:47:02.920 --> 00:47:03.940
basically

00:47:03.940 --> 00:47:04.520
throw

00:47:04.520 --> 00:47:05.180
at some

00:47:05.180 --> 00:47:05.640
point

00:47:05.640 --> 00:47:06.800
750

00:47:06.800 --> 00:47:07.420
lines

00:47:07.420 --> 00:47:07.940
of code

00:47:07.940 --> 00:47:08.360
in

00:47:08.360 --> 00:47:09.200
1000

00:47:09.200 --> 00:47:10.900
or

00:47:10.900 --> 00:47:11.540
and get

00:47:11.540 --> 00:47:13.100
refactoring

00:47:13.100 --> 00:47:13.700
debugging

00:47:13.700 --> 00:47:15.140
that's

00:47:15.140 --> 00:47:15.380
also

00:47:15.380 --> 00:47:15.700
really

00:47:15.700 --> 00:47:16.120
amazing

00:47:16.120 --> 00:47:16.480
when

00:47:16.480 --> 00:47:16.620
you

00:47:16.620 --> 00:47:16.980
need

00:47:16.980 --> 00:47:17.480
let's

00:47:17.480 --> 00:47:17.620
say

00:47:17.620 --> 00:47:17.860
you

00:47:17.860 --> 00:47:18.280
know

00:47:18.280 --> 00:47:18.520
that

00:47:18.520 --> 00:47:18.780
you

00:47:18.780 --> 00:47:19.520
created

00:47:19.520 --> 00:47:19.860
something

00:47:19.860 --> 00:47:20.280
cool

00:47:20.280 --> 00:47:20.460
in

00:47:20.460 --> 00:47:20.700
one

00:47:20.700 --> 00:47:21.080
app

00:47:21.080 --> 00:47:21.340
some

00:47:21.340 --> 00:47:21.680
business

00:47:21.680 --> 00:47:22.100
logic

00:47:22.100 --> 00:47:22.480
something

00:47:22.480 --> 00:47:23.120
interesting

00:47:23.120 --> 00:47:23.340
but

00:47:23.340 --> 00:47:23.460
you

00:47:23.460 --> 00:47:23.640
know

00:47:23.640 --> 00:47:23.860
that

00:47:23.860 --> 00:47:24.200
you

00:47:24.200 --> 00:47:24.400
want

00:47:24.400 --> 00:47:24.540
to

00:47:24.540 --> 00:47:24.780
just

00:47:24.780 --> 00:47:25.360
repurpose

00:47:25.360 --> 00:47:25.600
it

00:47:25.600 --> 00:47:25.860
in

00:47:25.860 --> 00:47:26.000
a

00:47:26.000 --> 00:47:26.280
small

00:47:26.280 --> 00:47:26.620
way

00:47:26.620 --> 00:47:26.900
like

00:47:26.900 --> 00:47:27.200
make

00:47:27.200 --> 00:47:27.480
little

00:47:27.480 --> 00:47:28.040
tweaks

00:47:28.040 --> 00:47:28.480
you

00:47:28.480 --> 00:47:28.840
just

00:47:28.840 --> 00:47:29.560
throw

00:47:29.560 --> 00:47:30.160
all

00:47:30.160 --> 00:47:30.320
the

00:47:30.320 --> 00:47:30.580
code

00:47:30.580 --> 00:47:30.820
into

00:47:30.820 --> 00:47:31.000
the

00:47:31.000 --> 00:47:31.380
LLM

00:47:31.380 --> 00:47:31.580
and

00:47:31.580 --> 00:47:31.680
you

00:47:31.680 --> 00:47:31.900
just

00:47:31.900 --> 00:47:32.300
explain

00:47:32.300 --> 00:47:32.480
the

00:47:32.480 --> 00:47:32.640
little

00:47:32.640 --> 00:47:33.020
changes

00:47:33.020 --> 00:47:33.200
that

00:47:33.200 --> 00:47:33.320
you

00:47:33.320 --> 00:47:33.580
want

00:47:33.580 --> 00:47:34.000
and

00:47:34.000 --> 00:47:34.220
it

00:47:34.220 --> 00:47:34.700
will

00:47:34.700 --> 00:47:35.080
give

00:47:35.080 --> 00:47:35.260
you

00:47:35.260 --> 00:47:35.480
the

00:47:35.480 --> 00:47:35.800
adapted

00:47:35.800 --> 00:47:36.280
code

00:47:36.280 --> 00:47:36.800
fully

00:47:36.800 --> 00:47:37.280
functional

00:47:37.280 --> 00:47:37.820
in

00:47:37.820 --> 00:47:38.080
one

00:47:38.080 --> 00:47:38.320
go

00:47:38.320 --> 00:47:38.720
one

00:47:38.720 --> 00:47:39.000
shot

00:47:39.000 --> 00:47:39.460
which

00:47:39.460 --> 00:47:39.620
is

00:47:39.620 --> 00:47:39.880
also

00:47:39.880 --> 00:47:40.440
impressive

00:47:40.440 --> 00:47:40.740
that

00:47:40.740 --> 00:47:40.900
is

00:47:40.900 --> 00:47:41.120
super

00:47:41.120 --> 00:47:41.460
impressive

00:47:41.460 --> 00:47:42.040
so

00:47:42.040 --> 00:47:42.160
it

00:47:42.160 --> 00:47:42.300
sounds

00:47:42.300 --> 00:47:42.460
like

00:47:42.460 --> 00:47:42.560
you

00:47:42.560 --> 00:47:42.720
use

00:47:42.720 --> 00:47:43.040
google

00:47:43.040 --> 00:47:43.620
copilot

00:47:43.620 --> 00:47:44.160
a lot

00:47:44.160 --> 00:47:44.320
have

00:47:44.320 --> 00:47:44.420
you

00:47:44.420 --> 00:47:44.580
looked

00:47:44.580 --> 00:47:44.760
at

00:47:44.760 --> 00:47:45.300
gpt

00:47:45.300 --> 00:47:46.020
engineer

00:47:46.020 --> 00:47:46.480
no

00:47:46.480 --> 00:47:46.760
so

00:47:46.760 --> 00:47:46.960
i

00:47:46.960 --> 00:47:47.200
haven't

00:47:47.200 --> 00:47:47.420
really

00:47:47.420 --> 00:47:47.700
either

00:47:47.700 --> 00:47:47.900
but

00:47:47.900 --> 00:47:48.080
it

00:47:48.080 --> 00:47:48.620
basically

00:47:48.620 --> 00:47:49.400
it's

00:47:49.400 --> 00:47:49.600
supposed

00:47:49.600 --> 00:47:49.920
to be

00:47:49.920 --> 00:47:50.160
kind

00:47:50.160 --> 00:47:50.280
of

00:47:50.280 --> 00:47:50.440
an

00:47:50.440 --> 00:47:50.980
iterative

00:47:50.980 --> 00:47:51.680
thing

00:47:51.680 --> 00:47:51.940
that

00:47:51.940 --> 00:47:52.340
goes

00:47:52.340 --> 00:47:52.800
it

00:47:52.800 --> 00:47:53.280
will

00:47:53.280 --> 00:47:53.680
generate

00:47:53.680 --> 00:47:53.920
all

00:47:53.920 --> 00:47:54.100
the

00:47:54.100 --> 00:47:54.700
multiple

00:47:54.700 --> 00:47:55.160
files

00:47:55.160 --> 00:47:55.420
for

00:47:55.420 --> 00:47:55.640
you

00:47:55.640 --> 00:47:55.840
and

00:47:55.840 --> 00:47:57.060
try

00:47:57.060 --> 00:47:57.260
to

00:47:57.260 --> 00:47:57.840
understand

00:47:57.840 --> 00:47:58.360
how

00:47:58.360 --> 00:47:58.540
all

00:47:58.540 --> 00:47:58.800
those

00:47:58.800 --> 00:47:59.200
pieces

00:47:59.200 --> 00:47:59.920
fit

00:47:59.920 --> 00:48:00.240
together

00:48:00.240 --> 00:48:00.660
and

00:48:00.660 --> 00:48:01.020
work

00:48:01.020 --> 00:48:01.200
and

00:48:01.200 --> 00:48:01.500
so

00:48:01.500 --> 00:48:01.840
more

00:48:01.840 --> 00:48:02.020
like

00:48:02.020 --> 00:48:02.160
an

00:48:02.160 --> 00:48:02.440
agent

00:48:02.440 --> 00:48:03.700
logic

00:48:03.700 --> 00:48:04.560
yeah

00:48:04.560 --> 00:48:05.320
exactly

00:48:05.320 --> 00:48:05.980
exactly

00:48:05.980 --> 00:48:06.500
so

00:48:06.500 --> 00:48:06.860
but

00:48:06.860 --> 00:48:07.340
pretty

00:48:07.340 --> 00:48:07.560
i

00:48:07.560 --> 00:48:07.820
started

00:48:07.820 --> 00:48:08.240
working

00:48:08.240 --> 00:48:08.440
with

00:48:08.440 --> 00:48:08.580
the

00:48:08.580 --> 00:48:09.200
gpt

00:48:09.200 --> 00:48:10.080
from

00:48:10.080 --> 00:48:10.340
open

00:48:10.340 --> 00:48:10.520
ai

00:48:10.520 --> 00:48:10.860
from

00:48:10.860 --> 00:48:11.460
chat

00:48:11.460 --> 00:48:11.720
gpt

00:48:11.720 --> 00:48:11.860
i

00:48:11.860 --> 00:48:12.140
created

00:48:12.140 --> 00:48:12.540
a few

00:48:12.540 --> 00:48:12.740
of

00:48:12.740 --> 00:48:13.000
them

00:48:13.000 --> 00:48:13.760
it

00:48:13.760 --> 00:48:13.880
was

00:48:13.880 --> 00:48:14.020
a

00:48:14.020 --> 00:48:14.260
funny

00:48:14.260 --> 00:48:14.820
one

00:48:14.820 --> 00:48:14.980
for

00:48:14.980 --> 00:48:15.360
instance

00:48:15.360 --> 00:48:15.880
i'm

00:48:15.880 --> 00:48:16.140
working

00:48:16.140 --> 00:48:16.360
for

00:48:16.360 --> 00:48:16.480
an

00:48:16.480 --> 00:48:16.800
accounting

00:48:16.800 --> 00:48:17.300
firm

00:48:17.300 --> 00:48:18.060
for

00:48:18.060 --> 00:48:18.280
some

00:48:18.280 --> 00:48:18.660
marketing

00:48:18.660 --> 00:48:19.000
and

00:48:19.000 --> 00:48:19.840
the

00:48:19.840 --> 00:48:20.100
boss

00:48:20.100 --> 00:48:20.280
of

00:48:20.280 --> 00:48:20.580
the

00:48:20.580 --> 00:48:21.740
company

00:48:21.740 --> 00:48:22.240
sent

00:48:22.240 --> 00:48:22.560
me

00:48:22.560 --> 00:48:23.180
a

00:48:23.180 --> 00:48:23.560
document

00:48:23.560 --> 00:48:23.800
of

00:48:23.800 --> 00:48:24.580
350

00:48:24.580 --> 00:48:25.180
pages

00:48:25.180 --> 00:48:25.780
explaining

00:48:25.780 --> 00:48:26.400
the

00:48:26.400 --> 00:48:26.800
accounting

00:48:26.800 --> 00:48:27.220
module

00:48:27.220 --> 00:48:27.440
on

00:48:27.440 --> 00:48:27.880
Odoo

00:48:27.880 --> 00:48:28.140
which

00:48:28.140 --> 00:48:28.280
is

00:48:28.280 --> 00:48:28.560
an

00:48:28.560 --> 00:48:29.040
erp

00:48:29.040 --> 00:48:29.720
system

00:48:29.720 --> 00:48:30.220
two

00:48:30.220 --> 00:48:30.460
weeks

00:48:30.460 --> 00:48:30.720
ago

00:48:30.720 --> 00:48:30.860
and

00:48:30.860 --> 00:48:30.940
he

00:48:30.940 --> 00:48:31.040
said

00:48:31.040 --> 00:48:31.240
oh

00:48:31.240 --> 00:48:31.460
you

00:48:31.460 --> 00:48:31.660
should

00:48:31.660 --> 00:48:31.980
read

00:48:31.980 --> 00:48:32.320
that

00:48:32.320 --> 00:48:32.720
to

00:48:32.720 --> 00:48:32.880
be

00:48:32.880 --> 00:48:33.080
able

00:48:33.080 --> 00:48:33.280
to

00:48:33.280 --> 00:48:34.060
understand

00:48:34.060 --> 00:48:34.360
it

00:48:34.360 --> 00:48:34.540
and

00:48:34.540 --> 00:48:34.900
answer

00:48:34.900 --> 00:48:35.440
questions

00:48:35.440 --> 00:48:35.740
about

00:48:35.740 --> 00:48:35.940
the

00:48:35.940 --> 00:48:36.220
module

00:48:36.220 --> 00:48:36.420
and

00:48:36.420 --> 00:48:36.580
i

00:48:36.580 --> 00:48:36.820
just

00:48:36.820 --> 00:48:37.100
threw

00:48:37.100 --> 00:48:37.260
it

00:48:37.260 --> 00:48:37.520
into

00:48:37.520 --> 00:48:37.820
chat

00:48:37.820 --> 00:48:38.260
gpt

00:48:38.260 --> 00:48:39.600
uploaded

00:48:39.600 --> 00:48:39.800
the

00:48:39.800 --> 00:48:40.160
pdf

00:48:40.160 --> 00:48:40.320
and

00:48:40.320 --> 00:48:40.460
i

00:48:40.460 --> 00:48:40.760
created

00:48:40.760 --> 00:48:40.980
a

00:48:40.980 --> 00:48:41.300
custom

00:48:41.300 --> 00:48:41.740
gpt

00:48:41.740 --> 00:48:41.920
so

00:48:41.920 --> 00:48:42.060
now

00:48:42.060 --> 00:48:42.220
i

00:48:42.220 --> 00:48:42.380
can

00:48:42.380 --> 00:48:42.680
ask

00:48:42.680 --> 00:48:42.840
the

00:48:42.840 --> 00:48:43.140
custom

00:48:43.140 --> 00:48:43.580
gpt

00:48:43.580 --> 00:48:44.200
questions

00:48:44.200 --> 00:48:44.680
about

00:48:44.680 --> 00:48:45.440
the

00:48:45.440 --> 00:48:45.780
accounting

00:48:45.780 --> 00:48:46.300
module

00:48:46.300 --> 00:48:46.840
so

00:48:46.840 --> 00:48:47.380
that's

00:48:47.380 --> 00:48:47.800
insane

00:48:47.800 --> 00:48:48.220
instead

00:48:48.220 --> 00:48:48.440
of

00:48:48.440 --> 00:48:48.760
reading

00:48:48.760 --> 00:48:49.100
the

00:48:49.100 --> 00:48:49.820
and

00:48:49.820 --> 00:48:50.300
also

00:48:50.300 --> 00:48:51.040
another

00:48:51.040 --> 00:48:51.820
nice

00:48:51.820 --> 00:48:52.100
use

00:48:52.100 --> 00:48:52.520
case

00:48:52.520 --> 00:48:52.740
that

00:48:52.740 --> 00:48:52.920
i

00:48:52.920 --> 00:48:53.120
have

00:48:53.120 --> 00:48:53.320
it's

00:48:53.320 --> 00:48:53.680
nothing

00:48:53.680 --> 00:48:54.020
about

00:48:54.020 --> 00:48:54.440
coding

00:48:54.440 --> 00:48:54.720
but

00:48:54.720 --> 00:48:55.800
sometimes

00:48:55.800 --> 00:48:56.480
you're

00:48:56.480 --> 00:48:56.720
just

00:48:56.720 --> 00:48:56.900
on

00:48:56.900 --> 00:48:57.200
youtube

00:48:57.200 --> 00:48:57.580
and

00:48:57.580 --> 00:48:57.940
someone

00:48:57.940 --> 00:48:58.400
tells

00:48:58.400 --> 00:48:58.700
you

00:48:58.700 --> 00:48:59.620
this

00:48:59.620 --> 00:49:00.100
is

00:49:00.100 --> 00:49:00.540
the

00:49:00.540 --> 00:49:00.900
five

00:49:00.900 --> 00:49:01.220
big

00:49:01.220 --> 00:49:01.640
important

00:49:01.640 --> 00:49:01.980
things

00:49:01.980 --> 00:49:02.260
you have

00:49:02.260 --> 00:49:02.400
to

00:49:02.400 --> 00:49:02.600
know

00:49:02.600 --> 00:49:02.740
in

00:49:02.740 --> 00:49:03.620
2024

00:49:03.620 --> 00:49:04.060
which

00:49:04.060 --> 00:49:04.240
would

00:49:04.240 --> 00:49:04.560
change

00:49:04.560 --> 00:49:04.740
your

00:49:04.740 --> 00:49:05.020
life

00:49:05.020 --> 00:49:05.420
forever

00:49:05.420 --> 00:49:05.900
so

00:49:05.900 --> 00:49:06.700
i'm

00:49:06.700 --> 00:49:07.120
tempted

00:49:07.120 --> 00:49:07.700
maybe

00:49:07.700 --> 00:49:08.040
i will

00:49:08.040 --> 00:49:08.360
watch

00:49:08.360 --> 00:49:08.580
this

00:49:08.580 --> 00:49:08.940
video

00:49:08.940 --> 00:49:09.320
because

00:49:09.320 --> 00:49:09.520
it

00:49:09.520 --> 00:49:09.700
might

00:49:09.700 --> 00:49:09.840
be

00:49:09.840 --> 00:49:10.320
interesting

00:49:10.320 --> 00:49:11.020
but

00:49:11.020 --> 00:49:11.100
i

00:49:11.100 --> 00:49:11.320
say

00:49:11.320 --> 00:49:11.600
no

00:49:11.600 --> 00:49:11.960
it's

00:49:11.960 --> 00:49:12.440
probably

00:49:12.440 --> 00:49:12.820
not

00:49:12.820 --> 00:49:13.060
that

00:49:13.060 --> 00:49:13.420
interesting

00:49:13.420 --> 00:49:13.580
it's

00:49:13.580 --> 00:49:13.780
probably

00:49:13.780 --> 00:49:14.040
a lot

00:49:14.040 --> 00:49:14.180
of

00:49:14.180 --> 00:49:14.500
fluff

00:49:14.500 --> 00:49:14.920
so

00:49:14.920 --> 00:49:15.140
now

00:49:15.140 --> 00:49:15.620
usually

00:49:15.620 --> 00:49:15.820
what

00:49:15.820 --> 00:49:16.260
i do

00:49:16.260 --> 00:49:16.440
is

00:49:16.440 --> 00:49:16.620
that

00:49:16.620 --> 00:49:16.920
i

00:49:16.920 --> 00:49:17.600
i've

00:49:17.600 --> 00:49:17.880
got

00:49:17.880 --> 00:49:18.400
a

00:49:18.400 --> 00:49:19.000
website

00:49:19.000 --> 00:49:19.560
called

00:49:19.560 --> 00:49:20.020
i don't

00:49:20.020 --> 00:49:20.260
remember

00:49:20.260 --> 00:49:20.780
the name

00:49:20.780 --> 00:49:21.120
sorry

00:49:21.120 --> 00:49:21.320
but

00:49:21.320 --> 00:49:21.820
one

00:49:21.820 --> 00:49:21.920
of

00:49:21.920 --> 00:49:22.040
the

00:49:22.040 --> 00:49:22.460
websites

00:49:22.460 --> 00:49:22.700
where

00:49:22.700 --> 00:49:22.840
you

00:49:22.840 --> 00:49:23.140
can

00:49:23.140 --> 00:49:23.940
get

00:49:23.940 --> 00:49:24.120
the

00:49:24.120 --> 00:49:24.520
transcript

00:49:24.520 --> 00:49:25.100
of

00:49:25.100 --> 00:49:25.640
a

00:49:25.640 --> 00:49:26.480
video

00:49:26.480 --> 00:49:26.820
so

00:49:26.820 --> 00:49:26.960
i

00:49:26.960 --> 00:49:27.160
go

00:49:27.160 --> 00:49:27.420
get

00:49:27.420 --> 00:49:27.600
the

00:49:27.600 --> 00:49:27.940
transcript

00:49:27.940 --> 00:49:28.400
throw

00:49:28.400 --> 00:49:28.560
it

00:49:28.560 --> 00:49:28.780
into

00:49:28.780 --> 00:49:29.040
chat

00:49:29.040 --> 00:49:29.400
gpt

00:49:29.400 --> 00:49:29.720
and

00:49:29.720 --> 00:49:30.080
and

00:49:30.080 --> 00:49:30.200
then

00:49:30.200 --> 00:49:30.360
i

00:49:30.360 --> 00:49:30.720
ask

00:49:30.720 --> 00:49:31.200
what

00:49:31.200 --> 00:49:31.420
are

00:49:31.420 --> 00:49:31.600
the

00:49:31.600 --> 00:49:31.920
five

00:49:31.920 --> 00:49:32.340
important

00:49:32.340 --> 00:49:32.820
things

00:49:32.820 --> 00:49:33.280
i

00:49:33.280 --> 00:49:33.520
should

00:49:33.520 --> 00:49:33.860
know

00:49:33.860 --> 00:49:34.340
that

00:49:34.340 --> 00:49:34.520
would

00:49:34.520 --> 00:49:35.140
change

00:49:35.140 --> 00:49:35.320
my

00:49:35.320 --> 00:49:35.560
life

00:49:35.560 --> 00:49:35.840
forever

00:49:35.840 --> 00:49:36.000
and

00:49:36.000 --> 00:49:36.320
24

00:49:36.320 --> 00:49:36.760
and

00:49:36.760 --> 00:49:36.940
then

00:49:36.940 --> 00:49:37.100
i've

00:49:37.100 --> 00:49:37.240
got

00:49:37.240 --> 00:49:37.420
them

00:49:37.420 --> 00:49:37.540
in

00:49:37.540 --> 00:49:37.760
five

00:49:37.760 --> 00:49:38.020
seconds

00:49:38.020 --> 00:49:38.260
i don't

00:49:38.260 --> 00:49:38.440
want

00:49:38.440 --> 00:49:38.620
to

00:49:38.620 --> 00:49:39.000
i don't

00:49:39.000 --> 00:49:39.300
i don't

00:49:39.300 --> 00:49:39.420
need

00:49:39.420 --> 00:49:39.720
to watch

00:49:39.720 --> 00:49:40.180
a 35

00:49:40.180 --> 00:49:40.500
minutes

00:49:40.500 --> 00:49:40.800
video

00:49:40.800 --> 00:49:41.020
and

00:49:41.020 --> 00:49:41.360
maybe

00:49:41.360 --> 00:49:41.400
maybe

00:49:41.400 --> 00:49:42.300
decide

00:49:42.300 --> 00:49:42.680
to watch

00:49:42.680 --> 00:49:42.800
it

00:49:42.800 --> 00:49:43.000
later

00:49:43.000 --> 00:49:44.880
right

00:49:44.880 --> 00:49:45.340
yeah

00:49:45.340 --> 00:49:45.920
awesome

00:49:45.920 --> 00:49:46.780
what an

00:49:46.780 --> 00:49:47.160
interesting

00:49:47.160 --> 00:49:47.620
story

00:49:47.620 --> 00:49:47.920
fred

00:49:47.920 --> 00:49:48.500
i think

00:49:48.500 --> 00:49:48.680
maybe

00:49:48.680 --> 00:49:48.820
we

00:49:48.820 --> 00:49:48.960
should

00:49:48.960 --> 00:49:49.220
wrap

00:49:49.220 --> 00:49:49.340
it

00:49:49.340 --> 00:49:49.500
up

00:49:49.500 --> 00:49:49.740
but

00:49:49.740 --> 00:49:50.320
people

00:49:50.320 --> 00:49:50.620
can

00:49:50.620 --> 00:49:50.860
check

00:49:50.860 --> 00:49:51.220
out

00:49:51.220 --> 00:49:51.720
ai

00:49:51.720 --> 00:49:52.000
jingle

00:49:52.000 --> 00:49:52.280
maker

00:49:52.280 --> 00:49:54.340
there's

00:49:54.340 --> 00:49:54.480
two

00:49:54.480 --> 00:49:54.680
other

00:49:54.680 --> 00:49:55.100
things

00:49:55.100 --> 00:49:55.540
from

00:49:55.540 --> 00:49:55.720
you

00:49:55.720 --> 00:49:55.880
that

00:49:55.880 --> 00:49:56.000
are

00:49:56.000 --> 00:49:57.160
noteworthy

00:49:57.160 --> 00:49:57.780
one

00:49:57.780 --> 00:49:58.020
is

00:49:58.020 --> 00:49:58.140
you

00:49:58.140 --> 00:49:58.300
have

00:49:58.300 --> 00:49:58.460
your

00:49:58.460 --> 00:49:58.740
ai

00:49:58.740 --> 00:49:59.160
coding

00:49:59.160 --> 00:49:59.600
club

00:49:59.600 --> 00:50:00.220
newsletter

00:50:00.220 --> 00:50:00.400
do you

00:50:00.400 --> 00:50:00.520
want to

00:50:00.520 --> 00:50:00.620
tell

00:50:00.620 --> 00:50:00.780
people

00:50:00.780 --> 00:50:00.960
about

00:50:00.960 --> 00:50:01.140
that

00:50:01.140 --> 00:50:01.380
yeah

00:50:01.380 --> 00:50:01.600
that's

00:50:01.600 --> 00:50:01.680
a

00:50:01.680 --> 00:50:01.980
newsletter

00:50:01.980 --> 00:50:02.300
i

00:50:02.300 --> 00:50:02.740
started

00:50:02.740 --> 00:50:03.120
which

00:50:03.120 --> 00:50:03.420
is

00:50:03.420 --> 00:50:04.280
connected

00:50:04.280 --> 00:50:04.540
to

00:50:04.540 --> 00:50:04.720
some

00:50:04.720 --> 00:50:04.840
of

00:50:04.840 --> 00:50:04.920
the

00:50:04.920 --> 00:50:05.200
videos

00:50:05.200 --> 00:50:05.380
i

00:50:05.380 --> 00:50:05.740
posted

00:50:05.740 --> 00:50:05.960
on

00:50:05.960 --> 00:50:06.300
youtube

00:50:06.300 --> 00:50:07.320
where

00:50:07.320 --> 00:50:07.660
i

00:50:07.660 --> 00:50:08.080
explain

00:50:08.080 --> 00:50:08.520
to

00:50:08.520 --> 00:50:09.120
people

00:50:09.120 --> 00:50:09.440
how

00:50:09.440 --> 00:50:09.600
to

00:50:09.600 --> 00:50:09.800
use

00:50:09.800 --> 00:50:10.040
ai

00:50:10.040 --> 00:50:10.540
for

00:50:10.540 --> 00:50:11.040
coding

00:50:11.040 --> 00:50:11.480
purposes

00:50:11.480 --> 00:50:11.920
i

00:50:11.920 --> 00:50:12.080
will

00:50:12.080 --> 00:50:12.420
start

00:50:12.420 --> 00:50:12.800
sending

00:50:12.800 --> 00:50:13.000
the

00:50:13.000 --> 00:50:13.440
newsletters

00:50:13.440 --> 00:50:13.760
soon

00:50:13.760 --> 00:50:14.020
actually

00:50:14.020 --> 00:50:14.200
i

00:50:14.200 --> 00:50:14.520
started

00:50:14.520 --> 00:50:15.520
registering

00:50:15.520 --> 00:50:15.940
people

00:50:15.940 --> 00:50:16.160
but

00:50:16.160 --> 00:50:16.280
i

00:50:16.280 --> 00:50:16.500
haven't

00:50:16.500 --> 00:50:16.760
sent

00:50:16.760 --> 00:50:16.900
the

00:50:16.900 --> 00:50:17.220
first

00:50:17.220 --> 00:50:17.800
edition

00:50:17.800 --> 00:50:18.260
yet

00:50:18.260 --> 00:50:18.520
but

00:50:18.520 --> 00:50:18.900
we'll

00:50:18.900 --> 00:50:19.140
start

00:50:19.140 --> 00:50:19.380
very

00:50:19.380 --> 00:50:19.700
soon

00:50:19.700 --> 00:50:20.600
i've

00:50:20.600 --> 00:50:20.720
got

00:50:20.720 --> 00:50:21.000
also

00:50:21.000 --> 00:50:21.180
a

00:50:21.180 --> 00:50:21.440
new

00:50:21.440 --> 00:50:22.000
app

00:50:22.000 --> 00:50:22.660
coming

00:50:22.660 --> 00:50:23.020
up

00:50:23.020 --> 00:50:24.000
probably

00:50:24.000 --> 00:50:24.300
within

00:50:24.300 --> 00:50:24.560
two

00:50:24.560 --> 00:50:24.820
weeks

00:50:24.820 --> 00:50:24.940
it

00:50:24.940 --> 00:50:25.080
will

00:50:25.080 --> 00:50:25.340
be

00:50:25.340 --> 00:50:25.540
called

00:50:25.540 --> 00:50:25.700
the

00:50:25.700 --> 00:50:26.040
ai

00:50:26.040 --> 00:50:26.480
show

00:50:26.480 --> 00:50:26.860
maker

00:50:26.860 --> 00:50:27.420
it's

00:50:27.420 --> 00:50:27.540
a

00:50:27.540 --> 00:50:27.680
way

00:50:27.680 --> 00:50:27.840
to

00:50:27.840 --> 00:50:28.100
create

00:50:28.100 --> 00:50:28.240
a

00:50:28.240 --> 00:50:28.580
podcast

00:50:28.580 --> 00:50:29.160
or

00:50:29.160 --> 00:50:29.660
a

00:50:29.660 --> 00:50:29.920
radio

00:50:29.920 --> 00:50:30.300
show

00:50:30.300 --> 00:50:30.540
with

00:50:30.540 --> 00:50:30.820
building

00:50:30.820 --> 00:50:31.180
blogs

00:50:31.180 --> 00:50:31.580
so

00:50:31.580 --> 00:50:31.720
it's

00:50:31.720 --> 00:50:31.800
the

00:50:31.800 --> 00:50:31.980
same

00:50:31.980 --> 00:50:32.400
concept

00:50:32.400 --> 00:50:32.700
as

00:50:32.700 --> 00:50:33.020
the

00:50:33.020 --> 00:50:33.500
jingle

00:50:33.500 --> 00:50:33.860
maker

00:50:33.860 --> 00:50:34.340
but

00:50:34.340 --> 00:50:34.780
for

00:50:34.780 --> 00:50:35.420
longer

00:50:35.420 --> 00:50:35.800
form

00:50:35.800 --> 00:50:36.000
that

00:50:36.000 --> 00:50:36.220
sounds

00:50:36.220 --> 00:50:36.400
really

00:50:36.400 --> 00:50:36.740
interesting

00:50:36.740 --> 00:50:37.000
yeah

00:50:37.000 --> 00:50:37.280
all right

00:50:37.280 --> 00:50:37.420
cool

00:50:37.420 --> 00:50:37.640
people

00:50:37.640 --> 00:50:37.800
can

00:50:37.800 --> 00:50:37.940
check

00:50:37.940 --> 00:50:38.040
it

00:50:38.040 --> 00:50:38.160
out

00:50:38.160 --> 00:50:38.400
here

00:50:38.400 --> 00:50:38.820
and

00:50:38.820 --> 00:50:38.980
by

00:50:38.980 --> 00:50:39.280
the way

00:50:39.280 --> 00:50:39.620
i've

00:50:39.620 --> 00:50:39.760
been

00:50:39.760 --> 00:50:40.120
thinking

00:50:40.120 --> 00:50:40.780
a lot

00:50:40.780 --> 00:50:41.220
about

00:50:41.220 --> 00:50:41.740
email

00:50:41.740 --> 00:50:42.240
and

00:50:42.240 --> 00:50:42.900
newsletters

00:50:42.900 --> 00:50:43.260
and stuff

00:50:43.260 --> 00:50:43.940
i was

00:50:43.940 --> 00:50:44.580
doing a

00:50:44.580 --> 00:50:44.800
bunch

00:50:44.800 --> 00:50:45.100
with

00:50:45.100 --> 00:50:45.800
mailchimp

00:50:45.800 --> 00:50:45.980
for

00:50:45.980 --> 00:50:46.240
many

00:50:46.240 --> 00:50:46.420
many

00:50:46.420 --> 00:50:46.780
years

00:50:46.780 --> 00:50:46.960
and

00:50:46.960 --> 00:50:47.120
it's

00:50:47.120 --> 00:50:47.260
just

00:50:47.260 --> 00:50:47.460
got

00:50:47.460 --> 00:50:48.020
to be

00:50:48.020 --> 00:50:49.020
super

00:50:49.020 --> 00:50:49.440
super

00:50:49.440 --> 00:50:49.880
expensive

00:50:49.880 --> 00:50:50.180
and

00:50:50.180 --> 00:50:50.520
i got

00:50:50.520 --> 00:50:50.960
frustrated

00:50:50.960 --> 00:50:51.140
with

00:50:51.140 --> 00:50:51.280
them

00:50:51.280 --> 00:50:51.560
so

00:50:51.560 --> 00:50:52.120
did

00:50:52.120 --> 00:50:52.240
a

00:50:52.240 --> 00:50:52.400
bunch

00:50:52.400 --> 00:50:52.520
of

00:50:52.520 --> 00:50:52.940
research

00:50:52.940 --> 00:50:53.460
on

00:50:53.460 --> 00:50:53.740
different

00:50:53.740 --> 00:50:54.320
platforms

00:50:54.320 --> 00:50:55.260
looked

00:50:55.260 --> 00:50:55.500
at

00:50:55.500 --> 00:50:55.880
button

00:50:55.880 --> 00:50:56.120
down

00:50:56.120 --> 00:50:56.320
dot

00:50:56.320 --> 00:50:56.640
email

00:50:56.640 --> 00:50:56.960
and

00:50:56.960 --> 00:50:57.980
actually

00:50:57.980 --> 00:50:58.460
chose

00:50:58.460 --> 00:50:59.000
list

00:50:59.000 --> 00:50:59.300
monk

00:50:59.300 --> 00:50:59.540
which

00:50:59.540 --> 00:50:59.700
is

00:50:59.700 --> 00:50:59.880
self

00:50:59.880 --> 00:51:00.220
hosted

00:51:00.220 --> 00:51:00.660
and

00:51:00.660 --> 00:51:01.100
docker

00:51:01.100 --> 00:51:01.400
style

00:51:01.400 --> 00:51:01.700
thing

00:51:01.700 --> 00:51:02.280
but

00:51:02.280 --> 00:51:02.840
one

00:51:02.840 --> 00:51:02.920
of

00:51:02.920 --> 00:51:03.000
the

00:51:03.000 --> 00:51:03.180
ones

00:51:03.180 --> 00:51:03.320
that

00:51:03.320 --> 00:51:03.440
i

00:51:03.440 --> 00:51:03.680
came

00:51:03.680 --> 00:51:03.940
across

00:51:03.940 --> 00:51:04.100
at

00:51:04.100 --> 00:51:04.220
the

00:51:04.220 --> 00:51:04.460
end

00:51:04.460 --> 00:51:04.640
is

00:51:04.640 --> 00:51:05.420
beehive

00:51:05.420 --> 00:51:05.860
which

00:51:05.860 --> 00:51:06.060
looks

00:51:06.060 --> 00:51:06.240
pretty

00:51:06.240 --> 00:51:06.600
interesting

00:51:06.600 --> 00:51:06.860
are

00:51:06.860 --> 00:51:06.960
you

00:51:06.960 --> 00:51:07.140
happy

00:51:07.140 --> 00:51:07.260
with

00:51:07.260 --> 00:51:07.580
beehive

00:51:07.580 --> 00:51:07.900
it's

00:51:07.900 --> 00:51:08.060
more

00:51:08.060 --> 00:51:08.340
competing

00:51:08.340 --> 00:51:08.560
with

00:51:08.560 --> 00:51:08.820
sub

00:51:08.820 --> 00:51:09.220
stack

00:51:09.220 --> 00:51:09.680
i think

00:51:09.680 --> 00:51:10.000
it was

00:51:10.000 --> 00:51:10.580
co-created

00:51:10.580 --> 00:51:11.100
by one

00:51:11.100 --> 00:51:11.360
of the

00:51:11.360 --> 00:51:11.760
guys

00:51:11.760 --> 00:51:12.120
who

00:51:12.120 --> 00:51:13.100
co-founded

00:51:13.100 --> 00:51:13.740
morning

00:51:13.740 --> 00:51:14.060
brew

00:51:14.060 --> 00:51:14.840
the newsletter

00:51:14.840 --> 00:51:15.240
morning

00:51:15.240 --> 00:51:15.520
brew

00:51:15.520 --> 00:51:16.060
so

00:51:16.060 --> 00:51:16.760
he knows

00:51:16.760 --> 00:51:16.900
what

00:51:16.900 --> 00:51:17.060
he's

00:51:17.060 --> 00:51:17.340
talking

00:51:17.340 --> 00:51:17.760
about

00:51:17.760 --> 00:51:18.240
and

00:51:18.240 --> 00:51:18.820
it's

00:51:18.820 --> 00:51:19.120
really

00:51:19.120 --> 00:51:19.580
also

00:51:19.580 --> 00:51:20.020
really

00:51:20.020 --> 00:51:20.280
well

00:51:20.280 --> 00:51:20.560
executed

00:51:20.560 --> 00:51:22.720
it's

00:51:22.720 --> 00:51:22.920
a

00:51:22.920 --> 00:51:23.360
pleasure

00:51:23.360 --> 00:51:23.580
to

00:51:23.580 --> 00:51:23.920
use

00:51:23.920 --> 00:51:24.740
and

00:51:24.740 --> 00:51:25.340
you

00:51:25.340 --> 00:51:25.560
can

00:51:25.560 --> 00:51:25.820
use

00:51:25.820 --> 00:51:25.940
it

00:51:25.940 --> 00:51:26.120
for

00:51:26.120 --> 00:51:26.460
free

00:51:26.460 --> 00:51:26.800
for

00:51:26.800 --> 00:51:27.020
up

00:51:27.020 --> 00:51:27.240
to

00:51:27.240 --> 00:51:28.320
2500

00:51:28.320 --> 00:51:29.620
subscribers

00:51:29.620 --> 00:51:30.520
yeah

00:51:30.520 --> 00:51:30.800
that's

00:51:30.800 --> 00:51:32.700
the pricing

00:51:32.700 --> 00:51:33.460
is way

00:51:33.460 --> 00:51:34.240
way

00:51:34.240 --> 00:51:34.520
better

00:51:34.520 --> 00:51:34.760
than

00:51:34.760 --> 00:51:35.020
things

00:51:35.020 --> 00:51:35.380
like

00:51:35.380 --> 00:51:36.520
mailchimp

00:51:36.520 --> 00:51:36.880
and stuff

00:51:36.880 --> 00:51:37.160
so

00:51:37.160 --> 00:51:37.720
it's

00:51:37.720 --> 00:51:37.980
nice

00:51:37.980 --> 00:51:38.240
also

00:51:38.240 --> 00:51:38.760
cheaper

00:51:38.760 --> 00:51:39.760
than

00:51:39.760 --> 00:51:41.160
than

00:51:41.160 --> 00:51:41.800
sub stack

00:51:41.800 --> 00:51:42.220
so they

00:51:42.220 --> 00:51:42.440
don't

00:51:42.440 --> 00:51:42.960
i don't

00:51:42.960 --> 00:51:43.160
know

00:51:43.160 --> 00:51:43.500
which

00:51:43.500 --> 00:51:44.100
cut

00:51:44.100 --> 00:51:44.360
they

00:51:44.360 --> 00:51:44.840
take

00:51:44.840 --> 00:51:45.280
from

00:51:45.280 --> 00:51:45.480
the

00:51:45.480 --> 00:51:45.940
subscription

00:51:45.940 --> 00:51:47.000
if you

00:51:47.000 --> 00:51:47.380
run a

00:51:47.380 --> 00:51:47.620
premium

00:51:47.620 --> 00:51:48.000
newsletter

00:51:48.000 --> 00:51:48.380
but it's

00:51:48.380 --> 00:51:48.560
much

00:51:48.560 --> 00:51:48.840
cheaper

00:51:48.840 --> 00:51:49.080
than

00:51:49.080 --> 00:51:49.440
a

00:51:49.440 --> 00:51:49.640
sub

00:51:49.640 --> 00:51:49.780
stack

00:51:49.780 --> 00:51:50.040
i think

00:51:50.040 --> 00:51:50.380
sub

00:51:50.380 --> 00:51:50.580
stack

00:51:50.580 --> 00:51:51.220
takes

00:51:51.220 --> 00:51:51.940
10%

00:51:51.940 --> 00:51:52.900
from

00:51:52.900 --> 00:51:53.680
like

00:51:53.680 --> 00:51:53.860
like

00:51:53.860 --> 00:51:54.240
patreon

00:51:54.240 --> 00:51:54.460
and

00:51:54.460 --> 00:51:54.620
other

00:51:54.620 --> 00:51:55.020
platforms

00:51:55.020 --> 00:51:55.220
like

00:51:55.220 --> 00:51:55.440
that

00:51:55.440 --> 00:51:55.720
nice

00:51:55.720 --> 00:51:56.100
all

00:51:56.100 --> 00:51:56.200
right

00:51:56.200 --> 00:51:56.380
and

00:51:56.380 --> 00:51:56.700
then

00:51:56.700 --> 00:51:57.220
one

00:51:57.220 --> 00:51:57.480
other

00:51:57.480 --> 00:51:57.760
thing

00:51:57.760 --> 00:51:58.160
is

00:51:58.160 --> 00:51:58.980
your

00:51:58.980 --> 00:52:00.000
call me

00:52:00.000 --> 00:52:00.300
Fred

00:52:00.300 --> 00:52:00.760
youtube

00:52:00.760 --> 00:52:01.120
channel

00:52:01.120 --> 00:52:01.380
yeah

00:52:01.380 --> 00:52:01.640
i've

00:52:01.640 --> 00:52:01.780
got

00:52:01.780 --> 00:52:02.080
some

00:52:02.080 --> 00:52:02.680
videos

00:52:02.680 --> 00:52:03.100
there

00:52:03.100 --> 00:52:04.040
some

00:52:04.040 --> 00:52:04.180
of

00:52:04.180 --> 00:52:04.260
the

00:52:04.260 --> 00:52:04.500
videos

00:52:04.500 --> 00:52:04.640
are

00:52:04.640 --> 00:52:05.020
explaining

00:52:05.020 --> 00:52:05.340
how to

00:52:05.340 --> 00:52:05.620
use

00:52:05.620 --> 00:52:05.940
the

00:52:05.940 --> 00:52:06.240
jingle

00:52:06.240 --> 00:52:06.640
maker

00:52:06.640 --> 00:52:06.920
the

00:52:06.920 --> 00:52:07.200
recent

00:52:07.200 --> 00:52:07.520
ones

00:52:07.520 --> 00:52:08.120
but also

00:52:08.120 --> 00:52:08.520
some

00:52:08.520 --> 00:52:08.680
of

00:52:08.680 --> 00:52:08.920
them

00:52:08.920 --> 00:52:09.840
are

00:52:09.840 --> 00:52:10.180
about

00:52:10.180 --> 00:52:10.520
this

00:52:10.520 --> 00:52:11.160
journey

00:52:11.160 --> 00:52:11.440
of

00:52:11.440 --> 00:52:12.260
how

00:52:12.260 --> 00:52:12.440
to

00:52:12.440 --> 00:52:12.800
code

00:52:12.800 --> 00:52:13.860
with

00:52:13.860 --> 00:52:14.200
AI

00:52:14.200 --> 00:52:14.680
there

00:52:14.680 --> 00:52:14.840
are

00:52:14.840 --> 00:52:15.060
some

00:52:15.060 --> 00:52:15.540
concrete

00:52:15.540 --> 00:52:16.120
examples

00:52:16.120 --> 00:52:16.460
also

00:52:16.460 --> 00:52:16.800
like

00:52:16.800 --> 00:52:17.740
i coded

00:52:17.740 --> 00:52:19.220
recently

00:52:19.220 --> 00:52:20.040
a

00:52:20.040 --> 00:52:20.260
Chrome

00:52:20.260 --> 00:52:20.840
extension

00:52:20.840 --> 00:52:21.300
a

00:52:21.300 --> 00:52:21.780
bookmarking

00:52:21.780 --> 00:52:21.980
Chrome

00:52:21.980 --> 00:52:22.420
extension

00:52:22.420 --> 00:52:22.860
all

00:52:22.860 --> 00:52:23.040
the

00:52:23.040 --> 00:52:23.400
code

00:52:23.400 --> 00:52:23.740
the

00:52:23.740 --> 00:52:24.160
explanations

00:52:24.160 --> 00:52:24.460
is

00:52:24.460 --> 00:52:24.820
on

00:52:24.820 --> 00:52:25.420
on

00:52:25.420 --> 00:52:25.680
YouTube

00:52:25.680 --> 00:52:26.220
and

00:52:26.220 --> 00:52:26.920
the

00:52:26.920 --> 00:52:27.160
code

00:52:27.160 --> 00:52:27.320
on

00:52:27.320 --> 00:52:27.580
GitHub

00:52:27.580 --> 00:52:28.360
so

00:52:28.360 --> 00:52:28.760
i've

00:52:28.760 --> 00:52:28.880
got

00:52:28.880 --> 00:52:29.160
different

00:52:29.160 --> 00:52:29.600
projects

00:52:29.600 --> 00:52:29.880
like

00:52:29.880 --> 00:52:30.180
that

00:52:30.180 --> 00:52:30.420
and

00:52:30.420 --> 00:52:31.320
i'm

00:52:31.320 --> 00:52:31.620
usually

00:52:31.620 --> 00:52:32.380
documenting

00:52:32.380 --> 00:52:32.760
what i

00:52:32.760 --> 00:52:32.940
do

00:52:32.940 --> 00:52:33.140
on

00:52:33.140 --> 00:52:33.620
YouTube

00:52:33.620 --> 00:52:33.900
yeah

00:52:33.900 --> 00:52:34.160
nice

00:52:34.160 --> 00:52:34.280
so

00:52:34.280 --> 00:52:34.440
people

00:52:34.440 --> 00:52:34.620
can

00:52:34.620 --> 00:52:34.820
check

00:52:34.820 --> 00:52:35.000
that

00:52:35.000 --> 00:52:35.240
out

00:52:35.240 --> 00:52:35.740
all

00:52:35.740 --> 00:52:35.960
right

00:52:35.960 --> 00:52:36.640
well

00:52:36.640 --> 00:52:36.940
i

00:52:36.940 --> 00:52:37.260
think

00:52:37.260 --> 00:52:37.560
that

00:52:37.560 --> 00:52:38.280
about

00:52:38.280 --> 00:52:38.520
does

00:52:38.520 --> 00:52:38.640
it

00:52:38.640 --> 00:52:38.920
for

00:52:38.920 --> 00:52:39.680
the

00:52:39.680 --> 00:52:39.880
time

00:52:39.880 --> 00:52:40.000
that

00:52:40.000 --> 00:52:40.080
we

00:52:40.080 --> 00:52:40.260
got

00:52:40.260 --> 00:52:40.560
together

00:52:40.560 --> 00:52:40.880
but

00:52:40.880 --> 00:52:41.240
thanks

00:52:41.240 --> 00:52:41.340
for

00:52:41.340 --> 00:52:41.460
coming

00:52:41.460 --> 00:52:41.620
on

00:52:41.620 --> 00:52:41.760
and

00:52:41.760 --> 00:52:41.940
sharing

00:52:41.940 --> 00:52:42.120
your

00:52:42.120 --> 00:52:42.340
story

00:52:42.340 --> 00:52:42.580
i think

00:52:42.580 --> 00:52:42.760
it'll

00:52:42.760 --> 00:52:43.120
inspire

00:52:43.120 --> 00:52:43.400
a lot

00:52:43.400 --> 00:52:43.500
of

00:52:43.500 --> 00:52:43.720
folks

00:52:43.720 --> 00:52:44.040
thank

00:52:44.040 --> 00:52:44.220
you

00:52:44.220 --> 00:52:44.520
i hope

00:52:44.520 --> 00:52:44.680
that

00:52:44.680 --> 00:52:45.000
everything

00:52:45.000 --> 00:52:45.380
was

00:52:45.380 --> 00:52:45.940
clear

00:52:45.940 --> 00:52:46.680
i wasn't

00:52:46.680 --> 00:52:47.160
cursed

00:52:47.160 --> 00:52:48.980
to be

00:52:48.980 --> 00:52:49.880
too cryptic

00:52:49.880 --> 00:52:50.320
like the

00:52:50.320 --> 00:52:50.760
developers

00:52:50.760 --> 00:52:51.060
i was

00:52:51.060 --> 00:52:51.340
talking

00:52:51.340 --> 00:52:51.680
about

00:52:51.680 --> 00:52:52.000
but

00:52:52.000 --> 00:52:53.380
yeah

00:52:53.380 --> 00:52:53.660
so

00:52:53.660 --> 00:52:53.940
it's

00:52:53.940 --> 00:52:54.640
really

00:52:54.640 --> 00:52:55.840
exciting

00:52:55.840 --> 00:52:56.520
it's

00:52:56.520 --> 00:52:58.180
rejuvenating

00:52:58.180 --> 00:52:58.760
as you

00:52:58.760 --> 00:52:59.200
could say

00:52:59.200 --> 00:52:59.600
it's

00:52:59.600 --> 00:52:59.960
opening up

00:52:59.960 --> 00:53:00.280
a whole

00:53:00.280 --> 00:53:00.700
world

00:53:00.700 --> 00:53:00.860
of

00:53:00.860 --> 00:53:01.400
possibilities

00:53:01.400 --> 00:53:01.700
right

00:53:01.700 --> 00:53:02.420
i wish

00:53:02.420 --> 00:53:02.920
i would

00:53:02.920 --> 00:53:03.040
have

00:53:03.040 --> 00:53:03.340
started

00:53:03.340 --> 00:53:03.940
earlier

00:53:03.940 --> 00:53:04.440
to be

00:53:04.440 --> 00:53:04.820
honest

00:53:04.820 --> 00:53:05.260
because

00:53:05.260 --> 00:53:05.840
when i

00:53:05.840 --> 00:53:06.260
see my

00:53:06.260 --> 00:53:06.520
son

00:53:06.520 --> 00:53:06.740
he's

00:53:06.740 --> 00:53:07.160
18

00:53:07.160 --> 00:53:07.480
and

00:53:07.480 --> 00:53:07.920
what

00:53:07.920 --> 00:53:08.140
he

00:53:08.140 --> 00:53:08.600
you

00:53:08.600 --> 00:53:08.780
know

00:53:08.780 --> 00:53:09.220
what

00:53:09.220 --> 00:53:09.340
he

00:53:09.340 --> 00:53:09.620
already

00:53:09.620 --> 00:53:10.040
does

00:53:10.040 --> 00:53:10.480
today

00:53:10.480 --> 00:53:11.640
with

00:53:11.640 --> 00:53:12.100
python

00:53:12.100 --> 00:53:13.420
that's

00:53:13.420 --> 00:53:13.640
quite

00:53:13.640 --> 00:53:14.080
amazing

00:53:14.080 --> 00:53:14.420
so

00:53:14.420 --> 00:53:14.640
when

00:53:14.640 --> 00:53:14.800
you're

00:53:14.800 --> 00:53:15.220
18

00:53:15.220 --> 00:53:15.760
imagine

00:53:15.760 --> 00:53:16.160
where

00:53:16.160 --> 00:53:16.320
you

00:53:16.320 --> 00:53:16.480
will

00:53:16.480 --> 00:53:16.700
be

00:53:16.700 --> 00:53:16.900
when

00:53:16.900 --> 00:53:16.980
you

00:53:16.980 --> 00:53:17.120
will

00:53:17.120 --> 00:53:17.380
be

00:53:17.380 --> 00:53:18.360
48

00:53:18.360 --> 00:53:18.700
or

00:53:18.700 --> 00:53:19.220
49

00:53:19.220 --> 00:53:19.660
it

00:53:19.660 --> 00:53:19.760
would

00:53:19.760 --> 00:53:19.920
be

00:53:19.920 --> 00:53:20.220
like

00:53:20.220 --> 00:53:20.860
really

00:53:20.860 --> 00:53:21.280
good

00:53:21.280 --> 00:53:22.240
so

00:53:22.240 --> 00:53:23.040
yeah

00:53:23.040 --> 00:53:23.460
that's

00:53:23.460 --> 00:53:23.600
the

00:53:23.600 --> 00:53:23.900
beauty

00:53:23.900 --> 00:53:24.360
that's

00:53:24.360 --> 00:53:24.460
the

00:53:24.460 --> 00:53:24.680
beauty

00:53:24.680 --> 00:53:24.840
of

00:53:24.840 --> 00:53:24.940
it

00:53:24.940 --> 00:53:25.160
so

00:53:25.160 --> 00:53:25.560
don't

00:53:25.560 --> 00:53:25.820
wait

00:53:25.820 --> 00:53:26.060
too

00:53:26.060 --> 00:53:26.380
long

00:53:26.380 --> 00:53:26.580
if

00:53:26.580 --> 00:53:26.760
you're

00:53:26.760 --> 00:53:27.060
young

00:53:27.060 --> 00:53:27.200
if

00:53:27.200 --> 00:53:27.320
you're

00:53:27.320 --> 00:53:27.580
listening

00:53:27.580 --> 00:53:27.740
to

00:53:27.740 --> 00:53:27.900
the

00:53:27.900 --> 00:53:28.340
podcast

00:53:28.340 --> 00:53:28.740
start

00:53:28.740 --> 00:53:29.200
today

00:53:29.200 --> 00:53:29.480
or

00:53:29.480 --> 00:53:30.020
yesterday

00:53:30.020 --> 00:53:30.360
even

00:53:30.360 --> 00:53:30.600
yeah

00:53:30.600 --> 00:53:30.800
it's

00:53:30.800 --> 00:53:31.060
amazing

00:53:31.060 --> 00:53:31.480
awesome

00:53:31.480 --> 00:53:31.780
well

00:53:31.780 --> 00:53:32.340
totally

00:53:32.340 --> 00:53:32.620
agree

00:53:32.620 --> 00:53:33.360
thanks so

00:53:33.360 --> 00:53:33.560
much

00:53:33.560 --> 00:53:33.960
for being

00:53:33.960 --> 00:53:34.240
here

00:53:34.240 --> 00:53:35.060
and

00:53:35.060 --> 00:53:35.660
see you

00:53:35.660 --> 00:53:35.780
later

00:53:35.780 --> 00:53:36.140
thank you

00:53:36.140 --> 00:53:36.620
so much

00:53:36.620 --> 00:53:37.000
bye

00:53:37.000 --> 00:53:37.200
bye

00:53:37.200 --> 00:53:37.480
bye

00:53:37.480 --> 00:53:38.740
this has

00:53:38.740 --> 00:53:39.100
been another

00:53:39.100 --> 00:53:39.780
episode of

00:53:39.780 --> 00:53:40.460
talk python

00:53:40.460 --> 00:53:40.840
to me

00:53:40.840 --> 00:53:41.860
thank you

00:53:41.860 --> 00:53:42.180
to our

00:53:42.180 --> 00:53:42.660
sponsors

00:53:42.660 --> 00:53:43.320
be sure

00:53:43.320 --> 00:53:43.620
to check

00:53:43.620 --> 00:53:43.820
out what

00:53:43.820 --> 00:53:43.940
they're

00:53:43.940 --> 00:53:44.260
offering

00:53:44.260 --> 00:53:44.480
it

00:53:44.480 --> 00:53:44.760
really

00:53:44.760 --> 00:53:45.020
helps

00:53:45.020 --> 00:53:45.320
support

00:53:45.320 --> 00:53:45.480
the

00:53:45.480 --> 00:53:45.720
show

00:53:45.720 --> 00:53:47.980
mail

00:53:47.980 --> 00:53:48.320
Mailtrap

00:53:48.320 --> 00:53:48.720
an

00:53:48.720 --> 00:53:49.100
email

00:53:49.100 --> 00:53:49.520
delivery

00:53:49.520 --> 00:53:50.120
platform

00:53:50.120 --> 00:53:50.500
that

00:53:50.500 --> 00:53:50.920
developers

00:53:50.920 --> 00:53:51.260
love

00:53:51.260 --> 00:53:51.860
try

00:53:51.860 --> 00:53:52.040
for

00:53:52.040 --> 00:53:52.360
free

00:53:52.360 --> 00:53:52.800
at

00:53:52.800 --> 00:53:53.320
mail

00:53:53.320 --> 00:53:53.700
trap

00:53:53.700 --> 00:53:54.140
dot

00:53:54.140 --> 00:53:54.380
i

00:53:54.380 --> 00:53:56.380
want to

00:53:56.380 --> 00:53:56.720
level up

00:53:56.720 --> 00:53:56.840
your

00:53:56.840 --> 00:53:57.180
python

00:53:57.180 --> 00:53:57.780
we have

00:53:57.780 --> 00:53:58.040
one of

00:53:58.040 --> 00:53:58.180
the

00:53:58.180 --> 00:53:58.540
largest

00:53:58.540 --> 00:53:59.260
catalogs

00:53:59.260 --> 00:53:59.400
of

00:53:59.400 --> 00:53:59.720
python

00:53:59.720 --> 00:54:00.000
video

00:54:00.000 --> 00:54:00.300
courses

00:54:00.300 --> 00:54:00.580
over

00:54:00.580 --> 00:54:00.740
at

00:54:00.740 --> 00:54:00.900
talk

00:54:00.900 --> 00:54:01.180
python

00:54:01.180 --> 00:54:01.760
our

00:54:01.760 --> 00:54:02.100
content

00:54:02.100 --> 00:54:02.480
ranges

00:54:02.480 --> 00:54:02.880
from

00:54:02.880 --> 00:54:03.180
true

00:54:03.180 --> 00:54:03.460
beginners

00:54:03.460 --> 00:54:03.880
to

00:54:03.880 --> 00:54:04.200
deeply

00:54:04.200 --> 00:54:04.600
advanced

00:54:04.600 --> 00:54:04.960
topics

00:54:04.960 --> 00:54:05.200
like

00:54:05.200 --> 00:54:05.600
memory

00:54:05.600 --> 00:54:05.880
and

00:54:05.880 --> 00:54:06.320
async

00:54:06.320 --> 00:54:06.840
and

00:54:06.840 --> 00:54:07.020
best

00:54:07.020 --> 00:54:07.140
of

00:54:07.140 --> 00:54:07.340
all

00:54:07.340 --> 00:54:07.740
there's

00:54:07.740 --> 00:54:07.900
not

00:54:07.900 --> 00:54:08.040
a

00:54:08.040 --> 00:54:08.480
subscription

00:54:08.480 --> 00:54:08.760
in

00:54:08.760 --> 00:54:09.000
sight

00:54:09.000 --> 00:54:09.520
check

00:54:09.520 --> 00:54:09.620
it

00:54:09.620 --> 00:54:09.720
out

00:54:09.720 --> 00:54:09.820
for

00:54:09.820 --> 00:54:10.120
yourself

00:54:10.120 --> 00:54:10.340
at

00:54:10.340 --> 00:54:10.680
training

00:54:10.680 --> 00:54:11.080
talk

00:54:11.080 --> 00:54:11.400
python

00:54:11.400 --> 00:54:11.600
dot

00:54:11.600 --> 00:54:11.900
fm

00:54:11.900 --> 00:54:12.680
be

00:54:12.680 --> 00:54:12.820
sure

00:54:12.820 --> 00:54:13.000
to

00:54:13.000 --> 00:54:13.340
subscribe

00:54:13.340 --> 00:54:13.620
to

00:54:13.620 --> 00:54:13.740
the

00:54:13.740 --> 00:54:13.980
show

00:54:13.980 --> 00:54:14.360
open

00:54:14.360 --> 00:54:14.560
your

00:54:14.560 --> 00:54:14.800
favorite

00:54:14.800 --> 00:54:15.380
podcast

00:54:15.380 --> 00:54:15.700
app

00:54:15.700 --> 00:54:16.040
and

00:54:16.040 --> 00:54:16.280
search

00:54:16.280 --> 00:54:16.440
for

00:54:16.440 --> 00:54:16.820
python

00:54:16.820 --> 00:54:17.260
we

00:54:17.260 --> 00:54:17.420
should

00:54:17.420 --> 00:54:17.520
be

00:54:17.520 --> 00:54:17.680
right

00:54:17.680 --> 00:54:17.780
at

00:54:17.780 --> 00:54:17.840
the

00:54:17.840 --> 00:54:18.080
top

00:54:18.080 --> 00:54:18.620
you

00:54:18.620 --> 00:54:18.760
can

00:54:18.760 --> 00:54:19.020
also

00:54:19.020 --> 00:54:19.340
find

00:54:19.340 --> 00:54:19.500
the

00:54:19.500 --> 00:54:19.900
itunes

00:54:19.900 --> 00:54:20.140
feed

00:54:20.140 --> 00:54:20.300
at

00:54:20.300 --> 00:54:20.600
slash

00:54:20.600 --> 00:54:21.100
itunes

00:54:21.100 --> 00:54:21.760
the google

00:54:21.760 --> 00:54:22.060
play

00:54:22.060 --> 00:54:22.300
feed

00:54:22.300 --> 00:54:22.480
at

00:54:22.480 --> 00:54:22.780
slash

00:54:22.780 --> 00:54:23.220
play

00:54:23.220 --> 00:54:23.720
and

00:54:23.720 --> 00:54:23.860
the

00:54:23.860 --> 00:54:24.140
direct

00:54:24.140 --> 00:54:24.560
rss

00:54:24.560 --> 00:54:24.860
feed

00:54:24.860 --> 00:54:25.060
at

00:54:25.060 --> 00:54:25.440
slash

00:54:25.440 --> 00:54:25.980
rss

00:54:25.980 --> 00:54:26.420
on

00:54:26.420 --> 00:54:26.660
talk

00:54:26.660 --> 00:54:26.940
python

00:54:26.940 --> 00:54:27.160
dot

00:54:27.160 --> 00:54:27.420
fm

00:54:27.420 --> 00:54:28.260
we're

00:54:28.260 --> 00:54:28.560
live

00:54:28.560 --> 00:54:28.860
streaming

00:54:28.860 --> 00:54:29.200
most

00:54:29.200 --> 00:54:29.340
of

00:54:29.340 --> 00:54:29.460
our

00:54:29.460 --> 00:54:29.840
recordings

00:54:29.840 --> 00:54:30.100
these

00:54:30.100 --> 00:54:30.380
days

00:54:30.380 --> 00:54:30.780
if

00:54:30.780 --> 00:54:30.840
you

00:54:30.840 --> 00:54:30.940
want

00:54:30.940 --> 00:54:31.000
to

00:54:31.000 --> 00:54:31.100
be

00:54:31.100 --> 00:54:31.300
part

00:54:31.300 --> 00:54:31.400
of

00:54:31.400 --> 00:54:31.520
the

00:54:31.520 --> 00:54:31.740
show

00:54:31.740 --> 00:54:31.900
and

00:54:31.900 --> 00:54:32.080
have

00:54:32.080 --> 00:54:32.260
your

00:54:32.260 --> 00:54:32.620
comments

00:54:32.620 --> 00:54:33.000
featured

00:54:33.000 --> 00:54:33.400
on

00:54:33.400 --> 00:54:33.540
the

00:54:33.540 --> 00:54:33.780
air

00:54:33.780 --> 00:54:34.220
be

00:54:34.220 --> 00:54:34.340
sure

00:54:34.340 --> 00:54:34.500
to

00:54:34.500 --> 00:54:34.860
subscribe

00:54:34.860 --> 00:54:35.140
to

00:54:35.140 --> 00:54:35.280
our

00:54:35.280 --> 00:54:35.540
youtube

00:54:35.540 --> 00:54:35.880
channel

00:54:35.880 --> 00:54:36.140
at

00:54:36.140 --> 00:54:36.400
talk

00:54:36.400 --> 00:54:36.720
python

00:54:36.720 --> 00:54:36.900
dot

00:54:36.900 --> 00:54:37.240
fm

00:54:37.240 --> 00:54:37.760
slash

00:54:37.760 --> 00:54:38.240
youtube

00:54:38.240 --> 00:54:39.300
this

00:54:39.300 --> 00:54:39.420
is

00:54:39.420 --> 00:54:39.540
your

00:54:39.540 --> 00:54:39.740
host

00:54:39.740 --> 00:54:40.020
michael

00:54:40.020 --> 00:54:40.320
kennedy

00:54:40.320 --> 00:54:40.800
thanks

00:54:40.800 --> 00:54:40.980
so

00:54:40.980 --> 00:54:41.160
much

00:54:41.160 --> 00:54:41.300
for

00:54:41.300 --> 00:54:41.560
listening

00:54:41.560 --> 00:54:41.840
i

00:54:41.840 --> 00:54:42.140
really

00:54:42.140 --> 00:54:42.500
appreciate

00:54:42.500 --> 00:54:42.740
it

00:54:42.740 --> 00:54:43.100
now

00:54:43.100 --> 00:54:43.300
get

00:54:43.300 --> 00:54:43.440
out

00:54:43.440 --> 00:54:43.560
there

00:54:43.560 --> 00:54:43.720
and

00:54:43.720 --> 00:54:43.880
write

00:54:43.880 --> 00:54:44.060
some

00:54:44.060 --> 00:54:44.320
python

00:54:44.320 --> 00:54:44.680
code

00:54:44.680 --> 00:54:45.180
you

00:54:45.180 --> 00:54:45.680
you

00:54:45.680 --> 00:54:46.680
have

00:54:46.680 --> 00:54:47.680
a

00:54:47.680 --> 00:54:47.680
have

00:54:47.680 --> 00:54:49.680
a

00:54:49.680 --> 00:54:49.680
a

00:54:49.680 --> 00:54:51.680
a

00:54:51.680 --> 00:54:51.680
a

00:54:51.680 --> 00:54:53.680
a

00:54:53.680 --> 00:54:53.680
a

00:54:53.680 --> 00:54:53.680
a

00:54:53.680 --> 00:54:53.680
a

00:54:53.680 --> 00:54:53.680
a

00:54:53.680 --> 00:54:53.680
a

00:54:53.680 --> 00:54:55.680
a

00:54:55.680 --> 00:54:55.680
a

00:54:55.680 --> 00:54:55.680
a

00:54:55.680 --> 00:54:57.680
a

00:54:57.680 --> 00:54:58.680
Bye.

00:54:58.680 --> 00:54:59.680
Bye.

00:54:59.680 --> 00:55:00.680
Bye.

00:55:00.680 --> 00:55:01.680
Bye.

00:55:01.680 --> 00:55:02.180
you

00:55:02.180 --> 00:55:02.680
you

00:55:02.680 --> 00:55:03.180
you

00:55:03.180 --> 00:55:05.180
Thank you.

00:55:05.180 --> 00:55:35.160
Thank you.