Skip to content
CBT Nuggets

Explore AI Programmatically

The skill 'Explore AI Programmatically' provides an overview of AI technologies, focusing on three main types of software: Software 1.0, 2.0, and 3.0. It covers traditional programming, machine learning, and deep learning, emphasizing the transition to prompt-based systems where natural language is used to guide AI models. The course introduces prompt engineering as a key skill for effectively interacting with AI tools like ChatGPT, Claude, and Copilot, highlighting the importance of understanding AI's subdomains and their applications in programming.

Full lesson from Agentic Coding. Preview the IT training 23,000+ organizations trust.

49m 7 Videos 10 Questions

Skill 1 of 6 in Agentic Coding

Introduction

Welcome to the AI Agentic Coding: ChatGPT Cursor Claude Copilot course! In this first skill, we’ll set the foundation for the course by answering a simple question: What is AI?

From there, we’ll break it down into three core concepts, or types of software.

  • Software 1.0: traditional programming, where humans write explicit rules.
  • Software 2.0: brain-inspired models that learn from data.
  • Software 3.0: prompt-based systems, where we guide models with natural language.

The goal here is to highlight that with modern AI chatbots, we’re programming in plain English, not having a conversation with another human.

What is AI?

In this video, we'll explore what AI is and how it's more than one thing. You'll see where rules, machine learning, deep learning, and generative AI fit into the big picture and how to program using natural language.

Knowledge Check

What is the primary distinction between machine learning and deep learning?

  1. ADeep learning is modeled after the human brain using neural networks, while machine learning primarily relies on algorithms.
  2. BMachine learning is used for generative AI, while deep learning is not.
  3. CDeep learning requires expert systems, whereas machine learning does not.
  4. DMachine learning is a newer form of AI compared to deep learning.
  5. EDeep learning does not involve any form of learning from data.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

What is Software 1.0, 2.0, and 3.0?

In this video, we'll explore AI and its subdomains as three main types of software: 1.0, 2.0, and 3.0.

Knowledge Check

What is a key characteristic of Software 1.0?

  1. ADeterministic outputs, meaning the same input will always produce the same output.
  2. BLearning from examples to make predictions.
  3. CUsing plain language to program and generate outputs.
  4. DIncorporating agent decoding for prompt-based outputs.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Software 1.0

This video sets up software 1.0 as the classic deterministic rules-that-you-write approach. That means, the behavior comes from the code that you write, and if you want to change that behavior or output, you simply edit the code.

Knowledge Check

What is the primary advantage of using Software 1.0 for simple text classification tasks?

  1. APredictable and testable accuracy with explicit rules
  2. BAbility to learn from labeled images
  3. CUtilizes deep learning models for improved accuracy
  4. DRequires no programming knowledge

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Software 2.0

In this video, we'll introduce Software 2.0, where models learn patterns from data. If you want to change the outputs or behavior, you have to change the data or the training samples. To illuminate how neural networks work behind the scenes, we'll build a no-code deep learning computer vision model with Google's Teachable Machine.

Knowledge Check

What is the primary difference between Software 1.0 and Software 2.0?

  1. ASoftware 2.0 learns from data and adjusts weights during training, while Software 1.0 does not involve learning.
  2. BSoftware 1.0 uses neural networks, while Software 2.0 does not.
  3. CSoftware 2.0 is exclusively for image processing, while Software 1.0 is for audio processing.
  4. DSoftware 1.0 is open source, while Software 2.0 is proprietary.
  5. ESoftware 2.0 requires manual coding for each task, while Software 1.0 automates the process.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Software 3.0

This video introduces Software 3.0 as programming with plain language. Another way to think of this, as Andrej Karpathy would say, is "English is the hottest new programming language."

Knowledge Check

What is the primary advantage of using Software 3.0 models in programming?

  1. AProgramming using plain language prompts allows for fast and flexible development.
  2. BSoftware 3.0 models eliminate the need for any verification of outputs.
  3. CThey provide complete control over the model's behavior at runtime.
  4. DSoftware 3.0 models do not require any training data.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Challenge 🎉

Congrats on making it to the end of the skill and the challenge! The questions below are here to help you reflect on what you’ve learned and strengthen your understanding. Since each new skill builds on the last, this is a great chance to revisit any areas that still feel a bit unclear—so you’re fully ready for what comes next.

Knowledge Check

Which of the following statements about artificial intelligence (AI) are true? (select three)

  1. AMachine learning and deep learning are subdomains of AI.
  2. BGenerative AI is built using deep learning.
  3. CDeep learning is modeled after the human brain using neural networks.
  4. DExpert systems are a form of deep learning.
  5. EGenerative AI does not involve prediction of the next token.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Knowledge Check

Which of the following statements about software versions 1.0, 2.0, and 3.0 are correct? (Select three)

  1. ASoftware 1.0 is deterministic and involves writing code with clear rules.
  2. BSoftware 2.0 learns decision logic from examples using deep neural networks.
  3. CSoftware 3.0 involves programming using plain language and prompt engineering.
  4. DSoftware 1.0 uses deep learning to make predictions.
  5. ESoftware 2.0 is primarily about writing code in plain language.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Knowledge Check

Which of the following statements about Software 1.0 are correct? (select two)

  1. ASoftware 1.0 uses explicit rules and is deterministic.
  2. BSoftware 1.0 allows for predictable and testable accuracy.
  3. CSoftware 1.0 relies on labeled training data like Software 2.0.
  4. DSoftware 1.0 uses explicit rules and is non-deterministic.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Knowledge Check

Which of the following statements about software 2.0 are correct? (select two)

  1. ASoftware 2.0 learns from data or examples, and the weights change during training.
  2. BTraining data can introduce bias if there is an imbalance in the number of samples for each class.
  3. CSoftware 2.0 does not require any training data to function.
  4. DSoftware 2.0 is not modeled after the human brain.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Knowledge Check

Which of the following statements about Software 3.0 and prompt engineering are true? (select two)

  1. ASoftware 3.0 allows programming using plain language prompts.
  2. BPrompt engineering helps steer the model's behavior to achieve desired outputs.
  3. CSoftware 3.0 models do not require any training data.
  4. DPrompt engineering eliminates the need for verification of model outputs.

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

View Transcript

Introduction

0:00Hello and welcome to the AI-Agentic Coding ChatGPT Cursor, Clod, and Co-Pilot course.

0:08I'm excited that you're here.

0:10When most people think of AI, they think of a chatbot window that spits out fluent, correct-sounding

0:16answers, helpful but not always correct, and it hides the bigger picture.

0:22When it comes to programming, the power of AI can be a bit overwhelming, and at the same

0:27time it can be welcoming to a wide audience, anyone from software engineers to complete

0:33beginners.

0:34Before we talk about the scope of this course, I did want to say that this is a beginner

0:39course.

0:40Meaning, if you have some experience programming and want to start using AI to increase your

0:45existing programming skills, then this is the course for you.

0:49But it's not entry-level.

0:51And by that I mean, if you don't have a programming background, this might not be the right course

0:56for you.

0:57But no worries, I have a course just for you on VibeCoding, and I'll explain that in just

1:02one second.

1:03First, let's check out what's included in the course, what's in scope and what's not.

1:09This course is about understanding the basic prompt engineering skills for programming.

1:14For example, when to use one model over the other for programming.

1:19And we'll talk about how to install and use different AI coding tools.

1:23So keep in mind that this is a mini-course.

1:26I'll show you that this is part of a series of AI mini-courses.

1:30So we're not going to get really deep into any one topic.

1:34But if you want me to create a course for, let's say, cursor or cloud code, just leave

1:39it in the comments.

1:40We read those comments and those will give us an idea of what courses that you're more

1:44interested in.

1:45This is more of a mini-course where we explore all of the different software, how they work,

1:51This is a mini crash course on prompt engineering as it applies to programming.

1:56We're not going to learn about programming in general.

1:59I have a course on VibeCoding instead.

2:02I'll show you that in the next slide.

2:04And there are no tutorials on how to build AI chatbots.

2:07So I did use the word agentic, which is agents, AI agents, but we're not building those.

2:13We're going to use existing programming AI agent tools.

2:17Again, we're not going to use APIs in this course because this is a mini-course.

2:22But if you want to go deeper into any one of these and include APIs, please let us know

2:27in the comments.

2:28So when I refer to APIs, I mean, we're not going to use computer to computer connections

2:32to perform any kind of AI programming other than that built into tools like Cursor or

2:40GitHub Copilot and so on.

2:42And like I said, this course is part of an AI mini-series.

2:46And this is the course that we're on now.

2:48However, if you don't have any programming experience, I definitely recommend the AI

2:54VibeCoding and Security course.

2:56Here's why.

2:57First of all, if you don't have any programming experience, you can ask ChatGPT to give you

3:02code and you can paste it somewhere or execute it and create a game.

3:08And some people are actually creating businesses doing this process because, well, you have

3:13business ideas, you maybe have great ideas, but you don't know how to program.

3:18And VibeCoding allows you to ask the agent or the AI tool to program for you.

3:24When you do that, there are a bunch of security issues that come up and that's what we're

3:28going to address here.

3:29It's like a crash course on how to do VibeCoding safely.

3:32And here, this is for software engineers or people that have a programming background.

3:37Let's say you finish this course.

3:39This is a good next course to take.

3:41But if you're a software engineer or you have a programming background, this is a good

3:45course to learn how to use the different tools like ChatGPT, Cursor, Clod, Copilot.

3:52And one quick caveat, ChatGPT, we don't really use that for agentic coding, but it does have

3:58a purpose and we're going to use it to learn different concepts.

4:02But ultimately, it's not for agentic programming.

4:05It's more for planning.

4:06More on that in the course.

4:08And so what are all these other courses?

4:11So here, prompt engineering is directly tied to this course.

4:14I'm going to give you a quick crash course in prompt engineering as it applies to programming.

4:20But I highly recommend taking this course because we all talk to the chatbot in different

4:25capacities.

4:26It's not always for programming.

4:28And when you do that, it will hallucinate, make things up and drift.

4:32If you don't know how to talk to it, then it makes it a lot more difficult.

4:36And in this first skill, we're going to talk about AI programmatically and explain the

4:41different types of software and give you a working mental model of how AI works, which

4:46lays the foundation for prompt engineering.

4:49But I will give you a crash course here in case you already have a little bit of a background.

4:54And if you already know prompt engineering, you can go straight to the AI coding tools.

4:58If you're working with Microsoft and you're curious about Microsoft Copilot, which is

5:02different than GitHub Copilot, this is a great course to take.

5:05If you're a business leader or an executive or you want to launch your own AI product,

5:10this is a good one to take as well.

5:11Now here we have two courses that are very similar, but for different audiences.

5:16AI compliance, privacy and copyright is a very important subject.

5:21And this is the technical version here for developers.

5:24And this is for a non-technical audience, HR, legal and IT.

5:28And finally, we have AI for productivity.

5:31This is for anybody.

5:32And it's very similar to what you might do here, but it's non-tool specific.

5:37So it's tool agnostic.

5:39This one up here, this is all Microsoft.

5:42And a little bit about me.

5:43My name is Jonathan Barrios.

5:45I teach data science, machine learning and deep learning.

5:48And all of this can fit under the umbrella of data science.

5:52But now that we're in 2025, it's really now called AI data science.

5:58I blend data science and AI engineering into one field.

6:02And I've also worked with AI and built software as a service applications, many different

6:07AI applications and even streaming platforms.

6:11Last but not least, I've been teaching for a while at top platforms from Treehouse to

6:15Thinkful and Chegg.

6:17And now I'm happy to be part of the CBT Nuggets team.

6:20And if you want to find me online, you can definitely do so at LinkedIn here at Jonathan-Barrios-AI.

6:27And my website where I occasionally publish different posts.

6:31There's one there on vibe coding, if you want to read that.

6:34And this is an important one.

6:36People have mixed feelings about X.

6:38The reason that I'm there is because that's where the AI community is.

6:42If you don't want to sign up for a newsletter to keep up with all of the developments in

6:46AI, XAI is a really easy way to do that.

6:49Furthermore, you can directly communicate with the greatest minds in AI directly on

6:54this platform.

6:55I do not like social media personally.

6:57I don't use it.

6:59However, in this case, it's kind of working well.

7:03So the way that I do this is I follow only people that talk about AI and then I ignore

7:07everybody else.

7:08That's the way that I do it.

7:10And if you want to follow me, I promise it's about AI data science.

7:14And that's my handle, AI underscore data underscore science at X.com.

7:19All right.

7:20Now, moving on to our first skill here.

7:23We're going to zoom out and look at AI as a whole.

7:27And we're going to think of it in terms of software, meaning what is AI programmatically.

7:32We'll discuss different types of software.

7:34First, we'll explore what is AI because it's not one thing.

7:40Many people think that it's the chat bot.

7:42That's actually generative AI and that's just one subdomain in AI.

7:47So if that's what you think, then this is going to be very illuminating.

7:50But if you have a good handle on this, then it might be interesting to learn about the

7:54different types of software.

7:56For example, software 1.0, 2.0 and 3.0.

8:011.0 is traditional.

8:03This is machine learning and deep learning, and this is generative AI.

8:07And there's a good reason why I explain it this way.

8:10In short, we're framing it this way to keep you from overcomplicating things.

8:15There are many tasks that still belong to traditional programming.

8:19These are simple rules, but here we're going to build a deep neural network in this skill.

8:24And these are models that you build.

8:25This is machine learning and deep learning.

8:28And here, this is when we talk to a chat bot.

8:31That's generative AI.

8:32And that's what we use for agentic programming, right?

8:36We're using an AI agent, a chat bot, to do programming together using some kind of a tool.

8:42And then we'll talk about guardrails.

8:44Now prompt engineering, just the idea about human in the loop.

8:49AI can't do it by itself.

8:50It needs us right now.

8:52And this is a very important concept.

8:54And we can use this as a safety guardrail.

8:57And then finally, we have a challenge.

8:59These challenge sections are for you to test your knowledge, meaning identify any knowledge

9:05gaps before moving forward.

9:07That way, every successive skill will make sense and you'll get the most out of it.

9:12Let's say that you already know what AI is.

9:14You know what software 1.0, 2.0 and 3.0 is.

9:18And furthermore, you know prompt engineering, well, you can just skip those sections, right?

9:23Definitely take the challenge to see if you understand that skill.

9:26And if you do, move on to the next one.

9:28And that's totally fine.

9:30Here's why.

9:31I made this very accessible.

9:33So you could be a beginner or you could be intermediate or advanced.

9:36It really depends on where you're coming from.

9:39So if you just need to learn those tools, then the last three skills are going to be

9:44just for you.

9:45If you need to ramp up to those first three skills, I've included what is AI programmatically,

9:51prompt engineering, and then some fundamentals and how to use chat GPT for development.

9:56Definitely don't use it for code.

9:58We'll talk about that in the third skill.

10:00So that should give you an idea of what we're going to do in this skill.

10:03And I'll see you in this very first video here.

10:06What is AI?

What is AI?

0:00Welcome back. In this video, we're really just answering the question,

0:03what is artificial intelligence? And like I said before, if this is something that's

0:08familiar to you, then go ahead and skip to the next video. Here's how I like to talk about

0:14artificial intelligence. First of all, it's not all chatbots. It might seem like that.

0:19This is just one slice of generative AI is this one slice, but there's many others.

0:24And artificial intelligence, it's really just the umbrella term. It's the box that contains

0:30all of the different kinds. So the first subdomain of AI is machine learning.

0:34There are older versions that are rule-based. These are expert systems where an expert would

0:41give their knowledge and create a knowledge base, and they would use that with the AI tool. So as a

0:48rule-based AI, it's very early AI, but it's not the same as machine learning. Machine learning

0:54and deep learning is when the models start to learn from the data on their own without an expert.

1:01So we're not going to talk about expert AI, it's an older form of AI, but the first official domain

1:06for our example is machine learning. And these are really just algorithms, right? This is where

1:12the model can learn from the data. So far, we talked about rules, search. These are the older

1:19forms of AI. And here's machine learning, and now we have deep learning. So deep learning also

1:25learns from data. And the difference here is that machine learning really has to do with algorithms.

1:30That's how it learns from data. And there's these different learning styles such as supervised,

1:35self-supervised, and unsupervised, also reinforcement learning. So these apply to

1:40both machine learning and deep learning. So whenever it says learning, there's some kind

1:45of learning. But what's special about deep learning is that it's software modeled after

1:50the brain. So you might hear terms like deep neural networks. Well, that's what we have in

1:55our brains. And this is software that's written to work using these neurons. So neurons will either

2:03push information forward or they won't. So we use software to write artificial neurons,

2:09connect them together in a big network in a very simplistic way. You can think of that as

2:15deep learning. The takeaway I would say is that it's software modeled after the brain,

2:20not necessarily algorithms. All right. So now we see that these two, machine learning and deep

2:26learning, are learning from the data and how deep learning is modeled after the human brain

2:32using those neural networks. And then we have generative AI. So generative AI is actually built

2:39using deep learning. And these are the chatbots that you see whenever we create images or videos

2:46or audios. These are all deep neural networks built with deep learning. But they are under the

2:52hood. So the difference is that deep learning will make some kind of prediction. But you can

2:58use deep learning to create a generative AI tool that is really good at predicting the next token.

3:04And a token is a word chunk. So like info, armation, so information, or maybe another word

3:10like D and lux. Those are two tokens. So these are word chunks. So it can predict word chunks

3:17so well that that's what it's doing when you're typing into a chatbot. It's literally completing

3:22the next token. And that's a whole type of AI called generative AI. It can do that with pixels.

3:29It can do that with audio, and so on. So what do we get? We get all these modalities from all

3:35of the different subdomains of AI, such as vision models, speech, natural language processing,

3:42computer vision, recommendation engines, robotics, and more. Now we can say that the different kinds

3:48of AI, including machine learning, deep learning, and generative AI, work together to bring us all

3:56of these use cases. So facial recognition, this is using computer vision. And computer vision is

4:02also used for self-driving cars. You can see that it's identifying every object here, car, tree,

4:09person, sign. And here, it's focused to faces. But these are both vision models. Again, these are

4:16built with deep learning. And robotics might be a combination of machine learning and deep learning.

4:22Same thing here. When you're working with intelligent document processing, this might

4:26also include generative AI on top of machine learning or deep learning. It really depends

4:32on how you're using them. And fraud detection could be machine learning. That is a classic

4:37machine learning problem. But it can also be augmented, depending on the case, with deep

4:42learning. So the takeaway is that AI is definitely not one thing. It's different things. But I don't

4:48want to overcomplicate things. Because when you think of this, and you're thinking in the terms of

4:54programming, how is this really helpful if you're not going to be building these things?

4:58There's a much better way to understand AI and those subdomains by looking at it

5:04programmatically. And that's what we're going to do in the next video.

What is Software 1.0, 2.0, and 3.0?

0:00Welcome back. Now we're going to shift some gears and talk about software and three types of

0:06software. If you don't know Andrej Karpathy, definitely follow this person on X because

0:13they are directly responsible for building a lot of 3.0 and improving 2.0. They worked with

0:20ChatGPT at the very beginning and OpenAI and has contributed across the board. And this is a great

0:27mental model that I learned from Andrej Karpathy by following him on X and then seeing this video

0:34of a talk. So you get to see all of these talks and he posts a lot of really great stuff. And so

0:40this, I thought, wow, this is a great way to explain a lot about what AI is because you're

0:46not bogged down by all of the subdomains and the complexities that come with each one because they

0:53are in depth. They're not very easy to understand conceptually by their titles. But when you think

0:59of it this way, it really opens up doors. Let me show you what I mean. Software 1.0, as we discussed,

1:06you might do in a terminal or an IDE. And this is where you program. And these programs are basically

1:13rules that you write by hand, by typing. It's some kind of program or code that you write and then

1:20you get this behavior. Think of it like this. In software 1.0, the logic lives in the code that

1:26you write. If this, then that. And the key word here is deterministic, meaning that you're going

1:33to get the same output. Even if you're doing something with a random generator, you're still

1:38going to get the same random output every time. Right. If you're saying one plus one is two,

1:43you're always going to get two or whatever that output is, depending on how you write that

1:48numeric data type. It really depends on programming languages. But the key here is

1:53deterministic means you're always going to get that same answer. It's not just going to start

1:58to guess and go off course and drift and hallucinate. That's 3.0. We'll talk more about that.

2:04So software 1.0 is easy to test and it's great for clear choices. Think about routing a ticket

2:12after 24 hours or blocking logins after five failed attempts. You could clearly write that

2:19in software 1.0. But what is software 2.0? Here you're writing the code, but the decision logic

2:27is learned from examples. And we'll talk about this in depth. These are rules that are built

2:32with weights in the deep neural networks. So here you can see this is software modeled after the

2:38brain. We're more talking about deep learning, but this also includes machine learning because

2:43they both learn from the data or examples. You give the system labeled past data, meaning

2:50historical data, and then it learns some kind of mapping, right? Using weights. How important is

2:56one piece of data or one shape or one token in the context of the output of the goal?

3:03So you train it, you can also fine tune it, and then you get this output. But it's learning from

3:08this training data. And this is perfect for estimating priority one through five or spotting

3:15churn, computer vision, or robotics. Meaning you can pass it a bunch of videos of driving and then

3:22the model can learn what driving is. It can identify objects and also know when to go left or right.

3:30So here's how it works. The photons go into the camera and then it turns that into a driving

3:36action. So that's an end-to-end machine learning model. You can call it more specifically deep

3:42learning or you can say it's computer vision. You see what I mean? We can get lost on these labels,

3:47but what's happening is that it's predicting the action based on what it sees. So it's learning

3:52from the training data. That's how it learns how to do that. I promise this is going to be really

3:57simple by the end of the scale, because I'm going to show you demos for each one, especially this,

4:02we're going to build our own classifier, meaning we're going to use a hot dog and a hamburger and

4:09create a bunch of training data. And we're going to build our own deep learning model without code,

4:13because it's easier to just understand, okay, we created this label data, we train the model,

4:20and then we were able to show it a picture. And it was able to identify it make a prediction on what

4:25it was looking at, which is simpler to computer vision. So that will be totally clear by the end

4:30of this scale. And then we have 3.0. And we're really working with prompts. And that's the meat

4:37and potatoes of this course. So what we're doing is we're steering the behavior. So we're steering

4:44this 2.0 model to get an output. Think of it like this, instead of hand coding every step,

4:51or instead of training a model using training data, you simply describe the role, the goal and

4:58constraints, or you just talk to it in plain English or plain language. And then the model

5:03gives you an answer that could be text code, a plan, and now images and audio and video,

5:11and then you can review it. This is exactly why we're going to use agent decoding. This is where

5:16agent decoding lives in software 3.0. You combine prompts with tools like search tests and linters,

5:25and then we have to add check. So we know that the model is correct. And the reason is it

5:30hallucinates. But the hallucination comes from the fact that people talk to these generative AI models,

5:37like they're talking to a human. And when you do that, that's where things go south, because it's

5:42not a human. You have to understand how it learns, and that's what we're going to learn in software 2.0.

5:48We're going to understand how these 3.0 models are built. And when you know that, you can literally

5:55program using plain language. So 3.0 is the hottest new programming language, English. And that's a

6:03quote from Henry Karpathy, because 3.0 just uses plain language to get an output. Whereas 2.0,

6:10you have to write a lot of code, train models, get training data, and then train the model, and then

6:15optimize the model, and then you get an output. But that's a lot of work. With software 3.0,

6:20you do it in plain language, which might seem super easy, but that's a trap. You need to program

6:28in plain language, and that's why I'm explaining it this way. Think of 3.0 as a co-pilot that

6:34generates code, and you decide whether to accept it or not. And if you're asking, well, how do we

6:40program in plain language? Well, that's prompt engineering, and we're going to talk about CRE,

6:45shots, constraints, and retrieve snippets. These are called facts. And this is how we program in

6:53plain language. So not just English, that's what we're going to do in this scale, but it can be

6:57many different languages. All right, so now we know what software 3.0 is. And to review,

7:04software 1.0 is traditional programming. If you go into a programming software or an IDE, like

7:10Google Colab, Visual Studio Code, and you type one plus one, and you're working with Python,

7:18it's going to give you the integer two. And no matter how many times you run that, you're going

7:22to get two. One plus one is two, right? You can say print hello world, and you're always going to

7:28get hello world, however it was written in that print statement. Software 2.0, that's when we get

7:33into these, hamburgers and hot dogs. We create a bunch of training, and then it learns from the

7:40training data that's labeled, meaning a bunch of pictures of hamburger, but they're labeled

7:46hamburger. And then here, they're labeled hot dog. It knows this is a hot dog because we labeled

7:51them. I'm going to show you how to do that. And after it sees n number of training data, it learns,

7:58it starts to make predictions to get more and more accurate. So depending on the quality of the data

8:04and the number of samples, that's how good it can make a prediction. I'll show you how that works.

8:09And finally, 3.0, we program in plain language using prompt engineering. That's what we're going

8:14to do in the next skill. We're really going to do a micro version of prompt engineering,

8:19which is actually a course, right? So I would definitely recommend taking that prompt engineering

8:24course to learn how to speak to the model using plain language. And then we can apply it here

8:30to agent decoding to get exactly what we want from our models. All right. On that note,

8:36I will see you in the next video where we take a look at software 1.0.

Software 1.0

0:00In this video, we're going to write the rules, meaning we're working with software 1.0.

0:05Rules by hand, which is really programming or code that then gives us the behavior that

0:11we're looking for.

0:12This is going to be fast, clear, and easy to build.

0:15After you extract the text from an image, and in this demo, we're going to identify

0:20whether a document image is either an invoice or a receipt.

0:26After you extract the text from the image using OCR, OCR is optical character recognition,

0:34so we're taking the image and then turning it into text using OCR, then we can scan for

0:39high signal words like invoice or receipt.

0:44If those appear, then you can return a label with near zero ambiguity, meaning software

0:501.0 is perfect when accuracy needs to be predictable and testable.

0:56You can do unit tests, you can use a code review in five minutes, and ultimately, you

1:01can ship it with high confidence because we're using explicit rules.

1:05There's no learning.

1:07When the learning happens, well, guess what?

1:09Sometimes we make mistakes and so do the models.

1:11If you want to change the behavior, you simply edit the code.

1:14We could create a greeting based on the hour, but I think this example is going to be a

1:18little bit more fun.

1:19All right, so let's do this in Google Colab.

1:22Since I'm really in the data science field or now called AI data science, this is a common

1:28tool that we use.

1:30If you're more familiar with an integrated development environment, this is very similar,

1:34but I have access to GPUs in Google by using this and it's for free.

1:39You can also use AI, but I don't necessarily use the AI here.

1:43I just use this as a programming environment that has all the packages and libraries and

1:49free GPU access that I need.

1:51But don't worry, we are going to get into cursor and Visual Studio code so that we can

1:57access GitHub Copilot and we'll also take a look at Cloud Code.

2:02Those are the tools that you're going to want to use for agentic coding.

2:05This is just really good for demoing and teaching and then saying, look, here's software 1.0.

2:11Let's build it together.

2:12I can just hit shift enter and it executes.

2:14So it's really great.

2:15If you've never seen this before, definitely worth checking out and adding to your wheelhouse

2:20of development environments.

2:22So first we want to state the rule in plain English.

2:25Okay, so let's create a function.

2:27We're going to create a function called label doc, and then inside it's going to take in

2:31an OCR text, which is going to be a string and the output is also going to be a string.

2:36I've been watching too many Lord of the Rings.

2:38I've spelt it orc.

2:39So it's OCR.

2:40So I changed it here and here.

2:42I spelt it orc twice.

2:44So what we're doing here is just turning it, turning that text into lowercase so that we

2:49can scan it.

2:50And then now we have, if this, then that this is classic 1.0.

2:54If you find the word invoice in the text, then return the string invoice.

3:01And then we've successfully classified that this image is now an invoice.

3:06Okay.

3:07And this is all programmatic.

3:08When we use OCR, that is programmatic.

3:11It's not using images that are labeled like we do when we're working with 2.0 and feeding

3:16it training data.

3:18But we need to also handle the receipts.

3:20So we can say the same thing, meaning if receipt is in the text, then return receipt.

3:25However, if we don't find it, we return unknown.

3:29As you can see, these are very simple rules.

3:33You could say, well, you're using plain language.

3:35It's not plain language.

3:37I'm using plain language right now.

3:39This is human interpretable language, which is a programming language.

3:43It's pretty close.

3:44And I totally get it, especially with Python.

3:47It's kind of like almost plain language.

3:49So I totally get that train of thought.

3:51But really, this is programming language for humans so that we can translate this into

3:56a type of language that gets really granular into zeros and ones.

4:02That's what the machine understands.

4:04So we're not going to type in binary and zeros and ones, but instead we use this programming

4:08language.

4:09So it's a nice little translator, right?

4:11When we get to 3.0, there's no translator.

4:14You're just using plain language.

4:16And that's why you need prompt engineering, because you might just start talking to it

4:20like a human.

4:21And here, let's go ahead and run this.

4:23Since it's a function, it doesn't do anything.

4:25But first it has to connect, and then it runs.

4:27As you can see, in zero seconds, nothing happened.

4:29Right.

4:30So here I created three examples.

4:32So invoice, receipt, and unknown.

4:34We want to scan this to see if this works.

4:36We don't know if it works yet.

4:37This is a test invoice.

4:38It is labeled invoice.

4:41So here I just use an F string to return what was inside.

4:44And we can see that it clearly has the word invoice that was turned into lowercase.

4:48And then we were able to say, OK, return invoice.

4:52So this is always going to be deterministic.

4:55By that I mean, if I run this, I run this, and I run this, no matter how many times I

4:59do it, we're going to get the same output.

5:01All right.

5:02So that's it for software 1.0.

5:03If you already knew what it was, then definitely feel free to skip these videos to match what

5:08you know.

5:09But you may not know what deep learning is, and you may not know what a neural network

5:13is, or how to train a model.

5:15And that's what we're going to do in the next video with our hot dog and hamburger labeled

5:20training data.

5:21See you there.

Software 2.0

0:00Welcome back. In this video, it's all about software 2.0. These are rules that are in weights.

0:07Think of it like this. So we have an input, and then we have an output. And these are neurons,

0:13artificial neurons that are interconnected, and they create these neural connections. And this

0:18is a neural network. So let's say we give it a picture of a hot dog, a bunch of them, right?

0:23So we give them a bunch of different pictures, and maybe we do a hamburger. And then here,

0:28it's going to predict hot dog. And so each one of these neurons has a weight. So how important is

0:35this feature or this part of the model, this part of the information that relates to the input,

0:41that's going to now relate to the output. So we create weights. And you might've heard that

0:46in these different companies, and you might've heard that term, like we don't publish our weights

0:52or what is an open source. So OpenAI was supposed to be an open source company, but it's not.

0:59So it's kind of confusing. After it was founded, they kind of changed their mind. They're like,

1:03okay, we can't do this. But if it was OpenAI, then the weights, we would have access to these weights.

1:09If you want to find models that are open source, then you might want to go to HuggingFace.

1:14That's an open source platform with open source models. So OpenAI is not open source,

1:20even though open is in the name for that very reason. And you will see them on X and different

1:25platforms talking about their weights. So that's what they're talking about. And we're going to

1:29create our own tiny classifier using teachable machines. So no code in this case, and we're

1:34going to collect 20 to 50, maybe even a hundred samples per class. And if you don't have a

1:39hamburger and hot dog, you can use your hand and you can just simply do like one or two,

1:45and you can create class one, class two using that. Let me show you what I mean. But first

1:51we need to know that we're training, and then we get this preview for live classification.

1:56And the takeaway here is a software 2.0 learns from data or learns from examples and the weights

2:02change during training. So it gets better and better and better. And it gets all the weights

2:08that are in each one of these neurons just right so that it can classify live with a high degree

2:15of accuracy. All right. So here is software 1.0 and here is software 2.0. We're going to do this

2:21with teachable machine and then click on, get started. And we're going to do an image project,

2:26but you could also do audio or poses, but keep in mind that images and poses are pretty similar.

2:32This one just uses a video camera webcam to continuously take images to, to see what pose

2:39that you're in using these little dots. But the image project is taking the webcam and then

2:44turning them into individual still frames. So they're very similar. And what might not be totally

2:50obvious is that audio also uses images. It's not like listening to the sound. It turns the sound

2:56into these visual representations of sound, and then does the same thing with images. So they're

3:01really all three are very similar. We're going to click on standard image model. And here we have

3:07two classes. I'm going to add another one. I'll explain why. Actually, let me do that after the

3:12fact so you can see why. So here, hot dog here, hamburger. But if you don't have these, you can

3:18easily say one and two and just use your hand to create those images, right? Just pointing one and

3:26two. Now we need to create training samples. I'm going to click on webcam and I cropped it so that

3:31we can just hold this up, get a good visual of the hot dog. So now I'm just going to hold this down

3:38and make sure that I get a hand 100 samples. OK, 105. That's fine. Now let's do the same for

3:44hamburger. All right. So let's try this. Let me get it there. All right. And move back just a little

3:49bit. Whoops, I've got too much. Let me try that again. OK, so let's make sure that we get about

3:55105. Perfect. You might be asking, well, why did you do 105? Exactly. Well, if you have too much

4:02of hot dog, it's going to prefer this. And that's bias. So training data can easily introduce bias

4:08if you have a lot of hot dog images, but very few of hamburger. Now what we need to do is train our

4:14model. If you look at learning rate, all of this stuff, this is the stuff that we do programmatically

4:19and I teach courses on deep learning and we do this all in Python, writing it all out. But here

4:24you can just like click on it, but we're going to leave these defaults. But I wanted to show you

4:28that this is what's happening behind the scenes. So now we can just say train the model and then

4:33it'll prepare that training data and pass it through the neural networks multiple times.

4:39So here it's like, whoa, that was very quick. All right. So I'm not a hamburger. If I move out

4:44of the way, you can still see it doesn't know what it's doing. And that's because we haven't

4:48given it. It's not fair. So let me crop this first. OK, now that I've cropped it, it's like,

4:52oh, the background is a hamburger. So we need a background class. I'm going to say here background

4:57or say nothing. Right. Maybe background is more semantic. And now I need a hundred samples. Let

5:03me move out of the way and I'm going to do one hundred and five samples of the background.

5:08Perfect. And now I'm going to close the webcam and then train the model again.

5:13We've just changed the training data. So now we're going to remove bias or, in fact,

5:19not necessarily remove bias, but we're going to add more training data so that we get a better

5:24model. And now you can see that it's predicting that this is a background. One hundred percent.

5:28If I go here, it thinks I'm a hot dog. I'm not a hot dog, but, you know, we're not trying to

5:33classify a human face. That would be facial recognition. So let's try it. Let's go over here

5:38and look at that even just a little bit. It knows this way, that way, every shape, even this way,

5:45no matter which way that I point it is like that is a hamburger. Now let's try a hot dog

5:50immediately because it's a cute hot dog. It knows immediately that it is. Let's see if we can go down

5:56here. Yeah, it's pretty accurate. So it knows that it's a hot dog. And so if I go back in here, it

6:01thinks that I'm a hot dog. I'm not a hot dog. But that's biased because we don't have any images of

6:06me and it's not trained to classify a human. You can also export this and you can see a little bit

6:12of code here. But this is TensorFlow for JavaScript. And here's TensorFlow. I have a course on this if

6:17you're interested in taking it and learning how to do this from scratch. You can also download the

6:23model and there's TensorFlow Lite if you want to put this on a mobile application like Android

6:28and so on. And that's software 2.0. As you can see, it's totally different than software 1.0 where

6:34we do all of this. In fact, we can create a classifier using Python like this to create a 2.0

6:41model. But the difference is that even though I am using Python and code, I'm creating training

6:48images and then feeding them into the model. And then the model learns from that data. So even if

6:54you use programming languages for 1.0 and 2.0, the distinction is here, there's no learning. We told

7:02it to go lowercase, scan the word invoice. And if you find that lowercase invoice, then say this.

7:10If X, then Y. When we did this for teachable machine, even though I may be using code like this,

7:16I'm still feeding training data like hamburger and hot dog images to the model. And then the model

7:23learns. So I could go over here and go here and then download all those samples here and here.

7:30So this might be a cool way to like just use this to create samples. And then you can go over here

7:35and then write from scratch a TensorFlow computer vision model using whatever you wanted to do. You

7:42could use convolutional neural networks, recurrent neural networks, and then pass all that data in

7:47here. And then you would get the same behavior. It would be able to classify the hot dog just like

7:53this. But instead of that way, we would do it programmatically and just give it one image and

7:57say, what image is this? And it would say hot dog. And finally, we have software 3.0 in the next

8:03video. See you there.

Software 3.0

0:00This video is about software 3.0, meaning prompts as plain language programming.

0:06So we're programming in English, but it can be in plain language and many different languages.

0:11So what we're going to do is solve the same problem that we did before with hamburger

0:16and hot dog, but this time we're just going to say, hey, chat GPT.

0:20What is this image?

0:21And it's going to just clearly know that it's a hot dog, like there's no way that it's not

0:25going to know that it's a hot dog.

0:27The reason is it's been trained with way more hot dog and hamburger images than we fed it

0:32in that simple model that we did.

0:34It's using like a gigantic amount of training data.

0:37It's a very powerful model, but it's a general model.

0:40It knows a little bit about everything or a lot about everything really, but that's

0:45why it makes stuff up and guesses and gets confused.

0:49And that's why prompt engineering is so important with the hot dog and hamburger.

0:53All it knows is hot dog and hamburger.

0:56If you give it something else, it's just going to be like, I don't know.

0:59So we could have added another class.

1:01If it said, if it doesn't find a hot dog or hamburger, it could say, I don't know, instead

1:05of the unknown background, right?

1:07It could just be like, I don't know what this is because I'm not trained on it, but it's

1:10really good at classifying a hot dog and hamburger because that's all it knows.

1:15And you can take these software 3.0 models and fine tune them.

1:19So they're really good.

1:20You can give it a bunch more data on specific tasks, and then it becomes a specialist.

1:26But you can also do that by telling it, I want you to act like a Python programmer that

1:32is careful and that does testing.

1:35The minute you do that, you are steering that model to become a specialist just through

1:39English.

1:40And that's the power of software 3.0 on real quick.

1:44Why am I saying software?

1:45You can use an API and create a website that uses an API and people could talk to a specialist.

1:52So like I could create a model that's a guitar instructor, for example, and then you could

1:58have a lesson with it.

1:59I could even train it on my face and my language or the way that I speak and then teach guitar

2:04lessons like that.

2:06That's something that people are sort of doing.

2:08There's a lot of content on X where it's not even the person, but they say, this is the

2:13AI version of myself.

2:15But I do read the comments.

2:16So all of this stuff is pretty wild.

2:19So the essence of software 3.0 is that you program using these prompts.

2:24But while 3.0 is fast and flexible because you're using prompts and plain language, it's

2:31not a substitute for verification, meaning you have to make sure that it is accurate

2:35because it's prone to hallucinating or making things up and guessing.

2:40So always treat that output as a draft because what we're doing at runtime is steering that

2:45behavior.

2:46So when you're steering, you don't have complete control.

2:49So these prompts equals runtime instructions that are in plain language.

2:53You're not actually changing the weights, but they condition the behavior in the context.

2:58So if you give it a role, it's going to be steered into that very narrow area of data.

3:05And you can do this with constraints and examples as well.

3:08And you can also keep facts in the excerpts.

3:11So this is prompt engineering and you can use style and format to steer that model.

3:16And the goal here is shorter, steadier and paste ready outputs.

3:20If you worked with chat GPT or other models like Grok or Claude, you know that maybe you

3:26need to do this a few times.

3:27You're not going to get exactly what you want the first time.

3:30That's very common.

3:31If you do prompt engineering, you can get it on the first try because you understand

3:36how they were trained.

3:37And that understanding is I'm not just speaking to a human, I'm programming in English or

3:42whatever plain language you're using.

3:44And when you know that you're applying prompt engineering.

3:47So we're not doing software 1.0.

3:50And here we built our model without using code, which you could do.

3:54The difference is that here there's no training data.

3:57And if you're using a 2.0 model, you'd use training data, even if you're using Python.

4:01And this is clearly training data.

4:03But now here is software 3.0.

4:06So I'm going to go over here and I'm going to download all these samples.

4:10And now I'm going to upload it here into chat GPT.

4:12All right.

4:13So here's the hot dog.

4:14So this is programming in plain language.

4:16We're going to do this in the next skill.

4:18That's prompt engineering.

4:19And this is CRE context role expectation.

4:23So here it's food food classification.

4:25And here I'm going to say you are a hot dog hamburger classifier output either hot dog

4:32or hamburger.

4:33And then I'm going to add security here.

4:36So I don't want it to make something up.

4:37OK.

4:38So let's try this out.

4:39Scroll down.

4:40Well, I'm going to have to hit shift.

4:41Enter.

4:42Let me make this smaller.

4:43I just made it a little bit bigger so you could see it.

4:45But now you can see the little arrow and I'm going to click on that hot dog.

4:48And now we've got the same output that we got here.

4:52This hot dog 100 percent.

4:54And if you look at this, this looks kind of like programming.

4:57And that's the idea of prompt engineering.

4:59When you do this, you'll get the exact output that you want.

5:02And when you're building applications or you use somebody's application and they have an

5:05API in the background that's talking to chat, GBT, Grog, Claude or all these providers of

5:12these models, they do this because otherwise you can ask it some weird question and get

5:17a weird output that has nothing to do with the application.

5:20So it wouldn't be very useful.

5:22So prompt engineering is how you build those products.

Challenge 🎉

0:00We have a short challenge just to make sure that you don't have any knowledge gaps.

0:04And the way that this works is that we need all this information to be solid before moving on to

0:09the next skill. And if you feel like you had this totally covered, then take the challenge just to

0:14make sure that you have all of these. And if there's any missing gaps, then go ahead and

0:19review the appropriate video and then move on to the next skill. But if the next skill for

0:23prompt engineering is something that you also know, skip to the challenge and just make sure that you

0:28have all of those knowledge gaps covered and then move on to the next skill. And as a reminder,

0:33this course is part of the AI mini series. And this is where we are now. If you felt this was

0:39a little bit too complicated because you don't have a programming background, you're new to

0:44programming or never programmed. I would highly suggest taking this skill just to make sure

0:49that this is a good next fit. If you do have a programming background, this is a great place for

0:54you. But I would also suggest AI prompt engineering to go deeper into prompt engineering.

1:00This is a fun skill and you'll learn a lot of foundational knowledge that will be covered here.

1:05And we can't get really deep into any of these subjects, even all of these cool tools, because

1:10this is a mini course. So if you want this to be a full course on cursor or a full course on, let's

1:18say, Cloud Code or GitHub Copilot, just let us know in the comments because we read those. And

1:24the more suggestions that we get, the feedback that we get, that gives us the data that we need

1:29in order to create these courses. And until next time, I hope this has been informative. And I'd

1:33like to thank you for viewing. Transcribed by https://otter.ai

What's next?

Ready to keep going?

For your team

Bring this training to your team

See how CBT Nuggets helps IT teams close skills gaps, hit compliance targets, and prove training ROI.

Request a Demo

Just need Agentic Coding? Enroll from $300/yr (6 skills)

Request a Demo