WEBVTT

00:00:00.000 --> 00:00:02.359
It's the morning after the demo. You've just

00:00:02.359 --> 00:00:04.719
shown the client this incredible AI workflow.

00:00:04.799 --> 00:00:07.059
It's working perfectly. It summarizes emails,

00:00:07.559 --> 00:00:12.919
updates the CRM, drafts responses. It feels like

00:00:12.919 --> 00:00:15.660
magic. The client's loving it. They are smiling.

00:00:16.339 --> 00:00:20.000
But then the smile fades just a little, and they

00:00:20.000 --> 00:00:23.300
ask a simple question. So where does this actually

00:00:23.300 --> 00:00:27.579
live? And who pays if we run this 10 ,000 times?

00:00:27.699 --> 00:00:30.440
Yeah, that's the moment. And right there, the

00:00:30.440 --> 00:00:32.140
project doesn't collapse because the code is

00:00:32.140 --> 00:00:34.920
bad. It collapses because you realize building

00:00:34.920 --> 00:00:37.859
the AI. Yeah. That was the easy part. You built

00:00:37.859 --> 00:00:39.960
a prototype, but you didn't build a system. Right.

00:00:40.039 --> 00:00:42.060
It's that sinking feeling in your stomach. You've

00:00:42.060 --> 00:00:43.920
done the fun part, the prompt engineering, the

00:00:43.920 --> 00:00:46.299
logic puzzles, but you haven't done the delivery

00:00:46.299 --> 00:00:48.380
engineering. And that is a completely different

00:00:48.380 --> 00:00:52.280
beast. Welcome back to the deep dive. Today,

00:00:52.439 --> 00:00:54.399
we are stepping away from the hype cycle. We

00:00:54.399 --> 00:00:55.740
aren't talking about the latest model release

00:00:55.740 --> 00:00:58.799
or some new feature. We are settling into a much

00:00:58.799 --> 00:01:02.539
calmer, maybe more critical analysis of professional

00:01:02.539 --> 00:01:05.219
AI delivery. We're looking at the philosophy

00:01:05.219 --> 00:01:09.379
of systems. How do we move from a cool prototype

00:01:09.379 --> 00:01:12.359
on a laptop to a reliable automation that lives

00:01:12.359 --> 00:01:14.659
inside a business? I love this topic because

00:01:14.659 --> 00:01:16.799
it's where the rubber meets the road. We're seeing

00:01:16.799 --> 00:01:19.280
a massive shift right now. We're moving away

00:01:19.280 --> 00:01:22.359
from prompt engineering, which is just getting

00:01:22.359 --> 00:01:24.599
the model to talk into delivery engineering.

00:01:25.180 --> 00:01:28.540
This is about reliability, security, billing,

00:01:29.079 --> 00:01:31.400
and frankly, keeping your sanity as a builder

00:01:31.400 --> 00:01:34.319
so you don't burn out. We have a really comprehensive

00:01:34.319 --> 00:01:36.819
guide in front of us today, the AI automation

00:01:36.819 --> 00:01:40.129
delivery lifecycle. It argues that most failures

00:01:40.129 --> 00:01:42.750
happen after the demo. So our mission today is

00:01:42.750 --> 00:01:45.209
to really dissect this life cycle. Let's do it.

00:01:45.269 --> 00:01:46.890
We're going to look at the three models of hosting,

00:01:47.049 --> 00:01:49.349
the non -negotiables of security, which, spoiler,

00:01:49.430 --> 00:01:51.590
should be boring, the psychology of billing,

00:01:51.829 --> 00:01:53.629
and then the art of the clean handover. It's

00:01:53.629 --> 00:01:55.670
a roadmap for professionalism. If you follow

00:01:55.670 --> 00:01:57.469
it, you're a systems architect. If you don't,

00:01:57.530 --> 00:01:59.290
you're just a tinkerer with a dangerous toy.

00:01:59.689 --> 00:02:02.530
OK, let's unpack this. The source material starts

00:02:02.530 --> 00:02:06.219
with a very strong claim. Most delivery issues

00:02:06.219 --> 00:02:08.520
come from hosting decisions made way too late.

00:02:08.759 --> 00:02:11.439
Yeah. It seems like a technical detail, but the

00:02:11.439 --> 00:02:14.520
author argues this is the core conflict. It absolutely

00:02:14.520 --> 00:02:17.300
is, because where the automation lives determines

00:02:17.300 --> 00:02:21.240
who owns it, who pays for it, and who gets sued

00:02:21.240 --> 00:02:24.939
if it breaks. The guide outlines three models,

00:02:25.599 --> 00:02:28.060
and mixing them up is where people get into so

00:02:28.060 --> 00:02:29.699
much trouble. Okay, let's walk through them.

00:02:30.140 --> 00:02:33.219
Option one is what the source calls the recommended

00:02:33.219 --> 00:02:36.000
path. This is where the client hosts. Correct.

00:02:36.360 --> 00:02:38.319
Think of it like being a specialized consultant

00:02:38.319 --> 00:02:41.000
or an architect, right? When you hire an architect

00:02:41.000 --> 00:02:43.360
to design a house, they don't build the house

00:02:43.360 --> 00:02:45.560
on their own land and then rent it to you. They

00:02:45.560 --> 00:02:48.400
build it on your land. In automation terms, the

00:02:48.400 --> 00:02:51.000
client buys the software license, the Zapier

00:02:51.000 --> 00:02:54.060
seat, the make account, and you, the builder,

00:02:54.340 --> 00:02:56.120
you just step into their environment to assemble

00:02:56.120 --> 00:02:58.099
the furniture. That makes sense. Keeps the lines

00:02:58.099 --> 00:03:00.680
clean. But then there's option two, internal

00:03:00.680 --> 00:03:02.780
operations. This is where you, the builder, host

00:03:02.780 --> 00:03:05.919
it. Yes, but there's a huge caveat here. You

00:03:05.919 --> 00:03:08.840
can only do this if the automation is for your

00:03:08.840 --> 00:03:11.819
own business operations. Let's say you have an

00:03:11.819 --> 00:03:15.300
agency and you use AI to route your own leads

00:03:15.300 --> 00:03:18.340
or generate reports that you then email to a

00:03:18.340 --> 00:03:20.479
client. That's fine. Because they never log in.

00:03:20.580 --> 00:03:22.740
The client never logs in. They never see the

00:03:22.740 --> 00:03:25.699
gears turning. You're selling the outcome, not

00:03:25.699 --> 00:03:28.169
the machine. OK, but I want to push on this next

00:03:28.169 --> 00:03:31.830
part because option three is the sauce model.

00:03:32.270 --> 00:03:34.189
And honestly, that's the dream for a lot of people

00:03:34.189 --> 00:03:36.349
listening, isn't it? Sure. You build one amazing

00:03:36.349 --> 00:03:39.210
automation, you host it, you charge 50 clients

00:03:39.210 --> 00:03:43.710
a monthly fee, passive income. Why does the guide

00:03:43.710 --> 00:03:46.169
warn against this? Why should we walk away from

00:03:46.169 --> 00:03:47.629
that? I'm not saying walk away from revenue.

00:03:47.750 --> 00:03:49.650
I'm saying know what game you're playing. If

00:03:49.650 --> 00:03:52.050
you host the automation and let clients log in,

00:03:52.330 --> 00:03:54.509
you are no longer a service provider. You are

00:03:54.509 --> 00:03:56.789
a re. You're a software vendor. Which means?

00:03:57.289 --> 00:03:59.810
Which means you are legally responsible for the

00:03:59.810 --> 00:04:02.810
data. If your server gets hacked and 50 clients

00:04:02.810 --> 00:04:05.550
lose their customer lists, you get sued. Not

00:04:05.550 --> 00:04:08.449
OpenAI, not the platform you. You're the data

00:04:08.449 --> 00:04:11.560
controller. And if you look at the terms of service

00:04:11.560 --> 00:04:15.039
for standard API keys from, say, Anthropic or

00:04:15.039 --> 00:04:18.939
OpenAI, they often strictly forbid reselling

00:04:18.939 --> 00:04:20.779
the utility without an enterprise agreement.

00:04:21.240 --> 00:04:24.500
Right. So unless you have a legal team, a VC

00:04:24.500 --> 00:04:27.819
fund for those enterprise licenses, and a cybersecurity

00:04:27.819 --> 00:04:30.920
expert on retainer, don't pretend to be a sauce.

00:04:31.319 --> 00:04:34.060
Be a high -end architect who builds on the client's

00:04:34.060 --> 00:04:37.139
land. So the golden rule here is client work

00:04:37.139 --> 00:04:40.500
means the client hosts. Pretty much, unless you

00:04:40.500 --> 00:04:42.800
want to be a tech CEO with all that liability.

00:04:43.139 --> 00:04:45.560
Why is that distinction between service and product

00:04:45.560 --> 00:04:47.819
so critical for a freelancer? It prevents legal

00:04:47.819 --> 00:04:50.759
risks and expensive licensing fees. Moving on

00:04:50.759 --> 00:04:52.740
to the next layer, we have the foundation, the

00:04:52.740 --> 00:04:55.740
hosting, now we need the walls. Security. The

00:04:55.740 --> 00:04:57.339
source makes a point here that I found really

00:04:57.339 --> 00:04:59.620
interesting. Good security doesn't look impressive.

00:04:59.860 --> 00:05:02.540
It looks boring. I love that line. Security should

00:05:02.540 --> 00:05:04.579
be boring. It should be predictable. If your

00:05:04.579 --> 00:05:06.740
security is exciting, something has gone very

00:05:06.740 --> 00:05:08.420
wrong. Let's talk about credentials. I think

00:05:08.420 --> 00:05:10.019
we've all been guilty of this, especially in

00:05:10.019 --> 00:05:12.600
the early days. Hard coding an API key right

00:05:12.600 --> 00:05:14.980
into a script just to test something. It's easy.

00:05:15.079 --> 00:05:18.379
It's fast. It's the classic Ricky mistake. And

00:05:18.379 --> 00:05:22.629
the rule here is absolute. Never paste API keys

00:05:22.629 --> 00:05:25.730
or passwords directly into workflow steps. Ever.

00:05:26.029 --> 00:05:27.930
Professional automation platforms have what are

00:05:27.930 --> 00:05:30.810
called environment variables or a credentials

00:05:30.810 --> 00:05:34.589
vault. You save the key in the secure vault and

00:05:34.589 --> 00:05:36.829
the workflow just references it by a nickname.

00:05:37.149 --> 00:05:40.689
So the code just says, use my open AI key, but

00:05:40.689 --> 00:05:42.529
it doesn't actually show the string of characters.

00:05:43.209 --> 00:05:44.810
Exactly. It means if you download the workflow

00:05:44.810 --> 00:05:47.350
or share a screenshot or export the file to send

00:05:47.350 --> 00:05:49.810
to a friend, the key isn't there. It's stripped

00:05:49.810 --> 00:05:52.769
out. It's basic hygiene, but it saves you from

00:05:52.769 --> 00:05:54.870
accidentally leaking your credit card to the

00:05:54.870 --> 00:05:56.610
whole internet. And then there's the issue of

00:05:56.610 --> 00:05:59.579
entry points. Webhooks. Now for anyone listening

00:05:59.579 --> 00:06:01.439
who might know the term but not the mechanics,

00:06:02.079 --> 00:06:04.560
a webhook is just a way to trigger an automation

00:06:04.560 --> 00:06:06.660
from the outside world. Right. It's a public

00:06:06.660 --> 00:06:09.699
URL. You send data to that URL and the automation

00:06:09.699 --> 00:06:12.519
wakes up and runs. And that sounds a little dangerous.

00:06:12.699 --> 00:06:14.379
Webhooks are terrifying if you think about them

00:06:14.379 --> 00:06:16.939
too much. A webhook is basically a public door

00:06:16.939 --> 00:06:19.160
to your automation. If I have the URL, I can

00:06:19.160 --> 00:06:21.360
knock on that door. And if it's not locked? I

00:06:21.360 --> 00:06:24.860
can walk right in and run your bot. on my data,

00:06:24.959 --> 00:06:26.879
on your dime. Okay, let's stick with the door

00:06:26.879 --> 00:06:31.319
analogy. If I have the address, the URL, I can

00:06:31.319 --> 00:06:34.560
walk up and knock. How do you actually stop me

00:06:34.560 --> 00:06:37.639
from coming in? Is it just using HTTPS? Well,

00:06:37.660 --> 00:06:40.220
HTTPS is the baseline, but that's just a secure

00:06:40.220 --> 00:06:42.399
tunnel. It stops people from listening in on

00:06:42.399 --> 00:06:44.279
the conversation, but it doesn't stop someone

00:06:44.279 --> 00:06:47.060
from knocking. The mistake most people make is

00:06:47.060 --> 00:06:50.399
thinking the URL itself is a secret. It's not.

00:06:50.519 --> 00:06:53.639
It'll leak. So what's the lock? The lock is something

00:06:53.639 --> 00:06:56.040
called header validation. Translate that for

00:06:56.040 --> 00:06:58.220
me. Think of it like a speakeasy. Knowing where

00:06:58.220 --> 00:07:01.439
the door is isn't enough. When you knock, the

00:07:01.439 --> 00:07:04.579
bouncer asks for a password. In tech terms, the

00:07:04.579 --> 00:07:07.319
sending server -like typeform or stripe includes

00:07:07.319 --> 00:07:09.720
a secret handshake in the data packet headers.

00:07:10.279 --> 00:07:12.300
Your automation shouldn't just open the door.

00:07:12.339 --> 00:07:14.740
It should check for that handshake first. If

00:07:14.740 --> 00:07:16.920
it's missing or it's the wrong password, you

00:07:16.920 --> 00:07:18.600
don't even run the workflow. You just slam the

00:07:18.600 --> 00:07:20.980
door. You know, I have to admit something here.

00:07:21.379 --> 00:07:23.680
Even just discussing this, I feel a bit of that

00:07:23.680 --> 00:07:26.279
anxiety. I still wrestle with the fear of a prompt

00:07:26.279 --> 00:07:30.259
injection or a data leak myself. You hand these

00:07:30.259 --> 00:07:32.540
systems over to a client, but you worry, did

00:07:32.540 --> 00:07:34.860
I close every loop? Is the prompt tight enough?

00:07:35.879 --> 00:07:37.740
What if someone tricks the AI into revealing

00:07:37.740 --> 00:07:40.019
something it shouldn't? That's a very healthy

00:07:40.019 --> 00:07:42.019
fear to have. If you aren't a little scared,

00:07:42.079 --> 00:07:43.899
you aren't paying attention. And honestly, the

00:07:43.899 --> 00:07:46.060
only way to manage that anxiety is through what

00:07:46.060 --> 00:07:49.339
the source calls data minimization. OK. If you're

00:07:49.339 --> 00:07:52.000
processing personal data names, emails only pull

00:07:52.000 --> 00:07:54.500
in exactly what you need for that specific task.

00:07:55.019 --> 00:07:57.379
Don't dump the whole database into the context

00:07:57.379 --> 00:08:00.500
window and limit who can see the execution logs.

00:08:00.879 --> 00:08:03.000
If you limit the surface area, you limit the

00:08:03.000 --> 00:08:05.720
blast radius if something goes wrong. Blast radius?

00:08:05.879 --> 00:08:08.620
That's a vivid image. It's the reality. A small

00:08:08.620 --> 00:08:11.040
pop, not an explosion. That brings us to a different

00:08:11.040 --> 00:08:13.740
kind of risk. One that is maybe less technical,

00:08:14.060 --> 00:08:16.779
but just as dangerous to a project. The money.

00:08:17.560 --> 00:08:20.319
Ah, yes. The awkward conversation. The guide

00:08:20.319 --> 00:08:23.339
calls this the friction point, billing. And the

00:08:23.339 --> 00:08:26.519
rule is... Clients own their API keys, and clients

00:08:26.519 --> 00:08:29.000
pay for their usage. Non -negotiable. I hear

00:08:29.000 --> 00:08:31.439
you on transparency, but let's be real. If I

00:08:31.439 --> 00:08:33.500
hire an expert, I don't want them handing me

00:08:33.500 --> 00:08:35.419
a confusing checklist and saying, go figure out

00:08:35.419 --> 00:08:38.279
OpenAI's dashboard. Isn't that just bad service?

00:08:38.759 --> 00:08:41.519
It feels lazy. Here, you go do the hard part.

00:08:41.639 --> 00:08:43.720
It feels lazy if you just dump it in their lap,

00:08:43.799 --> 00:08:46.740
sure. But think about the alternative. If you

00:08:46.740 --> 00:08:49.779
pay the bill, you're effectively acting as their

00:08:49.779 --> 00:08:52.759
bank. You're floating them credit. But agencies

00:08:52.759 --> 00:08:54.960
pay for ad spend all the time, right? They just

00:08:54.960 --> 00:08:57.340
mark it up. They do. But ad spend is usually

00:08:57.340 --> 00:09:00.519
capped and predictable. With AI, the volatility

00:09:00.519 --> 00:09:04.679
is insane. One bad loop, one recursive error

00:09:04.679 --> 00:09:07.159
where the AI talks to itself, and you could burn

00:09:07.159 --> 00:09:10.860
through $500 in an hour. Oof. Do you want that

00:09:10.860 --> 00:09:13.120
liability on your personal credit card? And more

00:09:13.120 --> 00:09:14.539
importantly, do you want to have the conversation

00:09:14.539 --> 00:09:16.419
where you try to bill the client for that mistake?

00:09:16.840 --> 00:09:19.019
No, I definitely do not want to have that conversation.

00:09:19.200 --> 00:09:21.659
Exactly. When the client uses their own key,

00:09:22.000 --> 00:09:24.399
they see the usage limits. They see the costs

00:09:24.399 --> 00:09:26.840
racking up in their own dashboard. It connects

00:09:26.840 --> 00:09:29.220
the action using the tool to the consequence

00:09:29.220 --> 00:09:31.740
paying for the compute. It stops you from being

00:09:31.740 --> 00:09:34.259
the middleman. So how do we solve the laziness

00:09:34.259 --> 00:09:36.980
problem? How do we make it smooth? Loom videos.

00:09:37.279 --> 00:09:39.679
It's such a simple tactical tip, but it works.

00:09:40.000 --> 00:09:42.480
Record your screen. Show them. Click here. Click

00:09:42.480 --> 00:09:44.700
billing. Click generate key. Copy this string.

00:09:45.080 --> 00:09:47.320
If you hold their hand through the scary dashboard,

00:09:47.539 --> 00:09:49.580
the friction just vanishes. And what if they

00:09:49.580 --> 00:09:51.480
just refuse? What if they say, here's the key

00:09:51.480 --> 00:09:53.659
in an email, just take it? If you absolutely

00:09:53.659 --> 00:09:56.440
must handle it, you treat it like a nuclear launch

00:09:56.440 --> 00:10:00.169
code. Never in plain text use a one -time encrypted

00:10:00.169 --> 00:10:02.610
sharing tool like one password or something similar

00:10:02.610 --> 00:10:05.389
You want that key to be revocable and you want

00:10:05.389 --> 00:10:08.309
zero trace of it in your email or slack history

00:10:08.309 --> 00:10:10.889
So handing over the billing isn't just about

00:10:10.889 --> 00:10:14.090
money. It's about trust Exactly. It removes the

00:10:14.090 --> 00:10:16.629
mystery and puts the client in control. Okay,

00:10:16.809 --> 00:10:18.870
so the client is paying the keys are locked up.

00:10:18.889 --> 00:10:22.070
The headers are validated But we're missing the

00:10:22.070 --> 00:10:24.940
big one The part where the robot actually does

00:10:24.940 --> 00:10:27.519
the work. The logic. The logic. And the guide

00:10:27.519 --> 00:10:29.240
has a term for testing this that I absolutely

00:10:29.240 --> 00:10:31.559
love. It calls it the black box method. This

00:10:31.559 --> 00:10:33.419
is my favorite part of the methodology, because

00:10:33.419 --> 00:10:36.000
it changes how you look at AI. Most people test

00:10:36.000 --> 00:10:38.399
by clicking the run button on a single node and

00:10:38.399 --> 00:10:40.940
seeing if it lights up green. Oh, the API connected

00:10:40.940 --> 00:10:43.379
green light. I'm done. Right. That is not testing.

00:10:43.580 --> 00:10:45.600
That is checking connectivity. Green doesn't

00:10:45.600 --> 00:10:47.620
mean correct. Green just means I didn't crash.

00:10:47.860 --> 00:10:51.299
Exactly. Testing is about what happens when messy,

00:10:51.559 --> 00:10:54.779
chaotic human reality hits your pristine logic.

00:10:55.259 --> 00:10:57.480
The guide says, don't wait until the end. Get

00:10:57.480 --> 00:11:01.529
real data immediately. Real emails. Real CRM

00:11:01.529 --> 00:11:04.629
records. Why is real so important here? Why can't

00:11:04.629 --> 00:11:07.730
I just type test email into the box? Because

00:11:07.730 --> 00:11:11.029
faked data is polite. Real data is rude. Real

00:11:11.029 --> 00:11:13.610
data has missing fields, weird formatting, emojis

00:11:13.610 --> 00:11:15.769
in the subject line, duplicates, spelling errors.

00:11:15.889 --> 00:11:18.129
You need to see how your system handles the rudeness.

00:11:18.330 --> 00:11:20.490
And this leads to the concept of safe failure.

00:11:20.950 --> 00:11:23.759
Safe failure is the mark of a pro. If the system

00:11:23.759 --> 00:11:25.580
breaks, and it will break, does it break loudly

00:11:25.580 --> 00:11:28.960
or quietly? A loud break is. The automation stops,

00:11:29.240 --> 00:11:31.879
the data is lost, and the client calls you screaming.

00:11:32.299 --> 00:11:35.279
A quiet safe break is. The system detects an

00:11:35.279 --> 00:11:38.220
error, logs it, sends an alert to the admin,

00:11:38.580 --> 00:11:41.320
and stops processing that specific item without

00:11:41.320 --> 00:11:43.779
crashing the whole pipeline. The guide suggests

00:11:43.779 --> 00:11:45.940
hiding the complexity during client testing.

00:11:46.460 --> 00:11:48.759
Don't give them the whole note editor. Give them

00:11:48.759 --> 00:11:52.970
a simple form. Yes. A chat box or a simple interface.

00:11:53.129 --> 00:11:56.149
Input goes in. Output comes out. You treat the

00:11:56.149 --> 00:11:58.870
AI as a black box. You don't care how it got

00:11:58.870 --> 00:12:01.149
the answer. You just check if the answer is right.

00:12:01.389 --> 00:12:03.429
And the question is key. The question you ask

00:12:03.429 --> 00:12:05.950
the client is crucial. Don't ask, what do you

00:12:05.950 --> 00:12:09.049
think? It's too vague. Ask, is this factually

00:12:09.049 --> 00:12:12.879
correct? Or is this tone on brand? There is something

00:12:12.879 --> 00:12:15.120
kind of magical about that black box approach

00:12:15.120 --> 00:12:17.279
when it works. It really is. I mean, imagine

00:12:17.279 --> 00:12:19.299
looking at a spreadsheet of a thousand inputs

00:12:19.299 --> 00:12:21.480
customer complaints, let's say, and then watching

00:12:21.480 --> 00:12:23.500
a thousand outputs populate right next to them.

00:12:23.779 --> 00:12:26.340
You're seeing the system thing it at scale. Whoa.

00:12:26.580 --> 00:12:28.460
It's like watching a brain work and fast forward.

00:12:28.539 --> 00:12:30.539
It's reliable. It's not a magic trick anymore.

00:12:30.559 --> 00:12:32.639
It's a machine. That's the goal. When you can

00:12:32.639 --> 00:12:34.860
watch a thousand rows process and trust the output,

00:12:34.960 --> 00:12:37.039
that's when you know you've built a system. So

00:12:37.039 --> 00:12:41.350
we've tested. It works. The data is real. Now

00:12:41.350 --> 00:12:44.850
comes the breakup. The handover. The exit strategy.

00:12:45.029 --> 00:12:47.190
The guide says the handover determines if you

00:12:47.190 --> 00:12:50.309
get repeat work. It's the final impression. But

00:12:50.309 --> 00:12:52.429
there's a darker side to this too. something

00:12:52.429 --> 00:12:55.889
engineers call the bus factor. Oh, the bus factor.

00:12:56.529 --> 00:12:59.590
It's a grim concept, but it's so necessary. If

00:12:59.590 --> 00:13:01.590
you, the builder, walk out of the office and

00:13:01.590 --> 00:13:04.529
get hit by a bus, can the client access their

00:13:04.529 --> 00:13:07.570
own system? If the answer is no, because the

00:13:07.570 --> 00:13:09.730
password is in your head or the workflow is on

00:13:09.730 --> 00:13:12.029
your private laptop, you haven't built a business

00:13:12.029 --> 00:13:14.789
asset. You've built a hostage situation. So how

00:13:14.789 --> 00:13:16.990
do we lower the bus factor? What are the technical

00:13:16.990 --> 00:13:19.929
steps? First, versioning. This is standard in

00:13:19.929 --> 00:13:21.889
software dev, but it's kind of rare in low code.

00:13:22.049 --> 00:13:25.029
You need two versions. Test in production. Never,

00:13:25.049 --> 00:13:27.509
ever experiment in production. Never. Client

00:13:27.509 --> 00:13:29.730
wants a change. You make it in test, you verify

00:13:29.730 --> 00:13:32.330
it, and then you push to prod. And backups. Crucial.

00:13:32.929 --> 00:13:35.029
Don't rely on the tool's cloud storage alone.

00:13:35.690 --> 00:13:38.889
Export the workflows. Save the JSON files to

00:13:38.889 --> 00:13:41.590
Google Drive or GitHub. If the platform goes

00:13:41.590 --> 00:13:43.870
down or the client accidentally deletes the workflow,

00:13:43.950 --> 00:13:46.529
which happens way more than you think, You need

00:13:46.529 --> 00:13:49.309
a hard copy you can restore from. The guide also

00:13:49.309 --> 00:13:52.009
mentions cleanup. Oh, please clean up your code.

00:13:52.409 --> 00:13:55.049
Label the steps. Remove those temporary nodes

00:13:55.049 --> 00:13:57.629
you used for debugging. If another developer

00:13:57.629 --> 00:13:59.909
opens your workflow in six months, they should

00:13:59.909 --> 00:14:02.289
be able to read it like a map. Not a bowl of

00:14:02.289 --> 00:14:04.070
spaghetti. If it looks like a bowl of spaghetti,

00:14:04.269 --> 00:14:07.129
you haven't finished the job. And finally, documentation.

00:14:07.669 --> 00:14:10.029
And I think we both agree here. Nobody reads

00:14:10.029 --> 00:14:13.149
the manual. Nobody reads a 50 -page PDF. But

00:14:13.149 --> 00:14:15.690
they will watch a five -minute video, a quick

00:14:15.690 --> 00:14:17.450
loom walking through the settings and the keys.

00:14:17.789 --> 00:14:20.990
That is gold. It's usable. There's a legal structure

00:14:20.990 --> 00:14:23.850
to this handover as well, defining done. This

00:14:23.850 --> 00:14:25.990
protects everyone. You need a definition of done,

00:14:26.330 --> 00:14:29.139
agreed upon criteria. When X, Y and Z are working,

00:14:29.379 --> 00:14:32.100
the final invoice is sent. And importantly, you

00:14:32.100 --> 00:14:34.159
have to separate the project from the maintenance.

00:14:34.440 --> 00:14:36.320
This seems to be where a lot of freelancers get

00:14:36.320 --> 00:14:38.779
stuck. They build the thing, but then they are

00:14:38.779 --> 00:14:41.600
on the hook forever for every little bug fix.

00:14:41.840 --> 00:14:44.080
Forever. And usually for free. You have to draw

00:14:44.080 --> 00:14:45.779
a line. The project is built. Now, if you want

00:14:45.779 --> 00:14:50.039
me to monitor it, fix bugs, handle updates, that's

00:14:50.039 --> 00:14:52.139
a maintenance retainer, new features, those are

00:14:52.139 --> 00:14:54.480
new projects. If you don't separate these, you

00:14:54.480 --> 00:14:56.879
will absolutely burn out. It sounds like the

00:14:56.879 --> 00:14:59.299
product isn't the AI, but the peace of mind.

00:15:00.080 --> 00:15:03.100
Yes. Clients pay for confidence, not just clever

00:15:03.100 --> 00:15:06.179
prompts. Let's zoom out. We've covered a lot

00:15:06.179 --> 00:15:08.980
of ground. The big idea seems to be this shift

00:15:08.980 --> 00:15:12.899
in mindset. Anyone can connect two tools and

00:15:12.899 --> 00:15:15.539
make AI do something cool for five minutes. That's

00:15:15.539 --> 00:15:18.860
a demo. But professional AI automation is about

00:15:18.860 --> 00:15:21.480
building systems that live inside a business

00:15:21.480 --> 00:15:23.799
without constant babysitting. That is the whole

00:15:23.799 --> 00:15:26.220
thesis. It's the life cycle. Host it correctly

00:15:26.220 --> 00:15:28.779
so ownership is clear. Secure the data so you

00:15:28.779 --> 00:15:30.899
can sleep at night. Make sure the client pays

00:15:30.899 --> 00:15:32.580
the bill so the relationship is transparent.

00:15:32.820 --> 00:15:36.759
Right. test it with real messy data, and hand

00:15:36.759 --> 00:15:39.460
it over clean so it can survive without you.

00:15:39.639 --> 00:15:42.340
It's moving from being a magician to being an

00:15:42.340 --> 00:15:45.279
engineer. Exactly. Magicians are fun for a night.

00:15:45.679 --> 00:15:48.039
Engineers keep the lights on. I want to leave

00:15:48.039 --> 00:15:49.860
our listeners, especially the learners out there,

00:15:49.899 --> 00:15:52.360
with a bit of a challenge. Look at the projects

00:15:52.360 --> 00:15:54.679
you are working on right now. Are you building

00:15:54.679 --> 00:15:57.620
prototypes or are you delivering systems? And

00:15:57.620 --> 00:15:59.539
here's a provocative thought to take with you.

00:15:59.759 --> 00:16:01.960
If you walked away from your automation today,

00:16:02.240 --> 00:16:05.879
just Ghosted. Totally disappeared. Would it survive

00:16:05.879 --> 00:16:08.639
next week without you? If the answer is no, you

00:16:08.639 --> 00:16:10.700
haven't finished the job. A sobering thought

00:16:10.700 --> 00:16:13.220
to end on. Thank you for joining us on this deep

00:16:13.220 --> 00:16:15.399
dive into the mechanics of delivery. We'll catch

00:16:15.399 --> 00:16:16.559
you on the next one. See you then.
