Episode Transcript
Available transcripts are automatically generated. Complete accuracy is not guaranteed.
(00:00):
Welcome back to Project Synapse, our groupof AI obsessed IT guys who get together
every week and talk about issues in AI andhow it will roll out in the real world.
Uh, today we got on thetopic of AI generated code.
In particular what's been calledvibe coding, which we've all been
playing with, but as always, forthose who are fans of the show, Marcel
(00:23):
has done a deep, deep dive into.
. I'm gonna do the intro for
Project Synapse right now
you probably know the drill by now, soI'm not gonna go through the whole thing,
but if you're new to this, just hang onfor a few minutes, you'll figure it out.
We've got Marcel Gagne I and I'm gonnamake this distinction on your introduction
this week because I think it's important.
Really former system administratorbefore you became an author
(00:45):
and a famous man of the world.
And welcome Marcel.
Okay.
I'm scared now, but thank you.
Good morning.
Okay.
And John Pinard, who is is another, weare gonna call you a seasoned veteran
somebody who's been in it for a long timeand is now an executive with the company,
but has done like me, probably every job,including the most important one, which
(01:10):
is going for pizza pretty much when Yeah.
Yeah.
That's the thing.
You really know.
You've become an executivewhen you go get the food.
'cause everybody else isdoing something useful.
Doing the work.
Yeah.
Yeah.
Is season just a way of sayingOld Jim, I prefer seasoned.
Yeah.
Oh, there you go, man.
See?
And they can be, and they can beseasoned and yet young and fresh.
(01:33):
Yeah.
Fresh and spicy.
What am I doing so far?
Give it a rest, Marc, myself, we're old.
Okay.
You, we confess, and I've been doing thisfor 40 years and I've, I literally, my,
my bio says I've done everything fromworking in the mail room, which is where
I started in it, playing guitar with acouple of the guys in the computer room.
(01:53):
They said, you can figure this stuff out.
And that was my auspicious start in,it was the fact that I couldn't make
enough money in music to pay the bills.
But eventually ended up running aworldwide consulting practice in
it and working for a few companies.
So we've all done a bit.
And the reason why I point thisout is because Marcel insisted
(02:13):
we talk about vibe programming.
He finally, he said, heguilted me vibe coding.
Oh, sorry.
Vibe coding.
Vibe coding.
I'm sorry I gotta get with the vibe.
and he did that myself.
Think of you never doanything that I want to do.
And so we, we have to do, wehave to do this program now.
But as I dug into it more and startedto think about it, it became an
(02:35):
interesting thing to talk about.
We have this new situationwhere people have amazing
tools to allow them to create.
So let's talk about vibe coding but Iwant to do a little bit of a history
thing first, and then we'll get into it.
Because the pursuit of being able to writecode without having to write code has
(03:02):
been around ever since I started in IT
when, believe it or not, there were peoplewho programmed in mysterious languages,
which were close to the computer itself.
Bits and bytes, H decimal, Fortran,languages that were almost like you really
moved every bit and bite around yourself.
(03:22):
forget assembler.
Yeah.
Magical geniuses who could do this stuff.
More math and science than humanitysome days, but they could do this.
And along came the commonbusiness oriented language,
cobol, which was one of the first.
One of the first things that wascreated and why it was created was
(03:43):
to use more or less human languagesyntax, create a language that
we could talk to computers with.
And it has like any programming construct,it has very few grammatical points in it.
It can do it, it's avery limited language.
you can learn the syntax of COBOLin a day or two at most, and you can
(04:07):
know probably almost every command.
You might not know exactly how toexercise them or how they all work,
but you can learn the vocabularyof programming and which makes it
deceptive because once you, and.
I'll give you a perfect example.
Once you can write a program,you can go, do this and this.
If this not that, and you put togetheryour own cute little program, pretty
(04:31):
soon I'm a programmer And anybody who's,however, if you're doing that in cobol,
you're gonna need 150 lines of code.
'cause you have to have yourdeclaration section and your
program exactly like everything.
And God help you if there's a periodmissing at one of the Exactly.
So here's the inexperienced guy teachinghimself Cobol in his spare time, 'cause
I wanted to learn it and then I wentto this, they got this whole thing
(04:54):
that's a whole preface to this, whichyou have to tell the COBOL program
everything about the machine you're in,the environment you're in because it's
called the environment division in theprograms, like different divisions.
And I was trying to work this out and go,where will I find all this information?
Put all this into there.
Asked one of the senior programmerson the on our team 'cause I was
an analyst at the time, I wasn'treally a much of a programmer.
(05:16):
And he said, you copy itin from another program.
Stupid.
And that's where I got my firstexperience with Vibe coding.
Copy in something somebody elsehad done and it was really easy.
And I say that the principle, 'cause nowwe go, we went through and we did this
for years and years of four GL languages.
(05:38):
I can talk in English to the computer.
we created all of these things that willcreate cobol generators, case tools.
You do the processes,it'll turn into a system.
We've been following this snakeoil show for 30 years and we always
end up with the same problem.
We get a lot of early results, butwe hit the limitations of them.
(05:59):
That's the framework I wanted to createbecause and that's not that there
weren't successes with each one of thesedevelopments, there have been successes.
But you have to understandthem, know how to work them.
And to quote Clint Eastwood, yougotta know your own limitations.
And that's my, or Kenny Rogers.
(06:19):
You gotta know when to hold, knowwhen to fold, know when to walk away.
Know when to run.
And know when to run.
Yeah.
And anybody who's been on a losingproject and is, and has got their
resume out in the street, 'causethis one's going down the toilet.
Knows, knows when to run.
Yeah.
Yes.
Know there's those things as well.
And if they run withoutdocumenting what they did.
(06:39):
Yeah.
No.
Yes.
I think these are, we've learnedeverything we can learn from bad old
westerns and country and western music.
There you go.
Okay.
For what it's worth, I'm a rock guy,but that, but my dad was a country,
still is a country and western guy.
And I listened to an awful lotof country growing up despite my
protestations, just for the record,by the way, that was the COBOL thing,
(07:01):
the copying code wasn't vibe coding.
That was more like art.
Okay.
Because remember what PabloPicasso once said, good artists
borrow, great artists steal.
And that's what a great programmer was.
They knew when to grab thecode from somebody else's
working programs to create art.
I always thought that's what made youa senior programmer, was knowing where
(07:25):
to steal or sorry, borrow code from.
Watch, watch For me doing this, thePicasso thing, watch for me doing that.
I can't remember the read.
It's called The Gun in the First Act.
Yeah.
You've got the gun in the first actand you know it's gonna be used.
Watch.
We're gonna come back to this Picassothing because I think you've hit the
nail on the head, but I'm gonna keepeverybody including you in suspense.
(07:46):
Oh, okay then I'm a little bitterrified, but let's continue.
I like a show that starts outwith Marcel being terrified 'cause
he's not afraid of anything.
He'll dive into anything like yeah.
Things are looking up.
Yeah.
So let's start out, Marcel, you've beenplaying with this more than anybody,
so why don't you do the Programmingfor Dummies piece for the two of us?
(08:07):
You're a senior guy and you'recoming in to show these two loser
executives who know nothing anymore.
That's what I always assumemy younger staff could at me
going, how did he get there?
It'd be so stupid.
So programming for Dummies.
You walk us through what you'vediscovered from the world of vibe.
Okay.
First of all, the the term I justwant to lean on the term vibe coding
(08:31):
because it was the first personwho used it and it went viral after
that was a guy named Andre Carpathy.
Who was the co-founder of Open ai, justso that and the AI lead at Tesla, and
he's done a whole bunch of other things.
But he's he's one of the greatminds in artificial intelligence.
And he was talking about generatingco code using AI systems, and he
called it fully giving into the vibe,forgetting that the code even exists.
(08:56):
Ooh, wow.
He was going, I was just gonnasay, anyway, what was he smoking?
I was gonna say.
Yeah.
But he was fully given into the vibe,and I think that I don't know if John's
done it, but I think Jim's tried theWhisper stuff for typing into Yeah.
And Andrea was talking about usingthe Whisper models from OpenAI to
(09:17):
basically translate his speech into text.
Formatted appropriately,feed it into the AI system.
So he never actually evenhad to touch the keyboard.
He just sat there and talkedand said, okay, now run this,
now do this, now do that.
And it was just this idea of, asI think about these things, I add
more things I see change that buttonover there, the submit button.
Make it so that it's a light bluewith black text and stuff like this.
(09:40):
And then the AI wouldcontinue to generate the code.
And this actually goes back to alittle discovery that was made like,
man, it's hard to believe that it'sonly been a couple of years now, two,
three years since Chad GPD came out,
But they discovered that not onlywas it really good at language, but
having swallowed up all of theseprogramming languages in the creation
of the model, it also understoodthe language of programming.
(10:03):
they found out apparently purely byaccident, that the large language models
could write code and write decent code.
And of course now we're two yearsin and we've reached, I'm not gonna
say that it's a pinnacle, but we'vereached a level where we've gotten
some incredible ides integrateddevelopment environments for, the
people out there who code for a living.
(10:24):
As opposed to having towrite every single line.
You take advantage of the fact thatsome things are repeated over and over
again, So the system recognizes whenyou say print, in whatever program,
take your pick whatever programminglanguage, it knows that the next
thing that you're gonna do is maybean open bracket or a double quote,
depending on the programming language.
And it opens all that up for you sothat you can just fill in the thing
(10:46):
that it's going to print by hittinga tag key or something like that.
So that kind of automation has been comingfor quite a while in coding and we've been
trying to walk down this road for decades.
We all talk about, being old guysin it here, but, I remember when
fourth GLS came out and that wasgonna revolutionize the world.
(11:06):
But I will go out on a limb andsay and I know that we're gonna,
walk across a big, minefield here.
But I will go out on a limb and saythat we've reached a point where some
of what comes out is really quite good.
I'm not gonna say it's perfect.
I don't even wanna say that it'sgreat, but it's really quite good.
(11:28):
And it's at a level where it willoutperform a junior programmer, who's
been with, in your company for onlya couple of three months or whatever.
And that's just by sitting downwith a tool and telling it what
you want in natural language.
If I go into pick your favorite LLMImean let's pick on deep seek for a second
(11:49):
because I know that I mentioned this amonth and a half ago or whatever, when
Deep Seek first came out, I told it tocreate an HTML slash JavaScript page
that was a mortgage and loan calculator.
And it did, and all I did was justsay, I want you to build this for me.
I want the page to look like this.
And it did all of the code and then gaveme a button that I could click to run it.
(12:14):
And I had a fully formed fully functionalweb app sitting in front of me, that
I could use by just saying a few wordsand having it create something for me.
Yeah.
So exciting times.
I'll make the point though, and thisis, it's easy to get into this and
either start with two attitudes.
One is, ah, this is never gonna work.
This is snake's never gonnawork, which only makes the true
(12:36):
believers push at you harder.
The second thing though is tosay we can't learn from the past.
Because as we were prepping forthis show, I went over every.
Major disaster that I had beenresponsible for over my career.
And I, it's so funny I'm sure I'vetold this story before, but I had a,
I remember talking to a client sayingI, I've learned from my mistakes.
(12:58):
But the idea is that if we're honestwith ourselves, we've all made a
lot of mistakes or been in programsor projects that have failed and we
have these meetings at the end ofthem, we call 'em lessons learned.
And I wanted to call 'em lessons'cause we never seem to learn.
And a lot of the things that we'velearned from working with these
(13:19):
various things over the yearscan help us be more successful.
And under in understanding andusing the capacity of AI and
whether we call it vibe programming.
'cause I think that's,I think that's so cool.
It's like trucking and, oh, goback, I'll go back to rock and roll.
It's the Grateful Dead, trucking,we can do that sort of thing,
(13:42):
but, so let's just orient it forthe audience or the audience.
Our, for our friends out there who arehaving coffee with us this, on this.
What just give us, paint apicture for this of what you did.
Just talk us through the firstprogram or the first project you
worked on with this or the last one.
We don't care, but, alright.
The very first time that I tried this,I did the basics that almost everybody
(14:04):
does who gets into this and thinksthat this would be a lot of fun.
Whether it's ChatGPT or whether you openup code and then you in the window say,
create a snake game for me in Python,and it actually creates a graphical
game and you tell it, I want you to usethe WASD keys, to, left and right, up
and down and so forth on my keyboard.
(14:24):
So I want the standardcontrols for a game.
It'll default to that because itknows that's what gamers typically
use, for movement on a keyboardwhen they're doing PC type games.
Lo and behold one pass and you've gota game that actually works, where the
snake gets bigger as it eats the blockson the screen, I'd like to see three
lives up in the top left hand corner.
(14:44):
And it's it's got a life counter everytime that this, that you die when you
hit a wall or something like that.
Or you can say, I don't wanna hit a wall.
I want to be able to go off to the side.
And so all these littlemodifications it could do on the fly.
And that was like the firstthing that I did with this.
And it was exciting because I talked,granted it's an old game that I
played before, but I talked a gameinto existence and I had it modify
(15:08):
a game for me as it went along.
And at the same time as you'reprobably doing that, I was working on
a website that I one day will come tolife if, but long story on that one.
But they wanted to have games that theycould play that were, that would intrigue
somebody who had visited the website.
And I was struggling with this programmerwho was saying, it's gonna take me
(15:29):
weeks and weeks to write this game.
I went, I don't get it, man.
And I went onto Claude and I said, help.
I gotta figure out how to write this game.
Not only would it write the gamea relatively simplistic one, but
one that could have been used,somebody at a website not only would
write the game, it would run itfor me in a parallel environment.
So I didn't even have to set up anenvironment to test this thing out.
(15:51):
It did all of that.
So you have this capacity, and thisis a lot better than sitting up all
night trying to figure out which bugyou put in this code so that you can
make Hello World appear on your screen.
That's really at your, what manyprograms will call a Hello World
experience, which is you get a newlanguage or something you're gonna
do, and what do you want to do?
(16:11):
You want to get it to makesomething happen on the screen.
For some of us sitting there, wewake up at six 30 in the morning
seeing hello world and thenrealize we have to go to work.
'cause we've been workingall night on this thing.
It it's a weird experience but thatpart of it's really easy, right?
You can get to that result ina much more credible format.
Like you're getting a much a gamethat actually works, or a program that
(16:34):
actually works or or something that youcan, so what was your next step in this?
Okay, so I'm just gonna go back alittle tiny bit to try to explain,
what I felt about, the next step.
I learned to code a long timeago, and yes, John, I learned to
code in assembly, yeah, me too.
the first programming languagethat I actually used was Fortran.
(16:56):
The second one I used was assembly.
And then at some point I started workingin basic, so we're going back a ways here.
Fortran, when I was in high schooland I was, I changed to the school
that had the computer for the entirecounty, like as in the computer.
And I went to that school because Iwanted to be able to learn programming
So that was really cool and I hadthat experience that a lot of people
(17:18):
do when they first start programming.
Like you say you see, print Hello Worldand you run it and it goes, hello world.
And it's oh my God, this is so exciting.
I told the computer to dosomething and it did it.
which like might not seem all thatexciting to people today, but it
was really exciting at the time.
so I started programming.
I bought magazines where youwould type out like 300 lines
of code into your TRS 80.
(17:40):
And that's where I first programmed Eliza.
And then I recreated Eliza so that shewasn't a therapist, but she was insulting
and basically told you that, the reasonyou've got all these problems is because
you are the problem and stuff like this.
so I was really excited by that.
and then the years go on and at somepoint I came to this realization,
okay, I can make the computer doanything if I spend enough time at it.
(18:02):
And you know what?
I'm bored now.
I don't wanna do this anymore.
this is where I becamea systems administrator.
I worked on a tech support desk.
I became an administrator.
I became, a network administrator.
And because the internet was all therage and webpages and stuff like that,
coding became this thing that I did ifI absolutely, positively had to, because
it really wasn't all that interesting.
(18:23):
This new development has reawaken thatexcitement of being able to make magic
happen by telling a computer what to do.
In the history of programming, thiswas always the way, there were people
who liked to write programs, andthere were people who did maintenance
and maintenance Programmers wereinevitably looked down on, sorry
(18:45):
guys, but they could save your life.
They were wonderful special people.
I would go buy those guys pizzabecause they saved the code.
But then there were the gymswho had the right program.
I just create, I don'tmaintain, so think Picasso.
No but there's two mindsets
We have to serve the creativity.
To take us forward frompeople who, you're right.
(19:07):
I don't want to now, today as muchas I spent as much time probably
getting hello world to appear on ascreen now, damnit, I'll just do a
PowerPoint slide, put Hello World onit, put it up there and no, but it's
just, I don't want to do that anymore.
Spending eight hours to go find outthat I didn't put a semicolon or this
little squiggly character that I couldnever remember the name of in there.
(19:30):
And have my son or my daughter come byand go, did Jim, like they used to call
me Jim, they call me dad now, thank God.
But they'd say, what?
What?
It's just right there, so not only doyou do, you embarrass yourself now, but
the younger programmers make fun of you.
My, by the way, my, my soncalls me father, so Oh wow.
(19:54):
Alright.
So one of the things that's happenedrecently are these complex IDE.
So one of the things you can do, if yougo into ChatGPT, you can actually open
up a coding window, it's called Canvasthere, and in Claude is called Artifacts.
And you can actually say, open this inartifacts, or open this in canvas and
it will open up a window to the right ofyour screen where you'll see the code.
(20:16):
And when you say that you wanna changethings, you'll see the code being changed.
And then you can run it fromthere, depending on the type
of code that it happens to be.
Obviously it can't run anythingthat it can't run, in its
own internal environment.
And if it requires something external,you're gonna have to copy this stuff into
an editor on your pc, whatever it happensto be, and then run it locally on your pc.
(20:37):
Now, there are some tools, someintegrated development environments,
and there are a number of big ones.
Copilot.
I know John, your company uses copilot.
Yep.
do they use GitHub copilotfor programming up there?
No.
Oh interesting.
Okay.
So they just use copilotas the AI internally.
Yeah.
Okay, got it.
Alright.
So GitHub copilot is one of them,but the big ones that programmers
(20:59):
are really excited about are Cursor.
Cursor is one of the big ones.
There, there are a number of them.
I'll be clear, but CursorWindsurf are the two big ones.
Google just jumped into the gameyesterday and I haven't had a chance to
play with it, but it's called Firebase,which is interesting 'cause Firebase
is also the name of an open sourcedatabase system from, a few years back.
I dunno if it still exists, but it'scalled Firebase and it promises to be
(21:22):
an integrated development environment.
And if you go along the bottom,looking at it now, we've got.
Go Python flask ca, java.net,Android Studio Cloud, flutter,
angular next os, node Express.
All of these different languages thatit tells you, you can specify upfront,
I'm going to work in this environment.
I, this is the codethat I'm starting from.
(21:44):
Here's what my data files look like.
And we're not even talkingMCP yet at this point, right?
Yeah.
We're just talking about, I'mgonna create an environment.
I'm gonna drop in all of my data files.
I'm gonna drop in my templates,all of the things that I wanna do.
I'm gonna specify the language Iwant to work with and off it goes.
And then we've got a studio environmentthat starts to create these things.
The one I've played with Windsurf and I'veplayed with Cursor a lot, and Cursor is my
(22:06):
current personal favorite at the moment.
I did a lot of work with hospitals,helping them convert their systems
so that they would be ready for Y2K, so that patient records would
be available on January 1st, 2000.
So it was a big deal.
I got paid, I got four years of goodwork out of Y 2K, so thank you very
much to the coders who didn't thinkthat we were gonna need more than two
(22:29):
fields for the date way back when.
Yeah.
If you can't, if you can't be partof the solution, be part of the
problem make work for other people.
That's right.
That's right.
The reason I bring this up isthat was a data conversion issue.
And a client that I've had for awhile runs an online store, their
their furniture store, and they'vegot a, an online presence and they
(22:52):
have been asking for, they've beendoing this manually for a long time.
It's like they go into a vendor'scatalog, they find the things that
they like and then they upload it.
But they're going like, other storeshave like thousands of products because
somehow they magically fill their store.
but they've got all thesedisparate vendors, all with
their own formats and so forth.
And of course I could go in or they couldhire somebody or somebody could go in
(23:15):
and spend a lot of time converting allof this data to a format that Shopify
will accept to the stores on Shopify.
What I did instead was I broughtup Cursor I, the first one I
did was actually with Claude.
And it's great.
You drop in your files,your Excel spreadsheets, you
know where all the data is.
You drop in the, you tell it toreference the Shopify default formats.
(23:38):
You tell it what you want it to looklike and it spins up an environment.
And as both of you know when you workwith customers, if they like it and
they use it, they will ask for changes.
If they don't, they'llnever call you again.
Every day I'm gettingrequests for changes on this.
Can we tweak this?
(23:58):
Can we make this happen like that?
This first of all, they can't affordto pay me enough money to make all
these changes on a regular basis.
They just can't.
Second though, I can just go into Cursorand I can say, modify the output so
that this is like this and so forth.
And then suddenly I have my graphicalconversion app, which I've been working
on for a few weeks now, which takes allof these new changes into consideration.
(24:21):
And if there's an issue, which doeshappen, John's looking skeptically
over at me, if's an issue.
I don't have to go and debug it.
And I know this is scary, but all I do isI paste the error code from running it.
I paste the error code fromrunning it into Cursor and I say,
this is the error I'm getting in.
(24:43):
Cursor goes, oh yes, I see it'sreferencing this and so forth.
I'll fix that for you.
Just hold on for a second.
I was gonna say, that's really goodto hear because like Jim, I remember
the good old days with case tools.
I used to work with Sign-on fordeveloping code on the AS 400 and.
If there was a problem, God help youto try and figure out what it was.
(25:04):
And so the idea that Cursor hasthe ability to take an error code
and debug itself is very promisingbecause otherwise, having a programmer
have to go in to look at the codethat's created could be a nightmare.
So let's go back learning from the pastI was working at Cisco one time as a
(25:26):
consultant for Cisco in Silicon Valley.
I come from DMR, we learned architecture.
there were ways to construct programs.
There were ways to construct anarchitecture and understand the
architecture of the business,understand the processes.
we had this stuff Drummed intous, and it made us much better.
As a matter of fact, I don't thinkwe were ever the best programming
group in the world, but if youwanted it to work, you called us.
(25:49):
And that was, that was our thing.
We thought through.
We planned through.
Yeah.
And we did it.
So I'm sitting there talking to the CIOof Cisco at the time, and I'm saying,
you guys have no architecture here.
Like, how do you keeptrack of all this stuff?
I said, and he said, Jim, thistakes a week to write this.
If it is not right, we'll throwit out and write it again.
(26:11):
And I walked, there's two waysyou can walk outta the room.
You can say wait a minute, isthat a really smart thing to do?
But on the other hand,he's probably right.
Yeah, we would've spent like four weeksunderstanding everything, architecting it.
He took one guy, put a, but punched abunch of HTML code together and it worked.
Now there are limits to where you shoulduse that, but I think my point is before
(26:36):
we start overreacting to this and saying,oh, this is terrible, we can't use this.
We gotta look for the placeswhere it really functions.
And that was the first time.
'cause if you've ever done adata conversion, you know what
Marcel's talking about, right?
Yep.
It's just painful work and it'snot meticulous programming.
But if you're gonna try and do thisin Excel or a programming language,
you gotta come up with all thesedifferent rules to say, okay, I've
(26:59):
got Marcel p I've got the period thereyou to construct this using rules.
Would take you hours ofpainstaking work to do.
Very little.
Taking the period out of everybody, orthe mid understanding, a middle initial.
And you could spend daysand days working this.
But the problem with data conversions,you don't tend to do them a million times.
(27:21):
it's a one off, right?
You do the data conversionand then you're done.
It's not a program thatis mission critical.
No one is going to die as a result of it.
Because they're not gonna be tryingto use it 10 years into the future.
They're going to be using it tomove this from there to here,
and then we forget about it.
(27:41):
And your guy at Cisconailed it in that respect.
One of the programs that I did,and this was like a couple of
weeks ago, it just wasn't working.
And I like, it's not like I'd spenta humongous amount of time, but
it had dug itself into a hole thatit couldn't dig itself out of.
Okay.
Sound familiar John?
Yeah.
(28:03):
But here's the thing.
I told it to analyze thethings I had asked for before.
Seriously, look at the things I'veasked you before and give me a
summary of how this thing was created.
And then I closed that session.
So I had a screenshot ofwhat the app looked like.
(28:25):
Okay.
I had my data files.
I told it to summarize everythingwe'd done up to that point.
I closed it.
I opened a new project.
I gave it its own instructionsfor rebuilding this thing, and
it did it in one shot perfectly.
That's magic.
Interesting.
(28:46):
Okay.
I don't think both John and I have had theendless loop of death on, on this stuff,
and I think both of us have now saying,where were you Gagne when we needed you?
But your Cisco guy, nailed it.
Basically it's like I could spendanother day trying to figure out what's
going on here, have it look at itscode, correct it, blah, blah, blah.
But I could recognize that there wasa hole being dug there, so I could
(29:09):
recognize that and I just dumpedit and started from scratch and
saved a day and a half or whatever.
You said that you took the instructionsyou had given it in the first place
and gave it to the, a new windowwithin Cursor, and it got it right?
Correct.
Correct it, it goes back to the oldadage about the sign of insanity is
(29:30):
doing the same thing over and overagain and expecting different results.
So if you've asked it thesame thing twice, you expect a
different result the second time.
Now, and the I'm being somewhatfacetious, but I guess the question is
that because of the fact that Cursorrecognizes, Ooh, I made a mistake, I
(29:51):
need to correct it in the second one.
Nope.
Nope.
No.
The reason that it works is becauseevery time you open up a new chat in
ChatGPT or any of these coding enginesand by the way, Cursor uses Claude 3.7
as by default it's using Claude 3.7.
It's been upgraded to 3.7.
(30:12):
It was using 3.5, blah, blah, blah.
But you can tell whatever foranybody out there who's listening.
'cause we've had listeners fromthe car going three point what?
3.7 is.
This is good coding, right?
I think that's, yeah.
This is the latest and greatest baby.
Yeah.
Anyway because when you generate somethingnew in generative ai, and by the way,
(30:33):
this works with image generators.
If you're using four, oh the newfour oh image generation stuff, like
we've all played with it and we allthink it's amazingly cool and so on.
If you say, modify this image,eventually like it, it's just
not really working anymore.
So what you do is you take the lastgood picture that you had, okay, yeah.
That you wanna work from.
You take that, you close the currentsession, you open a brand new chat,
(30:57):
paste the image and say, modify that.
And it forgets because you've toldit to forget everything that happened
before then, other than obviously storedpersonal instructions, You can do the
same thing in a programming environment.
So you're saying, okay, just forgetall of that and start from scratch.
So it's not recognizing thatit has errors, it's just
regenerating from the beginning.
(31:18):
And that's actually one of those thingsthat people who work with this stuff
on a regular basis, and I'll includeit, I'm not the greatest at this by
any stretch of the imagination, but ifyou work with this on a regular basis,
you recognize that sometimes you cutyour losses, you open up a new window
And you start from scratch.
And that starting from scratch Okay.
(31:39):
Creates a whole new context window.
Yep.
For one thing.
So there's a smaller context for the AIto work with, and that smaller context
means it's easier for it to, to cyclethrough all of the things that have
happened before to give you a new answer.
I have done the same thing, but withjust the traditional AI assistant in
(32:00):
ChatGPT, that yes, you ask it somethingand then you go in and modify it
and you say, now change it to this.
And you get to a point whereit's this doesn't even look like
what I'd asked for originally.
And so what I've done is Igo back a couple of prompts
and I'll copy that prompt.
I'll close the window, open anew window, and stick that new
(32:21):
prompt in and start from there.
So it's really the same idea.
And I didn't think this through.
I just didn't want to talkto the stupid thing anymore.
I.
So I went up and got a glassof wine and came back and went,
oh, okay, I'll start again.
So I was actually acting intelligentlyby going and getting a glass of wine
(32:45):
and then coming back and starting.
It's, absolutely.
Going off and getting a glass of wineis always an intelligence solution.
Yep.
And by the way, alcohol, for thepeople who say alcohol is not a
solution, alcohol is a solution.
Chemically speaking,I just wanna say that.
Yep.
Absolutely.
No, the, but we've, so we've gone throughthe Kenny Rogers thing, know when to
hold them, know when to hold them.
And that's, so we've got we'velearned that the program, I'm gonna
(33:07):
do programming by Kenny Rogers.
This is gonna be good.
But the, so you've nowgot these, you've got.
A reasonable construct in there.
So what is the, what's thelevel that you've taken this to?
Data conversion, any other stuffYou're using it for Marcel?
Yeah, I actually there is there's apost, I should actually try to find
it and we should include it in theshow notes because it's really cool.
(33:28):
You know who John Carmack is?
Yeah.
John Carmack, legendary programmer.
He's the guy who created Doom.
The famous video game Smarterthan me by a million times.
Yeah, exactly.
Anyway somebody just a few daysago had a program, wrote an AI
agent that auto-generated Doomlike a Doom maze and so forth.
And the whole thing was beinggenerated on the fly by an AI model.
(33:53):
Okay.
Wow.
So Doom like this.
And this is brilliant because.
John Carmack.
Again, he's a fricking God for anybodyout there who doesn't understand this.
In the world of video game coding, the manis thought of practically on that level.
He wrote this incredible gameand you can still see it.
It's really worth looking atthis Doom, this incredible game.
(34:13):
And I think, I forget what level.
We were still on 3 86 SX PCs.
I can't remember.
We were on pitiful little thingscompared with processing now and
suddenly there's this incredible gameI remember playing Doom back in the
late eighties, maybe early nineties.
And we used to play it at work afterhours, and it was great because
(34:35):
you could play it over the network.
And we'd have half a dozen of us sittingthere on the network playing this
incredible game with phenomenal graphics.
Like it was just light years.
First for its time.
Yeah.
Oh, absolutely.
Yeah.
But you know what, the firstgame I discovered, the first game
that I ever played of his wasa game called Commander Keen.
(34:55):
And I still love this game.
It's one of those things from mychildhood, okay, I wasn't a child at
the time, but nevertheless, I playedcommander like, and I loved yeah.
my wife made her only financial joke.
But, and that was, what's thedifference between Jim and Bonds?
And that's bonds.
Eventually mature.
Mature, NNNN.
(35:17):
Oh, by the way, for the record, I stillplay video games every single day.
I am a gamer, and I amperfectly happy to admit it.
But anyway, so Commander Keenis him Wolfenstein 3D Okay.
Was a Doom like game,and of course and Quake.
Oh yeah, okay.
Quake.
(35:37):
But these games are, were all monolithicand monumental accomplishments for
the time by hand, coded by hand.
And what Carmac and people likehim did, is they also spent years
trying to figure out how do I get thecomputer to do some of these things?
So that I don't have tocode them all by hand.
(35:59):
So at the beginning he's codinggames and assembly, right?
Where you're individuallyreferencing pixels and so forth.
And at some point it's okay, so now webuild game engines and the game engines
handle things like background motionand zooming and loading the next frame
so that it looks like you've got acontinuous motion across the screen.
And these were all like massive,incredible innovations at the time.
(36:21):
But you could think of them as earlyversions of AI coding engines, because
what they did was they took someof the harder work that wasn't the
creativity aspect of designing a game.
They took it away from the programmerand said, don't worry about little things
like physics, whether this object isgoing to fall when it goes off a cliff.
(36:45):
I'll take care of that for you.
And this.
Go back to my history lesson here ismy daughter, who's a fantastic game
writer, l learned when she was a kid,how to move a pixel around a screen.
It's a lot of work.
There's a amazing amount of pixels,there's math that you have to
learn and all of those sorts ofthings that you have to do that.
(37:07):
I think that was an incredible disciplinewe can talk about where, learning
the foundations of how somethingworks maybe is a still a good idea.
And not with Jensen, Huang saying, don'tteach anybody to code anymore, but the,
but she would be doing all of those thingsand then I started to think about this
and you say, you can dismiss this, in theold days when of the Renaissance and the
(37:28):
painters who did massive murals and thingslike that, we like to think of them as
the painter that did all of these things.
But in reality, you know what, they had anarmy of guys who painted the background.
They've done trees,they did the mountains.
I'll take care of God and Adam, you takecare of the trees in the background.
And I think there's, before we dis thisstuff, there's something to this, and
(37:52):
again, I'm still mystified by it, but,and the reason why we spent all this
time talking about Doom for anybody,I think it, it will conjure up images
for people who've been around longenough to appreciate those things.
The, you can type in a Doom program andwe're now able to recreate something that
(38:12):
took a decade or more of trial and errorto, to get to, and we're able to do it
by typing a few commands into a machine.
There's a lot to that.
If you ever, have to do aproof of concept, now you're
just a way to the races.
This thing that I was workingon for this other, it's a friend
(38:33):
who wants to do something.
It's one of those projects whereyou end up doing it for a friend.
Proof of concept.
I can't do it yet, but in threemonths, what we've taken eight weeks
to do with a website in another threemonths, I'll be able to just say.
Do this all and get the proof of concept.
I don't care if it's ironclad or ifit's got security on it yet or anything.
(38:55):
I care that I could showthat this idea works.
And so now even with the great tools wehave now, 'cause we're using a whole pile
of reworked stuff, I would be able totake this and get done in an afternoon.
What it's taken us weeksand weeks of work to do.
No, I was just gonna say that afteryou had talked to us about Firebase
yesterday, I went in and was looking atit, although I didn't have luck with it.
(39:20):
It sat there and spun all night.
But it is day one or whatever, butthe concept of that is phenomenal
that it's the same idea as.
You have a prompt, you provideit with a prompt of what you
want it to, to prototype for you.
And, so there, that's that wholeidea, Jim, with the proof of concept
(39:40):
that you could potentially giveit a single prompt and it'll spit
out a proof of concept for you.
So a lot of these ideas are ideas thatyou build on top of and of course this
is the classic, on the shoulders ofGiants thing, which is why, stealing
code is not necessarily a bad thingbecause that's not the final product.
The final product is theidea that comes together.
(40:00):
it's not, can I run andjump running and jumping?
Big deal that's beendone a gazillion times.
It's like what happens in between?
What's the story that drives thisrunning and jumping just to I wanna
finish up the Carmack thing becausewhat was interesting about it was I.
He posted a tweet or whatever it waswhere he said, this is really cool.
This is an amazing proof of concept.
This AI that was auto generatingon the fly, not generating the
(40:24):
game, but generating the levelsand the movement on the fly.
So this wasn't coded, this was generated.
And I have to stress how magical that is.
So he talked about that, and then somebodycame up and said, John, while I respect
your work and all the work that you'vedone in the past, as, the man behind
Commander Keen and Quake and all thesegames and so forth, I have to say that,
(40:46):
I think it's a real shame that you'reendorsing this form of programming,
which is built on the back of stealingfrom people's ideas and stuff like that.
And John replied in a very longpost, arguing essentially what
I've been arguing all this time.
He said, I. He said, I'llbasically, I'll bite and let me
answer why I think this is great.
(41:07):
And he talked about this history ofbuilding from assembler and going
through all these levels and how noneof this idea, making things simpler,
steals or takes away from anybody.
What it does is it makes it possiblefor you to bring an idea into the
world without having to wait years ormaybe having that idea, frankly, after
(41:29):
you're tired and you've lost a pile ofmoney and you just can't do it anymore
because there are a whole bunch of otherthings and the idea dies on the vine.
Now you have the opportunity tobring an idea, that you've got
in your head and have it transferinto the real world, quickly and
easily in a magical sort of way.
And yes, there will be things where peoplecreate things just for me in the moment.
(41:53):
I want to be able to jump intothis environment, like the
holodeck or something like this.
I wanna be able to jump intothis environment and just
explore something new and cool.
And it doesn't actuallymatter that there's no story.
It doesn't matter.
one of the things I'm goingto do with this and personal
productivity, I hate almost everypersonal productivity tool I have.
(42:15):
And I'm hoping, no, I'm hoping thatI was gonna try and find some time to
get away for a couple of days, and Ijust wanted to create that personal
productivity tool that I wanted.
It remembers everybody I know.
It reads my, my, through my contactlist contacts, remembers everybody I
know remembers something about them.
I can put all my notes togetherand then I've discovered, oh, they
created that with Notebook, LLM.
(42:36):
but I can take a tool like thator create a tool that is got
all those things that I want.
And, these are the things that Ithink used in an office and I've
used the Excel model before tosay, this is a lot like Excel.
You can create all kinds of stuffthat'll make your day more productive.
The question that we have to crossinto though, and I think it's
(42:56):
worthwhile crossing into, is, canthis ever be ready for prime time?
Can you build corporate systems from it?
Even small corporate systemsor God forbid, large ones.
And before we all say no becausethere are lots of problems.
Marcel won't say no, right?
No.
Marcel won't say no but John andI will say no because we're gonna
(43:19):
end up dealing with either supportfrom me or security from him.
And that's where I think we, wehave to watch how you go with this.
And it's still, it goes backto the topic we had last week.
If you want to understand how fastto move with these things, understand
that people and processes anddata move slower than technology.
(43:43):
Yep.
A couple of pieces inthis Prototyping a system.
Absolutely.
Great.
And I think there are some ways, by theway to construct bigger systems with this
but if somebody walks into your officeand starts talking to you about, how
they can build this system for you in twoweeks and it's gonna run your financial
services company or something like that.
Run far, run fast.
(44:03):
Know when to walk away.
Know when to run.
We've now taken that,remember the callback.
There you go.
We're back.
It's the callback in comedy.
So I've got a callback there, butdon't get stuck into something without
understanding this, 'cause there'sa pile of things that can go wrong.
One is, and John, I'llleave this with you.
How would you do a code walkthroughfor security on a system that
(44:25):
had been generated by an ai?
Ooh.
Yeah.
And I mean that from what I've seen,in most cases you can't, or if you can,
it's, if I wrote a program and I hadto go back to debug it, it's easier
because I'm the one that wrote the code.
But now you've taken somebody atMarcel's twitching now you're taking
(44:47):
code that has been created, not bysomeone else, but by something else.
And you have to try and understand it.
Now, one of the things that, I thinkit was you I was talking to this
morning, Jim, about whether or notthere's documentation within the code.
That tends to make it easier if, ifeach step of the program is documented.
(45:10):
But if it's not, it canbe a real nightmare.
'cause you can look at it and go,why the hell did they do this?
And the one thing we weretalking about this morning is.
I think you said there was 85 waysof burying back doors and things into
code that you may or may not catch.
(45:30):
And from my standpoint, this is one of thethings I absolutely love, AI in general.
The big issue that I have withit is it's gone way too fast.
And the whole move fast and break things.
I get it.
But one of the things that I've seenthat's being broken is security.
(45:52):
Security isn't supposedto be an afterthought.
It should be built as part of it.
And my hope is that as AI in generalmatures, They will start to incorporate
security in from the ground up.
And I'm certainly hoping that from acoding standpoint, that becomes the case.
(46:14):
you have to distinguish between the LLMmodels, which are notoriously porous
and like I was dealing with one on thesecurity show, I do cybersecurity today.
I was doing, dealing with one howyou convinced ChatGPT to break its
rules and write this spam program.
And the answer is you ask it, of course.
(46:35):
so let's go back to this and startto think about some of the things
that you have to do for one thing.
And Marcel, I don't know if you'veplayed around a lot with this and I'm.
Guys, I'm not the world's greatestprogrammer in, in the world, but
I am the world's worst documenter.
Absolutely.
And the cool thing that I foundabout AI was you could put in some
code and say, document this for me.
(46:56):
Yes, it was, and it will doall that stuff I hate to do.
It will interpret all of thesedifferent things and document it.
So there's some real power in beingable to use these tools properly.
And this is what I'm saying aboutyet we have to move at the speed of
people and sometimes and process.
And so understanding how we're gonnadeal with security on this is great
(47:19):
because, but the other piece that'sreally there is you never attribute to
maliciousness what stupidity can do.
So that's, as much as we worry aboutpeople building malicious things into
code I'm looking for something whereI could go through, can you find all
of the places where this code couldbe insecure and I think it's got a
(47:41):
lot more patience than I do for that.
And I think that's actually one of thethings that you know, you're gonna need
to do to address this, John, is be ableto accept that the people who are doing
some of this, like the bad guys, whoare doing PIN testing and so forth,
penetration testing, trying to break intosystems, or trying to find back doors,
(48:01):
or trying to jailbreak or trying to do,nefarious things of one form or another.
They are using these AI systems Yes.
To say, have a look at this.
the idea that you're always gonnabring it back to human oversight.
Is great, but human oversight byitself is a formula for disaster.
Yes.
If you're going to use these powerfulsystems to create powerful tools,
(48:24):
you're going to want to take advantageof the fact that they are also
able to find ways to break things.
Yes.
and use that as part of your toolkit.
Now over in over in our discordthere, I just posted while we were
talking, I had it create an app for me.
I told it to create a productivityapp for Jim, like ridiculously simple,
but productivity app and run itinside and it did the whole thing.
(48:47):
And it even, it works, but it evenfigured out that there was an error in
its own code and it had a button thatsaid, fix this error, which I clicked.
So if you take a look at it, maybeyou want this is in Firebase.
Yeah.
So this is my first thing in Firebase.
I think that these thingsare in a way magical.
And, I don't want to be all, jumpinginto the boat a hundred percent here.
(49:10):
I recognize the weaknesses andI recognize the dangers as well.
I'm not completely crazy that way.
But we have to take into considerationthat this is also our best way to deal
with the monster that we're creating.
Sometimes you bring in the best,the best good guy to fight A
bad guy is another bad guy.
And I was gonna say that I think youbecome, it gets to the point where
(49:32):
you will have an arsenal of AI tools.
And I don't know let's say that youwrote something with Cursor and you
might have another AI tool that's gonnago in and say, and you're going to say,
okay, go in and verify the code for me.
Like I'm not sure you'd want to do it.
(49:52):
It's like you never have aprogrammer QA their own code,
you get somebody else to do it.
And so to me, that's the samething is write it with one AI
and have another AI verify it.
Yep.
No, I think that perfectly Vivi, butwhat I'm getting at is as we get into
the enterprise level and you start tobuild bigger systems, we have to think
(50:13):
of new ways we're gonna handle them.
And the other thing that I was thinkingabout the other day was, how easy it
would be to construct a red team usingan ai, your idea of AI versus ai, the
and so that instead of trying to dowalkthroughs of ponderous amounts of
code, why don't we just attack it all?
Throw everything we can at it, and Ithink, that's a viable idea that you
(50:37):
couldn't do before, perhaps with yoursystem, or at least people never did.
'cause if they did, they would'vefound a lot of stuff that was in there.
So you can take that pernicious, bang awayat it type of thing that hackers will do.
Trying everything.
And you can automate that.
And I'm thinking that could actuallybe an improvement on enterprise code.
(50:59):
The other piece, the third piece though,I think that we have to think through
is, and I think this is gonna come upwith MCP and for those model control
protocol piece, is that we're nowbuilding the things that are going to
help these move into the enterprise.
And for those who don't know what MCPis, it's really, I. I'm starting to
think of it as a bridge, and that is,it contains all the rules that you
(51:21):
want to have, that allow you to con totalk to data or talk to other systems.
We used to write ponderous APIs.
I think we're gonna now have exposethose elements that we want to expose
that can be accessed by an AI model,and that gives us actually better
control in some aspects than others.
(51:42):
In other words, I'm going to allow you tohave these services and these things that
you can contact and play with the program.
In many cases, I think we may getto a better control environment
than we are at right now.
'cause those MMCPs are going to be,I think they can be written well
and they can be put together in waysthat will help you really restrict.
(52:03):
So picture a user that you want to comein and you want to give 'em all the
ability to use AI to do all the reportingor all the stuff that you wanna do.
And so I'm gonna put together anMCP that's gonna say, you can get
to all this data, not this data.
You can get to everything here.
You can do, you can retrieve it, you canreport on it, and all that sort of stuff.
Go wild, but you're not gonna update it.
(52:23):
So the MCP stuff is interestingbecause first of all, it was
developed by philanthropic.
and wrapped into Claudeat the very beginning.
And essentially it's for the people who,for the programmers out there who remember
the days of object oriented programming,
Woo oop.
Yeah.
Yeah.
The exciting other thing I could,the idea, another thing, I could
never make work, but people werealways trying to convince me of that.
(52:45):
That was another snake oil thing.
But anyway, the idea was that you hadall these little program snippets out
there in the world, and they were allgoing to follow some kind of standard
set of rules or whatever, and youcould just pull in this little snippet.
Now, to be fair, these thingsexist within programming languages.
They're called librariesthat you bring into it.
(53:06):
So that stuff does actually exist.
It's just, it's not quite at the levelthat people envisioned it way back when.
But MMCPs are essentially, if you wannathink of it, a collection of agents.
They are like, for anybody who'sused Zapier or Zapier, yeah.
Zap.
Zap, yes.
Zap, yeah.
Zaps, whatever.
Yeah.
For anybody who's used that, what theseare basically and they have rapidly become
(53:30):
the industry standard, the little hooksthat can plug into any database that can
bring in any other piece of AI code thatyou need to do something and so forth.
And if you want to create something inCursor, for instance, or in Windsurf, or
I'm sure in Firebase, although I haven'ttested it yet what you do is you say,
pull in these MMCPs to do these thingsfor you so that you're not recreating
(53:51):
all of these things all the time.
And by the way, all of the majorcompanies are going on board.
This is actually probably one of thefastest accepted standards in the
history of the history, isn't it?
Never seen this before.
What, I guess I would classify thisas like a universal API, right?
That, all of these systems and thingswill have APIs that you can either
(54:17):
put or get data from their, thesesystems, but they all write their own.
And I think, anyways, that theseMCPs is, here's a standard format,
tell it what your, what the fieldsare that are available and so forth.
I think they're better than that.
Probably we're gonna get mail on thisone, both from the people who know
this way better than we do, and fromthe people who hate us because we
(54:39):
attacked object oriented programming.
But I think the beauty of theMCP if anybody's ever had to
formulate or work with an API.
Like people say, oh, we give it arest API gimme a rest on that one.
Give me a, we'll give you an API.
They're never documented well enough.
There's always some little thing thatyou're working on for ages to try and
(55:03):
get, which should be a simple call.
And I'll give you an example.
We did this with we set up aclient and we're trying this out
and we put together a chat bot.
And that chat bot could use rag, itcould read all kinds of things, and
rag retrieval, augmented generation.
It was just a good way of accurately beingable to read almost any type of document,
(55:24):
bring it into the AI really great piece.
So we put together a chat bot and then we.
Put together all of this stuff thatsaid we're gonna, actually, when
the people chat with us, they shouldbe able to set up an appointment
with one of the salespeople.
There's an API for that.
And we got the API documentation.
I won't name the company, butbasically It just didn't work.
(55:45):
And all we got back from supportfrom these guys was it should work.
So we got stuck in an embarrassingsituation with a client believing the
documentation that these people had.
And when they got to it, as happensin the modern world and watch out
for this, these little companieswith all these new little things or
whatever can just walk away from you.
(56:07):
so APIs I'm happier tostart to see things were.
The companies that provide the softwarethemselves, like a, A-A-A-C-R-M
or a banking system or whatever,provide their own A MCP and we're
relatively certain it's gonna work.
And that I think that I'm actuallymore comfort with the concept
(56:30):
of an MCP than I am with an API.
Yes.
Believe it or not.
Yes.
Because sometimes they, theonly thing you can say is she no
work, that brought the mood down.
Geez.
Yeah.
Yeah.
Gosh.
No actually, no I was justgoing to say that, yes.
I actually think that callingit a universal API is a nice,
simple way to look at it.
Yep.
and, I'm happy to let it go that way.
By the way, when we were talkingabout AI versus ai, I thought I
(56:53):
was thinking about Mad Magazine.
Remember the Cartoon Mad Magazine?
Spy versus Py?
Spy versus Spy.
Oh yeah.
You had the Black spy and the White Spy.
Yes.
So anyway, so yeah, so what I did wasI told ChatGPT to create a comic strip
before panel comic strip in the style ofspy versus spy, calling it AI versus ai.
So I'll post that, I'll post that inthe in the discord server as well for
(57:15):
anybody that wants to take a look at this.
Absolutely.
here's the thing, John, just for you like.
People who do what you do, I thinkare gonna be increasingly important
in the sense that there has to besome adult in the room that takes
a look at these things and decideswhat, what we should and shouldn't do.
The idea that you can put this sort ofstuff in the hands of anyone and have
(57:37):
them generate or make anything thatthey like is both really exciting.
But on one hand, it'salso really terrifying.
Yep.
If I'm creating like a simple game, likeI, one of the other things I did, Jim,
you asked me, what else have you done?
I made myself, you ever play these gameswhere you're basically flying a bird or
you're flying a, a plane or somethinglike that and you're dodging, yep.
So on a lark, I was talking to myson about this, a couple weeks ago
(58:02):
and I said, oh, let's see if we couldmake a game like this on the fly over
breakfast before you run off to school.
And we did this in likeabout four or five passes.
And of course it workedperfectly the first time.
And in the second time it's oh,but there should be trees that
you dodge as you go through.
Okay?
So there are trees, there shouldbe mountains and if you hit a
mountain, you crash into it.
And this was a entirely abrowser based game, okay?
(58:26):
And it worked and it's fun.
And I think increasingly we're gonnahave stuff like this all the time
where you are an individual at home.
And again, this is not missioncritical crap we're talking about here.
This is not stuff where, I don'tknow, you can apply tariffs
and take down the entire world.
Financial systems on a tweet.
Not that sort of stuff.
I'm not talking anything at that level.
(58:47):
but you can create something that youneed at this moment for you specifically
that scratches a particular itch thatdoes something that you need to have done.
These sorts of models, these sortsof development environments, which
are increasingly being wrapped upinto the models themselves as opposed
to requiring, Stuff like fire basedstuff like Cursor is going to be for
(59:10):
programmers working at companies, who areactually trying to do development work.
But increasingly you're gonna be ableto just call something into being, to
do something for you in the moment.
And that could be a game, but itcould also be helping you with Yep.
Your finances or whatever.
So a couple of pieces of wisdom as wewrap up for our day in this though is
that these things always start at thepersonal level or at the small level, and
(59:33):
they work their way into the enterprise.
So people who think this isn'tgoing to work its way into the
enterprise you're fooling yourself.
It will, first of all, it'll come ineither with one of your programmers or
in some software that you already have.
these companies are out there.
Don't think Facebook and Meta andall those people are not working with
AI right now to generate their code.
(59:55):
It that's already that ship sailed.
So we're gonna be dealing with this.
So the question is going to be, and Idon't wanna treat people in security
like they're the, the adult in the room.
I treat you more like that friend thatmy mother would want me to go out with.
If we were gonna go drinking,the one who's gonna say, we've
had enough, let's take a cab.
So that Make responsible individuals.
(01:00:16):
Make your ciso thatresponsible individual.
They don't have to be old or anything.
They can be just responsible,but we need to deal with that.
We're gonna need to deal with testing.
And we're gonna have tounderstand how to test.
And that just because this stuffarrives in a package does not mean
that you don't have to test it.
And we have to learn to useai, not just for coding, but
(01:00:38):
for security and for testing.
Agreed.
So those are gonna be important skills.
Don't dismiss those.
Like the way we we might made thatjoke about the people who write the
programs, people who maintain them, thatyou need, people are gonna be able to
do security testing and maintenance.
Yes.
And so we'll have, if so, if you'remaking, if you're using these to
make systems, start small, startplaying with this stuff now.
(01:01:02):
Don't wait for it toarrive on your doorstep.
and don't rely on, and don'trely on the humans entirely.
You introduce me to thebeginning, Jim, as sys admin.
Okay.
And one of the things that cisadmins do is we pour over logs, to
try to figure out who did what andwhat's happening and stuff like that.
And humans, John you can'ttake in all this data.
(01:01:23):
There's, it is just impossible.
No, absolutely.
To take in all this data.
So what you did was you wrotescripts to highlight only those
things that were important to you.
Yep.
So yes, Jim it's not coming.
It's here.
And if you ignore it at your peril.
Yeah.
And we've talked about this, wewere two and a half years into the
real exposure to generative ai.
(01:01:45):
We talk about AI years in three anda half months, what you're gonna be
able to do is going to astonish you.
and that, when you start to see thebig tools getting played out and
some of the constructs coming in thatallow you to create bigger systems and
more complex systems with this, then
(01:02:05):
.The only fear I have is the same
fear I have with humans, and that is
once you get to a system, it doesnot mean the death of architecture.
You need to plan how you use these things.
And one of the lessons we learnedwith all kinds of things, we
learned don't build something big.
It'll only break your heart.
(01:02:26):
Try to find ways that you canbuild this in a construct that
is manageable and understandable.
we started this whole idea of takingbig systems and taking them down
to microservices so that they wereindependent, could operate and
could exchange data and processeswith other things, but were
units that were reasonably good.
(01:02:48):
So you knew if you hadcut and paste it worked.
this utility had worked and sowe need to figure out whatever
that parallel concept is for ai.
'cause I could see somebody, andthis is my, we talk about the guys
who are talking about replacing thesocial security administration system
and probably already have a lot morecode written for it than we think.
No testing to make sure that it cantake the load so it starts collapsing.
(01:03:12):
Yeah.
No idea of what processesthey're working with.
So the what's gonna kill them is thebreaking of processes and probably
not a wit of user testing or moreimportantly, user experience testing.
these are the things that, we'regoing to need to understand how
to work with in the modern world.
(01:03:33):
Now, as harking back to our programlast week, you used to have two
or three years to deal with this.
Now you got two or three months.
But one of the things that you cando is don't just use AI to build
the code, use AI to test the code,use ai, you talked about user
experience, those types of things.
(01:03:54):
Use AI for those as well anduse AI to try to break the
code and to break the security.
Use it for all of the differentfacets, not just to write the code.
Yeah.
And if you're not using itfor specs now, use it now.
Start today.
Why?
Because this is what I meanabout user experience testing.
(01:04:16):
You can build a prototype insteadof getting a document that somebody
signs off, you can show 'em thisand say, is this what you want?
And they can try it out.
That alone could cut developmenttime down astonishingly.
So look, don't just lookat the generating code.
It's the fun part.
And by all means, dive into it and go.
It is fun.
(01:04:36):
But remember that we need to buildin all these other sections of this
and there's lots of room to play.
Can I give the final word to XKCD?
Do you know what XKCD is?
it's the greatest comicstrip in the entire world.
Come on.
You guys are supposed to be geeks.
Oh no.
I failed geek 1 0 1 again.
Alright, so XKCD is fascinating.
(01:04:58):
The guy is like he's a physicistor something like this.
He's a super smart guy, and a lot ofthe cartoons are all incredibly geeky
and sometimes ridiculously detailed,despite the fact that they're like, stick
figure cartoons and stuff like this.
They're brilliant.
Once you go down the XKCDroad, you never go back.
But he's got one about, it'scalled Dependency, and that's
xkcd.com/ 2 3 4 7 for somebodywho wants to take a look at it.
(01:05:22):
And it says it all, and it wrapsit up for you, Jim, as well.
It's like there's thismonolithic structure.
all modern digital infrastructure.
And then there's a little tiny pin that'sholding everything up at the bottom and
it points to it and it says a project,some random person in Nebraska has
been thankless maintaining since 2003.
(01:05:42):
So needs that little piece of code,that little, that little tiny thing
could be what's holding up the internet.
Yes.
It needs the visual.
So please go and take a lookat it on the Discord channel.
Yeah.
And yeah, xkcd.com/ 2 3 4 7.
Go or go look at the discord.
I've pasted it there.
Yeah.
And if you're doing this on check us outYouTube and you can see the Discord link
i, I posted on ev on every week show.
(01:06:04):
Call John and say, what wasthe link to the Discord again?
Because I don't want to talk to, I don'twant to ask myself about it because,
he'll do that thing of, oh, you guys,you just don't get with the modern era.
Do I?
Do I do that?
Sorry, did I say that?
Yeah.
Okay.
That's been our show.
We got John PInard thankyou very much, John.
(01:06:25):
My pleasure.
Always fun.
Got Marcel ney and we've got me who knows,both types of music, country and Western.
Yeah.
Live long and prosper.
Live long and prosper.
And that's our show.
You can find the shownotes@technewsday.ca or.com, both work.
Look for the podcast page, and you'llfind on there a link to our Discord
(01:06:49):
channel where you can talk to us daily.
You can see some of the things wetalk about, and a lot of the pictures
and things that you might miss inthe audio version are also there.
If you're on YouTube, it'sright there in the comments.
I'm your host, Jim Love.
Thanks for listening.