1
00:00:04.030 --> 00:00:24.489
Axcel ILT: Hi, everybody, and thank you so much for attending today's webinar using AI tools to code in python. I'm here with my colleague, Chris Pennic, and if you have not had a class or a webinar with Chris before you are in for a treat. He's a great presenter, with very deep knowledge, and we'll be starting in just a moment.
2
00:00:27.302 --> 00:00:44.430
Axcel ILT: Just want to welcome you on behalf of excel. Ilt instructor led training and in case you didn't know, accelerate, exit certified and web age solutions. We're all part of excel and combined. We have over 60 years of it, training experience to bring you
3
00:00:44.840 --> 00:01:05.150
Axcel ILT: customize training courses for teams with accelerate vendor, authorized certification courses with exit certified and upscaling programs with web H solutions. And we all teach a variety of technologies, including data, science, python, agile cloud technologies, Microsoft, vmware devops.
4
00:01:05.480 --> 00:01:08.609
Axcel ILT: data engineering and a whole lot more.
5
00:01:10.063 --> 00:01:27.530
Axcel ILT: And we've got great instructors, including Chris. And so, if I I know it, says, meet Chris panic. You possibly have met him before. But if not, just to let you know Chris is the director, of courseware design and instruction. He's got over 30 years of training experience in the it industry
6
00:01:27.983 --> 00:01:43.050
Axcel ILT: and he's in a very experienced instructor with deep world knowledge of python for data, science, aiml devops, and more so, he's probably the perfect person to be delivering this coding with AI Webinar
7
00:01:43.530 --> 00:01:45.450
Axcel ILT: and speaking of coding
8
00:01:45.770 --> 00:02:01.500
Axcel ILT: with AI just to let you know we do have a great intro to github co-pilot training course. We and we've got a virtual course for individuals coming up June 17.th It's 1 day live hands on, but if you do have a team we can.
9
00:02:01.550 --> 00:02:14.510
Axcel ILT: We can train your team privately and customize the class. You know, for whatever your needs should be. Okay. So I will put that URL in the chat. Once Chris gets underway with maybe a couple of other add on
10
00:02:14.530 --> 00:02:20.709
Axcel ILT: courses. If you're interested. You know, today's really just a a 1 h snapshot. Our classes are all hands on.
11
00:02:20.750 --> 00:02:24.599
Axcel ILT: Okay, so with that. Let me go ahead and stop my share.
12
00:02:26.030 --> 00:02:29.339
Axcel ILT: And, Chris, I will turn this to you.
13
00:02:29.600 --> 00:02:34.315
Chris Penick: Okay, hey, everybody. Let me grab the screen here and get started. I'm gonna
14
00:02:35.250 --> 00:02:39.552
Chris Penick: talk a few things. I was just discussing how
15
00:02:40.670 --> 00:02:49.114
Chris Penick: This is just a lot of demo, a lot of talk and a lot of trying thing. Not so much talk. Sorry, you know, and I'm working. Live. So we'll see what happens.
16
00:02:49.390 --> 00:02:54.009
Chris Penick: if anything can, you know, to err as human. But to really mess things up takes a computer.
17
00:02:54.140 --> 00:03:00.130
Chris Penick: right? So I want to talk about a few things before we go in here. We're gonna focus
18
00:03:00.640 --> 00:03:01.700
Chris Penick: on
19
00:03:01.980 --> 00:03:04.720
Chris Penick: a couple of issues. I mean, of course.
20
00:03:04.860 --> 00:03:10.960
Chris Penick: probably Chat Gpt, right is the big one that most people are familiar with, and I've got my eye on the
21
00:03:11.360 --> 00:03:18.100
Chris Penick: the question and answer there will, you know, I'll try to, if if it's something I can work in as we talk here.
22
00:03:18.373 --> 00:03:26.550
Chris Penick: I will try to answer the questions as we go, but also, you know, we'll I'll save some time for the end to to that. We can discuss all these things and gather through this.
23
00:03:26.680 --> 00:03:30.530
Chris Penick: And hopefully, you can see all this right here. So you've got Openai
24
00:03:31.130 --> 00:03:36.849
Chris Penick: with their chat. Gbt, you've got Gem. And I from Google, right? So you got Google.
25
00:03:37.440 --> 00:03:39.500
Chris Penick: and they've got gem. And I
26
00:03:40.490 --> 00:03:43.090
Chris Penick: anthropic as Claude.
27
00:03:43.210 --> 00:03:46.270
Chris Penick: or actually, we should probably say it with more of a European accent of cloth.
28
00:03:47.128 --> 00:03:49.200
Chris Penick: But yeah, so that
29
00:03:49.290 --> 00:03:53.620
Chris Penick: the the large language models there are tons of them out there.
30
00:03:53.890 --> 00:03:54.990
Chris Penick: And
31
00:03:55.390 --> 00:04:02.520
Chris Penick: for the record, anything I'm doing today, you know, it doesn't have to be python. I'm just using python in particular, because fairly common
32
00:04:02.660 --> 00:04:04.440
Chris Penick: programming language. Most
33
00:04:04.500 --> 00:04:11.319
Chris Penick: a lot of people are familiar with it, or at least, you know, if you don't work with it daily, you know, it's it's simple enough that we can look at it and see what's happening with it here.
34
00:04:12.800 --> 00:04:16.089
Chris Penick: so the 1st set is, you know.
35
00:04:16.110 --> 00:04:17.360
Chris Penick: the models
36
00:04:17.640 --> 00:04:19.020
Chris Penick: that we need to worry about
37
00:04:19.269 --> 00:04:22.130
Chris Penick: the other set of things we need to worry about
38
00:04:23.210 --> 00:04:25.339
Chris Penick: is the language
39
00:04:25.510 --> 00:04:30.240
Chris Penick: which that's actually not too much of a trouble for most of these models because they've been trained on
40
00:04:30.300 --> 00:04:41.550
Chris Penick: Java, Python, Ruby Pearl, Javascript, CC. It's it's amazing what programming languages they they know. Even some obscure ones that I can
41
00:04:41.590 --> 00:04:44.409
Chris Penick: point you to if you if you're really curious on this
42
00:04:44.755 --> 00:04:53.529
Chris Penick: but it varies depending on which model you're using, and whether you're using open ais, or you're in Powershell. Oh, shoot! I can. Yeah, we can get to write Powershell scripts. No problem.
43
00:04:54.147 --> 00:05:02.459
Chris Penick: And we could even try. There you go. And actually I see that there's a chat window going on here, too. So if that come in, let me give you one second. Do a little housekeeping. Let me grab this.
44
00:05:02.730 --> 00:05:05.440
Chris Penick: See if I can throw that somewhere, too. There we go. Okay.
45
00:05:05.670 --> 00:05:06.580
Chris Penick: well, that's
46
00:05:06.830 --> 00:05:08.320
Chris Penick: there we go alright.
47
00:05:09.050 --> 00:05:15.829
Chris Penick: So, Paul, yeah, thanks for the the Powershell. We could do Powershell in here, too. The the thing is so that's
48
00:05:15.860 --> 00:05:20.540
Chris Penick: yeah. The models and the languages. That's the next step. The next piece of this puzzle.
49
00:05:20.730 --> 00:05:23.500
Chris Penick: then, is the tools.
50
00:05:24.140 --> 00:05:26.029
Chris Penick: And in this example
51
00:05:26.450 --> 00:05:29.609
Chris Penick: I chose to work with. Yes, code
52
00:05:30.870 --> 00:05:49.050
Chris Penick: alright, simply because it's, you know. Probably everybody's again. If you're a programmer, you've probably touched Vs code or seen somebody use Vs code, and it's out there in the description. For this I did mention pike charm simply because you know, python people like pye charm from jet brains, saying, folks who do
53
00:05:49.190 --> 00:05:55.730
Chris Penick: you know, if you've used any of the intelligent tools or anything like that. You've been using tools from jet brains
54
00:05:56.077 --> 00:06:03.299
Chris Penick: so I do have it set up here, and it gets further than we could kind of refine this. I guess it's the plugin specifically for those tools.
55
00:06:03.890 --> 00:06:07.350
Chris Penick: So here you can see, I've got copilot
56
00:06:07.400 --> 00:06:09.689
Chris Penick: sitting here ready to go. It's asking me
57
00:06:09.820 --> 00:06:14.439
Chris Penick: and what I actually set up on this. And let's just do this real quick, too.
58
00:06:15.130 --> 00:06:16.719
Chris Penick: We'll hide this for a second.
59
00:06:16.900 --> 00:06:20.669
Chris Penick: I set up multiple profiles on here.
60
00:06:20.950 --> 00:06:23.590
Chris Penick: so that if we want to compare as we go
61
00:06:23.870 --> 00:06:25.300
Chris Penick: codium
62
00:06:25.650 --> 00:06:34.600
Chris Penick: and switch it out, and codium is is another one out there for for you to go in and and work integrate into your id whatever you've got.
63
00:06:35.001 --> 00:06:41.049
Chris Penick: Okay, let's see, I got Cardium. I got tab 9, I think, as I also set up Tab 9, didn't I? Yeah. Tab 9. Okay.
64
00:06:41.360 --> 00:06:54.219
Chris Penick: so and there you go. There's there's a tip for people, too. You might not be aware, Bs code has the ability to switch out the profiles like that. And so that changes the extensions and the settings and everything from one to another. So I'll go back to copilot for now.
65
00:06:54.500 --> 00:06:57.849
Chris Penick: and it turns on everything back on for copilot.
66
00:06:58.360 --> 00:07:00.749
Chris Penick: And just as I say, example.
67
00:07:01.782 --> 00:07:03.790
Chris Penick: whenever we're working with
68
00:07:04.290 --> 00:07:06.059
Chris Penick: these AI tools
69
00:07:06.280 --> 00:07:14.240
Chris Penick: or this? There's it's it's all about the prompting. It's all about the actually. So that's the other one I have in the background, too. One more here.
70
00:07:15.610 --> 00:07:16.669
Chris Penick: I have
71
00:07:16.770 --> 00:07:17.900
Chris Penick: also
72
00:07:18.000 --> 00:07:19.210
Chris Penick: Chat Gbt.
73
00:07:19.860 --> 00:07:25.060
Chris Penick: And some of you may have access to that. Some of you might have. I've worked with organizations that have their own
74
00:07:25.100 --> 00:07:26.600
Chris Penick: very specific.
75
00:07:27.850 --> 00:07:33.689
Chris Penick: My, my favorite one is like I went to someplace, and they had their own insert corporation name here
76
00:07:33.890 --> 00:07:35.010
Chris Penick: Gpt.
77
00:07:35.740 --> 00:07:38.440
Chris Penick: because they had, you know, kind of walled off
78
00:07:38.880 --> 00:07:50.739
Chris Penick: chat built on top of Chat Gbt. From Openai, and then put up a bunch of walls to keep it from going out to the Internet too much about things and understand that, you know, on its own.
79
00:07:50.980 --> 00:08:02.010
Chris Penick: you know, earlier versions. Now, 4 0 does go look out to the outside world can do what we, you know, can retrieve things you might have heard if you're really geeky, might have heard this phrase. Retrieval
80
00:08:02.160 --> 00:08:04.160
Chris Penick: augmented generation
81
00:08:04.460 --> 00:08:11.260
Chris Penick: just means that it can look things up. How's that? It can go and get things to help with it? Generating content for you?
82
00:08:11.851 --> 00:08:14.210
Chris Penick: And the 4 0, model
83
00:08:14.840 --> 00:08:24.560
Chris Penick: for Chat Gbt does do that so you can tell it to go look things up. But earlier models like, if you're stuck at your office and they let you use Gbt. 3.5.
84
00:08:24.880 --> 00:08:27.650
Chris Penick: It has a fixed date on its knowledge.
85
00:08:27.680 --> 00:08:33.620
Chris Penick: It knows up to a certain point, can't really go browse the Internet without a plugin. But that
86
00:08:33.950 --> 00:08:40.030
Chris Penick: I have to be careful saying all this because Sam and crew over at Openai will probably change that in the next 5 min.
87
00:08:40.289 --> 00:08:43.000
Chris Penick: Right? It's a very fast moving thing.
88
00:08:43.120 --> 00:08:43.905
Chris Penick: So
89
00:08:44.890 --> 00:08:48.319
Chris Penick: oh, yeah, yeah, he just yeah. So Ella mixed
90
00:08:48.897 --> 00:08:53.660
Chris Penick: llama. You can build things with Lange chain. I've seen people do some good.
91
00:08:53.730 --> 00:08:57.399
Chris Penick: I haven't had a lot of success personally with Lange chain for coding.
92
00:08:58.357 --> 00:08:59.789
Chris Penick: Right now that
93
00:09:00.320 --> 00:09:06.820
Chris Penick: a lot of it has to do with what it's been trained on. But then, again, you could always work, and I was just talking to a company this morning that we're going to use.
94
00:09:07.370 --> 00:09:10.370
Chris Penick: we might take our training content to
95
00:09:10.510 --> 00:09:16.149
Chris Penick: train their model so that it can answer questions for our instructors and students. Long story.
96
00:09:16.340 --> 00:09:21.069
Chris Penick: anyway. Big, big work in progress there. Alright. So
97
00:09:21.367 --> 00:09:25.910
Chris Penick: let's yeah, there you go. Oh, yeah. So let's let's talk about a few of these. Then
98
00:09:26.030 --> 00:09:29.549
Chris Penick: I'm just gonna get some general rules, no matter what model you're working with. Okay?
99
00:09:29.570 --> 00:09:34.430
Chris Penick: And so I, I, Microsoft, likes to refer to this as the 3 s's
100
00:09:34.780 --> 00:09:39.570
Chris Penick: I've seen it phrased different ways with different groups. I like the 3 S. I'd like that. That's a good
101
00:09:39.890 --> 00:09:42.000
Chris Penick: thing. So there's 3 important S's
102
00:09:42.510 --> 00:09:45.579
Chris Penick: oh, Tsq. Out there we go, Paul. We could do that definitely in here.
103
00:09:46.108 --> 00:09:55.940
Chris Penick: As a matter of fact, I have a Gpt specifically designed for SQL. And we'll talk about that, too. So we've got a whole bunch of ground to cover in very short time. Let's see, we can do this. Okay, so first, st S.
104
00:09:56.100 --> 00:09:59.179
Chris Penick: When you are creating, are you asking for help?
105
00:09:59.390 --> 00:10:05.529
Chris Penick: You know that's a flavor of prompt engineering. And the 1st S is to keep it simple. Okay.
106
00:10:05.980 --> 00:10:09.969
Chris Penick: keep it. You know people what you don't want to do. And I've so
107
00:10:10.268 --> 00:10:18.909
Chris Penick: when I play with students in in like the co-pilot class, or something like that. They say, let's write a video game, and that's the request. Write a video game.
108
00:10:19.750 --> 00:10:20.780
Chris Penick: Well.
109
00:10:21.020 --> 00:10:26.395
Chris Penick: here's the good news Openai will do that for you. Sure we could try that. Let's try it real quick. Let's
110
00:10:26.920 --> 00:10:31.089
Chris Penick: Yeah, let's write it. Let's write a game. We gotta move this out of the way. Zoom tools keep getting in the way
111
00:10:32.780 --> 00:10:39.679
Chris Penick: write a let's write a dungeon, crawl game. I'll get a little bit more specific. Say so. So write a dungeon
112
00:10:41.030 --> 00:10:44.829
Chris Penick: can't spell today dungeon, crawl game.
113
00:10:46.200 --> 00:10:54.739
Chris Penick: and it'll go to work. Here's a basic implementation. Alright. I mean short. You could. I don't know how great it is time to call game and python
114
00:10:55.458 --> 00:10:58.009
Chris Penick: so there's a couple problems with that, you
115
00:10:58.030 --> 00:10:59.370
Chris Penick: keeping it simple.
116
00:10:59.830 --> 00:11:06.859
Chris Penick: you would be surprised. This is not a great example, this actually did. Okay, it didn't give us anything dangerous. But
117
00:11:07.200 --> 00:11:10.019
Chris Penick: you might have heard this phrase a hallucination.
118
00:11:10.700 --> 00:11:11.560
Chris Penick: Alright
119
00:11:12.500 --> 00:11:14.029
Chris Penick: when talking about AI
120
00:11:14.550 --> 00:11:16.260
Chris Penick: and I have had.
121
00:11:16.490 --> 00:11:18.519
Chris Penick: This is why I want this to be simple.
122
00:11:18.760 --> 00:11:21.390
Chris Penick: I want it to be specific is the next one.
123
00:11:21.960 --> 00:11:29.979
Chris Penick: So I added a little bit of specific. I, said the dungeon crawl. But I I you'll notice that it chose to do python. That's actually kind of sneaky.
124
00:11:30.240 --> 00:11:42.300
Chris Penick: I've already set this up to be specific, and I will show you this, you know. Otherwise it might have asked me, or it might have just picked any language it could have done. Hey, there you go. Let's see what we can do. A Powershell. Right, Paul.
125
00:11:42.793 --> 00:11:45.929
Chris Penick: It would have created a game for us with anything.
126
00:11:46.140 --> 00:11:48.020
Chris Penick: and to do that
127
00:11:48.440 --> 00:11:49.970
Chris Penick: it will
128
00:11:50.120 --> 00:11:56.219
Chris Penick: remember that it's generative. It's generating what it thinks you want to see or hear.
129
00:11:56.470 --> 00:11:58.200
Chris Penick: So in this case
130
00:11:58.740 --> 00:12:02.980
Chris Penick: there's those of you who know some python know that there is a random library in Python.
131
00:12:03.440 --> 00:12:07.170
Chris Penick: but I have seen it write code where it says import
132
00:12:08.390 --> 00:12:09.330
Chris Penick: dungeon
133
00:12:10.240 --> 00:12:11.410
Chris Penick: something like that.
134
00:12:11.700 --> 00:12:16.189
Chris Penick: There's no such library. It's like what the heck is dungeon. It completely makes it up
135
00:12:16.830 --> 00:12:19.250
Chris Penick: because that sounds like what you wanted.
136
00:12:19.450 --> 00:12:24.599
Chris Penick: Because, remember, this is just language. This code is just language like anything else.
137
00:12:24.810 --> 00:12:30.500
Chris Penick: and if it can generate a resume if it can generate a Powerpoint slide, if it can generate
138
00:12:30.660 --> 00:12:34.829
Chris Penick: a you know a script for your.
139
00:12:35.120 --> 00:12:35.940
Chris Penick: you know.
140
00:12:36.280 --> 00:12:38.939
Chris Penick: Video, it can generate
141
00:12:39.370 --> 00:12:45.439
Chris Penick: a fake library for you to look at and use because it thinks that's what will fit the problem.
142
00:12:45.810 --> 00:12:57.159
Chris Penick: Alright. It's it's the most likely answer for it. So we're gonna fine tune that whenever we give a prompt whenever we ask for things, whenever we type things to complete, compete, complete. And I'll show you in
143
00:12:57.270 --> 00:13:01.539
Chris Penick: es code in just a second. Here, we want it to be simple. We want it to be specific.
144
00:13:01.610 --> 00:13:03.979
Chris Penick: and then we want it. To be short.
145
00:13:05.320 --> 00:13:13.359
Chris Penick: I don't want to try to write the whole thing at once. You can see it didn't really create something that great. We could go try this. We go. Put this in in Vs code in a second here.
146
00:13:13.992 --> 00:13:17.809
Chris Penick: But we want it to be short or succinct. We want it to be
147
00:13:17.890 --> 00:13:19.169
Chris Penick: piece by piece.
148
00:13:19.220 --> 00:13:26.999
Chris Penick: I like to call it building applications with Lego bricks, so as we go through here, we we can try something like that. We can go piece by piece, step by step.
149
00:13:27.070 --> 00:13:30.629
Chris Penick: through each time. But our 3 S's right simple, specific, and short.
150
00:13:31.220 --> 00:13:32.629
Chris Penick: Any prompt.
151
00:13:33.150 --> 00:13:37.859
Chris Penick: truthfully. Chat Gbt, and a lot of these other, you know.
152
00:13:38.110 --> 00:13:46.319
Chris Penick: pre generated pre-trained transformers. With that Gpt stands for they don't really care about grammar too much they don't really care about if you're polite with them.
153
00:13:46.430 --> 00:13:49.659
Chris Penick: But I was going to show you the secret. Why this one went to Python
154
00:13:49.810 --> 00:13:51.299
Chris Penick: because I've been sneaky.
155
00:13:51.710 --> 00:13:55.899
Chris Penick: I've I've added some specificity ahead of time
156
00:13:56.220 --> 00:13:58.220
Chris Penick: in here, and I'll show you
157
00:13:58.580 --> 00:14:00.620
Chris Penick: if you go here.
158
00:14:01.280 --> 00:14:04.079
Chris Penick: and so you'll notice under my settings.
159
00:14:05.280 --> 00:14:07.929
Chris Penick: There's this little thing that says personalization.
160
00:14:08.780 --> 00:14:13.209
Chris Penick: And this is particular to Openai and Chat Gbt. They have custom instructions.
161
00:14:13.370 --> 00:14:15.890
Chris Penick: Essentially, this is something that's sent to
162
00:14:16.270 --> 00:14:22.120
Chris Penick: with every request every new chat with Chat Gbt. For me. It sends
163
00:14:22.540 --> 00:14:25.410
Chris Penick: this big, long list of instructions.
164
00:14:26.360 --> 00:14:28.760
Chris Penick: and you know, as it says, that tells it a little bit about me.
165
00:14:28.970 --> 00:14:32.449
Chris Penick: I teach data science. I teach machine learning. I teach artificial intelligence.
166
00:14:32.850 --> 00:14:44.320
Chris Penick: I'm a web design in, you know, in the Us. So it knows location. So it knows that, you know, with things I'm comfortable with these languages. Give me python, give me sequel. Give me C. Give me Java, give me. Javascript, HTML, Css.
167
00:14:44.430 --> 00:14:49.210
Chris Penick: I like detail. Give me as much detail as possible. Give me, step by step, give me flow charts.
168
00:14:49.510 --> 00:14:52.600
Chris Penick: You can fill this up quite a bit. So you've got 1,500
169
00:14:52.900 --> 00:14:54.050
Chris Penick: tokens here.
170
00:14:54.220 --> 00:14:58.920
Chris Penick: and that's the big thing. So, Paul, if you're doing a lot of stuff with Powershell.
171
00:14:59.310 --> 00:15:09.450
Chris Penick: you could go in and add some custom instructions that say I need answers often in Powershell. Ask, you know. Give me, give me steps in, Powershell. Give me what you know libraries from Powershell. Give me whatever
172
00:15:10.066 --> 00:15:18.649
Chris Penick: and then notice that when I ask you what it how to respond. I'm very specific about what formats I want. What code, what presentation, what charts I want graphs.
173
00:15:18.730 --> 00:15:20.730
Chris Penick: I'm a teacher. That's the kind of stuff I need.
174
00:15:21.040 --> 00:15:32.000
Chris Penick: You know. I want the to be complete enough that I can not have to do too much editing on my own, and it can call me Chris, and it sure enough it does. If you'll notice it'll respond back with Chris on things all the time here.
175
00:15:32.350 --> 00:15:34.300
Chris Penick: and and like, I said, but
176
00:15:34.830 --> 00:15:43.500
Chris Penick: should be, you know, and as far as its own opinions because it has opinions. I have to, Eric, quote that, but I tell to leave those alone.
177
00:15:45.490 --> 00:15:48.959
Chris Penick: You only see the whiteboard, Agnes. It may just be you. Can you everyone see the
178
00:15:49.050 --> 00:15:50.150
Chris Penick: pop up here?
179
00:15:50.480 --> 00:15:51.940
Chris Penick: What's about the descriptions?
180
00:15:52.370 --> 00:15:53.340
Chris Penick: See? Okay.
181
00:15:54.450 --> 00:15:56.380
Chris Penick: should be sharing this whole screen.
182
00:15:57.020 --> 00:15:57.899
Chris Penick: There you go.
183
00:15:58.590 --> 00:16:01.420
Chris Penick: Looks black for the interesting.
184
00:16:03.820 --> 00:16:11.540
Chris Penick: I think that's on your end hopefully mine. But I could talk some more about it here. Those of you who have so real quick.
185
00:16:12.310 --> 00:16:16.520
Chris Penick: like real quick. I don't know. I guess you'd hit it in the chat, or something like that.
186
00:16:16.700 --> 00:16:19.460
Chris Penick: Who's who's got an an account with
187
00:16:19.820 --> 00:16:21.190
Chris Penick: open AI already?
188
00:16:23.370 --> 00:16:24.690
Chris Penick: That's probably like most
189
00:16:25.240 --> 00:16:28.000
Chris Penick: give or take, or at least you've gotten to play with. Chat. Gbt.
190
00:16:28.020 --> 00:16:36.884
Chris Penick: let's let's see how these Co. Let's see how these tools fit in. Not yet. Okay. So for some of you who don't have one yet and again realize it.
191
00:16:37.240 --> 00:16:43.060
Chris Penick: they've they've opened up what's available to you will depend on whether you want to give them money. Yeah.
192
00:16:43.190 --> 00:16:47.459
Chris Penick: hey, jazz, I understand that. Yeah, chat Gbt from work is often difficult.
193
00:16:48.970 --> 00:16:52.339
Chris Penick: your organization might, you know, have some others available here.
194
00:16:53.080 --> 00:17:03.540
Chris Penick: but the newest, you know, like said so. The newest and the most advanced model is what I have here. Now. I pay for it. I pay. I pay money to Openai each month, and we can talk some more about that later.
195
00:17:03.710 --> 00:17:12.030
Chris Penick: But that's so that I can get to these new models, but also so that I can have this memory on here reloading the page. Excellent Alpha
196
00:17:12.140 --> 00:17:15.070
Chris Penick: of Thea. Sorry, I said. Athela, is that right
197
00:17:15.300 --> 00:17:16.140
Chris Penick: close.
198
00:17:16.400 --> 00:17:20.490
Chris Penick: I forgive. Forgive me if I I mess up names just for me. No, there we go.
199
00:17:20.560 --> 00:17:27.160
Chris Penick: So yeah, try that. There you go, as Athila did, you might be able to just refresh the screen, and that'll fix it for you a little bit. Here
200
00:17:27.200 --> 00:17:30.150
Chris Penick: we'll be switching from multiple ones as we go here
201
00:17:30.410 --> 00:17:42.059
Chris Penick: so alright we got it to try. As matter of fact, we let's go see it. Did it? Put it all? Oh, it did put it all in one and says how the game works. Remember that part of what I asked it to do, and let me see if I can make that bigger for you to really see that, too.
202
00:17:42.380 --> 00:17:45.190
Chris Penick: considering this is a large screen here
203
00:17:45.400 --> 00:17:56.020
Chris Penick: said how the game works, and it tells me, say, I told it that I like it step by step. Instructions and I like things. What's in there? Play it extending this game. Here's some ideas to extend it. Different types of monsters. Simple, crawl
204
00:17:56.210 --> 00:17:58.510
Chris Penick: alright. So let's take this
205
00:17:59.720 --> 00:18:03.089
Chris Penick: copy that code and let's go into
206
00:18:04.420 --> 00:18:06.960
Chris Penick: our visual studio code.
207
00:18:08.340 --> 00:18:10.780
Chris Penick: Now with Vs code
208
00:18:11.860 --> 00:18:13.619
Chris Penick: couple things here
209
00:18:14.030 --> 00:18:18.560
Chris Penick: is that I am using. You can see github co-pilot.
210
00:18:19.000 --> 00:18:28.199
Chris Penick: and it's a whole set of its own tool bindings to learn little short keys if you want. But you don't even have to do that here. I'm gonna make a new file.
211
00:18:28.831 --> 00:18:30.340
Chris Penick: We'll call this our dungeon.
212
00:18:31.250 --> 00:18:34.550
Chris Penick: We can do other things. We can write other code, we can do something and
213
00:18:35.140 --> 00:18:37.330
Chris Penick: let's paste this in for now.
214
00:18:37.510 --> 00:18:38.300
Chris Penick: alright.
215
00:18:39.510 --> 00:18:40.350
Chris Penick: Now.
216
00:18:41.890 --> 00:18:52.499
Chris Penick: when you're working with Vs code. Okay, alright. And there's a reason, I said. Do you remember the 3 s's again? The 3 s's were right, simple, specific, short, right, simple, specific, short.
217
00:18:52.930 --> 00:18:55.970
Chris Penick: because the more code the AI writes.
218
00:18:56.500 --> 00:19:00.989
Chris Penick: the greater the chance that it's going to hallucinate.
219
00:19:01.040 --> 00:19:08.830
Chris Penick: or it's going to write something incorrectly. It will. I mean, they give you a little warning right? It says all the time, right here, somewhere down here.
220
00:19:08.840 --> 00:19:12.449
Chris Penick: Gp, chat Gbt. Could make mistakes. Check important info
221
00:19:12.990 --> 00:19:15.890
Chris Penick: right right down there, it says. Hey, I can make a mistake.
222
00:19:16.130 --> 00:19:20.040
Chris Penick: Alright. So you know, if
223
00:19:20.400 --> 00:19:22.129
Chris Penick: it's all about context
224
00:19:22.270 --> 00:19:25.250
Chris Penick: when you're using these tools here and you can.
225
00:19:25.860 --> 00:19:29.290
Chris Penick: So I'm using Code pilot. And let me just point out here
226
00:19:29.830 --> 00:19:31.260
Chris Penick: that
227
00:19:32.340 --> 00:19:34.160
Chris Penick: that's Github's co-pilot.
228
00:19:34.560 --> 00:19:36.560
Chris Penick: like I said, there are tons of these.
229
00:19:39.960 --> 00:19:40.819
Chris Penick: Let's see.
230
00:19:41.530 --> 00:19:42.979
Chris Penick: there's the docs, but
231
00:19:50.830 --> 00:20:02.719
Chris Penick: their documentation is not too bad, but I was trying to see if I didn't. I had meant to save like how much it cost you and set you back, but your organization might have it set up. If you're already a Github organization.
232
00:20:03.100 --> 00:20:06.659
Chris Penick: and you might be able to, you know, have the Enterprise version, which
233
00:20:07.130 --> 00:20:13.880
Chris Penick: then you can, you know, of course, with your agreement with Microsoft is, hey? Don't train on my code.
234
00:20:14.410 --> 00:20:20.429
Chris Penick: What's happening with me is any of this code, since I'm an individual. Any of this code I have here
235
00:20:20.440 --> 00:20:24.160
Chris Penick: is going to get train is going to be used for training for
236
00:20:26.450 --> 00:20:27.910
Chris Penick: our
237
00:20:28.240 --> 00:20:29.040
Chris Penick: github
238
00:20:29.330 --> 00:20:30.220
Chris Penick: co-pilot.
239
00:20:30.530 --> 00:20:34.239
Chris Penick: Now let's try. Just let's just go back here, for example, real quick
240
00:20:35.000 --> 00:20:37.320
Chris Penick: just how this sort of works a little bit.
241
00:20:38.490 --> 00:20:39.390
Chris Penick: If
242
00:20:41.360 --> 00:20:42.610
Chris Penick: yeah, one second.
243
00:20:43.050 --> 00:20:44.760
Chris Penick: yeah, I'll be right there.
244
00:20:44.930 --> 00:20:48.229
Chris Penick: If I were going to. Let's see the classic example.
245
00:20:50.140 --> 00:20:51.670
Chris Penick: We'll just start putting some
246
00:20:51.740 --> 00:20:52.930
Chris Penick: thing in here.
247
00:20:54.220 --> 00:20:55.279
Chris Penick: There you go.
248
00:20:55.310 --> 00:20:57.509
Chris Penick: If you watch it, you'll notice it
249
00:20:57.660 --> 00:20:58.780
Chris Penick: as this.
250
00:20:59.640 --> 00:21:01.070
Chris Penick: Liam. Thank you.
251
00:21:02.410 --> 00:21:04.269
Chris Penick: I know when, Liam, how you doing
252
00:21:04.530 --> 00:21:06.609
Chris Penick: so, and then let's see.
253
00:21:07.040 --> 00:21:09.379
Chris Penick: Lumpsy, you had a question real quick.
254
00:21:10.910 --> 00:21:13.369
Chris Penick: with a hand that view.
255
00:21:13.710 --> 00:21:16.889
Chris Penick: I want to throw it in the chat, because audio is kind of
256
00:21:17.760 --> 00:21:18.879
Chris Penick: blocked at the moment.
257
00:21:19.220 --> 00:21:20.440
Chris Penick: Alright, let me continue.
258
00:21:20.520 --> 00:21:27.050
Chris Penick: I'll catch if you. If you put it in the chat there, or or you put it in the question and answer panel, I'll catch it in just a bit. There you go
259
00:21:27.430 --> 00:21:28.200
Chris Penick: alright.
260
00:21:28.340 --> 00:21:31.550
Chris Penick: So that text that you see coming up there. It's called Ghost text.
261
00:21:31.580 --> 00:21:33.559
Chris Penick: And that goes text.
262
00:21:34.090 --> 00:21:35.959
Chris Penick: Let's see if I get it to come back. There we go.
263
00:21:36.410 --> 00:21:40.500
Chris Penick: There you go. So that goes back. So $19 a seat for copilot. Yeah, we get corporate.
264
00:21:40.820 --> 00:21:51.050
Chris Penick: It's about 20 bucks a month, plus if you're paying for open AI another 20 bucks, if you're paying. Yeah, they start adding up, I I've realized I was spending about $100 a month on various AI tools here.
265
00:21:51.160 --> 00:22:04.340
Chris Penick: Alright. So here's a classic that we ask people to do at a coding class. You say, Okay, take fib. You know Fibonacci series, right? And you notice it recognizes it. Why is it recognized this? It's not that it's psychic. It's be. It's seen it in training data somewhere.
266
00:22:04.450 --> 00:22:08.290
Chris Penick: So as it's been building this out as it's been been putting this together here.
267
00:22:08.320 --> 00:22:16.550
Chris Penick: And of course, if we want that, you'll notice that it says all right? Sure you can accept Tab. You can accept one word at a time which is controlling the right arrow.
268
00:22:17.190 --> 00:22:20.389
Chris Penick: See? So you can start building your code like this. I always thought that was kind of funny.
269
00:22:20.790 --> 00:22:23.559
Chris Penick: or you can just tab to the end and accept the whole thing
270
00:22:24.530 --> 00:22:25.380
Chris Penick: alright.
271
00:22:25.990 --> 00:22:26.820
Chris Penick: Now.
272
00:22:27.130 --> 00:22:27.960
Chris Penick: 1st
273
00:22:28.800 --> 00:22:29.999
Chris Penick: I got an extra
274
00:22:30.510 --> 00:22:32.080
Chris Penick: in there that was me
275
00:22:32.940 --> 00:22:34.179
Chris Penick: alright. So
276
00:22:34.340 --> 00:22:42.560
Chris Penick: so far, all you've done is is put in this little. Okay. We've made a function. We we set up, and we used a plugin to get it, and the Plugin is the part
277
00:22:42.980 --> 00:22:46.450
Chris Penick: that is the AI help right? That's that. That's
278
00:22:46.470 --> 00:22:51.640
Chris Penick: Github coming in and say alright by looking at examples that we're already out there and adding to this.
279
00:22:52.420 --> 00:22:53.410
Chris Penick: now
280
00:22:53.830 --> 00:22:57.949
Chris Penick: you'll notice, as we keep continuing here, do you see the ghost text come up again.
281
00:22:58.610 --> 00:23:03.610
Chris Penick: You'll also see this lovely little sparkle, and that's actually what they call it. They call the sparkle
282
00:23:03.630 --> 00:23:12.139
Chris Penick: alright. But that ghost text is, it comes up. Tab is your friend. You also have control keys here, which is the left and right bracket
283
00:23:12.510 --> 00:23:14.019
Chris Penick: just above the enter key.
284
00:23:14.170 --> 00:23:15.909
Chris Penick: where you can go through
285
00:23:16.030 --> 00:23:21.914
Chris Penick: or to accept. Just that word says it is interesting here. It's like I didn't know what I was going to put here.
286
00:23:22.520 --> 00:23:24.139
Chris Penick: Use the function.
287
00:23:26.260 --> 00:23:27.450
Chris Penick: so you'll let us
288
00:23:28.900 --> 00:23:31.589
Chris Penick: alright. So when Co-pilot
289
00:23:31.620 --> 00:23:37.809
Chris Penick: sees that, you know it's reading everything, including the comments. And you notice, as soon as it saw
290
00:23:39.200 --> 00:23:42.790
Chris Penick: this use the function it assumes. Oh, this
291
00:23:43.640 --> 00:23:45.670
Chris Penick: alright! Now, here's
292
00:23:45.990 --> 00:23:49.240
Chris Penick: where copilot gets a little bit interesting here.
293
00:23:49.970 --> 00:23:58.580
Chris Penick: So we said, we got our 3 assets right. We want it to be short, specific, simple. The order I used, I said. Simple, I said.
294
00:23:58.600 --> 00:23:59.760
Chris Penick: specific.
295
00:24:01.380 --> 00:24:07.670
Chris Penick: and I want to be short. Alright. So then those 3 S's combined with the next big important piece
296
00:24:08.010 --> 00:24:09.030
Chris Penick: context.
297
00:24:10.880 --> 00:24:12.689
Chris Penick: So tools like Copet
298
00:24:12.890 --> 00:24:22.330
Chris Penick: it co-pilot tab 9 and and like, said the I'll share a few others in here we'll switch out. We'll kind of look at some of the differences and what they put together here.
299
00:24:23.230 --> 00:24:25.340
Chris Penick: Do you see how I have this one open
300
00:24:27.970 --> 00:24:30.470
Chris Penick: and without that open.
301
00:24:30.760 --> 00:24:37.090
Chris Penick: So when you want information about the library, let's see if it but let's see what to be smart of again. We're working live so I might break things. Who knows?
302
00:24:37.520 --> 00:24:39.920
Chris Penick: Probably break a lot of things here, let me say,
303
00:24:40.970 --> 00:24:43.919
Chris Penick: create a new dungeon.
304
00:24:44.240 --> 00:24:45.000
Chris Penick: Let's see.
305
00:24:45.830 --> 00:24:48.000
Chris Penick: I don't want the game. I just want the dungeon
306
00:24:48.730 --> 00:24:51.879
Chris Penick: game equals game. Alright. So it's interesting. It'll
307
00:24:53.170 --> 00:24:54.590
Chris Penick: but now, you see.
308
00:24:55.170 --> 00:24:56.110
Chris Penick: here we go.
309
00:24:56.350 --> 00:25:00.450
Chris Penick: So it found dungeon. It says, game all right. Game's not defined.
310
00:25:02.760 --> 00:25:04.920
Chris Penick: My game's not defined in here, either.
311
00:25:05.710 --> 00:25:07.609
Chris Penick: There's my game right
312
00:25:07.790 --> 00:25:09.429
Chris Penick: to find the game class
313
00:25:09.870 --> 00:25:17.820
Chris Penick: so we can ask it. Now. I've got 2 things that are working here. Visual studio code has something called Pylance built in. I also use a tool called prettier
314
00:25:17.830 --> 00:25:19.669
Chris Penick: to keep it nice and formatted
315
00:25:19.820 --> 00:25:23.379
Chris Penick: when we're doing like full stack web applications, things along those lines.
316
00:25:24.153 --> 00:25:25.279
Chris Penick: But here.
317
00:25:25.490 --> 00:25:27.340
Chris Penick: so let's try its quick fix.
318
00:25:28.450 --> 00:25:30.200
Chris Penick: Just add dungeon. See?
319
00:25:30.400 --> 00:25:41.999
Chris Penick: Fix using Co pilot pilot or explain using copilot. Now, there are shortcut keys for all these things here. Most commonly, I'm gonna say, alright, I'll say fix using copilot. See if copilot smart enough to figure out what's going on.
320
00:25:44.314 --> 00:25:49.910
Chris Penick: Okay, so it says, games not to find fix the issue. You need to import the game class for the appropriate module.
321
00:25:50.160 --> 00:25:53.110
Chris Penick: Say, but alright. So from game module.
322
00:25:53.360 --> 00:25:55.149
Chris Penick: he knows it just made it up.
323
00:25:57.160 --> 00:25:58.400
Chris Penick: Context.
324
00:25:58.610 --> 00:26:05.439
Chris Penick: It's it knows that I need something called a game, because I just I declared that way as I create a new dungeon.
325
00:26:05.800 --> 00:26:10.359
Chris Penick: Alright, it says game. It sees this. It's not smart enough to grab it from over here.
326
00:26:11.600 --> 00:26:14.470
Chris Penick: so we'll accept its term and
327
00:26:14.840 --> 00:26:18.739
Chris Penick: want to show you. We'll we'll look at some of the chat on this, too.
328
00:26:18.780 --> 00:26:21.059
Chris Penick: You'll notice that new slash right there.
329
00:26:21.440 --> 00:26:23.350
Chris Penick: So yet another tool
330
00:26:23.370 --> 00:26:25.830
Chris Penick: in the whole cloak. Pilot arsenal.
331
00:26:25.910 --> 00:26:30.909
Chris Penick: Alright. So so far we've seen that it will. It's reading my code. It's looking at comments.
332
00:26:31.100 --> 00:26:32.950
Chris Penick: right? It's looking at
333
00:26:34.620 --> 00:26:43.199
Chris Penick: this other context. So it it knew sort of that there was a game available. It got it wrong about what the name of the module should be.
334
00:26:43.760 --> 00:26:48.199
Chris Penick: Alright, because again, it's generating this, it's hallucinating a bit
335
00:26:48.380 --> 00:26:51.390
Chris Penick: told. You see, we're working live. So we're going to get a lot of fun mistakes here
336
00:26:51.550 --> 00:26:52.709
Chris Penick: as we go through.
337
00:26:53.110 --> 00:26:58.150
Chris Penick: And, by the way, this is just this is a completely different one off the top of my head here because I started with
338
00:26:58.620 --> 00:27:00.539
Chris Penick: several examples. I can show you.
339
00:27:01.330 --> 00:27:04.739
Chris Penick: It's not too impressive, but I can show you finished masterpieces
340
00:27:04.840 --> 00:27:08.079
Chris Penick: that comes through like, you know, working on some
341
00:27:09.000 --> 00:27:18.330
Chris Penick: some models that we're putting together for sentiment analysis for another class here. And Student and I were having trouble with one. So we asked
342
00:27:18.400 --> 00:27:39.460
Chris Penick: Co-pilot to help us find the problem with it. And it didn't. It actually find the problem didn't give a great solution. But it did find the problem so we could walk through some of that for you to see here working live is always fun. But here's my comment. So the comment you have a bunch of slash commands here that we can use also in chat. We'll see in just a moment. So you notice over here.
343
00:27:39.590 --> 00:27:41.509
Chris Penick: But I've got my my little.
344
00:27:41.950 --> 00:27:48.609
Chris Penick: I can chat with it in a second. There, we'll get over to in a moment. But that slash fix alright game. Not time
345
00:27:49.790 --> 00:27:56.649
Chris Penick: anytime you're commenting with this, you can accept it in place. You can move on to others. You can ask it for other
346
00:27:57.020 --> 00:28:00.749
Chris Penick: choices as you go. I'm gonna take what it had. We'll we'll see what it did.
347
00:28:01.370 --> 00:28:05.029
Chris Penick: So far. So bad, right? Okay, so far, so bad.
348
00:28:05.130 --> 00:28:06.570
Chris Penick: We still have the issue
349
00:28:06.850 --> 00:28:07.600
Chris Penick: of
350
00:28:08.200 --> 00:28:13.349
Chris Penick: alright. We don't really need fib anymore. Let's get rid of fib. We're we're just gonna go through here.
351
00:28:13.550 --> 00:28:14.449
Chris Penick: Take this away
352
00:28:16.710 --> 00:28:21.420
Chris Penick: alright. So let's see, we can fix this game. Module says, import game module could not be resolved.
353
00:28:21.500 --> 00:28:26.630
Chris Penick: And again, it's i i like watching, asking it to to tickets guests.
354
00:28:26.960 --> 00:28:30.000
Chris Penick: Alright take its best guess. Try it for me.
355
00:28:30.240 --> 00:28:31.050
Chris Penick: Alright
356
00:28:31.240 --> 00:28:32.050
Chris Penick: so.
357
00:28:34.860 --> 00:28:40.180
Chris Penick: And the magic key, by the way, control in the period which is concerning. So again, let's see.
358
00:28:41.470 --> 00:28:42.790
Chris Penick: see if it can fix it
359
00:28:44.840 --> 00:28:47.000
Chris Penick: checking if the module is installed.
360
00:28:47.200 --> 00:28:51.679
Chris Penick: Thanks, view and chat. Oh, those will get to run into the chat for us instead.
361
00:28:51.730 --> 00:28:56.919
Chris Penick: You'll see it's got my whole. This is from an earlier example with the flask server that I was putting together. I can
362
00:28:57.320 --> 00:29:00.090
Chris Penick: walk through that one in a second. Here, as I said, I had a free.
363
00:29:00.540 --> 00:29:02.710
Chris Penick: pre-built example, but when all that
364
00:29:03.190 --> 00:29:07.060
Chris Penick: alright, so you all know what I need to do, I need to take this from dungeon.
365
00:29:07.480 --> 00:29:09.089
Chris Penick: It can't make that connection.
366
00:29:09.520 --> 00:29:13.860
Chris Penick: So they're good. They're not psychic. They're good. They're not psychic.
367
00:29:14.275 --> 00:29:24.750
Chris Penick: Let's try if we've if we. If we so, it's not gonna replace you as a coder. I disagree with what the gentleman from Nvidia said. He said. You know that he would say that going into programming was, you know.
368
00:29:24.830 --> 00:29:26.350
Chris Penick: and the age of AI
369
00:29:26.600 --> 00:29:29.989
Chris Penick: pretty much. He kind of doomed the profession. I I
370
00:29:30.000 --> 00:29:32.830
Chris Penick: completely disagree, for now.
371
00:29:33.240 --> 00:29:37.489
Chris Penick: maybe maybe okay. Another year. I don't know at the at the pace, but you know, for now.
372
00:29:38.210 --> 00:29:43.340
Chris Penick: so we'll put in dungeon with extension. We've got our new game alright, so we can go in it and walk through these things here.
373
00:29:44.021 --> 00:29:48.330
Chris Penick: There were some other hand. I didn't see the questions go into the
374
00:29:54.480 --> 00:29:57.230
Chris Penick: thought. There was it. But okay, there we go. Missed a few there.
375
00:29:57.430 --> 00:29:58.180
Chris Penick: Alright.
376
00:29:59.140 --> 00:30:00.220
Chris Penick: So let's
377
00:30:00.360 --> 00:30:04.090
Chris Penick: probably building something more useful. Actually, we could go and try this too.
378
00:30:05.550 --> 00:30:06.980
Chris Penick: So the next thing
379
00:30:07.030 --> 00:30:12.415
Chris Penick: on that context. You want any files that are associated with what? Especially,
380
00:30:13.040 --> 00:30:16.419
Chris Penick: are any, any of you, as they call them, full stack
381
00:30:16.540 --> 00:30:22.609
Chris Penick: engineers? You. You do like react, learn, burn, stack, mean stack, something like that. Anybody doing that one?
382
00:30:23.020 --> 00:30:25.449
Chris Penick: You've got a lot of moving pieces there right?
383
00:30:26.163 --> 00:30:36.829
Chris Penick: So you've got. You know, your javascript with your your react front end. You've got your express Middleware, and you've got your, you know something, Mongo, probably in the back end something like that.
384
00:30:36.960 --> 00:30:40.900
Chris Penick: and all those parts there. If you are trying to solve a problem
385
00:30:41.080 --> 00:30:45.069
Chris Penick: that has, you know, for your entire application.
386
00:30:45.440 --> 00:30:51.370
Chris Penick: then, having those files open for code. Pilot is the 1st step. The other one is
387
00:30:51.730 --> 00:30:53.090
Chris Penick: things like this.
388
00:30:55.250 --> 00:30:57.049
Chris Penick: Let's see if it will help me here.
389
00:31:00.990 --> 00:31:02.719
Chris Penick: so I can ask
390
00:31:03.130 --> 00:31:09.339
Chris Penick: co-pilot all sorts of things. Notice that I selected ahead of time on this. And again, we're just let's see printing the dudgeon
391
00:31:10.070 --> 00:31:14.589
Chris Penick: trying this run game game play actually interesting. Let's see what happens.
392
00:31:15.510 --> 00:31:17.540
Chris Penick: Watch a break there! Oh, look at that!
393
00:31:17.810 --> 00:31:21.710
Chris Penick: Not too bad! With the moves and everything. You can see it down in my tongue.
394
00:31:22.090 --> 00:31:22.770
Chris Penick: Say.
395
00:31:22.990 --> 00:31:25.340
Chris Penick: Enter, move! There you go alright.
396
00:31:26.250 --> 00:31:31.569
Chris Penick: You can't move in that direction. Can I move in in this direction? Can't move in any direction.
397
00:31:33.710 --> 00:31:35.860
Chris Penick: There we go. Interview. There we go.
398
00:31:35.890 --> 00:31:37.050
Chris Penick: Alright. It's up to P.
399
00:31:37.310 --> 00:31:41.819
Chris Penick: We moved from. We moved down one. There we go. There's a monster in the way
400
00:31:41.920 --> 00:31:46.769
Chris Penick: have I do? We haven't put any combat system in here to do that. We really want to get going with this.
401
00:31:47.170 --> 00:31:49.400
Chris Penick: I'm gonna kill this for the moment.
402
00:31:51.800 --> 00:31:56.549
Chris Penick: and let's come back up for a second. Alright. So so far, so good, that we've got
403
00:31:56.930 --> 00:31:57.990
Chris Penick: context
404
00:31:59.160 --> 00:32:02.949
Chris Penick: by the files, but also by what you select.
405
00:32:04.000 --> 00:32:07.709
Chris Penick: If you are working on a particular function.
406
00:32:08.190 --> 00:32:09.050
Chris Penick: See?
407
00:32:09.750 --> 00:32:11.050
Chris Penick: Have my tongue jam.
408
00:32:12.490 --> 00:32:16.769
Chris Penick: let's add, play print dungeons, and not very well organized
409
00:32:17.080 --> 00:32:22.579
Chris Penick: fight. Oh, there's our fight. Okay, random monster, you defeated the monster. There we go
410
00:32:23.750 --> 00:32:27.200
Chris Penick: find treasure. We have all these methods to find.
411
00:32:27.300 --> 00:32:29.299
Chris Penick: Don't have any option for using them
412
00:32:30.600 --> 00:32:33.550
Chris Penick: in our January positions. Print dungeon
413
00:32:34.540 --> 00:32:35.590
Chris Penick: right? Now.
414
00:32:35.600 --> 00:32:38.510
Chris Penick: play mile. If this enter moves.
415
00:32:39.440 --> 00:32:43.180
Chris Penick: Okay, player health. There's player fight. There you go.
416
00:32:43.500 --> 00:32:45.049
Chris Penick: We move to the monster.
417
00:32:45.840 --> 00:32:47.760
Chris Penick: Says that it's supposed to
418
00:32:47.910 --> 00:32:49.099
Chris Penick: fight, and then
419
00:32:49.680 --> 00:32:51.700
Chris Penick: off the monster. We'll see about this.
420
00:32:51.870 --> 00:32:54.240
Chris Penick: So let's try it. Let's see if we can explain.
421
00:32:54.440 --> 00:32:55.670
Chris Penick: Here's what we're gonna add.
422
00:32:57.080 --> 00:32:59.549
Chris Penick: select all that oops. Mr. Piece.
423
00:33:01.180 --> 00:33:03.090
Chris Penick: 60. Okay, there we go.
424
00:33:09.060 --> 00:33:10.200
Chris Penick: You, too.
425
00:33:10.730 --> 00:33:11.530
Chris Penick: I mean it.
426
00:33:13.910 --> 00:33:15.229
Chris Penick: Fight me on it
427
00:33:17.110 --> 00:33:18.590
Chris Penick: 1st day with the new mouse
428
00:33:23.830 --> 00:33:24.850
Chris Penick: you died.
429
00:33:27.920 --> 00:33:29.759
Chris Penick: We'll ask it to explain this
430
00:33:32.520 --> 00:33:33.250
Chris Penick: alright.
431
00:33:37.700 --> 00:33:38.649
Chris Penick: There we go.
432
00:33:40.120 --> 00:33:46.610
Chris Penick: Part of a simple, text-based object. Game game is played with a dungeon represented by a grid play functions. Main game loop. There we go.
433
00:33:46.840 --> 00:33:47.560
Chris Penick: Aye.
434
00:33:47.740 --> 00:33:53.120
Chris Penick: so you ever inherited somebody else's code. I do that quite often here. Alright. So
435
00:33:53.980 --> 00:34:11.150
Chris Penick: with co-pilot I can go through, and I can try to get a good explanation, boy. That's you know. I I said, to follow the 3 S's. It's responses. Don't always follow the 3 s's you notice these? So game check. See after players move the game check, so I don't know if I trust this completely. But I'd follow through and see.
436
00:34:11.320 --> 00:34:15.819
Chris Penick: takes the play on each iteration 1st prints the dungeon. We saw that
437
00:34:16.060 --> 00:34:21.310
Chris Penick: after printing the dudge of the game, ask the player for a move by calling built-in input function with a prompt
438
00:34:21.409 --> 00:34:26.000
Chris Penick: alright venture. Wsd move is passed to move alright.
439
00:34:26.330 --> 00:34:33.180
Chris Penick: So you'd have to again still be fillers again, not psychic. But let's, you know, take into mind that
440
00:34:33.230 --> 00:34:38.290
Chris Penick: couple things here. So we said, the 3 S's right, then the context
441
00:34:39.120 --> 00:34:43.569
Chris Penick: and you're in charge of that part of it is giving it. The files you need open.
442
00:34:43.610 --> 00:34:45.799
Chris Penick: Part of it is selecting things
443
00:34:46.040 --> 00:34:47.189
Chris Penick: or context.
444
00:34:48.210 --> 00:34:54.869
Chris Penick: Then it's learning the commands that you have available to you, and you have things like fix. And you have things like explain.
445
00:34:55.159 --> 00:35:00.129
Chris Penick: And the nice thing is, if you get that little help pop up there, and it's control.
446
00:35:01.210 --> 00:35:04.200
Chris Penick: you know. On I there, if
447
00:35:04.820 --> 00:35:08.720
Chris Penick: if you get this little pop-up here, you can even ask it for what they are
448
00:35:08.950 --> 00:35:10.969
Chris Penick: and ask it for the command.
449
00:35:11.130 --> 00:35:11.980
Chris Penick: Now.
450
00:35:12.240 --> 00:35:16.769
Chris Penick: alright, not too bad, I said. Part of this was, gonna be, you know, I've only got
451
00:35:17.350 --> 00:35:18.330
Chris Penick: roughly
452
00:35:18.540 --> 00:35:26.789
Chris Penick: 45 min to an hour to look at a whole bunch of tools. We mentioned copilot specifically, but there were others I wanted to show you, just to kind of put this perspective.
453
00:35:28.360 --> 00:35:30.000
Chris Penick: If, for example.
454
00:35:30.650 --> 00:35:33.369
Chris Penick: I'm just gonna walk you through like one that I had here.
455
00:35:33.850 --> 00:35:36.130
Chris Penick: because again, working live is sometimes
456
00:35:36.820 --> 00:35:37.630
Chris Penick: bun.
457
00:35:38.360 --> 00:35:40.020
Chris Penick: but not survive.
458
00:35:42.420 --> 00:35:44.080
Chris Penick: Alright. Let's
459
00:35:44.110 --> 00:35:45.350
Chris Penick: boo, hoo!
460
00:35:45.840 --> 00:35:49.629
Chris Penick: So a couple things. If you do have access to gpt.
461
00:35:49.940 --> 00:35:59.660
Chris Penick: then you can play a little game, and you can create your own sort of and and calling it your own Gpt. The more better way to be is that you're adding custom instructions
462
00:35:59.680 --> 00:36:02.659
Chris Penick: to this. So, for example, you see that I have one called Edu assist.
463
00:36:02.810 --> 00:36:08.619
Chris Penick: And Edgar is job is I make stuff right? See? I help create educational slides and lessons.
464
00:36:08.780 --> 00:36:15.490
Chris Penick: Data analyst saying, so, this is actually from Jet Tbt on theirs. You can build on any of these, Cody.
465
00:36:15.620 --> 00:36:17.329
Chris Penick: It's supposed to be for technical
466
00:36:17.990 --> 00:36:23.670
Chris Penick: assistance here. Very good with the architecture not so great with code. But let me give you a little
467
00:36:24.540 --> 00:36:25.750
Chris Penick: example
468
00:36:25.930 --> 00:36:26.910
Chris Penick: of
469
00:36:34.830 --> 00:36:35.580
Chris Penick: alright.
470
00:36:36.850 --> 00:36:41.379
Chris Penick: This is a little conversation earlier, going through and building out
471
00:36:42.100 --> 00:36:45.900
Chris Penick: my application for using a
472
00:36:46.080 --> 00:36:48.649
Chris Penick: my students talking about decision tree.
473
00:36:49.000 --> 00:36:50.690
Chris Penick: So the
474
00:36:51.330 --> 00:36:53.269
Chris Penick: it's like hit, learn ski learn.
475
00:36:53.730 --> 00:37:01.040
Chris Penick: Okay? So help me create a simple demo shows a decision tree. Okay. So we went back and forth we went. You know, on this here is that we're gonna do it from psychit.
476
00:37:01.200 --> 00:37:02.749
Chris Penick: Make sure we've got this.
477
00:37:02.900 --> 00:37:04.730
Chris Penick: Everything was installed.
478
00:37:05.130 --> 00:37:07.969
Chris Penick: So most of you have probably played this a little bit.
479
00:37:08.000 --> 00:37:13.860
Chris Penick: You've tried it in. Oh, see! Unfortunately, name co-pilot! That has to do with office
480
00:37:13.920 --> 00:37:18.540
Chris Penick: alright, which not not necessarily have the same capabilities.
481
00:37:18.630 --> 00:37:21.049
Chris Penick: Alright. So we're gonna try to do this
482
00:37:21.250 --> 00:37:22.220
Chris Penick: in
483
00:37:22.610 --> 00:37:28.959
Chris Penick: yes, code real quick. We'll see if it could do this here alright. I'm gonna just give the same prompt to start it out a little bit alright.
484
00:37:29.690 --> 00:37:30.940
Chris Penick: And
485
00:37:32.300 --> 00:37:35.349
Chris Penick: just because I'm lazy, I'm gonna copy and paste, because
486
00:37:35.480 --> 00:37:36.490
Chris Penick: getting them lazy.
487
00:37:36.940 --> 00:37:37.670
Chris Penick: Alright.
488
00:37:37.990 --> 00:37:39.980
Chris Penick: Yes, code, where'd you go? There you are.
489
00:37:40.190 --> 00:37:41.530
Chris Penick: Alright. Let's get a new one.
490
00:37:43.020 --> 00:37:44.360
Chris Penick: What's this folder?
491
00:37:46.330 --> 00:37:47.430
Chris Penick: Yeah, yeah.
492
00:37:47.560 --> 00:37:48.959
Chris Penick: sure. Save it up.
493
00:38:08.930 --> 00:38:11.889
Chris Penick: Something could have called it. Fred. We'll go with that
494
00:38:15.380 --> 00:38:16.200
Chris Penick: art.
495
00:38:21.830 --> 00:38:22.950
Chris Penick: We're going to give it
496
00:38:23.460 --> 00:38:24.400
Chris Penick: straight up.
497
00:38:24.810 --> 00:38:25.970
Chris Penick: Create a simple tone.
498
00:38:26.460 --> 00:38:34.769
Chris Penick: You you go straight in here and say, Yeah, and this is what this is breaking by rules. Right? My rules were, you know, simple, right, short.
499
00:38:34.890 --> 00:38:36.010
Chris Penick: specific.
500
00:38:36.190 --> 00:38:42.379
Chris Penick: not necessarily in that order, but right, the 3 s's again. I'm just like, okay. I did add, you notice, though.
501
00:38:42.500 --> 00:38:44.290
Chris Penick: want to put one little thing in here.
502
00:38:44.460 --> 00:38:46.750
Chris Penick: Do you see that I even use it
503
00:38:46.950 --> 00:38:56.829
Chris Penick: as describe a descriptor. I use it as an adjective in my request. Often I tell it I want a simple, this, I want a simple function for XYZI want a simple
504
00:38:57.695 --> 00:38:59.450
Chris Penick: class to do
505
00:38:59.600 --> 00:39:07.129
Chris Penick: this because I can always expand it in further conversation with it. But I'll start with the simple, and we build it up like Lego bricks. Right? We start building from there.
506
00:39:07.400 --> 00:39:10.290
Chris Penick: So it goes. Here's a simple demo. We'll see what happens?
507
00:39:10.360 --> 00:39:12.309
Chris Penick: Alright now as it goes through.
508
00:39:14.060 --> 00:39:15.480
Chris Penick: need a new.
509
00:39:17.040 --> 00:39:21.570
Chris Penick: There you go, make predictions interesting. Oh, of course, the classic Iris.
510
00:39:23.040 --> 00:39:27.519
Chris Penick: So if anybody is familiar with any of
511
00:39:37.690 --> 00:39:39.030
Chris Penick: the Irish data set.
512
00:39:43.820 --> 00:39:46.080
Chris Penick: And where's Iris? It's in here somewhere.
513
00:39:46.430 --> 00:39:48.469
Chris Penick: There you go. There's Iris
514
00:39:48.590 --> 00:39:49.700
Chris Penick: boat, Iris.
515
00:39:49.890 --> 00:39:50.850
Chris Penick: See? So
516
00:39:51.220 --> 00:39:55.350
Chris Penick: did it do anything super smart. Now it decided to go and read documentation.
517
00:39:55.770 --> 00:40:01.999
Chris Penick: That's the next thing I want you. If it's not documented out there for you. Oops grab the wrong screen again.
518
00:40:02.070 --> 00:40:08.339
Chris Penick: It's unlikely that it's going to do a great job of finding. Yeah, this is, this is a pretty standard setup here.
519
00:40:08.941 --> 00:40:13.440
Chris Penick: Pulling in the day, or set breaking it into 2 in our, you know, trained, split.
520
00:40:14.410 --> 00:40:16.000
Chris Penick: trying to split.
521
00:40:16.030 --> 00:40:18.950
Chris Penick: Now what we can do. Let's make a new file over here.
522
00:40:20.600 --> 00:40:21.800
Chris Penick: let's try
523
00:40:23.440 --> 00:40:25.100
Chris Penick: my irises.
524
00:40:25.510 --> 00:40:27.350
Chris Penick: Since this is this is
525
00:40:30.280 --> 00:40:32.110
Chris Penick: sure save right there.
526
00:40:34.510 --> 00:40:36.729
Chris Penick: Okay, see if it's smart enough.
527
00:40:43.720 --> 00:40:55.320
Chris Penick: Alright. So again, using our our demo here, going through we got a problem. Oh, now I've got the yellow squigglies, and, as far as I know, somebody correct me on this one. Here. I have a friend of mine that writes like books on these. And
528
00:40:56.012 --> 00:41:11.029
Chris Penick: he actually wrote the coding with AI for dummies. There you go! And I love. He refers to. As far as we know, the official definition of these is yellow squigglies and red, yellow, squiggly lines, red, squiggly lines there. But I've got some yellow squigglies here.
529
00:41:11.280 --> 00:41:14.160
Chris Penick: Alright. And again we could. We could ask, you know.
530
00:41:15.410 --> 00:41:16.790
Chris Penick: we could ask Pilot
531
00:41:16.820 --> 00:41:20.739
Chris Penick: to do it. And Pilot says, Okay, well, here's what you got to do? Import this
532
00:41:21.230 --> 00:41:23.630
Chris Penick: sure, alright import.
533
00:41:24.220 --> 00:41:29.339
Chris Penick: Let's see now, it's saying I can do the install first, st and then I've got to do. Oh, no, see?
534
00:41:29.360 --> 00:41:31.239
Chris Penick: Alright. So as you go through here.
535
00:41:31.650 --> 00:41:34.769
Chris Penick: and that even changed that. So that's
536
00:41:35.210 --> 00:41:38.539
Chris Penick: there's it. See? Live mistake. Put this right in the middle
537
00:41:38.820 --> 00:41:40.620
Chris Penick: where I was that nice?
538
00:41:40.870 --> 00:41:42.970
Chris Penick: So we're gonna do that
539
00:41:43.090 --> 00:41:44.759
Chris Penick: fix this ahead of time
540
00:41:48.800 --> 00:41:50.020
Chris Penick: install
541
00:41:50.680 --> 00:41:51.610
Chris Penick: second line.
542
00:41:57.060 --> 00:42:08.590
Chris Penick: Well, what's interesting about these is often when you give it the comments for suggestion. It will often keep its suggestions in comment for you. So the little things that have taken some time to get used to.
543
00:42:08.690 --> 00:42:10.649
Chris Penick: but you know it
544
00:42:11.020 --> 00:42:14.140
Chris Penick: as far as a tool to help you get through this.
545
00:42:14.695 --> 00:42:22.129
Chris Penick: You know, worth the $19. I don't know. Liam will have to. You'll have to ask Liam if you've it's worth the $19
546
00:42:22.330 --> 00:42:24.340
Chris Penick: on the next little bit, I said.
547
00:42:24.520 --> 00:42:32.540
Chris Penick: showed you that I I want to make sure that some time for some other examples here. There's time for looking at other tools. So copilot was one.
548
00:42:33.083 --> 00:42:37.019
Chris Penick: The thing with co-pilot is, you know. It's Microsoft. It's.
549
00:42:37.360 --> 00:42:43.870
Chris Penick: you know, it's Github. It's it's it's integrated into the whole ecosystem. I give it access to my
550
00:42:44.020 --> 00:42:48.999
Chris Penick: Github public. Github Repos. It works very well. It intertwines with that.
551
00:42:49.340 --> 00:42:53.890
Chris Penick: But let's let's take a look at some others here, just to flip, you know, to a different profile.
552
00:42:55.210 --> 00:43:00.719
Chris Penick: Let me show you so, podium, if you're looking at a cheaper setup here, we're gonna switch this out.
553
00:43:01.180 --> 00:43:02.309
Chris Penick: Close this up.
554
00:43:06.070 --> 00:43:07.790
Chris Penick: Let's close. Let's just make it
555
00:43:10.900 --> 00:43:12.550
Chris Penick: next one alright.
556
00:43:24.660 --> 00:43:26.849
Chris Penick: That that's back to our dungeon.
557
00:43:27.740 --> 00:43:28.870
Chris Penick: Make sure we're on.
558
00:43:30.500 --> 00:43:31.469
Chris Penick: Currently, I'm
559
00:43:33.270 --> 00:43:41.820
Chris Penick: Cody is running down here successfully logged in alright. So now, Code, and be careful with code because there's Codeium AI different company.
560
00:43:42.260 --> 00:43:47.239
Chris Penick: And there's codeium as the plugin. If you're looking for in visual studio.
561
00:43:47.380 --> 00:43:49.990
Chris Penick: it's see? Notice it says Codium
562
00:43:50.250 --> 00:43:52.250
Chris Penick: AI coding auto complete.
563
00:43:52.320 --> 00:43:57.269
Chris Penick: not codium AI, which is a whole different company that builds test for you.
564
00:43:58.319 --> 00:43:59.210
Chris Penick: So
565
00:43:59.630 --> 00:44:08.010
Chris Penick: same idea with codium codiums, you know. Nice thing is, yeah, it's free. But what are you paying for? What you're what you're, how you're paying for? It is letting them
566
00:44:08.060 --> 00:44:09.460
Chris Penick: look through all your code.
567
00:44:10.050 --> 00:44:12.889
Chris Penick: Alright! The the quick.
568
00:44:13.070 --> 00:44:19.179
Chris Penick: I'm going to give a little tour of these, actually running up to a quarter till so I don't have as much time as I thought I did
569
00:44:19.400 --> 00:44:26.939
Chris Penick: on all these. Here, let let me. There were. There was an earlier question. Here, let me let me open up a little bit here for some questions.
570
00:44:27.070 --> 00:44:28.560
Chris Penick: One is
571
00:44:28.600 --> 00:44:29.670
Chris Penick: is.
572
00:44:30.050 --> 00:44:35.339
Chris Penick: it's your experience is your mileage will vary, depending on whether you're doing this
573
00:44:35.920 --> 00:44:40.259
Chris Penick: with python. Whether you're doing this with Vs code, whether you're doing this in
574
00:44:40.830 --> 00:44:45.239
Chris Penick: pie charm, you know. See, I can get pie charm to do the same thing. I had to go through and help me
575
00:44:45.700 --> 00:44:50.130
Chris Penick: picks on this, this is pie charm, and and this is with
576
00:44:50.790 --> 00:44:53.739
Chris Penick: copilot installed as a plugin to it.
577
00:44:55.690 --> 00:44:58.440
Chris Penick: yes, it looks very much the same thing.
578
00:44:59.030 --> 00:45:02.979
Chris Penick: This was going through and doing some sentiment. Analysis is the one with the students there.
579
00:45:03.350 --> 00:45:10.000
Chris Penick: So setting those up is gonna vary setting up obviously different tool, different job for it
580
00:45:10.560 --> 00:45:20.420
Chris Penick: the next step, though alright. So the 1st step is just understanding how to talk to it. And really what this all boils down to. It's prompt engineering, or it's prompt in engineering.
581
00:45:20.470 --> 00:45:22.250
Chris Penick: And you know again.
582
00:45:22.500 --> 00:45:26.090
Chris Penick: anything, it's it's setting up context. So
583
00:45:26.310 --> 00:45:28.590
Chris Penick: let's do this. Let's add.
584
00:45:29.730 --> 00:45:37.249
Chris Penick: since we've got code. And now, there we go. So I wanted to see if there was any. You know codium does a little bit differently on the the
585
00:45:37.360 --> 00:45:40.800
Chris Penick: set up here, you know, refactor, explain, generate, Doc String.
586
00:45:41.010 --> 00:45:45.019
Chris Penick: So some of my favorite little things here. I tell it to generate the Doc string. It says, All right.
587
00:45:45.540 --> 00:45:50.409
Chris Penick: How's this? Does it look good for you? This is initialized new instance. The tractor sets this.
588
00:45:51.020 --> 00:45:52.679
Chris Penick: I like it. You know.
589
00:45:52.820 --> 00:45:56.029
Chris Penick: We can. We can copy it in. We can. We can apply it?
590
00:45:56.455 --> 00:45:59.780
Chris Penick: It will show you everything. It's a little hard to see in there.
591
00:46:00.810 --> 00:46:05.440
Chris Penick: Sure, you must see how, with the Dba. Alright, let's see, let's do some
592
00:46:06.340 --> 00:46:07.560
Chris Penick: neat data, though.
593
00:46:08.080 --> 00:46:08.950
Chris Penick: Alright.
594
00:46:09.570 --> 00:46:12.419
Chris Penick: you are a dba, I see a request.
595
00:46:13.880 --> 00:46:16.380
Chris Penick: Let's so. SQL, well.
596
00:46:16.450 --> 00:46:18.060
Chris Penick: let me show you a few hold on
597
00:46:19.050 --> 00:46:21.800
Chris Penick: one of them is
598
00:46:27.620 --> 00:46:30.509
Chris Penick: actually just saw one this morning that I had not tried
599
00:46:31.550 --> 00:46:34.759
Chris Penick: the simple expert. This one looked interesting.
600
00:46:40.720 --> 00:46:49.090
Chris Penick: How do I optimize? The SQL. Query would help me to have one explain the sequel. Error message is just database structure from my app. Okay, help. If I have a sequel. Query to put in.
601
00:46:49.200 --> 00:46:55.361
Chris Penick: Don't have one off the top of my head, but we'll ask it. We'll ask it. The question will say, what? Give me the query, right?
602
00:46:56.990 --> 00:46:58.070
Chris Penick: so
603
00:46:58.640 --> 00:47:02.580
Chris Penick: that same, if you've got copilot
604
00:47:02.990 --> 00:47:08.119
Chris Penick: in here, let's just make a new query of some sort. Yeah, let's ask it for an example.
605
00:47:08.460 --> 00:47:11.090
Chris Penick: There we go. Let's go back here.
606
00:47:14.890 --> 00:47:16.060
Chris Penick: 8 simple
607
00:47:18.780 --> 00:47:22.359
Chris Penick: simple. Let's add simple sample.
608
00:47:22.610 --> 00:47:24.569
Chris Penick: Let's do postgres.
609
00:47:24.700 --> 00:47:28.390
Chris Penick: Or do you have a preference somehow, do you? Are you postgress, are you?
610
00:47:28.870 --> 00:47:31.030
Chris Penick: Are you, Mysql.
611
00:47:35.480 --> 00:47:41.670
Chris Penick: Equal server? Okay, Microsoft, and it's been a while since I've touched Microsoft, Tsql transact alright.
612
00:47:41.800 --> 00:47:43.550
Chris Penick: Write a simple sample.
613
00:47:45.430 --> 00:47:46.889
Chris Penick: TSQL.
614
00:47:49.640 --> 00:47:50.600
Chris Penick: Script
615
00:47:50.750 --> 00:47:53.930
Chris Penick: to create a customers
616
00:47:54.630 --> 00:47:56.599
Chris Penick: table first, st we'll do that.
617
00:47:56.620 --> 00:47:58.589
Chris Penick: We had to have a customer's table
618
00:47:59.510 --> 00:48:00.550
Chris Penick: I make.
619
00:48:00.870 --> 00:48:01.959
Chris Penick: There you go.
620
00:48:04.130 --> 00:48:04.890
Chris Penick: That's
621
00:48:05.340 --> 00:48:11.128
Chris Penick: pretty basic. To begin with right now. So help we were gonna add something more to it. We're gonna give it to it.
622
00:48:11.520 --> 00:48:15.540
Chris Penick: we want to modify. So run the script there compatible with great customer table.
623
00:48:16.330 --> 00:48:19.629
Chris Penick: Let's see, we need a orders table. Then, too, okay.
624
00:48:20.380 --> 00:48:25.280
Chris Penick: I like this because it has the context window. I've done this before do the same. Or
625
00:48:25.810 --> 00:48:26.830
Chris Penick: and I'm
626
00:48:28.130 --> 00:48:29.330
Chris Penick: orders table
627
00:48:31.040 --> 00:48:31.750
Chris Penick: group.
628
00:48:32.110 --> 00:48:35.949
Chris Penick: And it's, you know, because of the context, it's okay. Fine. I'll create the orders table.
629
00:48:36.170 --> 00:48:39.879
Chris Penick: So let's build up each of our tables. Let's see.
630
00:48:41.940 --> 00:48:44.380
Chris Penick: That's right. Oh, total amount.
631
00:48:44.850 --> 00:48:48.397
Chris Penick: Yeah, that bothers me a little bit. There you go. There you go.
632
00:48:49.620 --> 00:48:52.099
Chris Penick: let's see if it's smart enough to refactor
633
00:48:52.550 --> 00:48:54.150
Chris Penick: the orders
634
00:48:54.530 --> 00:48:55.710
Chris Penick: table
635
00:48:56.170 --> 00:48:58.400
Chris Penick: to allow for
636
00:48:59.700 --> 00:49:00.740
Chris Penick: order.
637
00:49:01.800 --> 00:49:04.179
Chris Penick: Details of.
638
00:49:08.480 --> 00:49:09.989
Chris Penick: We'll see how smart it is.
639
00:49:10.060 --> 00:49:15.520
Chris Penick: Oh, so it does. Okay, got a little smarter and said, Okay, well, I'm going to create an order details. Table.
640
00:49:16.250 --> 00:49:27.540
Chris Penick: Alright. There you go. So we're working our way through our. You know, our normal forms. We're we're gradually getting through there. So how like, yeah, can't be done. So thanks for giving me something that completely. I didn't have prepped at all.
641
00:49:28.179 --> 00:49:41.680
Chris Penick: But we could now know. What remains we see is to put this into a tool right. Put this into our our sequel, you know, manager or query manager, or something like that. Give it a shot. I don't go try d beaver, because whatever you've got, whatever tool you've got there.
642
00:49:41.840 --> 00:49:43.432
Chris Penick: Set up the table.
643
00:49:43.980 --> 00:49:47.090
Chris Penick: let's see, we'd have to, you know, create our.
644
00:49:47.439 --> 00:49:52.929
Chris Penick: I mean on the surface. What do you think? So? How do is it on the surface? So far? Not too bad.
645
00:49:53.400 --> 00:49:54.889
Chris Penick: But you know
646
00:49:55.130 --> 00:50:01.310
Chris Penick: it remains to be seen. So that's the last little bit of things that I kind of want to give you here. There's there's.
647
00:50:01.580 --> 00:50:10.040
Chris Penick: you know, in the course for copilot, and I have to mention it for a little bit. We go into much more detail because there are other contexts one can set with
648
00:50:10.460 --> 00:50:13.049
Chris Penick: with copilot. So, for example, when I'm
649
00:50:13.260 --> 00:50:16.670
Chris Penick: working here, I gotta switch this back out again. Alright, let's go.
650
00:50:17.260 --> 00:50:18.330
Chris Penick: Let's see if it's
651
00:50:19.020 --> 00:50:21.859
Chris Penick: manage profile, switch it back to copilot
652
00:50:22.270 --> 00:50:25.020
Chris Penick: things that I can do. So. For example, in the chat.
653
00:50:25.710 --> 00:50:34.230
Chris Penick: You notice that I have this this little pound thing. This is for context here. This is so. I can set it to say, Hey, look at the editor, look at a particular file
654
00:50:34.770 --> 00:50:36.050
Chris Penick: before you answer.
655
00:50:36.240 --> 00:50:44.299
Chris Penick: look at the selection. Yeah, that's it tends to it, or even something I've done in the terminal. So if I started, like, you know, a node server and the terminal. And
656
00:50:44.360 --> 00:50:46.243
Chris Penick: hey, why can't I congest
657
00:50:47.270 --> 00:50:56.550
Chris Penick: Oh, absolutely. Now, performance tuning. You mean that that's the other end of it eventually. Yes, I've had it. Try to do optimization before, and
658
00:50:57.180 --> 00:51:01.270
Chris Penick: for better or for worse. It, you know, for board.
659
00:51:01.390 --> 00:51:05.790
Chris Penick: SQL. It's pretty good at getting, you know, following, you know, cod's.
660
00:51:06.030 --> 00:51:13.499
Chris Penick: you know, 12 normal forms, and it goes through and gradually gets, you know better and better on on normalizing that database.
661
00:51:13.640 --> 00:51:16.410
Chris Penick: for you know, python.
662
00:51:17.110 --> 00:51:31.690
Chris Penick: if I'm not careful, it tends to hallucinate libraries that don't exist, or, you notice, like it kept saying, import from game. I'm like our game was a game module or something like that, like, I don't have a game module. What are you looking at? What I should have done to ask it how to fix that
663
00:51:31.710 --> 00:51:34.369
Chris Penick: was. Come in here and say, Hey, look at the editor
664
00:51:34.770 --> 00:51:37.010
Chris Penick: and help me fix my import.
665
00:51:37.900 --> 00:51:38.770
Chris Penick: So
666
00:51:39.900 --> 00:51:42.580
Chris Penick: it's too late now, because when we pass that, help me fix
667
00:51:42.740 --> 00:51:43.979
Chris Penick: the imports.
668
00:51:44.160 --> 00:51:50.320
Chris Penick: and that would take a look at all the files that are open and say, Oh, okay. So here's what your issue is.
669
00:51:50.623 --> 00:51:54.840
Chris Penick: The other thing that we didn't add to this is, we could tell it to add.
670
00:51:55.533 --> 00:52:00.339
Chris Penick: we we mentioned explain. But there's quite a few more of those slash commands.
671
00:52:00.360 --> 00:52:05.520
Chris Penick: So explain. I I like setting up an Api. I ask it to help me build an Api
672
00:52:06.110 --> 00:52:14.319
Chris Penick: especially like when I'm working with Mongo. And I'm trying, you know, in express. And I'm trying to say, Okay, help me build an Api, so I can can talk to this thing here, and we'll help me build the routes
673
00:52:14.420 --> 00:52:17.869
Chris Penick: or flask. It's it's helping build routes out and flask
674
00:52:18.466 --> 00:52:20.849
Chris Penick: fix. You know we've seen
675
00:52:20.950 --> 00:52:27.200
Chris Penick: new new notebook new notebooks actually kind of experimental it. I made the mistake of showing you, hey? Here's
676
00:52:27.210 --> 00:52:33.189
Chris Penick: bringing it into you know, pipe, Jupiter, but it it.
677
00:52:33.330 --> 00:52:36.420
Chris Penick: It has some trouble with Jupiter. Sometimes it tends to
678
00:52:36.530 --> 00:52:39.110
Chris Penick: break things, but one of my personal favorites.
679
00:52:39.560 --> 00:52:41.200
Chris Penick: so I can ask it for test.
680
00:52:41.240 --> 00:52:43.529
Chris Penick: and, you know, generate unit test
681
00:52:43.780 --> 00:52:47.739
Chris Penick: or something along those lines. You can even talk to it by voice as you work here.
682
00:52:48.130 --> 00:52:50.110
Chris Penick: generate
683
00:52:50.390 --> 00:52:53.759
Chris Penick: unit tests. Let's see, let's see if we ask it.
684
00:52:54.140 --> 00:52:57.083
Chris Penick: Well, it helps. If I have an open file
685
00:52:57.830 --> 00:53:00.230
Chris Penick: that would help, wouldn't it? Let's open that one
686
00:53:00.680 --> 00:53:02.300
Chris Penick: something that one, too.
687
00:53:04.130 --> 00:53:05.519
Chris Penick: Here, there's a
688
00:53:07.280 --> 00:53:07.970
Chris Penick: month.
689
00:53:10.250 --> 00:53:14.019
Chris Penick: Sorry I don't know. Alright.
690
00:53:14.170 --> 00:53:16.780
Chris Penick: let's have to generate a unit test, and then we'll get some more.
691
00:53:20.900 --> 00:53:24.610
Chris Penick: so part of that that's actually what the course goes through is is.
692
00:53:24.930 --> 00:53:27.860
Chris Penick: yeah. So jazz there will
693
00:53:28.090 --> 00:53:37.969
Chris Penick: we do have a co-pilot, a separate copilot course, it's 1 day it's actually open on the schedule. Let me let me kind of show that there and then we go through a lot of exercises
694
00:53:38.060 --> 00:53:43.639
Chris Penick: much better, step by step than what I've given you in this short little cram lunchtime session here.
695
00:53:43.830 --> 00:53:46.719
Chris Penick: where we do go through. And we walk through.
696
00:53:46.860 --> 00:53:55.840
Chris Penick: Yeah, okay, here's step one. Let's do that, so we could build an application with it. We also work on. We have some pre broken applications, and we asked the AI to help with it.
697
00:53:56.525 --> 00:54:02.629
Chris Penick: Let me see if I can get it to generate my my test to here. We'll say, Okay, in. Look at the editor
698
00:54:02.650 --> 00:54:04.650
Chris Penick: and then generate some tests.
699
00:54:07.100 --> 00:54:08.469
Chris Penick: There you go. Come on
700
00:54:11.680 --> 00:54:13.680
Chris Penick: unit test for player.
701
00:54:15.050 --> 00:54:15.910
Chris Penick: Okay.
702
00:54:17.020 --> 00:54:18.050
Chris Penick: going through.
703
00:54:19.080 --> 00:54:22.600
Chris Penick: Usually bring this. I've got the font so large so you can see it
704
00:54:22.810 --> 00:54:24.749
Chris Penick: that it's gonna make. There we go.
705
00:54:25.310 --> 00:54:30.519
Chris Penick: generate some positions, moves around, moves up, moves down, says it should be here afterwards. Okay.
706
00:54:31.190 --> 00:54:32.550
Chris Penick: let's start
707
00:54:32.600 --> 00:54:41.150
Chris Penick: there. You go. Let's cruise along there. So let me let me leave you with with this. Then jazz if you we do offer.
708
00:54:42.440 --> 00:54:45.190
Chris Penick: and and, by the way, here you go, I'll I'll make
709
00:54:46.800 --> 00:54:51.099
Chris Penick: yeah, if you need to get hold of me. This either proves I'm crazy or stupid. Feel free to
710
00:54:51.810 --> 00:54:52.860
Chris Penick: some meat
711
00:54:53.690 --> 00:54:54.380
Chris Penick: moving
712
00:54:58.590 --> 00:55:01.200
Chris Penick: so things that it's not particularly good at.
713
00:55:01.650 --> 00:55:02.340
Chris Penick: alright
714
00:55:02.480 --> 00:55:04.630
Chris Penick: that that list could get very long.
715
00:55:08.360 --> 00:55:10.400
Chris Penick: Let me, by the way, there you go
716
00:55:11.770 --> 00:55:12.600
Chris Penick: now.
717
00:55:14.930 --> 00:55:18.139
Chris Penick: Oh, in Fort cool. There you go, Liam. Nice.
718
00:55:18.230 --> 00:55:21.849
Chris Penick: Yeah, hey? Game form. But I can't try to find some wet food to eat. That's nice.
719
00:55:22.240 --> 00:55:31.279
Chris Penick: Yeah, it it's it's but and then Brad had this question about what should we watch out for? The A is not good at for coding, especially things that might seem to be good at, but isn't
720
00:55:33.140 --> 00:55:34.240
Chris Penick: So for
721
00:55:34.270 --> 00:55:38.519
Chris Penick: I I you know I can give specific examples. We authentication
722
00:55:39.476 --> 00:55:44.940
Chris Penick: we were building, you know, a a mer app and
723
00:55:45.410 --> 00:55:46.620
Chris Penick: setting up
724
00:55:46.910 --> 00:55:57.079
Chris Penick: so that you know, we had user control on it. It suggested a completely non-existent, you know, a lot of people use passport, or they use Octo or oauth, or something like that.
725
00:55:57.320 --> 00:56:03.860
Chris Penick: Again hallucinated. It set up a completely. It had me make a whole new, separate authentication module
726
00:56:03.900 --> 00:56:10.369
Chris Penick: and had me build it, and I'm like, no, no, no, hold up! Hold up, you know. Its suggestion was a little off the deep end.
727
00:56:10.510 --> 00:56:17.290
Chris Penick: i i i think we're what it's not good at in a better way to put this is, it's not good
728
00:56:17.320 --> 00:56:22.109
Chris Penick: if you leave it to open ended, specific fixing a specific problem.
729
00:56:22.210 --> 00:56:27.750
Chris Penick: Thank you. There we go, as I was just about to go paste in there the specific Github co-pilot course that we do.
730
00:56:28.334 --> 00:56:39.799
Chris Penick: That's 1 day that's hands on. That's you don't really have to be an expert in any particular coding. I mean, if you're if you're already comfortable with a particular programming language like a lot of those examples are.
731
00:56:40.410 --> 00:56:47.330
Chris Penick: I mean, there, there are a couple they're they're python. There's I think there's Javascript in there. There's there's a mix from, I understand I'll have to double check.
732
00:56:47.550 --> 00:56:53.169
Chris Penick: but you know the it's you don't. That's not the the gist of that course.
733
00:56:53.780 --> 00:56:56.710
Chris Penick: but it's the other thing I wouldn't use.
734
00:56:57.220 --> 00:57:01.359
Chris Penick: you know it the best practice for this. Let me kind of leave you with that, and then I will.
735
00:57:01.880 --> 00:57:03.649
Chris Penick: with a little bow on some things.
736
00:57:03.720 --> 00:57:05.760
Chris Penick: Please feel free to get in touch with me.
737
00:57:05.960 --> 00:57:08.310
Chris Penick: Please feel free to come. Visit us in a course.
738
00:57:09.170 --> 00:57:10.809
Chris Penick: Please feel free to
739
00:57:10.950 --> 00:57:15.610
Chris Penick: to ask other suggestions. I you know I usually take a day but
740
00:57:16.010 --> 00:57:23.749
Chris Penick: but 20 min or so in the morning to kind of respond to some of these things here, but I'm going to do some best practice here. That was our last little bit. So we got our 3 s's right
741
00:57:23.970 --> 00:57:31.480
Chris Penick: so or 3 s's, but the other thing is, it's yeah. Number one. It's just don't go for the full app
742
00:57:31.840 --> 00:57:32.840
Chris Penick: it just
743
00:57:35.260 --> 00:57:39.569
Chris Penick: that, you know, that's in defiance of my simple right? Don't go for full app
744
00:57:39.930 --> 00:57:45.850
Chris Penick: with your one little prompt, like I did. Here this is, I'm showing you kind of bad examples for the beginning. Here.
745
00:57:46.050 --> 00:57:47.989
Chris Penick: Yeah, it's just not
746
00:57:48.600 --> 00:57:52.640
Chris Penick: it will the more remember, the more you give it
747
00:57:53.050 --> 00:58:05.850
Chris Penick: right, the more that you ask it to create, the more AI code created, the more likely that you're going to have a mistake in that code, the more likely you're going to have hallucinations where it's just making stuff up
748
00:58:06.100 --> 00:58:11.929
Chris Penick: in that code because it's doing its job. What it was built to do, which is, tell you what you want to hear.
749
00:58:12.220 --> 00:58:18.910
Chris Penick: So you said, you want to hear how to write the code for an awesome application. It says, Here you go. Here's awesome application code.
750
00:58:20.480 --> 00:58:22.590
Chris Penick: No, no, it's not okay.
751
00:58:22.700 --> 00:58:26.639
Chris Penick: Alright. Number 2. Here is that you know. Whatever it gives you, then
752
00:58:27.040 --> 00:58:28.690
Chris Penick: is as much or as little.
753
00:58:29.560 --> 00:58:31.879
Chris Penick: I mean, this should go without saying. But
754
00:58:32.450 --> 00:58:39.320
Chris Penick: tell my students this often. Just review that I mean go through, run it, try it in a sandbox, do something.
755
00:58:39.745 --> 00:58:44.499
Chris Penick: And then the last little bit is I'd recommend, like with copilot. Specifically.
756
00:58:44.600 --> 00:58:53.310
Chris Penick: I recommend to use it has an inline that's control. I if you do when you're working in the code, I didn't really show that too well, but is to use the inline chat.
757
00:58:53.510 --> 00:58:57.370
Chris Penick: It tends to be better because it looks at context about this inline. Chat
758
00:58:57.620 --> 00:59:01.360
Chris Penick: prefer in chat has that rather than off to the side I was doing.
759
00:59:01.770 --> 00:59:02.770
Chris Penick: There. You go
760
00:59:02.910 --> 00:59:05.399
Chris Penick: alright. But
761
00:59:05.550 --> 00:59:21.769
Chris Penick: the other thing oh, just for the record, too, is you can edit that chat log. You can go in and delete previous things so like if it went down the wrong way with, you know, started to go down one direction, and you don't want it to go down that direction. You can go and delete that from the chat log.
762
00:59:22.180 --> 00:59:32.730
Chris Penick: And essentially, you're changing the context of the conversation. It's kind of like I wish I could do this with with, you know, my my spouse, that I could selectively forget things, or she she claims I have a selective memory. So maybe
763
00:59:32.910 --> 00:59:38.440
Chris Penick: there you go that you can go in and tell it to forget a certain part by just deleting that from the chat log.
764
00:59:39.127 --> 00:59:47.530
Chris Penick: I'm running up into a hard stop here soon, but I would love to talk about this some more, and I'd love to have some more of these, and maybe have a different example
765
00:59:48.010 --> 00:59:52.289
Chris Penick: next time. Around this one is very free form, I just figured. Let's just play with it.
766
00:59:52.942 --> 00:59:55.519
Chris Penick: My suggestion is you can get the free
767
00:59:55.830 --> 00:59:58.380
Chris Penick: copilot. You can get the free codeum
768
00:59:59.630 --> 01:00:05.119
Chris Penick: account and and try those. And you know, with Vs code, which is also free and go from there
769
01:00:05.170 --> 01:00:16.789
Chris Penick: and and get a taste of this, you know. Obviously, if you can't put it on a work machine, put it on your own, and then the other one is come, see us on June 17, th and we'll have fun. I gotta do the sales pitch there. Otherwise, you know, marketing would be mad at me.
770
01:00:17.110 --> 01:00:18.924
Chris Penick: Alright! There you go! So
771
01:00:19.650 --> 01:00:21.519
Axcel ILT: We would never be mad at you, Chris, you know.
772
01:00:21.520 --> 01:00:25.887
Chris Penick: Never, ever. Okay, yeah, that's a that's a that's that's a that's a rough.
773
01:00:26.480 --> 01:00:27.549
Chris Penick: Alright, let me.
774
01:00:27.550 --> 01:00:28.690
Axcel ILT: So much. Thank you. So.
775
01:00:29.153 --> 01:00:30.079
Chris Penick: I recognize.
776
01:00:30.630 --> 01:00:35.609
Axcel ILT: Live looking. You're a brave man. I was like, anything can happen on live TV.
777
01:00:36.060 --> 01:00:36.790
Chris Penick: Yeah.
778
01:00:37.245 --> 01:00:49.050
Chris Penick: I I could stick around for a few here, of course, on. Yes, we do have a course on training foundation models or building, you know. Fine tuning on your own. Actually. The main. Let me get the main
779
01:00:49.440 --> 01:00:51.919
Chris Penick: AI machine learning course
780
01:00:52.320 --> 01:00:53.510
Chris Penick: listings.
781
01:00:53.660 --> 01:00:55.220
Chris Penick: That's probably the best thing to do.
782
01:00:55.580 --> 01:00:57.688
Chris Penick: There you go if you go.
783
01:00:58.850 --> 01:01:02.030
Chris Penick: I don't have it for excel. I have it for
784
01:01:02.770 --> 01:01:06.459
Chris Penick: Web Page, but it's the same. We're the same 3 companies. Yeah.
785
01:01:07.087 --> 01:01:13.030
Chris Penick: and then there was, yeah, intellig, yeah, is is also right intelligent community.
786
01:01:13.320 --> 01:01:18.130
Chris Penick: Yeah, we didn't talk about Java for Java people here. But yeah, if you're working with their co-pilot.
787
01:01:18.621 --> 01:01:24.060
Chris Penick: If you by the way, if you have a.edu email address, you can get github co-pilot for free.
788
01:01:24.430 --> 01:01:26.310
Chris Penick: just saying, if you're still a
789
01:01:26.570 --> 01:01:27.640
Chris Penick: a student.
790
01:01:27.930 --> 01:01:31.489
Chris Penick: you know, or your university doesn't take away that Edu
791
01:01:31.540 --> 01:01:33.440
Chris Penick: address like mine does. So
792
01:01:34.196 --> 01:01:40.589
Chris Penick: feel free. I put my email address in there, which again proves I'm crazy or stupid. Feel free to get in touch with me.
793
01:01:41.850 --> 01:01:51.280
Chris Penick: because I love doing this stuff and and working with this. That link that you see in there is to our main web page course listings. The a lot of these are being revamped right now.
794
01:01:52.090 --> 01:01:58.519
Chris Penick: So we we try to move as fast as open. AI, and you know we're getting there but slowly but surely. So.
795
01:01:58.520 --> 01:02:22.770
Axcel ILT: Yeah. And we do have a whole new line of generative AI courses coming out with a learning map. That'll be that'll be up around next week, and we'll probably broadcast that out on social media. And just. I forgot to mention this at the very beginning. But this is being recorded, and as soon as we process it all, probably sometime tomorrow, when we send you your thank you for attending the Webinar email, we'll have the URL for you, so you can watch Chris live code
796
01:02:22.860 --> 01:02:24.950
Axcel ILT: as many times as you want.
797
01:02:25.190 --> 01:02:30.652
Chris Penick: You can. You can watch Chris fight with the AI live. There you go! There you go.
798
01:02:31.110 --> 01:02:39.810
Chris Penick: So no, I I think overall. It's a you know. It's a good thing, but it's a tool that's what I want to leave you with. It's just another tool, and
799
01:02:40.120 --> 01:02:44.519
Chris Penick: don't. It's not some magic pins yet. It's not gonna fix everything for you.
800
01:02:44.880 --> 01:02:47.470
Chris Penick: but it can help definitely. It can help.
801
01:02:48.430 --> 01:02:50.070
Chris Penick: Alright. Thank you all for coming by.
802
01:02:50.070 --> 01:03:01.609
Axcel ILT: Yeah, thanks everyone. We really appreciate you taking an hour out of your day to spend it with us, and we hope to see you on the next webinar, which is actually, I think, a week from today on Microsoft fabric. So yeah.
803
01:03:01.850 --> 01:03:07.899
Axcel ILT: that'll be a good one, too, Chris. Thank you so much really appreciate it. Everyone have a wonderful day. Thanks, everybody.